|
Yes, it is possible to get consistent, high quality from your software products or business's software solutions. But what will it cost?
We've been conditioned to believe that higher quality = higher costs. When it comes to your own software, though, that's not necessarily true. By going into the
project with the right strategy, you'll get great quality without padding your costs.
Today, we'll look at five tips:
-
Develop a strategy for quality assurance
Is quality assurance or software testing an afterthought at your organization or is it something that you build into your product design and development process?
No matter what end of the quality assurance spectrum you lie in, you'll benefit from taking another look at your strategy.
-
What should you test? Consider what quality means to you, your customers and your employees. This will help you understand the gap between what you need to
test and what you're currently testing. Remember to account for real life scenarios, coverage of all features, and comprehensive coverage of test cases.
-
How should you test? Decide when to test your software by manually running through all scenarios, and when to use automation instead. Manual testing is good
for occasional tests, or for testing new features. Automation works best for things you test frequently and especially well for testing existing product features
in new release (regression testing). (To decide how to automate your testing, read tip number three.)
-
Where should you test? Do you have a separate environment that simulates real life usage? What about connectivity to other systems and data that your software
may interface with? If applicable, you can also consider testing your product in a variety of environments (for example, "the cloud"), but be wary of the costs
involved. As for which testing tools to use, read on...
-
Choice of Tools
Picking the right tools for software testing is half the battle. The tools you select must allow you to:
- Document the "what to test" aspect of your strategy
- Allow you to pursue the testing strategy you need, including automation
- Work in the same environments that your products have to work in
- Help the people doing the testing to work efficiently
-
Decision to automate testing
Test automation is a great way to reduce the cost of software quality, especially for functional and regression testing. In order to be effective in your testing, consider the following:
- Are your test plans, test scenarios and test cases built for automation? (If you're not sure what this means, they probably aren't.)
- What features does your chosen automation tool provide, and how much does it cost for licensing and maintenance? Most companies look to QuickTestPro
(from HP/Mercury) or SilkTest (from Borland), but keep open source alternatives like Selenium in mind. Often, they can provide similar capabilities at a much lower price point.
- Does your tool support your process? Integrating test automation into your software development process improves efficiency and reduces development time.
- Who will do the automation? Do you already have the skills to automate your tests? If not, do you have a cost-effective source for skilled resources?
-
Executing the strategy
Now that you have your strategy and tools in place, it's time to put the process in motion. Make sure that you have the skills required to execute your strategy efficiently and effectively,
either internally in your organization or with your technology partner. Product managers or business analysts are usually in the best position to determine what has to be tested in your
product or business software - make sure you include them while developing the strategy. Double-check that your QA team has a strong knowledge of the tools you've chosen, and enough experience
to use them in a cost effective manner. Also make sure that your development team knows how to integrate the QA tools into the development process. If you choose to outsource your software
testing make sure that your outsourcing partner can help you in all these areas.
-
Reuse and Review
In software development, there's a strong emphasis on code reuse and code review. Follow this same mentality when approaching your QA strategy and tools. They must support the reuse of test
cases and test scripts, as well as the review of test scenarios and test execution. These will increase the effectiveness of your QA efforts, and significantly reduce the cost of ensuring
software product quality.
As you can see, software quality is not an afterthought. It requires a clear strategy, a detailed plan and good execution to ensure that the final product meets and exceeds the requirements. Your choice
of tools and your QA team will play a significant role in the success of your QA program.
» See how Tripod can help you with your QA process.
Download our free reports:
» 5.5 Ways To Make Sure Your Software Development Project Is Under Budget
» Capital Efficiency 101
|