ABSTRACT

The importance of quality in all aspects of software development cannot be overemphasized. Any error left uncorrected at a higher-level activity like design multiplies the errors as they percolate into downstream activities of product construction, rollout, and maintenance. So, it is imperative to subject software design to quality assurance activities. To do so, software designers need to understand the basics of quality in general and quality assurance of software design in particular. Quality assurance consists of activities that prevent defects and activities that uncover defects. Standards, guidelines, and process-driven working help us in defect prevention activities. Reviews, testing, and audits help us in detecting defects. Defect-detection activities are referred to as quality control activities. We use peer reviews for quality control of software design activities. We use expert reviews to validate our designs and audits to ensure that we follow all the standards, guidelines, and process in carrying out software design activities to prevent defects in our designs. All these aspects are discussed in detail in this chapter.