Transcript
Page 1: On the Care and Feeding of Feedback Cycles

On the Care and Feeding of Feedback Cycles Elisabeth Hendrickson

Blog: testobsessed.com

Twitter: @testobsessed

Slides Last updated November 1, 2013

copyright © 2013 Elisabeth Hendrickson

Available from: http://www.slideshare.net/ehendrickson/presentations

Page 2: On the Care and Feeding of Feedback Cycles

Who Am I?

Author Recovering Consultant

Director, Quality Engineering

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 3: On the Care and Feeding of Feedback Cycles

What Do We Need Feedback On?

Implementation

Actual Need

Intentions

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 4: On the Care and Feeding of Feedback Cycles

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Feedback Enables Steering

Observe

Orient

Decide

Act OODA

Plan

Do

Check

Act PDCA

Build

Measure Learn

Lean Startup

Page 5: On the Care and Feeding of Feedback Cycles

The Problem with Long Feedback Latency

Reference: Peter Senge, Fifth Discipline

Page 6: On the Care and Feeding of Feedback Cycles

A Traditional Long Feedback Cycle (and why no one does this anymore)

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Release

First opportunity to see if intentions match implementation

18 month dev cycle

First opportunity to see if implementation matches need

Implement

Test

Design

Analyze

Page 7: On the Care and Feeding of Feedback Cycles

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Speculation Buildup Sp

ecul

atio

n

Analyze Design Implement Stabilize Big Bang Release

Page 8: On the Care and Feeding of Feedback Cycles

Every. Single. Time.

Empirical Evidence

speculation!

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 9: On the Care and Feeding of Feedback Cycles

Time Value of Information

A piece of information today is worth more

than that same information tomorrow

Page 10: On the Care and Feeding of Feedback Cycles

Agile eliminates speculation buildup…

Spec

ulat

ion

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 11: On the Care and Feeding of Feedback Cycles

When “Done” isn’t Really Done

Spec

ulat

ion

Iterations…

Stabilize

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 12: On the Care and Feeding of Feedback Cycles

Example of Feedback Loops

Automated Unit Tests

Automated System Tests

CI build w/ tests

Statistical analysis of production metrics

Manual scripted regression testing

Exploring

Customer Opinion

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 13: On the Care and Feeding of Feedback Cycles

A Recipe for Fast-and-Complete Feedback

•  Automatically check that the emerging system behaves as expected with every new change.

•  Explore both to discover other risks and to verify that the checks are sufficient.

•  Release early and often.

+ +

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 14: On the Care and Feeding of Feedback Cycles

Tightening a Feedback Cycle

spec or story Source

Control code

test

deploy

Observe results Generate ideas

Page 15: On the Care and Feeding of Feedback Cycles

Work in Small Pieces

story

Page 16: On the Care and Feeding of Feedback Cycles

Integrate and Test Locally

code and test

Red

Green Clean

TDD

Source Control

Page 17: On the Care and Feeding of Feedback Cycles

Automate to Eliminate Wait States

test

deploy

Long Running Automated Tests?

•  Remove duplication

•  Drive tests to lowest level

•  Run in parallel

Page 18: On the Care and Feeding of Feedback Cycles

Tighten Feedback Loops (Example)

Code Review

Check in on Private

Branch

Unit Test

Merge Unit Test System

Test

System Test in

Local Env

Check into Master

Run local tests

CI Runs All Tests Pair

BEFORE: days - weeks

AFTER: mins - hours

Elis

abet

h H

endr

icks

on @

test

obse

ssed

Page 19: On the Care and Feeding of Feedback Cycles

Make Feedback Visible

Page 20: On the Care and Feeding of Feedback Cycles

Further Reading


Recommended