Adaptive vs Predictive Planning: When Agile? When Waterfall?
6-7 minutes
Project work ranges from definable work to high-uncertainty work. Definable work projects are characterized by clear procedures that have proved successful on similar projects in the past. The production of a car, electrical appliance, or home after the design is complete are examples of definable work. The production domain and processes involved are usually well understood and there are typically low levels of execution uncertainty and risk.
New design, problem-solving, and not-done-before work is exploratory. It requires subject matter experts to collaborate and solve problems to create a solution. Examples of people encountering high-uncertainty work include software systems engineers, product designers, doctors, teachers, lawyers, and many problem-solving engineers. As more definable work is automated, project teams are undertaking more high-uncertainty work projects that require the techniques described in this practice guide.
Agile vs Waterfall
The traditional Project Management (waterfall, also known as plan-driven) approach is linear where all the phases of a process occur in a sequence. The approach depends on predictable tools and predictable experience. Each and every project follows the same lifecycle which includes the stages such as feasibility, plan, design, build, test, production, support, as shown in the figure below.
The entire project is planned upfront without any scope for changing requirements, such as PMI’s PMBOK, and PRINCE2 are all rigid and highly controlled. They outline distinct
stages for project planning from start to finish and assume that you have all the requirements and information you need upfront.
Agile is considered to be the more modern type of software development strategy, as it was designed primarily to counter some shortfalls of the more predictive waterfall methodology. It is a software development model that encourages the continuous iteration of development and testing in the entire software development lifecycle of the project.
When a traditional system focuses on upfront planning where factors like cost, scope, and time are given importance, the agile approach gives prominence to teamwork, customer collaboration, and flexibility. As requirements specifications change, the agile team can remain mobile and able to respond to those changes. However, that doesn’t necessarily mean that the adaptive planning strategy is always better than a predictive planning strategy. Let’s compare these two project development strategies in further detail.
Waterfall for Predictive Project Planning
Waterfall project management is a more predictive planning strategy that utilizes specific steps and milestones to control the process. A predictive planning strategy may fail when
confronted by significant project specification changes or customer modifications, but it will also be more likely to generate the anticipated result. Agile methodologies can be more susceptible to project evolution and scope creep, whereas waterfall strategies will create a more consistent final product.
Waterfall approach is a sequential process that is broken into a number of stages. The development team needs to complete one phase before proceeding to the next development phase. Typically, there are 5 phases in the waterfall development process which are listed below:
- Analysis
- Design
- Implementation
- Testing
- Maintenance