Tool Support for Continuous Quality Control
Quality control helps prevent the gradual decay of software systems over time. To succeed, however, assessment tools must be automated and flexible enough to present results in a way that users can easily understand.
If organizations fail to take countermeasures, their long-lived software systems undergo gradual quality decay. Without exception, this degradation affects all of the ISO 9126 quality attributes: reliability, functionality, efficiency, portability, usability, and, above all, maintainability. Continuous quality control lets software engineers identify and resolve quality defects early in the development process, when implementing countermeasures is still inexpensive. Quality control consists of three key elements:
- clearly defined quality goals;
- techniques, tools, and processes to analyze a system’s current quality state; and
- appropriate measures to react to identified quality deficits.
Obviously, assessing the current state of a system’s quality is a key quality control activity. Quality has many diverse aspects, however, and the costs associated with assessing them shouldn’t outweigh their benefits. To keep costs down, developers must have appropriate tool support for all automatically assessable quality aspects.
We’ve worked on different quality control aspects in various academic and industrial projects. Tool support has been important on all such projects. Although there are many tools available, how to apply them—and in which situations—is not always clear. On the basis of our experiences and existing work, we therefore developed a set of quality control requirements and tool categories. The categories help structure the sometimes bewildering tool landscape. We also developed a dashboard toolkit, the Continuous Quality Assessment Toolkit (ConQAT), which addresses these requirements through its flexible architecture.
Read more ...
Share this article