30
11K @ahab1972 © Andreas Hägglund 11K Andreas Hägglund I run projects and make organizations more efficient Get Started With Lean Software Development 11K slideshare.net/andreashagglund @ahab1972 andreashagglund [email protected]

Get Started with Lean Software Development by Andreas Hägglund

Embed Size (px)

Citation preview

Page 1: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Andreas Hägglund I run projects and make organizations more efficient

Get Started With Lean Software Development

11K

slideshare.net/andreashagglund

@ahab1972

andreashagglund

[email protected]

Page 2: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Get started with Lean Software Development

platinum sponsor

gold sponsor

silver sponsors

bronze sponsors

11K

Page 3: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K © Andreas Hägglund 11K

Lean & Agile Origins

1990 1996 2003

Page 4: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Lean Management

Lean is about quickly deliver customer value

from concept to cash, by minimizing waste.

Shigeo Shingo: “It’s only the last turn of

the bolt that tightens it – the rest is just

movement”

Page 5: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Optimize the Whole

Principles of Lean Management

1. Create Long Term Business Value

2. Continuous Learning / Improvements

3. Reduce Waste

4. Increase Flow

5. Respect

Respect

Re

du

ce

Wa

ste

Inc

rea

se

Flo

w

Co

nti

no

us

Imp

rove

me

ne

t

Value

“A bad system will beat a

good person every time”

- W. Edwards Deming

Page 6: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

1. Eliminate Waste

2. Amplify Learning

3. Decide as Late as Possible

4. Deliver as Fast as Possible

5. Empower the Team

6. Build Integrity In

7. See the Whole

Lean Software Development

Page 7: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

1 – Eliminate Waste (uselessness)

1. Defects

2. Overproduction – Extra Features

3. Transportation - Handoffs

4. Waiting - Delays

5. Inventory - WIP

6. Motion – Task Switching

7. Processing – Unneeded Processes (8. Unused Talent/Skill)

11K

Page 8: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Don’t build features

that nobody needs right

now

Don’t write more spec than you can code

Don’t write more code than you can test

Don’t test more code than you

can deploy

4 Simple Ways of Reducing Waste

Page 9: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Page 10: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

1. Visualize the Workflow

2. Limit Work-in-Progress (WIP)

3. Measure and Manage Flow

4. Make Process Policies Explicit

5. Use Models to Evaluate Improvement

Opportunities

“Pull” Reduces WIP & Delays

Page 11: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Continous Improvement

Waiting

Extra Features

Wrong Features

Paperwork

Bugs

Work In Progress

Task Switching

Page 12: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

See the waste...

Suggest feature

Specify feature

Develop feature

Test feature

Deploy feature

Use/pay feature

Page 13: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

... And eliminate it!

See the waste...

Suggest feature

Specify feature

Develop feature

Test feature

Deploy feature

Use/pay feature

Page 14: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

... And eliminate it!

See the waste...

Suggest feature

Specify feature

Develop feature

Test feature

Deploy feature

Use/pay feature

1 h

ou

r

120 h

ou

rs

16

ho

urs

24 h

ou

rs

16

ho

urs

40

ho

urs

4 h

ou

rs

24

ho

urs

1 h

ou

r

24

ho

urs

Page 15: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

... And eliminate it!

But also minimize unevenness and overburden

See the waste...

Suggest feature

Specify feature

Develop feature

Test feature

Deploy feature

Use/pay feature

1 h

ou

r

120 h

ou

rs

16

ho

urs

24 h

ou

rs

16

ho

urs

40

ho

urs

4 h

ou

rs

24

ho

urs

1 h

ou

r

24

ho

urs

38 hours

232 hours

----------------

16% Efficiency

Page 16: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

2 - Amplify Learning

Page 17: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Information Radiators Visualizes Work

Page 18: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

If you could have only one information radiator;

1. What would it show?

2. Where would you put it?

3. When would you study it?

Radiators Increases learnings

Todo Dev Test Done

Page 19: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Do you need to set the entire architecture upfront?

Do you need to decide on all the requirements?

What do you really, really need to decide up front?

3 - Decide As Late As Possible

Page 20: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

1 person doing

Task Switching

4 – Deliver As Fast As Possible

4 people focusing

on 4 different things

4 people focusing

on 1 thing

Page 21: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Work in Progress Through-Put

Page 22: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Through-Put ROI

Time

Cashflow

1st Release

Inv

estm

en

t

Pa

yb

ack

Profit

Loss

Page 23: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

5 - Empower the Team

Page 24: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

No One Ever Washes a Rented Car

Page 25: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

6 - Build Integrity In

0% Flaws

0% Defects

0% Decay

Simplicity

Fast Feedback

Refactoring

Testing

Page 26: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

7 - See The Whole

5 Why

Page 27: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K © Andreas Hägglund 11K

How To Get Started

Personal Level

1. Do the Gemba Walk

2. Limit Personal WIP

3. Visualize Work

4. Ask the 5 Why

5. Take time to reflect on

your process

Team Level

1. Map the value stream

2. Eliminate delays

3. Eliminate bottlenecks

4. Limit team WIP

5. Get your own car!

Page 28: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

1. Map your project stream, from idea to usage

2. List work time + idle time

3. Calculate Cycle Efficiency

4. Identify ways of increasing efficiency

Value Stream Mapping

Suggest feature

Specify feature

Develop feature

Test feature

Deploy feature

Use/pay feature

1 h

ou

r

12

0 h

ou

rs

16

ho

urs

24

ho

urs

16

ho

urs

40

ho

urs

4 h

ou

rs

24 h

ou

rs

1 h

ou

r

24

ho

urs

38 hours

232 hours

----------------

16% Efficiency

Page 29: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Thank you

11K

slideshare.net/andreashagglund

@ahab1972

andreashagglund

[email protected]

Page 30: Get Started with Lean Software Development by Andreas Hägglund

11K

@ahab1972 © Andreas Hägglund 11K

Andon – Signaling System

Kanban – Sign/card

Jidoka – Autonomation (detecting

abnormalities)

Kaizen - (continuous) change for

better

Muda – Uselessness (7 wastes)

Mura – Uneveness/irregularity

Muri – Overburden

Genba – The real place

Lean Dictionary