While software has become one of the most valuable products of the past decades, its growing complexity and size is responsible
for making it one of the most challenging ones to build and maintain. The challenge stems from the fact that software
development belongs to the most labor- and, at the same time, knowledge-intensive processes of today's world. The heavy
dependence on knowledgeable human beings may be one reason why software development is often compared to an art or craft
rather than to an engineering discipline. However, it has almost become impossible nowadays for a craftsman to produce large
software systems according to a given schedule, to a limited budget, and to the quality requirements of a customer at delivery.
Hence, researchers as well as practitioners are increasingly obliged to address the question of how to integrate engineering
principles into software development. An important one is to perform quality-enhancing activities such as walkthroughs, reviews
or inspections as early as possible. Despite the simplicity of this principle and the associated methods one can observe
in the software industry that the activity of detecting and correcting software defects is often deferred until late in the project.
Why should you conduct walktrhoughs, reviews or inspections? The answer is simple because the advantages of these methods are three-fold:
- 1. Quality Improvementg
- 2. (Defect) Cost Reduction
- 3. Process Improvement
The detection and subsequent correction of software defects by means of walkthroughs, reviews and inspections improve the quality of the artifacts.
In this way, less defects propagate to subsequent development phases and further defects are avoided. Rework costs due to defects are minimized.
Furthermore, defect information (defect class, defect origin) can be collected in walkthrougs, reviews or inspections. This kind of information is
one of the most valuable assets of a software development organization since it allows a quantitative and goal-orientied approach towards software process improvement. However, only few
organizations have already recognized the value of defect information.