Software Development: Agile vs Waterfall: The Showdown
The arena is crowded with people. Two bloodthirsty groups form, one wearing shirts bearing the letter A and the other Ws. As two familiar foes approach the ring from opposite entranceways, the fervor reaches a crescendo.
The first, a young, agile athlete with feet that dance like Ginger Rogers and fists that flash as lightning, wears an orange robe and a dragonfly on his back.
The second, an older warrior with massive shoulders and a blue robe with a crashing Waterfall, strides majestically towards the ring.
There are two methods of managing software development projects, but only one can win.
Agile Vs Waterfall: The Tale of the Tape
Since 2001, when the Manifesto for Agile Development was created by 17 software developers who wanted to improve on the rigid Waterfall style but still be flexible, the Agile Vs Waterfall debate has been ongoing. It is possible to trace the origins of iterative, incremental software development back to the 1950s.
Waterfall was named for its sequential or falling approach. It is a result of the manufacturing of spacecraft. It was first described in context of software development in 1970 by Winston W. Royce. Since then, it has been subject to heavy criticism from software developers for its inflexibility.
The Waterfall model
Professor Philippe Kruchten, University of British Columbia, summarized it when he stated that software development “inherited” the Waterfall cycle of engineering disciplines. It has proven very efficient. However, it has been abused by organizations that use it blindly in situations where it is not appropriate.
According to Gartner research, 56% of IT projects used the Waterfall method in 2015. This shows that it still has many dedicated supporters.
Agile wants to win the championship once and for all.
Let’s get ready for a rumble!
1. Round One: Quality
Agile is based on iterative testing. This allows for gradual improvement of working deliverables, which in turn ensures quality. For better communication, developers and testers should work side-by-side. Agile’s goal, which is to ensure quality assurance at every stage of development, is to foster open communication between client and developer.
Agile and Waterfall are in the circle, comparing each other. Agile moves in to push the pace, feigning a few punches.
Waterfall is proud of its quality record. It was enough to send men to the moon and return them safely. Because all testing occurs near the end, fixing bugs may require a large-scale teardown or rebuild.
Round One: Agile 1, Waterfall 0.
2. Round Two: Communication
Agile values face-to-face communication, close team alignment, and constant communication over paperwork. Waterfall is heavily dependent on documentation and Gantt charts. Agile is less bureaucratic and can make adjustments faster than Waterfall.
Waterfall is sent reeling by Agile’s strong left hook to his rib cage
Communication that is too hurried and unfocused can distract from the production of workable deliverables. Waterfall’s easy-to-access requirements can be very helpful for highly regulated government projects. Waterfall’s detailed documentation makes it easy for a new member to take over where the former member left off.
Round Two: Agile 2, Waterfall 0.
3. Round Three: Project Efficiency
Agile’s open-ended communication style can lead to risk inflation if customers and developers cannot agree on a compromise. To keep both sides on track, a good project manager is essential.
Agile dances around in the ring, exhausting itself by throwing shad.