What Product Owners Can Learn From Rocket Launches
Creating working software has been a topic of great relevance long before since the first bug was discovered in 1945.
A recent article from Charles Fisherman entitled “They write the right stuff” describes the culture surrounding the IT team that created software for the Space Shuttle. This team has an outstanding reputation for writing working software. As Fisherman puts it:
In this software morass, the on-board shuttle group stands out as an exception. Ten years ago the shuttle group was considered world-class. Since then, it has cut its own error rate by 90%.
Product owners in particular can take note of the level of upfront thinking and preparation that the shuttle group put into their requirement formulation.
In this case the on-board shuttle group deployed software onto an unforgiving space shuttle that had only one chance to make it into space per launch. There was no option of deploying a mid launch patch and little chance of finding work arounds. The shuttle group therefore carries a strong waterfall undertone to their processes. That being said, any iteration in the agile world still includes a measure of requirement analysis and feature (or story) formulation.
Fisherman outlines the extent this team went to when he says:
“Our requirements are almost pseudo-code… They say, you must do exactly this, do it exactly this way, given this condition and this circumstance.”
The main take home for Product Owners is to firstly ensure a deep understanding of exactly what needs to be developed. The second is to draw close to the development teams so that the requirements are expressed in enough detail. For the shuttle group team that meant thick manuals and prescribed steps, for agile teams that could be requirements expressed in BDD scenarios, for other teams that could mean use cases.
It’s difficult to measure the means Product Owners should go to in order to deliver requirements to teams in a satisfactory level — what is note worthy is the passion the shuttle team possessed in order to deliver their working software:
“We never let anything go,… we do just the opposite: we let everything bother us.”
While agile teams seek to eliminate waist by delaying upfront work until the latest possible moment they should be certain keep relentless focus on delivering detailed and accurate input into development teams. An effort that ultimately will improve the overall quality of developed software.