Transcript
Page 1: Prinzipien agiler Entwicklung

1

Prinzipien agiler Entwicklung

Scrum, Kanban und der ganze Rest

Johannes Stiehler

Page 2: Prinzipien agiler Entwicklung

Die Ursprünge

Toyota Production SystemLean Manufacturing

2

Page 3: Prinzipien agiler Entwicklung

Kontinuierliche Verbesserung (Kai-Zen)

• Prozessorientierung

• Kundenorientierung

• Qualitätsorientierung

• Kritikorientierung

• Standardisierung

3

Page 4: Prinzipien agiler Entwicklung

Kai-Zen Checkliste

• Muda: Verschwendung (8V-Regel)

• Muri: Überlastung

• Mura: Unregelmäßigkeit in den Prozessen

4

Page 5: Prinzipien agiler Entwicklung

Kai-Zen: Acht Arten der Verschwendung (Muda)

• Überproduktion • überhöhte Lagerhaltung • überflüssigen Transport • Wartezeit • Herstellung fehlerhafter Teile • unnötige Bewegung • ungünstiger Herstellungsprozess / überflüssige Features • nicht oder falsch genutztes Talent der Mitarbeiter

5

Page 6: Prinzipien agiler Entwicklung

Verschwendung in Software-Projekten

• unnötige Features ohne belegbaren Marktwert

• detaillierte Spezifikation für weit zukünftige Entwicklungen

• Features, die vor Release gestoppt werden

• Bugs, die an QA weitergegeben werden

• mangelnde Automatisierung, manuelle Deployment-Prozesse

• keine Einbeziehung des Dev-Teams in die QA, keine Einbeziehung des QA-Teams in die Spezifikation etc.

6

Page 7: Prinzipien agiler Entwicklung

Der Weg zum perfekten Prozess

PLAN

Verbesserungspotentiale erkennen

DO

Implementierung evtl. im kleinen Maßstab

STUDY

Resultate überprüfen

ADJUST

Diskrepanz zwischen Plan und Realität feststellen

7

Copyright: ideenplanet GmbH

Page 8: Prinzipien agiler Entwicklung

8

Theory of Constraints

1. Identifiziere den Engpass2. Laste den Engpass voll

aus3. Ordne alles der

Auslastungsentscheidung unter

4. Behebe den Engpass5. Bei Schritt 1 erneut

beginnen

Eliyahu M. Goldratt

Copyright: Marc CECCHETTI - Fotolia

Page 9: Prinzipien agiler Entwicklung

Ergebnis: Just in time / Pull Prozess

• Spätere Prozessschritte „ziehen“ Ergebnisse aus früheren • Lagerhaltung wird vermieden • Engpässe werden kontinuierlich eliminiert • Nur was verkauft wurde, wird produziert

9

Page 10: Prinzipien agiler Entwicklung

Das agile Manifesto

• Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan

10

Page 11: Prinzipien agiler Entwicklung

–MIT Sloan

„Agile firms grow revenue 37% faster. Agile firms generate 30% higher profits.“

11

Page 12: Prinzipien agiler Entwicklung

12

Agile Softwareentwicklung

Scrum, Kanban, XP…

Pending Analysis Development Test DeployIn

ProgressDone In

ProgressDone

Page 13: Prinzipien agiler Entwicklung

Kai-Zen fürs Produkt: Iterative Entwicklung

Inkrementelle Mona Lisa

13

Copyright: ideenplanet GmbH und Maria Bell - Fotolia

Page 14: Prinzipien agiler Entwicklung

Kai-Zen fürs Produkt: Iterative Entwicklung

Iterative Mona Lisa

14

Copyright: ideenplanet GmbH und Maria Bell - Fotolia

Page 15: Prinzipien agiler Entwicklung

Kai-Zen fürs Produkt: Iterative Entwicklung

Inkrementell-iterative Mona Lisa

15

Copyright: ideenplanet GmbH und Maria Bell - Fotolia

Page 16: Prinzipien agiler Entwicklung

Build –– Measure –– Learn

16

Page 17: Prinzipien agiler Entwicklung

Voraussetzung und Ziel: Hochwertige Software

Anforderungen

• änderungsfreundlich

• wartungsfreundlich

• ohne technische Schuld

• selbstdokumentierend

• fehlerarm

17

Praktiken

• test-driven development

• code reviews / pair programming

• „clean code“

• „simple design“

Page 18: Prinzipien agiler Entwicklung

Technische Schuld18

0

25

50

75

100

gesetzter Termin

Initiale Schätzung

Page 19: Prinzipien agiler Entwicklung

Technische Schuld19

0

25

50

75

100

gesetzter Termin Projektion

Initiale Schätzung Realistischer

Durchsatz

Page 20: Prinzipien agiler Entwicklung

Technische Schuld20

0

25

50

75

100

gesetzter Termin Projektion

„Der Termin ist fix.“

Technische Schuld

Page 21: Prinzipien agiler Entwicklung

Technische Schuld21

0

25

50

75

100

1. Release 2. Release

Technische Schuld wächst

Page 22: Prinzipien agiler Entwicklung

Prozessrollen (Scrum Team)

Product Owner (Main Customer) Verantwortlich für die Produktdefinition und den Produkterfolg

Scrum Master Verantwortlich für die Prozesskonformität und das Beseitigen von Hindernissen

Development Team Verantwortlich für das Veröffentlichen neuer Features

22

Page 23: Prinzipien agiler Entwicklung

23

Cross-functional teams Collective Code Ownership

Page 24: Prinzipien agiler Entwicklung

24

Scrum und Kanban Agile Vorgehensmodelle

Copyright: Alison Bowden - Fotolia

Page 25: Prinzipien agiler Entwicklung

Kurze Einführung in Scrum

Bitte klicken: https://prezi.com/bywn-h7cfqmx/scrum/

25

Page 26: Prinzipien agiler Entwicklung

Scrum vs. Kanban

• definierte Rollen • cross-functional Team • Schätzen • WIP limitiert durch

Zeitrahmen • Sprint ist read-only • optimaler Durchsatz

26

• Rollen frei definierbar • evtl. mehrere Teams • Messen • WIP limitiert durch Slot-

Größe • Backlog veränderbar • optimale Flexibilität

Page 27: Prinzipien agiler Entwicklung

Zusammenfassung: Agiles Vorgehen

• Qualitativ hochwertige Software in kleinen Produktinkrementen

• Selbstorganisierende Teams, klare Verantwortlichkeiten • Unsicherheit und Wandel als Prozesskonstante • Pull-Ansätze • Kai-Zen

27

Page 28: Prinzipien agiler Entwicklung

Vielen Dank für Ihre Aufmerksamkeit

[email protected]

28


Recommended