Concept: Focus Continuously On Quality
var backPath = './../../../';
var imgPath = './../../../images/';
var nodeInfo=[{view: "view:3.2329841703462285E-305", path: ["3.2329841703462285E-305", "_0_ltcDqYEdqvoMTMKvbIlA", "_pRxKsDq0EdqvoMTMKvbIlA"]}, {view: "view:_FCx1oN7CEdmsEI4YDGX2ag", path: ["_FCx1oN7CEdmsEI4YDGX2ag", "3.2329841703462285E-305", "_0_ltcDqYEdqvoMTMKvbIlA", "_pRxKsDq0EdqvoMTMKvbIlA"]}];
contentPage.preload(imgPath, backPath, nodeInfo, '', false, false, false);
Concept: Focus Continuously On Quality
This principle introduces quality and describes how to address it throughout the process.
Main Description
Introduction
This principle emphasizes that, to achieve quality, it must be addressed throughout the project
lifecycle. An iterative process is particularly adapted to achieving quality since it offers many
measurement and correction opportunities.
Benefits
Higher quality
Earlier insight into progress and quality
Pattern
Ensure team ownership of quality for the product.
Test early and continuously in step with integration of demonstrable capabilities.
Incrementally build test automation.
Anti-Patterns
To peer-review all artifacts and complete all unit testing before integration
testing.
To conduct in-depth peer-review of all intermediate artifacts, which is counter
productive since it delays application testing and hence identification of major
issues.
To complete all unit testing before doing integration testing, again delaying
identification of major issues
Discussion
Improving quality is not simply "meeting requirements," or producing a product that meets user needs and expectations.
Rather, quality also includes identifying the measures and criteria that demonstrate its achievement, as well as the
implementation of a process to ensure that the product has achieved the desired degree of quality, and that this can be
repeated and managed.
Ensuring high quality requires more than the participation of the testing team; it requires that the entire team
owns quality. It involves all team members and all parts of the lifecycle:
Analysts are responsible for making sure that requirements are testable, and that we specify
clear requirements for the tests to be performed.
Developers need to design applications with testing in mind, and must be responsible for
testing their code.
Managers needs to ensure that the right test plans are in place, and that the right resources
are in place for building the testware and performing required tests.
Testers are the quality experts. They guide the rest of the team in understanding software
quality issues, and they are responsible all product testing (including functional, system, and
performance).
When we experience a quality issue, every team member should be willing to chip in to address the issue.
One of the major benefits of Iterative Development is that it enables a test early and continuously
approach, as illustrated below. By the time we reach the end of a project, and since the most important capabilities
are implemented early on, the most essential software may will have been up and running for months, and it is
therefore likely it will have been tested for months. It is no surprise that most projects adopting
iterative development claim that an increase in quality is a primary tangible result of the improved process.
Testing Is Initiated Early and Expanded Upon in Each Iteration
Iterative development enables early testing. Software developed in each iteration is tested as it is built.
Regression testing ensures that new defects are not introduced as new iterations add functionality. Reference: Supporting Material: Quality Management.
As we incrementally build our application, we should also incrementally build test automation to detect
defects early, while minimizing up-front investments. As we design our system, we consider how it should be tested.
Making the right design decisions can greatly improve our ability to automate testing. We may also be able to generate
test code directly from the design models. This saves time, provides incentives for early testing, and increases the
quality of testing by minimizing the number of bugs in the test software. Automated testing has been a key area of
focus for, among others, the agile community, where the aim is to automate testing of all code, and where tests are
written before the code is written (test-first design.)
© Copyright IBM Corp. 1987, 2006. All Rights Reserved.
contentPage.onload();
Wyszukiwarka
Podobne podstrony:
continuously verify quality?A48171control structures continueLEGACY FOCUS 20Grid Power Quality with Variable Speed Wind Turbines17 Benthic macroinvertebrates as indicators of water qualityCisco2 ch11 FocusPast ContinuousSensory quality of stored croissant type bakery productsTotal Quality ManagementWebcity pl Kurs PHP ContinueSHSpec 047 6108C30 Auditing Qualityrup quality architect444CDC5function pdf continue textwięcej podobnych podstron