McCall software quality model was introduced in 1977. This model is incorporated with many attributes, termed as software factors, which influence a software. The model distinguishes between two levels of quality attributes :
- Quality Factors –
The higher level quality attributes which can be assessed directly are called quality factors. These attributes are external attributes.The attributes in this level are given more importance by the users and managers.
- Quality Criteria –
The lower or second level quality attributes which can be assessed either subjectively or objectively are called Quality Criteria. These attributes are internal attributes. Each quality factor has many second level of quality attributes or quality criteria.
Usability quality factor is divided into operability, training, communicativeness, input/output volume, input/output rate. This model classifies all software requirements into 11 software quality factors. The 11 factors are organised into three product quality factors – product operation, product revision, and product transition factors.
The following are the product quality factors –
1. Product Operation :
It includes five software quality factors, which are related with the requirements that directly affect the operation of the software such as operational performance, convenience, ease of usage and its correctness. These factors help in providing a better user experience.
- Correctness –
The extent to which a software meets its requirements specification.
- Efficiency –
The amount of hardware resources and code the software, needs to perform a function.
- Integrity –
The extent to which the software can control an unauthorized person from the accessing the data or software.
- Reliability –
The extent to which a software performs its intended functions without failure.
- Usability –
The extent of effort required to learn, operate and understand the functions of the software.
2. Product Revision :
It includes three software quality factors, which are required for testing and maintenance of the software. They provide ease of maintenance, flexibility and testing effort to support the software to be functional according to the needs and requirements of the user in the future.
- Maintainability –
The effort required to detect and correct an error during maintenance phase.
- Flexibility –
The effort needed to improve an operational software program.
- Testability –
The effort required to verify a software to ensure that it meets the specified requirements.
3. Product Transition :
It includes three software quality factors, that allows the software to adapt to the change of environments in the new platform or technology from the previous.
- Portability –
The effort required to transfer a program from one platform to another.
- Re-usability –
The extent to which the program’s code can be reused in other applications.
- Interoperability –
The effort required to integrate two systems with one another.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Differences between Quality Assurance and Quality Control
- Dimension of Software Quality | Garvin's Dimensions Of Quality
- Measuring Software Quality using Quality Metrics
- Quality Function Deployment (QFD) in Software Quality
- House of Quality Example in Software Quality
- Boehm's Software Quality Model
- Software Engineering | Pham-Nordmann-Zhang Model (PNZ model)
- Difference between Waterfall Model and Spiral Model
- Difference between Waterfall model and Incremental model
- Difference between V-model and Waterfall model
- Difference between RAD Model and Waterfall Model
- Difference between Agile Model and V-Model
- Difference between Prototype Model and Spiral Model
- Difference between Spiral model and Incremental model
- Difference between Prototype Model and RAD Model
- Difference between RAD Model and Incremental Model
- Difference between RAD Model and Spiral Model
- Difference between Waterfall model and Prototype model
- Difference between Prototype Model and Incremental Model
- Difference between V-model and RAD model
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.