“The Only Thing That Is Constant Is Change -”
The fundamental premise of Agile is that the requirements are going to change. The problem is, it does not define the scale of change that is acceptable and also does not clearly state that there is a time and cost associated with each change.
This “gray” area is frequently abused by clients to push changes during sprints ignoring the fact that with every change there is a factor of time and cost associated. They do not realize that they are in turn hurting their project.
Agile is abused to the extent that the requirements start with building an airliner and then change rapidly to that for a space – shuttle. The clients feel that as both fly, there is not going to be any fundamental change. They fail to realize that it requires a completely different set of skills, time and money to build a space shuttle.
As this happens, teams resort to cutting corners and try to build a space shuttle with the same material and in the same cost as that of an airliner. Eventually the project fails.
We (team and client) need to understand that we should respond to the ever changing market needs, if we are way off in addressing those needs, we have to start afresh. We have to understand that it is going to take more time and money and there is no way out. We cannot and should not try and build a space shuttle when we prepared to build an airliner.
For Agile to succeed, it requires a change in the mindset. It requires that the teams and the clients understand how not to misuse Agile. I believe it would help if the teams start identifying anti-patterns in the use of Agile and flag such instances quickly. Agile helps only if you let it.
Another term widely associated with Change management is Impact Analysis. We shall talk about this in the next post.