When senior managers finally make a commitment to improving software quality testing, they don't usually commit much in terms of time, money or such resources as trained testers. Typically, the approach is to start with a minimal financial and organizational commitment, and increase that commitment only if it proves valuable to the business in a measurable way. Therefore, it's up to testing professionals to find creative ways to achieve quality through testing. In this tip, I offer four out-of-the-box ideas geared to achieving quality without time, money or resources, based on a recent talk I co-presented at Belgium Testing Days 2013, with Peter Varhol of Seapine Software.
- Use heuristics to test effectively without time.
- Host a bring-your-own-device party for mobile device testing.
- Enlist people with the characteristics of good testers when you can't hire professionals.
- Use risk-based resourcing and skills-based resourcing to prioritize test projects and increase test coverage.
No time? Use heuristics for software quality testing
One of the best ways to test effectively without time is through the use of heuristics. A heuristic is a rule of thumb; it provides a framework to plan and execute testing quickly and effectively. One of my favorite heuristics is DARTS, which combines data, areas, rules, trails and states. The idea is to plan your test around each of these components and around combinations of them.
I used this to test a work-order management application in my job. We looked at data, mainly the types of work orders. We looked at what was done with these orders in various functional areas, such as customer service and field collections, and at the business rules for each type of order. For example, in my business, turn-on orders for utilities have to be completed within 24 hours.
Next, we looked at trails, which are the various routes of the orders from the customer service application, the credit application and so on, through their life cycle from new customer to completed application. Last, we combined trails and states and we found a defect, where orders that weren't completed weren't coming back to the dispatcher at the end of the day for reassignment.
In risk-based resourcing, you 'attack the alligator that's biting at the boat.'
Another useful heuristic is FIBLOTS, an approach that combines frequent, intensive, business-critical, legal, obvious, technically challenging and stakeholder-mandated components. This approach defines the areas where you should focus your limited resources to get the most value out of the time you have available.
No money? Host a BYOD party for mobile testing
Effective testing without financial commitment can be particularly challenging in the mobile testing arena. Even the most quality-committed organizations might not invest in a test lab that includes all the types of mobile devices that customers use today. A unique and effective approach is to invite the employees in your organization to a bring-your-own-device luncheon or an after-work reception, and ask them to play with the application that requires testing on their personal devices.
Younger employees typically are especially eager to do this, and are often willing to test the application on their devices in various settings, such as crowded trains and bars. Open source testing tools and crowdsourcing can be effective options for testing without adequate funding.
No testers? Enlist people with the right characteristics
Testing without professional testers is surprisingly doable: It's a matter of choosing team members with the right characteristics. These include curiosity, creativity, a willingness to ask questions and a desire to dive into details. Also important are diplomacy, persuasiveness and the ability to tolerate chaos and keep in mind the overall picture.
Asking potential team members about their hobbies is a good way to determine their potential for testing. I have found that jazz musicians, marathon runners and fashion designers tend to have the right skill set.
Use risk-based resourcing and skills based resourcing
Risk-based resourcing and skills-based resourcing are creative options for using a limited number of staff members effectively. In risk-based resourcing, you "attack the alligator that's biting at the boat," meaning that you should focus your testing on the highest-priority projects and features first. Skills-based testing means that the most analytical tester designs the test cases, the most creative tester does the exploratory testing, and so forth.
Ultimately, your goal is to change the attitudes and culture of your organization toward software quality. You'll make compromises along the way, but if you have some successes, you can feel better about your job and your organization's approach to quality. It will also help your resume when it comes time to move on. After all, if you can't change your organization, you may have to change the way you do testing.
What are your tips for testing with resources? Email us and let us know.
About the author
In her 25 years of experience as a quality assurance consultant, Gerie Owen has had many opportunities to be a quality evangelist and create quality with little time, money or resources. She specializes in the quality assurance methodology and in building and developing new quality assurance organizations and teams. She also enjoys speaking on quality assurance topics and has presented at conferences including Better Software East 2011, CAST 2012 and Testkit 2012.