Agile, Waterfall or Flexible Development?
Monday, October 10, 2016
We hear a lot these days about Agile development. Agile works in stark contrast to the traditional Waterfall approach. Under the Waterfall model, a sequential non-iterative methodology is favoured. The basic concept is that progress is made towards a final goal with the analogy being that it flows downwards like a waterfall through various stages.
Agile, on the other hand, is based on iterative development. Requirements and solutions evolve through collaboration under a much looser structure. Agile has made inroads into the IT space due to its ability to speed custom development projects, bring applications online more rapidly and the fact that it provides the opportunity for early feedback from users as the project moves through its various iterations.
Despite the onset of Agile, though, the Waterfall method still dominates. Yet according to research firm Computer Economics, less than 20% of code using Waterfall-style application development is ever used. It’s no wonder that alternatives are gaining ground.
On the other side of the coin, Agile is far from a universal panacea and many are struggling with its lack of structure. Computer Economics found that less than half of organisations have adopted Agile development despite the practice being in existence for more than two decades. This indicates that many organisations are resisting Agile, preferring to stick with the Waterfall system.
Computer Economics delved further into this area. While less than half of all companies surveyed have adopted Agile, only 15% consider that they are fully practicing it. Another 34% say they are at least partially practicing the discipline. Clearly, they are running into some difficulties in implementing this approach. Yet many are under pressure from CEOs and other executives to leap on the Agile bandwagon. They hear about substantial time and budget savings realised by one company or another using Agile and they yell – go Agile!
But this is easier said than done, and success is far from guaranteed. Based on Computer Economics numbers, both the Waterfall and Agile systems are struggling. With neither gaining ascendency in the enterprise, what is the best way forward?
Based on a 20-year heritage of collaboration with clients in various industry sectors, Ballard Chalmers has earned a deep understanding of the particular nature and quirks of both the Waterfall and Agile methodologies. As such, we have evolved our own Flexible Development system of delivery, which is a practical blend of Waterfall and Agile.
This custom software development process consists of the client providing us with an initial outline scope of the project. We then submit a detailed system design and scope of work, plus a budget estimate with a % accuracy estimate. The development phase begins based upon budget parameters and a clear change control process for the client and developers to work within in order to stay in budget.
If it turns out the scope is incomplete in practical terms during the process of development, then the budget can be increased, or the scope can be decreased. With Flexible Development, it is clear to all parties that the budget has to remain estimated, as neither client nor supplier can guarantee to have covered every aspect of the requirement in this type of scoping, and it is understood that together we may yet uncover things not yet known as development progresses.
So the next time a manager or executive demands you throw out established practices and go Agile, don’t panic. Instead of struggling with an unfamiliar approach which may quickly bog, bring in Ballard Chalmers with its Flexible Development process. As this is a sensible blend of Agile and Waterfall that has proven itself in countless projects, it is the best way to assure long-term success.
For more information contact us using the form below or call 01342 410223.
By Drew Robb, Contributor
Drew Robb is a freelance editor and writer, specialising in the Information Technology sector.