Skip to content Skip to sidebar Skip to footer

Iteration Planning : Overview, Technique, and Significance

Iteration planning is a process where the team members identify the work to be done in an iteration and commit to delivering a successful result at the end of the iteration. In this article, we will learn in detail about Iteration Planning in agile and its significance. 

First, We will look into what we understand by Iteration Planning:

What is Iteration Planning?

Iteration Planning is done to identify the commitment from the Agile team towards some stories/tasks that they are very of sure of completing in the Iteration. The iteration planning is done at the beginning of the iteration and no sooner. If we did it upfront, we would be missing the opportunity to incorporate the learnings from the previous iteration into the current iteration. Through deferring commitment, we can make decisions with the maximum amount of information available.

Iteration planning involves the members of a team, Developers, Product Owner and Scrum master. The planning session summarizes the work as a set of committed iteration goals.

The Product Owners defines what to be built in the Iteration as per the discussion he would have had with the customer. The team discusses on how to build the solution and how much to be built in the Iteration.

The Steps Involved in Iteration Planning

The Iteration planning is a time boxed event. Max of 4 hours is allotted for Iteration Planning for a 2 week Iteration. Steps involved in the Iteration Planning are : 

  1. Establishing the Capacity of the team for the Iteration
  2. Analyzing the User Stories and estimating
  3. Detailing the stories
  4. Finalizing the Iteration Goals
  5. Commiting to the Iteration Goals

Lets understand what actions are taken in each of the steps during the Iteration Planning.

  1. Establishing the Capacity of the team for the Iteration

The team determines their capacity for the iteration and pulls items from the product backlog. The team discusses time required to spend towards any Organizational Level meetings,( like All-hands, tradeshows, milestones where team needs to be part of it), any public holidays, any planned leaves during the Iteration. Then calculates the total capacity available for Iteration. In this Capacity calculated, the team can decide how much they want to spend on developing new stories, how much effort to be spent for technical spikes/ enablers or any maintenance works.

  1. Analysing the User Stories and estimating

Team discusses each of the stories from the team backlog Complexity, effort required, Technical challenges, uncertainty’s, risks & dependencies on other stories and also the acceptance criteria. At this stage, teams along with the help of POs and Architects would estimate the user stories using any of the Relative Estimation techniques like : Planning Poker, T shirt sizing , Dot Voting, Bucket System etc. Stories are segregated as value delivery ones and Enablers.

Enablers are also estimated.

  1. Detailing the stories

Teams discuss each of the stories and understand the scope and the team members pick up the stories they can work on. Sometimes, same story is picked by couple or more team members to complete quickly, Or story is decomposed into smaller tasks and picked up by team members.  Capacity of the team would be reducing as the team members would be picking up and committing to stories. It is not advised to load the team upto 100% capacity as per SAFe. 

100% Utilization is going to be a disaster.

  1. Finalizing the Iteration Goals

Teams discuss and identify the iteration goals. Iteration goals need not be just the stories, but can also be any improvement activities like enhancing the quality by reducing the open defects, improving the Code Coverage, improving the overall performance of the system etc.

  1. Commiting to the Iteration Goals

The PO, and the team agrees upon to the list of stories that would be considered during the iteration. They also finalise the Iteration goals and commits to it. Thus fixing the scope of work for the Iteration.

Why is Iteration Planning done?

The purpose of iteration planning is to organize the work and define a realistic scope for the iteration. Iteration planning in Agile operates where the team agrees on a set of stories for the upcoming iteration and summarizes those stories into a set of iteration objectives.

Any iteration backlog and its objectives depend on the team’s capacity. It allows for reflecting each story’s complexness, dimensions, and reliances with other teams also. By the end of the planning process, teams commit to the objectives of the iteration and try to adjust levels as essential to accomplish the bigger purpose.

In recent times, SAFe has emerged as one of the most popular  Frameworks for scaling Agile practices for organizations across different domains like software, hardware, infrastructure, educational, medical, finance, defense, telecommunication name a few.

Essentially, SAFe is a compilation of behavioural and process principles meant to facilitate the scaling of lean and agile methodologies in organisations. There are different SAFe Certification course for different roles like SAFe Scrum Masters, SAFe Agilists,  SAFe POPM(Product Owner and Product Manager), SAFe RTE(Release Train Engineer) which would be beneficial for the  individual skill building as well the organizational growth. SAFe Training benefit the organisations to develop creative business strategies and sustain and excel the business.

Significance of Iteration Planning

Iteration Planning helps to better organize the work during the Iteration. Also helps in understanding the what is the priority of the customer and how and when is it being delivered. It helps in bringing the commitment by the team members.

Iteration Plan helps in incremental value delivery to the customer which is the main aim of being agile.

Conclusion

Regarding earmarked levels, no stories are dragged from the team backlog once the iteration goals are commited. As the entire team commits to the iteration goals, the work remains fixed for that Iteration.

FAQ’s

1. Iteration planning depends upon which factors?

The iteration planning depends upon three major factors:
Capacity of the team
Prioritized stories
Estimation of the stories 

2. What are the two outcomes of iteration planning?

The three significant outcomes of iteration planning are:
Iteration backlog: It consists of the stories aligned to the iteration, with well-defined acceptance criteria.
Business objectives written in simple words
Commitment by the team towards Iteration Goals

3. How many iterations can happen in an agile project?

There can be any number of Iteratons. Typically the number of iterations are decided by the size of the product or solution that is being considered to deliver to the customer.

4. What is the distinction between Iteration and PI planning?

The main difference between Iteration and PI planning is that Iteration planning is for a particular iteration and focuses primarily on works or tasks decomposed from user stories. 
On the other hand, PI Planning focuses on planning for the multiple iterations spread through out the length of the PI. PI Planning focusses more on completion of a feature.

5. Who owns and accepts a stories in an Iteration?

Product Owners owns and accepts the stories in an Iteration.

6. What is the ideal length of an Iteration? 

2 weeks is the ideal length of an iteration, however based on the nature of the work, the teams are working on, iteration length may vary from 1 week to 3 weeks.