fbpx

Master How to Effectively Perform Iteration Planning in SAFe

Iteration planning is a pivotal ceremony for Agile teams using frameworks like SAFe that sets the stage for delivering value incrementally.

During iteration planning, teams forecast capacity, analyze and estimate stories, develop iteration goals, and commit to delivering work.

Effective planning requires understanding activities like determining team velocity and normalizing story points. It also benefits from best practices around facilitation and participation.

In this post, we’ll explore SAFe iteration planning in depth – from its purpose and timing to how it differs from other ceremonies like Sprint planning and PI planning.

Whether you’re new to Agile or an experienced practitioner, you’ll gain valuable insights into leveling up iteration planning.

What is SAFe Iteration Planning?

Iteration planning in SAFe is a ceremony where the team comes together to plan work for the upcoming iteration.

This event sets the stage for execution during the iteration and helps keep teams focused. It’s key to delivering value incrementally in Agile frameworks.

During iteration planning, the team starts by establishing their capacity for the upcoming iteration based on velocity and accounting for time off or other duties.

Next, they review and estimate stories from the backlog and select what they can commit to for the iteration based on capacity.

The team analyzes each story, clarifies acceptance criteria, and breaks stories down into tasks as needed.

The final output is a set of committed iteration goals that summarize the work the team plans to complete.

By the end of planning, the team has an iteration backlog reflecting their commitments for the iteration.

What is the Purpose of Iteration Planning

What is the Purpose of Iteration Planning in SAFe?

The main purpose of iteration planning is to define and organize the work the Agile team will complete in the upcoming iteration.

It also serves to:

  • Establish team capacity based on velocity and availability
  • Select and estimate stories for the iteration backlog
  • Gain a shared understanding of story details and acceptance criteria
  • Break down stories into executable tasks
  • Determine required skills and who will work on each task
  • Develop high-level iteration goals that align with team and program objectives
  • Build team commitment to the work

By the end of the planning session, the team should be aligned on iteration goals, committed to the work needed to accomplish them, and have an executable iteration backlog.

When to Do Iteration Planning in SAFe

Iteration planning in SAFe typically occurs at the very start of each iteration, as the team is preparing to begin work.

For two-week iterations, planning is often done on the first day. For longer iterations of 3-4 weeks, planning may occur over two days at the start of the iteration.

Planning should be timeboxed to four hours or less to keep the team focused. Some teams prefer to hold planning meetings on Fridays when the iteration starts on Monday. This provides a natural break over the weekend before execution begins.

The key is to plan right at the outset of the iteration so the team can quickly transition into execution with clear goals and priorities.

Inputs and Outputs of Iteration Planning

Inputs and Outputs of SAFe Iteration Planning

SAFe Iteration planning relies on some key inputs to align deliverables for the next iteration:

  • Team Backlog: The prioritized list of user stories, defects, enablers, and other work items the team can draw from. It should be refined and prepared prior to planning.
  • Program Increment (PI) Objectives: The key business, technical, and UX goals defined during PI planning that guide which features teams work on.
  • Initial Iteration Plans: The preliminary selection and scheduling of stories to iterations during PI planning based on dependencies and roadmap.
  • Team Velocity: The historical average rate at which the team completes stories, measured in story points per iteration.

With these inputs, the team works to produce the following outputs:

  • Iteration Backlog: The final committed list of items pulled from the team backlog for implementation in the iteration.
  • Iteration Goals: Short summary statements of the key objectives the team seeks to achieve in the iteration.
  • Acceptance Criteria: Detailed conditions of satisfaction used to confirm when a story is complete to “definition of done.”
  • Story Assignments: Agreement on which team members will work on each story and task.
  • Story Points: Final story point estimates used to track velocity and forecast future capacity.

The iteration backlog, goals, and team commitments made during planning drive execution. Other outputs help manage quality and velocity expectations.

Planning the Iteration

The iteration planning meeting follows a structured set of activities to select the scope and define goals for the upcoming iteration.

1. Establishing Capacity

First, the team determines their capacity for the iteration in terms of time available to complete work.

Each team member communicates their availability, accounting for vacation, training, or other activities that may limit their capacity.

The team considers its historical velocity and adjusts based on the current team capacity to establish an iteration capacity target.

2. Story Analysis and Estimating

With the capacity target set, the team has a planning discussion around each story under consideration for the iteration.

This includes clarifying requirements, identifying implementation tasks, discussing technical challenges, and reviewing acceptance criteria.

The team engages in planning poker to estimate the relative effort of each story in story points. These estimates help the team gauge how much work they can commit to.

Ideally, the Product Owner should be present to answer any questions on the stories.

3. Tasking Stories

For larger or more complex stories, the team breaks them down into smaller executable tasks to help identify all the work involved, required skills, dependencies between tasks, and who will work on each one.

Tasking out stories provides greater visibility into the work so the team can match skills and capacity, and also sets the stage for tracking progress during iteration execution.

4. Developing Iteration Goals

With the Iteration Backlog stories selected and estimated, the team synthesizes the work into high-level iteration goal statements.

Goals summarize what the team intends to accomplish to advance the product and experience.

The iteration goals should align with the program objectives and epics. They help keep the team focused during execution. Ideally, the Product Owner participates to ensure alignment on business value.

5. Committing to Iteration Goals

In the final step, the team revisits the iteration goals and makes any adjustments needed to commit to the successful delivery of the Iteration Backlog.

Each team member signals their commitment to meeting the iteration goals and completing the planned stories. The team may use fist-of-five or other techniques to formally vote on commitment.

Best Practices on How to Run Effective Iteration Planning Meetings

Following proven practices will help ensure your SAFe iteration planning meetings are engaging, efficient, and productive.

Timebox the Meeting

Keep the meeting timeboxed to 4 hours or less. Eliminate unnecessary conversations and stay focused on the core planning activities. You can consider setting a timer to keep on track.

Prepare the Backlog

Make sure the backlog is groomed with clear, detailed stories. Refine and estimate larger stories in advance so the team can focus on selection and tasking.

Manage Participation

The Product Owner clarifies requirements but avoids directing implementation details. Planning is for the team, so ensure all members actively participate.

Estimate Relative to Velocity

Use velocity data to select a reasonable scope for the team’s capacity, and don’t commit to significantly more points than historically delivered.

Confirm Team Availability

Have each team member confirm their availability and identify any planned time off impacting their capacity, then account for these reductions.

Iteration planning agenda

SAFe Iteration Planning Agenda

An iteration planning agenda ensures the team aligns on scope, requirements, assignments, and measurable goals.

An example of a typical iteration planning agenda is:

  1. Establish team capacity
  2. Estimate and select stories from the backlog
  3. Define acceptance criteria
  4. Break down stories into tasks
  5. Assign tasks to team members
  6. Determine story points’ estimates
  7. Develop iteration goals
  8. Commit to the iteration goals

Iteration Planning Attendees

The core iteration planning attendees are:

The team drives breaking down stories and tasking, the Scrum Master facilitates planning, and the Product Owner provides clarity on requirements and backlog prioritization.

While other stakeholders like customers and leadership may attend for transparency, their participation should be limited to avoid directing the team.

Relative Estimating, Velocity, Capacity, and Normalizing Story Point Estimating

Relative Estimating, Velocity, Capacity, and Normalizing Story Point Estimating

Accurately estimating stories, forecasting team capacity, and normalizing points are key to effective iteration planning.

Relative Estimating

Teams estimate effort using story points rather than time. Story points express the relative complexity or amount of work required to complete a story compared to other stories.

Teams use techniques like planning poker and Wideband Delphi to estimate stories relative to each other based on factors like uncertainty, complexity, and effort. This accounts for differences in skills between team members.

Velocity Calculation

Velocity is the average number of story points a team completes per iteration. It is calculated by dividing the total number of story points completed by the number of iterations.

For example, if a team completed 50 story points over 5 iterations, their velocity is 10. Velocity forecasts how much work a team can handle in an iteration based on past performance.

Capacity Planning

Using velocity trends, the team forecasts how many story points they can complete in the upcoming iteration based on the team’s availability.

They factor in team members’ vacation, training, ops support duties, or other events that may limit capacity. This establishes the team’s total point capacity for the iteration.

Normalizing Story Point Estimating

It’s common for new teams to underestimate stories as points are not yet normalized.

As the team works together over iterations, their velocity will increase as story point estimates become more consistent.

Retrospectively re-estimating some past stories can help calibrate and normalize points for future iterations.

Anti-Patterns for Iteration Planning

Anti-Patterns for Iteration Planning

Certain behaviors should be avoided in iteration planning to keep meetings productive and ensure streamlined, focused planning sessions where the team leaves ready to successfully execute committed goals.

SAFe iteration planning anti-patterns include:

No Preparation

Failing to groom and refine the backlog with clear, detailed stories wastes planning time. Don’t make the team start from scratch.

No Timebox

Letting planning drag on indefinitely kills energy and momentum. Timebox meetings and eliminate unnecessary discussions.

Top-Down Goals

If leadership defines iteration goals without team involvement, it hinders motivation and shared ownership. Goals should be bottom-up.

No Estimating

Estimating stories during planning is key for capacity forecasting and goal setting. Don’t skip this step.

Overcommitting

Planning too many story points compared to historical velocity leads to failure and frustration. Commit to realistic goals based on past completion rates.

PI Planning vs Iteration Planning

PI Planning vs Iteration Planning

While related, PI planning and iteration planning have distinct purposes. Let’s look at a head-to-head comparison of both:

Timeframe

PI planning happens once per Program Increment (typically 8-12 weeks) to define strategy and high-level plans.

Conversely, iteration planning recurs every iteration (typically 2-4 weeks) to detail short-term execution.

Scope

PI planning scopes an entire Agile Release Train (ART), setting vision and alignment across all teams for the whole PI.

While iteration planning scopes the upcoming work for a single Agile team.

Outputs

PI planning outputs roadmaps, features, and initial story breakdowns. Iteration planning outputs committed backlogs, story details, tasks, and team assignments.

Attendees

PI planning involves all teams, business leaders, and stakeholders. Iteration planning just involves a single Agile team.

Release Planning vs Iteration Planning

Likewise, release planning and iteration planning are distinct levels of planning in Agile frameworks like SAFe.

Timeframe

Release planning happens infrequently to set overall release goals and high-level priorities. Iteration planning occurs every iteration to define specific deliverables.

Scope

Release planning determines the strategy for an entire product release. While iteration planning scopes iteration execution for a single Agile team.

Outputs

Release planning outputs include release timelines, budgets, and feature priorities.

In contrast, iteration planning outputs include iteration backlogs, story points, and team assignments.

Attendees

Release planning involves product and technology leaders. Iteration planning on the other hand is for the Agile team members.

Final Thoughts

Iteration planning is a key process that enables Agile teams to routinely establish aligned goals, create actionable plans, and make realistic commitments for each iteration.

By effectively estimating relative effort, leveraging velocity trends, and applying capacity forecasts, teams leave planning empowered to deliver maximum business value within fixed timeboxes.

Consistent, structured iteration planning meetings set teams up to build momentum and establish sustained cadence over program increments and product releases.

FAQs

How Long Should Iteration Planning Be?

Iteration planning meetings should be timeboxed to 4 hours or less to maintain focus. Shorter iterations of 1-2 weeks may only need 2 hours. For longer 3-4 week iterations, limit planning to a maximum of 8 hours across 2 days.

Who Commits to the Iteration Goals at the End of Iteration Planning?

The entire Agile team commits to meeting the iteration goals by the end of iteration planning. This ensures shared accountability for delivery and drives engagement during execution.

Does Scrum Master Facilitate Iteration Planning?

The Scrum Master facilitates the iteration planning meeting and ensures that the event stays time-boxed and focused on its key goals of estimating stories, determining team capacity, defining tasks, and making commitments.

What Four Activities are Key to Iteration Planning?

The four key activities in iteration planning are:
1. Determining team capacity
2. Estimating/selecting stories from the backlog
3. Breaking down into tasks and assignments
4. Committing to iteration goals

Completing these four activities results in a solid plan and shared commitment to complete the iteration work.

What are two Outputs of Iteration Planning?

The two primary outputs of iteration planning are the iteration backlog and iteration goals.

The iteration backlog contains the committed stories, detailed tasks, and assignments for executing the work, while the iteration goals summarize the team’s objectives for the iteration and help maintain focus during execution.

How Can Teams Use Iteration Planning to Stay Aligned on Their Work?

Teams can use iteration planning to stay aligned on their work by collectively discussing and agreeing on the goals, scope, and priorities for the iteration.

They can break down tasks, estimate effort, and assign responsibilities, fostering transparency and shared understanding.

What is One Result From Iteration Planning For Safe Scrum Teams?

One result of iteration planning for Safe Scrum teams is the creation of a prioritized backlog that includes user stories, tasks, and acceptance criteria.

This helps the team understand the work required for the iteration and ensures alignment with the product vision and goals.

David Usifo (PSM, MBCS, PMP®)
David Usifo (PSM, MBCS, PMP®)

David Usifo is a certified project manager professional, professional Scrum Master, and a BCS certified Business Analyst with a background in product development and database management.

He enjoys using his knowledge and skills to share with aspiring and experienced project managers and product developers the core concept of value-creation through adaptive solutions.

Articles: 334

Leave a Reply

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