What is the Waterfall Model?
The Waterfall model is suitable to use when project requirements are well-defined and understood, and changes within the project are small and limited. Advantages of using Waterfall is that there is thorough documentation and a clear structure. As a result, it requires less management coordination as every detail of the project is already planned beforehand. The model relies on a clear sequence of events however it can be seen as an inefficient management approach. This is because the model is difficult to adapt the project when changes arise. For example, if a client decides to change a major component of the project, the Waterfall model would be deemed ineffective, wasting time and resources.
Further, the Waterfall model is extremely strict in its structure. It follows a linear formula and if a single deadline is missed, then the future product releases can be massively affected. Waterfall also makes it difficult to obtain user feedback and product validation. This means that the client cannot interact with the product until it is fully completed, making the development process a potential risk if the end product does not mirror the client’s vision.
Diagram of the Waterfall Model |
What is the Agile Model?
- Adaptive planning: planning stages of the project to accommodate for changing requirements as we go.
- Iterative development: allows the team to flexibly modify and improve aspects of a deliverable in a cyclic nature.
- Early delivery: Prototypes and deliverables are released early to allow the client to interact with the product.
- Continuous improvement: product is constantly improved due to changes that occur throughout the development process.
Flowchart of the Agile Model |
This allows the project team to be able to rapidly and flexibly respond to changes throughout the entire management process. Advantages of using Agile are that it is extremely responsive to change and working software is produced very early so that the client can see how the product is progressing and whether there are any changes to be made. This creates a high-quality product as the client is consistently working with the development team. Disadvantages include that it is highly dependent on client involvement and making sure that requirements elicitation is clearly defined.
- Customer collaboration over contract negotiation
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Responding to change over following a plan
Conclusion
References
- https://www.lucidchart.com/blog/pros-and-cons-of-waterfall-methodology
- https://www.atlassian.com/agile/project-management/project-management-intro
- https://hive.com/blog/what-is-agile-project-management-methodology/
Comments
Post a Comment