Sharing this presentation from our monthly series through Agile New England. This is a high-level introduction to planning and forecasting. The talk behind the slides is really more informative. If you'd like to learn more, connect with me.
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Kanban 101 - An Introduction to Planning with Little's Law
1. KANBAN 101
AT AGILE NEW ENGLAND
Presented by:
Code Genesys
Ajay Reddy
Jack Speranza
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
3. Section 1 of 3
Background
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
4. Project Planning Process
• Concept is Developed
• Project Parameters are Established
• Minimum Viable Product / Minimum
Marketable Features are Defined
• Features are Prioritized
• Estimates of Required Time and Resources
are Established
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com
5. The Moving Targets
The amount of work requested.
The amount of time needed.
The amount of resources allocated.
The level of quality delivered.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
6. The Challenge
Your mission, should you choose to accept
it…
• Establish a Reliable Delivery Date for
a Given Scope of Work and Set of
Resources (Team Members)
• Establish a Reliable Alternate Date if
Resources were Taken Away / Added
or Scope of Work were Changed
Is this truly possible???
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
7. The Headaches
Estimating Skills – some individuals /
teams are better than others at
estimating.
Work Item Variability – the development
process has too many variables that
influence “lead time.” Outliers are
inevitable.
Non-uniform Metrics – the most
performance metrics are rarely apples to
apples comparisons.
Politics – estimates are invariably
perceived as commitments.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
8. Scrum Systems – Estimation & Velocity
• Estimation of hours or
story points is subjective
and imprecise
• Velocity measurements
are only relative and not
comparable across
multiple teams
• Velocity is essentially a
“throughput “-based
measure.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com
9. Throughput Focus
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Throughput represents the number of work items delivered in a given
time period (such as a Sprint).
-- a decent indicator of how well a team or organization is performing
-- no clear indication of the amount of time required to complete work items…
10. Kanban Systems – Flow Based
Queuing system design plus granular tracking of work types and
workflow enables probabilistic forecasting.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com
Example of visualizing a single
workflow through which all
work types flow. Enables
forecasting based upon
objective measurements vs.
subjective sizing.
Example of visualizing
multiple workflows that
relate to specific classes of
service (each of which may
have different rates of flow).
This system typically allows
for more precise forecasting.
11. Lead Time Focus
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Traditional Labels – typically
measured as the amount of time
required to deliver a work item.
-- measured from the date of
commitment through delivery
into the first infinite queue
Alternative Labels – shifts
focus to realization of
business value.
-- “flow time” + “delivery
time” is the cycle relevant to
our forecasting process.
12. Lead Time Histogram
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
13. Section 2 of 3
Planning with Little’s Law
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
14. Kanban / Scrumban as a Queuing System
Source: Dimitar Bakardzhiev
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
15. Applying Little’s law
Departure rate approximately equals
arrival rate (λ).
No work items get lost and none
remain in the system indefinitely.
Little’s Law holds for queuing
systems where:
training@codegenesys.com Official Licensed Material Copyright CodeGenesys, LLC
Can be applied at both iteration and release
levels...
16. The Basic Math
Use with care – there are many variables that
influence reliability of any forecast.
Best Use is to attain improved understandings
& to influence expectations vs. making explicit
commitments.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
17. The Math in Action
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Proposed Project Parameters
• Web Application using familiar technologies and 2 stable Scrum Teams.
• 50 Features defined.
Historical Team Data
• Average team size = 6
• Average # of Work-in-Progress (WIP) per team member = 2
• Historical density of 13.5 user stories per feature
• Average lead time of .9 weeks per user story
• Average throughput of 28 user stories per 2-week sprint (14 per week)
Release Backlog = 50 Features x 13.5 Stories / Feature
= 675 User Stories
Proposed Project Scope
18. The Math in Action (cont.)
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Forecast Request # 1
• Can you complete the project as defined in 26 weeks using the resources
allocated?
Duration = Number of Stories x (Ave. Lead Time / Ave. WIP)
= 675 x [.9/(12 resources x 2 items each)]
= 25.3 weeks
Forecasted Project Schedule
Historical Team Data
• Average team size = 6
• Average # of Work-in-Progress (WIP) per team member = 2
• Historical density of 13.5 user stories per feature
• Average lead time of .9 weeks per user story
• Average throughput of 28 user stories per 2-week sprint (14 per week)
19. The Math in Action (cont.)
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Forecast Request # 2
• We need to complete this project in 18 weeks. What additional resources do
you need?
Ave. WIP = Ave Lead Time x (Number of Stories / Duration)
= .9 x (675 / 18)
= 33.75
34 user stories / 2 WIP per resource = 17 resources
Forecasted Resource Needs
Historical Team Data
• Average team size = 6
• Average # of Work-in-Progress (WIP) per team member = 2
• Historical density of 13.5 user stories per feature
• Average lead time of .9 weeks per user story
• Average throughput of 28 user stories per 2-week sprint (14 per week)
20. But Wait… What About the Z-curve?
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Little’s Law can only be
reliably applied to work
performed during the 2nd
leg of the project /
release z-curve…
21. Accounting for
Uncertainty
Natural ebb & flow (associated with the
1st & 3rd legs of the z-curve)
Dark Matter (work expansion that comes
from a better understanding of the work
being undertaken)
Failure Load (defects & technical debt, for
example)
When calculating Project (or Release) lead time,
we need to account for uncertainty in terms of:
Source: Dimitar Bakardzhiev
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
22. Managing the
Uncertainty
• 1st & 3rd Legs of Z-curve
• Dark Matter
• Failure Load
• Other Risks?
Calculate and Manage Against a Project
Buffer Accounting for:
Have Team Focus on Median Lead Times
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Project Buffer =
Z-curve coefficient
x
(1 + ave. failure load + ave. dark matter)
x
(# of stories / ave. throughput)
23. Putting it All Together
Monitoring & Managing Projects in Flight
Planned project (Release) lead time is the
sum of the calculated project length and a
project buffer. In our example:
• 2nd Leg of Z-curve: 25.3 weeks
• Project Buffer: 18.8 weeks
• Total: 44.1 weeks
Managing projects in flight requires
evaluating two performance metrics -- the
percentage of the project completed
related to the percentage of the buffer
consumed.
Monitoring this relationship lets managers
see and proactively address potential
problems before they actually manifest
themselves in more obvious ways.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
24. What About Sprint Planning?
The techniques applied in Release Planning can also be employed
at the Sprint Planning level:
• Little's Law provides an additional check and balance on the
correlation between velocity and actual throughput.
• Teams that actively manage risk through embedded Risk
Management techniques (such as Cost of Delay calculations
and / or class of service mechanisms) are enabled to improve
their story selection & prioritization capabilities, improving the
likelihood of meeting their Sprint commitment.
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
25. Section 2 of 3
Evolutions
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
26. Why Risk is Relevant
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
• Higher Risk Means Greater Variability in Lead Times
• greater variability means less predictability
• Factors that Influence Risk
• having to interact with other systems to deliver completed work
• having to work with new systems or technologies
• having to learn about new new business domains
• and many more...
• Quantifying, Tracking & Visualizing Risk
• improves shared understandings of project health
• enables early discovery and intervention
27. The Result – Better Decisions
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Which of these projects is more likely to be completed on time?
28. Back to Sprint Planning
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
Improving the Likelihood of Meeting Your Sprint Commitment
• 70 User Stories remain in the Product Backlog.
• Risk has been quantified on each on a crude scale:
• High Risk Items: 20 User Stories
• Medium Risk Items: 36 User Stories
• Low Risk Items: 14 User Stories
Historical Team Data
• Average Lead Time for All Stories: .9 weeks
• Average Lead Time for High Risk Stories: 1.6 weeks
• Average Lead Time for Low Risk Stories: .4 weeks
# stories = duration x (ave. WIP / ave. lead time)
Proposed Sprint Backlog
29. Sprint Planning (cont.)
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
# stories = duration x (ave. WIP / ave. lead time)
All Risk Stories (combined):
# stories = 2 weeks x [(12 resources x 2 stories)/ .9 weeks]
= 53.33 user stories
High Risk Stories:
# stories = 2 weeks x [(12 resources x 2 stories)/ 1.6 weeks]
= 30 user stories
Medium Risk Stories:
# stories = 2 weeks x [(12 resources x 2 stories)/ 1 week]
= 48 user stories
Low Risk Stories:
# stories = 2 weeks x [(12 resources x 2 stories)/ .4 weeks]
= 120 user stories
What a Difference Risk Makes
When we don’t account for risk, 50 user
stories may seem like an appropriate
number of stories to select for the Sprint
Backlog.
30. Modeling & Simulations
Official Licensed Material Copyright CodeGenesys, LLCtraining@codegenesys.com | @codegenesys
• Modeling is used when greater precision is required, or when we need to
isolate and measure the impact of specific risk factors in a more granular
fashion.
• Modeling reality through repetitive simulations produces the rough equivalent of
actual performance data
• Past performance data (or its equivalent) improves our understanding of the
probability of various outcomes that would otherwise remain elusive.
• Elevated levels of uncertainty and risk
means greater difficulty developing
accurate forecasts.
• Poor forecasting erodes trust and sense
of predictability with non-technical
leadership.
• Trust & predictability are essential to
sustained agility and high-performance.
31. KANBAN 101 ON STEROIDS
training@codegenesys.com | @codegenesys
Learn More :: Kanban Kickstart
Start using Kanban
in Less Than a Day!
WHEN: Fourth Wednesday
of the month
8:00 AM – 1:30PM
$249 / person
http://kanban-boston.eventbrite.com
PRIVATE TRAINING AT YOUR LOCATION IS
ALSO AVAILABLE (STARTING AT $1990 FOR
UP TO 20 PEOPLE).
WHY KANBAN?
Simple & Easy – Starts With What
You’re Already Doing and Makes
Those Practices More Effective
Improves Focus & Flexibility
Adds Ways to Identify & Reduce
Wasted Work / Wasted Time
More Reliable Forecasting &
Planning Capabilities
Increased Efficiency
Greater Sustainability
What you walk away with:
Mastery of Core Principles & Practices
Analysis of Sources of Demand (where
work is coming from) & Dissatisfaction
(what business needs aren’t being met)
Value Stream Mapping of Current Process
Initial Kanban Board Design
3 Month Gold Level Subscription to
ScrumDo.com plus Follow-up Mentoring
32. Advanced Training Opportunities
Scrumban Bootcamp (1 Day)
Kanban Foundations (2 Days)
Kanban at Scale (2 Days)
Advanced Practitioners
More Details at:
http://codegenesys.com/events
Contact us:
training@codegenesys.com
Editor's Notes
Kanban / Scrumban can provide improved processes around the last two items…
Theortically, anyway… typically teams mostly adjust quality (unintentionally) as business units tend to maintain other factors are inflexible
Better than nothing, but rarely good enough…
You can use little law for Release & Sprint Planning.
Releases – work items = features
Sprints – work items = user stories
2 possible approaches –
Plan for a future project based on data obtained from prior work
Refine existing forecasts based on data that’s developed as the project / release is being developed.
IMPORTANT –
These formulas reference “average” values. Imprecision can arise from using average (and even median) values.
Don’t let the use of mathematical formulas and proofs mislead you – Scrumban doesn’t magically make your planning and forecasting foolproof and absolute. At the end of the day, we’re still making assumptions and we’re still applying probabilistic methods.
These approaches don’t provide an absolute answer – just a more informed one.
2 us
A calibrated application recognizes uncertainty and accounts for it scientifically
Uncertainty is reduced by aggregation.
Project Buffer size calculations
Size of the project buffer must be based on the uncertainty involved in the project. The uncertainty must be accessed in terms of technology, people, subject matter, architecture, maturity of the organization and suppliers.
*** IMPORTANT - When using kanban systems, the role of the project manager / scrum master shifts from a focus on all tasks to monitoring Average Lead time because if WIP is limited then Throughput depends only on Lead Time.
As work is undertaken, if an item takes longer to complete than anticipated, it consumes the project buffer.
As items are delivered, we can compare the consumption rate of our buffer against the rate of progress on the project as a whole.
As work is undertaken, if an item takes longer to complete than anticipated, it consumes the project buffer.
As items are delivered, we can compare the consumption rate of our buffer against the rate of progress on the project as a whole.
Chart Inset (displays on click) –
Expect to see fluctuations in your project buffer consumption
Higher percentages of the buffer typically consumed during the beginning and end stages of your project.
Chart represents a healthy visualization
Kanban / Scrumban can provide improved processes around the last two items…
So now that we have a sense of the background, and a sense of what Kanban was bringing to the table, let’s see how things unfolded
Work items with higher risk usually have increased variability. Prioritizing higher risk items helps assure overall project & sprint goals are achieved.
Work items with higher risk usually have increased variability. Prioritizing higher risk items helps assure overall project & sprint goals are achieved.