Software Measurement and Quality Assurance

Module code: CO7095

Module co-ordinator: Dr H Janicke

Description

A major aim of Software Engineering is to ensure the quality of the final product of the software development process. Quality is not an extra that can be added at the end of the process. To achieve it one must consider how each stage contributes to the quality of the final product. Quality assurance should be seen as an intrinsic part of the software life-cycle. One key mechanism of quality control is software testing, another is inspections and reviews. However, these should be implemented as part of a wider Quality Assurance Plan.

The first step towards quality is to understand what it is and how to measure it. The overall quality of a product is a rather vague idea that cannot be measured directly. It can be seen as an amalgamation of different attributes: correctness, reliability, maintainability, ease of use, and so on; which can be measured by developing the right software metrics. The use of metrics is thus an important tool in quality assurance. Furthermore, quality cannot be considered without reference to the associated cost. Metrics can also be used to gauge the size and complexity of software and hence are employed in project cost estimation.

This module will look in depth at the issues of software quality assurance from an industrial perspective, exploring the techniques available and how these might be employed. It will focus around the idea of software process improvement, as seen in the SEI process Capability Maturity Model and SPICE (ISO/IEC 15504).

Back to top
MENU