121
© 2015 andrena objects ag Product Canvas 8. Projektmanagement-Tag GPM Region Karlsruhe 3. Juli 2015 Benjamin Seidler, Mustafa Yilmaz Werkzeugkasten und Tools für den Agilen Requirements Engineer

Product Canvas - gpm-ipma.de · Product Canvas 8. Projektmanagement-Tag GPM Region Karlsruhe 3. Juli 2015 Benjamin Seidler, Mustafa Yilmaz

Embed Size (px)

Citation preview

© 2015 andrena objects ag

Product Canvas

8. Projektmanagement-Tag

GPM Region Karlsruhe

3. Juli 2015

Benjamin Seidler, Mustafa Yilmaz

Werkzeugkasten und Tools für den Agilen Requirements Engineer

© 2015 andrena objects ag

Experts in agile software engineering 3

Benjamin Seidler Mustafa Yilmaz

www.andrena.de

[email protected]

© 2015 andrena objects ag

Agile Requirements Engineering 5

Agenda

• Agiles Requirements Engineering

• Business Model Canvas

• Produktvision

• Rollen, Personas und Szenarien

• User Stories & Epics

• Design-Entwürfe & Nichtfunktionale Anforderungen

Werkzeugkasten Product Canvas

© 2015 andrena objects ag

• Specification by Example / Automatisierte Akzeptanztests

• Refinement & Product Backlog

• Zerlegen von User Stories

• Agiles Schätzen

• Priorisieren

• Story Maps

• Velocity & Release Planung

• Impact Mapping

Agile Requirements Engineering 6

Weitere Werkzeuge

© 2015 andrena objects ag

Agile Requirements Engineering 7

Agile Requirements Engineering

© 2015 andrena objects ag

Agile Requirements Engineering 8

Was ist Requirements Engineering (RE) ein systematischer und disziplinierter Ansatz zur Spezifikation und zum Management von Anforderungen mit den folgenden Zielen:

1. Die relevanten Anforderungen zu kennen, Konsens unter den Stakeholdern über die Anforderungen herzustellen, die Anforderungen konform zu vorgegebenen Standards zu dokumentieren und die Anforderungen systematisch zu managen.

2. Die Wünsche und Bedürfnisse der Stakeholder zu verstehen, zu dokumentieren sowie die Anforderungen zu spezifizieren und zu managen, um das Risiko zu minimieren, dass das System nicht den Wünschen und Bedürfnissen der Stakeholder entspricht.

Definition: International Requirements Engineering Board (IREB)

© 2015 andrena objects ag

Agile Requirements Engineering

Agilitätsdreieck

© 2015 andrena objects ag

Agile Requirements Engineering 10

Prinzipien hinter dem Agilen Manifest

1. Unsere höchste Priorität ist es, den Kunden durch frühe und

kontinuierliche Auslieferung wertvoller Software zufrieden zu stellen.

2. Anforderungsänderungen selbst spät in der Entwicklung willkommen

heißen. Agile Prozesse nutzen Veränderungen zum Wettbewerbsvorteil

des Kunden.

6. Die effizienteste und effektivste Methode, Informationen an und

innerhalb eines Entwicklungsteams zu übermitteln, ist im Gespräch von

Angesicht zu Angesicht.

© 2015 andrena objects ag

Agile Requirements Engineering 11

Das Projektmanagementdreieck

Vom planbasierten zum nutzwertbasierten Ansatz

Plan-basiert

Wert- basiert

Umfang

Dauer Kosten

Dauer Kosten

Umfang (durch Priorisierung)

festgelegt

geschätzt

Nach: Dean Leffingwell: Agile Software Requirements

11

© 2015 andrena objects ag

Agile Requirements Engineering 12

Empirischer bzw. agiler Ansatz

• Iterativ, inkrementell, Just in Time.

• Überprüfen und Anpassen, Selbstorganisation

Scrum SPRINT

≤ 30 Tage 1 Tag

Product Backlog

Sprint Backlog

Product Increment

© 2015 andrena objects ag

Agile Requirements Engineering 14

Agile Requirements Engineering – was muss es leisten?

• Wert-/Nutzenorientierung

• Iterativ und inkrementell

• Anforderungen Just-in-time

• Direkte Kommunikation

© 2015 andrena objects ag

Agile Requirements Engineering 16

Werkzeuge des Agilen RE

© 2015 andrena objects ag

Agile Requirements Engineering 17

Business Model Canvas

© 2015 andrena objects ag

Agile Requirements Engineering 18

Business Model

• Geschäftsmodelle beschreiben, wie eine Organisation bzw. ein Unternehmen Mehrwert für Kunden erzeugt und einen Ertrag für die Organisation sichern kann.

• Geschäftsmodelle helfen, die Schlüsselfaktoren des Unternehmenserfolges oder -misserfolges zu verstehen, zu analysieren und zu kommunizieren.

© 2015 andrena objects ag

Agile Requirements Engineering 19

Business Model Canvas

Eine Methode zur Visualisierungen von Geschäftsmodellen

• Erarbeitung eines Geschäftsmodells für eine Firma, ein Produkt oder einen Service.

• Strukturierung der wesentlichen Fragen eines Geschäftsmodells und seiner Abhängigkeiten.

• Konzentration auf die Stärken und damit den Wert, der sich mit dem Geschäftsmodell generieren lässt.

http://fa.ltings.de/geschaeftsmodelle-visualisieren/

© 2015 andrena objects ag

Agile Requirements Engineering 20

Business Model Canvas

• Erleichtert die Erfassung gesamter Geschäftsmodelle

• Hilft dabei, stillschweigende Annahmen in eindeutige Informationen zu verwandeln.

• Geschäftsideen werden greifbar und erlauben eine zielführende, klare Diskussion und Anpassungen.

• Die Visualisierung haucht jedem Geschäftsmodell Leben ein und erleichtert die gemeinsame Ideenfindung.

http://fa.ltings.de/geschaeftsmodelle-visualisieren/

© 2015 andrena objects ag

Agile Requirements Engineering 21

Quelle: http://www.businessmodelgeneration.com

© 2015 andrena objects ag

Agile Requirements Engineering 22

© 2015 andrena objects ag

Agile Requirements Engineering 23

© 2015 andrena objects ag

Agile Requirements Engineering 24

© 2015 andrena objects ag

Agile Requirements Engineering 25

© 2015 andrena objects ag

Agile Requirements Engineering 26

© 2015 andrena objects ag

Agile Requirements Engineering 27

Produktidee (Beispiel): Shirt-Creator

• Firma verkauft bereits T-Shirts, Polo-Shirts, …

• Bisher werden nur feste Varianten davon angeboten

• Idee: Individuell konfigurierbare Varianten (bedruckbar) Personalisierte, qualitativ hochwertige Shirts

• „Konfigurator“ für die Bestellseite

© 2015 andrena objects ag

Agile Requirements Engineering 28

Product Canvas

© 2015 andrena objects ag

Agile Requirements Engineering 30

Produktplanung: Von der Erhebung bis zur Umsetzung

Vision Übergeordnete Ziele

Personas & Szenarien

Epen & User Stories

Product Backlog

Releaseplan (Strategie)

Sprintplan (Taktik)

Refinement

© 2015 andrena objects ag

Agile Requirements Engineering 34

Das Product Canvas

Name Metriken

Zielgruppe:

• Rollen • Personas

„Big Picture“:

• Szenarien • Epen / User Stories • Design-Skizzen • Einschränkungen /

NFAs

Product Details:

• Sprintziele • „Ready“

Stories

Vision / Ziel

© 2015 andrena objects ag

Agile Requirements Engineering 35

Produktvision

© 2015 andrena objects ag

Agile Requirements Engineering 36

Produkt Vision

• Kurz und prägnant

• Emotional und mitreißend

• Sichtbar als Text oder Bild

Vis ion Für wen? Was? Wie? Besser a ls?

© 2015 andrena objects ag

Agile Requirements Engineering 37

Elevator

Pitch Elevator

Pitch

© 2015 andrena objects ag

Agile Requirements Engineering 38

Vision (Beispiel)

Mit dem Shirt-Creator können modebewusste Individualisten mit selbstgestalteten hochwertigen Shirts auffallen.

Kunde: Reseller, Designer, Individualisten

Bedarf: hochwertiges individuelles Kleidungsstück

Hauptvorteil: Kleinserien für Designer

Produkt: Bedrucken von Shirts für alle

über die Bestellplattform für jeden zugänglich machen.

© 2015 andrena objects ag

Agile Requirements Engineering 39

Formulierung einer Vision

Für Kunde

die Beschreibung des Bedarfs

ist das Produktname

eine Produktkategorie, die Hauptvorteil, Grund dieses Produkt zu kaufen; anders als Alternative des Wettbewerbs

kann unser Produkt Beschreibung des Hauptunterschieds.

© 2015 andrena objects ag

Agile Requirements Engineering 40

Vision (Beispiel)

Für Reseller, Designer und Individualisten, die sich nach hochwertigen individuellen Kleidungsstücken sehnen, ist der Shirt-Creator ein Produktkonfigurator, der es modebewussten Individualisten gestattet, mit selbstgestalteten hochwertigen Shirts aufzufallen.

Im Gegensatz zu vergleichbaren Angeboten steht der Shirt Creator Resellern zur Verfügung und gestattet neben der Auswahl vorgefertigter auch die Verwen-dung und Bereitstellung selbst erstellter Motive.

© 2015 andrena objects ag

Agile Requirements Engineering 41

Rollen & Personas

© 2015 andrena objects ag

Agile Requirements Engineering 42

Stakeholder

• Stakeholder sind alle Menschen, die von Entwicklung, Einsatz und Betrieb des Systems betroffen sind (Projektbetroffene)

• Alle mit Einfluss auf die Anforderungen

• Anforderungen/Bedürfnisse aus Nutzersicht Kundennutzen (in den Nutzer hineinversetzen)

• Ein vergessener Stakeholder ist eine vergessene Anforderung

• Stakeholder identifizieren und mit ihren Rollen dokumentieren

© 2015 andrena objects ag

Agile Requirements Engineering 43

Rollen (Beispiele)

Kunden

Designer

Reseller Bestands- kunde

Admin

Neu- kunde Auftrags-

bearbeitung

Händler

Marketing

Support

© 2015 andrena objects ag

Agile Requirements Engineering 44

Personas

• Personas sind am lebenden Menschen orientierte, imaginierte Personen, die unsere Produkte benutzen.

• Sie stehen stellvertretend für Mitglieder realer Nutzergruppen.

• Sie erhalten fiktive, persönliche Eigenschaften.

• Sind wirklickkeitsnah.

© 2015 andrena objects ag

Agile Requirements Engineering 45

Personas

• Personas leisten einen wichtigen Beitrag zum besseren Verständnis der Nutzer-Anforderungen.

• Sie helfen, sich in die Situation der Nutzer zu versetzen.

• Sie fokussieren die Entwicklungsarbeiten auf die Ziele und Bedürfnisse der Nutzer (statt auf die der Projektentscheider, oder auf technische Restriktionen).

© 2015 andrena objects ag

Agile Requirements Engineering 46

Vorlage einer Persona

• Name

• Beruf und Position im Unternehmen

• Erscheinungsbild (Foto bzw. Avatar/Skizze oder Beschreibung)

• Berufserfahrung

• Tägliche Aufgaben (auch außerhalb der Applikation)

• Vorlieben und Hobbys, Abneigungen

• Ziele

© 2015 andrena objects ag

Agile Requirements Engineering 47

Persona (Beispiel)

• 33 Jahre, weiblich

• Alternativ, qualitätsbewusst

• Keine Lust auf „Standardmode“

• Kreativ: Basteln, Einrichten, …

• Beruf: Marketing

• Familie, 1 Kind

Ich wünsche mit die Möglichkeit, eigene Shirts zu gestalten. Ideen dazu entwickle ich selbst und meide Standardmode.

Lisa

© 2015 andrena objects ag

Agile Requirements Engineering 48

Rollen und Personas

• Keine allgemeinen Begriffe wie „Nutzer“ oder „Kunde“.

• Möglichst konkret:

• Konkretes Individum

• Persona

• Rolle oder Jobtitel

• Gruppe oder Abteilung

© 2015 andrena objects ag

Agile Requirements Engineering 49

Szenarien

© 2015 andrena objects ag

Agile Requirements Engineering 50

Szenarien

• Realistisches Beispiel, wie ein Benutzer mit dem geplanten System interagieren wird.

• Einfache Sätze beschreiben einen konkreten Ablauf aus Benutzersicht.

• Inhaltlich richtige Aussagen sind wichtiger als formale Korrektheit.

© 2015 andrena objects ag

Agile Requirements Engineering 51

Szenarien

• Motivation: den Benutzer verstehen.

• Szenarien können iterativ oder zusammen mit den Benutzer erarbeitet werden.

• Die Reflektion am konkreten Beispiel erlaubt es Auftraggebern und Benutzern, Anforderungen in der konkreten Anwendungssituation zu vergegenwärtigen, zu überprüfen und zu ergänzen.

• Gute Grundlage für den Entwurf von User Stories.

© 2015 andrena objects ag

Agile Requirements Engineering 52

Szenarien (Beispiel)

20:00 Uhr Abends, Lisa ist zu Hause und surft im Internet

Lisa hat eine gute Idee für ein individuelles Shirt

Sie ruft den Shop auf und sucht sich mehrere Shirts aus

Ihr „Design“ lädt sie im Shirt-Creator hoch und betrachtet sich ihre Shirt-Modelle

Sie wählt ein Shirt aus und legt es in den Warenkorb, um es zu kaufen

Zwei Tage später wird ihr das Poloshirt nach Hause geliefert

Lisa, individuelles Shirt erstellen

© 2015 andrena objects ag

Agile Requirements Engineering 53

Weitere Darstellungsformen für Szenarien

• Workflow

• Ereignisgesteuerte Prozesskette (EPK)

• Use Case

© 2015 andrena objects ag

Agile Requirements Engineering 54

User Stories

© 2015 andrena objects ag

Agile Requirements Engineering 55

Begrifflichkeiten

• Verschiedene Begriffe werden üblicherweise genutzt, um den relativen Umfang einer Anforderung zu beschreiben

• Die Verwendung ist nicht einheitlich geregelt

• Epic bzw. Epos

• Thema / Feature

• User Story

• Task

© 2015 andrena objects ag

Agile Requirements Engineering 56

Epics / grobe User Stories (Beispiele)

• Lisa möchte individuelle Shirts erstellen können

• Als Designer möchte ich meine Designs anderen Benutzern zur kostenpflichtigen Nutzung bereitstellen können.

• Als Kunde möchte ich Unterstützung bei der Text- bzw. Bildgestaltung der Poloshirts (z.B. Transparenz, Farbgestaltung, …).

• Als Shop-Betreiber möchte ich Auswertungen über die Anwendung haben, damit ich die Kundenwünsche besser erfüllen kann.

© 2015 andrena objects ag

Agile Requirements Engineering 57

User Story: Definition

„Eine User Story beschreibt eine Funktionalität, die entweder für einen User oder Käufer […] von Wert ist.“ Mike Cohn, User Stories applied

© 2015 andrena objects ag

Agile Requirements Engineering 58

Format einer User Story

Als Benutzerrolle

will ich das Ziel

so dass Grund für das Ziel

Wer macht was, warum?

© 2015 andrena objects ag

Agile Requirements Engineering 59

User Stories (Beispiele)

Als Kunde Lisa möchte ich eine Vorschau angezeigt bekommen, damit ich einen Eindruck des Poloshirts erhalte.

Der Käufer möchte hochgeladene Designs speichern können, damit diese später wiederverwendet werden können.

© 2015 andrena objects ag

Agile Requirements Engineering 60

Vorteil von User Stories

Beim Schreiben von User Stories nehmen wir bewusst die Sichtweise des Nutzers bzw. Kunden ein.

Jede User Story zielt darauf ab, den Nutzer bzw. Kunden zufriedener zu machen.

© 2015 andrena objects ag

Agile Requirements Engineering 62

Card, Conversation, Confirmation

User Stories bedeuten, miteinander zu sprechen und zu wissen, wann ein Anforderung umgesetzt ist.

Product Owner

Team

Conversation & Confirmation

© 2015 andrena objects ag

Agile Requirements Engineering 64

Confirmation durch Akzeptanzkriterien

• „Überprüfbare“ Anforderungen

• Gemeinsam erstellt vom Scrum-Team und den Stakeholdern

• Legen fest, ob ein Feature fertig umgesetzt ist

• Bilden die Basis für Akzeptanztests

© 2015 andrena objects ag

Agile Requirements Engineering 65

Akzeptanzkriterien (Beispiele)

Als Kunde möchte ich Bilder hochladen, um diese in meinen Designs zu verwenden. Akzeptanzkriterien: • Der Kunde kann ein Bild auswählen und hochladen. • Die Webshop zeigt das hochgeladene Bild in der Liste verfügbarer

Bilder für Designs an. • Wählt ein Kunde ein anderes Format als JPG und PNG aus, wird

eine Fehlermeldung angezeigt. • Bei Dateien größer als 2 MB wird eine Fehlermeldung angezeigt.

© 2015 andrena objects ag

Agile Requirements Engineering 67

Akzeptanztest

Ein Akzeptanztest ist ein Ablauf, wie die Akzeptanzkriterien überprüft werden kann.

Besteht aus:

• Vorbedingungen

• Ablauf eines Szenarios / Beispiels

• Nachbedingungen bzw. erwartetes Ergebnis

© 2015 andrena objects ag

Agile Requirements Engineering 68

Akzeptanztest (Beispiel)

Als Kunde möchte ich Bilder hochladen, um diese in meinen Designs zu verwenden.

Akzeptanztest: Vorbedingung: Bild test.PNG auf Kundenrechner 1. Der Kunde wählt „Bild hochladen“. 2. Der Browser öffnet den Dateiauswahldialog. 3. Der Kunde wählt Bild test.PNG aus und wählt „Öffnen“ 4. Der Webshop lädt das ausgewählte Bild hoch. Nachbedingung: Der Webshop zeigt das hochgeladene Bild in der Liste verfügbarer Bilder für Designs an.

© 2015 andrena objects ag

Agile Requirements Engineering 70

User Stories in Kürze

• De-facto Standard für agiles Anforderungsmanagement

• Kurze Beschreibung der Anforderung aus Benutzersicht

• Details werden per Konversation ausgearbeitet und in den Akzeptanzkriterien festgehalten

© 2015 andrena objects ag

Agile Requirements Engineering 71

Design-Entwürfe

© 2015 andrena objects ag

Agile Requirements Engineering 72

Design-Entwürfe

• Skizzen

• Wireframes / Mockups

• Ablaufbäume/ -diagramme

© 2015 andrena objects ag

Agile Requirements Engineering 73

Nichtfunktionale Anforderungen

© 2015 andrena objects ag

Agile Requirements Engineering 74

Nicht funktionale Anforderungen (NFA)

• Performance

• Sicherheit

• Wartbarkeit

• Wiederverwendbarkeit

• Verfügbarkeit

• Datenschutz

• …

© 2015 andrena objects ag

Agile Requirements Engineering 75

Definition of „Done“

Sorgt für ein gemeinsames Verständnis, ob eine Arbeit abgeschlossen ist.

Was muss alles getan werden, damit eine Story als „fertig“ angesehen wird?

„Done“ – Es ist nichts mehr zu tun!

© 2015 andrena objects ag

Agile Requirements Engineering 77

Das Product Canvas

Name Metriken

Zielgruppe:

• Rollen • Personas

„Big Picture“:

• Szenarien • Epen / User Stories • Design-Skizzen • Einschränkungen /

NFAs

Product Details:

• Sprintziele • „Ready“

Stories

Vision / Ziel

© 2015 andrena objects ag

Agile Requirements Engineering 78

Anforderungsworkshop mit Product Canvas

© 2015 andrena objects ag

79

Weiteres

Beispiel

© 2015 andrena objects ag

Agile Requirements Engineering 80

Weitere Werkzeuge

Welche Themen interessieren Sie am meisten?

1. Specification by Example

2. Refinement & Backlog

3. Zerlegen von User Stories

4. Agiles Schätzen

5. Priorisieren

6. Story Maps

7. Velocity & Release Planung

8. Impact Mapping

© 2015 andrena objects ag

Agile Requirements Engineering 82

Specification by Example

© 2015 andrena objects ag

Agile Requirements Engineering 83

Häufige Probleme

• Anforderungen sind unklar oder mehrdeutig

• Anwender und Entwickler sprechen unterschiedliche

Sprachen

• Domänen-Experten können keine Unit Tests schreiben bzw.

überprüfen

• Die Dokumentation ist bei Änderungen am Produkt nicht

mehr aktuell

© 2015 andrena objects ag

Agile Requirements Engineering 84

Idee

• Konkrete Beispiele beschreiben das Verhalten

• Gemeinsame domänenspezifische Sprache verbessert die

Kommunikation

• Ausführbare Beispiele als „Lebende Dokumentation“

© 2015 andrena objects ag

Agile Requirements Engineering 85

Specification by Example

beschreiben prüfen

Beispiele Tests

Anforderungen

erzeugen

Quelle: Gojko Adzic

© 2015 andrena objects ag

Agile Requirements Engineering 86

Vorteile

• Bessere Zusammenarbeit der verschiedenen Rollen

• Besseres gemeinsames Verständnis der Anforderungen

• Automatisiertes Testen der fachlichen Anforderungen möglich

• Dokumentation passt zum Produkt (Living Documentation)

© 2015 andrena objects ag

Agile Requirements Engineering 87

Quelle: Specification by Example: How Successful Teams Deliver the Right Software, Gojko Adzic

© 2015 andrena objects ag

Agile Requirements Engineering 88

Spezifikation mit Beispielen

1. Use Context: Als ein _ will ich, _ so dass _

2. Allgemeine Regeln des Features

3. Beispiele zu den Regeln

• Präzise, testbar, selbsterklärend

• Geschäftsfunktionalität, in Domänensprache

• „Was“, nicht „Wie“

• Weitere Fälle lassen sich ableiten

• Given - When - Then Sprache

© 2015 andrena objects ag

Agile Requirements Engineering 89

Automatisierte Akzeptanztests

© 2015 andrena objects ag

Agile Requirements Engineering 91

Quelle: Specification by Example: How Successful Teams Deliver the Right Software, Gojko Adzic

© 2015 andrena objects ag

Agile Requirements Engineering 92

Quelle: Specification by Example: How Successful Teams Deliver the Right Software, Gojko Adzic

© 2015 andrena objects ag

Agile Requirements Engineering 93

Quelle: Specification by Example: How Successful Teams Deliver the Right Software, Gojko Adzic

© 2015 andrena objects ag

Agile Requirements Engineering 94

Werkzeuge für die Automatisierung

http://cukes.info/

http://fitnesse.org/

http://robotframework.org/

© 2015 andrena objects ag

Agile Requirements Engineering 95

Selenium Tests

© 2015 andrena objects ag

Agile Requirements Engineering 97

Product Backlog

© 2015 andrena objects ag

Agile Requirements Engineering 98

Product Backlog

• Enthält alle Anforderungen (Backlog Items)

• Geordnet und geschätzt

• Grundlage für die Releaseplanung

• Kommunikationsgrundlage

• Verantwortet durch Product Owner SPRINT

≤ 30 Tage 1 Tag

Product Backlog

Sprint Backlog

Product Increment

© 2015 andrena objects ag

Agile Requirements Engineering 99

Eisberg der Anforderungen

… als nächstes umsetzen

… danach umsetzen

… später umsetzen

Priorität

© 2015 andrena objects ag

Agile Requirements Engineering 100

Refinement

© 2015 andrena objects ag

Agile Requirements Engineering 101

Refinement

„Als Verfeinerung [Refinement] des Product Backlogs wird der Vorgang angesehen, in dem Details zu Einträgen hinzugefügt, Schätzungen erstellt, oder die Reihenfolge der Einträge im Product Backlog bestimmt werden. Die Verfeinerung ist ein kontinuierlicher Prozess, in dem der Product Owner und das Entwicklungsteam gemeinsam die Product Backlog-Einträge detaillieren. „ (Scrum Guide)

© 2015 andrena objects ag

• Überprüfen

• Überarbeiten

• Priorisieren

• Analysieren & Klären

• Zerlegen

• Schätzen

Agile Requirements Engineering 102

Refinement

Product Backlog

Product Backlog Items

Die Verfeinerung des Product Backlog ist ein kontinuierlicher Prozess.

Das Entwicklungsteam wendet dafür bis zu 10% der Sprintzeit auf.

© 2015 andrena objects ag

Aktueller Sprint

UserStory

UserStory

UserStory

UserStory

UserStory

UserStory

UserStory

UserStory

UserStory

Nächster Sprint

UserStory

UserStory

Spike

UserStory

UserStory

UserStory

UserStory

UserStory

Nächster nächster Sprint

UserStory

UserStory

UserStory

UserStory. PO clarification

UserStory

UserStory

Sprint 4 -8

UserStory

UserStory

UserStory

Agile Requirements Engineering 103

Iterative Detailierung

© 2015 andrena objects ag

Agile Requirements Engineering 105

Refinements - Ziele

• Kleine und gut verstandene Backlog Items für die nächsten Sprints („Ready“)

• Verstandene Backlog Items bis zum nächsten Release

• Geschätztes und geordnetes Backlog

• Entwickeln und Anpassen des Release Plans

© 2015 andrena objects ag

Agile Requirements Engineering 109

Zerlegen von User Stories

© 2015 andrena objects ag

Agile Requirements Engineering 110

Gründe für das Zerlegen

• User Stories müssen in einem Sprint fertigzustellen sein.

• Kleinere User Stories lassen sich besser schätzen.

• Kleinere User Stories gestatten eine detailliertere Priorisierung.

© 2015 andrena objects ag

Teilaufgaben

Schneiden anhand von Unteraufgaben wie Analyse, Implementierung, Tests etc.

Hinterlässt kein inspizierbares und bewertbares Softwareinkrement.

Schichten

Schneiden anhand von Architektur-schichten wie Datenhaltung, Applika-tionslogik und Nutzerschnittstelle.

Hinterlässt kein inspizierbares und bewertbares Softwareinkrement.

Besser „Durchstich“ mit wenig Funktionalität.

Agile Requirements Engineering 112

Negativ-Beispiele

© 2015 andrena objects ag

Agile Requirements Engineering 125

Agiles Schätzen

© 2015 andrena objects ag

Agile Requirements Engineering 126

Agiles Schätzen

• „Nur“ eine Schätzung!

• Entwicklungsteam schätzt

• Schätzen der Größe

• Abstrakte Einheit: Story Points

• Relatives Schätzen (Referenz)

• Nichtlineare Skala: 1, 2, 3, 5, 8, 13, 20, 40, 100

S L M

© 2015 andrena objects ag

Agile Requirements Engineering 130

Magic Estimation

• Schätzwerte ausgelegt

• Keine Kommunikation!

• Reihum: 1. Neue Story nehmen & auslegen (schätzen) 2. Oder Story umlegen

• Mehrfach umgelegte Stories raus

1 2 3 5 8 13 20

© 2015 andrena objects ag

Agile Requirements Engineering 132

Planning Poker

• Jeder Planning-Pokerkarten

• Diskussion der User Story

• Jeder wählt eine Karte

• Karten gleichzeitig aufdecken

• Unterschiede diskutieren

• Dann ggf. erneut schätzen

© 2015 andrena objects ag

Agile Requirements Engineering 135

Priorisieren

© 2015 andrena objects ag

Agile Requirements Engineering 136

Mögliche Einflüsse auf die Priorisierung

• Aufwand

• Nutzen, Geschäftswert

• Risiko (z.B. Risikomatrix)

• Abhängigkeiten

• Cost of Delay (COD) (Kosten einer späteren Umsetzung)

© 2015 andrena objects ag

Agile Requirements Engineering 137

Priorisierungsmöglichkeiten

• Kano-Modell (siehe nächste Folie)

• Rangliste / Direkter Vergleich

• Sortierung / Ping-Pong-Bälle

• „Bauchgefühl“

MVP (Minimum Viable Product)

© 2015 andrena objects ag

Agile Requirements Engineering 138

Kano-Modell

Erfüllungsgrad

Zufriedenheit

Leistungsfaktoren

Basisfaktoren

Begeisterungsfaktoren

Kreativitätstechniken

Beobachtung

© 2015 andrena objects ag

Agile Requirements Engineering 140

Story Map

© 2015 andrena objects ag

Agile Requirements Engineering 141

Story Map

“Lauffähiges

Gerippe”

“Rückgrat”

R1

R2

R3

Prioritä

t

© 2015 andrena objects ag

Agile Requirements Engineering 142

Story Map (Beispiele)

© 2015 andrena objects ag

Agile Requirements Engineering 143

© 2015 andrena objects ag

Agile Requirements Engineering 145

Releaseplanung

© 2015 andrena objects ag

Agile Requirements Engineering 146

Release Planning

Velocity Ein guter Releaseplan erfordert eine bekannte Velocity.

Backlog Ein guter Releaseplan erfordert ein geordnetes und geschätztes Backlog.

© 2015 andrena objects ag

Das Produkt wird zu einem bestimmten Datum released.

“Wie viel des Product Backlog wird an einem bestimmten Datum fertig sein?”

Das Produkt wird released, wenn bestimmte Features fertig sind.

“Wann wird Feature A, B und C fertig sein?”

Basistypen der Release Planung

Feature Target Planning Date Target Planning

147 Agile Requirements Engineering 147

© 2015 andrena objects ag

Agile Requirements Engineering 149

Velocity

Die Velocity beschreibt die Geschwindigkeit, mit der das Entwicklungsteam Product Backlog Items pro Sprint abarbeitet.

© 2015 andrena objects ag

0

5

10

15

20

25

30

1 2 3 4 5 6 7 8 9

Sto

ry P

oin

ts

Sprint

Agile Requirements Engineering 150

Planung mit Velocity

Bester Fall: Top 3 =>

Ø 23

Wahrschein-lichster Fall: Mittlere 3

Ø 19

Schlechtester Fall:

Unterste 3 Ø 14

© 2015 andrena objects ag

152

Wann wird Feature A wahrscheinlich

geliefert?

Agile Requirements Engineering

6 Wochen

Product Backlog

Größe: 1

Größe: 20

Größe: 13

Größe: 20

Größe: 3

Größe: 5

Größe: 13

Größe: 8

Größe: 3

Größe: 3

Größe: 13

A

Agile Requirements Engineering

• Mittlere Team Velocity = 32

• Sprint Länge= 2 Wochen

© 2015 andrena objects ag

153

Was wird in 8 Wochen alles

geliefert?

Agile Requirements Engineering

Product Backlog

Größe: 13

Größe: 2

Größe: 13

Größe: 1

Größe: 8

Größe: 5

Größe: 13

Größe: 3

Größe: 5

Größe: 2

Größe: 8

Das Alles

Agile Requirements Engineering

• Mittlere Team Velocity = 16

• Sprint Länge= 2 Wochen

© 2015 andrena objects ag

Agile Requirements Engineering 154

Release Burndown

Features Heute

Zeit

Fertigstellung

Velocity: tatsächliche beste durchschnittliche schlechteste

© 2015 andrena objects ag

Agile Requirements Engineering 156

Impact Mapping

© 2015 andrena objects ag

Agile Requirements Engineering 158

Impact Map

• Gemeinsam erstellt von Fachabteilung und Entwicklung

• Mind-Map aus der Diskussion um die vier Fragen Warum? Wer? Wie? Was?

• Visualisierung von Scope und zugrundeliegenden Annahmen Annahmen tranparent machen und in Frage stellen

• Ausrichtung aller Aktivitäten auf die Business Ziele Bessere strategische Planung

© 2015 andrena objects ag

Agile Requirements Engineering 160

Aufbau einer

Impact Map

Warum?

Wer?

Wie? Was?

Wie? …

Wer?

Wie? Was?

Wie? …

Ziel Person Effekt Feature

© 2015 andrena objects ag

Agile Requirements Engineering 161

Warum?

Wer?

Wie?

Was?

Quelle: http://impactmapping.org

© 2015 andrena objects ag

Agile Requirements Engineering 164

Impact Map

(Beispiel)

Shirt Verkauf verdoppeln

Kunde

Für Freunde bestellen

Mehrere Adressen

Geschenk-verpackung

Größere Bestellungen

Mengenrabatt

Spontankäufe

Top 10 Designs anpreisen

Rabatt-Aktion

Designer Designs für

Freunde Eigene Designs

teilen

Ziel Person Effekt Feature

© 2015 andrena objects ag

Agile Requirements Engineering 165

Impact Map

• Alles unterstützt das Ziel! (wenn die Annahmen stimmen)

• Mapping von Features auf Ziele

• Scope und Annahmen visualisiert

• Überprüfen der Annahmen möglich

• Konzentrieren auf einzelne Zweige möglich

© 2015 andrena objects ag

• Agiles Requirements Engineering

• Business Model Canvas

Werkzeugkasten Product Canvas • Produktvision

• Rollen und Personas

• Szenarien

• User Stories & Epics

• Design-Entwürfe

• Nichtfunktionale Anforderungen

Weitere Werkzeuge • Specification by Example

• Refinement & Product Backlog

• Zerlegen von User Stories

• Agiles Schätzen

• Priorisieren

• Story Map

• Velocity & Release Planung

• Impact Mapping

Agile Requirements Engineering 168

Zusammenfassung

© 2015 andrena objects ag

andrena objects ag

Albert-Nestler-Straße 9

76131 Karlsruhe

Tel. + 49 (0) 721 6105 122

Weitere Standorte:

• Frankfurt

• München

• Stuttgart

www.andrena.de

[email protected]

Experts in agile software engineering 170