SlideShare a Scribd company logo
1 of 48
The Agile Forecast
Fun with Probabilities
Joe Tristano
© 2018 Premier Inc. All rights reserved.
Premier and the Premier Mobius logo are
registered trademarks of Premier Healthcare
Alliance, L.P. All other trademarks are the
property of their respective owners.
Advertisement
https://stnektariostakingsteps5k.racesonline.com/
Register for St. Nektarios Taking Steps 5K on Saturday, Dec 8th 2018 @ 8:00 AM
Proceeds benefit Shelter Health Services, the region’s largest free medical clinic caring
for the 425+/night homeless women and children who stay at the Salvation Army
Center of Hope
The Agile Forecast: Outline
● Introduction
● Background
● Inspiration
● Innovation
● Nuts & Bolts
● Making it work
● Wrap up
Introduction
®
About Joe
● Passion for making high quality software on
time that makes users AWESOME at what they
do
● Mechanical Engineering background
● Software Development for 25 years
● Agile for 17
○ Learned XP in 2001 from Joshua Kerievsky
○ CSM from Net Objectives in 2010
○ Brought scrumban to ANSYS shortly thereafter
● Inspiration
○ Poppendieck
○ Modern Agile
○ etc
®
Background
● New job!
● Product “promises” & a fixed date
● How are we going to make the date?
○ Cut scope!
○ Still overloaded
○ Make Small Stories!
○ We need to leverage our historical data!
When Will This Be DONE?
Time to Delivery
● Set clear milestones and objectives
● Release often
● Measure cycle time to ensure people are moving their work across the board
● Increase throughput
Radical Departure from Velocity
Inspiration
Statistical Methods
“a slight study of statistical methods and
their application to social phenomena affords
one of the simplest examples of the
application of algebraic ideas.”
- Alfred North Whitehead, The Aims of Education
What about Little’s Law?
● Average Throughput
● Average Lead Time
● Average Work in Progress
Works great for:
● Assembly Line Production ....
● Little Variance ...
JIRA Control Chart
● Cycle Times Do NOT have a normal distribution
● Nor does WIP
● We are not stamping widgets!
YIKES!!!!
We Write Code
Where to Now?
Research Findings
● Others confirm that software cycle times do not have a normal distribution
● They also found that a naive use of Little’s Law did not fare well in practice
● Troy Magennis and Alexei Zheglov arrived at similar conclusions
○ Use historical data
○ Fit a Probability Distribution Function to your data
○ Both used a Weibull distribution
What’s a Weibull distribution
● Weibull distribution is a continuous probability
density function which uses a constant shape
parameters to alter the shape of the distribution
● It is commonly used in reliability failure analysis
of mechanical parts to forecast failure
SO WHAT?
Weibull & Software
● Magennis found that as a team becomes more
lean the β becomes smaller
● Smaller stories, smaller cycle times
● The magic is finding β for your team
● Lots of curve fitting
● Still dissatisfied with the hoops to jump through
to estimate β and make an automated process
Innovation
Data Science {Statistics} to the Rescue!
Data Science and the KDE
In need of a better fit, data scientists Mike Korvink and Katie Pratt suggested the use of
a KDE (Kernel Density Estimator) to estimate my distribution in a non parametric way
building it from my historical data
EUREKA!!!!
Perfect Fit
Hypothesis
Given KDE Probability Distributions of Cycle Time and WIP along with a release date,
I should be able to determine our chances of meeting said date
BUT HOW?
Monte Carlo Analysis
● Sample PDF over and over again and determine probability to meet date
● Additional uses of the data also reveal themselves
Nuts & Bolts
Process
WIP KDE
CYCLE
TIME KDE
Stories Remaining
WIP
Pseudocode
Num Buckets = Num
Stories/WIP
Pull from JIRA
Calcs:
Cycle Time/ Story
WIP/Day
Compute KDE for
Cycle Time and WIP
based on lookback
period
Sample WIP KDE
For WIP in Sample
Sample cycle times
For each bucket
For each sample
Total Days += sample
For each sample
End Date = today + Total Days
If End Date <= Release Date
Match++
Probability =
Match / Total Samples
Build CDF of sampled
probabilities
Complete Automation
● Using this method with various lookback periods, I can have a completely
automated process that runs everyday without fail.
● Everyone knows where we are, everyday
Failsafe
● Use a Fibonacci sequence to
look-back in weeks for samples
○ [1,2,3,5,8,13,21]
● X-Axis: How far do our
samples look back in time
● Y-Axis: What is our probability
● Bubble Size: Number of
Samples
Samples and More Samples
● 7 Lookback Samples [1,2,3,5,8,13,21]
● 1000 WIP Samples
● 1000 Cycle Time Samples
● Up to 7 Million Samples
○ Samples are excluded if outside real range of parameters
since KDE’s are not bound to discrete values
Mean Probability
● Linear combination of all
probabilities divided by their
sample size
Results
Daily result of what our
probability is and where
it has been...
Inverse Relationship
Bonus!
● When pinpointing our next
release date, we can leverage
the CDF to guide us on picking
a date
● The X- Axis is number of days
out from today
● The Y-Axis is the probability
that we will finish our work by
that date
Heuristics
lookback_weeks:<How many wks back>
longest_cycle_allowed:<outliers>
Stories_remaining:<jql or value>
monte_carlo_samples:<# samples>
wip_exclude:<exclude dates>
in/exclude: <exclude people>
blocked_status: <blocked>
start_status: <start timer>
closed_status: <end timer>
status_for_cycle_time:
<working kanban column
holidays: <holidays>
zero_cycle_time:
<time to allot
for stories closed
without being opened>
Multiple Development Streams in a Single Team
● Using inclusion and exclusion of people and stories bucketed to those people,
multiple development streams can be tracked and monitored
Production Timeline
Feature 2
Feature 1
Making it Work
The Scale of Probability
Unlikely Likely
0% 20% 50% 80% 100%
impossible certain
very likely but not certainvery unlikely but not impossible
● Teams must get into a habit of making very small stories
● Heuristics account for larger stories
● Daily probability tells us when to step on the gas
● Since starting this method in July 2016, the method has predicted release dates
with 95%
○ One of 20+ large releases slipped by 1 week due to Murphy’s law
How does it work in practice
When to Worry
Philosophy
● It’s a marathon from release to release
● The sprint is there as a mental time box
along with level setting
● Assess release scope change as it impacts
probability.
○ If you can absorb it, do it
26.2
● Estimates become complexity & doubt estimates,
time is taken into account from results
● No longer compare teams on story points
● Keep your eye on adding value
● We have experimented with no estimation
Stop Point Madness
“I’m not sure if I was the inventor of story
points, but if I am, I’m sorry”
-Ron Jeffries
Complexity
Doubt
Effort
What about Points?
● Use Points for High Level, relative, estimation
● Use historical data to guide you along the way
● How does “new work” compare to “old work”?
● Get a feel for what fits
● Use this method to determine date
● Don’t use points for day to day
○ Track throughput
Completed
Stories
Completed
Points
What about new teams?
● Start with Weibull, fix your distribution
● After accumulating data start this method
● You can start with less than 100 closed stories but 100 closed stories will get you
into the 90% accuracy range
Key Behaviors
● Regardless of story size, team must move stories across the board accurately
● Trust your team, if the numbers don’t sit well talk to the team and investigate
Enhancements
● Dependent stories and their placement into the WIP buckets
● Better point heuristics
● Performance improvements
○ Backed by a database to cook less WIP and cycle time numbers
Wrap Up
Wrap Up
● Ability to leverage wealth of information in JIRA to predict future release dates
and probability of meeting that release date using KDE and Monte Carlo analysis
● Team knows where they are everyday
● Stakeholders are aware of teams confidence in meeting release
● Trust is built between stakeholders and team for consistently meeting
commitments with high quality on time, every time
Thank You!
Questions?

More Related Content

What's hot

5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...
5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...
5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...Practice Paradox
 
GTD 101 - Getting Things Done
GTD 101 - Getting Things DoneGTD 101 - Getting Things Done
GTD 101 - Getting Things DoneDerek Neighbors
 
Evolutionary Patterns in Portfolio Kanban
Evolutionary Patterns in Portfolio KanbanEvolutionary Patterns in Portfolio Kanban
Evolutionary Patterns in Portfolio KanbanColleen Johnson
 
The Kanban Retrospective
The Kanban RetrospectiveThe Kanban Retrospective
The Kanban RetrospectiveColleen Johnson
 
Core Agility Workout - AgileIndy 2015
Core Agility Workout - AgileIndy 2015Core Agility Workout - AgileIndy 2015
Core Agility Workout - AgileIndy 2015Matt Block, CSP
 
Евгений Андрушко "Big & Enterpise data: чему они нас научили"
Евгений Андрушко "Big & Enterpise data: чему они нас научили"Евгений Андрушко "Big & Enterpise data: чему они нас научили"
Евгений Андрушко "Big & Enterpise data: чему они нас научили"SCRUMguides
 
Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!SwatiKapoor43
 
Seven deadly wastes
Seven deadly wastesSeven deadly wastes
Seven deadly wastesJez Halford
 

What's hot (11)

5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...
5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...
5 Signs Your Business Is Suffering Because You Haven't Documented Your Busine...
 
GTD 101 - Getting Things Done
GTD 101 - Getting Things DoneGTD 101 - Getting Things Done
GTD 101 - Getting Things Done
 
Evolutionary Patterns in Portfolio Kanban
Evolutionary Patterns in Portfolio KanbanEvolutionary Patterns in Portfolio Kanban
Evolutionary Patterns in Portfolio Kanban
 
The Kanban Retrospective
The Kanban RetrospectiveThe Kanban Retrospective
The Kanban Retrospective
 
Core Agility Workout - AgileIndy 2015
Core Agility Workout - AgileIndy 2015Core Agility Workout - AgileIndy 2015
Core Agility Workout - AgileIndy 2015
 
Евгений Андрушко "Big & Enterpise data: чему они нас научили"
Евгений Андрушко "Big & Enterpise data: чему они нас научили"Евгений Андрушко "Big & Enterpise data: чему они нас научили"
Евгений Андрушко "Big & Enterpise data: чему они нас научили"
 
What not to do when adopting Agile
What not to do when adopting AgileWhat not to do when adopting Agile
What not to do when adopting Agile
 
Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!Benzne webinar - Velocity, Story Points and Other Mess!
Benzne webinar - Velocity, Story Points and Other Mess!
 
Seven deadly wastes
Seven deadly wastesSeven deadly wastes
Seven deadly wastes
 
Why WIP Matters
Why WIP MattersWhy WIP Matters
Why WIP Matters
 
Intro to Kanban
Intro to KanbanIntro to Kanban
Intro to Kanban
 

Similar to The agile forecast joe tristano southern fried agile 2018_ final

Estimations, Expectations, and Evolution During a Project's Journey from RFP ...
Estimations, Expectations, and Evolution During a Project's Journey from RFP ...Estimations, Expectations, and Evolution During a Project's Journey from RFP ...
Estimations, Expectations, and Evolution During a Project's Journey from RFP ...Rick Manelius
 
Devops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetDevops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetKris Buytaert
 
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!South Tyrol Free Software Conference
 
The Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyThe Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyXebiaLabs
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Kris Buytaert
 
Data for Good Regina - 7shifts Presentation
Data for Good Regina - 7shifts PresentationData for Good Regina - 7shifts Presentation
Data for Good Regina - 7shifts PresentationData For Good Regina
 
Scrum and-xp-from-the-trenches 01 intro & backlog
Scrum and-xp-from-the-trenches 01 intro & backlogScrum and-xp-from-the-trenches 01 intro & backlog
Scrum and-xp-from-the-trenches 01 intro & backlogHossam Hassan
 
XP2017: Metrics to guide agile fluency, continuous delivery and product teams
XP2017: Metrics to guide  agile fluency, continuous delivery and product teamsXP2017: Metrics to guide  agile fluency, continuous delivery and product teams
XP2017: Metrics to guide agile fluency, continuous delivery and product teamsWouter Lagerweij
 
WhoIsKenDeLong
WhoIsKenDeLongWhoIsKenDeLong
WhoIsKenDeLongKen DeLong
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Kris Buytaert
 
Marketing the Agile Way - Applying Scrum Outside of Develoment
Marketing the Agile Way - Applying Scrum Outside of DevelomentMarketing the Agile Way - Applying Scrum Outside of Develoment
Marketing the Agile Way - Applying Scrum Outside of DevelomentKirsten Knipp
 
Marketing the Agile Way
Marketing the Agile WayMarketing the Agile Way
Marketing the Agile WayHubSpot
 
Agile Network India | Guesstimating the timeline for backlog items
Agile Network India | Guesstimating the timeline for backlog itemsAgile Network India | Guesstimating the timeline for backlog items
Agile Network India | Guesstimating the timeline for backlog itemsAgileNetwork
 
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...Agile Network India | Guesstimating the timeline for backlog items | Amit Med...
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...AgileNetwork
 
Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Jonathon Hill
 
Beyond Story Points - Forecasting with empirical data
Beyond Story Points - Forecasting with empirical dataBeyond Story Points - Forecasting with empirical data
Beyond Story Points - Forecasting with empirical dataMark Barber
 
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...VMware Tanzu
 
Data Integrity - Patryk Hes
Data Integrity - Patryk HesData Integrity - Patryk Hes
Data Integrity - Patryk HesPROIDEA
 
Measure what matters for your agile project
Measure what matters for your agile projectMeasure what matters for your agile project
Measure what matters for your agile projectMunish Malik
 

Similar to The agile forecast joe tristano southern fried agile 2018_ final (20)

Estimations, Expectations, and Evolution During a Project's Journey from RFP ...
Estimations, Expectations, and Evolution During a Project's Journey from RFP ...Estimations, Expectations, and Evolution During a Project's Journey from RFP ...
Estimations, Expectations, and Evolution During a Project's Journey from RFP ...
 
Devops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yetDevops, the future is here it's not evenly distributed yet
Devops, the future is here it's not evenly distributed yet
 
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!
SFScon21 - Paolo d’Incau - Going to production in a few months – How we did it!
 
The Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the JourneyThe Business Case for DevOps - Justifying the Journey
The Business Case for DevOps - Justifying the Journey
 
Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?Devops, Secops, Opsec, DevSec *ops *.* ?
Devops, Secops, Opsec, DevSec *ops *.* ?
 
Data for Good Regina - 7shifts Presentation
Data for Good Regina - 7shifts PresentationData for Good Regina - 7shifts Presentation
Data for Good Regina - 7shifts Presentation
 
Scrum and-xp-from-the-trenches 01 intro & backlog
Scrum and-xp-from-the-trenches 01 intro & backlogScrum and-xp-from-the-trenches 01 intro & backlog
Scrum and-xp-from-the-trenches 01 intro & backlog
 
XP2017: Metrics to guide agile fluency, continuous delivery and product teams
XP2017: Metrics to guide  agile fluency, continuous delivery and product teamsXP2017: Metrics to guide  agile fluency, continuous delivery and product teams
XP2017: Metrics to guide agile fluency, continuous delivery and product teams
 
WhoIsKenDeLong
WhoIsKenDeLongWhoIsKenDeLong
WhoIsKenDeLong
 
Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.Devops, the future is here, it's just not evenly distributed yet.
Devops, the future is here, it's just not evenly distributed yet.
 
Marketing the Agile Way - Applying Scrum Outside of Develoment
Marketing the Agile Way - Applying Scrum Outside of DevelomentMarketing the Agile Way - Applying Scrum Outside of Develoment
Marketing the Agile Way - Applying Scrum Outside of Develoment
 
Marketing the Agile Way
Marketing the Agile WayMarketing the Agile Way
Marketing the Agile Way
 
Agile Network India | Guesstimating the timeline for backlog items
Agile Network India | Guesstimating the timeline for backlog itemsAgile Network India | Guesstimating the timeline for backlog items
Agile Network India | Guesstimating the timeline for backlog items
 
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...Agile Network India | Guesstimating the timeline for backlog items | Amit Med...
Agile Network India | Guesstimating the timeline for backlog items | Amit Med...
 
Devops For Drupal
Devops  For DrupalDevops  For Drupal
Devops For Drupal
 
Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014Estimation Protips - NCDevCon 2014
Estimation Protips - NCDevCon 2014
 
Beyond Story Points - Forecasting with empirical data
Beyond Story Points - Forecasting with empirical dataBeyond Story Points - Forecasting with empirical data
Beyond Story Points - Forecasting with empirical data
 
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...
From 10 Deploys Per Year to 4 Per Day at DBS Bank: How Pivotal Platform Can R...
 
Data Integrity - Patryk Hes
Data Integrity - Patryk HesData Integrity - Patryk Hes
Data Integrity - Patryk Hes
 
Measure what matters for your agile project
Measure what matters for your agile projectMeasure what matters for your agile project
Measure what matters for your agile project
 

Recently uploaded

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 

Recently uploaded (20)

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 

The agile forecast joe tristano southern fried agile 2018_ final

  • 1. The Agile Forecast Fun with Probabilities Joe Tristano © 2018 Premier Inc. All rights reserved. Premier and the Premier Mobius logo are registered trademarks of Premier Healthcare Alliance, L.P. All other trademarks are the property of their respective owners.
  • 2. Advertisement https://stnektariostakingsteps5k.racesonline.com/ Register for St. Nektarios Taking Steps 5K on Saturday, Dec 8th 2018 @ 8:00 AM Proceeds benefit Shelter Health Services, the region’s largest free medical clinic caring for the 425+/night homeless women and children who stay at the Salvation Army Center of Hope
  • 3. The Agile Forecast: Outline ● Introduction ● Background ● Inspiration ● Innovation ● Nuts & Bolts ● Making it work ● Wrap up
  • 5. About Joe ● Passion for making high quality software on time that makes users AWESOME at what they do ● Mechanical Engineering background ● Software Development for 25 years ● Agile for 17 ○ Learned XP in 2001 from Joshua Kerievsky ○ CSM from Net Objectives in 2010 ○ Brought scrumban to ANSYS shortly thereafter ● Inspiration ○ Poppendieck ○ Modern Agile ○ etc ®
  • 6. Background ● New job! ● Product “promises” & a fixed date ● How are we going to make the date? ○ Cut scope! ○ Still overloaded ○ Make Small Stories! ○ We need to leverage our historical data!
  • 7. When Will This Be DONE?
  • 8. Time to Delivery ● Set clear milestones and objectives ● Release often ● Measure cycle time to ensure people are moving their work across the board ● Increase throughput
  • 11. Statistical Methods “a slight study of statistical methods and their application to social phenomena affords one of the simplest examples of the application of algebraic ideas.” - Alfred North Whitehead, The Aims of Education
  • 12. What about Little’s Law? ● Average Throughput ● Average Lead Time ● Average Work in Progress Works great for: ● Assembly Line Production .... ● Little Variance ...
  • 13. JIRA Control Chart ● Cycle Times Do NOT have a normal distribution ● Nor does WIP ● We are not stamping widgets! YIKES!!!!
  • 16. Research Findings ● Others confirm that software cycle times do not have a normal distribution ● They also found that a naive use of Little’s Law did not fare well in practice ● Troy Magennis and Alexei Zheglov arrived at similar conclusions ○ Use historical data ○ Fit a Probability Distribution Function to your data ○ Both used a Weibull distribution
  • 17. What’s a Weibull distribution ● Weibull distribution is a continuous probability density function which uses a constant shape parameters to alter the shape of the distribution ● It is commonly used in reliability failure analysis of mechanical parts to forecast failure SO WHAT?
  • 18. Weibull & Software ● Magennis found that as a team becomes more lean the β becomes smaller ● Smaller stories, smaller cycle times ● The magic is finding β for your team ● Lots of curve fitting ● Still dissatisfied with the hoops to jump through to estimate β and make an automated process
  • 20. Data Science {Statistics} to the Rescue!
  • 21. Data Science and the KDE In need of a better fit, data scientists Mike Korvink and Katie Pratt suggested the use of a KDE (Kernel Density Estimator) to estimate my distribution in a non parametric way building it from my historical data EUREKA!!!! Perfect Fit
  • 22. Hypothesis Given KDE Probability Distributions of Cycle Time and WIP along with a release date, I should be able to determine our chances of meeting said date BUT HOW?
  • 23. Monte Carlo Analysis ● Sample PDF over and over again and determine probability to meet date ● Additional uses of the data also reveal themselves
  • 26. Pseudocode Num Buckets = Num Stories/WIP Pull from JIRA Calcs: Cycle Time/ Story WIP/Day Compute KDE for Cycle Time and WIP based on lookback period Sample WIP KDE For WIP in Sample Sample cycle times For each bucket For each sample Total Days += sample For each sample End Date = today + Total Days If End Date <= Release Date Match++ Probability = Match / Total Samples Build CDF of sampled probabilities
  • 27. Complete Automation ● Using this method with various lookback periods, I can have a completely automated process that runs everyday without fail. ● Everyone knows where we are, everyday
  • 28. Failsafe ● Use a Fibonacci sequence to look-back in weeks for samples ○ [1,2,3,5,8,13,21] ● X-Axis: How far do our samples look back in time ● Y-Axis: What is our probability ● Bubble Size: Number of Samples
  • 29. Samples and More Samples ● 7 Lookback Samples [1,2,3,5,8,13,21] ● 1000 WIP Samples ● 1000 Cycle Time Samples ● Up to 7 Million Samples ○ Samples are excluded if outside real range of parameters since KDE’s are not bound to discrete values
  • 30. Mean Probability ● Linear combination of all probabilities divided by their sample size
  • 31. Results Daily result of what our probability is and where it has been...
  • 33. Bonus! ● When pinpointing our next release date, we can leverage the CDF to guide us on picking a date ● The X- Axis is number of days out from today ● The Y-Axis is the probability that we will finish our work by that date
  • 34. Heuristics lookback_weeks:<How many wks back> longest_cycle_allowed:<outliers> Stories_remaining:<jql or value> monte_carlo_samples:<# samples> wip_exclude:<exclude dates> in/exclude: <exclude people> blocked_status: <blocked> start_status: <start timer> closed_status: <end timer> status_for_cycle_time: <working kanban column holidays: <holidays> zero_cycle_time: <time to allot for stories closed without being opened>
  • 35. Multiple Development Streams in a Single Team ● Using inclusion and exclusion of people and stories bucketed to those people, multiple development streams can be tracked and monitored Production Timeline Feature 2 Feature 1
  • 37. The Scale of Probability Unlikely Likely 0% 20% 50% 80% 100% impossible certain very likely but not certainvery unlikely but not impossible
  • 38. ● Teams must get into a habit of making very small stories ● Heuristics account for larger stories ● Daily probability tells us when to step on the gas ● Since starting this method in July 2016, the method has predicted release dates with 95% ○ One of 20+ large releases slipped by 1 week due to Murphy’s law How does it work in practice
  • 40. Philosophy ● It’s a marathon from release to release ● The sprint is there as a mental time box along with level setting ● Assess release scope change as it impacts probability. ○ If you can absorb it, do it 26.2
  • 41. ● Estimates become complexity & doubt estimates, time is taken into account from results ● No longer compare teams on story points ● Keep your eye on adding value ● We have experimented with no estimation Stop Point Madness “I’m not sure if I was the inventor of story points, but if I am, I’m sorry” -Ron Jeffries Complexity Doubt Effort
  • 42. What about Points? ● Use Points for High Level, relative, estimation ● Use historical data to guide you along the way ● How does “new work” compare to “old work”? ● Get a feel for what fits ● Use this method to determine date ● Don’t use points for day to day ○ Track throughput Completed Stories Completed Points
  • 43. What about new teams? ● Start with Weibull, fix your distribution ● After accumulating data start this method ● You can start with less than 100 closed stories but 100 closed stories will get you into the 90% accuracy range
  • 44. Key Behaviors ● Regardless of story size, team must move stories across the board accurately ● Trust your team, if the numbers don’t sit well talk to the team and investigate
  • 45. Enhancements ● Dependent stories and their placement into the WIP buckets ● Better point heuristics ● Performance improvements ○ Backed by a database to cook less WIP and cycle time numbers
  • 47. Wrap Up ● Ability to leverage wealth of information in JIRA to predict future release dates and probability of meeting that release date using KDE and Monte Carlo analysis ● Team knows where they are everyday ● Stakeholders are aware of teams confidence in meeting release ● Trust is built between stakeholders and team for consistently meeting commitments with high quality on time, every time