Troy, in this Agile Uprising podcast episode, delves into his intriguing journey in the realm of forecasting and estimation for software development. Inspired by that episode, we discuss the concept of Gambler's Ruin, a mathematical problem turned into a game. Troy shares the main insights from Gambler’s Ruin and mentions Prateek Singh of ProKanban.org who has used this concept to demonstrate that even a slight skill advantage can lead to success when focusing product development on what Troy calls “Small Bets”
Small bets relate to the implications of spending money on a product idea. It's not just an expense; it's an investment with an anticipated return on investment (ROI). The crucial question arises: how do we strategically place these bets in product development? Here, Troy exposes the fallacy of assuming we can determine value upfront. We also discuss the concept of anti-fragility and highlight how many processes are inadvertently designed to be fragile. In this context, the size of the bet correlates with cycle time, and "time" itself becomes the bet's magnitude. As Annie Duke advocates in her book "Thinking in Bets," small bets bolster resilience, while large bets can lead to vulnerability.
How do we know we are making small bets? Troy sheds light on the pivotal flow metrics that software development teams should diligently track. He explains the relationship between Work In Progress (WIP) and cycle time, referring to Little's law formula. And he introduces work item age as a metric that can help predict WIP and Cycle time, which gives teams a tangible representation of their current investment. This metric aids in decision-making and fosters a more effective approach to forecasting.
In the podcast, Troy advocates for a paradigm shift in prioritization practices. He highlights that the more time spent prioritizing work, the larger the bet size (planning time directly affects bet size). Drawing from the wisdom of Don Reinertsen and the principles outlined in the book "Principles of Product Development Flow," he stresses the intrinsic cost associated with all work undertaken. Aligning individuals and teams on priorities is essential, yet the priority itself may hold uncertainty.
To aid teams in this endeavor, Troy discusses the Weighted Shortest Job First (WSJF) framework, and how it offers a pragmatic approach to prioritize tasks based on contributing factors. However, prioritization is directly affected by dependencies, which means that eliminating dependencies becomes a critical step towards making smaller, more manageable bets. For example, by segregating dependencies, teams can significantly reduce bet sizes and enhance predictability.
In this episode, Troy elucidates how conventional prioritization techniques can inadvertently hinder forecasting and predictability. He provides insights into alternative approaches that foster adaptability and more accurate forecasts.
For those eager to dive deeper into the world of Agile metrics and predictability, Troy recommends Dan Vacanti's book, "Actionable Agile Metrics for Predictability," as an invaluable resource.
About Troy Lightfoot
Troy is a Lean Product Development Coach and trainer for ProKanban.Org. He coaches and trains Scrum, Kanban, and SAFe and other Agile Scaling approaches. Troy transitioned from computer science to full-time Agile coaching, specializing in Lean Portfolio and Program Management. He is also a co-founder of the Agile Uprising Podcast, and an active blogger. For further insights into Troy's work and methodologies, visit ProKanbanTraining.com and explore the Agile Uprising podcast. Additionally, you can delve deeper into Troy's teachings at ProKanban.org.