Before a new software program is released, it must go through a testing process. Although this can be complex process, if conducted methodically, the test can be engineered to flow well from start to finish.
Start with the Big Picture
Get the big picture of what it is that you are trying to do with the new software. How will it help the end-user? What problems do they have that the software will resolve? What will make the software user friendly?
This is also a good time to think about the test automation strategy you will deploy. This decision will help decide exactly how much testing is necessary, who will be involved, what the stakeholders expect, and how long it will all take.
Use a “Reasons Why” Checklist
When you have decided on a testing process, establish some solid reasons why you have chosen it. Here are some probing questions to ask:
- Does the testing process offer an opportunity for meaningful discussion about results?
- Does the testing process announce a schedule for when stakeholders can expect the software to be fully functional?
- Does the testing process create a routine that all teams can work with, including marketing and sales?
- Does the testing process give consumers the confidence to order a relatively bug-free product?
- Does the testing process allow the product to be launched in the marketplace faster than the competition?
Avoid Premature Marketing
The whole idea of a testing process is to offer an acceptable and accurate release date. This should not be some speculative date based on overoptimistic projections after a good executive lunch.
Before any announcements are made or any hints dropped through press releases, make sure that the testing process is realistic. While idealism is necessary for the creative process, realism is what improves the bottom line.
Jumping into the marketing processes too early, will create the opposite of the outcome desired. Announcing a premature launch date before it is possible to get good testing data, will not build up positive anticipation. Instead, it will create disappointment, frustration, and even ridicule by consumer protection journalists.
Expect the Unexpected
When figuring out an achievable timeline to complete all testing, anticipate some unexpected bottlenecks as well as delays.
Perfectionism Can Ruin Everything
A testing process should not be based on when consumers would like to get their hands on the software. Instead, it should be based upon when you can release the software at a desired level of quality.
With this in mind, a testing process does not have to be perfect. Perfectionism is not a positive trait in an individual or a team. If perfection was necessary to achieve success in software development and marketing, almost no software would be released because end users often find glitches that completely escaped detection when the software was first being tested out. The rule of thumb governing the testing process should be that the testing is thorough enough to rule out major problems. Minor errors are those that are irritating, but not frustrating enough to lose market share.
Engage Beta Testers
A testing process does not necessarily have to be secretive. Depending on the nature of the software, it may be fine to invite beta testers both within the organization as well outside it. However, if the software is completely without precedent, then it is better to stick to only getting feedback from internal beta-testers.
Gamification of the tests can help you get a wider range of beta users. Although they will not be getting paid for testing, they will still be motivated through game elements built within the testing process. This can include things like points, badges, and leader boards.
Start with Lightweight Testing
Begin with lightweight testing processes rather than full engagement. This will allow for early testing and more regular reviews.
Do a little bit, review results, then test some more. Don’t move on to advanced testing until you get the results you want with little experiments.
There are some wonderful advantages to lightweight test processes:
- Light testing will not require endless meetings to start the ball rolling, elaborate documentation, or long drawn bureaucratic approval processes.
- Light testing will only require a minimal acceptable level of input, throughput, and output.
- Light testing reduces the amount of documentation necessary, but does not make documentation superfluous. Records must be kept to see what was done and how it was done. It’s impossible to improve if there is no clear idea of what just happened. Documentation can be light: it should be sufficient to offer a quick and comprehensive overview of the process. Documentation should cover what was built, how it was built, and why it was built. It should also mention what was necessary to do to make the software work.
Throughout the testing process, it’s important to keep a positive spirit. Testing can be nerve-wracking for those who have invested a lot of money in the project. It’s only too easy to get easily upset, berating software engineers for shoddy coding or chewing out internal beta testers for vague response data. Managerial patience and cordiality are soft skills necessary to deploy during the testing process.