To consider the function of software quality attributes (also known as software quality factors) lets revisit the overall goal of any quality management, namely Fujitsu s slogan Quality built-in with cost and performance as prime consideration.
Given the intangible and abstract nature of software, researchers and practitioners have been looking for ways to characterize software in order to make the benefits and costs more visible (for measurement). This quest continues today but there have been two notable models of software quality attributes, namely:-
These two quality models are summarized below and similarities can be seen.
To begin with there are some common objectives of these models, namely:-
McCall's Quality Model - 1977
Jim McCall produced this model for the US Air Force and the intention was to bridge the gap between users and developers. He tried to map the user view with the developer's priority.
McCall identified three main perspectives for characterizing the quality attributes of a software product.
These perspectives are:-
The product revision perspective identifies quality factors that influence the ability to change the software product, these factors are:-
The product transition perspective identifies quality factors that influence the ability to adapt the software to new environments:-
The product operations perspective identifies quality factors that influence the extent to which the software fulfils its specification:-
For each quality factor McCall defined one or more quality criteria (a way of measurement), in this way an overall quality assessment could be made of a given software product by evaluating the criteria for each factor.
For example the Maintainability quality factor would have criteria of simplicity, conciseness and modularity.
Boehm's Quality Model - 1978
At the highest level of his model, Boehm defined three primary uses (or basic software requirements), these three primary uses are:-
These three primary uses had quality factors associated with them , representing the next level of Boehm's hierarchical model.
Boehm identified seven quality factors, namely:-
Summary of the two models
Although only a summary of the two example software factor models has been given, some comparisons and observations can be made that generalize the overall quest to characterize software.
Both of McCall and Boehm models follow a similar structure, with a similar purpose. They both attempt to breakdown the software artifact into constructs that can be measured. Some quality factors are repeated, for example: usability, portability, efficiency and reliability.
The presence of more or less factors is not, however, indicative of a better or worse model.
The value of these, and other models, is purely a pragmatic one and not in the semantics or structural differences.
The extent to which one model allows for an accurate measurement (cost and benefit) of the software will determine its value.
It is unlikely that one of the current models will emerge as the best and other models will surely be proposed, this reflects the intangible nature of software and the essential difficulties that this brings. The ISO 9126 model of software characteristics represents the ISO's recent attempt to define a set of useful quality characteristics.
No guarantee (or claim) is made regarding the accuracy of this information. Any questions or comments should be sent to:-