There are different types of software quality which depends on the contexts they are used in software engineering and maintenance. One of the most basic types of software quality is software functional quality. The functional quality is known as the ways it conforms or complies to a specific design based on functional specifications or requirements. This description can equally be seen as its compatibility with its intended use or how competitive the software is in the marketplace in with respect to its importance.
The structural quality is also a type of software quality. It deals with the non functional needs that support and help the delivery of its functional requirements. These nonfunctional requirements include maintainability, robustness, and the level at which the software was manufacture correctly. These types of software quality can be accessed through the appraisal of the software source code and its inner structure at the system level, the technology level, and the unit level. The measure and analysis of the these types of software quality is done through software testing.
Historically, the metrics, terminology of attributes, classification, and the structure of software quality is extracted or derived from ISO 25000 and ISO 9126-3. Based on the above models the different types of software quality measurements is necessary to create business value in areas such as size, maintainability, security, efficiency, and reliability.
Other perspectives or types of software quality
Software quality can also be assessed or measured in the following ways:Shewhart’s 20th century definition
At the start of the 20th century, Shewhart proposed a method of assessing software quality by deviding it into three common aspects:
The first deals with what we sense, feel, and think in terms of the objective of the software. This means that the software quality always have a subjective side. The second aspect of Shewhart types of software quality is the deliberation of the objective side of software quality as a phenomenon independent of man’s existence.
Garvin, Pfleeger, and Kitchenham’s 5 types of software quality
* The user perspective deals with how appropriate the product will be for a particular use.
* The transcendental perspective concerns itself with the metaphysical side of quality. This perspective of quality talks about the level of software quality we crave for but may never completely attain.
* Another aspect of Garvin’s 5 types of software quality is the manufacturing perspective which represents requirements conformity. This aspect of software quality is defined by the different ISO quality standards used in measuring or ascertaining the level of software quality.
* The product aspect of quality is the fourth quality perspective which measures the inner features of the product in consideration.
* The final type of software quality from these groups of people is the value based quality. It recognizes that the different aspects of quality may have different value or importance to various stakeholders.
The main obstacle in effectively defining software quality is the inability to match the future needs of the user with the present features of the products. The constant change in consumer needs and the competition inherent in the software market makes it quite difficult to always provide all the software needs of the end user in terms of quality.