Discussions about the two methodologies that play a significant role in the modern world, namely Waterfall and Agile, are widespread throughout the world.
Before I go on to give you a real example of what waterfall is and what agile methodologies are, let’s look at them first as concepts.
The Waterfall methodology is based on strict rules that must be followed when developing a project, regardless of whether it will be in the field of construction, software development or otherwise. Reference: Waterfall or Agile? What methodology to choose for your project? pm.mba, 2020
The basis of the Waterfall method is planning. Before starting the development of a project, it is strictly planned, each phase of its development – from the emergence of the business idea to the launch of the product to the real customer has strict deadlines and planned time intervals. In the Waterfall methodology, the introduction of changes during the project development is extremely difficult and complex. Reference: Waterfall and Incremental model in project management, 2019, wikipedia-lab.org
Because in my previous work I was involved in software development, I will give you an example with which I hope I can answer your question what is waterfall. Let’s imagine that we are developing a web application for retrieving information about cars. In the waterfall methodology, we must strictly plan each of the phases – building a design, building a business model, developing the application itself, testing and delivery to the user.
Let’s imagine that all this is perfectly planned and we have set specific deadlines, in addition, we have set a deadline to meet in order to deliver a working application to our users. Everything works according to plan, but at some point, some of our customers have a new request to us – let’s add to our website and functionality to search for car repair shops.
At this point, we have to start redesigning the whole application again, preparing a complete new model, we have to develop our software again, test it and deliver it.
Of course, with the Waterfall model we must not forget another important thing – the documentation. A characteristic feature of the Waterfall model is the huge amount of documentation that describes how it will be developed and how our software product will work. With a new change, we must complete and edit our documentation and re-set new deadlines for the development of our application.
Last but not least, we must note the fact that at the end of our development and testing, we will deliver a whole product to our customers. But will they approve of this product, will they like it? In case you do not like the product, we as an organization again have to go to all the phases mentioned above.
As a summary of what has been said so far, I can give you the following pros and cons of Waterfall
Pros of Waterfall
approved model of work
Cons of Waterfall
- impossibility for quick change in the functionality of the specific project
- a process that is clearly established but does not change
- Most of the time must be spent in planning before we start the actual development of the product
- A huge amount of product will be delivered to the customer without receiving feedback from the customer during product development.
Agile project management methodology
Let’s now discuss another methodology – Agile. Agile is a methodology that has different implementations, imagine it as a framework that imposes some processes that must be followed, and this framework has different implementations – Scrum, Kanban, Kaizen, XP, Lean Development and many others. Reference: Agile Project Management, Ryan Brown 2020, Agile Programming, ISSN 2652-5925
We will not delve into the specific implementations, but rather focus on the main idea of Agile, namely – the customer is the main driving force in our product. We as developers of a product comply with the requirements of our customer, he has the last word.
Agile as a methodology solves exactly these problems of the Waterfall model – the rapid change of requirements, the possibility of customer feedback and thus we can improve our product.
The main idea of Agile is to deliver the product in small iterations, through which by delivering a product, the customer has the opportunity to test it, to give feedback and at each subsequent iteration we have the opportunity to improve our product. Kaizen principles also suggest following small steps and easy processes. Reference: What is Kaizen methodology, 2020, medfd.org
The goal here is to have a working end product at every iteration, which is tested and can be provided to our customers. Hence the basic meaning of Agile – flexibility. The company is flexible to the requirements of its customers.
In summary, Agile methodologies have the following pros and cons
Pros of Agile project management methodology
- possibility to quickly change the product
- dynamic environment that is guided by customer requirements
- we do not commit to deadlines, but we work through iterations and on each iteration we must have a well-functioning and tested product that can be used by the user
- we do not deliver a huge application to our customer, but we give him the opportunity to give feedback and thus continuously improve your product
Disadvantages of Agile project management methodology
If Agile methodologies are not properly implemented in a company, they may not be very successful. Like any methodology, Agile is not a solution to all our problems, but it is a step towards being adaptable to our customers.
However, if we do not apply it properly, we may not have much success with it. For this reason, through the development of many coursework at the university, I have found that project managers who are willing to use flexible methodologies must provide training to their employees in order to be able to apply Agile methodologies correctly and to their brings success.
Read more: Kanban vs. Scrum: What Are the Differences Between Scrum and Kanban, eduwiki.me Scrum vs. Kanban is a popular topic. Let’s explain the details now. Because of the questions raised about the possibility of implementing Agile working methods, in particular, Scrum and Kanban…