Iteration and Flow Based Agile: Which Approach Should You Choose
Agile project management is a concept that approaches the project planning process by breaking a larger task down into smaller cycles called “sprints.” This agile approach allows project management professionals to guide teams through projects more productively.
Central to agile project management is the idea that an agile team works toward a common goal as a group while being flexible in the details regarding how the team operates. This allows change throughout the project in response to customer requirements and feedback. Agile project management differs from traditional project management largely in its comparative allowance for and encouragement of far more self-direction and self-organization.
As a PMP-certified project manager, you should be familiar with iteration and flow based agile project management, the two main theories of agile project management. Let’s look at each of these theories and learn more about how to choose between these approaches.
On this page:
Ultimate Guide to PMP® Certification
Navigate the process of becoming a PMP® certified professional.
Agile Iteration
Agile iteration, also called iteration-based project management, is a common agile project management approach that breaks a project down into sprints called time boxes or iterations. Each iteration is the same length of time — usually, one or two weeks — and these time boxes do not change.
One main benefit offered by iteration-based agile project management is the opportunity it gives teams to deliver value at the end of every iteration. Since the time in each box is definite, the team is better able to estimate what they can accomplish during each iteration, setting clear goals to achieve within a certain sprint. Once the team completes those goals or achievements and the time box ends, they move on to the next.
Feedback loops are present within the structure of each iteration so that customer acceptance is gained throughout the project. This steady cycle of progress, feedback, and approval equips the team to make headway through a project at a set pace. Eventually, this leads to the project’s completion within a predetermined period.
In agile project management, agile iteration would most benefit projects that are subject to specific deadlines. For example, in software development, a prototype may need to be available by a certain time or event. Iteration-based project management can help agile teams meet those deadlines while evaluating progress and obtaining customer acceptance each step of the way.
Flow-Based Agile
Flow-based agile project management does not leverage specific time concepts the way iterative agile project management does. Instead, flow-based agile focuses on the amount of work that can be in process at any given time. This fast-paced method allows for continuous development at different times throughout the project.
The pace of a project leveraging flow-based agile is more of a marathon than a sprint. Instead of delivering value to the customer at specific times as in agile iteration, the team works in a continuous, steady flow. The intent behind flow-based agile is to deliver a high-quality product more efficiently, reducing waste along the way to optimize the flow of work and pivot quickly whenever it’s necessary.
Feedback loops are not featured in flow-based agile. Instead, product functionality is delivered to the customer in a constant flow, allowing teams to respond to feedback ad hoc instead of within specific scrum sprints. Planning deliverables is flexible and can change depending on priority. Using visual tools for project planning such as Kanban boards can provide better visibility into project progress, problems, and opportunities to collaborate in flow-based agile.
PMP-certified individuals should understand that flow-based agile project management is most appropriate for projects that have a flexible time frame. This approach works well with cross-team collaboration. When considering whether to use flow-based agile, one critical feature to consider is the ability to accommodate workflow interruptions.
Flow-based agile vs. iteration-based agile: Which approach is best?
Any project manager can attest that there is no approach to a project that will always be right or wrong — a lesson that the Project Management Institute (PMI) drills repeatedly into those aspiring to earn their PMP certifications. Instead, project managers should recognize that every approach has drawbacks and advantages. Deciding whether iterative or flow-based agile project management is most appropriate will come down to the project at hand.
Let’s imagine a project involving a product with a defined vision and deadline. In such a scenario, the iterative agile approach would probably be the more suitable option. This approach allows you to break the project down into scrum sprints with defined time blocks, measure your progress accordingly, and obtain relevant, specific feedback regularly:
- Defined vision
- Specific time blocks with goals
- Feedback loop
Software development is an industry that uses agile iteration regularly. Giving designers the ability to break down the development process into iterative blocks or sprints is a very useful feature. Software development teams can accomplish specific goals within each time box and then move on. Additionally, the feedback loop in agile iteration that has teams acquire acceptance from the customer before moving on to a new sprint can help ensure progress moves in the right direction and prevent movement in the wrong direction.
In contrast, flow-based agile is more flexible and allows for changing parameters better than agile iteration. This may be the more effective approach in projects without a “time crunch” — that is, in situations where time constraints are not as significant of a factor:
- Fewer time constraints
- Production based on capacity
- Flexible for changing parameters
Summary
When studying for a PMP Certification, it’s important to remember that a project in which a team can assess features and decide which feature to develop based on the available capacity could find flow-based agile project management very useful. With no parameters for release, the team and stakeholders can set their own schedule and prioritize creating an efficient, continuous flow of work instead of focusing on meeting a set deadline.