We gather requirements and we build.
We do not like changes every now and then as we have few analysis to do.
We do not know how we build. Sometimes we analyse and sometimes we straightaway incorporate the change.
The above three sentences generalises the agile software building process for both product and services based organisations.Every individual or an organisation at some point of time starts from third sentence which can be considered as ground zero and grows towards mature implementation of either methodology known as Agile and Waterfall.
“THE THING IS, BOB, IT’S NOT THAT I’M LAZY, IT’S THAT I JUST DON’T CARE.” – Office space, Peter Gibbons
The Ugly, half knowledge, half implementation, verbal communications are symptoms that you are on the Ugly side of it. More visible symptoms are: team uses “Agile” as a word more than its used. We are agile becomes synonymous with one’s citizenship declaration and nothing more than that. We are agile is all you get to hear and when client requests changes, “freeze the requirements” becomes the chant in head. So, in an instant, Agile transforms into waterfall but approach remains “agile”. In this scenario team/individual/organisation need to understand that Agile needs to be understood first. Its meaning, its essence, implementation and learnings.
“LUCK IS NOT A FACTOR. HOPE IS NOT A STRATEGY. FEAR IS NOT AN OPTION.” – James Cameron
The Bad, we are ‘agile’ as we do daily stand-ups, weekly retrospectives, we have knowledge base (hardly maintained), checklists (oh, that’s an overwork, my task is pending), velocity is focus and quality can take a back seat (we have to release feature ASAP). We write tests (we wrote tests around an year back that too during selection process, now we have to roll out feature/fix). So, we mostly know what needs to be done but we do not do it because we somewhere at back of mind feel that following and maintaining process in form of documents is cumbersome and directly affects productivity.
Velocity becomes the driving force or it is the ‘Force’ within the team. We do not want this force to be with us. This bad force makes everybody think that task in hand is of prime importance and it should be done anyhow. During this flow, what all we really know about agile is ignored and we are as good as Ugly.
“LUCK IS NOT A FACTOR. HOPE IS NOT A STRATEGY. FEAR IS NOT AN OPTION.” – Jeff Patton
The Good, we do what we are supposed to do and we do it as a religion. We do not deviate from it. Quality is always in focus and so is velocity. A balance is maintained between the two and we achieve nirvana when client’s is happy with outcome.
The first step from ground zero is difficult becomes it requires to leave the comfort zone and step into an unknown world full of more work, more thought process and confusions. Once you take the second step everything seems to be calming down, results are visible and inclination towards processes grows.
Final step for Agile Nirvana or Agile software development is when all of these processes become part of your daily routine or habit and you are able plan your day in such a way that what seemed overwork now looks like shortcut to quality deliveries.
Leave the comfort zone if you are already in either ugly or bad phase.