In many ways, the contrast between Olympic athletes and software testers couldn’t be starker:
- One class of professionals symbolizes the ultimate in human form, strength, and grace. They are paragons of physical perfection.
- The other category is the exact opposite. QA professionals are often depicted as skinny or fat (but never in between). And it’s not uncommon for testers to be described as nerdy, geeky, unathletic… we could go on and on, but you get the idea (talking about ourselves of course…).
The Similarities Between World-Class Athletes and World-Class Software
As software testers, we take products through a series of pre-launch hurdles that are remarkably similar to what professional athletes go through when preparing for major competitions.
Step 1: Visualize the Goal
Olympic athletes often use visualization techniques to get ready for their big day. They see what success looks like (if only in their minds).
Similar goal-defining steps are popular in the software world. During the initial planning stages, we map out what we want to do and “visualize” what success looks like (if only on paper).
Step 2: Removing the Fat
Nutrition and exercise are essential for world-class athletes. They must prepare their bodies for the brutal months ahead.
This isn’t unlike the code review software testers invest as they trim the fat and make sure that every program has the requisite ingredients for success.
Step 3: Targeted Strength Exercises
The Olympian uses targeted gym exercises to make sure their legs, abs, back, and arms all have the necessary strength. And QA managers use “unit testing” to verify that each independent component of the program passes muster.
Step 4: Core Strength Exercises
In addition to targeted training, Olympians also use holistic exercises to get their bodies ready. This process isn’t so different from the functional security testing we conduct to see how the product performs as a whole.
Step 5: Racing against the Clock
Olympic athletes often try to beat their own best times and records. They need to meet internal milestones before competing with others.
Alpha testing anyone?
Before verifying “beta-ness,” we must make sure our product is actually ready for a wider audience.
Step 6: Testing the Waters
You’re good. But are you good enough?
To answer this:
- Olympic hopefuls enter local competitions to see how their performances match up. They need to determine whether additional training is required.
- QA pros use sanity testing to verify whether any more launch-critical changes are necessary
Step 7: Qualifying Rounds
All internal checks pan out. Now we need real-world feedback to see if we’re truly ready.
- For the Olympian, this means enrolling in qualifying rounds for the official games.
- For software applications, this means inviting beta testers to tell you whether you have a viable product.
Step 8: the Final Judgment
This is it. There’s no turning back. You’re ready for the final judgment.
But we’re not sure who has the easier job here:
- The Olympic athlete who must impress a panel of judges?
- The software tester who must impress the entire world?
We might argue that our job is a little bit harder in this regard.
After all, Olympic judges use well-defined guidelines and can provide instant feedback. By contrast, end-users have diverse criteria that are often impossible to anticipate in advance. And if they provide feedback at all, it’s usually on their own timelines.
Then again, software testers don’t have to wake up at 5am or adhere to super strict diets for years. And instead of competing for a single Gold medal, we’re allowed to define success in many different ways.
So it’s fair to say that Olympic athletes could more easily transition to our world than the reverse.
But maybe there’ll come a day when artificial intelligence puts us out of business. And you’ll begin seeing retired software testers crop up every 4 years to claim the Gold.
See you at the 2020 Games in Tokyo.