Transcript Agil

Scrum im klassischen
Projektumfeld - agile
Elemente erfolgreich
einsetzen
05.03.2011 – PMI Chapter München
Allianz Managed
Operations & Services
(AMOS) IT
Jochen Dinter
Fachliche
Konzeption
Anforderungsanalyse
FachDesign
SystemTest
Techn.
Design
Releaseabnahmetest
Kodierung
FTE
DV-KIT
KOT
Produktivsetzung
Inhalt
1
2
Agile Methodik im Projektkontext
3
Erfolgsfaktoren für die Einführung
Wie wird agiles Vorgehen derzeit beim ABS
Programm Leben Vertrag umgesetzt?
2
Was bedeutet agil? Elemente der agilen Entwicklung
 Umsetzung in festen Iterationszyklen
 Detaillierte Planung der unmittelbar
anstehenden Anforderungen,
grobe Planung der Folgetätigkeiten
 Flexible Reaktion auf
nachfolgende Änderungen
 Eindeutige Priorisierung der
Anforderungen
 Enge Einbindung des Kunden
 Timeboxing aller Tätigkeiten
 Selbstorganisation und Teamarbeit
3
Klassisch vs. agiler Vorgehensweise
Zeit
Funktionalität
Traditionell
Kosten
Qualität
Agil
4
Scrum in 100 Worten
 Scrum ist ein agiles Framework / Rahmen, der es erlaubt auf die Auslieferung
der wichtigsten Geschäfts-Anforderungen innerhalb kürzester Zeit zu
fokussieren und innerhalb dem die Produktentwicklung stattfindet.
 Das Business setzt die Prioritäten (Return of Invest)
 Anforderungen sind als Listeneinträge im Product Backlog festgehalten
 Das Vorgehen ist empirisch, inkrementell
 Selbst-organisierende Entwicklungsteams legen das beste Vorgehen zur
Auslieferung der höchstpriorisierten Features fest.
 Das ScrumTeam verbessert sich kontinuierlich.
 Alle zwei Wochen bis zu einem Monat kann jeder lauffähige Software sehen
und entscheiden, diese so auszuliefern oder in einem weiteren Abschnitt zu
ergänzen.
 Transparenz wird erzeugt.
5
2
1
2
Agile Methodik im Projektkontext
3
Erfolgsfaktoren für die Einführung
Wie wird agiles Vorgehen derzeit beim ABS
Programm Leben Vertrag umgesetzt?
6
Allianz Business System (ABS) Programm der Allianz
 Umsetzung eines
spartenübergreifendes Systems für
Vertrags- und Schaden- bzw.
Leistungsbearbeitung.
 Die Einbeziehung der drei Sparten
mit ihren jeweiligen Besonderheiten
sowie der föderalen Systeme
erfordert eine Vereinheitlichung der
Kommunikation, der Dokumentation
und Schnittstellen auf Basis
gemeinsamer Standards
(ABS Vorgehensmodell).
7
Projekt ABS Leben – Herausforderung
Ausgangssituation
Zielsetzung
• hohe Parallelität der Arbeiten
1.
klare Zielsetzung je Release und
Iteration
• zu wenig Kommunikation zwischen den
beteiligten Fachbereichen
2.
Effiziente Reaktion auf sich ändernde
Anforderungen
3.
Reduktion der Planungsunsicherheit
4.
Fokussierung auf die wichtigsten
Produktmerkmale
5.
Wissenstransfer auf breiter Basis
6.
Teamorientierte Zusammenarbeit
7.
Verbesserung der Produktqualität
• unklarer Projektstatus
• Überlastung und Frustration der Mitarbeiter
• sinkende Qualität
• Priorisierungskonflikte
• zu geringe Umsetzungsgeschwindigkeit
8
Warum agil?
9
In welchen Fällen eignet sich agiles Vorgehen?
Project Management Institute (PMI):
Agil eignet sich am besten für
Projekte, die eine schnelle Reaktion
auf Veränderungen und eine
kontinuierliche Kommunikation
mit den Kunden erfordern.
Wasserfall eignet sich am besten
für Projekte, in denen wenig oder
keine Änderungen der
Anforderungen zu erwarten,
die Anforderungen klar sind
und von allen Team-Mitgliedern gut
verstanden werden.
Je kürzer der sichere Planungshorizont, desto eher eignet sich agiles Vorgehen.
Quelle: Adaptiert von Ralph D. Stacey, Strategic Management And Organisational
Dynamics: The Challenge Of Complexity, Prentice Hall, 2000
10
Einführung agile Methodik – Projekt Leben
Organisation
Methodik
2.
1.
Bottom – Up Einführung
3.
Planung
Programmleitung
ABS Leben
Backlog
Produktmanagement
Vertrag Leben
Backlog
Agiles PortfolioManagement
Release
Backlog
Release-Planung
Reorganisation
Team
Team
Backlogs
Backlog
Sprint Planning
Daily Scrum
Review
Retrospektive
TeamAbstimmung
Test-Integration
Pair Programming
Definition of Done
Breiten-Rollout
<
Projektmanagement
Querschnitt
Architektur
Teilprojekt
n
…
Teilprojekt
n
Testmanagement
11
Bottom-Up Einführung
PRO
 geringeres Risiko
 geringere Störung des Betriebs
 hohe Lernkurve, Schaffung
von best practices
 Integration der Beteiligten in
Prozess-Gestaltung
CONTRA
 „Akzeptanz“ von bestehenden
Strukturen (Scrum, but…)
 hoher Abstimmungsaufwand
mit „klassischen“ Projekt-Teams
 Einführung agiler Prozesse trotz
Schnittstellen zu klassisch
aufgestellten Teams
 teilw. redundante Vorgehensweise
und Strukturen
 Probleme/Behinderungen
des Projekts werden erkannt
und aufgezeigt
 kurzfristig geringere Einsparungen
(Zeit, Aufwand, Kosten)
12
Phase 1: Agilität in der Realisierung
Fachliche
Analyse
Anforderungsanalyse
Schätzung
Techn.
PrioriDesign
sierung
Code
Test
Inte- Unitgration Test
Releaseabnahmetest
Voraussetzung
• klare Priorisierung der
Anforderungen (Projektleitung /
Chief Product Owner)
Produktivsetzung
Ergebnis
1.
Definierte Iterationsergebnisse
(Team-Commitment)
2.
Frühzeitiges Erkennen von
Kapazitäts-Engpässen
(Velocity-Messungen)
• keine Änderungen an
Anforderungen während
Realisierungszyklus (Sprint)
3.
Höhere Gesamtqualität
(potentiell auslieferbare
Inkremente)
• CRs als Anforderungen für
folgende Sprints
4.
geringere Störanfälligkeit in
Realisierungsphasen
(Impediments)
• Übergabe granularer
Anforderungs-Artefakte
(User Stories)
• Definierte Testergebnisse
(Akzeptanzkritierien)
13
2. Phase: Reorganisation Projekt Leben
Gesamtprojektleitung
Strategieteam
Implementierungsteam
Schulung & Einführung
Architektur
PMO
Umsetzungskonzepte
Projektleitung
Realisierung, Test, RollOut
Projektleitung
Release n+2ff
Release n+1
Release n
Antrag
 Aufstellung nach Anforderungs-Bereichen
Antrag
Antrag
Bestand
Bestand
Bestand
„one team, one office“
Bestand
Finanzplattform
Leistung
Leistung
Leistung
 Minimierung
der Übergabe-Schnittstellen
Leistung
PEX, Controlling
 heterogene Teams
aus fach-Dokumente,PEX,Contr.
und technischen Experten
Dokumente
Controlling
Vers.technikProduktionsbetreuung
Vers.technik
 dedizierte
Vers.technik
Vers.technik
Migration)
Produktion
Konzeption & Design
Projektleitung
Release in Prod.
Testmanager
Antrag
Finanzplattform
Tests innerhalb der
Teams
Finanzplattform
 Wissenstransfer in- und zwischen den Teams
 Rotation der Experten je Release
Projektleitungsfunktion
Stabsfunktion
Team
14
Rel. n: Das aktuell in der Entwicklung/Test befindliche Release
Ergebnisse aus den ersten Phasen
 vermindertes Risiko
- bessere Planbarkeit des Projektfortschritts
(Priorisierung, Vorhersagbarkeit durch Velocity,
dedizierte Teams)
 erhöhte Produktivität
- eindeutige Rollen- und
Prozessverantwortlichkeiten
Prozess-Optimierung
durch agile Methodik
- Wissenstransfer und Skill-Erweiterung durch
fachlich/technische Teams
(Pair-Programming, Reviews, Feedback)
 verbesserte Qualität
- Priorisierung und Einplanung von Defect-Anteilen
- Erhöhung der Testabdeckung
(Teil der Definition of Done)
- Aufzeigen und Adressierung von Problemen im
Projekt und der Organisation (Impediments)
15
Product Backlog – die agile WBS
sortierte Liste der Anforderungen – regelmässige Repriorisierung
1. freigebene Anforderungen,
priorisiert, detailliert
 Input für Sprint-Planung
2. priorisierte Anforderungen
– zu detaillieren für folgende
Iterationen
3. neue Anforderungen
– niedrig priorisiert
unsortiert, high level
(CRs, Review-Ergebnisse)
16
Product Backlog – Skalierung
17
3
1
2
Agile Methodik im Projektkontext
3
Erfolgsfaktoren für die Einführung
Wie wird agiles Vorgehen derzeit beim ABS
Programm Leben Vertrag umgesetzt?
18
Wichtiger Erfolgsfaktor: Selbstorganisation
Gemeinsame Festlegung auf Arbeitsvereinbarungen (Team-Charter)
Beispiel:
Definition of Done
"Eine User-Story ist fertiggestellt, wenn die fachliche Abnahme erfolgt ist,
relevante Tests erfolgreich waren. JUnit Tests erstellt, eine autom. CodeÜberprüfung keine offensichtlichen Fehler liefert, Issuetracker
entsprechend aktualisiert wurden und der Checkin erfolgreich erfolgt ist"
Definition of Ready
"Design vollständig, Abnahmekriterien definiert,
Übergabe an Entwicklung erfolgt
Architekturthemen: relevante Punkte mit Architekten besprochen.
Anforderungs-Status gepflegt und Priorisierung eindeutig.“
19
Agilität in Großprojekten - Empfehlungen
 Unterstützung Management
 Schulung
 Konsequente Einführung
 Kommunikation
 angepasstes Berichtswesen
 Anpassung der Infrastruktur
- Testautomatisierung
- Application Lifecycle
Management
21
Lessons learnt (aus Retrospektiven)
Teamzufriedenheit
„Gute Stimmung, Arbeit klar strukturiert“
Produktivität
„kommen durch Sprintziele besser voran“
Qualität
„Defects werden schneller behoben“
Transparenz im Projekt
„Fokussierung auf wichtigste
Anforderungen“
Weiterer Einsatz
„Agile Methoden können im
Anforderungs-Management sinnvoll
unterstützen“
Erste agile Ansätze erfolgreich implementiert, positives Feedback Beteiligte und Management
23
Vielen Dank für Ihre
Aufmerksamkeit.
Ihre Fragen?