Usability Benchmark und Aktivitäts-Analyse mit Eye Tracking von Mobile Augme...
EInführung in Lean Forecasting
1. Lean Forecasting
@ Limited WIP Society Hamburg
13. September 2016
Susanne Bartel
Agile Coach, Kanban Coach & Trainer
http://flow.hamburg
2. Inhalt
• Teil 1
• Einführung: Was ist Lean Forecasting / Beyond
Estimation?
• Kleine Statistik-Auffrischung :)
• Teil 2
• Lego Flow Game (und kurze Pause)
• Teil 3
• Konkrete Fragestellungen - Theorie und Praxis
1. Wie lange dauert die Umsetzung von
Anforderungen?
2. Wann ist das erwartete Projektende?
3. Weiterführende Fragen
6. Wie machen das die Wetterfrösche?
Basierend auf Beobachtungen und
historischen Daten,
mit Modellen die die örtlichen Bedingungen
wiedergeben,
sagen sie potentielle Wetterereignisse vorher
…. und die wahrscheinlichsten seht ihr im
Wetterbericht.
8. Häufig schwache Korrelation zwischen
Story Points und Aufwand oder Durchlaufzeit
Hohe Aufwände für Schätzungen
und Planungen
Vielfach durch Studien belegt, wie
schlecht wir im Schätzen in der Software-
Industrie sind.
12. Lean / „Probabilistic“ Forecasting
Projektion historischer Daten in die Zukunft
zur Beantwortung planerischer Fragen
Unter Beachtung von Wahrscheinlichkeiten
Unter Nutzung von Modellen
„Klassische“ Planung:Schätzen zukünftiger Ereignisse
17. Monte Carlo
Simulation
• Ein stochastisches
Verfahren
• Sehr häufig durchgeführte
Zufallsexperimente
• Häufig genutzt zur
Nachbildung komplexer
Prozesse
23. Schritt 4
Vergleicht euer MIN
und MAX mit den
tatsächlichen Werten
anhand der Würfel.
Beobachtungen?
24. Vorhersagewahr-
scheinlichkeit
abhängig von
Probenzahl
(Keine Duplikate, gleich
verteilt, zufällige Proben)
Anzahl vorhandener
Proben
Wahrscheinlichkeit, dass nächste
Probe innerhalb des Bereichs
liegt
3 50 %
4 67 %
5 75 %
6 80 %
7 83 %
8 86 %
9 88 %
10 89 %
11 90 %
12 91 %
13 92 %
14 92 %
15 93 %
16 93 %
17 94 %
18 94 %
19 94 %
20 95 %
Die benötigte Stichprobengröße
ist deutlich kleiner als wir denken
Wahrscheinlichkeit = 1-
1
k −1
⎛
⎝⎜
⎞
⎠⎟ * 100
25. German Tanks
(oder auch iPhones)
Monat
Statistische
Schätzung
Geheimdienst-
Schätzung
Deutsche
Aufzeichnungen
Juni 1940 169 1.000 122
Juni 1941 244 1.550 271
August 1942 327 1.550 342
26. –Troy Magennis
„Wenn ein Messwert sich über die Zeit
ändert oder bei jeder Messung anders ist,
ist es eine Verteilung.“
VERTEILUNG
(DISTRIBUTION)
31. Durchlaufzeit, „Lead Time“
• In Kanban: Die Zeitdauer, in der eine Anforderung
von der ersten limitierten Spalte („Zusagepunkt“)
bis zur letzten Spalte „wandert“
• Lego Flow: Beginn „Liefern“ bis zur erfolgreichen
Abnahme
• Differenz zwischen 2 Zeitstempeln
• In Software-Entwicklungs-Teams typischerweise
Start der Implementierung bis „Done“ oder
Release
37. Weibull
Lead Time Verteilungen
Typische Verteilungen in SW-Projekten (Magennis)
siehe auch Lead Time Forecasting Cards von Alexei Zheglov
38. Mode:
an was sich
Leute
gut erinnern
(Achtung!
üblicherweise
nur 18-28%
Wahrscheinlichkeit!)
Median:
zur kontinuierlichen
Überprüfung des
Vorhersage-Modells
Control Limit:
für SLA’s
80% percentile:
4 von 5 Items
dauern max. so lange
-> Planung
Durchschnitt:
üblicherweise
über dem Median
(bis zu 50% kleiner
in Operations)
Weibull
Lead Time Verteilungen
Typische Verteilungen in SW-Projekten (Magennis)
siehe auch Lead Time Forecasting Cards von Alexei Zheglov
39. Voraussetzungen
• Stabiles System - wir glauben die
Verteilung der Anforderungen bleibt in
etwa stabil
• In der Verteilung gibt es nur eine
„Spitze“ (Modus, engl. mode)
40. Praktische
Tipps
Durchlaufzeit = Differenz zweier
Zeitstempel
Auf physischen Boards:
Datumsstempel benutzen
Excel: Histogramme über den
Umweg von Klassen bauen:
Intervalle bilden, ZÄHLENWENN()
45. Recap: Durchlaufzeiten-Prognose
• Erlaubt die Prognose auf z.B. Story- oder Task-
Ebene
• Vorteile:
• Leicht zu sammelnde Messwerte
• Nutzt historische Daten (komplett oder Stichproben)
• Folgt bekannten Verteilungsmustern
• Nutzen: Zusagen für einzelne Anforderungen.
Termingerechter Start der Implementierung.
Analyse (z.B. Ausreißer etc.). Basis für weitere
Berechnungen.
49. Praktische
Tipps
Trick: Durchsatz aus z.B. Jira:
=KALENDERWOCHE(DateClosed)
dann pivotieren oder Zählenwenn()
Troy Magennis’ Sheet für Monte
Carlo Throughput Forecasting:
http://focusedobjective.com/free-
tools-resources/
53. Wieviel Kapazität für welchen
Arbeitstyp?
Wie hoch ist der Durchsatz?
Auswirkungen von
Verbesserungen der
Durchlaufzeit
Wie viele Teams brauchen wir?
54. Was wir benötigen
1. Lead Time Verteilung:
• Ist bekannt
• Single Mode - in Klassen unterteilt (s.u.)
• Wir glauben die Verteilung bleibt stabil
2. Anforderungen sind identifiziert und
klassifiziert
55. • Langfristig stabile Durchschnittswerte!
• Voraussetzungen:
• Durchschnittliche Output-Rate = durchschnittliche Input-Rate
• Alle angefangene Arbeit wird schließlich beendet und verlässt das System
• Die Menge angefangener Arbeit sollte zu Beginn und Ende des gewählten
Zeitintervalls etwa gleich sein
• Die durchschnittliche Menge angefangener Arbeit (WIP) ist stabil
• In der Berechnung müssen konsistente Einheiten genutzt werden
• siehe auch „Little’s Flaw“ (Daniel Vacanti)
Little’s Law
Lieferrate =
WIP
Durchlaufzeit
throughput =
WIP
lead time
57. Das klingt ja cool, und nu?
• Mess-Strecke für die Lead Time definieren
• Datenschätze heben! (Durchsatz, Lead Times). All
you need is:
• Eintrittsdatum
• Austrittsdatum
• Fertiggestellte Menge je Zeiteinheit (z.B. Wochen)
• Excel anschmeißen, auch mit Troy’s Tools
• …oder Actionable Agile
58. Brauche ich dazu ein Kanban-System?
• Jein. All diese Techniken können auch von
„klassischen“ oder Scrum-Teams angewendet
werden. Siehe jedoch Voraussetzungen.
• Story Points in mathematischen Gleichungen ?!
• Aber: Ein Kanban-System kann helfen, die
Vorhersagegenauigkeit (predictability) zu verbessern:
• Verschiedene Arbeitstypen / Serviceklassen, um mehrere
Modes zu vermeiden
• Ist Hilfsmittel für kontinuierliche Verbesserung
(Zuverlässigkeit, Durchsatz, etc.)
59. –George E. P. Box
„Essentially, all models are wrong, but
some are useful“
60. Kontinuierliche Anpassung, aktives Steuern
Prognose
erstellen
Modell aufstellen /
anpassen
Kontinuierliche Überprüfung der Gültigkeit des Modells mit
Anpassung der Vorhersage— ermöglicht aktives Steuern!
Überprüfung der
Hypothesen
historische
Daten
63. Euer Ziel
• Setzt so viele Lego-Figuren wie
möglich anhand der Anleitung
zusammen und liefert sie!
• In der gegebenen Reihenfolge
• Arbeitet als Team zusammen
65. Analysieren
1. Finde die richtige Tür.
2. Nimm eine Karteikarte.
3. Schreibe die Nummer der Tür auf die
Karte.
4. Lege die Tür auf die Karte, Instruktionen
oben.
71. Prüfen
1. Überprüfe dass die Figur
• GENAU dem Bild entspricht
• ROBUST ist
2. Wenn ja, dann akzeptiere
• Notiere die Zeit!
• LIEFERE zum Marktplatz!
3. Wenn nicht, zurück an die entsprechende
Station
73. Manager
1. Auf die Zeit achten
2. Auf die Prozesseinhaltung achten
3. Daten sammeln
1. Wie viele Figuren je Status in progress?
2. Zählen und alle 30s aufschreiben
74. Manager
00:30 01:00 01:30 2:00 2:30 3:00 3:30 4:00 4:30 5:00 5:30 6:00
Analysis
2 1
Supply
3 2
Build
5 6
Accept
1 2
Done
2 4
Alle 30s zählen je
Arbeitsstation
„Done“ sollte niemals
weniger werden, muss
ansteigen
75. Flussbasierte Arbeit
• Besprecht euch als Team.
• Markiert eure Arbeitsstationen
• Ihr arbeitet kontinuierlich, wir unterbrechen
gelegentlich für Systemverbesserungen
(Inspect & Adapt)
• Start!
5 min Timebox
76. Debrief Lego Flow
• Beobachtungen? Überraschungen?
• Seid ihr „in den Fluss“ gekommen? Wann?
• Begriffe:
• Durchlaufzeit (lead time)
• WIP (Work In Progress)
• Durchsatz (throughput)
81. Credits und Referenzen
• Basiert auf der Arbeit von Troy Magennis, David J. Anderson, Alexei
Zheglov, and Dan Brown in diesem Bereich. Siehe auch deren
Blogs.
• German Tanks: http://www.spiegel.de/wissenschaft/mensch/
rechentrick-der-alliierten-wie-seriennummern-die-nazi-industrie-
verrieten-a-728211.html
• Für mehr:
• Twitter: #noestimates
• noestimatesbook.com
• Blogs of the above
• Limited WIP Society
82. Bilder
• Würfel: https://www.flickr.com/photos/dskley/6196133034
• fliegende Würfel: https://www.flickr.com/photos/dskley/6195620885
• Pause: <a href="https://www.flickr.com/photos/finklez/3059185823"
title="Pause - השהיה by Eran Finkle, on Flickr"><img src="https://
farm4.staticflickr.com/3190/3059185823_ce8570bdd2_s.jpg" width="75"
height="75" alt="Pause - /<>“השהיהa>
• Wall: https://www.flickr.com/photos/dg_pics/3937990893/
• Umbrella: https://www.flickr.com/photos/dskley/9666364180
• Fragezeichen: https://www.flickr.com/photos/eleaf/2536358399
• Mind the gap: https://www.flickr.com/photos/simone_brunozzi/
2643200238/
• Easy: https://www.flickr.com/photos/catharticflux/2484317019/
• Monkey bento: https://www.flickr.com/photos/buzzymelibee/8598689804