Agile Projektentwicklung erfüllt oft nicht die hoch gesteckten Erwartungen aller Beteiligten. Story-Maps und Impact-Maps unterstützen einen wichtigen Mechanismus, der agile Projekte erfolgreich macht und der häufig außer Acht gelassen wird. Der Workshop gibt eine Einführung in das Konzept von Impact Maps und Story Maps, und zeigt deren praktische Anwendung an Hand konkreter Projektbeispiele.
3. Warum agile Software Entwicklung?
Product Backlog
„Satisfy the customer
through early and continuous
delivery of valuable software.“
Effiziente Teams
Vorhersehbarkeit für Business
Feingranularer Business Value
Kontinuierliche Qualität
Zuverlässige Geschwindigkeit
7
4. Effizient das Falsche liefern
Water-Scrum-Fall
Funktionen und
Zeitplan fixiert
R1
8
R2
R3
5. Software soll Probleme lösen
Successful problem solving requires
finding the right solution
to the right problem.
Russell Ackoff, 1974
We fail more often,
because we solve the wrong problem
than because we get the
wrong solution to the right problem.
9
6. TechTalk auf einen Blick
•
•
•
•
•
Agile Software Entwicklung
Beratung und Umsetzung (Nearshoring)
Standorte: Zürich, Wien, Budapest
Ca. 50 Mitarbeiter
Gegründet: 1993
TechTalk office, Vienna/Austria
COPYRIGHT, TECHTALK - WWW.TECHTALK.CH
13. Was macht User Stories agil?
• Benutzeranforderungen/-wünsche
• Einheit für Priorisierung/Planung
Vermitteln: “Nicht jetzt” – anstatt “Nein”
• Mögliche Optionen eines Systems
• Erinnerung an eine Diskussion
• Verzögerung von Details bis zum letzten
verantwortbaren Moment
17
14. Anforderungsebenen
Warum?
Annahmen
Impact Mapping Feature Injection
Goals
Impacts
1. Hunt the value:
Look at Outputs
Deliverables
Story Mapping
2. Inject features:
From Outputs to
Inputs
User Activities
Epics
User Stories
Acceptance
Criteria
Specification-By-Example
3. Find examples:
Try to break the
model
Examples
Code
Wie?
Spezifikation
18
Einfacher vorab zu definieren
Schwerer vorab zu definieren
17. Impact Mapping
“Impact Mapping helps us plan better!
It is collaborative, visual and fast.”
From: Gojko Adzic: www.impactmapping.org
21
Based on:
Ingrid Domingues,
Mijo Balic
Effect Managing IT
18. Increase yearly revenue by 3%
Impact Maps
Keep market share in
blockbuster concerts
Goal
Mobile phone
shop users
Actors
Reduce
bounce
rate
Impacts
Deliverables
Introduce mobile platform for
concert tickets web shop
Static info on
blockbuster concerts
22
Order
blockbuster
tickets
Reduce call-center load
from blockbuster concerts
Customers calling
to order by phone
Hang-up
to order
online
Announcement
for mobile order
possibility
Order one particular
blockbuster concert
19. Influence vs. Control
Goal
Reduce accidents
by 50% at cross-roads
Actors
Car drivers
Impacts
Deliverables
pay more
attention
put up
stop sign
drive
slower
put up
speed limit
transform to
round-about
23
Influence
Control
20. Scaling agile principles
Goal
Actors
Impacts
Influence
Define roadmap of goals
Test Goals and Impacts
as early and as often as possible
• Scale: what to measure
• Meter: how to measure
• Range: Benchmark, Constraint, Target
Control
Deliverables
24
Smaller deliverable slices to production
Easier to parallelize
Across systems and departments
Prioritized with business sponsors
21. Definition von Zielen
• Scale: What to measure
• (Alternative scales to consider)
• Meter: How to measure
Reduce call-center load
from blockbuster concerts
% of blockbuster concert
tickets ordered
through call center
• (Different options how to meter)
shop system
• Levels
• Benchmark: Current Situation
• Constraint: Break-Even for
Investment, Minimum Acceptable
Result
• Target: Desired Result
• (Further possible levels: Trend, Fail,
Record, Survival)
Tom Gilb: Competitive Engineering, PLANGUAGE
25
60%
<40%
<20%
23. OnConcert – Live Tickets online
OnlineWerbeumsatz
erhöhen
Mobile
Device
Anwender
Bleiben auf
Website
Kommen öfter
auf die
Website
Mobile
Website
Nächste
Konzerte in
Bern
34
Beginnen
Website zu
nutzen
Klicken öfter
auf Banner
Werbung
24. OnConcert – nach 3 Monaten
Bounce Rate reduziert
von 90% auf 30%
OnlineWerbeumsatz
erhöhen
Mobile
Device
Anwender
Bleiben auf
Website
Kommen öfter
auf die
Website
Mobile
Website
Nächste
Konzerte in
Bern
35
Beginnen
Website zu
nutzen
Klicken öfter
auf Banner
Werbung
27. Story Maps
• Nach Jeff Patton
• Benutzerweg
durch das System
• Überblick über
Backlog
• Unterstützen
Zusammenarbeit
und
Release Planung
39
28. Mobiles Gerät
Benutzer
Story Map Struktur
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Bestellmöglichkeit
für ein Konzert
Priorität
Erfährt von
Konzert
40
Bleibt auf
Website
Kauft
sobald
verfügbar
Wartet auf
Konzert
Besucht
Konzert
Liste
nächster
Konzerte
Bestellung
auf
Rechnung
Neuigkeiten
zum Konzert
Papierticket
drucken
Zusätzliche
Infos zu
Künstler
Bezahlung
mit
Kreditkarte
Ticket über
NFC
validieren
Wahrscheinliche
Reihenfolge von
Ereignissen
29. Priorisierung von
Scheiben
Mobiles Gerät
Benutzer
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Bleibt auf
Website
Bestellmöglichkeit
für ein Konzert
Priorität
Erfährt von
Konzert
41
Kauft
sobald
verfügbar
Wartet auf
Konzert
Besucht
Konzert
Wahrscheinliche
Reihenfolge von
Ereignissen
Liste
nächster
Konzerte
Bestellung
auf
Rechnung
Ausgelassen
Manueller
workarnd
Walking
Skeleton
Zusätzliche
Infos zu
Künstler
Bezahlung
mit
Kreditkarte
Neuigkeiten
zum Konzert
Ticket über
NFC
Papierticket
validieren
drucken
30. Mobiles Gerät
Scheiben pro Impact/
Benutzer
Deliverable
Bestellt Blockbuster Bleibt auf
Tickets
Statische Information
über Konzerte in Bern
Priorität
Erfährt von
Konzert
42
Kauft
sobald
verfügbar
Liste
nächster
Konzerte
Bezahlung
mit
Kreditkarte
Bestellmöglichkeit
für ein Konzert
Bestellung
auf
Rechnung
Zusätzliche
Infos zu
Künstler
Website
Wartet auf
Konzert
Neuigkeiten
zum Konzert
Besucht
Konzert
Ticket über
NFC
Papierticket
validieren
drucken
Wahrscheinliche
Reihenfolge von
Ereignissen
32. Rahmen für Map
Mobiles Gerät
Benutzer
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Bleibt auf
Website
Bestellmöglichkeit
für ein Konzert
• Entscheidung für ein oder mehrere Personas
• Auswahl der Impacts und Deliverables aus Impact
Map für die gewählten Personas
45
33. Mobiles Gerät
Benutzer
Map aufbauen
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Bestellmöglichkeit
für ein Konzert
• User Stories brainstormen (jeder für sich)
• Gruppierung der Stories auf Zeitachse
• Silent Affinity Mapping (ähnliche, Variationen, …)
Liste
nächster
Konzerte
Zusätzliche
Infos zu
Künstler
46
Bestellung
auf
Rechnung
Bezahlung
mit
Kreditkarte
Bleibt auf
Website
Neuigkeiten
zum Konzert
Papierticket
drucken
Ticket über
NFC
validieren
Wahrscheinliche
Reihenfolge von
Ereignissen
34. Mobiles Gerät
Benutzer
Benutzeraktivitäten
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Erfährt von
Konzert
Kauft
sobald
verfügbar
Bleibt auf
Website
Bestellmöglichkeit
für ein Konzert
Wartet auf
Konzert
Besucht
Konzert
Wahrscheinliche
Reihenfolge von
Ereignissen
Liste
Bestellung
Neuigkeiten
Papierticket
nächster
auf
• Beschreibung der Benutzeraktivitäten für jede drucken von User Stories
Gruppe
zum Konzert
Konzerte
Rechnung
• Was versucht der Benutzer außerhalb des Systems zu erreichen?
• In welcher Situation sind diese Stories relevant?
•
47
Zusätzliche
Bezahlung
Ticket über
Erzählen Sie eine User Journey an Hand der Benutzeraktivitäten
Infos zu
mit
NFC
von links nach rechts
Künstler
Kreditkarte
validieren
44. Projekt erfolgreich?
Breiter
legitimierter
Stiftungsrat
•
Mehr Kandidaten
Höhere Wahlbeteiligung
Keine “Stillen” Wahlen
•
•
Geringere
Kosten für
Abwicklung
Anzahl Kandidaten:
67 -> 368
ca. 70kEUR Einsparungen
für Druck, Porto, Scan
Wahlhelfer: 14 -> 4
Geringere ext. Kosten
Weniger Aufwand
Zusatzeinnahmen
durch Abwicklung
für andere
Kandidat
Wähler
Fondsmgmt
Andere
Fonds
Mehr
Kandidaten
bewerben
sich zur Wahl
Mehr Wähler
nehmen an
der Wahl teil
Gleich viel/
weniger
Aufwand
Verwenden
System f.
eigene
Wahlen
Online
Bewerbung
Online
Kandidatenliste
Gemeinsame
Checkliste
Anpassbares
Layout/Design
Online
Stimmabgabe
57
Mandatenfähigkeit
46. Mobiles Gerät
Benutzer
Priorisierung
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Bestellmöglichkeit
für ein Konzert
Priorität
Erfährt von
Konzert
60
Bleibt auf
Website
Kauft
sobald
verfügbar
Wartet auf
Konzert
Besucht
Konzert
Liste
nächster
Konzerte
Bestellung
auf
Rechnung
Neuigkeiten
zum Konzert
Papierticket
drucken
Zusätzliche
Infos zu
Künstler
Bezahlung
mit
Kreditkarte
Ticket über
NFC
validieren
Wahrscheinliche
Reihenfolge von
Ereignissen
47. Mobiles Gerät
Benutzer
Priorisierung
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Priorität
Erfährt von
Konzert
Bestellmöglichkeit
für ein Konzert
Wartet auf
Konzert
Besucht
Konzert
Liste
Bestellung
AusManueller
nächster
auf
gelassen
workarnd
Wählen Sie (ein)Rechnung
Deliverable für die erste Release
Konzerte
Wahrscheinliche
Reihenfolge von
Ereignissen
Walking
Skeleton
•
• Priorisieren Sie die Stories pro Benutzeraktivität
Zusätzliche
Bezahlung
Ticket über
• Scheiben für: “Walking Skeleton” und “Minimum Viable Product”
Neuigkeiten
Infos zu
Künstler
61
Kauft
sobald
verfügbar
Bleibt auf
Website
mit
Kreditkarte
zum Konzert
NFC
Papierticket
validieren
drucken
50. Mobiles Gerät
Benutzer
Verfeinern
Bestellt Blockbuster
Tickets
Statische Information
über Konzerte in Bern
Priorität
Erfährt von
Konzert
Liste
nächster
Konzerte
Verfeinern
Bestellmöglichkeit
für ein Konzert
Wartet auf
Konzert
Bestellung
Ausauf
gelassen
Rechnung
Sie die Stories für die
Besucht
Konzert
Wahrscheinliche
Reihenfolge von
Ereignissen
Manueller
workarnd
Walking
Skeleton
•
ersten 1-2 Sprints
• Erzeugen Sie Bezahlung Neuigkeiten der User Journey
Wireframes entlang Ticket über
Zusätzliche
Infos zu
Künstler
64
Kauft
sobald
verfügbar
Bleibt auf
Website
mit
Kreditkarte
zum Konzert
NFC
Papierticket
validieren
drucken
54. Von den Ergebnissen zu den Eingaben
Ergebnisse:
• Kandidaten akzeptieren und bestätigen
• Elektronische Publikation der Kandidatenprofile
• Stiftungsrat über elektronische Wahl ermitteln
• Wahlsystem für andere Organisationen als Service zur Verfügung stellen
68
60. Verknüpfung mit ALM
Link mit Sprint Backlog
(Tasks, Taskboard, Burndown)
Refinement für
Sprint Planung
Detailspezifikationen
(Specification-By-Example)
76
61. User Stories vs. Features
Lebende Dokumentation
Product/Sprint Backlog
User Story 1
User Story 2
User Story n
AccCrit 1
AccCrit 2
AccCrit 3
AccCrit 4
AccCrit 5
AccCrit m
„Done“
• Zukünftige Optionen des Systems
• Organisiert/verfeinert nach
Priorität, Nutzen, Aufwand, Risko, ...
• Nächste mögliche Erweiterungen
des Produkts (Arbeitspakete)
77
Feature 1
Feature n
AccCrit 1
AccCrit 2
AccCrit 3
AccCrit 5
AccCrit 4
AccCrit m
• Aktueller Zustand des Systems
• Organisiert/verfeinert nach
funktionalen Überblick
• Versioniert und verwaltet
gemeinsam mit Source Code
62. Zusammenfassung
• User Stories: Agile (=flexible) Anforderungen
• Mögliche Optionen einer Lösung
• Verzögerung von Details
• Story Maps: Optimieren Lösungsweg
• Schnellere Einschätzung und Minimierung von Risiken
• Unterstützen Zusammenarbeit und Releaseplanung
• Struktur für Produktdokumentation
• Impact Maps: Optimieren Lösungsoptionen
• Mehr Experimente in kürzerer Zeit
• Feingranulare Priorisierung des Portfolios
• Evaluierung auf Basis von messbaren Zielen
78
64. Mehr zum Thema …
Product Owner Survival Camp
20.-21. Januar in London
mit
Gojko Adzic, Chris Matts,
David Evans, Christian Hassa
www.productownersurvivalcamp.com
Gojko Adzic
Impact Mapping
80