The Requirements are Always Wrong
Engineering Teams are mapping an endless pool of uncertainty and undesirable outcomes. The mission is to Continuously Minimise the amount of Waste created to find value.
As best as we can, we cannot predict our future or the behavior of our end-users. Software has never been about predicting the future. Capital-A Agile, no estimates, estimates, SAFe are more about office management than quality software.
Estimates are like a weather forecast. They help you—leaders—commit to the most likely weather. This also makes them foolish risk management.
Agility is how little you can commit to to still make progress without leaving your area of certainty. Teams design and analyse, then execute until design is proven wrong.
Because the requirements are invariably wrong! The opposite of the weather forecast.
This is where a stuck team struggles most.
Boldly or naïvely claiming the plan is correct, complete and accurate with an ego-attachment is the ticket to bankruptcy. The first falling domino in a series of cutting corners and creating incentives to not follow modern continuous delivery or even extreme programming practices—like Test-driven development. Such environments when left unchecked create cost-centre engineering cultures.
Software Teams are not factories. They do not build thousand items of the same things to spec. Software Teams are mapping an endless pool of uncertainty and undesirable outcomes. The mission is to Continuously minimise the amount of waste generated in order to find the next valuable piece. Much like gold mining.
I help engineering leads cut through the noise to get teams on track to greatness.