Agiles Projektmanagement
Agiles Projektmanagement mit HERMES und SCRUM
Warum AgilUm die Komplexität der Entwicklung von Produkten und Systemen zu meistern, setzen viele Entwickler agile Methoden ein. Am Beispiel der Methode SCRUM wird aufgezeigt, wie HERMES mit der agilen Entwicklung zusammenspielt.
Positionierung der agilen Entwicklung im PhasenmodellHERMES deckt den gesamten Lebenszyklus des Projektes ab. SCRUM regelt die Organisation und die Steuerung des Entwicklungs-Teams. Für das Entwicklungs-Team müssen die Phasenübergänge jedoch nicht sichtbar sein. Das Entwicklungs-Team ist nur bedingt in die Steuerung des Projekts involviert, da die Steuerung des Entwicklungs-Teams über Product Backlog und Sprint-Backlog erfolgt.
Die Abbildung 33 zeigt auf, dass entlang den HERMES-Phasen die Entwicklung agil geführt wird.
Die HERMES-Phasen und die Entscheidungsaufgaben mit den Meilensteinen der Steuerung, Führung und Ausführung werden von Projektleiter und Auftraggeber nach wie vor durchlaufen. Auch bei einer agilen Entwicklung nehmen im Rahmen der Projektsteuerung und Projektführung die Auftraggeber und Projektleiter ihre Aufgaben wahr, da diese nicht mit SCRUM abgedeckt werden.
Bei der agilen Entwicklung mit SCRUM sind die Schwerpunkte des Entwicklungs-Teams in den Phasen wie folgt:
InitialisierungDer Schwerpunkt der Phase Initialisierung liegt auf der Erarbeitung der Studie mit Lösungsvarianten. Entsprechend hat in dieser Phase die Entwicklung noch keine Bedeutung.
KonzeptIn der Phase Konzept, wenn der Entwicklungspartner festgelegt und der Entwicklungsumfang genügend stabil definiert ist, kann SCRUM für die agile Entwicklung eingeführt werden. Dazu wird das Modul Entwicklung agil eingesetzt.
Zuerst wird die Aufgabe Entscheid zu SCRUM treffen durchgeführt. Die agile Entwicklung mit SCRUM hat Auswirkungen auf die Partner Anwender, Ersteller und Betreiber. Deshalb wird der Entscheid mit Einbezug der Betroffenen bewusst gefällt. Die Einführung von SCRUM wird anschliessend mit der Aufgabe SCRUM einführen geplant und durchgeführt. Ab dann können bereits die ersten Sprints durchlaufen werden. Diese können dazu dienen, die Systemarchitektur mit einem Prototypen (Proof-of-Concept) zu verifizieren.
In der Phase Konzept wird der Entscheid zur Systemarchitektur getroffen. Dazu muss die Architektur so detailliert erarbeitet werden, dass sie durch die zuständige Controlling- und Vorgabestelle geprüft und der Entscheid zur Systemarchitektur getroffen werden kann. Dadurch wird die Nachhaltigkeit des IT-Systems sichergestellt, bevor viele Ressourcen in die Entwicklung fliessen.
RealisierungDer Schwerpunkt der agilen Entwicklung liegt in der Phase Realisierung. Bei der agilen Entwicklung erfolgt die Erarbeitung der Detailspezifikation zeitnah zur Entwicklung. Die Entwicklung des Systems/Produkts erfolgt nach Vorliegen der jeweiligen Detailspezifikation in Sprints.
EinführungIn der Phase Einführung werden weitere Sprints durchlaufen. Dabei werden z. B. Korrekturen und das Bugfixing agil geführt und das bis zur Abnahme des Systems.
SzenarienHERMES bietet zwei Standardszenarien an, die die agile Steuerung der Entwicklung mit SCRUM beinhalten:
-
IT-Individualanwendung agil
-
Dienstleistung/Produkt agil
Mit diesen Szenarien verfügt der Anwender über eine Methode zur agilen Steuerung der Entwicklung, die er sofort anwenden kann.
Nachfolgend wird beschrieben, wie HERMES und SCRUM gemeinsam in einem IT-Entwicklungsprojekt angewendet werden.
Modul Entwicklung AgilSCRUM ist in HERMES als Modul Entwicklung Agil enthalten. Es enthält alle SCRUMArtefakte als Ergebnisse, und die SCRUM-Ereignisse sind in den Aufgaben integriert.
Die Abbildung 34 zeigt die Positionierung des Moduls Entwicklung Agil im Szenario ITIndividualanwendung agil. Das Modul ist auf der Hierarchieebene Führung angesiedelt. Es ergänzt das Modul Projektführung, dessen Ergebnisse und Aufgaben nach wie vor benötigt werden, da sie von SCRUM nicht abgedeckt sind.
Die Module der Hierarchieebene Ausführung werden weiterhin benötigt, da SCRUM keine Angaben zu den konkreten Aufgaben und Ergebnissen zur Beschaffung, zur Entwicklung des IT-Systems, zum Testen, zur Migration etc. macht, sondern auf die agile Steuerung der Entwicklung fokussiert.
Rollen
SCRUM verfügt über drei Rollen. Sie ergänzen die HERMES-Rollen und werden gemäss der Definition der SCRUM Guide™ gelebt.
HERMES geht davon aus, dass eine Person mehrere Rollen besetzen kann (Rollenkumulation). Ein HERMES-Rolleninhaber kann somit zusätzlich eine SCRUM-Rolle übernehmen. Die Tabelle zeigt mögliche Rollenkumulationen.
SCRUM Rolle |
HERMES Kandidat für die SCRUM-Rolle
|
---|---|
Product Owner |
Business Analyst |
Projektleiter des Anwenders |
|
Geschäftsprozessverantwortlicher |
|
Anwendungsverantwortlicher |
|
IT-Architekt |
|
Entwicklungsteam |
Entwickler, Business Analyst, Testverantwortlicher, Tester |
SCRUM Master |
Entwickler, Business Analyst |
HERMES und SCRUM haben bezüglich der Führung des Teams ein grundsätzlich unterschiedliches Verständnis. Während HERMES davon ausgeht, dass der Projektleiter Arbeitsaufträge erteilt, wird die Arbeit des SCRUM-Teams durch den Product Owner über das Product Backlog gesteuert, und das Team organisiert seine Arbeit selbstständig.
Für die Anwendung von SCRUM ist die Wahrung der in SCRUM definierten Rollen ein zentraler Erfolgsfaktor. Bei einer Rollenkumulation muss beachtet werden, dass die in SCRUM definierte Rolle durch den Rolleninhaber eingehalten wird.
Aufgaben
Weitreichende Ausrichtung der AufgabenDie Ausrichtung der Aufgaben auf die Softwareentwicklung geht im Modul Entwicklung Agil weiter, als dies in SCRUM der Fall ist. Die Tabelle zeigt die Aufgaben des Moduls Entwicklung Agil und ihre Beziehung zur SCRUM Guide™.
HERMES Aufgabe |
HERMES Aufgabenbeschreibung |
SCRUM Guide™
|
---|---|---|
Entscheid zur agilen Entwicklung mit SCRUM treffen |
Der Entscheid bildet die Grundlage für die agile Entwicklung mit SCRUM. Er legt fest, wie die agile Arbeit für die Entwicklung mit SCRUM erfolgt und wie sie eingeführt wird. |
Nicht vorhanden |
SCRUM einführen |
Die gezielte Einführung von SCRUM schafft die Voraussetzung für die agile Entwicklung. |
Nicht vorhanden |
Product Backlog führen |
Das Product Backlog schafft die Voraussetzung zur Erarbeitung des Releaseplans und zur Durchführung der Sprints. |
Teil von SCRUM.
|
Releaseplan erarbeiten |
Der Releaseplan bildet die Grundlage, um die Sprints durchzuführen, die Auslieferung eines Releases an die Anwender zu planen und die Aktivitäten mit den betroffenen Stellen zu koordinieren. |
Nicht vorhanden |
Sprints durchführen |
Die Durchführung eines Sprints führt zu einem vereinbarten, konkreten und überprüfbaren Ergebnis. |
Der Sprint ist das Herz von SCRUM.
|
Die folgenden Aufgaben des Moduls Projektführung sind bei der agilen Entwicklung besonders zu beachten:
Änderungsmanagement führenDie Priorisierung des Product Backlogs führt zu Veränderungen im Leistungsumfang. Die Projektleiter des Anwenders und des Erstellers führen das Änderungsmanagement gemäss dem für das Projekt definierten Prozess, der im Projektmanagementhandbuch festgehalten ist. SCRUM macht diese Aufgabe nicht überflüssig.
Auch beim Einsatz von SCRUM müssen der Projektumfang und die Projektabgrenzung im Auge behalten werden. Eine Ausweitung des Umfangs oder eine Verschiebung der Projektabgrenzung kann die Stammorganisation betreffen und muss durch die zuständigen Stellen beurteilt werden. Dies sind insbesondere der Auftraggeber und die für das Projektportfoliomanagement zuständige Controlling- und Vorgabestelle.
Leistungen vereinbaren und steuernDie Steuerung der Leistungen erfolgt mittels Priorisierung der Anforderungen über das Product Backlog und die Sprint Backlogs.
Bei Leistungsvereinbarungen zu Festpreisen führen Änderungen des Leistungsumfangs zu Vertragsanpassungen. Grundlage dazu bildet die Änderungsstatusliste.
Positionierung von HERMES und SCRUM
In einem Projekt, in dem die Entwicklung agil mit SCRUM geführt wird, wird SCRUM als Ergänzung zu HERMES eingesetzt.
Die Tabelle zeigt die grundlegend unterschiedliche Positionierung von HERMES und SCRUM auf. Sie macht deutlich, dass SCRUM HERMES nicht ersetzt, sondern bei Bedarf ergänzt.
Schwerpunkt |
HERMES |
SCRUM
|
---|---|---|
Projekt Lebenszyklus |
HERMES deckt den gesamten Lebenszyklus des Projekts ab. Das heisst vom Projektinitialisierungsauftrag bis zum Projektabschluss. |
SCRUM deckt den Zeitabschnitt des Projekts ab, in dem entwickelt wird. |
Das Phasenmodell definiert differenzierte Entscheidungspunkte, an denen die Abstimmung des Projekts mit der Stammorganisation erfolgt (z. B. für die Abstimmung der Systemarchitektur). |
SCRUM definiert keine differenzierten Entscheidungspunkte zur Abstimmung mit der Stammorganisation. |
|
Ergebnisse, Aufgaben, Rollen |
HERMES definiert alle Ergebnisse, Aufgaben und Rollen für festgelegte Szenarien. |
SCRUM definiert die für die agile Steuerung der Entwicklung benötigten Ergebnisse (Artefakte), Aufgaben (Ereignisse) und Rollen. |
Ergebnisse, Aufgaben und Rollen sind auf den konkreten Projektinhalt (d. h. auf die Charakteristik eines Projekts) ausgerichtet. Sie sind spezifisch. |
Ergebnisse, Aufgaben und Rollen sind nicht auf den konkreten Projektinhalt (d. h. die Charakteristik eines Projekts) ausgerichtet. |
|
HERMES beschreibt konkrete Aufgaben zur Erarbeitung von projektspezifischen Ergebnissen. |
SCRUM beschreibt keine konkreten Aufgaben zur Erarbeitung von projektspezifischen Ergebnissen. SCRUM beschreibt keinen Entwicklungsprozess sondern ermöglicht die relative Wirksamkeit der Entwicklung messbar zu machen (Zitat aus SCRUM-Guide). |
|
Hierarchieebenen |
HERMES unterscheidet die Hierarchieebenen Steuerung, Führung und Ausführung. Die Rollen sind diesen drei Hierarchieebenen zugeordnet. |
SCRUM unterscheidet die Ebenen
|
HERMES umfasst mehrere Module, die je einer der Hierarchieebenen zugeordnet sind.
|
|
|
Partner |
HERMES definiert die Zusammenarbeit zwischen Anwender, Ersteller und Betreiber. |
SCRUM definiert die Zusammenarbeit zwischen Anwender (Product Owner) und Entwickler (Rolle SCRUM Team). |
Übersicht der Methodenelemente
HERMES und SCRUM bestehen aus ähnlichen Methodenelementen, sodass eine Integration des SCRUM-Frameworks in der HERMES-Methode einfach möglich ist.
Methodenelemente HERMES |
Methodenelemente SCRUM
|
---|---|
Ergebnis |
Artefakt |
Aufgabe |
Ereignis |
Rolle |
Rolle |