32
Lean Development = Übertunter Motor in der Entwicklung? Matthias Bohlen [email protected] @mbohlende http://www.mbohlen.de

Lean Development = Überdrehter Motor in der Entwicklung?

Embed Size (px)

DESCRIPTION

In letzter Zeit schwappt die “Lean”-Welle aus der Fertigung in die Softwareentwicklung herüber. Begriffe wie Kanban, WIP-Limit, Lead Time, Varianz, Durchsatz kommen auch bei uns Entwicklern und unseren Managern in Mode. Heißt das, wir messen, kontrollieren und takten unsere Arbeit wie im Zeitraffer? Es wird Zeit, sich von gängigen Missverständnissen zu trennen und auf dem Teppich zu bleiben.

Citation preview

Page 1: Lean Development = Überdrehter Motor in der Entwicklung?

Lean Development = Übertunter Motor in der Entwicklung?

Matthias [email protected]

@mbohlendehttp://www.mbohlen.de

Page 2: Lean Development = Überdrehter Motor in der Entwicklung?

Matthias Bohlen : Coach für effektive Produktentwicklung

Werthaltiges Produkt für den KundenHohe Motivation und Produktivität der TeamsGeringe Fluktuation der MitarbeiterEntlastung für Executives in der EntwicklungMit gleichem Einsatz mehr erreichenFreude an der Arbeit haben

2

"Matthias ist ein genialer Team- und Management-flüsterer. Das Team hier gehört zu den angenehmsten Arbeitsumge-bungen, die es gibt."

Page 3: Lean Development = Überdrehter Motor in der Entwicklung?

Agile - der Stand der Dinge

• Gestern

XP ist jetzt der Alltag, richtig?

3

• Heute

Scrum ist soeben Mainstreamgeworden

• Morgen

Lean und Kanban kommen gerade zur Tür herein

Page 4: Lean Development = Überdrehter Motor in der Entwicklung?

Das Pendel der Naivität schwingt• 1995 Software-

Entwicklung ist eine Kunst und nicht formali-sierbar (XP, TDD)

4

• 2003 Wir formalisieren sie eben doch! (Architektur, MDA, software factories)

• 2008 Es klappt nicht, also ist Entwicklung doch eine Kunst (Software Craftsmanship)

• 2011 Wir formalisieren jetzt doch wieder, indem wir messen und reagieren (Lean/Kanban für Naive)

Page 5: Lean Development = Überdrehter Motor in der Entwicklung?

Lean in der Fertigung

5

1850

1900

1950

2000

Eli Whitney austauschbare Teile

Frederick Taylor Standardisierte Arbeit, "Taylorismus"

Henry Ford Fließband, Fertigungsstrategie

Taiichi Ohno, Shigeo Shingo Toyota Production System

W. Edwards Deming Qualitätsmanagement

Page 6: Lean Development = Überdrehter Motor in der Entwicklung?

Das Ford Modell T

6Ein Beispiel für Massenproduktion.

Page 7: Lean Development = Überdrehter Motor in der Entwicklung?

Lean in der Entwicklung

7

1990

2010

David AndersonMary Poppendieck

David Joyce

Don Reinertsen

...und viele andere!

Lean SoftwareDevelopment

Kanban

Managing the Design Factory

Kanban-Implementierungbei der BBC

Page 8: Lean Development = Überdrehter Motor in der Entwicklung?

Lean-Denkprinzipien1. Eliminiere Verschwendung2. Verbessere Lernprozesse3. Verzögere Entscheidungen4. Liefere schnell5. Baue Integrität ein6. Ermächtige das Team7. Sieh immer das Ganze!

Nach Mary Poppendieck

Page 9: Lean Development = Überdrehter Motor in der Entwicklung?

Das Modell hinter KanbanFünf Kerneigenschaften

• Visualisiere den Workflow• Limitiere angefangene Arbeit (WIP)• Messe und manage den Fluss• Mache Prozessrichtlinien explizit• Benutze Modelle*, um Möglichkeiten zur

Verbesserung zu erkennen

* Modelle wie z.B. ToC = Theory of Constraints

Page 10: Lean Development = Überdrehter Motor in der Entwicklung?

Warnung: Naive Implementierungen

10

Page 11: Lean Development = Überdrehter Motor in der Entwicklung?

Warnung: Naive Implementierungen

• Es tauchen die ersten naiven Implementierungen von Lean/Kanban auf

• Zunächst durchaus korrekt und intelligent

• nach einigen Monaten absurd

11

Page 12: Lean Development = Überdrehter Motor in der Entwicklung?

Beispiel: Waterfall-ban

12

Ein großes Fachkonzept

...das Testteam!

Ha, das fertige Produkt ist da!

Monate langsammelt man, und dann:

zerlegt man in

en bloc geht das an...

Kanban-Entwicklungsteam

die gibt man an ein...

Features

Fehler meldet man dann am Schluss an das geduldige...

Page 13: Lean Development = Überdrehter Motor in der Entwicklung?

und währenddessen schreibt man...

13

das nächste große Fachkonzept!

Desaster-R

ezept!

Page 14: Lean Development = Überdrehter Motor in der Entwicklung?

Wie konnte es so weit kommen?

• Management stellte anfänglich keine Akzeptanztester zur Verfügung

• Entwicklungsteam arbeitete weiter• Niemand hat gesehen, dass das auch bis

zum Ende des ersten Releases so bleiben würde

• Entwicklungsteam gab auf und benannte aus lauter Verzweiflung die letzte Spalte der Kanban-Tafel um (von "done" auf "ready for acceptance test") 14

Page 15: Lean Development = Überdrehter Motor in der Entwicklung?

Was hätte man tun können?

• Sobald klar war, dass die letzte Spalte nicht mehr "done" heißt, hätte sie ein WIP-Limit bekommen müssen.

• Das WIP-Limit hätte die Chance zur kulturellen Veränderung gebracht.

• Am besten: Reaktion auf Erreichen des WIP-Limits sofort bei Start des Projektes mit dem Management vereinbaren.

15

Selected Elaboration Development Acceptance Test Done!Internal Review

Ready for acc.test2 6 2

Page 16: Lean Development = Überdrehter Motor in der Entwicklung?

Weiter aus dem Wasserfall...

• Konzepte-Schreiber: Konzepte verkleinern• Tester: Früher einsetzen, kleinere

Portionen testen

• Ergebnis: Das Gesamtsystem würde gewinnen, weil schnelleres Feedback die Kosten senkt und die Qualität steigert.

16

Page 17: Lean Development = Überdrehter Motor in der Entwicklung?

Warum nicht?

• Auf große Konzepte verzichten

• Gleich mit Feature-Listen starten

17

Page 18: Lean Development = Überdrehter Motor in der Entwicklung?

Das System definiert die Performance

18

95% der Performance einer Organisation geht auf ihr System zurück. Nur 5% kann man auf die

Individuen zurückführen.

W. Edwards Deming:"The 95/5 rule".

Page 19: Lean Development = Überdrehter Motor in der Entwicklung?

System

• Eine Sammlung von Elementen, die untereinander in Beziehung stehen und miteinander wechselwirken.

• Beispiel: Eine Firma ist ein System aus Menschen, Maschinen, Information, Wissen, Beziehungen, Vorschriften, Prozessen, Geld, usw.

19

Page 20: Lean Development = Überdrehter Motor in der Entwicklung?

Beispiel: Auf großem Fuße• Kunde: "Der ist aber schön! Haben

Sie den auch in Größe 47?"• Verkäuferin: "Nein, wir werden zwar

oft gefragt, aber wir haben das Modell nur bis Größe 46."

• Kunde: "Wie kommt's?"• Verkäuferin: "Weiß ich leider nicht,

das macht unser Einkauf!"

• Das Individuum würde ja gerne, aber das System lässt es nicht zu.

20

Page 21: Lean Development = Überdrehter Motor in der Entwicklung?

Warum ist Veränderung so schwer?

21

• Wie viel Arbeit kommt herein?• Wie viele Leute habe ich?• Wie lange brauchen die Leute pro

Aufgabe?• Können wir den Termin halten?• Aktivität bedeutet Kosten• Also: Je weniger Zeit pro Aktivität,

desto weniger Kosten.Veraltete

Denkweise

!

Page 22: Lean Development = Überdrehter Motor in der Entwicklung?

Traditionelles Management = Massenproduktion

• Arbeit standardisieren• Aktivitätszeiten reduzieren• Verschwendung

austreiben

• Lean ist scheinbar die Antwort auf bekannte Probleme!

22

Veraltete

Maßnahmen!

Page 23: Lean Development = Überdrehter Motor in der Entwicklung?

2011Neue Fragen stellen

• Wie viel Wert haben wir für den Kunden geschaffen?

• Können wir schon (wieder) releasen?• Sind wir ein System, das Variabilität

absorbieren kann?• Können wir auch bei Änderung der

Rahmenbedingungen erfolgreich bleiben?

23

Page 24: Lean Development = Überdrehter Motor in der Entwicklung?

2011Neue Denkweisen und

Maßnahmen• Die Kosten liegen nicht in der Aktivität, sondern in

der Verknüpfung zwischen den Aktivitäten (Flow-Gedanke).

• Geh zum Gemba (Ort des Geschehens)• Studiere, ob/wie die Arbeit arbeitet• Konzentriere Dich auf die Beziehungen der

Systemelemente, dann folgen die Finanzen automatisch

• Probleme im System identifizieren und lösen - das erzeugt finanziellen Erfolg als Nebenprodukt

24

Page 25: Lean Development = Überdrehter Motor in der Entwicklung?

Flow

• Kontinuierlicher Fluss von Wert

25

• Ausbalancierter Zustand der menschlichen Psyche

• Hohes RoI und angenehmes Arbeiten

Page 26: Lean Development = Überdrehter Motor in der Entwicklung?

Verlässlichkeit

• Kunde häufig in die Arbeit einbeziehen• Geteilte Verantwortung für die Ergebnisse

• Trennung in "Kunde hier" und "Dienstleister da" eher kontraproduktiv

26

Page 27: Lean Development = Überdrehter Motor in der Entwicklung?

Unsicherheit

• Produktentwicklung ist immer unsicher

• Wer Sicherheit will, muss auf Innovation verzichten

• Deshalb: Erwarte Unsicherheit und passe Dein Handeln entsprechend an!

27

Page 28: Lean Development = Überdrehter Motor in der Entwicklung?

Kreativität

• Menschen erzeugen den Wert in der Produktentwicklung

• Bereite eine Umgebung für sie, in der sie einen Unterschied machen können. 28

Page 29: Lean Development = Überdrehter Motor in der Entwicklung?

Performance

• Gemeinsame Zuständigkeit für die Ergebnisse

• Geteilte Verantwortung dafür, dass das Team effektiv ist

• Das stärkt die Team-Performance.

29

Page 30: Lean Development = Überdrehter Motor in der Entwicklung?

Wirksam und verlässlich

• Mit Hilfe von Strategien, Prozessen und Praktiken, die der Situation angepasst sind

• Keine vorgefertigten Ansätze aus der Packung.

30

Page 31: Lean Development = Überdrehter Motor in der Entwicklung?

Wir sind alle Gärtner

• Manager züchten Teams.• Teams züchten Software.

31

Page 32: Lean Development = Überdrehter Motor in der Entwicklung?

Ich helfe Ihnen dabei!

• Matthias Bohlen• Coach für effektive Produktentwicklung• [email protected]• http://www.mbohlen.de/• +49 170 772 8545