Boehm’s Software Quality Model

In 1978, B.W. Boehm introduced his software quality model. The model represents a hierarchical quality model similar to McCall Quality Model to define software quality using a predefined set of attributes and metrics, each of which contributes to overall quality of software.

The difference between Boehm’s and McCall’s model is that McCall’s model primarily focuses on precise measurement of high-level characteristics, whereas Boehm’s quality model is based on a wider range of characteristics.

Example –
Characteristics of hardware performance, that are missing in McCall’s model.

The Boehm’s model has three levels for quality attributes. These levels are divided based on their characteristics. These levels are primary uses (high level characteristics), intermediate constructs(mid-level characteristics) and primitive constructs(primitive characteristics).

The highest level of Boehm’s model has following three primary uses stated as below –



  1. As is utility –
    Extent to which, we can use software as-is.
  2. Maintainability –
    Effort required to detect and fix an error during maintenance.
  3. Portability –
    Effort required to change software to fit in a new environment.

The next level of Boehm’s hierarchical model consists of seven quality factors associated with three primary uses, stated as below –

  1. Portability –
    Effort required to change software to fit in a new environment.

  2. Reliability –
    Extent to which software performs according to requirements.

  3. Efficiency –
    Amount of hardware resources and code required to execute a function.

  4. Usability (Human Engineering) –
    Extent of effort required to learn, operate and understand functions of the software.

  5. Testability –
    Effort required to verify that software performs its intended functions.

  6. Understandability –
    Effort required for a user to recognize logical concept and its applicability.

  7. Modifiability –
    Effort required to modify a software during maintenance phase.

Boehm further classified characteristics into Primitive constructs as follows- device independence, accuracy, completeness, consistency, device efficiency, accessibility, communicativeness, self-descriptiveness, legibility, structuredness, conciseness, augment-ability. For example- Testability is broken down into:- accessibility, communicativeness, structuredness and self descriptiveness.

Advantages :

  • It focuses and tries to satisfy the needs of the user.
  • It focuses on software maintenance cost effectiveness.

Disadvantages :

  • It doesn’t suggest, how to measure the quality characteristics.
  • It is difficult to evaluate the quality of software using the top-down approach.

So, we can say that, Boehm’s model is an improvised version of McCall’s model and it is used extensively, but because of the top-down approach to see quality of software, Boehm’s model can’t be employed always.

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.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.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.


Article Tags :

2


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.