Software Quality
Software Quality
For any software system there should be THREE • Functional Appropriateness: Refers to how well
SPECIFICATIONS: functions are able to accomplish specified tasks and
• Functional specification describing what the system is to do objectives.
• Quality specification concerned with how well the function
are to operate Reliability
• Resource specification concerned with how much is to be § how well a system, product, or component performs
spent on the system specified functions under specified conditions
The International Organization for Standardization (ISO) has • Maturity: Refers to how well a system, product, or
established a series of ISO and ISO/IEC standards for software component is able to meet your needs for reliability.
quality.
• Availability: Refers to whether a system, product, or
ISO 9126 component is operational and accessible.
§ The ISO/IEC 9126 standard for software product quality
should be used in conjunction with ISO/IEC 14598 for • Fault Tolerance: Refers to how well a system, product,
evaluating software products. or component operates despite hardware and/or
§ international standard proposed to make sure ‘quality of all software faults.
software-intensive products’ which includes a system like
safety-critical where in case of failure of software lives will be • Recoverability: Refers to how well a product or system
in jeopardy can recover data in the event of an interruption or failure.
§ International Electrotechnical Commission have developed
ISO/IEC 9126 standards for software engineering → Product Performance E[iciency
Quality to provide an all-inclusive specification and § the performance related to the amount of resources used
evaluation model for the quality of the software product
• Time Behavior: Refers to the response and processing
ISO 9126–1 software quality model identifies 6 MAIN QUALITY times, and throughput rates of a product or system
CHARACTERISTICS while it’s performing its functions.
• Functionality • Usability • Maintainability
• Reliability • EUiciency • Portability • Resource Utilization: Refers to the amounts and types
of resources used by a product or system while
ISO 25010 performing its functions.
§ the latest version of the software quality model standard,
published in 2011
• Capacity: Refers to the maximum limits of a product or
§ replaces ISO 9126, which was first issued in 1991 and revised system parameter
in 2001
§ expands and reorganizes the software quality characteristics Usability
and sub characteristics, and introduces two new
§ how well a product or system can be used to achieve
perspectives: quality in use and quality in context
specified goals eUectively, eUiciently, and satisfactorily
Quality in Use
• Appropriateness Recognizability: Refers to how well
- the degree to which a software product satisfies the
you can recognize whether a product or system is
needs and goals of its users in a specific situation
appropriate for your needs.
Quality in Context
• Learnability: Refers to how easy it is to learn how to use
- the degree to which a software product adapts to
a product or system.
diUerent environments and conditions
Compatibility
§ how well a product, system, or component can exchange
information as well as perform its required functions while
sharing the same hardware or software environment
Maintainability
§ how well a product or system can be modified to improve,
correct, or adapt to changes in the environment as well as
requirements
Portability
§ how well a system, product, or component can be transferred
from one environment to another