Agile Requirements jenseits von User Stories Yin und Yang vereint Johannes Bergsmann Berater, Trainer
Agiles Requirements Engineering Hintergrund Folie 2
Warum agile Methoden anders sind Wandel in der Projektbetrachtung RE Funktionen Kosten Zeit Fixiert Klassisch Agil Kosten Zeit Funktionen Variabel RE Wechsel RE aus fixen/starren Bereich in variablen/dynamischen Bereich bei Methoden und Betrachtung des Themas ist eine Änderung notwendig. Folie 3
Requirements-Aufwandsverteilung Klassisch Initiale Projektdefinition ca. 15-20% vom Gesamtaufwand Kontinuierlicher Requirements- Aufwand sehr gering bis vernachlässigbar Spezifikation Umsetzung Test Folie 4
Requirements-Aufwandsverteilung Agil Initiale Projektdefinition ca. 5-10% vom Gesamtaufwand Kontinuierlicher Requirements- Aufwand ca. 10% vom Gesamtaufwand Im Prinzip der gleiche Aufwand wie klassisch, jedoch anders verteilt. Iteration 1 Iteration 2 Iteration 3 Iteration 4 Iteration 5 Iteration 0 Iteration 6 Iteration Folie 5
Einfaches agiles RE Die klassische Vorgehensweise in agilen Projekten Folie 6
RE im agilen Umfeld Vision / Ziele / Epics / Stories Vision / Goals Backlog 8 7 6 5 4 3 2 1 EPICS STORIES Processes Scenarios BE AE BE BE Business-Epic AE Architectural Epic Sprint X+1 Sprint X Folie 7
Der agile Requirements Engineering Prozess Folie 8
5 4 3 2 1 5 4 3 2 1 5 4 3 2 1 5 4 3 2 1 Backlog Iteration 1 8 7 6 5 4 3 2 1 EPICS STORIES Agiles RE System- Backlog System- Backlog Iteration 0 Iteration 1 Iteration 2 Iteration 3 EPICS Quality- Requirements Technical Constraints Release 1 R. 2 Übergeordnete Planung System-Planung & Specification ( Iteration 0 ) Iterative System-Entwicklung Vision / Idee Processes Iteration 1 Specification Iteration 2 Specification Iteration 3 Specification Iteration 4 Spec. Ziele Scope Context / Relations Iteration Backlog 1 Iteration Backlog 1 Iteration Backlog 1 Iteration Backlog Folie 9
Requirements Analyse in agilen Vorgehensweisen Folie 10
8 7 6 5 4 3 2 1 Requirements-Analyse Noch nicht analysiertes Requirement Machbarkeit Risiko Aufwand Priorisierte Liste aufgrund der Requirements-Analyse Nutzen / Wert Qualität Story X: Als Mitarbeiter möchte ich meine Tages-Arbeitszeit und die Pausen erfassen, damit ich gegenüber dem Arbeitgeber und dem Arbeitszeitgesetz meine Arbeitszeiten nachweisen kann. Vision / Idee Requirements-Analyse Übergeordnete Sichten Ziele Scope Kontext Weitere Parameter für die Prozess- Steuerung (z.b. Testintensität, Dokumentation, etc.) Folie 11
Requirements Management Folie 12
8 7 6 5 4 3 2 1 EPICS STORIES Requirements Board inkl. RE-Stages System- Backlog Requirements-Board Detaillieren Risiko & Klären Machbarkeit Machbar Abstimmen Zeiterfassungssystem DoR Aufwand/Nutzen Wert freigegeben Quality Check gegen DoR Final-Backlog Iteration +1 Aufwand (z.b. Story-Points) Wert (z.b. ++,+,o,-,--) Wird nicht in I-BL übernommen, bleibt am Board Verweis auf Detail- Spezifikation Rejected Container Folie 13
Anforderungsqualität Folie 14
Agiles Requirements Engineering Definition of Ready = Eingangskriterium für den Sprint-Backlog: Kriterien, wann ein Backlog Item für die Umsetzung bereit ist. Sichert Mindestqualität Quality Gate für Requirements Zwischen Team und PO VOR Projektstart vereinbart Laufend (z.b. in der Sprint- Retrospektive) reviewen und anpassen Folie 15
Requirements Artefakte im Überblick Folie 16
W³S fehlerhafte Aufträge bearbeiten Menüleiste Auftrag Nr.: x Belege Auftrag Bestellungen Rechnungslegung Rechnungsvorschreibung W³S fehlerhafte Aufträge bearbeiten Auftrag Nr.: x + - Auftrag Menüleiste Aufträge neu übernehmen + - neue Aufträge Auftragsdaten allgemein + - manuell Auftragsnummer Gesamtpreis Kundenstamm öffnen + - automatisch Belege + - offene Aufträge Auftrag Bestellungen Kundenbezeichnung Rechnungslegung Rabatt Rechnungsvorschreibung Lieferantenstamm öffnen W³S fehlerhafte Aufträge bearbeiten + - fakturierte Aufträge Auftrag Nr.: x Artikelstamm öffnen + - Auftrag Menüleiste + - abgeschlossene Aufträge Aufträge neu übernehmen + - neue Aufträge + - suchen Auftragsdaten allgemein Artikel hinzufügen Artikel löschen Details anzeigen + - manuell + - Rechnungswesen Auftragsnummer Verkaufsartikel Gesamtpreis Kundenstamm öffnen + - automatisch + - Bestellwesen Belege + - offene Aufträge Kundenbezeichnung Status Rabatt Artikel Lieferantenstamm VIN - öffnen + - Auftrag Sendeverfolgung Bestellungen Rechnungslegung Rechnungsvorschreibung NR. Preis + - fakturierte Aufträge + - Archivierung AE ARE-KIP-DEA-SML Artikelstamm 2058498 öffnen + - Auftrag 50,86 + - abgeschlossene Aufträge Aufträge neu übernehmen + - neue Aufträge + - suchen Auftragsdaten allgemein Artikel hinzufügen AE ARE-KIP-DEA-LRG Artikel löschen Details anzeigen 2058499 50,86 + - manuell + - Rechnungswesen Auftragsnummer Aufträge Verkaufsartikel Gesamtpreis AE ARE-KIP-DEA-SML Kundenstamm öffnen 2058500 50,86 + - automatisch + - Bestellwesen + - offene Aufträge Kundenbezeichnung Auftrag x Status Rabatt Artikel ME ARE-KIP-FLO-SML Lieferantenstamm VIN - NR. öffnen Preis 2058501 52,00 + - Sendeverfolgung + - fakturierte Aufträge Auftrag y + - Archivierung AE ARE-KIP-DEA-SML Artikelstamm 2058498öffnen 50,86 + - abgeschlossene Aufträge Auftrag z AE ARE-KIP-DEA-LRG 2058499 Position 50,86 + - suchen Artikel hinzufügen Artikel löschen Details anzeigen hinzufügen Position löschen + - Rechnungswesen Aufträge Verkaufsartikel AE ARE-KIP-DEA-SML Leistungsartikel 2058500 50,86 + - Bestellwesen Auftrag x ME ARE-KIP-FLO-SML Status Artikel 2058501 52,00Preis Preis + - Sendeverfolgung Status Artikel VIN - NR. Preis Auftrag y AE Vorlauf ARE - KIP 25,00 LIEF A + - Archivierung AE ARE-KIP-DEA-SML 2058498 50,86 Auftrag z AE Handling 5,00 LIEF B AE ARE-KIP-DEA-LRG 2058499 Position hinzufügen 50,86 Position löschen Aufträge AE Nachlauf KIP - PLZ09 Leistungsartikel 15,00 LIEF A AE ARE-KIP-DEA-SML 2058500 50,86 Auftrag x ME ARE-KIP-FLO-SML Status Artikel 2058501 Preis 52,00 Preis Auftrag y AE Vorlauf ARE - KIP 25,00 LIEF A Auftrag z Statusleiste AE Handling 5,00 LIEF B Position hinzufügen Position löschen AE Nachlauf KIP - PLZ09 15,00 LIEF A Leistungsartikel Status Artikel Preis Preis AE Vorlauf ARE - KIP 25,00 LIEF A Statusleiste AE Handling 5,00 LIEF B AE Nachlauf KIP - PLZ09 15,00 LIEF A Statusleiste RE im agilen Umfeld Artefakte und Tools im Überblick Customer Developer Management High-Level / Overview Vision / Idea Goals Technical Constraints Business- Organization Epics Themes Processes Scope Structure / Context / Relations Details Features User- Stories Use-Case Descripti ons Detailled Processes/ Scenarios Quality- Requirements Use-Case- Diagr. Design / GUI Developer- Stories Context / Relations 1 Detailled Architecture Tasks Team-/Project- Organization Release-Pan Epic-Board Story-Map / Project-Plan Scrum/Kanban-Board Task-Management Folie 17
Requirements Zusammenhänge Folie 18
RE im agilen Umfeld RE-Artefakte und Zusammenhänge Vision / Goals 1 Business- Processes 4 Epic / User-Story Use-Case 5b 2 Detailed Processes / Scenarios Process- Descriptions Use-Case Descriptions (incl. Scenarios) 3 6a 5a 6b Folie 19
W³S fehlerhafte Aufträge bearbeiten Menüleiste Belege + - Auftrag + - neue Aufträge + - manuell + - automatisch + - offene Aufträge + - fakturierte Aufträge + - abgeschlossene Aufträge + - suchen + - Rechnungswesen + - Bestellwesen + - Sendeverfolgung + - Archivierung Aufträge Auftrag x Auftrag y Auftrag z Auftrag Nr.: x Auftrag Bestellungen Rechnungslegung Rechnungsvorschreibung Auftragsdaten allgemein Auftragsnummer Kundenbezeichnung Verkaufsartikel Status AE AE AE ME Gesamtpreis Rabatt Artikel hinzufügen Artikel löschen Artikel VIN - NR. Preis ARE-KIP-DEA-SML 2058498 50,86 ARE-KIP-DEA-LRG ARE-KIP-DEA-SML ARE-KIP-FLO-SML Leistungsartikel Status Artikel AE Vorlauf ARE - KIP AE Handling AE Nachlauf KIP - PLZ09 2058499 2058500 2058501 Position hinzufügen Preis 25,00 5,00 15,00 Aufträge neu übernehmen Kundenstamm öffnen Lieferantenstamm öffnen Artikelstamm öffnen Details anzeigen 50,86 50,86 52,00 Position löschen LIEF A LIEF B LIEF A Preis RE im agilen Umfeld Requirements-Zusammenhänge Vision / Goals Business- Processes Epics / User-Stories 1 Test-Cases Top-Level Architecture Detailed Processes / Scenarios Use- Cases Detailled Architecture 1 Process- Descriptions Use-Case Descriptions (incl. Scenarios) Statusleiste Design Folie 20
Prinzipien des agilen RE Folie 21
RE im agilen Umfeld Die 5 Prinzipien des agilen RE 1. Späte Detail-Spezifikation Spezifikation zum spätest möglichen (sinnvollen) Zeitpunkt! Möglichst viel Details in Testspezifikation 2. Umsetzungssicht bleibt draußen! Nur das spezifizieren, was einen zusätzlichen Informationsgehalt aus Nutzersicht bringt. Das WIE möglichst den Entwicklern überlassen. 3. Risiko und zeitlicher Abstand zur Umsetzung steuert Detailliertheit Detaillierungsgrad passend zum Haftungsrisiko und potentiellem Wissensverlust wählen. 4. Effizienz im Requirements-Management Beziehungen zwischen Artefakten effizient und mit Tool-Unterstützung verwalten! 5. Änderungen akzeptieren und konsistent umsetzen Änderungen an Spezifikationen zulassen! Bei Änderungen alle abhängigen Artefakte konsistent halten! Folie 22
Haftungsfragen beim RE im agilen Umfeld Zusammenfassung Agiles Requiremnts-Engineering ist NICHT nur einen Backlog und Epics bzw. User-Stories zu erstellen Auch in agilen Projekten gibt es übergeordnete und verfeinernde Artefakte. Angemessenes Requirements-Management ist notwendig Die Zusammenhänge zwischen den Artefakten sind zu berücksichtigen und passend zu handhaben Die richtigen Tools einsetzen (Task-Management-Tools sind meist nicht passend für RE!) Auf die QS der Requirements nicht vergessen Grundprinzipien des agilen RE im Auge behalten Folie 25
RE in agilen Vorgehensweisen Das Buch zum Thema Requirements-Engineering für die agile Softwareentwicklung dpunkt.verlag Verfügbar im Buchhandel und online Folie 26
RE in agilen Vorgehensweisen Danke für Ihre Teilnahme Folie 27
Software Quality Lab GmbH Ihr Partner für Software Qualität und Testen Consulting Service Academy Tool Expertise www.software-quality-lab.com