“A timebox event within Agile Release Train (ART) which delivers incremental value in the form of a working software” is how SAFe defines a Program Increment (PI), and an effective PI requires work to be planned meticulously, transparently, and proactively.
This article is an attempt to pen down a few hygiene elements to bear in mind while planning your PIs. Sort of a checklist that is drawn from our coaching experience and exposure to various pertinent best practices.
PI planning often sounds and feels humongous, almost intimidating! But with practice, rigor and iterations focusing on inspection, adaptation and improvement, the experience only gets smoother and easier.
Our go-to manthra for effective PI is “Plan, Do, Check, Adjust, Communicate”.
Below is a ready checklist that has worked for us, please feel free to use it as appropriate, we will be glad to hear your feedback, suggestions & queries in the comments below.
- Schedule events of the calendar year in advance (SOS, POSync, PI Planning, Inspect & Adapt, System – ART events, DSM, Iteration Planning, Backlog refinement, Iteration review – Team events) and send the invites to all the stakeholders
- Ensure participation of all stakeholders like Product management, Business Owners, RTEs, Product Owners, Architects, Management etc.
- Focus on management alignment and readiness
- Refine and ready program backlog with top ten features.
- Align features on the program board, so they belong to single ART
- Ensure that logistics are in place, collaboration tools are checked and ready (Zoom, JIRA, Teams, Miro, Mural etc)
- Communicate the business context, key milestones, vision as part of the Pre PI
- Understand past velocity trends, so participating teams can balance demand and capacity.
- Ensure PI objectives are identified and Business value assigned.
- Note that the intent of business value is to increase collaboration and conversations between Business Owners, Product management and teams
- Ensure that PI Objectives are made visible
- Define PI objectives for a business tone – avoid getting too technical in nature
- Define SMART (Specific, Measurable, Achievable, Relevant, Timebound) PI objectives
- Ensure the team objectives are planned to roll up to deliver the PI objectives
- Define sprint goals for individual teams to measure on how teams are progressing towards PI goals
- Prioritize commitment on team objectives over mere commitment to stories
- Avoid breaking down stories and estimation to granular levels
- Avoid spaghetti like dependencies when capturing dependencies on program board
- Plan stories with dependencies earlier in PI than later
- Plan PI only up to planning horizon
- Avoid upfront detailed PI planning
- Move objectives to an “uncommitted” bucket in the face of low team confidence or external dependencies around them
- Don’t plan capacity for uncommitted objectives
- Ensure frequent refresher sessions for stakeholders new to PI planning – to increase collaboration levels!
- Religiously incorporate lessons and learnings from previous PI plannings – pay special attention to avoid the pitfalls from previous PI planning
- Use working agreements to instill discipline – ensure availability, buy-in and agreement across teams.
- Understand the progress and impediments faced by the individual teams by ensuring SOS events are held with RTE and all the scrum masters of the ART frequently during PI planning
- Ensure consensus of product management and architects around the architecture vision
- RTE and SM’s must participate rigorously to communicate anything that is added new to the Program Increment
- Treat visibility, availability, ease of access to program and team board, dependency map and risk board as matters of paramount importance.
We would use the above pointers right through the PI Planning process.
For the PI Planning event agenda please refer to – SAFe PI Planning
If you want to know more about PI planning, please refer – Introduction to PI Planning to SAFe
Agile Coach – Benzne
ART – Agile Release Train
RTE – Release Train Engineer
SOS – Scrum of Scrums
PO Sync – Product Owner Sync
DSM – Daily Scrum Meeting
SM – Scrum Master