Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?

Post on 29-Nov-2014

2,544 views 1 download

description

Die agile Familie bekommt immer neue Kinder. Wer kennt sich da noch aus? Sollen wir mit Scrum mutig ins Gedränge gehen, uns lieber mit Lean verschlanken oder ganz sanft mit Kanban-Karten spielen? Und was ist mit den Extremprogrammierern? In diesem Vortrag zeige ich, wie man die agilen Methoden auseinanderhält und wie Sie persönlich das zusammenstellen können, was für Ihr Projekt am besten geeignet ist.

transcript

Matthias Bohlen

Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?

Methodiken sorgfältig auswählen

Agile Methodik auswählen

WIR VERSUCHEN ETWAS NEUES –ES HEIßT AGILES PROGRAMMIEREN.

DAS BEDEUTET: KEINE PLANUNG UND DOKU MEHR. EINFACH CODE SCHREIBEN UND DANN JAMMERN !

SCHÖN, DASS ES EINEN NAMEN HAT.

DAS WAR IHR TRAINING.

Aus weiter Ferne betrachtet

VeränderungsmethodikKanban

Philosophie mit DenkwerkzeugenLean

ArbeitsmethodikXP

ManagementmethodikScrum

…im wesentlichen eine……ist…

Sehen wir einmal genauer hin…

SCRUM

Scrum-Ablauf

Scrum 3-4-3

•Product owner•ScrumMaster•Team

Rollen

•Sprint planning•Sprint review•Sprint retrospective•Daily scrum meeting

Zeremonien

•Product backlog•Sprint backlog•Burndown chart

Artefakte

Danke an Mike Cohn für dieseso schön einfache Folie!

Scrum Rollen

"die Arbeit"Team

Management, Werte und Praktiken, Hindernisbeseitigung, Teamproduktivität, Kooperation, Schutz des Teams vor Störungen

Scrum Master

Produktfeatures, Release-Planung, Return on Investment, Priorisierung, Abnahme von Ergebnissen

Product Owner

ist zuständig für…

Scrum Zeremonien

Team führt vor, was es umgesetzt hatSprint Review

Team betrachtet, wie es arbeitet und ob das so bleiben soll

Retrospektive

Team trifft sich täglich, um sich abzustimmen

Daily Scrum

Team wählt Features aus demBacklog, die es umzusetzen verspricht

Sprintplanungist dazu gedacht:

Der typische Deming*-Zyklus: Plan, do, check, act !

benannt nach William Edwards Deming, Qualitätsmanagement-Guru

Scrum Artefakte

Bericht über noch offeneArbeitsmenge über die Zeit

BurndownChart

Liste umzusetzender Anforderungen (jetzt, für den aktuellen Sprint)

Sprint Backlog

Liste priorisierter Anforderungen(überhaupt, für das Projekt)

ProductBacklog

enthält…

Sprint Burndown ChartS

tund

en

Dank an Mike Cohn für dieses Chart!

Nebenwirkungen von ScrumScrum ist ein revolutionärer Ansatz:

Mitarbeiterfluktuation steigt auf etwa 20%3. bis 9. Monat wird besonders schwierigKonflikte treten aufArbeit des Produktmanagements wird schwierigerEntwicklungsabteilung tritt in QualitätsverantwortungRichtlinien für Leistungsprämien müssen geändert werdenArbeitsplatzbeschreibungen ändern sichManagement muss dienen statt kommandierenManagementfluktuation tritt aufZusätzliche Leute einstellen ist keine Lösung

nach Ken Schwaber: "The Enterprise and Scrum"

XP

XP 2-2-2

•Customer•Programmer

Rollen

•Planning Game•Standup meeting

Zeremonien

•User Story•Code

Artefakte

Zwölf XP Praktiken• Planungsspiel• Kurze Releases• Metapher• Einfaches Design• Testgetriebene

Entwicklung• Refactoring

• Pair Programming• Gemeinsame

Verantwortlichkeit• Kontinuierliche Integration• Haltbare Geschwindigkeit• Kunde vor Ort• Programmierstandards

Das hier sagt, wie man die Arbeit macht, nicht nur, wie man sie managt!

XP Praktiken als Landkarte

Quelle: www.extremeprogramming.org

LEAN

Lean und seine Historie

• Wirtschaft im Boom

• Große Stückzahlen mit geringer Varianz

• Basierend auf Taylors Prinzipien des "wissenschaftlichen Managements"

• Wirtschaft in Schwierigkeiten

• Kleine Stückzahlen mit großer Varianz als wirtschaftliche Notwendigkeit

• Basierend auf Zusammenarbeit, Teamarbeit und Herausforderung

Lean-PhilosophieWert – Beschreibe den vom Kunden gewünschten Wert

Eliminiere Verschwendung – Findeheraus, wie jedes Produkt diesen Wert bringt und hinterfrage alle überflüssigen Schritte, die nötig sind, dasProdukt bereitzustellen

Kontinuierlicher Fluss – Bringe das Produktdazu, kontiuierlich durch die verbleibendenProduktionsschritte hindurchzufließen

Pull – Bringe Menschen dazu, sich Arbeit heranzuziehenanstatt sie zugewiesen zu bekommen

Strebe nach Perfektion – Manage alles so, dass Zeit, Anzahl Schritte und Informationsmenge, die benötigt werden, um dem Kunden zu dienen, stetigabnehmen

Lean Software Development

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

Sieben Quellen der Verschwendung1. Angefangene Arbeit (WIP = work in progress)

2. Zu viele Prozesse3. Zu viele Features4. Ständiger Aufgabenwechsel5. Warten6. Bewegung (Menschen, Artefakte)7. Fehler

Lean Denkwerkzeuge (1)

• Verschwendung sehen• Wertstromlandkarte

Verschwendung

• Denkweise in Optionen• Letzter verantwortbarer

Moment• Entscheidungsfindung

Spät entscheiden

• Feedback• Iterationen• Synchronisation• Mengenbasierte Entwicklung

Lernprozesse

• Pull-Systeme• Warteschlangentheorie• Kosten von Verzögerungen

Schnell liefern

Lean Denkwerkzeuge (2)

• Entschlossenheit• Motivation• Führung• Expertise

Team stärken

• Wahrnehmbare Integrität• Konzeptionelle Integrität• Refactoring• Testen

Integrität einbauen

• Messungen / Messgrößen• Verträge / Vertrauen

Das Ganze sehen

KANBAN

(so schreibt man das aber nicht…)

Was ist ein kanban(pull) System?

Mit freundlicher Genehmigung von David Anderson

Klein oder groß?

"kanban", klein geschrieben= ein visuelles Zeichen, das für Arbeit stehtz.B. ein Kärtchen oder Stück Plastik, etc.

"Kanban", groß geschrieben= Name einer Verbesserungsmethodik

Mit freundlicher Genehmigung von David Anderson

Kanban-Tafel und tägliches Standup Meeting bringen ein Gefühl von Dringlichkeit und Team-Zusammenarbeit

• Mehr persönlicheVerantwortung

• Bessere visuelle Steuerung• Ermöglicht mehr

Selbstorganisation

• Weniger Management-Überwachung

• Verbesserte Produktivität• Spontane Qualitätszirkel und

häufige Kaizen-Events

Mit freundlicher Genehmigung von David Anderson

WIP-Limits kreieren ein kanban pull System &ein Whiteboard visualisiert den Fluss

Pull

Flow – von "Engineering Ready" bis "Release Ready"

WIP Limit – reguliertdie Arbeit in jedemZustand des Prozesses

Mit freundlicher Genehmigung von David Anderson

Kanban-Tafel-Designmit Genehmigung von Olav Maassen QNH

DevReady In Prog Done

BuildReady

Test ReleaseReady

StageDoneIn Prog

3

DevelopmentAnalysis

24 25 4

InputQueue

Prod.

Kanban-Tafel Simulationmit Genehmigung von Olav Maassen QNH

5 4 3

Flow

DevReady In Prog Done

BuildReady

Test ReleaseReady

StageDoneIn Prog

DevelopmentAnalysis

24 2

InputQueue

Prod.

Das Modell hinter Kanban

Fünf Kerneigenschaften

• Visualisiere den Workflow• Limitiere angefangene Arbeit• 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

Warum WIP limitieren?Das Gesetz von Little:

Zykluszeit = Anzahl angefangener Dinge / durchschnittliche Fertigstellungsrate

Also weniger gleichzeitig tunoder alles schneller fertigstellen

Welches, glauben Sie, ist einfacher?

Das Modell hinter Kanban (2)Weitere, emergente* Eigenschaften

• Priorisierung, Entwicklung und Release entkoppeln• Arbeit nach Verzögerungskosten priorisieren• Wert durch Serviceklassifizierung optimieren• Kapazitäten anhand des Risikos aufteilen• Zur Prozessverbesserung ermutigen• Quantitativ managen• Wie ein Virus verbreiten

* emergere (lat.) = auftauchen, erscheinen

Kanban: Mehr Informationen

VERGLEICH

MethodenvergleichScrum Lean Kanban Extreme Programming

Rollen PO, SM, Team keine Vorgabe existierende Coach, Customer, DeveloperZeremonien Release Planning, Sprint

Planning, Daily Scrum, Sprint Review (Demo), Retrospective

keine Vorgabe Daily Standup, Monthly Operations Review

Planning Game

Artefakte Product Backlog, Sprint Backlog, Burndown Chart, Impediment List

keine Vorgabe Service Level Agreement, Cumulative Flow Diagram

Code, Tests

Praktiken keine Vorgabe Eliminate waste, amplify learning, decide as late as possible, deliver as fast as possible, empower the team, build integrity in, see the whole

Visualize Workflow,Limit Work-in-Progress,Measure & Manage Flow,Make Process Policies Explicit,Use Models to Recognize Improvement Opportunities

Planungsspiel, Kurze Releasezyklen, Metapher, Einfaches Design, Testen, Refactoring, Pair Programming, Gemeinsame Verantwortlichkeit, Fortlaufende Integration, Haltbare Geschwindigkeit, Kunde vor Ort, Programmierstandards

Messgrößen Velocity, Burndown Lead time, WIP Lead time, WIP, DDP, cost of delay Velocity

Change-Ansatz revolutionär evolutionär evolutionär revolutionär

Mittel zur Veränderung

Verpflichtung keine Vorgabe Untätigkeit bei Erreichen des WIP-Limits Verpflichtung

Werte Verpflichtung, Fokussierung, Offenheit, Respekt, Mut

keine Vorgabe keine Vorgabe Kommunikation, Einfachheit, Feedback, Mut

Iterationen vorgeschrieben keine Vorgabe keine Vorgabe vorgeschrieben

Rhythmus (Cadence)

fest: Input cadence = Cycle time = Output cadence

keine Vorgabe existierende fest: Input cadence = Cycle time = Output cadence

Teams cross-functional keine Vorgabe cross-functional oder spezialisiert cross functional

Priorisierung von Anforderungen

vorgeschrieben keine Vorgabe durch Auffüllen leerer Plätze in der Eingabe-Queue

vorgeschrieben

ScrumManagement-Methodik – keine Aussagen über

SW-Entwicklung oder Engineering-PraktikenWirkt durch Commitment"Tritt in den Hintern""Schocktherapie"

XPSoftware-EntwicklungsmethodikViele Aussagen über Engineering-PraktikenWirkt durch Commitment und Stolz auf die

Handwerkskunst

LeanProzessverbesserungsmethodikPrinzipienWaste eliminierenJust in TimeWirkt durch Denkwerkzeuge

KanbanChange Management MethodikWirkt mit der "Kraft des Vakuums"Arbeitet gern mit quantitativen MethodenPull SystemStartet beim Ist-Zustand (viva la evoluciòn!)

Fragen?Gerne jetzt…

…oder später:Matthias Bohlenmbohlen@mbohlen.dehttp://www.mbohlen.de/+49 170 772 8545