MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J....

47
MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute Without Written Consent of the Author. www.cathris.com · [email protected]

Transcript of MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J....

Page 1: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

MODULE 6: QUALITY ASSURANCE PRACTICES

Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute Without Written Consent of the Author.www.cathris.com · [email protected]

Page 2: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

2 Solution Validation & Testing

ObjectivesUpon completion of this chapter

you will be able to:◦List the different types of reviews◦Apply peer reviews to improve the

“built-in” quality of solutions

v1.01

Page 3: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

3 Solution Validation & Testing

MotivationMost testers focus on dynamic testing where

they run tests and observe the behavior the solution.

Static testing, a quality assurance practice, is an analysis of the solution’s implementation and the processes that lead to the development of the solution.

The analysis is carried out through reviews and manual inspection of development artifacts.

Static analysis of the code is also done manually, although some organizations employ static analysis tools for that purpose.

v1.01

Page 4: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

4 Solution Validation & Testing

Goals of Static TestingThe main objective of static testing is to

ensure that quality is “built in” and that the entire solution development process leads to a solution that meets the needs of the user and conforms to the stated requirements.

Quality assurance is a collection of defect prevention practices – locate defects before they have a chance to affect the behavior the solution and before such abnormal behavior must be found through testing.

v1.01

Page 5: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

5 Solution Validation & Testing

ReviewsReviews rely on the analytical

skills of people. Reviewers are expected to read

artifacts and through analysis find potential defects or deviations from the specification.

v1.01

Page 6: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

6 Solution Validation & Testing

Artifacts to ReviewIn general, all artifacts should be

reviewed in at least some way, including models, requirements, prototypes, mockups, test cases, code modules, interface screens, web pages, use cases, and so forth.

v1.01

Page 7: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

7 Solution Validation & Testing

Types of ReviewsIn practice, there are several

types of reviews differing in the level of formality and depth:◦Peer Review◦Stakeholder Walkthrough◦Inspection◦Audit

v1.01

Page 8: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

8 Solution Validation & Testing

Workshop Activity

v1.01

Goal: Identify peer review behaviors.

Time: 10-15 minutes Format: Individually or in groups

Materials: • Whiteboard, flipchart, or paper

Instructions:

Do you currently use peer or stakeholder reviews? Why or why not?

List three supportive and three unsupportive behaviors that you have observed in review meetings?

Page 9: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

9 Solution Validation & Testing

SummaryIn this module we learned that:

◦Links, images, color, fonts, and forms must be tested

◦Usability and performance are important quality of service requirements for web applications and must be thoroughly evaluated

◦Web applications must be tested on all target browsers and platforms

v1.01

Page 10: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

MODULE 7: TEST PLANNING & MANAGEMENT

Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute Without Written Consent of the Author.www.cathris.com · [email protected]

Page 11: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

11 Solution Validation & Testing

ObjectivesUpon completion of this chapter

you will be able to:◦Create a test plan◦Define a defect severity classification

scheme◦Select defect tracking and automated

testing tools◦Collect measurements and produce

quality metrics

v1.01

Page 12: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

12 Solution Validation & Testing

MotivationTesting is a critical aspect of

solution development. The quality of a solution is directly

related to the value the solution provides.

Testing, therefore, must be methodical, efficient, and comprehensive yet mindful of the limited resources available for testing.

v1.01

Page 13: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

Testing Lifecycle

v1.0113 Solution Validation & Testing

•User•Functional•Non-Functional

Identify Requiremen

ts

•Tools•Approach•Participants

Create Test Plan •Input Data

•Post Conditions

•Scenario Scripts

Write Test Cases

•Manual•Automated

Execute Tests •Document

Defects•Retest Defects

Report Results

Page 14: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

14 Solution Validation & Testing

QC and QA PlanningPlanning should address quality

control as well as quality assurance.

An effective test team creates plans defining what work it expects to accomplish and what deliverables and time commitments it can make.

v1.01

Page 15: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

15 Solution Validation & Testing

StandardsIEEE 829 and 730 offer guidelines

for writing test and quality assurance plans.

Note that they are guidelines and that they should be used as such.

It is not advisable to follow them precisely unless required by the organization.

v1.01

Page 16: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

16 Solution Validation & Testing

Writing a Test Plan (IEEE 829)

v1.01

Test Plan

1. Test Version and Revision Identifier2. Introduction3. Test Items4. Features to be tested5. Features not to be tested6. Testing Approach7. Test Pass/Fail Criteria8. Test Deliverables9. Testing Tasks10. Environmental Needs11. Responsibilities12. Staffing and Training Needs13. Schedule14. Risk and Contingencies15. Approvals

Page 17: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

Writing a QA Plan (IEEE 730)

Quality Assurance Plan

1. Purpose of the Plan2. Reference Documents3. Management of the Testing Effort4. Standards, Practices, Conventions5. Quality Metrics Collected6. Static Reviews7. Dynamic Testing Strategies8. Defect Reporting Procedures9. Testing, Tracking, and Reporting Tools10. Media Control11. Supplier Control12. Records Collection, Maintenance, and Retention13. Training14. Risk Management15. Glossary16. SQAP Change Procedure and History

Page 18: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

18 Solution Validation & Testing

Test PrioritizationBecause time and resources for

testing are limited, not all tests can be executed sufficiently and fully.

Therefore, it is necessary to select test cases that should be focused on.

Prioritization ensures that should testing have to end prematurely (perhaps due to time or money running out), the most important tests have been performed.

v1.01

Page 19: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

19 Solution Validation & Testing

Workshop Activity

v1.01

Goal: Identify test prioritization attributes and criteria.

Time: 10-15 minutes Format: Individually or in groups

Materials: • Whiteboard, flipchart, or paper• Test prioritization criteria from workbook

Instructions:

• Are all of the criteria necessary for prioritizing tests?• Would you take some away or add some?• What is the impact if tests are not prioritized?

Page 20: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

20 Solution Validation & Testing

Defect Severity ClassificationAn important criterion when

judging the significance of a reported defect is the impact it is anticipated to have on the viability of the solution.

IEEE Standard 1044 defines a severity classification scheme and a variant of that scheme is shown in the workbook.

v1.01

Page 21: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

21 Solution Validation & Testing

Defect TrackingDefects must be recorded as they

are discovered. An incident report is expected to

“document any event that occurs during the testing process which requires investigation.”

v1.01

Page 22: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

22 Solution Validation & Testing

TraceabilityRequirements should be traceable

to specific test cases that can determine if the requirement has been implemented properly.

v1.01

Page 23: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

23 Solution Validation & Testing

Automated TestingThe same tests often have to be run over

and over whenever a new feature is introduced as that enhancement may introduce new defects and lead to unwanted side effects.

The process of re-running tests periodically is called regression testing.

Software testing tools and test automation robots can help address this problem by providing a more efficient and less labor intensive way to perform regression testing.

v1.01

Page 24: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

24 Solution Validation & Testing

Automated Testing ToolsMacro RecordersProgrammable Testing Tools

v1.01

Page 25: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

25 Solution Validation & Testing

Quality MetricsStoring discovered defects in a

database opens many possibilities for reporting and measuring the health of not only the testing effort, but also overall project health.

By using a defect tracking system, queries can be issued against the database to analyze the collected defect data.

Such measurements are generally referred to as metrics.

v1.01

Page 26: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

26 Solution Validation & Testing

Example of Quality Metrics

v1.01

Fatal4%

Severe11%

Serious22%

Moderate25%

Minor38%

Defects by Level of Severity

Page 27: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

27 Solution Validation & Testing

Workshop Activity

v1.01

Goal: Establish valuable quality control metrics.

Time: 10-15 minutes Format: Individually or in groups

Materials: • Whiteboard, flipchart, or paper• Quality control metrics from workbook

Instructions:

Define at least two quality metrics that you would calculate for the BoatVenture’s Corporate CRM testing effort.

What information would you need to track to be able to calculate the metrics?

How much effort is required to collect these metrics? Is the effort justifiable?

Page 28: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

28 Solution Validation & Testing

More Metrics Examples

v1.01

11/1

/01

11/3

/01

11/5

/01

11/7

/01

11/9

/01

11/1

1/01

11/1

3/01

11/1

5/01

11/1

7/01

11/1

9/01

11/2

1/01

0

5

10

15

20

25

30

35

# of New Defects Discovered

# of New Defects Discovered

Page 29: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

29 Solution Validation & Testing

Another Metrics Example

v1.01

11/1

/01

11/3

/01

11/5

/01

11/7

/01

11/9

/01

11/1

1/01

11/1

3/01

11/1

5/01

11/1

7/01

11/1

9/01

11/2

1/01

0

50

100

150

200

250

300

Defect Discovery vs. Repair

# of New Defects Discovered# Defect RepairedCumulative DiscoveredCumulative RepairedRemaining Open

Page 30: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

30 Solution Validation & Testing

Testing with Limited ResourcesBug BashesBeta TestingCrowd TestingOutsourced Testing

v1.01

Page 31: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

31 Solution Validation & Testing

SummaryIn this module we learned that:

◦ Test planning assures that the testing effort is carried out methodically and in a repeatable manner

◦ A traceability matrix links requirements to test cases and vice versa

◦ Automated testing can reduce the labor involved in managing and executing test cases

◦ Defect tracking systems are databases that store test incidents; these databases can be queried and searched

◦ Collecting quality metrics can help in assessing project health and the productivity and efficacy of the testing effort

◦ Use outsourcing, crowdsourcing, bug bashes, and beta tests to leverage others

v1.01

Page 32: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

FINAL THOUGHTS

Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute Without Written Consent of the Author.www.cathris.com · [email protected]

Page 33: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

33 Solution Validation & Testing

ObjectivesUpon completion of this chapter

you will be able to:◦Understand how all of the different

techniques relate◦Determine if the techniques covered

help address your testing challenges

v1.01

Page 34: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

34 Solution Validation & Testing

Principals of Successful TestingLet’s review and summarize the

principles of successful testing…

v1.01

Page 35: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

35 Solution Validation & Testing

Principle 1The objective of testing is to

identify defects and not prove that the solution works. ◦The successful testers works under

the assumption that the requirements are incomplete, inaccurate, and misunderstood and that the solution is therefore flawed.

v1.01

Page 36: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

36 Solution Validation & Testing

Principle 2The goal of testing is to locate

as many defects as possible in the allotted time. ◦Due to time, budget, and other

resource constraints, it is not feasible to discover all defects. The solution team and the project sponsor must agree on an acceptable level of quality.

v1.01

Page 37: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

37 Solution Validation & Testing

Principle 3Fully define the expected

outcome of each test case by creating a test case definition. ◦Define test suites aid in regression

testing and when automating the test process.

v1.01

Page 38: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

38 Solution Validation & Testing

Principle 4Testers and test designers

should be as removed from the solution implementation team as possible. ◦An external party is more likely to

define unusual and unorthodox test cases that exercise the boundary conditions and likely make fewer implicit assumptions. Above all, developers and programmers should not perform their own acceptance testing. v1.01

Page 39: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

39 Solution Validation & Testing

Principle 5Use case scenarios combined

with equivalence class partitioning define the most effective test cases. ◦Identify the basic path, alternate

paths, and exception paths as well as combinations of paths from the use cases. Identify boundary conditions and create additional test cases.

v1.01

Page 40: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

40 Solution Validation & Testing

Principle 6Track test plans, test cases,

and test results. ◦All test artifacts should be written and

tracked in a repository, ideally a test database. Defects should be tracked in a defect management system.

v1.01

Page 41: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

41 Solution Validation & Testing

Principle 7Focus testing on where

defects are most likely. ◦Most defects occur at the edges of

boundary conditions and where issues have arisen in the past. Focus testing efforts on those areas if time is limited.

v1.01

Page 42: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

42 Solution Validation & Testing

Principle 8Be mindful of side effects.

◦When updates or changes are made to a solution, check that all previous functionality still works as expected. Perform regression testing by re-running all tests if necessary.

v1.01

Page 43: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

43 Solution Validation & Testing

Principle 9Verify the requirements

before testing. ◦Test cases and test plans should be

based on defined and verified requirements. Review all requirements with stakeholders and obtain their approval.

v1.01

Page 44: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

44 Solution Validation & Testing

Principle 10Create a safe test

environment. ◦Do not run tests in the production

environment, but rather execute them in a safe test environment that mimics the actual production environment as closely as possible.

v1.01

Page 45: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

45 Solution Validation & Testing

Principle 11Assure quality throughout.

◦Testing catching many but not all mistakes in the implementation of the solution. Quality can be significantly improved by conducting static testing in the form of requirements, design, and code reviews prior to implementation.

v1.01

Page 46: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

46 Solution Validation & Testing

Workshop Activity

v1.01

Goal: Revisit challenges brainstormed on the first day.

Time: 10-15 minutes Format: Individually or in groups

Materials: • Whiteboard, flipchart, or paper• Challenges collected on the first day

Instructions:

Review the top five challenges brainstormed at the beginning of the course and for each challenge identify at least one technique or strategy learned in this course that can help you address or resolve the challenge.

List specific techniques and/or actionable steps that you can implement immediately or in the next 2-3 months.

Page 47: MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.

47 Solution Validation & Testing

And Finally…Thank you!Evaluations…

v1.01