rewrite 3 pages
ISO/IEC 9126 Software engineering — Product quality was an international standard for the evaluation of software quality. It has been replaced by ISO/IEC 25010:2011. The fundamental objective of the ISO/IEC 9126 standard is to address some of the well known human biases that can adversely affect the delivery and perception of a software development project. These biases include changing priorities after the start of a project or not having any clear definitions of "success." By clarifying, then agreeing on the project priorities and subsequently converting abstract priorities (compliance) to measurable values (output data can be validated against schema X with zero intervention), ISO/IEC 9126 tries to develop a common understanding of the project's objectives and goals.
Quality model
The quality model presented in the first part of the standard, ISO/IEC 9126-1, classifies software quality in a structured set of characteristics and sub-characteristics as follows:
1. Functionality - A set of attributes that bear on the existence of a set of functions and their specified properties. The functions are those that satisfy stated or implied needs.
a. Suitability
b. Accuracy
d. Security
e. Functionality Compliance
2. Reliability - A set of attributes that bear on the capability of software to maintain its level of performance under stated conditions for a stated period of time.
a. Maturity
c. Recoverability
d. Reliability Compliance
3. Usability - A set of attributes that bear on the effort needed for use, and on the individual assessment of such use, by a stated or implied set of users.
a. Understandability
b. Learnability
c. Operability
d. Attractiveness
e. Usability Compliance
4. Efficiency - A set of attributes that bear on the relationship between the level of performance of the software and the amount of resources used, under stated conditions.
a. Time Behaviour
b. Resource Utilization
c. Efficiency Compliance
5. Maintainability - A set of attributes that bear on the effort needed to make specified modifications.
a. Analyzability
b. Changeability
c. Stability
d. Testability
e. Maintainability Compliance
6. Portability - A set of attributes that bear on the ability of software to be transferred from one environment to another.
a. Adaptability
b. Installability
c. Co-Existence
d. Replaceability
e. Portability Compliance
· Quality in use metrics.
Quality in use metrics is only available when the final product is used in real conditions.
Ideally, the internal quality determines the external quality and external quality determines quality in use.
This standard stems from the GE model for describing software quality, presented in 1977 by McCall et al., which is organized around three types of Quality Characteristics:
· Factors (To specify): They describe the external view of the software, as viewed by the users.
· Criteria (To build): They describe the internal view of the software, as seen by the developer.
· Metrics (To control): They are defined and used to provide a scale and method for measurement.
ISO/IEC 9126 distinguishes between a defect and a nonconformity, a defect being The nonfulfilment of intended usage requirements, whereas anonconformity is The nonfulfilment of specified requirements. A similar distinction is made between validation and verification, known as V&V in the testing trade.
ISO/IEC 25010:2011 defines:
1. A quality in use model composed of five characteristics (some of which are further subdivided into subcharacteristics) that relate to the outcome of interaction when a product is used in a particular context of use. This system model is applicable to the complete human-computer system, including both computer systems in use and software products in use.
2. A product quality model composed of eight characteristics (which are further subdivided into subcharacteristics) that relate to static properties of software and dynamic properties of the computer system. The model is applicable to both computer systems and software products.
The characteristics defined by both models are relevant to all software products and computer systems. The characteristics and subcharacteristics provide consistent terminology for specifying, measuring and evaluating system and software product quality. They also provide a set of quality characteristics against which stated quality requirements can be compared for completeness.
Although the scope of the product quality model is intended to be software and computer systems, many of the characteristics are also relevant to wider systems and services.
ISO/IEC 25012 contains a model for data quality that is complementary to this model.
The scope of the models excludes purely functional properties, but it does include functional suitability.
The scope of application of the quality models includes supporting specification and evaluation of software and software-intensive computer systems from different perspectives by those associated with their acquisition, requirements, development, use, evaluation, support, maintenance, quality assurance and control, and audit. The models can, for example, be used by developers, acquirers, quality assurance and control staff and independent evaluators, particularly those responsible for specifying and evaluating software product quality. Activities during product development that can benefit from the use of the quality models include:
· identifying software and system requirements;
· validating the comprehensiveness of a requirements definition;
· identifying software and system design objectives;
· identifying software and system testing objectives;
· identifying quality control criteria as part of quality assurance;
· identifying acceptance criteria for a software product and/or software-intensive computer system;
· establishing measures of quality characteristics in support of these activities.