Software Quality Engineering
Software Quality Engineering
Engineering
Ch # 3: Software quality factors
3.1 The need for comprehensive software quality
requirements
The need for a comprehensive definition of requirements
• The great variety of issues related to the various attributes of software
and its use and maintenance, as defined in software requirements
documents, can be classified into content groups called quality factors.
3.2 Classifications of software requirements into
software quality factors
• The classic model of software quality factors, suggested by McCall,
consists of 11 factors (McCall et al.,1977).
• Subsequent models, consisting of 12 to 15 factors, were suggested by
Deutsch and Willis (1988) and by Evans and Marciniak (1987).
McCall’s factor model
The 11 factors are grouped into three categories – product operation,
product revision and product transition – as follows:
• Product operation factors: Correctness, Reliability, Efficiency,
Integrity, Usability.
• Product revision factors: Maintainability, Flexibility, Testability.
• Product transition factors: Portability, Reusability, Interoperability.
3.3 Product operation software quality factors
• Integrity requirements deal with the software system security, that is,
requirements to prevent access to unauthorized persons, to distinguish
between the majority of personnel allowed to see the information (“read
permit”) and a limited group who will be allowed to add and change data
(“write permit”), and so forth.
Usability
• Usability requirements deal with the scope of staff resources needed to
train a new employee and to operate the software system.