You are on page 1of 36

Software Quality

Unit 4 Software Quality: Features and Models


1

Quality models
Quality models are used to build better products or services and to assure their quality. Software quality models are used to evaluate a software taking into account criteria for satisfying:
Developers needs Maintainers needs Clients that buy the software End users.
Calidad del Software

Quality models
FCM (Factors/Criteria/Metrics) McCall (1977) Boehms Model (1978) GQM Paradigm (Goal-Question-Metric) (1988) Gilbs Model(1988) Framework ISO 9126 (1991) CMM (Capability Maturity Model) (1993) SPICE (Software Process Improvement and Capability determination) (1999) CMMi (Capability Maturity Model Integration) (2000)
Calidad del Software

McCalls model
Factors/Criteria/Metrics (McCall) Each determinant factor of quality is divided into several properties or criteria, which determine quality. Criteria are evaluated by means of metrics.

Calidad del Software

McCalls model
The model divides quality concept into three main perspectives for characterizing the quality attributes of a software product: roduct Operation (basic operational P characteristic). roduct Revision (ability to chance) P roduct Transition (adaptability to new P environments).
Calidad del Software

McCalls model
Point of view Basic Operational Characteristic. Product Operations Factors Correctness. Reliability. Efficiency, system resource usage. Integrity. Usability. Maintainability. Flexibility. Testability. Portability. Reusability. Interoperability.

Ability to change. Product Revision Adaptability Product Transition

Calidad del Software

McCalls model
Factors Usability, ease of use Criteria Easiness of be operated Easiness of communication Easiness of be learnt Training Access control Easiness of be audited Security

Integrity, protection from unauthorized access

Correctness, the Completeness functionality matches the Consistency specification. Traceability Calidad del Software

McCalls model
Factores
Reliability, the extent to which the system fails

Criteria Precision Consistency Faults tolerance Modularity Simplicity accuracy

Efficiency, system resource Running efficiency (including cpu, disk, Storing efficiency memory, network) usage
Calidad del Software

Factors

McCalls model

Criteria

Maintainability, the ability to find and fix a defect

Testability, the ability to Validate the software requirements. Flexibility, the ability to make changes required as dictated by the business.

Modularity Simplicity Consistency Conciseness Self description Modularity Simplicity Self description Instrumentation Self description Capability of expansion Generality

Calidad del Software

Factors

McCalls model

Reusability, the ease of using existing software components in a different context

Interoperability, the extent, or ease, to which software components work together. Portability, the ability to transfer the software from one environment to another.

Criteria Self description Generality Modularity Software independence Hardware independence Modularity Communications compatibility Data compatibility Data standarization Self description Modularity Independence

Calidad del Software

Boehms model
It is a hierarchical model and it is focused in the final product.

Calidad del Software

GQM paradigm
QM Paradigm (Goal-Question-Metric) G
GQM is a top-down approach to establish a goaldriven measurement system for software development, in that the team starts with organizational goals, defines measurement goals, poses questions to address the goals, and identifies metrics that provide answers to the questions.

Calidad del Software

GQM paradigm
It is based on a clear definition of the goals. The model provides a structure to achieve crucial goals of the project. GQM defines a measurement model on three levels Conceptual level (Goal) : a goal is defined per entity. Operational level (Question): a set of question is refined, in order to identify the measuring object. Quantitative level (Metric): a set of metric is associated to each one of the questions.
Calidad del Software

GQM paradigm
There are three stages: ist main goal for project development and L maintenance. er each one of the objectives to determine P questions to be answered in order to know if objective is going to be achieved. o decide what to measure in order to answer T questions in an appropriate way. Individual measures are correlated to be used in the context of the whole project.
Calidad del Software

GQM paradigm
Objective: Questions:
Codemakers percentage using: standard, language To evaluate standard of codification effectiveness

Whos using the standard?

Codemaker productivity?

Code quality?

Codemakers experience on: standard, language, environment,

Code quantity

Errors

Calidad del Software

Gilbs Model
This model appears in 1988. The model includes final software user expectations by the first time in history. It presents quality attributes definition in which user is really interested in a quantitative way. The model also defines the quality level needed to satisfy the final user per each one of the attributes.
Calidad del Software

Gilbs Model
The model proposes characteristic such as: correctness, integrity, maintainability, and usability. They can be measured by several detailed metrics or sub-characteristics. Each one of them must specify the following concepts: Name and characteristic definition. Scale or measuring units. Data collection or proof. Predicted value. Optimal value. Value at current system. Comments.
Calidad del Software

ISO 9126
In 1991, the International Organization for Standardization introduced a standard named ISO/ IEC 9126 (1991): Software product evaluation Quality characteristics and guidelines for their use. This standard aimed to define a quality model for software and a set of guidelines for measuring the characteristics associated with it. It is known by: Software Product Evaluation: Quality Characteristics and Guidelines for their Use.
Calidad del Software

ISO 9126-1
Revised in 2001, ISO/IEC 9126-1 recognizes three aspects of software quality: uality in use Q xternal quality E nternal quality I

Calidad del Software

ISO 9126-1:2001
External and internal quality

Calidad del Software

ISO 9126-1:2001
QUALITY IN USE Quality in use is the user's view 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. (ISO/IEC, 2001a)
Calidad del Software

ISO 9126-1:2001

Adapted from (ISO/IEC, 2001a)


Calidad del Software

(SQuaRE)-Quality model
Second generation of quality standards ISO/IEC CD 25010:2007 (Software engineering-Software Product Quality Requirements and Evaluation (SQuaRE)-quality model). In this case, two important sub-factor security and interoperability- have became factors in the new standard. This model is also known as External and Internal Quality.
Calidad del Software

External and Internal Quality


Functionability Appropriateness Accuracy Compliance Confidentiality Integrity Non-repudiation Accountability Authenticity Compliance

Security

Calidad del Software

External and Internal Quality


Interoperability OSI compatibility SW Compatibility Data compatibility Traceability Compliance Maturity Fault tolerance Recoverability Compliance

Reliability

Calidad del Software

External and Internal Quality


Usability Understandability Learn-ability Operability Attractiveness Compliance

Efficiency

Time behavior Resource behavior Compliance


Calidad del Software

External and Internal Quality


Maintainability Analyzability Change-ability Stability Testability Compliance Adaptability Install-ability Co-existence Replace-ability Compliance

Portability

Calidad del Software

Quality in use
SQuaRE - ISO/IEC CD 25010 also re-defines quality in use adding two new factors. Quality in use is, now, measured in the operational ambient, it depends on software, hardware, users, etc.

Calidad del Software

Quality in use
Usability in use Effectiveness in use Productiveness in use Satisfaction in use Compliance in use Types of users in use Tasks of use Environment of use Context conformity in use

Context in use

Calidad del Software

Quality in use
Safety in use Operator health and safety Public health and safety Environmental harm in use Commercial damage in use Compliance

Calidad del Software

Quality in use
Security in use Risk for operator in use. Risk for software in use corruption. Commercial risk in use. Risk compliance in use. Security in use. compliance.

Calidad del Software

Quality in use
Adaptability in use Learn-abililty in use Flexibility in use Accessibility in use Compliance

Calidad del Software

Quality in use
To reach Quality in use depend on reaching external quality, which is also dependent on reaching internal quality. Measures to be done must assure to get the three necessary quality levels.

Calidad del Software

Advantages of using Model


Having the opportunity to correct misaligned processes. To classify companies. To achieve competitiveness. To certify international competitiveness. To assure continuous improvement.

Calidad del Software

Advantages of using Model


To increase productivity. To reduce costs. To ensure the satisfaction of internal and external customers. To generate a culture within the organization. To have criteria and indicators for measuring the strengths and weaknesses of the organization to make improvements.
Calidad del Software

Conceptual models
TYPES OF CONCEPTUAL MODELS TRADITIONAL CONCEPTUAL MODELS: Like Entity-Relationship Model (ERM). OBJECT ORIENTED CONCEPTUAL MODELS: They are used not only for data representation, but also System Information functionality and behavior.
Calidad del Software

36

You might also like