Adapting Kanban
to
Fixed Size Projects
Implement WIP...
Visualization with a Board
What am I referring to as "Fixed price projects"?
- Map your value stream
- Show all work with different swim lanes
- Induce Flow
- Reduce multi-tasking to reduce waste and improve work quality
A few
basics
first...
Implement Pull
- They have been estimated, scheduled and planned in the presales stage
- Once you get the PO, you kick off the project with a defined scope, budget and timeline
- Further, the eco-system is not always fully agile:
- There is a need for:
- “Dynamic” resource capacity planning
- Budget tracking and monitoring
- Keeping the Stakeholders aware of whether the overall scope is on track to be delivered in the committed timeline
- To get Uniform Cadence
- Greater commitment from your team members
Sudipta Lahiri
Senior Vice President
Agile/Kanban Coach
The Kanban Method
Changing
perspective
with Agile...
Define Explicit Policies
- The goal is a culture of "Continuous Improvement"
- It does not end with "Agility"
To have a uniform understanding of when a card can be moved from one lane to another
Changing focus with
Agile/Lean...
Thank you for your time today......
Capacity
Planning
sudiptalahiri.wordpress.com
- Beginning of the project
- Output: Resource Plan
- During project execution
- Things don't work as expected; need a mechanism to keep visiting your Capacity Plan
- If you are behind schedule, you are often asked - "how many resources do you need?"
- Scope Creep - what is the impact?
Join us at:
Limited WIP Society NCR,Delhi Chapter at:
http://www.meetup.com/Limited-WIP-Society-NCR/
Cumulative Flow Diagrams
(CFD)
Recap...
Continuous Capacity Planning
Using Kanban Board with explicit policies
- Fixed price projects have characteristics that need us to go beyond just Velocity/Throughput tracking
- Capacity plan throughout the Project execution
- Use AgileEVM thinking to track variance between planned progress and actual
- Use CFD to keep track of whether the team is delivering at the desired Throughput
- When scope changes, evaluate multiple options using the Throughput and iterate with stakeholders
- The same approach would apply to SCRUM projects also
The slope of this line gives you the Throughput; rate at which cards are getting completed.
Impacting
Scope Change
Agile EVM
At Project Beginning
Ref: http://brodzinski.com/2013/07/cumulative-flow-diagram.html
Accepting change is “key” to Agile thinking
Challenge:
In fixed price projects, how do you project timeline and budget?
- Define by Tamara Sulaiman and 2 others
- http://www.solutionsiq.com/Portals/93486/docs/earned-value-analysis-in-scrum-projects-wp.pdf
- Key difference: "Work" is given credit when it is completes testing/deployment
- Aligns with the Agile focus on "Working Software"
Budget
Tracking
Agile Methods
- Agile extrapolates past velocity/throughput to predict future
- Inherently, they assume stable teams
- They assume CFT teams
- However, in service organizations, resource allocations keep changing (# of people, experience of people)
- Solution: Apply EVM approach to Agile/Lean thinking
Working with the
Value Stream
One month
before Dev
One week
before Dev
Using AgileEVM for Planning
Aggregate this
by skill profile
The Approach...
The approach...
- Sound approach but we used a simpler template for the following reasons:
- Planned Value uniformly spread across project duration
- Accommodates scope change but does not accommodate for a schedule change in the middle of the project
- Hard to read and interpret
- Adoption is tentative
- Agile EVM modeling is available in some tools
CFD shows the project end date for revised scope @ current throughput
Reallocate capacity to match required throughput
On a weekly basis, EV is computed using AgileEVM approach and plotted against the PV
To track EV:
- Most Kanban tools dump card wise, stage wise data to an Excel
- Two alternatives:
- You can give a certain % completion to each stage of the value stream completed on their estimated size
- For example: Requirement done is 20% value earned, Design completed is 15% value earned.... OR
- Stick to Agile emphasis on “working software” and give 100% value earned when a card is archived
- Take this approach for your SCRUM sprints
Plot weekly data to get the EV trend
To track Actual Cost, get the actual weekly resource allocation data or time sheet data
Define Policies with for Capacity Planning
Let us understand this with an example...
Consider the following Board....
Applying EVM to the Capacity Plan built before
Excel Dump from
a Kanban Board
Current throughput
Assume that the team is performing at the Required Throughput, in this example, 16.13 story points per day
A few things to note...
- Frequency: Do Capacity Planning every time you do Backlog Grooming
- WIP Limits: Have a narrower WIP limit within the Backlog lane as you move from Left to Right. If you have some cards blocked for Capacity Reasons, you have others to choose from
- Current Loading: When assessing available capacity, consider current cards in "Value Added" Lanes with their Due Date.
Making it a little more practical...
You will get something like this...
- Positive/negative factors on productivity:
- Resource ramp-up, skill training, domain training
- Team decides how to calibrate productivity across time
- Benefits:
- PV reflects reality
- S-curve in PV
Now, evaluate Scope change...
100md of work has been added and updated in the Backlog (highlighted in RED)
Project the CFD again...
A little more complexity...
with an example
Required Throughput increases from 16.13/day to 18.09/day to meet the same timeline - an increase of 12% in addition
An iterative process with stakeholders to evaluate options and converge
Adjust PV for revised plan
Take an Estimated scope of 100mm
Available capacity: 80mm
10 calendar months fixed timeline
Plan for an initial ramp-up
For small changes in resource availability/scope, Planned Value need not change
Small: < 10% variation
For significant changes, rework Planned Value as for modified Resource Plan
Option I:
Increase capacity by 12-15% to reach desired throughput
Factor in an increase in overhead as team size increases
Option II:
Keep the same capacity but push back the timeline by 12-15%
Option III
Re-prioritize scope to keep the total scope largely unchanged but deliver to the revised timeline
Option IV
A combination of all of above for overall stakeholder agreement
Partial capacity increase + partial extension in timeline + reprioritizing scope
For each option, use CFD projection to evaluate the final result
Scenario II:
Scenario I:
Dev Manager believes than he/she will deliver 100mm with 80mm of capacity
Total PV at proj completion (EAC) = 100mm
Planned value distribution based on resource allocation distribution
Summary:
- SV measured on PV = 100mm
- CV measured on PV = 80mm
Dev Manager believes that he/she can deliver only 90mm of scope with 80mm of capacity
Total PV at project completion (EAC) = 90pm
Communicate to CDU for remaining10mm
Planned value distribution based on resource allocation distribution + uniform distribution of gap (10pm)
This is because you want to plan for 90pm though the resource allocation distribution is for 80mm
Summary:
- SV measured on PV = 90mm
- CV measured on PV = 80mm
You will get a plot like this...