|
The ISO 9126 Quality Life Cycle Model
The ISO/IEC 9126 quality model describes a two-part
model for software product quality:
- internal quality and external quality, and
- quality in use.
QStudio Enterprise implements the software quality model and provides
a coherent framework for capturing both internal metrics as external
metrics.
The first part of the model specifies six characteristics for internal
and external quality, which are further subdivided into subcharacteristics.
These subcharacteristics are manifested externally when the software
is used as a part of a computer system, and are a result of internal
software attributes.
The second part of the model specifies four quality in use characteristics,
but does not elaborate the model for quality in use below the level
of characteristics. Quality in use is the combined effect for the
user of the six software product quality characteristics.
The characteristics defined are applicable to every kind of software,
including computer programs and data contained in firmware. The
characteristics and subcharacteristics provide consistent terminology
for software product quality. They also provide a framework for
specifying quality requirements for software, and making trade-offs
between software product capabilities.
User quality needs include requirements for quality in use in specific
contexts of use. These identified needs can be used when specifying
external and internal quality using software product quality characteristics
and subcharacteristics.
Evaluation of software products in order to satisfy software quality
needs is one of the processes inthe software development lifecycle.
Software product quality can be evaluated by measuring internal
attributes (typically static measures of intermediate products),
or by measuring external attributes (typically by measuring the
behaviour of the code when executed), or by measuring quality in
use attributes. The objective is for the product to have the required
effect in a particular context of use (see figure above).
Process quality (the quality of any of the lifecycle processes)
contributes to improving product quality, and product quality contributes
to improving quality in use. Therefore, assessing and improving
a process is a means to improve product quality, and evaluating
and improving product quality is one means of improving quality
in use. Similarly, evaluating quality in use
can provide feedback to improve a product, and evaluating a product
can provide feedback to improve
a process.
Appropriate internal attributes of the software are a pre-requisite
for achieving the required external behaviour, and appropriate external
behaviour is a pre-requisite for achieving quality in use.
The six quality characteristics of software
The subcharacteristics adopted by ISO/IEC 9126 - 1991, are
the following:
| Characteristics |
Subcharacteristics |
Definitions |
| Functionality |
Suitability |
Attributes of software that bear on the presence and appropriateness
of a set of functions for specified tasks. |
| Accurateness |
Attributes of software that bear on the provision of right
or agreed results or effects. |
| Interoperability |
Attributes of software that bear on its ability to interact
with specified systems. |
| Compliance |
Attributes of software that make the software adhere to
application related standards or conventions or regulations
in laws and similar prescriptions. |
| Security |
Attributes of software that bear on its ability to prevent
unauthorized access, whether accidental or deliberate, to
programs or data. |
| Reliability |
Maturity |
Attributes of software that bear on the frequency of failure
by faults in the software. |
| Fault tolerance |
Attributes of software that bear on its ability to maintain
a specified level of performance in case of software faults
or of infringement of its specified interface. |
| Recoverability |
Attributes of software that bear on the capability to
re-establish its level of performance and recover the data
directly affected in case of a failure and on the time and
effort needed for it. |
Usability |
Understandability |
Attributes of software that bear on the users’ effort
for recognizing the logical concept and its applicability. |
| Learnability |
Attributes of software that bear on the users’effort for
learning its application. |
| Operability |
Attributes of software that bear on the users’effort for
operation and operation control. |
Efficiency |
Time behaviour |
Attributes of software that bear on response and processing
times and on throughput rates in performances its function. |
| Resource behavior |
Attributes of software that bear on the amount of resource
used and the duration of such use in performing its function. |
| Maintainability |
Analyzability |
Attributes of software that bear on the effort needed
for diagnosis of deficiencies or causes of failures, or
for identification of parts to be modified. |
| Changeability |
Attributes of software that bear on the effort needed
for modification, fault removal or for environmental change. |
| Stability |
Attributes of software that bear on the risk of unexpected
effect of modifications. |
| Testability |
Attributes of software that bear on the effort needed
for validating the modified software. |
| Portability |
Adaptability |
Attributes of software that bear on the opportunity for
its adaptation to different specified environments without
applying other actions or means than those provided for
this purpose for the software considered. |
| Installability |
Attributes of software that bear on the effort needed
to install the software in a specified environment. |
| Conformance |
Attributes of software that make the software adhere to
standards or conventions relating to portability. |
| Replaceability |
Attributes of software that bear on opportunity and effort
using it in the place of specified other software in the
environment of that software. |
ISO/IEC 9126-3 : Information technology - Software quality
characteristics and metrics - Part 3: Internal metrics.
This part provides internal metrics for measuring software quality
characteristics. An internal metric is a quantitative scale and
measurement method, which can be used for measuring an attribute
or characteristic of a software product, derived from the product
itself, either direct or indirect (it is not derived from measures
of the behaviour of the system). Internal metrics are applicable
to a non executable software product during designing and coding
in early stage of development process.
|