I have been working in Software for two years since I left the cozy campus of College.Ever since then I have always seen a vast gap between “what is supposed to be!!”
and “what is in actual !!”
It really hurts a lot , though the world always have been working that way.If at all the world worked the way the world is “supposed” to be it would be an ‘Utopia’ and the evangelists for a perfect world like me and those who would be participating by giving comments after reading the below blog would become legends in the History books of that ‘Utopian World’.
Agile Development techniques have been new to Software and have really affected the world of software to a great extent.I am not going to write again the “History of Agile development” and the so called “Manifesto of Agile Development”.
How I was introduced to Agile
My Project Manager was delivering his farewell Speech when he said “Our Projects are going to follow ‘Agile Development Processes’ here onwards”. Then he proceeded with the advantages and disadvantages of Agile development but more of Advantages and covered up the Disadvantages with the “Should be” qualities in a Developer.
What he did not say (which I later discovered,by reading the internet and not by Observation) was
Agile is a state of mind.
State of Mind of …
a developer ?
It’s the state of mind of the Team.
It’s the Attitude of the Collective Brain of a Team.
And this is possible only if Agile values are lived upon.
USE OF “A” WORD AS HOLLOW JARGON
Irony is None of the values of Agile are neither understood nor lived upon.
AGILE is being used as a Fancy JARGON or a ‘JIG JIG matter’ word to attract the clients.
(I remember seeing a new company named “Agile Software Pvt Ltd”).
I may sound like a PROCESS NERD but there is a reason behind it.But If you see carefully it is the same kind of Revolution to Software as TQM or Assembly line production did to Manufacturing.
My experience in almost Three Agile projects(which were never Agile) for almost a year now says that there can be only two results of a “Blind” Agile project:
(a) Quality Output at the cost of Developers
(b) Project falling flat on it’s face with other competitors taking away your project
I have seen both of them in one year.
(a) Quality Output at the cost of Developers
My first Agile project was only an enhancement
(but a complex one) on already existing system developed some five years ago.
The result of the project was a huge success just like any other enhancements after the
first release of the original system.The only difference the Agile made were :
(i) Normal logging off time became 1 PM.
(ii) Another project which was doing an enhancement on the same screen we were making went into production with 50 defects open – A Complete Failure
(iii) My project had 45 defects open in the last day of System Testing which my Tech lead solved overnight – Hatz off to him
(iv) I had a spat with my Tech lead and I decided to take the Software path as a Tester after the project
(v) I met with two Bike accidents during the system testing phase.
On the day of release , we got an appreciation mail to my team and special thanks to my “Tech Lead”
who really deserved it.
Remember, the above instances were very rare in “waterfalls/modified waterfalls” model we used to used
(b) Project Falling Flat due to Agile
The second example was my second Agile(not really Agile) project.
This time it was a project from scratch , of building a new system completely by re-engineering an old Legacy system.
This time it was under gestation period of One Year when compared to five years of gestation period
of my previous System.
The success legacy of my team couldn’t be repeated and we have to see the following consequences:
(i) Long Long and Long working hours. This time the logg off time was 5 AM in the morning. (Remember , the project is still in the gestation period)
(ii) Quality process related documents prepared and created overnight before the Quality Audit
(iii) Due to no SCM (Software Configuration management) lost loads of codes repetedly.Point to be noted is why was the SCM not established.The Team worked in “Panic” mode
and was alwways doing “Fire-Fighting”
(iv) Project was scrapped off due to the so called “Lack of Funds”
(v) Getting struck in the same problem each time it occurs, because there was no proper Learning Curve.
All this in just 3 months of the gestation period.I had a feeling of nurturing a pre-mature,handicapped baby in a womb after knowing the project is scrapped off.
I am definitely not Against AGILE, in fact Agile has rekindled the dream of an Utopian software developement process I used to dream off during my college days
All the above I can think of only BROAD CATEGORY OF SOLUTIONS:
(A) THE AGILE PROCESS ITSELF HAVE TO MATURE A LOT.DISCOVER VARIOUS OTHER PARALLELE REVOLUTIONS LIKE ENTERPRISE 2.0 , WEB 2.0 etc AND INNOVATE TO MAKE THE AGILE PROCESS MORE MATURE SO THAT IT’S VALUES CAN REALLY BE LIVED UPON.
(B) second one is very simple to say but difficult to follow, UNDERSTAND WHAT IS AGILE DEVELOPMENT PROCESS.
Please give your valuable comments before I come up with another blog on Agile.