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 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 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.
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:
- Establish team capacity
- Estimate and select stories from the backlog
- Define acceptance criteria
- Break down stories into tasks
- Assign tasks to team members
- Determine story points’ estimates
- Develop iteration goals
- Commit to the iteration goals
Iteration Planning Attendees
The core iteration planning attendees are:
- The full Agile team
- The Scrum Master
- The Product Owner
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
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
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
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.