The right way to do IT Banner Image
July 13, 2016

Till today delivery of IT projects remains a mystery. Some teams/managers are able to do it very well whereas majority of the projects suffer delays. The reasons vary from scope change to inadequate infrastructure to frequent specification changes and so on. There have been various approaches tried and some of them have been successful for a while but nothing that has proved to be consistent in the long run except perhaps AGILE.

The root cause of most problems in IT delivery is that a for a long while and in many organizations even today – the delivery is based on what we call a “Waterfall” delivery lifecycle. This waterfall model is actually based on Project Management which originated in the construction industry. Now it works very well for the construction industry – where dependencies, splitting work according to skill for example – first complete the design then lay the foundation and the construct the building – is the best possible way. However, IT delivery is different and has one feature which does not exist in many other industries. In IT – most of the time it is okay to fail – as long as we plug the failure and then learn from it to prevent future failures. Even better if we fail in a non-production environment where there is no impact to the customers.

AGILE – attacks this problem head on and prescribes methodologies which make a lot of sense. And they also work on reducing the risk of delays as we progress. However in many teams AGILE is used as an excuse to circumvent existing processes and work in documentation free , process free environment. This is far worse than sticking to the good old waterfall model – because even if late and over budget – waterfall does guarantee delivery. AGILE requires much more discipline and commitment from all involved. More importantly it takes away the traditional authority figures such business sponsor , project manager etc.. In AGILE – delivery no one is the boss of the project. You expect everyone to work with a single purpose i.e. delivery of the project in iterations till we get it right. Now this is much more difficult than it sounds. However it brings back the focus on delivery rather than individual silos. At all times teams are focused on what functionality needs to be delivered and not on which phase is currently in progress.

One of the biggest advantages of using an AGILE approach is that the failures are identified much earlier in the cycle – leading to very low cost to fix them. You get the team to iterate and produce deliverables and you know if a short time if the customer is getting what they expect. If not you have all the resources to get cracking at iterating again to meet the customer needs.