The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
XP2023 Presentation RHealy
1. Presenter: Rob Healy
Co-researchers Brian Fitzgerald, Kieran Conboy, Tapajit Dey
with Edwin Lewzey
June 2023
A novel technique to assess
Agile systems for stability
2. A novel technique to assess Agile systems for stability
Research Question
RQ: Are Agile systems stable from a
queueing perspective?
Healy, Dey, Conboy and Fitzgerald 2 of 15
3. A novel technique to assess Agile systems for stability
Background: On the importance of queues
▪ A queue is an economic artefact - it occurs
when supply doesn’t match demand.
▪ One or more interconnected queues form a
queueing system.
▪ Queueing systems have been researched since
Erlang’s work on telecommunications in the early
20th century.
▪ Each queue can be stable, unstable, or
marginally stable. A queue is considered stable
when the Markov chain of all possible queuing
states is ergodic in nature. This means that a
stable queue must include the possibility of
occasionally having no items in it.
Healy, Dey, Conboy and Fitzgerald 3 of 15
Please queue here
Fig 1. Telephone operators, from: https://blog.sciencemuseum.org.uk/life-on-
the-exchange-stories-from-the-hello-girls/
4. A novel technique to assess Agile systems for stability
Background: Agile frameworks as systems of queues
▪ A simple Kanban system, is a queue with one or
more servers.
▪ Kanban systems tend to use WIP limits, and
Little’s Law.
▪ Scrum systems have at least two major queues,
both called backlogs:
▪ Product Backlog
▪ Sprint Backlog
Healy, Dey, Conboy and Fitzgerald 4 of 15
The queues of Kanban and Scrum
Fig 2. Distribution of Agile Frameworks in use in 2022 across a survey of
3,220 respondents (Digital.ai, 2022)
5. A novel technique to assess Agile systems for stability
Key queueing concepts
▪
Healy, Dey, Conboy and Fitzgerald 5 of 15
From past literatures
6. A novel technique to assess Agile systems for stability
Novel metric: the Stability Metric
Healy, Dey, Conboy and Fitzgerald 6 of 15
7. A novel technique to assess Agile systems for stability
Aside: the importance of dimensionless numbers
Healy, Dey, Conboy and Fitzgerald 7 of 15
Scaling engineering systems
Fig 4. Scaled model testing using dimensionless analysis from
https://www.linquip.com/blog/similarity-laws/
8. A novel technique to assess Agile systems for stability
The Public Jira Dataset
Healy, Dey, Conboy and Fitzgerald 8 of 15
Montgomery et al. (2022)
Data Extracted
• Issue ID (Key),
• Project Name,
• Issue Type,
• Subtask Boolean,
• Created Date / Time,
• Resolution Date / Time,
• Status Name.
9. A novel technique to assess Agile systems for stability
Methodology
▪
Healy, Dey, Conboy and Fitzgerald 9 of 15
10. A novel technique to assess Agile systems for stability
Results: Stability 1
Healy, Dey, Conboy and Fitzgerald 10 of 15
Fig 5. Distribution of the Stability Metric across 926 JPs
11. A novel technique to assess Agile systems for stability
Results: Stability 2
Healy, Dey, Conboy and Fitzgerald 11 of 15
12. A novel technique to assess Agile systems for stability
Results: Stability vs Backlog Size
Healy, Dey, Conboy and Fitzgerald 12 of 15
Fig 6. Backlog size vs stability of all JPs, plotted on logarithmic axes.
13. A novel technique to assess Agile systems for stability
Limitations
▪ Good generalizability of findings, but it is at the
payoff of contextual realism.
▪ The use of Jira Projects, JPs, as a collection of
PBIs that represent a queuing system.
▪ We ignored temporal effects. A queue is a
dynamic system and may be temporarily stable
or unstable.
▪ The study assumed that the data provided were
accurate.
Healy, Dey, Conboy and Fitzgerald 13 of 15
Fig 8. Distribution of inter-service time
14. A novel technique to assess Agile systems for stability
Potential Applications
▪ A diagnostic tool to help predictability.
▪ It can help diagnose if the team is being under-
loaded or over-loaded and the degree to which
this is occurring.
▪ Organizational design.
▪ Measure impact of continuous improvement
initiatives.
▪ Measure if Little’s Law is applicable in Kanban
systems
▪ Compare Scrum systems.
Healy, Dey, Conboy and Fitzgerald 14 of 15
Fig 9. The Stability Metric is not the metric to “rule them all” - but has real
potential.
https://commons.wikimedia.org/wiki/File:One_Ring_Blender_Render.png
15. A novel technique to assess Agile systems for stability
Our planned next steps
Healy, Dey, Conboy and Fitzgerald 15 of 15
Exploring changing Stability and Flow
Fig 10. Csikszentmihalyi’s Flow Model
17. A novel technique to assess Agile systems for stability
Try it yourself!
▪
Healy, Dey, Conboy and Fitzgerald 17 of 15
Steps to measure stability (Jira users – other systems are similar)
roberthealy1@gmail.com