Chapter10 Maintainence Reliability Quality

Embed Size (px)

Citation preview

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    1/20

    Maintenance, Reliability and QualityMaintenance, Reliability and Quality

    y Maintenance Types

    y Lehmans laws

    y Maintenance Process Models

    y Reliability Hardware and Software

    y Reliability Metrics

    y Quality

    y ISO -9001, SEI CMM, Six Sigma

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    2/20

    MaintenanceMaintenance

    y This phase starts after the software goes

    live

    y One of the most important phases

    y Every development needs maintenance

    y All good software continue to evolve after

    its development through maintenance

    efforts

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    3/20

    Type of maintenanceType of maintenance

    y Corrective All the bugs in the system discovered after release is

    resolved in this phase

    y Adaptive Maintenance is done when platforms changed, OS

    upgraded or new interfaces added

    y Perfective

    This involves adding new features and changingexisting functionalities

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    4/20

    Characteristics of s/w evolutionCharacteristics of s/w evolution

    y Lehmans Laws

    First Law Software product must change

    continuously otherwise they will become

    progressively less useful

    Second Law The structure of the program

    tends to degrade as more and more

    maintenance is carried out

    Third Law The rate at which code is written

    or modified is approximately the same during

    development and maintenance

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    5/20

    Software Maintenance Process ModelsSoftware Maintenance Process Models

    y Method 1

    Small requirement changes

    Requirements are not complex in nature

    y Method 2

    y Requirements are complex

    y

    Existing applications do not have properdocumentation and design

    y Use of reverse engineering and forwardengineering

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    6/20

    Method 1Method 1

    Gather change requirements

    Analyze change requirements

    Devise code change strategies

    Apply code changes to old code

    Update documents Integrate and test

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    7/20

    Method 2Method 2

    Code

    Module specs

    Design

    Requirement Specs

    Code

    Module specs

    Design

    New Requirement Specs

    Reverse Engineering

    Change Requirement

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    8/20

    ReliabilityReliability

    y Reliability of a software product:

    a concern for most users especially industry users.

    An important attribute determining the quality of theproduct.

    Users not only want highly reliable products but wantquantitative estimation of reliability before makingbuying decision.

    y

    Accurate measurement of software reliability: a very difficult problem

    Several factors contribute to making measurement ofsoftware reliability difficult

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    9/20

    Hardware Vs Software ReliabilityHardware Vs Software Reliability

    y Hardware failures: inherently different from software failures.

    y Most hardware failures are due to component

    wear and tear: some component no longer functions as specified.

    y To fix hardware faults- replace or repair the failed part

    y Software faults are latent:

    system will continue to fail unless changes are made tothe software design and code.

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    10/20

    Reliability MetricsReliability Metrics

    y There are many method by which reliability ofa software product can be measured.

    y Reliability can also be a part of the non-

    functional requirement in SRS

    y Some reliability metrics

    Rate of Occurrence Of Failure (ROCOF)

    Mean Time to Failure (MTTF)

    Mean Type to Repair (MTTR) Mean Time between Failure (MTBF)

    Probability of failure on demand(POFOD)

    Availability

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    11/20

    Rate of Occurrence Of Failure

    (ROCOF)

    y ROCOF measures:

    The frequency of occurrence offailures.

    Observe the behaviour of a softwareproduct in operation:

    x over a specified time intervalx calculate the total number of failuresduring the interval.

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    12/20

    Mean Time To Failure (MTTF)Mean Time To Failure (MTTF)

    y Average time between two successive

    failures:

    observed over a large number of failures.

    y MTTF is not as appropriate for software as for

    hardware:

    Hardware fails due to a components wear andtear indicating how frequently the component fails

    When a software error is detected and repairedthe same error never appears.

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    13/20

    Mean Type to Repair (MTTR)

    y Once the failure occurs, it takes time to

    fix it and addition time is lost

    y MTTR measures the average time it takes

    to fix faults

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    14/20

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    15/20

    Probability of failure on demand(POFOD)

    y Unlike other metrics

    This metric does not explicitly involve time.

    y Measures the likelihood of the system

    failing:

    when a service request is made.

    POFOD of 0.001 means:

    x 1 out of 1000 service requests may result in a failure.

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    16/20

    AvailabilityAvailability

    y This metric is important for systemslike: telecommunication systems,

    operating systems, etc. which are supposedto be never down

    where repair and restart time aresignificant and loss of service during thattime is important.

    Availability is also important for webapplications

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    17/20

    QualityQuality

    y Several quality factors are associated

    with a software product :

    Correctness

    Reliability

    Portability

    Usability

    Reusability

    Maintainability

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    18/20

    Software Quality ManagementSoftware Quality Management

    SystemSystemy Quality management system (or quality system):

    Principal methodology used by organizations toensure that the products have desired quality.

    y Quality System Activities Auditing of projects

    Development of standards, procedures, andguidelines.

    Production of reports for the top management: Summarizing the effectiveness of the quality system in

    the organization.

    Review of the quality system itself

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    19/20

    CertificationsCertifications

    y International Standards Organization

    ISO 9000

    y SEI CMM (Capability Mature Model)

    y Six Sigma

  • 8/6/2019 Chapter10 Maintainence Reliability Quality

    20/20

    AssignmentAssignment

    y What is the difference between ISO 9001,

    9002 and 9003?

    y Compare between ISO 9001 and SEI

    CMM?

    y What are the metrics of six sigma, 5 sigma

    and 4 sigma?