MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

download MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

of 25

Transcript of MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    1/25

    Software Engineering 1

    Introduction to Software

    Engineering

    Software QualityAssurance

    Topic Three

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    2/25

    Software Engineering 2

    Software Quality Assurance

    It is a subset of software engineering.

    It is ensuring that deliverables are meet and that theycomply with user requirements and standards.

    It is considered an umbrella activity that is appliedthroughout the software development process.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    3/25

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    4/25

    Software Engineering 4

    Software Quality Assurance

    It encompasses:

    control of software documentation and the changesmade to it

    a procedure to assure compliance with softwaredevelopment standards

    measurement and reporting mechanism

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    5/25

    Software Engineering 5

    Goal of Software Quality

    Assurance To detect defects before the software is delivered as a final

    product to the end-users who will directly use it.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    6/25

    Software Engineering 6

    Software Quality

    It is a software that is fit to use, ie, it is working properly.

    It meets users requirements. Requirements must bemeasurable in order to gauge compliance.

    It is conformance to explicitly stated functional andperformance requirements, explicitly documenteddevelopment standards, and implicit characteristics that areexpected of all professionally developed software.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    7/25

    Software Engineering 7

    Three Important Points

    Software Requirements are the foundation from whichquality is measured. It is necessary to explicitly specify andprioritize them.

    Standards define a set of development criteria that guide themanner by which software is engineered.

    Implicit requirements must be identified and documented;they influence the way software is developed such asmaintainability.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    8/25

    Software Engineering 8

    Well-engineered Software

    Characteristics Usability It is the characteristic of the software that exhibits ease with which

    the user communicates with the system.

    Portability It is the capability of the software to execute in different platforms

    and architecture.

    Reusability

    It is the ability of the software to transfer from one system to another.

    Maintainability

    It is the ability of the software to evolve and adapt to changes overtime. It is characterized by the ease of upgrading and maintaining.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    9/25

    Software Engineering 9

    Well-engineered Software

    Characteristics Dependability It is the characteristic of the software to be reliable, secure and safe.

    Efficiency

    It is the capability of the software to use resource efficiently.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    10/25

    Software Engineering 10

    SQA Activities

    Prepare the SQA Plan for a Project. This is done duringproject planning. It identifies the following:

    evaluations to be performed

    audits and reviews to be performed standards that are applicable

    procedures for error reporting and tracking

    documents to be produced

    amount of feedback required

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    11/25

    Software Engineering 11

    SQA Activities

    The SQA Team prepares the SQA Plan.

    The SQA Team participates in the development of theproject's software process description.

    The SQA Team reviews software engineering activitiesemployed by the development team to check for compliancewith the software development process.

    The SQA Team reviews work products to check forcompliance with defined standards.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    12/25

    Software Engineering 12

    SQA Activities

    The SQA Team ensures that deviations in the softwareactivities and work products are handled based on definedstandard operating procedures.

    The SQA Team reports deviations and non-compliance tostandards to the senior management or stakeholders.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    13/25

    Software Engineering 13

    Formal Technical Reviews It is a software quality assurance activity that is

    performed by software engineers.

    The objectives of FTR are:

    To uncover errors in function, logic orimplementation for any representation of thesoftware

    To verify that the software meets user requirements

    To ensure that the software complies with definedstandards

    To achieve software that is developed in a uniformmanner

    To make projects manageable

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    14/25

    Software Engineering 14

    Formal Technical Review

    Methods Fagan's Inspection Method Walkthroughs

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    15/25

    Software Engineering 15

    Fagan's Inspection Method

    Inspection Procedural Rules

    Inspections are carried out at a number of points in theprocess of project planning and systems development.

    All classes of defects in documentation are inspected;not merely logic, specifications or function errors.

    Inspection is carried out by colleagues at all levels ofseniority except the big boss.

    Inspections are carried out in a prescribed list ofactivities.

    Inspection meetings are limited to two hours.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    16/25

    Software Engineering 16

    Fagan's Inspection Method

    Inspection Procedural Rules

    Inspections are led by trained moderator.

    Inspectors are assigned specific roles to increase

    effectiveness. Checklists of questionnaires to be asked by the

    inspectors are used to define the task to stimulateincreased defect finding.

    Materials are inspected at a particular rate which hasbeen found to give maximum error-finding ability.

    Statistics on types of errors are key, and used for reportswhich are analyzed in a manner similar to financialanalysis.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    17/25

    Software Engineering 17

    Fagan's Inspection Activities

    Planning

    A moderator is tasked to prepare a plan for theinspection. He decides:

    Who are the inspectors and the roles they play When and where the inspection will take place

    When to distribute the inspection materials

    Overview

    A 30 minute presentation for the inspectors. It can beomitted when the overall project is familiar.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    18/25

    Software Engineering 18

    Fagan's Inspection Activities Preparing

    Inspectors work alone for about 1-2 hours. They willconcentrate on the roles given by the moderator anddiscover presumed defects in the documentation.

    Meeting

    The meeting is attended by all inspectors including themoderator.

    The developer of the work product in question are

    normally present to explain and defend it. No discussion as whether a purported defect is real is

    allowed.

    A defect list is produced.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    19/25

    Software Engineering 19

    Fagan's Inspection Activities

    Rework

    The defect list is assigned to one person for repair.

    Follow-up

    The moderator is personally responsible for ensuring thatdefects in documentation have really been reworked.

    The correctness of the rework process is judged by laterinspections and tests.

    Casual Analysis Meeting It can be held at which inspectors may express their

    more personal views on error and improvements.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    20/25

    Software Engineering 20

    Walkthrough

    It is technical review which is less formal that an inspection.

    The work product is reviewed by a review team consisting of3 to 5 people.

    A scribe is present to document the action list.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    21/25

    Software Engineering 21

    Walkthrough Guidelines

    No manager should be present.

    Emphasize that the walkthrough is for error detection onlyand not error correction.

    Keep vested interest group apart. No counting or sandbagging.

    Criticize the product; not the developer of the work product.

    Always document the action list.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    22/25

    Software Engineering 22

    Pre-walkthrough Activities

    Schedule walkthrough a day or two in advance.

    Distribute appropriate materials to reviewers.

    Ask each reviewer to bring to the walkthrough two positive

    comments and one negative comments.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    23/25

    Software Engineering 23

    Walkthrough Activities

    Presenter makes a brief presentation of the product.

    Solicit comments from the reviewers.

    Issues are presented but not resolved during the

    walkthrough. Keep walkthrough to no more than one hour.

    An action list is the final product of the walkthrough.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    24/25

    Software Engineering 24

    Post-walkthrough Activities

    Chairperson gives the action list to the producer of the work.

    The producer is then asked to submit a status report on theaction taken to resolve the errors or discrepancies listed inthe action list.

    Another walkthrough may be scheduled.

  • 8/3/2019 MELJUN_CORTES_JEDI Slides-1.3 Software Quality Assurance and Techniques

    25/25

    Software Engineering 25

    Summary

    Software Quality Assurance and Software Quality aredefined.

    Software Quality Activities

    Formal Technical Reviews Fagan's Inspection Method

    Walkthrough