50
Intro to product development flow Yuval Yeret http://www.flickr.com/photos/yuvalyeret/265568342/in/set-72157594323037021 /

Introduction to product development flow

Embed Size (px)

DESCRIPTION

This is the presentation for a pre-LSSC11 webinar on the topic of Lean Product Development flow. I’m going to introduce an approach to mixing Lean and Agile in order to achieve end to end agility. This is a major focus of my work in the recent 2 years with AgileSparks clients. Register for the Webinar which is on 16/3 at http://www.netobjectives.com/free-seminar-schedule/lssc11-session-4-intro-lean-product-development-flow-mar-2011-webinar This is also the topic I will talk about in my Agile Israel 2011 session “Techniques and experiences for managing end to end Releases/Projects/Programs using Kanban and Flow” http://agilesparks.com/KanbanandFlowLecture

Citation preview

Page 1: Introduction to product development flow

Intro to product development flow

Yuval Yeret

http://www.flickr.com/photos/yuvalyeret/265568342/in/set-72157594323037021/

Page 2: Introduction to product development flow

www.linkedin.com/in/yuvalyeret Blogging @ http://yuvalyeret.com

Presentations at http://www.slideshare.net/yyeret/

 Agile Professionals in Israel - I'm there - Are you?  

@yuvalyeret

Yuval [email protected]

m

Http://lssc11.leanssc.org

Page 3: Introduction to product development flow

What we will cover in this webinar

• Why we need to think about flow – common dysfunctions of development processes

• Flow as part of a recipe for success– How to enable flow– How to see flow

• Common questions/concerns about flow

• Flow and Iterations/Scrum• What to do tomorrow with flow

Page 4: Introduction to product development flow

So how does an agile process look compared to traditional?

www.slideshare.net/wnazzaro/agile-it-and-the-business-community/

Page 5: Introduction to product development flow

The Waterfall approach

Requirements Design Code Testing

Requirements Design Code Testing

Requirements Design Code Testing

Requirements Design Code Testing

Requirements Design Code Testing

Requirements Design Code Testing

Time

DONE

Page 6: Introduction to product development flow

Ideal world Feature-Driven

R D C TTime

R D C TR D C T

R D C TR D C T

R D C TDONE

Page 7: Introduction to product development flow

Hard

en

ing

But what we typically see is...

R D C TTime

R D C TR D C T

R D C TR D C T

R D C TDONE

Coding Done

QA GAP

Feature Freeze

Page 8: Introduction to product development flow

What this causes

Time

DONECoding Done

QA GAP

Feature Freeze

Page 9: Introduction to product development flow

Many features in parallel

R D C T Time

R D C TR D C T

DONER D C TR D C T

R D C TPara

llel -

WIP

Time to Complete

Ideal Flow WaterfallRequiremen

tsDesign Code Testing

Requirements

Design Code Testing

Requirements

Design Code Testing

Requirements

Design Code Testing

Requirements

Design Code Testing

Requirements

Design Code Testing

Time

DONE

R D C T Time

R D C TR D C T

R D C TR D C T

R D C T DONE

Page 10: Introduction to product development flow

Hard

en

ing

Scrumgate

Req

uire

men

ts

D C TTime

D C TD C T

D C TD C T

D C TDONE

Feature Freeze

Page 11: Introduction to product development flow

Big Features

R D C TTime

DONE

R D C T

R D C T

R D C TTime

R D C TR D C T

R D C TR D C T

R D C T DONE

Page 12: Introduction to product development flow

What about multiple teams?

R T1 T2 T

Time

R T1 T2 T

R T1 T2 T

R T1 T2 T

R T1 T2 T

R T1 T2 T

DONE

Coding Done

T1

T2

T

Team1

Team2

Integration Team

Page 13: Introduction to product development flow

A scrum example

Features in progress? 3 versus 1

Page 14: Introduction to product development flow

So now that we see the pain...

Page 15: Introduction to product development flow

What do we do?

• David Anderson’s recipe for success: – Focus on Quality

–Reduce Work-in-Progress, Deliver Often

–Balance Demand against Throughput

– Prioritize – Reduce Variability and Improve the Process

Page 16: Introduction to product development flow

First impediment to flow – big Features/Batches

BIG Features

17

Page 17: Introduction to product development flow

That are stuck for long in each stage

18

Page 18: Introduction to product development flow

Move from rocks to pebbles

19

Page 19: Introduction to product development flow

Moving to small units of work is NOT enough

• If our policy/behavior is early start of everything

• “Working on many things in parallel will ensure high utilization”

• “Everything is important”• “Each engineer has his own baby

feature, they don’t want to collaborate, and there is a high collaboration overhead”

• Batch size is still HIGH20

Page 20: Introduction to product development flow

1 2 3 4 5 6 7 8 9 100

20

40

60

80

100

120

Burndown / Burnup

Time

How do we Visualize the work status in more depth?

1 2 3 4 5 6 7 8 9 100

20

40

60

80

100

120

TODO Work in

Process (WIP)

Done

21

Page 21: Introduction to product development flow

The Cumulative Flow Diagram

• Introduced in Lean Product Development by Don Reinertsen and David Anderson

• Visualize where the Features/Stories are in the workflow across time

1 2 3 4 5 6 7 8 9 100

20

40

60

80

100

120

TODO Work in

Process (WIP)

Done

22

Page 22: Introduction to product development flow

TO DO IN PROGRESS DONE

Elad

Inbar

Elad

Mushon

Mushon

Inbar

InbarMushon

Elad

TO DO IN PROGRESS DONE

1 8 1

TO DO

IN PROGRESS DONE

1 8 1

How to do a CFD

23

Page 23: Introduction to product development flow

How to do a CFD

1 2 3 4 5 6 7 8 9 100

20

40

60

80

100

120

24

Page 24: Introduction to product development flow

What can teams learn from Cumulative Flow?

Real DoneBurnup

Total ScopeDev Burnup

Done Burnup

25

Work in

Process (WIP)

Average Cycle Time

Page 25: Introduction to product development flow

Work in Process

• High Work-in-process leads to longest lead times to feedback and higher costs

• Low work-in-process greatly reduces lead times to feedback• Results in more effective and safer projects

Page 26: Introduction to product development flow

How can I take this to my context?

Page 27: Introduction to product development flow

Visualize and manage the flow on your work tracking system

• HP QualityCenter• Microsoft TFS• IBM Lotus Notes• JIRA• Etc..

Page 28: Introduction to product development flow

If you don’t currently have a work tracking system – you can use a kanban system

29

AgileZen (RallyDev)

LeanKit Kanban

Page 29: Introduction to product development flow

A Kanban board – Not a Must for Flow

But will SIGNIFICANTLY improve it

Page 30: Introduction to product development flow

Common questions/concerns about flow

Page 31: Introduction to product development flow

Isn’t this a waterfall?

Page 32: Introduction to product development flow

But wouldn’t the bottleneck slow everything?

Identify

Exploit

Subordinate toElevate

Prevent Inertia

Page 33: Introduction to product development flow

Hard

en

ing

An example - focus on quality

R D C TTime

R D C TR D C T

R D C TR D C T

R D C TDONE

Coding Done

Feature Freeze

Identify

Exploit

Subordinate toElevate

Prevent Inertia

Page 34: Introduction to product development flow

How do I commit?

Page 35: Introduction to product development flow

How does flow relate to iterations/scrum?

Page 36: Introduction to product development flow

How is this different than Scrum?

• Applicability?

• Scope?

• Prescription?

• The interesting question – how they can complement each other

Flow/Kanban

Scrum

Page 37: Introduction to product development flow

IterationsFlow

Iterations

Flow

Iterations

Flow

DONEDONE DONE

Mashups

38

READY

Page 38: Introduction to product development flow

Project/Component Kanban Board

READY

! DONEFlow

Opportunity Team & Project

ManagerScrum Teams

From my talk at #LSSC10... – Amdocs Case Study

Page 39: Introduction to product development flow

Initiative/Program Kanban Board

Page 40: Introduction to product development flow

Scrum/Kanban - The way WIP limits/PULL work

To do Ongoing

Done :o)

B

C

A

D

FLOW

To do Ongoing

Done :o)

B

C

A

D

FLOW

2

Scrum board Kanban board

WIP limited per unit of time(iteration)

WIP limited per workflow state

Source: Henrik Kniberg

Page 41: Introduction to product development flow

approaches to change

Perfo

rman

ce

Time

Revolution (Scrum)

Evolution

(Kanban)

(kanban the tool)

42

Page 42: Introduction to product development flow

Recommendations for scrummers looking at flow

• If scrum works for you – don’t touch it!

• If you see dysfunctions consider how flow can help you

• Look at flow as a way to scale effectively

Page 43: Introduction to product development flow

Main attractiveness of flow

• Finally, an agile-based approach that easily supports:–Mainstream/pragmatic organizations – wanting to improve, avoiding a revolution

–Large/Complex environments where feature teams are not enough

Page 44: Introduction to product development flow

Take aways

Visualize YOUR workflowLimit work in process:

Stop starting, start finishingIdentify bottlenecks/constraints and think how to improve performanceThis applies to all LAYERS (including the META one)A pragmatic tip - Think how to introduce Flow to YOUR work tracking system

Page 45: Introduction to product development flow

It is not crucial to nail down the accurate optimized WIP Limit / Batch Size / Sprint length

½ the WIP, ½ the batch size, can be a good start... Based on Reinertsen

Product Development Flow

Page 46: Introduction to product development flow

Go do some reading...

Page 47: Introduction to product development flow

Questions?

Page 48: Introduction to product development flow

Summary

Limit work in process:Stop starting, start

finishing

49

Page 49: Introduction to product development flow

www.linkedin.com/in/yuvalyeret Blogging @ http://yuvalyeret.com

Presentations at http://www.slideshare.net/yyeret/

 Agile Professionals in Israel - I'm there - Are you?  

@yuvalyeret

Yuval [email protected]

m

Http://lssc11.leanssc.org

Page 50: Introduction to product development flow

Images Attribution

• http://www.flickr.com/photos/yuvalyeret/265568342/in/set-72157594323037021/• www.slideshare.net/wnazzaro/agile-it-and-the-business-community