+ All Categories
Home > Documents > Software Quality - UPMocw.upm.es/lenguajes-y-sistemas-informaticos/software-quality... · Calidad...

Software Quality - UPMocw.upm.es/lenguajes-y-sistemas-informaticos/software-quality... · Calidad...

Date post: 14-Oct-2018
Category:
Upload: duongnhi
View: 212 times
Download: 0 times
Share this document with a friend
36
1 Unit 4 Software Quality: Features and Models Software Quality
Transcript

1

Unit 4 Software Quality:

Features and Models

Software Quality

Calidad del Software

• 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.

Quality models

Calidad del Software

Quality models •  FCM (Factors/Criteria/Metrics) McCall (1977) •  Boehm’s Model (1978) •  GQM Paradigm (Goal-Question-Metric) (1988) •  Gilb’s 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

McCall’s 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

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

McCall’s model

Calidad del Software

McCall’s model

°  Portability. °  Reusability. °  Interoperability.

Adaptability Product Transition

°  Maintainability. °  Flexibility. °  Testability.

Ability to change. Product Revision

°  Correctness. °  Reliability. °  Efficiency, system resource usage. °  Integrity. °  Usability.

Basic Operational Characteristic. Product Operations

Factors Point of view

Calidad del Software

McCall’s model

°  Completeness °  Consistency °  Traceability

Correctness, the functionality matches the specification.

°  Access control °  Easiness of be audited °  Security

Integrity, protection from unauthorized access

°  Easiness of be operated °  Easiness of communication °  Easiness of be learnt °  Training

Usability, ease of use Criteria Factors

Calidad del Software

McCall’s model

°  Running efficiency °  Storing efficiency

Efficiency, system resource (including cpu, disk, memory, network) usage

°  Precision °  Consistency °  Faults tolerance °  Modularity °  Simplicity °  accuracy

Reliability, the extent to which the system fails

Criteria Factores

Calidad del Software

McCall’s model

°  Self description °  Capability of expansion °  Generality

°  Modularity °  Simplicity °  Self description °  Instrumentation

°  Modularity °  Simplicity °  Consistency °  Conciseness °  Self description

Flexibility, the ability to make changes required as dictated by the business.

Testability, the ability to Validate the software requirements.

Maintainability, the ability to find and fix a defect

Criteria Factors

Calidad del Software

McCall’s model

°  Self description °  Modularity °  Independence

Portability, the ability to transfer the software from one environment to another.

°  Modularity °  Communications compatibility °  Data compatibility °  Data standarization

Interoperability, the extent, or ease, to which software components work together.

°  Self description °  Generality °  Modularity °  Software independence °  Hardware independence

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

Criteria Factors

Calidad del Software

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

Boehm’s model

Calidad del Software

• GQM Paradigm (Goal-Question-Metric) •  GQM is a top-down approach to establish a goal-

driven 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.

GQM paradigm

Calidad del Software

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.

GQM paradigm

Calidad del Software

GQM paradigm There are three stages: • List main goal for project development and maintenance. • Per each one of the objectives to determine questions to be answered in order to know if objective is going to be achieved. • To decide what to measure in order to answer questions in an appropriate way. Individual measures are correlated to be used in the context of the whole project.

GQM paradigm

Questions:

Objective: To evaluate standard of codification effectiveness

Who’s using the standard?

Codemakers percentage

using: standard, language

Codemaker productivity?

Codemakers experience

on: standard, language,

environment,…

Code quality?

Code quantity Errors…

Calidad del Software

Calidad del Software

Gilb’s 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

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.

Gilb’s Model

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: • Quality in use • External quality • Internal quality

Calidad del Software

ISO 9126-1:2001

External and internal quality

Calidad del Software

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)

ISO 9126-1:2001

Calidad del Software

ISO 9126-1:2001

Adapted from (ISO/IEC, 2001a)

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 –safety and interoperability- have became factors in the new standard. This model is also known as External and Internal Quality.

Calidad del Software

(SQuaRE)-Quality model

Calidad del Software

External and Internal Quality

°  Resistencia al acceso °  Resistencia a la copia °  Facilidad de cifrado °  Resistencia a la falsificación °  Robustez °  Conformidad con la seguridad

Safety

°  Suitability °  Accuracy °  Compliance

Functionability

Calidad del Software

°  Maturity °  Fault tolerance °  Recoverability °  Compliance

Reliability

°  OSI compatibility °  SW Compatibility °  Data compatibility °  Traceability °  Compliance

Interoperability

External and Internal Quality

Calidad del Software

External and Internal Quality

Efficiency

°  Understandability °  Learn-ability °  Operability °  Attractiveness °  Compliance

Usability

°  Time behavior °  Resource behavior °  Compliance

Calidad del Software

External and Internal Quality

°  Adaptability °  Install-ability °  Co-existence °  Replace-ability °  Compliance

Portability

°  Analyzability °  Change-ability °  Stability °  Testability °  Compliance

Maintainability

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

Calidad del Software

Quality in use

°  Types of users in use °  Tasks of use °  Environment of use °  Context conformity in use

Context in use

°  Effectiveness in use °  Productiveness in use °  Satisfaction in use °  Compliance in use

Usability in use

Calidad del Software

Quality in use

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

Safety in use

Calidad del Software

Quality 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.

Security in use

Calidad del Software

°  Learn-abililty in use °  Flexibility in use °  Accessibility in use °  Compliance

Adaptability in use

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

Quality in use

• 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

Calidad del Software

• 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.

Advantages of using Model

Calidad del Software 36

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.


Recommended