jump to first page (c) 1998, arun lakhotia 1 quality assurance: reviews and walkthroughs arun...

16
Jump to first page (C) 1998, Arun La khotia 1 Quality Assurance: Reviews and Walkthrough s Arun Lakhotia University of Southwestern Louisiana Po Box 44330 Lafayette, LA 70504, USA [email protected]

Upload: amelia-lawrence

Post on 03-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

1

Quality Assurance: Reviews and Walkthroughs

Arun Lakhotia

University of Southwestern Louisiana

Po Box 44330

Lafayette, LA 70504, USA

[email protected]

Page 2: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

2

Reference

Steve McConnell, Code Complete, Microsoft Press, 1993. See Chapter 24 and parts of

Chapter 23

Keywords Quality attributes Faults, failures Review Walkthrough

Page 3: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

3

Terminology

Failure Externally observable incorrect

behavior Fault (bug, defect)

Internal cause of the external failure

Fix Change the internals or

environment to remove the failure

Page 4: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

4

Software quality characteristics

Correctness Usability Efficiency Reliability Integrity Adaptability Robustness Accuracy Maintainability Flexibility Portability Reusability

Readability Testability Understandabi

lity

Page 5: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

5

Quality trade-offs

Correctness Functioning exactly to

specifications Adaptability

Used in an environment or application for which it is not designed

Robustness Functioning in the presence of

invalid inputs

Increasing one may decrease the other

Page 6: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

6

Quality improvement techniques Dynamic -- by executing

Unit testing Functional testing

Static -- without executing Inspection Code walkthroughs Extern audit Code reading Desk check Proof of correctness

Organizational Written quality objectives Development process Explicit QA activity Change control process

Page 7: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

7

Effectiveness of QA techniques

Percent of total defects found in the life of a system by a technique

QA step Mean Desk checking (Design) - 35% Informal review - 40% Formal inspection (Design) - 55% Formal inspection (Code) - 60% Prototyping - 65% Desk-checking code - 40% Unit testing - 25% Function testing - 35% Integration testing - 45% Field testing - 50%

Page 8: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

8

Cost of finding defects

In the beginning static techniques are more expensive

Overtime static techniques are cheaper and find higher number of bugs

Code reading found 80% more faults per hour

Page 9: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

9

Effectiveness of QA techniques

No single technique finds greater than 65% (mean) errors

Unit testing - only 25% Combination of techniques

needed Combining any two techniques

may increase the detection rate two fold

Static and dynamic processes find different types of defects

Dynamic techniques find about 60%

Page 10: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

10

Cost of fixing defects

How defects are found and the cost of fixing them.

Inspection Finding and fixing in one step 3 hours per defect

Testing Find failure Find case of failure (bug) and fix Two steps 12 hours per defect

Page 11: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

11

Static techniques

Also called Reviews Formal Inspection Code walkthroughs Code reading

Page 12: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

12

Formal inspection

“Formal” Well defined procedure Well defined roles Well defined expectations Well defined output

Page 13: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

13

Formal Inspection: Roles

Moderator Author Reviewers Scribe but not Management

The roles of moderator, author, and reviewer should be played by different people.

Page 14: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

14

Formal Inspection: Process Planning

Author gives material to moderator Moderator identifies reviewers, provides

them Material Checklist

Overiew: Author gives overview Preparation:

Reviewer work independently and review material

Prepare a list of problems Based on checklist

Inspection meeting Go over the material at a reasonable

pace Identify defects Do not fix Scribe takes notes

Report; Rework; Followup

Page 15: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

15

Code walkthroughs

Author identifies possible reviewers Gives them material

Reviewers Read the code to find defects Give feedback in a meeting Emphasize on defect detection,

not removal

Page 16: Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box 44330

Jump to first page

(C) 1998, Arun Lakhotia

16

Code Reading

Author gives code to code readers

Readers read it independently prepare a list of problems

identified Give the list to the developer

in meeting or outside meeting