Top Banner
Want Higher Quality Software from Your Agile Team? Cross-Functional Peer Review Works Mark Hammer
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cross functional peer review preso 10-01-2013

Want Higher Quality Software from Your Agile Team?

Cross-Functional Peer Review Works

Mark Hammer

Page 2: Cross functional peer review preso 10-01-2013

When you create or receive a test plan, who sees it – and how?

Page 3: Cross functional peer review preso 10-01-2013

Product Mgmt Development Testing

User stories Code Test Plans

Page 4: Cross functional peer review preso 10-01-2013

Product Mgmt Development

Testing

User storiesCode

Test Plans

Page 5: Cross functional peer review preso 10-01-2013

Cross-Functional Peer Review

Page 6: Cross functional peer review preso 10-01-2013

Requirements

Design

Architecture

Discussion

Review

Review

Page 7: Cross functional peer review preso 10-01-2013

Requirements

Design

Architecture

Code

Discussion

Review

Review

N/A

Where most of the bugs come from

Page 8: Cross functional peer review preso 10-01-2013

Hapless Developer

Reviewers

Version Control

Page 9: Cross functional peer review preso 10-01-2013

Types of Code Review

Over-the-Shoulder Email Pair Programming Formal Inspection Meetings Tool

Page 10: Cross functional peer review preso 10-01-2013

Largest Peer Code Review Study

• Objectives: – lightweight vs. formal inspections– What constitutes an effective review?

• 10-month case study at Cisco• Cisco MeetingPlace product, teleconferencing solution• 3.2 million lines of code• 2500 reviews• 50 developers

Page 11: Cross functional peer review preso 10-01-2013

60-90 minutes max

Time (minutes)

De

fect

s F

oun

d

Page 12: Cross functional peer review preso 10-01-2013

Go slow: 200-500 LOC/hour

Defect Density vs. Inspection Rate

0

25

50

75

100

125

150

0 200 400 600 800 1000 1200 1400Review Inspection Rate (LOC/hour)

Def

ect

Den

sity

(d

efec

ts/k

LO

C)

Page 13: Cross functional peer review preso 10-01-2013

Not too much: 200-400 LOCDefect Density vs. LOC

0

50

100

150

200

0 200 400 600 800 1000

LOC under Review

De

fec

t D

ens

ity

(d

efec

ts/k

LO

C)

Page 14: Cross functional peer review preso 10-01-2013
Page 15: Cross functional peer review preso 10-01-2013
Page 16: Cross functional peer review preso 10-01-2013

Industry Metrics

Page 17: Cross functional peer review preso 10-01-2013

Measure Industry Average

High Performance Teams

Net Promoter Score 20% > 70%

% defects of total injected found by customer 15% < 2%

% effort spent in finding and fixing defects 50% < 10%

% effort for post-release support 30% < 5%

Unit test code coverage Varies > 80%

Post release defect density 7.5 defects/KLOC

< 0.5 defects/KLOC

Page 18: Cross functional peer review preso 10-01-2013

Measure Industry Average

High Performance Teams

Net Promoter Score 20% > 70%

% defects of total injected found by customer 15% < 2%

% effort spent in finding and fixing defects 50% < 10%

% effort for post-release support 30% < 5%

Unit test code coverage Varies > 80%

Post release defect density 7.5 defects/KLOC

< 0.5 defects/KLOC

Bugs found in development are 8-12X less expensive to fix than those found in testing phase

And 30-100X less expensive than bugs that reach customers

Page 19: Cross functional peer review preso 10-01-2013

Case Study: Large National Insurance Company• 2011: 350 developers• 2013: 650 team members• User stories are shared in Word format with entire

team• Design documents are shared in Powerpoint with

entire team• Code is shared with entire team• Test cases are shared in Excel format with entire team

Page 20: Cross functional peer review preso 10-01-2013

Benefits: Cross-Functional Peer Review• Every member of the extended development team

knows what’s happening• Problems with user stories, code, and test plans are

found faster• Developers are forced to write readable code• Optimization methods/tricks/productive programs

spread faster• Teams can iterate from story to code to test plan• It's Agile• It’s fun

Page 21: Cross functional peer review preso 10-01-2013

Product Mgmt Development

Testing

User storiesCode

Test Plans

Page 22: Cross functional peer review preso 10-01-2013

“The simple fact of knowing your work will be reviewed by others means you’ll do it better.”

Page 23: Cross functional peer review preso 10-01-2013

Mark Hammer

Questions?Comments?