written 8.7 years ago by | • modified 5.3 years ago |
ISO 9126, defines six broad, independent categories of quality 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.
2. Reliability:
- A set of attributes that bear on the capability of software to maintain its performance level under stated conditions for a stated period of time.
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.
4. Efficiency:
- A set of attributes that bear on the relationship between the software’s performance and the amount of resource used under stated conditions.
5. Maintainability:
- A set of attributes that bear on the effort needed to make specified modifications (which may include corrections, improvements, or adaptions of software to environmental changes)
6. Portability:
- A set of attributes that bear on the ability of software to be transferred from one environment to another ( this includes the organizational, hardware or software environment)
The ISO 9126 standard further decomposes the quality characteristics into more concrete sub characteristics as defined as follows :
1. Suitability: The capability of the software to provide an adequate set of functions for specified tasks and user objectives.
2. Accuracy: The capability of the software to provide the right or agreed-upon results or effects.
3. Interoperability: The capability of the software to interact with one or more specified systems.
4. Security: The capability of the software to prevent unintended access and resist deliberate attacks intended to gain unauthorized access to confidential information or to make unauthorized modifications to information or to the program so as to provide the attacker with some advantage or so as to deny service to legitimate users.
5. Maturity: The capability of the software to avoid failure as a result of faults in the software.
6. Fault Tolerance: The capability of the software to maintain a specified level of performance in case of software faults or of infringement of its specified interface.
7. Recoverability: The capability of the software to re-establish its level of performance and recover the data directly affected in the case of a failure.
8. Understandability: The capability of the software product to enable the user to understand whether the software is suitable, and how it can be used for particular tasks and conditions of use.
9. Learnability: The capability of the software product to enable the user to learn its applications.
10. Operability:The capability of the software product to enable the user to operate and control it.
11. Attractiveness:The capability of the software product to be liked by the user.
12. Time Behaviour: The capability of the software to provide appropriate response and processing times and throughput rates when performing its function under stated conditions.
13. Resource Utilization: The capability of the software to use appropriate resources in an appropriate time when the software performs its function under stated conditions.
14. Analyzability: The capability of the software product to be diagnosed for deficiencies or causes of failures in the software or for the parts to be modified to be identified.
15. Changeability:The capability of the software product to enable a specified modifications to be implemented.
16. Stability: The capability of the software to minimize unexpected effects from modifications of the software.
17. Testability:The capability of the software product to enable modified software to be validated.
18. Adaptability:The capability of the software to be modified for different specified environments without applying actions or means other than those provided for this purpose for the software considered.
19. Installability:The capability of the software to be installed in a specified environment.
20.Coexistence:The capability of the software to coexist with other independent software in a common environment sharing common resources.
21. Replaceability: The capability of the software to be used in place of other specified software in the environment of that software.