01-Oct Unit 5 Part 1

download 01-Oct Unit 5 Part 1

of 18

Transcript of 01-Oct Unit 5 Part 1

  • 8/3/2019 01-Oct Unit 5 Part 1

    1/18

    Software Testing and QualityAssurance (Elective)

    Unit 5Session 1

    Rajesh Singh01-Oct-2011

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

  • 8/3/2019 01-Oct Unit 5 Part 1

    2/18

    Topics to be covered in this session:

    1)Quality is free

    2)Example3)Software Quality4)Quality attributes5)Quality Assurance6)Quality Control7)Cost of Quality8)Summary

    Assignment 1- Code Complexity and Case Study of White BoxAssignment 2- Validation Testing and example

    1)Smita Joshi (Assignment 1)2)Hardik Gandhi (Assignment 1)3)Tejashree (Assignment 1 and 2)4)Renuka (Assignment 2)5)Soniya Thakur (Assignment 2)6)Shital bajare (Assignment 1)

    7)Archana (Assignment 1)

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

  • 8/3/2019 01-Oct Unit 5 Part 1

    3/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Quality Is Free

    Quality is free? Impossible? Nope, it's true. In 1979, Philip Crosby wrote

    in his book Quality is Free: The Art of Making Quality Certain, that indeed

    it costs nothing extra (actually it costs less) to produce something of high

    quality versus something of low quality.

    Given what you've learned so far about software testing and the work

    involved in finding and fixing bugs, this may seem impossible, but it's not.

    The cost of finding and fixing bugs over time increases. The later bugs are

    found, the more they cost not just linearly more, but exponentially more.

  • 8/3/2019 01-Oct Unit 5 Part 1

    4/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

  • 8/3/2019 01-Oct Unit 5 Part 1

    5/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Now, divide the cost of quality into two categories: the costs of

    conformance and the costs of nonconformance.

    The costs of conformance are all the costs associated with planning and

    running tests just one time, to make sure that the software does what it's

    intended to do.

    If bugs are found and you must spend time isolating, reporting, and

    regression testing them to assure that they're fixed, the costs of

    nonconformance go up.

    These costs, because they are found before the product is released, are

    classified as internal failures

    If bugs are missed and make it through to the customers, the result will be

    costly product support calls, possibly fixing, retesting, and releasing thesoftware, and in a worst-case scenario a product recall or lawsuits. The

    costs to address these external failures fall under the costs of

    nonconformance

  • 8/3/2019 01-Oct Unit 5 Part 1

    6/18

  • 8/3/2019 01-Oct Unit 5 Part 1

    7/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Example

    The last telemetry from Mars Polar Landerwas sent just prior to

    atmospheric entry on December 3, 1999. No further signals have been

    received from the lander. The cause of this loss of communication is

    unknown.

    According to the investigation that followed, the most likely cause of the

    failure of the mission was a software error that mistakenly identified the

    vibration caused by the deployment of the lander's legs as being caused

    by the vehicle touching down on the Martian surface, resulting in thevehicle's descent engines being cut off whilst it was still 40 meters above

    the surface, rather than on touchdown as planned.

    http://en.wikipedia.org/wiki/Image:Mars_polar_lander.jpg
  • 8/3/2019 01-Oct Unit 5 Part 1

    8/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    What is Software Quality

    Conformance to explicitly stated functional and performance

    requirements, explicitly documented development standards, and implicit

    characteristics that are expected of all professionally developed software.

    Software Quality aspect of software is measureable so that you can

    improve it.

    IEEE Definition of "Software Quality

    1.The degree to which a system, component, or process meets specified

    requirements.

    2.The degree to which a system, component, or process meets customer

    or user needs or expectations.

  • 8/3/2019 01-Oct Unit 5 Part 1

    9/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Quality Attributes

    Following factors are used to measure software development

    quality. Each attribute can be used to measure the product performance.

    Reliability

    Measure if product is reliable enough to sustain in any condition. Should

    give consistently correct results.

    Product reliability is measured in terms of working of project under

    different working environment and different conditions.

    Maintainability

    Different versions of the product should be easy to maintain. For

    development its should be easy to add code to existing system, should be

    easy to upgrade for new features and new technologies time to time.

    Maintenance should be cost effective and easy. System be easy to

    maintain and correcting defects or making a change in the software.

    Usability

    This can be measured in terms of ease of use. Application should be user

    friendly. Should be easy to learn. Navigation should be simple.

  • 8/3/2019 01-Oct Unit 5 Part 1

    10/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Portability

    This can be measured in terms of Costing issues related to porting,

    Technical issues related to porting, Behavioral issues related to porting.

    Efficiency

    To Major system quality attribute is measured in terms of time required to

    complete any task given to the system. For example system should utilize

    processor capacity, disk space and memory efficiently. If system is using

    all the available resources then user will get degraded performance failing

    the system for efficiency. If system is not efficient then it can not be usedin real time applications.

    Integrity or security

    Integrity comes with security. System integrity or security should be

    sufficient to prevent unauthorized access to system functions, preventing

    information loss, ensure that the software is protected from virus infection,and protecting the privacy of data entered into the system.

  • 8/3/2019 01-Oct Unit 5 Part 1

    11/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Testability

    System should be easy to test and find defects. If required should be easy

    to divide in different modules for testing.

    Flexibility

    Should be flexible enough to modify. Adaptable to other products with

    which it needs interaction. Should be easy to interface with other standard

    3rd party components.

    ReusabilitySoftware reuse is a good cost efficient and time saving development way.

    Different code libraries classes should be generic enough to use easily in

    different application modules. Dividing application into different modules

    so that modules can be reused across the application.

    InteroperabilityInteroperability of one system to another should be easy for product to

    exchange data or services with other systems. Different system modules

    should work on different operating system platforms, different databases

    and protocols conditions.

  • 8/3/2019 01-Oct Unit 5 Part 1

    12/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Some thing Extra

    The so called Quality Movement which was first established in Japan in

    1946 by the U.S. Occupation Force's, was based on W. Edwards Deming(USA) research and papers on Statistical Quality Control (SQC).

    The QA methods, in manufacturing, proved themselves to work (in

    Sales, Customer satisfaction and the right cost of production, i.e. PROFIT)

    and were adopted all over the world. QA groups (for manufacturing)

    became the norm.

    Why cant we apply the same in Software industry and this is how Software

    Quality Assurance came into existence.

  • 8/3/2019 01-Oct Unit 5 Part 1

    13/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Software Quality Assurance

    The function of software quality that assures that the standards, processes

    and procedures are appropriate for the project and are correctly

    implemented.

    Software Quality Control

    The function of software quality that checks that the project follows its

    standards processes, and procedures, and that the project produces the

    required internal and external (deliverable) products.

  • 8/3/2019 01-Oct Unit 5 Part 1

    14/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Example

    These terms appear similar but a simple example highlights the fundamental

    difference.

    Consider a software project that includes requirements, user Interface design and aSQL database implementation.

    The SQA team would produce a quality plan that would specify any standards,

    processes and procedures that apply to the example project. These might include, by

    way of example, IEEE xyzspecification layout (for the requirements), Motif style guide

    abc(for the user interface design) and Open SQL standards (for the SQL

    implementation). All of the standards, processes and procedures that should be

    followed are identified and documented in the quality plan, this is done by SQA.

    When the requirements are produced (in this example) the Software Quality Control

    team would ensure that the requirements did in fact follow the documented standard

    (in this case IEEE xyz). The same task, by SQC, would be undertaken for the user

    interface design and the SQL implementation, that is they both followed the standardidentified by SQA. Later the SQA team could make audits to verify that IEEE xyzand

    not IEEE abcwas indeed used as the requirements standard.

    In this way a difference between correctly implementedby SQA and followedby SQC

    can clearly be drawn.

  • 8/3/2019 01-Oct Unit 5 Part 1

    15/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Cost of Quality

    The price of non conformance or the cost of poor quality ,the term 'Cost of

    Quality', refers to the costs associated with providing poor quality product or

    service.

    Research shows that the costs of poor quality can range from 15%-40% of

    business costs (e.g., rework, returns or complaints, reduced service levels,

    lost revenue).

    Most businesses do not know what their quality costs are because they do

    not keep reliable statistics. Finding and correcting mistakes consumes an

    inordinately large portion resources.

    Typically, the cost to eliminate a failure in the customer phase is five timesgreater than it is at the development or manufacturing phase. Effective

    quality management decreases production costs because the sooner an

    error is found and corrected, the less costly it will be.

    S f i d Q li ( l i 0 ) i

  • 8/3/2019 01-Oct Unit 5 Part 1

    16/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Cost of quality comprises of four elements:

    1External Failure Cost - cost associated with defects found after the

    customer receives the product or service ex: processing customer

    complaints, customer returns, warranty claims, product recalls.

    2Internal Failure Cost - cost associated with defects found before the

    customer receives the product or service ex: scrap, rework, re-inspection, re-

    testing, material review, material downgrades.

    3Inspection (appraisal) Cost - cost incurred to determine the degree ofconformance to quality requirements (measuring, evaluating or auditing) ex:

    inspection, testing, process or service audits, calibration of measuring and

    test equipment.

    4Prevention Cost- cost incurred to prevent (keep failure and appraisal cost

    to a minimum) poor quality ex: new product review, quality planning, suppliersurveys, process reviews, quality improvement teams, education and

    training.

    S ft T ti d Q lit A (El ti II 410445 ) U it 5

  • 8/3/2019 01-Oct Unit 5 Part 1

    17/18

    Software Testing and Quality Assurance (Elective II 410445) Unit 5

    Questions:

    1)What is software Quality?

    2)How can we reduce Cost of Quality?

    3)Mention 4 attributes of Software Quality?

    4)Difference between SQA and SQC

    S ft T ti d Q lit A (El ti II 410445) U it 5

  • 8/3/2019 01-Oct Unit 5 Part 1

    18/18

    Thank You for yourPatience!!

    If you need some more informationyou can drop me an email at

    [email protected]

    Software Testing and Quality Assurance (Elective II 410445) Unit 5