
A New Copy!
We are back! Today we begin Part 3 of Daniel S. Vacanti’s Actionable Agile Metrics for Predictability: An Introduction (buy a copy today) with Chapter 10 which is titled, Introduction to Cycle Time Scatterplots. Scatterplots take us beyond the analysis of average cycle time (or even approximate average cycle time). Scatterplots provide a visual representation of the data so we can begin to use the data to predict the future.
Vacanti opens Chapter 10 by suggesting that we can do better than analysis based on averages. Scatterplots are the tool he suggests. Scatterplots are not the same as statistical process control diagrams (SPC). Action Agile Metrics does not address SPC and Vacanti makes a substantial argument that SPC is not useful for software development and enhancement work.
Scatter plots are a relatively simple graphing technique that plots the progression of time on the x-axis. For example, in cycle time scatterplots for software development and enhancements the x-axis usually is denominated in calendar days or weeks. The y-axis represents cycle time in days. Scatter plots are useful for analyzing any number of metrics; however, this chapter only focuses on cycle time.
Once constructed Vacanti adds percentiles lines on the chart. When drawing the 50 percentile line half of the observations would be above the line and half below. Knowing the 50% line allows to you predict how long an average item will take to complete. Drawing the line at 80 or 85% allows for an even more confident prediction that any piece of work will complete in less the number of days indicated by the line you draw.
For example:
Using the following data
Date | Cycle Time | |
Story 1 | 1/1/2018 | 1 |
Story 2 | 1/2/2018 | 4 |
Story 3 | 1/3/2018 | 7 |
Story 4 | 1/4/2018 | 3 |
Story 5 | 1/5/2018 | 7 |
Story 6 | 1/6/2018 | 9 |
Story 7 | 1/7/2018 | 0 |
Story 8 | 1/8/2018 | 11 |
Story 9 | 1/9/2018 | 40 |
Story 10 | 1/10/2018 | 1 |
Story 11 | 1/11/2018 | 6 |
Story 12 | 1/12/2018 | 8 |
Story 13 | 1/13/2018 | 1 |
Story 14 | 1/14/2018 | 11 |
Story 15 | 1/15/2018 | 15 |
Story 16 | 1/16/2018 | 6 |
Story 17 | 1/17/2018 | 5 |
Story 18 | 1/18/2018 | 11 |
Story 19 | 1/19/2018 | 12 |
Story 20 | 1/20/2018 | 13 |
Would yield the following cycle time scatterplot.
There is a natural tendency to establish the mean and calculate the standard deviation of the observations. From there it is a simple step to create upper and lower control limits (SPC). The problem is that the data do not follow a normal distribution. Normal distributions assume that observations are equally distributed around the mean (central limit theorem). The assumption that observations follow a normal distribution is really extremely rare in software development. (Note: Tools like EXCEL make assuming normality and drawing all sorts of trendline very easy). Vacanti uses scatter plots (XY Plots in Excel) because they don’t make the assumption of a normal distribution, rather they make no assumptions as to the distribution of the data. Another of the strengths that Vacanti points out is that the percentile lines are easily calculated. Another strength is that outliers do not have a significant statistical impact on scatter plots. The discussion of outliers assumes that there is a standard distribution of observations leading us back to a discussion of why are assuming a normal distribution when we don’t have to!
Returning to our example:
We could add both a 50% and 85% line to our scatterplot
The data shows that 50% of the stories complete in under 7 days and 50% above. The team could indicate that a story could be done in 7 days — a 50/50 possibility. Or if they needed a higher level of certainty (somethings who you are talking to requires something more than 50/50 confidence) the 85% line tells us that 85% of the stories complete in 13 days or less. The use of a cycle time scatterplot is straightforward.
Chapter 10a (next) discusses Cycle Time Histograms.
FYI – I heard from a colleague this week that said the re-read influenced him to buy and read the book. It is heartening to hear that our hard work is helping our readers to change how they work!
Previous Installments
Week 2: Flow, Flow Metrics, and Predictability
Week 3: The Basics of Flow Metrics
Week 4: An Introduction to Little’s Law
Week 6: Workflow Metrics and CFDs
Week 8: Conservation of Flow, Part I
Week 9: Conservation of Flow, Part II
Support the author (and the blog), buy a copy of Actionable Agile Metrics for Predictability: An Introduction by Daniel S. Vacanti
Get your copy and begin reading (or re-reading)!
January 7, 2018 at 3:22 am
Tom excellent explanation! And you left me the best quote in this chapter to comment on …
Towards the end of the chapter 10, Vacanti illustrates how using averages can mislead you because of an outlier. “If Bill Gates walks into a bar, then on average everyone in the bar is a millionaire.”
Bottom line: using Cycle Time Scatterplots is a great way to visualize your team’s outliers and then start asking questions.
January 7, 2018 at 10:11 pm
[…] Introduction and Game Plan Week 2: Flow, Flow Metrics, and Predictability Week 3: The Basics of Flow Metrics Week 4: An Introduction to Little’s Law Week 5: Introduction to CFDs Week 6: Workflow Metrics and CFDs Week 7: Flow Metrics and CFSs Week 8: Conservation of Flow, Part I Week 9: Conservation of Flow, Part II Week 10: Flow Debt Week 11: Introduction to Cycle Time Scatterplots […]
January 13, 2018 at 11:56 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
January 14, 2018 at 10:14 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
January 20, 2018 at 11:56 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
January 21, 2018 at 10:15 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
January 28, 2018 at 12:04 am
[…] begins with a reminder. In this case, the reminder concerns the percentile lines that were drawn on scatter plots in chapter 10. The percentile lines tell us the probability of a story completed in an amount of […]
January 28, 2018 at 10:21 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 4, 2018 at 1:55 am
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 4, 2018 at 10:10 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 10, 2018 at 11:57 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 11, 2018 at 10:16 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 17, 2018 at 11:55 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 18, 2018 at 10:10 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
February 25, 2018 at 10:10 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 3, 2018 at 11:56 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 4, 2018 at 10:11 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 10, 2018 at 11:57 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 11, 2018 at 9:08 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 20, 2018 at 8:55 pm
[…] Week 11: Introduction to Cycle Time Scatterplots […]
March 20, 2018 at 11:56 pm
[…] Using the scatterplot diagram developed during the re-read of Actionable Agile Metrics (week 11), variability is the range between the lowest and highest cycle time. Reducing variability would […]
July 4, 2018 at 3:23 am
[…] Actionable Agile Metrics for Predictability by Daniel S. Vacanti, Re-read Saturday Week 11: Introduc… […]
January 3, 2019 at 11:56 pm
[…] Actionable Agile Metrics for Predictability by Daniel S. Vacanti, Re-read Saturday Week 11: Introduc… […]
February 14, 2019 at 2:37 pm
Thanks for sharing..
May 7, 2019 at 5:46 am
[…] CFSs Week 8: Conservation of Flow, Part I Week 9: Conservation of Flow, Part II Week 10: Flow Debt Week 11: Introduction to Cycle Time Scatterplots Week 12: Cycle Time Histograms Week 13: Interpreting Cycle Time Scatterplots Week 14: Service Level […]