1.2 Software Quality Factors


Software quality defined as "The degree to which a system, component, or process meets customer or user
needs or expectations."
This definition lists the following four components of software:
Computer programs (the "code").
Procedures.
Documentation.
Data necessary for operating the software system.
Software quality can be defined in different domains
Transcendental View: It envisages quality as something that can be recognized but is difficult to define.
User View: It perceives quality as fitness for purpose. "Does the product satisfy user needs and
expectations?"
Manufacturing View: The quality level of a product is determined by the extent to which the product meets
its specifications.

1.2 Software Quality Factors


Product View: A product's inherent characteristics, that is, internal qualities, determine its external qualities.
Value-Based View: Depends on the amount a customer is willing to pay for it.
McCall's factor model
The classic model .The 11 factors are grouped into three categories:
Procedures.
Product operation factors are Correctness, Reliability, Efficiency, Integrity, and Usability.
Product revision factors: are Maintainability, Flexibility, and Testability.
Product transition factors: are Portability, Reusability, Interoperability
A formal comparison of the factor models reveals:
The Evans and Marciniak factor model consists of 12 factors that are classified into three categories.
The Deutsch and Willis factor model consists of 15 factors that are classified into four categories.
Both alternative models exclude only one of McCall's 11 factors, namely the testability factor.

1.2 Software Quality Factors


Taken together, five new factors were suggested by the two alternative factor models:
Verifiability (by both models)
Expandability (by both models)
Safety (by Deutsch and Willis)
Manageability (by Deutsch and Willis)
Survivability (by Deutsch and Willis)