What is the concept of Quality?
Introduction
Since an organization wants its software to be of a certain quality standard, software testing needs to be about quality.
Bona Iqiniso uses the quality reference model as provided by ISO/IEC 9126 – “Software engineering — Product quality” and the ISO/IEC 250xx series – “SQUARE – Software QUality Requirements”
Bona Iqiniso implements these standards in such a way that not only product quality is covered, but quality in all its aspects.
To explain we use the quality reference model described in the context of the qualitative techniques.

Quality Attributes
There are 4 major quality attributes for software product development:

- Process quality assesses the quality of the processes used to develop and maintain software products. It focuses on the methods, techniques, and activities employed throughout the software development life cycle to ensure that the resulting software meets its intended objectives. This implies the software testing processes as well.
- Internal quality is the totality of characteristics of the software product from an internal view (IT/software development view). Internal quality is measured and evaluated against the internal quality requirements. Details of software product quality can be improved during code implementation, reviewing and testing (verification), but the fundamental nature of the software product quality represented by internal quality remains unchanged unless redesigned.
- External Quality is the totality of characteristics of the software product from an external view (business/internal organization view). It is the quality when the software is executed, which is typically measured and evaluated while testing in a simulated environment with simulated data using external metrics (validation). During testing, most faults should be discovered and eliminated. However, some faults may still remain after testing. As it is difficult to correct the software architecture or other fundamental design aspects of the software, the fundamental design usually remains unchanged throughout testing.
- Quality in Use is the user’s view (clients, both internal to the organization as well as external) of the quality of the software product when it is used in a specific environment and a specific context of use. It measures the extent to which users can achieve their goals in a particular environment, rather than measuring the properties of the software itself (validation).
No matter the kind of quality category, if there is a need for a certain kind of quality, a software testing methodology will need to accommodate it.
Quality Characteristics
Product Quality (internal and external quality)

Quality characteristics of ‘internal and external quality’ (product quality) are:
- Functional suitability: This category covers the basic functions of the software product and its ability to meet user requirements. Quality sub-characteristics are functional completeness, functional correctness, and functional appropriateness.
- Reliability: This category covers the software product’s ability to perform its intended functions without failure. Quality sub-characteristics are maturity, fault tolerance, recoverability, and availability.
- Usability: This category covers the software product’s ease of use and user satisfaction. Quality sub-characteristics are appropriateness, recognizability, learnability, operability, user error protection, user interface aesthetics, and accessibility.
- Performance efficiency: This category covers the software product’s ability to use resources effectively. Quality sub-characteristics are time behaviour, resource utilization, and capacity.
- Maintainability: This category covers the software product’s ability to be modified or repaired. Quality sub-characteristics such as modifiability, testability, reusability, modularity and analyzability.
- Portability: This category covers the software product’s ability to be transferred from one environment to another. Quality sub-characteristics such as adaptability, installability, and replaceability.
- Security: This category covers the software product’s ability to protect data and resources from unauthorized access. Quality sub-characteristics such as authenticity, confidentiality, integrity, non-repudiation, and accountability.
- Compatibility: This category covers the software product’s ability to exchange information with other products, systems or components, and/or perform its required functions while sharing the same hardware or software environment. Quality sub-characteristics such as co-existence, and interoperability.
Quality in use

Quality Characteristics of ‘quality in use’ are:
- Efficiency: The software should perform tasks quickly and with minimal resource usage.
- Effectiveness: The software should enable users to achieve their goals accurately and completely.
- Satisfaction: The software should provide a pleasant and satisfying user experience. Quality sub-characteristics are: Usefulness, trust, pleasure, comfort
- Freedom from risk: Refers to the ability to develop and deliver software products without the fear of potential failures or negative consequences. Quality sub-characteristics are: economic risk mitigation, health and safety risk mitigation, environmental risk mitigation
- Context coverage: Refers to ensuring that all relevant aspects and conditions of a specific context are considered and addressed during the development process. Quality sub-characteristics are: context completeness, flexibility
Process quality
Process quality refers to the level of excellence and effectiveness in the methods, procedures, and systems used to produce software products. It is a critical aspect of any organization as it directly impacts customer satisfaction, overall productivity, and cost efficiency. Achieving high process quality involves systematically identifying and eliminating any defects, errors, or inefficiencies in the production or service delivery process. This is often done through continuous improvement initiatives such as lean manufacturing or Six Sigma techniques. By focusing on process quality, organizations can ensure consistent and reliable outcomes, reduce waste and rework, and ultimately enhance their competitive advantage in the market.
To accommodate process quality Bona iqiniso (1) describes methods to a certain level of detail, (2) makes the methods measurable, (3) relies on an assessment process to (4) feed a continuous improvement process. All 4 initiatives are implemented by other qualitative initiatives. For that reason, this chapter will not cover process quality, since it relies for this on other processes described further on.
Note: ISO 9126 vs. ISO 25010
ISO/IEC 25010:2011 revises ISO/IEC 9126-1:2001 and incorporates the same software quality characteristics with some amendments.
- Context coverage has been added as a quality in use characteristic, with sub-characteristics of context completeness and flexibility.
- Security has been added as a characteristic, rather than a sub-characteristic of functionality, with sub-characteristics confidentiality, integrity, non-repudiation, accountability and authenticity.
- Compatibility (including interoperability and co-existence) has been added as a characteristic.
- The following subcharacteristics have been added to existing product quality characteristics: functional completeness, capacity, user error protection, accessibility, availability, modularity and reusability.
- Compliance with standards or regulations that were subcharacteristics in ISO/IEC 9126-1 are now outside the scope of the quality model as they can be identified as part of the requirements for a system.
- When appropriate, generic definitions have been adopted to extend the scope to computer systems, rather than using software-specific definitions.
- Several characteristics and sub-characteristics have been given more accurate names
We emphasize one change in special. The one where compliance with standards and regulations is now out of scope. If we look at the software testing framework we are using, we have seen there is a motivational part where influencers (just like standards and regulations) are imposing a quality need which in return leads to the implementation of test types. By using ISO/IEC 25010 in Bona Iqiniso we make sure that these quality needs are not merely ‘compliance to …’, but really are quality needs that can be mitigated by software testing.
Make quality measurable
To finalize the concept of quality, it is important to explain the dependency with the quantitative techniques, more specifically the measurement framework.
Quality requirements always lead to quality goals which are made measurable by quality objectives. In the quality reference model, they are called ‘quality measure elements’. That’s how quality is made measurable.
Recent Comments