Sumeet Madan
With a remarkable 18-year tenure in software engineering, agile training, coaching, and consulting,... Read more
With a remarkable 18-year tenure in software engineering, agile training, coaching, and consulting,... Read more
In this day and age venture project managers play a great role in the success of a business or an organization. Traditional project management specifically emphasizes on conducting a long and detailed upfront planning for all projects irrespective of whether the requirements are known or not.
While Agile is a general approach used for software development projects, it emphasizes on teamwork, frequent deliveries of working software, customer collaboration, and timeboxing events and allowing the ability to respond to change quickly.
Waterfall: Waterfall or traditional approach for delivering projects was introduced by Royce in the year 1970. It is a heavyweight methodology for developing software which traverses through phases like:
Analysis → Design → Develop → Test → Deploy
It’s a sequential approach where each phase starts only at the end of the previous phase (except the first one). Any significant change in the requirements makes it extremely difficult and costly to go back to the process, thus makes it less favorable in the environment that belongs to VUCA (Volatile Uncertain Complex and Ambiguous) World.Waterfall requires an unchanging set of requirements upfront in the first phase (analysis or requirement gathering or planning) because the feedback to the previous phases is extremely painful in this methodology.
Agile: To break the rigid nature of traditional (waterfall) approach, Agile was first introduced in the year 2001 i.e. Manifesto for Agile Software Development (Agile Manifesto). Agile is based on Iterative and Incremental development approach with the great emphasis on the feedback.
Scrum is one the strongest and most adopted way to embrace Agility, Lean-Kanban is another process in this umbrella. Both of them use a pull mechanism and accentuate on delivering releasable software early and often.
The “Scrum” comes from a whitepaper “The New New Product Development Game” from Hirotaka Takeuchi and Ikujiro Nonaka that was published as an article with Harvard business review in the year 1986. Let’s have little detailed understanding of both the approached Waterfall and Agile
Waterfall: is a workflow-based approach where each stage is a distinct phase and one must complete the first phase before proceeding with the next phase. The phases in the approach vary from organization to organization. A typical Waterfall model has the following phases:
Agile, on the other hand, deals with an early feedback approach. It is an iterative and Incremental approach for a team to deliver a valuable product every iteration. It’s an approach that helps business to gain a competitive edge in the market. Agile gives a slant to be lean and deliver what the customer wants and doesn’t require to have upfront planning for all the requirements. We are in the era of VUCA where not everything is known upfront. This approach accentuates on delivering high-value product early and often and inspect & adapt to the feedback from the market.
There are a variety of Frameworks and process in the market that help delivers products iteratively and incrementally and out of them, Scrum is one of the most accepted means of delivering products in an Agile way. Apart from Scrum, we have KANBAN, XP, Adaptive System Development, FDD, LeSS, SAFe and many more frameworks and processes in the market.
How to choose between Waterfall and Agile?
As mentioned earlier, this is an era of VUCA and the change is inevitable. We are dealing with the most complex system at this point in time where :
There are still projects that are running and getting delivered using this approach, so blaming this approach for not delivering projects is not “right”. Due to the customer behavior and needs, knowing everything upfront to plan is no more the case now and hence Waterfall is not the right fit for this environment.
Uncertain requirements made what we are building is emergent. There are Pros and Cons of dealing with every approach for Software delivery. Let’s take a deeper look at that too:
This is a small intent to help people understand two ways (traditional and agile) of working and I am not promoting one on another. You know your context best and you are the one who has to take a call on which what approach is the best suit for your environment.
With a remarkable 18-year tenure in software engineering, agile training, coaching, and consulting, Sumeet's expertise is unparalleled. As a certified Professional Scrum Trainer (PST) from Scrum.org and a distinguished SAFe® Practice Consultant (SPC), Sumeet brings a wealth of knowledge and skill to every project, making a lasting impact on organizations seeking to embrace Agile methodologies.
WhatsApp UsWe will get back to you soon!
For a detailed enquiry, please write to us at connect@agilemania.com
We will get back to you soon!
For a detailed enquiry, please write to us at connect@agilemania.com