Continuously Verify Software Quality

As Figure 1-5 illustrates, software problems are 100 to 1,000 times more expensive to find and repair after deployment than beforehand. For this reason, it's important to assess continuously the quality of a system with respect to its functionality, reliability, application performance, and system performance.

Figure 1-5. The cost of fixing problems

graphics/01fig05.gif

Verifying a system's functionality ”the bulk of the testing activity ”involves creating tests for each key scenario, each of which represents some aspect of the system's desired behavior. You can assess a system's functionality by asking which scenarios failed and where, as well as which scenarios and corresponding code have not yet been exercised. As you are developing your software iteratively, you test at every iteration, a process of continuous, quantitative assessment.

Verifying software quality offers a number of solutions to the root causes of software development problems:

  1. Project status assessment is made objective, not subjective , because test results, not paper documents, are evaluated.

  2. This objective assessment exposes inconsistencies in requirements, designs, and implementations .

  3. Testing and verification are focused on areas of highest risk, thereby increasing the quality and effectiveness of those areas.

  4. Defects are identified early, radically reducing the cost of fixing them.

  5. Automated testing tools provide testing for functionality, reliability, and performance.



The Rational Unified Process. An Introduction
Blogosphere: Best of Blogs
ISBN: B0072U14D8
EAN: 2147483647
Year: 2002
Pages: 193

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net