Agile and Waterfall in project management practices and processes


“Agile” is a popular term today in project management practices.

It is a project management methodology that originated in Japan and is characterized by the gradual development of products through short, repetitive development cycles called sprints. I guess you’ve heard some of the subtypes of Agile methodology such as Extreme Programming, Scrum, Kanban, and Lean Development. Reference: “Scrum vs Kanban vs Waterfall: Differences and when to use each methodology”, https://managerspost.com/scrum-vs-kanban-vs-waterfall-differences/

In the beginning, this methodology was used in software development, as writing code is a long but very dynamic process in which long-term planning is suboptimal, and sometimes even impossible. Reference: “Waterfall and Agile project management methodologies and when to use them“, https://agileprogramming.org/waterfall-and-agile-project-management-methodologies/

As you were impressed by what you read in the forum, the application of flexible methodologies has long since entered other areas such as IT, marketing and advertising, finance, education, services, and more. And this is no coincidence, as Agile has many benefits that meet the needs of today’s global world: It encourages teamwork, adaptability throughout the project life cycle, and maintaining a close relationship with the client, who is constantly in during the development of the project. Reference: “Waterfall vs Agile project management methodologies“, https://www.dobrojutro.net/waterfall-vs-agile-project-management-methodologies/

We can summarize the basic principles of the Agile methodology as follows:

  • Multidisciplinarity of the team
  • To large extent freedom of self-organization of the team
  • The ability of the team to react quickly to changes in requirements.
  • Faster detection of problems and defects and their elimination
  • Focus on the client and his needs
  • Reduce the time to create a product/service
  • Lower the risk of return on investment

Each stage (sprint) lasts 1 to 4 weeks, according to the information I found, so this is another added plus for the client, who often receives updates on the progress of the project. During each iteration, the members of the multidisciplinary team work together on the phases of planning, requirements analysis, design, development, testing, and presentation to the client for approval. This minimizes the risk of errors in general, as at the end of each of the many iterations there is a working product, and accordingly allows for reassessment of priorities and costs, as ultimately the goal is to have a return on investment and meet the customer needs. Reference: “Waterfall and Agile methodologies such as Scrum“, https://wikipedia-lab.org/waterfall-and-agile-methodologies-scrum/

However, we must be honest and say that flexible methodologies have their shortcomings, which would undoubtedly be discussed at the meeting of the Board of Directors. Agile methodologies are difficult to integrate into large corporations like ours, where there are already established, established, and operational processes and teams. This would also mean a clash with the existing company culture and established hierarchical relationships, as Agile implies more freedom and opportunity for self-organization of the team, as well as providing some of the decisions of team members at the expense of management. Another problematic point is that Agile puts long-term planning, detailed documentation, and following the original plan in the background. Reference: “Agile vs Waterfall Project management and software development with Scrum“, https://www.yahowto.com/agile-vs-waterfall-project-management-and-software-development-with-scrum/

The methodology used by our corporation, as you know, is the so-called Waterfall (waterfall or cascade) methodology. It is also the earliest and most recognizable project management methodology in the Western world at the moment. It was created to design, develop, and test software from the software industry. It is based on performing tasks in a predetermined sequence until the final product or service is reached. That is, one task (or one phase) must be fully completed before moving on to the next. Reference: “Agile vs Waterfall project management“, https://pgov.org/agile-vs-waterfall-project-management/

The waterfall is widely used in software development when it comes to projects that do not expect great dynamism and constant change in requirements, as well as those related to the development of a physical product.

Waterfall has been widely criticized for its inflexibility recently, as you read in the forum, but the methodology has its undoubted advantages. The principles of operation of the cascade methodology are easy to understand. The approach to the implementation of the tasks is well structured, and the phases of the project are clearly defined and distributed over time. This also applies to the roles of the people and teams involved, where the element of multidisciplinarity is missing. Processes and results are well documented (which is also important from a legal point of view), and progress is visible after each phase. All this makes it easier to plan and manage the project, which in turn provides security and predictability for the client. This is also important for the funding model, as the detailed plan also implies a predictable result. Reference: “Agile vs Waterfall Methodology – What are the differences“, https://www.islandjournal.net/agile-vs-waterfall-methodology-differences/

The disadvantages of this methodology are mainly because it lacks flexibility, as I have already mentioned. Before starting the project, all the requirements to the smallest detail must be known, which is a challenge in itself. Any change in the needs and priorities of the client, which occurred later, disrupts the rhythm of work and is difficult to meet. And perhaps one of the most important problems is that the customer cannot see the product until it is finalized, which is not optimal for today’s competitive world. Original Reference: https://www.businesspad.org/agile-vs-waterfall-difference-between-methodologies/

The Waterfall methodology is rather an internal model of work for the company, as by design the client is excluded from the process itself and is not well informed about the progress of the project. Last but not least, due to its lack of adaptability, Waterfall creates preconditions for the existence of hidden problems and defects, which are sometimes revealed only when the project is finalized. Reference: Agile vs Waterfall management methodology, https://www.kosovatimes.net/agile-vs-waterfall-management-methodology/

References

Conclusion

As for my recommendations on the topic, which will probably be addressed at the meeting of the Board of Directors, I would advise not to take drastic action, as our corporation has already working solutions and ready teams of specialists, proven over time, which cannot be reclassified from today to tomorrow and converted into others.

This would also call into question the current projects we are currently working on. I agree that the requirements of modern business require the introduction of Agile practices in our country, so I think it is good to work on creating a hybrid model between Agile and Waterfall, using good practices from both methodologies that are appropriate for our unique situation.

If the Board of Directors requires prompt action, then Agile’s practice of sending frequent updates to the client as a project progresses would be a good start.


One response to “Agile and Waterfall in project management practices and processes”

  1. The so-called “Waterfall” methodology (Cascade model/Waterfall) is a classic model in project management. It is based on a linear simplified model of action with clearly formulated requirements at the beginning of the project. All stages in this model proceed sequentially and one-way, and there is no way to move to the next one before the previous one is finished.

    Each stage ends with a work product. Due to its simple structure, it is easy to understand and apply, and its strongest point is that every step is pre-planned and the process happens in a precise sequence.
    This model is suitable for managing projects related to physical products such as buildings/equipment and high-risk projects with sufficient available resources that are clearly defined and do not change over time, as well as for teams that are not localized in one place and do not have the possibility of constant communication with each other.

    The main disadvantage of the Waterfall model is the impossibility, in case of any drastic change, for the team to return to a transitional phase of work and reflect the change in question, as well as the fact that a working version of the product is obtained in the last phase. In this way, no feedback can be obtained from the customer during development and the final product may deviate from their expectations. It is also slower and not very flexible since the work in the stages is not done in parallel.

    What is Agile Model?

    The complete opposite of the cascade model is precisely Agile or the so-called “Agile Model”. It is indeed more adaptive and does not have the limitation of working stages being one after the other. The approach is quite different, putting individuals and relationships first, rather than so much emphasis on processes and tools.

    It is a time-bound iterative approach where the project is broken into small parts (user stories). They are prioritized and then delivered in short cycles (sprints). Thus, the delivery of the final product happens in stages, at the end of each sprint, and if a change/update or improvement is required, it can be done promptly, because it is the ability to respond to the change that Agile considers more important than following the plan. Continuous interaction between the developers and the requester is key for both the team and the business stakeholders, which puts them above the contractual relationship, unlike the cascade model.

    In summary, it could be said that agile methodologies give the team the freedom to deal with frequent changes in requirements without starting the entire process from scratch. It is not to be underestimated the fact that, unlike the cascade model, where the team follows a strictly drawn and pre-finalized plan in detail, the agile model relies on the building of culture in the working teams, a framework is set not only from the task but also from values, for them to be more independent in their organization.

    The choice of methodology is imposed in the first place by the product to which the project refers, by the specifics of the work to be performed, the characteristics of the teams involved in the project and their location, and to some extent by the overall vision of the company.

Leave a Reply

Your email address will not be published. Required fields are marked *