Open In App

Software Quality Framework – Software Engineering

Last Updated : 03 Jan, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Software Quality Framework is a model for software quality that ensures quality by connecting and integrating the different views of software quality. This article focuses on discussing the Software Quality Framework.

What is a Software Quality Framework?

Software Quality Framework connects the customer view with the developer’s view of software quality and it treats software as a product.

  1. The software product view describes the characteristics of a product that bear on its ability to satisfy stated and implied needs. 
  2. This is a framework that describes all the different concepts relating to quality in a common way measured by a qualitative scale that can be understood and interpreted commonly.

Therefore, the most influential factor for the developers is the customer perception. This framework connects the developer with the customer to derive a common interpretation of quality. 

Developers View 

Validation and verification are two independent methods used together to check that a software product meets the requirements and that it fulfills its intended purpose. Validation checks that the product design satisfies the purposeful usage and verification checks for errors in the software.

  1. The primary concern for developers is in the design and engineering processes involved in producing software.
  2. Quality can be measured by the degree of conformance to predetermined requirements and standards, and deviations from these standards can lead to poor quality and low reliability.
  3. While validation and verification are used by the developers to improve the software, the two methods don’t represent a quantifiable quality measurement. 
  4. The developer’s view of software quality and the customer’s view of software quality are both different things. 

For example, the customer understands or describes the quality of operation as meeting the requirement while the developers use different factors to describe the software quality. The developer view of quality in the software is influenced by many factors. This model stresses on 3 primary ones:

The code: It is measured by its correctness and reliability.

The data: The application integrity measures it.

Maintainability: It has different measures the simplest is the mean time to change.

Users View

When the user acquires software, he/she always expect a high-quality software. When end users develop their software then quality is different. End-user programming, a phrase popularized by which is programming to achieve the result of a program primarily for personal, rather than public use.

  1. The important distinction here is that software itself is not primarily intended for use by many users with varying needs. 
  2. For example, a teacher may write a spreadsheet to track student’s test scores.
  3. In these end-user programming situations, the program is a means to an end that could be used to accomplish a goal.
  4. In contradiction to end-user programming, professional programming has the goal of producing software for others to use. 
  5. For example, the moment a novice Web developer moves from designing a web page for himself to designing a Web page for others, the nature of this activity has changed. 
  6. Users find software quality as a fit between their goals and software’s functionality.
  7. The better the quality, the more likely the user will be satisfied with the soft-ware.
  8. When the quality is bad, developers must meet user needs or face a diminishing demand for their software.

Therefore, the user understands quality as fitness for purpose. Avoiding complexity and keeping software simple, considerably lessens the implementation risk of software. In some instances, users abandoned the implementation of a complex software because the software developers were expecting the users to change their business and to go with the way the software works. 

Product View

The product view describes quality as correlated to inherent characteristics of the product. Product quality is defined as the set of characteristics and features of a product that gives contribution to its ability to fulfill given requirements.

  1. Product quality can be measured by the value-based view which sees the quality as dependent on the amount a customer is willing to pay for it.
  2. According to the users, a high-quality product is one that satisfies their expectations and preferences while meeting their requirement.
  3. Satisfaction of end users of the product represents craft to learn, use, upgrade the product and when asked to participate in rating the product, a positive rating is given.

Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads