.consulting .solutions .partnership
Requirements Engineering in hybriden Projekten Scrum trifft Realität
Einleitung: Klärung der Begriffe
Scrum •
Zentrale Elemente von Scrum sind die direkte Kommunikation und die direkte Zusammenarbeit mit den Kunden.
•
Die Rolle des Product Owners ist hierbei die wichtigste Schnittstelle zu allen Stakeholdern. Product Owner priorisieren die Anforderungen und stellen sicher, dass das Produkt zu jedem Zeitpunkt den höchstmöglichen Wert hat.
•
Scrum schätzt funktionierende Software mehr als umfassende Dokumentation.
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
2
Einleitung: Klärung der Begriffe
Festpreisprojekt •
Die Anforderungen an das Produkt liegen bereits zu Projektbeginn detailliert in Form des Fachkonzepts vor. Nur so lässt sich ein Projekt als Gewerk anbieten.
•
Änderungen durchlaufen einen expliziten Change-Request-Prozess.
A
B
Unternehmens-
Strategie
ziele definieren
erstellen
C
D
E
Leistungs-
Absatz- und Preisplanung
Struktur erstellen
durchführen
Planung vorbereiten
G
H
I
F
Entwicklung und Projekte planen
J
K
L
Retrograde Materialbedarf retrograd ermitteln
Leistungsbedarf retrograd ermitteln
Kapazitäten abgleichen
Investitionen u. Beschaffung planen
Simulation u. Umwertung durchführen
Auflösung durchführen
M
N
Kostenplan
O
P
Q
Personalplan erstellen
Kostenstellen-planung strukturell
(Anz. MA)
anpassen
Kostensätze für KST erstellen für KST erstellen
S
T
Einkaufspreise planen
U
V
Liquidität Deckungsbeiträge ermitteln
Ergebnis-rechnung erstellen
Y
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
Plankalkulation durchführen
Z
Ergebnis mit Unternehmens-zielen Planung verabschieden
Plan-GuV und Planbilanz erstellen ermitteln
Beispiel Prozesslanschaft
R
abgleichen
einmalig
automatisch
manuell
3
Einleitung: Klärung der Begriffe
Hybrides Vorgehen
„Hybride Vorgehen kombinieren agile Methoden in Teilprojekten mit einem übergeordneten, klassischen Projektaufbau.“
1. Mehr Flexibilität durch iterative Softwareentwicklung 2. Nutzung von Scrum-Artefakten im Rahmen des V-Modells XT
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
4
Herausforderungen
Herausforderungen in hybriden Projekten
Time / Cost
Quality
fixed
Scope / Requirements
Agile Projects
variable
Traditional Projects
Time / Cost
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
Quality
Scope / Requirements
5
Herausforderungen
Herausforderungen in unserem hybriden Projekt •
Umfangreiche Anforderungsbeschreibung 800-seitiges Fachkonzept, zwei Jahre vor Start der Entwicklung erstellt
•
Fachkonzept war teilweise überholt, teilweise nicht ausreichend detailliert durchdacht
•
Schwergewichtige Change-Management-Prozesse
•
Hierarchische Kundenbeziehung
•
Schlechte Verfügbarkeit der Ansprechpartner beim Kunden
•
Kombination aus Festpreis und Fachkonzept – fest definiertes Budget und Features. Verhandlungen über Inhalte sind schwierig
•
Umsetzung nach Scrum, Auslieferung in kurzen Iterationen und schnelles Go-Live gewünscht.
•
Business-Analysten waren keine Mitglieder der Scrum-Teams.
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
6
Rolle des Business-Analysten in hybriden Projekten
Aufgabenbeschreibung für Product Owner aus unserer Ausschreibung
„Wir suchen Business-Analysten, die aus dem Fachkonzept einzelne User Stories schneiden und mit dem Scrum-Team umsetzen.“
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
7
Problemanalyse
Fachkonzept vs. User Story
Titel Als möchte ich , so dass
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
8
Problemanalyse
Warum eigentlich User Stories? •
User Stories laut XP: „A story should be understandable to customers, developer-testable, valuable to the customer and small enough that the programmers can build half a dozen in an iteration.“
•
User Stories unterstützen die kreative Zusammenarbeit in der Softwareentwicklung.
A promise for a conversation guidelines for good user stories Brief statement of intent that describes something the system needs to do for the user
I
independent
N
negotiable
V
valuable
E
estimable
S
small
T
testable
1. Beck and Fowler, 2005
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
9
Problemanalyse
Product Owner vs. Business-Analyst
Was verantwortet ein Product Owner im Scrum-Team?
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
Was verantwortet ein BusinessAnalyst in einem Projekt?
10
Problemanalyse
Product Owner vs. Business-Analyst
Das Richtige bauen
Business Value
BacklogPflege
PO
Austausch mit Stakeholdern
Austausch mit ScrumTeam
1. Boris Gloger; IEE, IREB; xtronic
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
11
Problemanalyse
How we failed …
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
12
Problemanalyse
Retrospektive •
Traveling User Stories
•
Viele Lücken in der Software, weil die Abhängigkeiten zwischen Funktionen in Jira verloren gehen: Das Lastenheft wurde in Puzzle-Stücke zerlegt.
•
Entwickler hatten User Stories vor dem Sprint nicht verstanden.
•
Diskussionen zwischen Entwicklungsteam und Business-Analysten fanden erst während des Sprints statt.
•
Umsetzung: Zuerst Core-Funktion. Der Value folgte am Ende des Sprints und stand nicht im Mittelpunkt.
•
Epics wurden horizontal geschnitten: Dialog – Funktion – DB
•
Akzeptanztests fehlten.
•
Inhalt der User Stories: Referenzen auf Seiten im Lastenheft.
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
13
Problemanalyse
Wie haben wir die Kehrtwende geschafft?
Agile Best Practices anwenden
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
14
Agile Best Practices
Sichtbare Produkt-Vision fokussieren!
Warum wird das Produkt gebaut? Für wen bauen wir das Produkt? Wann und wie sollte das Produkt geliefert werden?
Vision und Ziel
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
15
Agile Best Practices
Agile Artefakte nutzen!
Big View
Pre-View
Produktvision/ Idea
Roadmap
Feature 1 Release-Plan Epic1
Details / Sprint-Backlog
Epic2
User Story User Story User Story
Story Mapping
Epic..
• • • •
Task 1 Task 2 … Task n
Sprint Plan
User Story Thema
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
16
Agile Best Practices
Continuous Product Delivery etablieren!
Inkrement
Sprint 53
Sprint 54
Sprint 55
……
User Story 1
User Story 2
1. Agile@adobe
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
17
Agile Best Practices
User Stories vertikal schneiden!
Vertikal End-to-End schneiden, soweit es möglich ist! Der Business Value treibt das Product Backlog!
Client
Feature-Teams ersetzen Component-Teams! Anwendungslogik
Server
Datenbank
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
18
Agile Best Practices
Story Mapping: Den Durchstich identifizieren! •
Das „Walking Skeleton“ ist eine Minimalversion des Systems, die einen kleinen aber kompletten End-to-End abbildet.(1)
Buch auswählen
Warenkorb
Versandarten
Zahlung
….. Zeit
Notwendig
Bücher auflisten
In Warenkorb legen
Bücher auswählen Bücher suchen Nice to have
StandardVersand
RechnungAdresse
Versand Adresse
Zahlen per Kreditkarte
Warenkorb löschen
Walking Skeleton
Pay Pal Zahlung
Bücher filtern
1. Jeff Patton, A Better way to work with User Stories http://jpattonassociates.com/user-story-mapping/
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
19
Agile Best Practices
User Stories strukturieren!
user
As a Super Fan concert goer I need to search for concert-related dining discounts so I can enhance my concert experience
action
data
back of card
control
Only “current“ dining discounts can be… Interface with concert goer Mobile Available 95% of time
interface
environment
quality attribute
1. Ellen Gottesdiener: A Visual Nutshell for Amplifying Product Discovery
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
20
Agile Best Practices
Backlog iterativ verfeinern! •
Gute Fragen fürs Refinement:
Item
Welche weiteren Informationen benötigt ihr noch? Wo seht ihr Schwierigkeiten? Ist die Reihenfolge aus technischer Sicht sinnvoll? Seht ihr Risiken? Passt die Story in einen Sprint?
Size 3
Estimate Insert item
Reprioritize items
•
Gutes Backlog: DEEP
Detailed Appropriately (erst kurz vor Umsetzung Anforderungen detailliert) Estimated Emergent (ständig in Überarbeitung) Prioritized (priorisiert nach Geschäftswert)
Original large item
Refine items
Delete items
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
21
Agile Best Practices
Refinement of User Story: Beispiel aus XING
User Story
Verfeinerung der User Story
Umsetzung
1. Requirements Engineering Best Practice Einführung in einer agilen Umgebung, Petra Schwenk und Michael Eisenbarth, Hamburg 2010,
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
22
Agile Best Practices
Definition of Ready für User Stories festlegen! •
User Stories sind klein: Eine User Story wird innerhalb einer Woche von max. zwei Entwicklern fertig umgesetzt.
•
User Stories sind schätzbar: Wir haben die User Story verstanden!
•
User Stories sind testbar: Der Akzeptanztest ist klar definiert und die Testdaten sind vorhanden.
•
User Stories sind abgestimmt
mit dem Entwicklungsteam mit den IT-Architekten
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
23
Agile Best Practices
Kunden-Feedback einbeziehen!
Der Kunde sollte MVPs sehen und bewerten! Kunden-Feedback bei der Weiterentwicklung und Verbesserung einbeziehen! Kostenlosen Change erlauben!
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
24
Fazit
Agiles Umdenken
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
25
Fazit
Anforderungen mit den Kunden schrittweise definieren und umsetzen! •
Konversation und Zusammenarbeit zwischen Scrum-Team und Kunde ersetzen Fachkonzept.
•
Der Kunde schreibt User Stories!
As a I need to so
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
26
Fazit
Business-Analyst findet seine Rolle in Scrum-Team •
Business-Analyst wird tatsächlich zum Product Owner und übernimmt die Verantwortung für das Produkt
Scrum Master
Business-Analyst als Product Owner
•
Business-Analyst wird Mitglied des Entwicklungsteams und übernimmt die Verantwortung für die Produktqualität.
Scrum Master
Product Owner Entwicklungsteam
Business-Analyst im Entwicklungsteam
1. Roman Pilcher, Business Analysten in Scrum
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
27
Weitere Infos
Literatur •
KEN SCHWABER, JEFF SUTHERLAND: Software in 30 Tagen, Wie Manager mit Scrum Wettbewerbsvorteile für ihr Unternehmen schaffen, dpunkt.verlag, 2013.
•
DEAN LEFFINGWELL: Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise, Addison-Wesley, 2010.
•
ROMAN PICHLER: Agiles Produktmanagement mit Scrum, Addison-Wesley, 2012.
•
ELLEN GOTTESDINER, MARY GORMAN: Discover to deliver: Agile Product Planning and Analysis, EBG Consulting, 2012.
•
B. RAMESH, L. CAO, R. BASKERVILLE: Agile Requirements Engineering Practices: An Empirical Study, Information Systems Journal, 449-480.
•
Roman Pichler Consulting: www.romanpichler.com
© msg | März 2017 | Requirements Engineering in hybriden Projektvorgehen
28
Nastaran Matthes Senior Business Consultant
[email protected]
msg systems ag Robert-Bürkle-Str. 1 85737 Ismaning Germany www.msg.group
Cornelia Seraphin Senior Business Consultant
[email protected]
.consulting .solutions .partnership