INFOGEM AG Informatiker Gemeinschaft für Unternehmensberatung Rütistrasse 9, Postfach 5401 Baden, Switzerland Phone: +41 56 222 65 32 Internet: www.infogem.ch Robust und Agil gegeneinander oder miteinander? Thomas Haas thomas.haas@infogem.ch 2009-11 Robust und Agil 1
Prozessmodelle Die drei Pro's Prozess Muster für Arbeitsweise definiert Kontext (Unternehmen, Kunde, Auftraggeber, ) stellt (alle) Ressourcen zur Verfügung Softwar e Produkt Arbeitsergebnis verwendet erstellt Projekt Arbeiten 2009-11 Robust und Agil 3
Prozessmodelle Zweck Zweck Gerippe für die Planung, Durchführung und Überwachung von Projekten Schlüsselrolle Basis für die Auswahl von Techniken, Methoden, Werkzeugen Führungs- und Lerninstrument Prozessmodelle definieren Ergebnisse Rollen Führungsmechanismen - Änderungskontrolle - Fortschrittserfassung - Projektplanung Soll-Ablauf Tätigkeiten und ihre Beziehungen Robuste Verfahren Prince 2 Hermes Wasserfall Rational / Open Unified Process V-Modell Agile Verfahren Scrum Extreme Programming Feature Driven Development 2009-11 Robust und Agil 4
Prozessmodelle Zusammenspiel Kunde, Prozess, Projekt Auftraggeber: Kunde (extern), Unternehmen (intern) Auftrag Vorgaben, Freigaben, Beistellpflichten Entlastung Vorstudie Machbarkeit Spezifikation Umsetzung Einführung Prozess Resultate, Lieferobjekte, Berichte, Anträge Projekt Zwischenresultate, interne Berichte, Protokolle, Pendenzen, Konzepte Softwar e Produkt Meilenstein, Decission Point, Gate 2009-11 Robust und Agil 5
Prozessmodelle Stand der Technik: evolutionäre Bereitstellung Kenntnis der Anforderfungen zu Beginn des Projekts Gesamtheit bekannt Gesamtheit bekannt Release n Gesamtheit nicht bekannt Release 1 3 2 Release m 3 2 Release 1 geplanter Umfang Release 1 gelieferter Funktionalität big bang inkrementell iterativ Anforderung Fehlerkorrekturen Anforderungsänderung Release 1 Release 2 Release 3 2009-11 Robust und Agil 6
Mentalität agiler und robuster Verfahren Agile Verfahren (Scrum, Extreme Programming, Feature Driven Development, ) Keine zwei Projekte sind gleich. Vertrauen in Menschen Mitwirkung des Kunden ist kritisch für den Erfolg und deshalb unabdingbar Am Anfang braucht man ein Gefühl für das Ganze, aber spezifizieren kann man nur die Anforderungen an die aktuell bekannte Funktionalität. Entwerfe für die aktuelle Funktionalität, nicht für die Zukunft. Dem Kunden muss man ca. alle zwei bis vier Wochen etwas Nützliches liefern. Probiere, probiere erneut" wird als richtig angesehen. Robuste Verfahren (Prince 2, Hermes, Wasserfall, Rational Unified Process, V-Modell, ) Die Durchführung von Projekten kann standardisiert werden. Vertrauen in Prozesse Die Kooperationsbereitschaft / - fähigkeit des Kunden ist nicht sehr ausgeprägt. Anforderungen müssen im beträchtlichen Masse am Anfang des Projekts spezifiziert sein. Architektur muss fixiert sein, bevor mit dem Design und Codieren begonnen wird. Es braucht Zeit, dem Kunden etwas Nützliches liefern zu können. Tue es auf Anhieb richtig wird als richtig angesehen. 2009-11 Robust und Agil 7
Wichtigste Zutaten agiler und robuster Verfahren Agile Verfahren Kultur (Verhalten) - Grundsätze - Einstellung - Kommunikation Technik (Handwerk) - Arten von Tätigkeiten - Ergebnisse Einfache, wirksame Hilfsmittel Robuste Verfahren Prozessmodell und Prozessbeschreibungen - Arten von Tätigkeiten - Verantwortlichkeiten für Arten von Tätigkeiten, Prozesse - Ergebnisse - Vorlagen für die Ergebnisse - Schnittstellen nach Aussen Umfangreiche Hilfsmittel - Vorlagen für Projektpläne Folge von Tätigkeiten Meilensteine evtl. Anleitung für das Zuschneiden auf die Gegebenheiten des Projekts - Anträge, Freigaben 2009-11 Robust und Agil 8
Kunden- und Business- Anforderungen (Problemstellung) Lösungs- Vorschlag (System- ) Anforderungen Entwurf / Konzepte Prozess- Landkarte Produkt / Resultat Software- Architektur System Software-/ System- Architektur Umsysteme Prozess- Landkarte Projekt- Anforderungen und Randbedingungen Marketing- Plan Einführung Vermarktung Schulungs- Konzept Ausbildung 2009-11 Robust und Agil 9
Robust und Agil im Projekt (XT) Vorstudie Machbarkeit Spezifikation Umsetzung Einführung Robust Pflichtenheft BRS Lösungsarchitektur Vorgaben, Regelungen Schnittstellen- Spezifikation Marketing-Plan Schulungs-Plan Prozesse- Anforderungen Bekanntes Umsysteme Bestehende Komponenten Standard- Systeme Rollout-Plan Schulung Vermarktung Inbetriebnahme Agil Einbezug Kunde Innovation Priorisierung, Fokus Lauffähige Software ( Prototyp I ) Einbezug Kunde Innovation User Stories Prototyp II Einbezug Kunde Neues Kritisches Schwieriges Unbekanntes Einbezug Kunde Ausnahmen Task Force Verbesserungen 2009-11 Robust und Agil 10
Robust und Agil Entscheidungshilfe (1/2) Agil Produkt- Entwicklung Innovation Agil oder Traditionell Unbekannt Offen Anforderungen Traditionell Wartung Pflege Ablösung Verstanden Vereinbart Beherrscht Konstant Umfeld Technologie Neu Wandelnd 2009-11 Robust und Agil 11
Robust und Agil Entscheidungshilfe (2/2) Spricht für agiles Vorgehen Spricht für robust/traditionelles Vorgehen Hohe Risiken Produktentwicklung Hoher Anteil Innovation Unbekanntes oder wechselndes Umfeld Exit bei Fehlentwicklung schnell suchen Geringe Risiken Wartung, Erweiterung, Pflege, Migration Innovation gering oder unerwünscht Bekanntes oder starres Umfeld Termin und Mitteleinsatz optimiert, fixiert Fester Termin oder feste Mittel, offener Lieferumfang Resultat fixiert Termin, kosten variabel (allenfalls durch Festpreis abgesichert) Umgebung mit Vertrauen Interne Ressourcen bekannte oder strategische Partner Transparente Strukturen Vertrauen in Personen Fehler- und Verbesserungskultur Umgebung mit Misstrauen Externer, unbekannter Partner ohne längerfristige Bindung Geografisch stark verteilt Vertrauen in Organisation und Prozesse Sündenbock-Kultur 2009-11 Robust und Agil 12