Boehm’s Software Quality Model

In 1978, B.W. Boehm introduced his software quality model, which defines software quality through a hierarchical structure of attributes and metrics. This model is similar to the McCall Quality Model but encompasses a wider range of characteristics, including hardware performance-related ones. Boehm’s model categorizes quality attributes into three levels: primary uses (high-level characteristics), intermediate constructs (mid-level characteristics), and primitive constructs (basic characteristics).

Table of Content

  • What is Boehm’s Software Quality Model?
  • Primary Uses of Boehm’s Model
  • Quality Factors Associated with Boehm’s Model
  • Boehm’s Primitive Constructs for Software Quality Characteristics
  • Conclusion
  • Questions for Practice
  • FAQs on Boehm’s Quality Model

What is Boehm’s Software Quality Model?

In 1978, B.W. Boehm introduced his software quality model. The model represents a hierarchical quality model similar to the McCall Quality Model to define software quality using a predefined set of attributes and metrics, each of which contributes to the overall quality of software. The difference between Boehm’s and McCall’s Models is that McCall’s Quality 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. 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).

Primary Uses of Boehm’s Model

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

  1. As is the utility: The 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 the software to fit in a new environment.

Quality Factors Associated with Boehm’s Model

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

  1. Portability: Effort required to change the software to fit in a new environment.
  2. Reliability: The 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 a logical concept and its applicability.
  7. Modifiability: Effort required to modify software during the maintenance phase.

Boehm’s Primitive Constructs for Software Quality Characteristics

Boehm further classified software quality characteristics into more fundamental components called Primitive Constructs. These include:

  • Device Independence
  • Accuracy
  • Completeness
  • Consistency
  • Device Efficiency
  • Accessibility
  • Communicativeness
  • Self-descriptiveness
  • Legibility
  • Structuredness
  • Conciseness
  • Augment-ability

For example, the characteristic of Testability is broken down into accessibility, communicativeness, structuredness, and self-descriptiveness.

Conclusion

Boehm’s software quality model provides a comprehensive framework for evaluating software quality by breaking down attributes into detailed primitive constructs. This allows for a thorough analysis of software quality, addressing various aspects such as portability, reliability, and efficiency. By including more characteristics than McCall’s model, Boehm’s approach offers a broader and deeper understanding of software quality, making it a valuable tool for software development and maintenance.

Questions for Practice

1. COCOMO Model is used for [UGC-NET 2008]

(A) product quality estimation           

(B) product complexity estimation     

(C) product cost estimation                

(D) all of the above

Solution: Correct Answer is (C).

Explanation: COCOMO Model is the model which was developed by B.W. Boehm that estimates the procedural cost model of software.

2. In a Software Project, COCOMO (Cost Constructive Model) is used to estimate [GATE CS 2004]

(A) Effort and Duration based on the size of the Software

(B) Size and Duration based on the effort of the Software

(C) Effort and Cost based on the duration of the Software

(D) Size, Effort, and Duration based on the cost of the Software

Solution: Correct Answer is (A).

For More, refer to COCOMO Model.

FAQs on Boehm’s Quality Model

1. What is Boehm Model?

Answer:

Boehm’s Model is a type of software model that is used to define software quality on the basis of certain parameters.

2. Where is Boehm’s Model Used?

Answer:

Boehm’s Model is used to represent a hierarchical model that has the structure around the high level characteristics, intermediate and primitive characterisitcs.

3. Which model is best for Software Quality?

Answer:

One of the most widely used and most recognized model is ISO/IEC 25010.