Images of space shuttles are seared in our hearts and minds. Whether as young boys or girls who witnessed the dawn of that era, or as moms and dads old enough to understand the terrifying feat, we are all well versed with this multifaceted, micro-tuned marvel.
The universal respect commanded by this engineering miracle could serve as a near perfect metaphor for the software-building process.
Stick with me here.
In broad terms, the space-shuttle flight sequence consists of lift off, orbit, reentry and landing. The silent force and ever-present watchful eye of mission control pursues the success of the mission and the safe return of the vehicle and its astronauts.
But first, some facts about the flight sequence. It all starts with the solid rocket boosters going to full power in 2/10 of a second. The heat they produce in the first two minutes of flight could heat 87,000 houses for one full day. Once in orbit, the shuttle is in microgravity. Hydrogen fuel cells power life support and orbiter fuel is only used for course corrections.
Reentry is initiated by slowing down the shuttle, which requires 2,000 megawatts of power, or enough to power 1 million homes for an entire year. Kinetic energy is converted into heat and slows the shuttle down as it bursts back into Earth’s atmosphere. All that remains is to glide the shuttle down back to Earth.
Conveying the scope and impact of engineering your next software initiative can be a daunting task. How do you describe the complexity and unpredictability of what it would take to build a feature while also raising the level of empathy? Enter the "space shuttle metaphor."
Your CEO, manager or investors will most certainly appreciate the magnitude of the universally beloved engineering feat that gave us the Space Shuttle Program. Here's how to describe how the process of developing the app or feature is comparable to the shuttle flight sequence:
1. Lift off. To get development started, an exorbitant amount of energy is required. It takes an extraordinary effort to turn ideas into prototypes. There are also a plethora of external factors that could lead to a delay in lift off, which isn’t a crisis, it just has to be navigated.
2. Orbit. The explosive start is rapidly replaced by an iterative (and lengthy) process that is nudged only when gentle course corrections are required. Engineers need to be left alone to follow their implementation process. As the shuttle is locked in an orbit around Earth, so your engineers are locked in iterations designed to keep them on track.
3. Reentry. To snap out of the iterative lull, an exorbitant amount of energy is required. It takes an extraordinary effort to not over-engineer the feature or product. In many cases a line needs to be drawn and the focus shifts from attention to detail, to getting it shipped. Just like lift off, reentry is subject to external factors that might delay initiation of the landing sequence.
4. Landing. Arguably the most delicate phase of the process since control is relinquished from your team to your users. The calm of coding in orbit is replaced by addressing user concerns and adoption, which in our world could make landing the space shuttle look easy. The key is to navigate the turbulence and let the product or feature glide gently into the applause of happy users.
One last thing. If you have a shrewd CEO, manager or investor who is tracking with your simile, they’ll ask you about mission control. This gives you a wonderful opportunity to assure them: “Mission control? Well, that’s where you and I are!”