software quality features models

Upload: jorge-humberto-fajardo

Post on 05-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/2/2019 Software Quality Features Models

    1/36

    1

    Unit 4

    Software Quality:Features and Models

    Software Quality

  • 8/2/2019 Software Quality Features Models

    2/36

    Calidad del Software

    Quality models are used to build betterproducts or services and to assure their

    quality.Software quality models are used to

    evaluate a software taking into accountcriteria for satisfying:

    Developers needsMaintainers needsClients that buy the softwareEnd users.

    Quality models

  • 8/2/2019 Software Quality Features Models

    3/36

    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)

  • 8/2/2019 Software Quality Features Models

    4/36

    Calidad del Software

    McCalls modelFactors/Criteria/Metrics (McCall)

    Each determinant factor of quality is dividedinto several properties or criteria, whichdetermine quality.

    Criteria are evaluated by means of metrics.

  • 8/2/2019 Software Quality Features Models

    5/36

    Calidad del Software

    The model divides quality concept into threemain perspectives for characterizing the

    quality attributes of a software product:

    Product Operation (basic operationalcharacteristic).

    Product Revision (ability to chance)Product Transition (adaptability to newenvironments).

    McCalls model

  • 8/2/2019 Software Quality Features Models

    6/36

    Calidad del Software

    McCalls model

    Portability. Reusability. Interoperability.

    AdaptabilityProduct Transition

    Maintainability. Flexibility. Testability.

    Ability to change.Product Revision

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

    Basic Operational

    Characteristic.

    Product Operations

    FactorsPoint of view

  • 8/2/2019 Software Quality Features Models

    7/36

    Calidad del Software

    McCalls 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

    CriteriaFactors

  • 8/2/2019 Software Quality Features Models

    8/36

    Calidad del Software

    McCalls model

    Running efficiency Storing efficiencyEfficiency, system resource(including cpu, disk,

    memory, network) usage

    Precision Consistency Faults tolerance Modularity Simplicity accuracy

    Reliability, the extent to

    which the system fails

    CriteriaFactores

  • 8/2/2019 Software Quality Features Models

    9/36

    Calidad del Software

    McCalls 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

    CriteriaFactors

  • 8/2/2019 Software Quality Features Models

    10/36

    Calidad del Software

    McCalls model

    Self description Modularity Independence

    Portability, the ability totransfer 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

    CriteriaFactors

  • 8/2/2019 Software Quality Features Models

    11/36

    Calidad del Software

    It is a hierarchical model and it is focused in the

    final product.

    Boehms model

  • 8/2/2019 Software Quality Features Models

    12/36

    Calidad del Software

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

    driven measurement system for softwaredevelopment, in that the team starts withorganizational goals, defines measurement goals,poses questions to address the goals, andidentifies metrics that provide answers to the

    questions.

    GQM paradigm

  • 8/2/2019 Software Quality Features Models

    13/36

    Calidad del Software

    It is based on a clear definition of the goals. Themodel provides a structure to achieve crucial goals ofthe project. GQM defines a measurement model on

    three levelsConceptual level (Goal) : a goal is defined perentity.

    Operational level (Question): a set of question isrefined, in order to identify the measuring object.Quantitative level (Metric): a set of metric isassociated to each one of the questions.

    GQM paradigm

  • 8/2/2019 Software Quality Features Models

    14/36

    Calidad del Software

    GQM paradigm

    There are three stages:

    List main goal for project development andmaintenance.

    Per each one of the objectives to determinequestions to be answered in order to know if objectiveis going to be achieved.

    To decide what to measure in order to answerquestions in an appropriate way. Individual measures

    are correlated to be used in the context of the whole

    project.

  • 8/2/2019 Software Quality Features Models

    15/36

    GQM paradigm

    Questions:

    Objective: To evaluate standard of codification effectiveness

    Whos usingthe standard?

    Codemakerspercentage

    using:

    standard,language

    Codemakerproductivity?

    Codemakersexperience

    on: standard,

    language,environment,

    Code quality?

    Code quantity Errors

    Calidad del Software

  • 8/2/2019 Software Quality Features Models

    16/36

    Calidad del Software

    Gilbs Model

    This model appears in 1988. The modelincludes final software user expectations by

    the first time in history.It presents quality attributes definition inwhich user is really interested in aquantitative way.

    The model also defines the quality levelneeded to satisfy the final user per each oneof the attributes.

  • 8/2/2019 Software Quality Features Models

    17/36

    Calidad del Software

    The model proposes characteristic such as: correctness,integrity, maintainability, and usability. They can be measuredby 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.

    Gilbs Model

  • 8/2/2019 Software Quality Features Models

    18/36

    Calidad del Software

    ISO 9126

    In 1991, the International Organization forStandardization 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 forsoftware and a set of guidelines for measuring thecharacteristics associated with it.

    It is known by: Software Product Evaluation:Quality Characteristics and Guidelines for theirUse.

  • 8/2/2019 Software Quality Features Models

    19/36

    Calidad del Software

    ISO 9126-1

    Revised in 2001, ISO/IEC 9126-1 recognizes threeaspects of software quality:

    Quality in use

    External qualityInternal quality

  • 8/2/2019 Software Quality Features Models

    20/36

    Calidad del Software

    ISO 9126-1:2001

    External and

    internal quality

  • 8/2/2019 Software Quality Features Models

    21/36

    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

  • 8/2/2019 Software Quality Features Models

    22/36

    Calidad del Software

    ISO 9126-1:2001

    Adapted from (ISO/IEC, 2001a)

  • 8/2/2019 Software Quality Features Models

    23/36

    Second generation of quality standards ISO/IEC CD

    25010:2007 (Software engineering-Software Product

    Quality Requirements and Evaluation (SQuaRE)-qualitymodel).

    In this case, two important sub-factor security and

    interoperability- have became factors in the newstandard.

    This model is also known as External and Internal

    Quality.

    Calidad del Software

    (SQuaRE)-Quality model

  • 8/2/2019 Software Quality Features Models

    24/36

    Calidad del Software

    External and Internal Quality

    Confidentiality Integrity Non-repudiation

    Accountability Authenticity Compliance

    Security

    Appropriateness Accuracy Compliance

    Functionability

  • 8/2/2019 Software Quality Features Models

    25/36

    Calidad del Software

    Maturity Fault tolerance Recoverability Compliance

    Reliability

    OSI compatibility SW Compatibility Data compatibility Traceability Compliance

    Interoperability

    External and Internal Quality

  • 8/2/2019 Software Quality Features Models

    26/36

    Calidad del Software

    External and Internal Quality

    Efficiency

    Understandability Learn-ability Operability Attractiveness Compliance

    Usability

    Time behavior Resource behavior Compliance

  • 8/2/2019 Software Quality Features Models

    27/36

    Calidad del Software

    External and Internal Quality

    Adaptability Install-ability Co-existence Replace-ability Compliance

    Portability

    Analyzability Change-ability Stability Testability Compliance

    Maintainability

  • 8/2/2019 Software Quality Features Models

    28/36

    SQuaRE - ISO/IEC CD 25010 also re-definesquality 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

  • 8/2/2019 Software Quality Features Models

    29/36

    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

  • 8/2/2019 Software Quality Features Models

    30/36

    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

  • 8/2/2019 Software Quality Features Models

    31/36

    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

  • 8/2/2019 Software Quality Features Models

    32/36

    Calidad del Software

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

    Adaptability in use

    Quality in use

  • 8/2/2019 Software Quality Features Models

    33/36

    To reach Quality in use depend on reachingexternal 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

  • 8/2/2019 Software Quality Features Models

    34/36

    Having the opportunity to correct misalignedprocesses.

    To classify companies.To achieve competitiveness.To certify international competitiveness.To assure continuous improvement.

    Calidad del Software

    Advantages of using

    Model

  • 8/2/2019 Software Quality Features Models

    35/36

    Calidad del Software

    To increase productivity. To reduce costs. To ensure the satisfaction of internal and externalcustomers. To generate a culture within the organization. To have criteria and indicators for measuring the

    strengths and weaknesses of the organization tomake improvements.

    Advantages of using

    Model

  • 8/2/2019 Software Quality Features Models

    36/36

    Calidad del Software36

    Conceptual models

    TYPES OF CONCEPTUAL MODELS

    TRADITIONAL CONCEPTUAL MODELS: LikeEntity-Relationship Model (ERM).

    OBJECT ORIENTED CONCEPTUAL MODELS:They are used not only for data

    representation, but also System Informationfunctionality and behavior.