In the era of fast paced development and releases, Waterfall model just doesn’t work out. In current scenario especially in the IT industry, we can only dream about an ordered and predictable project in which all the requirements are clearly defined and can be estimated accurately. Requirements from business are getting fast paced as well. To cater to all the request Agile framework came into picture and to make agile scalable scrum methodology was introduced. To increase speed to market and quality, in a fast moving market place with changing consumer preferences, Agile is the preferred methodology for delivery
Let’s understand with a simple example, when waterfall model works best. Example: Production of a Mobile Phone, in this all the requirements are finalized before we start production like the size, ram, storage and other details. But when you see a project in IT industry, the requirements keep evolving as time passes specially for a long-term project. As a human being we gain knowledge each and every day in some or other manner. Which in turns makes requirements volatile in nature.
In addition, continuous changes in requirements puts tremendous pressure on businesses to adapt to newer and reliable model of delivery. In current market, Scrum is the most effective model to handle unpredictability and volatility of requirements. Another useful approach which scrum uses is the inspect-adapt cycles, which means there is a learning taken forward in each release to improve on next release. The impact of such setup is huge if you see the growth of team as well as growth of individuals as its pushes everyone to become better, agile and competent.
What are interations?
Another key word in Scrum is iterations, each iteration results in a shippable solution which could be a feature alone or a part of an overall product. Iterations helps in measuring objective that the team has to accomplish. Also, ensures that the team is progressing and the project will be completed on time. Any slack will be captured and highlighted very easily.
Adding to the importance of Scrum is the amount of interaction it insists. A client regularly interacts with the team to understand progress as well as help in resolving impediments. The transparency creates huge amount of trust between clients and development team. The work done is regularly reviewed and feedback is provided by customer as well. Such type of clarity is not present in Waterfall as we deliver everything at once, which might not work in current market.
On the contrary, small projects with well-defined scope and team having previous experience on delivering similar type of projects the Waterfall method can be successful. The key is having all stakeholders agreed on requirements well ahead of development start.
Following table will give a better idea about the differences in Scrum and Waterfall:
Scrum | Traditional Project Management | |
Emphasis is on | People | Processes |
Documentation | Minimal—only as required | Comprehensive |
Process style | Iterative | Linear |
Upfront planning | Low | High |
Prioritization of Requirements | Based on business value and regularly updated | Fixed in the Project Plan |
Quality assurance | Customer centric | Process centric |
Organization | Self-organized | Managed |
Management style | Decentralized | Centralized |
Change | Updates to Productized Product Backlog | Formal Change Management System |
Leadership | Collaborative, Servant Leadership | Command and control |
Performance measurement | Business value | Plan conformity |
Return on Investment | Early/throughout project life | End of project life |
Customer involvement | High throughout the project | Varies depending on the project lifecycle |
Reference:
- https://silverbridge.co.za/agile-vs-waterfall/
- https://www.scrumstudy.com/whyscrum/scrum-vs-traditional-pm
By,
Mukund Thakre
Also published on Medium.