McCall’s Quality Factors in Software Engineering

McCall distinguishes two levels of quality attributes McCall.
Quality criteria: It can be measured directly, either objectively or subjectively.
Quality Factors: The higher-level quality attributes which can be assessed directly are called quality factors.
There are mainly three perspectives on the Quality Attributes of the Software:

1. Product Revision: It encompasses the revision perspective identifying quality factors that change or enhance the ability to change the software product in the future according to the needs and requirements of the user.

2. Product Transition: It enables the software to adapt itself to new environments. The identification of the quality factor which enables the ability to the adaption of the software in the new environment is known as product transition.

3. Product Operations: The software can run successfully in the market if it is according to the specifications of the user and also it should run smoothly without any defects. The product operation perspective influences the extent to which the software fulfils its specifications

Portability: A software product is said to be portable, if it can be easily made to work in different hardware and operating system environments, and easily interface with external hardware devices and software products.

Usability: A software product has good usability if different categories of users (i.e., both expert and novice users) can easily invoke the functions of the product.

Reusability: A software product has good reusability if different modules of the product can easily be reused to develop new products.

Correctness: A software product is correct if different requirements as specified in the SRS document have been correctly implemented.

Maintainability: A software product is maintainable if errors can be easily corrected as and when they show up, new functions can be easily added to the product, and the functionalities of the product can be easily modified, etc.