37
Is Agile Any Better? Damon Poole 2009 Scrum and Kanban Like Chocolate and Peanut Butter Damon Poole – CTO, AccuRev

Is Agile Any Better? Damon Poole 2009 Scrum and Kanban Like Chocolate and Peanut Butter Damon Poole – CTO, AccuRev

Embed Size (px)

Citation preview

Is Agile Any Better?

Damon Poole

2009

Scrum and KanbanLike Chocolate and Peanut Butter

Damon Poole – CTO, AccuRev

Slide -2-

Kanban, Lean, and Manufacturing

“Principles of Scientific Management”, Frederick Winslow Taylor, 1911

Henry Ford – Early application of “Lean”• Interchangeable parts (1908)• Division of labor (1908)• Static assembly line (1908)• Moving assembly line (1913)

Toyoda’s Automatic Loom, 1924• “Mistake Proofing”

W. Edwards Deming in Japan in 1950• Plan, do, check, act• Systems thinking (“it’s the system, not the people”)

 Hirotaka Takeuchi and Ikujiro Nonaka describe Scrum without calling it Scrum, 1986

Joint presentation by Schwaber and Sutherland on Scrum at OOPSLA ‘95

“Scrum was first application of Lean to software” – Jeff Sutherland

Slide -3-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

Introduction to One Piece Flow

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -4-

14 “Critical Mass” Agile Practices

Continuous Integration

Continuous Integration

Whole TeamsWhole TeamsUser StoriesUser Stories“As a <persona> I want <behavior>

“As a <persona> I want <behavior>

Unit TestsUnit Tests

CollocationCollocation

Iteration ReviewIteration Review

RefactoringRefactoring

Product OwnerProduct Owner BacklogBacklog

RetrospectivesRetrospectives

??

Daily StandupDaily StandupShort IterationsShort Iterations

$$$

$

One Piece FlowOne Piece Flow

Slide -5-

Agile At a Glance

newnew reviewedreviewed

Issue Story Points Effort Remaining

State Assignment

432 User wants layout pleasing to the eye 2 reviewed -

420 User wants example templates to choose from 3 reviewed -

419 Admin wants zero installation 5 reviewed -

612 Manager wants dashboard view 5 reviewed -

599 Admin wants LDAP integration 5 reviewed -

831 Admin wants self-serve password reset 2 reviewed -

692 User wants automatic todo list generation 2 reviewed -

432 User wants easy task entry 1 reviewed -

119 User wants subscription-based e-mail notification 5 reviewed -

332 Marketing wants fancy splash screen 3 reviewed -

516 Admin wants 1-click license update 2 reviewed -

533 User wants app to be ready in 3 seconds or less 5 reviewed -

619 User wants app to work using Chrome 5 reviewed -

Slide -6-

Agile At a Glance

newnew reviewedreviewed todotodo

$$$

$

Backlog (APM)

Slide -7-

Agile At a Glance

newnew reviewedreviewed todotodo wipwip codedcoded testedtested donedone

Backlog (APM)

Iteration BurnupIteration Burnup

10/2

10/4

10/9

10/1110/1110/1510/1710/1910/2310/25

10

20

30

40

0

Sto

ry P

oin

ts

Slide -8-

Agile At a Glance

newnew reviewedreviewed todotodo wipwip codedcoded testedtested donedone prodprod

9612 as a user I want…

6921 as a user I want…

6291 as a dba I want…

2196 as an admin I…

1962 as an admin I…

1296 as a casual user I…

1269 as a dba I want…

Iteration Review

RetrospectiveRetrospective

Backlog (APM)

Slide -9-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

One Piece Flow, the Scrum/Kanban overlap

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -10-

Common Agile Problems

Testers want to test completed stories, but need stable builds with those stories to do so.

Codebase is most stable at end of iteration, hard to get and stay stable during the iteration

Identifying which change or changes broke a build

Maintaining a build which only contains done stories

Keeping story status and the codebase in sync

Slide -11-

Mini-Waterfall

1

2

3

4

1

2

3

4

5

6

7

8

5

6

7

8

9

10

11

12

9

10

11

12

1

2

3

4

1

2

3

4

5

6

7

8

5

6

7

8

9

10

11

12

9

10

11

12

Slide -12-

Dev and QA Offset by an Iteration

1

2

3

4

1

2

3

4

5

6

7

8

5

6

7

8

9

10

11

12

Slide -13-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

One Piece Flow, The Scrum/Kanban overlap

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -14-

Traditional Development is Like The Game of Telephone

Customers Product Manager

Architect Developers Test & Doc

Customers

7 mos.

Specify Design Code IntegrateWrite tests

TestDoc

Slide -15-

Agile Leverages People’s Memory and Conversations

Design Code IntegrateWrite tests

TestDoc

Specify

Customers Team Customers

1 month

days

Developer Test & Doc

Slide -16-

Iteration After Iteration

Specify Design Code IntegrateWrite tests

TestDoc

WIP limit of3 stories

Slide -17-

Continuous Integration

Continuous Integration

Specify Design Code IntegrateWrite tests

Test

Crunch Time

Doc

Big Bang

Slide -18-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

One Piece Flow, The Scrum/Kanban overlap

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -19-

$5M per lane

$11M per lane

Slide -20-

“Complete” Feature Sets

$$

ArchitectureArchitectureArchitectureArchitecture

Highest ValueHighest Value

Full FeaturedFull Featured

Future ProofFuture Proof

“Complete”“Complete”

Traditional DevelopmentTraditional

Development

Agile Development

Agile Development $$ $$ $$ $$ $$ $$ $$

•Done as a unit•Ready at the end•Feedback at the end

•Some features every iteration•Feedback every iteration•Re-plan after every iteration

AA AA AA AA AA AA AA AA AA

$$$$

$$

$$

$$

Slide -21-

Major Release Contents

Slide -22-

Working With Dependencies

Slide -23-

person days

Advanced Dependency Reduction

1228

Slide -24-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

One Piece Flow, The Scrum/Kanban overlap

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -25-

Decoupling

DoneIteration review

RetrospectiveBacklog grooming

Story point estimationIteration planning

Slide -26-

Decoupling

DoneIteration review

RetrospectiveBacklog grooming

Story point estimationIteration planning

Slide -27-

Decoupling

DoneIteration review

RetrospectiveBacklog grooming

Story point estimationIteration planning

Slide -28-

Decoupling

DoneIteration review

RetrospectiveBacklog grooming

Story point estimationIteration planning

Slide -29-

Iteration Gaps

1

1

2

2

3

3

4

4

1

1

2

2

1

1

2

2

3

3

4

4

1

1

2

2

3

3

4

4

1

1

2

2

3

3

4

4

1

1

2

2

Slide -30-

Iteration Gaps

1

1

2

2

3

3

4

4

1

1

2

2

1

1

2

2

3

3

4

4

1

1

2

2

3

3

4

4

1

1

2

2

3

3

4

4

1

1

2

2

Slide -31-

Continuous Flow Based on Work

Schedule limitor story point limit

WIP limit of3 stories or

X story points

done

Slide -32-

Agenda

Quick Review of Scrum and Agile Values

Common Problems

One Piece Flow, The Scrum/Kanban overlap

The Simplest Thing That Could Possibly Work

Going With The Flow (aka Letting Go of Iterations)

Scaling One Piece Flow

Q&A

Slide -33-

main

ws

ws

ws

ws

ws

ws

Continuous Integration on Mainline Only

MinutesHours

Lots of small changes in the form of user stories.

CI

Slide -34-

A

B

ws

ws

ws

ws

ws

ws

Multiple Stages of Continuous Integration

MinutesHours

CI

CIint

CI

Daily

Slide -35-

A

B

ws

ws

ws

ws

ws

ws

Multiple Stages of Continuous Integration

MinutesHours

CI

CIint

CI

Daily

staging

CI

done

Slide -36-

Conclusion

Many Lean and Kanban concepts and practices can be applied to Scrum• Decoupling

• Lean thinking

• One piece flow

• WIP limits

• Eliminating waste

Slide -37-

Resources/Q&A

Damon Poole ([email protected])

http://www.accurev.com/agile-resource-center.html

Free 188pg book, Do It Yourself Agilehttp://damonpoole.blogspot.com

Continuous Integration, Paul M. Duvall

The Toyota Way – Jeffrey Liker

Extreme Programming Explained - 2nd Edition, Kent Beck

Agile Software Development with Scrum, Ken Schwaber & Mike Beedle

Lean Software Development, Mary Poppendieck and Tom Poppendieck