Software-Entwicklungsprojekte (agil)
Agiles Projektmanagement ist ein Oberbegriff für Entwicklungsmodelle wie z.B. Scrum oder Extreme Programming Es ist gekennzeichnet durch adaptives Planen und das Team entscheidet, welche Arbeitsergebnisse wann erbracht werden können. Die Hauptaktivitäten sind dabei:
- Anforderungskatalog (Product Backlog) erstellen und priorisieren
- Architektur definieren
- Iterations- (Sprint-) Inhalte definieren
- Sprints umsetzen und die Anforderungen laufend Testen
Wichtige Schritte
Nr. |
Schritte |
Aufgaben |
01 |
Initialisierung |
Bedürfnisse und Ziele der Stakeholder erheben. Probleme des bestehenden und Merkmale des neuen Systems analysieren. Mögliche Projektrisiken identifizieren, analysieren und bewerten. Erarbeiten der Entscheidungsgrundlagen für agiles PM und Entscheid treffen. |
02 |
Initialer Projektplan |
Der Product Owner erstellt mit dem Projektleiter zusammen einen initialen Projektplan. Daraus gehen die Rahmengrössen Umfang, Ressourcen, Kosten und Zeit hervor, sodass jetzt, wenn das Vorhaben vom Management freigegeben wird, mit der richtigen Entwicklung im Rahmen des ersten Releases sprich Sprints begonnen werden kann. |
03 |
Projektabwicklungskonfiguration I |
Gemäss dem Scope werden die Anforderungen bzw. Leistungsmerkmale beschrieben und im Anforderungskatalog (Product Backlog) festgehalten. Basierend auf der Anforderungen wird der Systemarchitektur-Rahmen entwickelt, Zusätzlich werden - sofern nicht vorhanden - Architektur-Entscheidungen, Design-Regeln und Umsetzungsrichtlinien definiert. Die notwendigen Konzepten werden in der entsprechenden Tiefe geschrieben. |
04 |
Projektabwicklungskonfiguration II |
SCRUM-Vereinbarungen treffen: Sprintdauer, Definition „Done“, Besetzung der Rollen, etc. IT-Security und Betriebsaspekte klären. |
05 |
Projektabwicklungskonfiguration III |
Aufwand für die Realisierung der Product Backlog-Elemente bestimmen und die Anzahl der notwendigen Iterationen (Sprints) festlegen. Einen Releaseplan erstellen mit der Anzahl Sprints die benötigt werden, um den nächsten Release zu erreichen. |
06 |
Sprint Planning 1 |
Im Sprint Planning Meeting 1, stellt der Product Owner die User Stories vor. Zusammen mit dem Team werden das Ziel und der Inhalt (das WAS, die User Stories) des nächsten Sprints, bestimmt. In diesem Schritt wird auch über die qualitative Beschreibung der User Stories mittels DoR-Prinzip überprüft. Wenn alles geklärt ist, gibt das Team das Commitment für den nächsten Sprint. Das Ergebnis bzw. die entsprechenden Product Backlog-Items werden im «Sprint Backlog» festgehalten. |
07 |
Sprint Planning 2 |
Im Sprint Planning Meeting 2, erarbeitet das Sprint Team die Arbeiten der nächsten 30 Kalendertage (sprich das WIE: Wie wollen wir die selektierten User Stories umsetzen?). Dabei werden die User Stories auf einzelne Tasks heruntergebrochen und im Task Board festgehalten. |
08 |
Sprint (Inkrementelle Entwicklung) |
Während einem Sprint wird das System auf Grundlage der vorgegebenen Architektur und der für diesen Sprint ausgewählten Anforderungen gebaut. In jedem Sprint werden die definierten Anforderungen so umgesetzt, dass dieser End-To-End (GUI bis Datenbank) überprüft werden kann. Gleichzeitig wird das System laufend getestet, so dass am Ende jedes Sprints ein fertiges Stück der benötigten Software bereit steht. |
09 |
Sprint Review (Product Review) |
Am Ende des Sprints wird mittels Sprint Review eine Produktprüfung durch den Kunden vorgenommen. Das Team präsentiert dem Product Owner und allen interessierten Stakeholdern das Ergebnis seiner Arbeit live am System und sammelt Feedbacks. Der Product Owner nimmt die umgesetzten User Stories ab, sofern sie die anfänglich formulierten Abnahmekriterien erfüllen (Definition-of-Done-Prinzip). |
10 |
Retrospective (Lessons learned) |
Nach Abschluss jedes Sprints führt das Entwicklungsteam unter der Leitung des Scrum Masters eine «Retrospective» durch: Das heisst, es findet ein Lessons-learned-Meeting statt mit dem Ziel, das Gelernte sofort für die kommenden Sprints zu verwenden. Im Rahmen der Retrospektive werden diejenigen Punkte in das Impediment Backlog aufgenommen, welche das Team daran hindern, maximal effizient zu sein. |
11 |
Backlog Grooming |
Das Backlog Grooming – auch Backlog Refinement genannt – ist ein Treffen des Entwicklungsteams mit dem Product Owner, in welchem sie die Product Back-log-Items diskutieren und verfeinern sowie das nächste Sprint Planning Meeting vorbereiten. Das heisst, es geht darum, zu klären, ob das Backlog Item klar genug formuliert und tief genug aufgesplittet ist, um es zu schätzen und in einem Sprints zu implementieren. |
12 |
Integrationstest/Releasetest |
Es wird das gesamte System gegen die gesamten Anforderungen (funktionale und nicht funktionale Anforderungen) getestet. |
13 |
Auslieferung & Einführung |
Das IT-System in seiner produktiven Umgebung installieren und zur Nutzung dem Betrieb übergeben. |
14 |
Übergabe |
Nach der Inbetriebnahme des IT-Systems, erfolgt innerhalb eines gegebenen Zeitraums die Übergabe an die für den Betrieb verantwortliche Organisation. |
Lieferobjekte
Nr. |
Bezeichnung |
Kurzbeschrieb |
01 |
Anforderungskatalog |
Ausformulierte und vollständig definierte Anforderungen, welche zu Beginn des Projekts bekannt sind (Business Case, Product Backlog). |
02 |
Projektentscheid |
Entscheid für oder gegen agiles PM nach SCRUM. |
03 |
Sicherheitskonzept |
Analysiert die Sicherheitsanforderungen an das System und beschreibt die getroffenen Massnahmen im Bereich Sicherheit und Datenschutz: Physische Sicherheiten, Software-Sicherheiten, Zugriffsberechtigungen |
04 |
SCRUM |
Vereinbarung der Rahmenbedingungen, welche für die Projektführung nach SCRUM gelten: Sprintdauer, Definition des Status „Done“, Rollendefinition und personelle Zuweisung. Betriebskonzept und Einstufung gemäss geltenden IT-Security Roules |
05 |
Projektmanagementplan |
Grobe Übersicht über den gesamten Projektverlauf. Der nachfolgende Releaseplan gibt Auskunft über die Realisierung der Entwicklungsschritte (Releases) basierend auf dem Product Backlog. |
06 |
Product Backlog |
Liste der Leistungsmerkmale, basierend auf dem Anforderungskatalog, den Systemanforderungen und der Systemarchitektur, priorisiert. |
07 |
Releaseplan |
Ein grober Projektplan, welcher den Aufwand für die Realisierung der definierten Product Backlog Elemente aufzeigt. |
08 |
Sprint Backlog |
Taskliste für den kommenden Sprint Backlog. |
09 |
Testplan/ -konzept |
Legt fest, welche Tests im jeweiligen Sprint durch wen durchzuführen sind. Im Testkonzept wird die Grundlage definiert, welche die beteiligten Personen, Aktivitäten und Infrastruktur aufzeigt. Testkonzept: Definiert die Testrahmenbedingungen und die Testmethoden im jeweiligen Sprint, und dient der effizienten Planung und Durchführung der einzelnen Tests. |
10 |
Testfall-Spezifikation |
Beschreibt die Grundlagen für die durchzuführenden Tests und wird für jeden Sprint mit erarbeitet. |
11 |
Lastprofil |
Beschreibt die Auslastung resp. Belastung des Systems. |
12 |
Integrationskonzept |
Definiert die Eingliederung des Systems (Master Release) in der bestehenden IT-Landschaft und spezifiziert die dazu notwendigen Schnittstellen detailliert. |
13 |
Prototyp |
Vorabversion des Projektprodukts, welches meistens nicht funktionsfähig ist. Es dient zur Überprüfung der Einhaltung von Anforderungen mit dem Auftraggeber und fördert die Zusammenarbeit. |
14 |
Testbericht |
Beschreibt den Stand des Testfortschrittes bzw. deren Ergebnisse im Systemtest sowie die getroffenen Massnahmen und offene Punkte. |
15 |
Test- und Abnahmebericht |
Beschreibt den Stand des Testfortschrittes bzw. deren Ergebnisse im Abnahmetest des Master Release und gibt eine Empfehlung in Bezug auf die Einführung ab. |
16 |
Support- und Betriebskonzept |
Anleitung für Installation und Betrieb der Softwarelösung in der produktiven Umgebung. Beschreibt die Unterstützung, die der Lieferant eines Produktes dem Anwender bietet. |
17 |
Benutzer- und Schulungsunterlagen |
Beschreibt die Anwendung des IT-Systems aus Sicht der verschiedenen Benutzergruppen |
18 |
Programm- und Wartungsdokumentation |
Beschreibt alle Elemente, die zur Lösung einer bestimmten Aufgabe im Rahmen des IT-Systems notwendig sind. Dokumentiert das Programm resp. die Programme des IT-Systems. |
19 |
Einführungskonzept |
Legt die die Planung und Bereitstellung der erforderlichen Ressourcen für die Einführung fest. |
20 |
Migrationskonzept und -verfahren |
Das Migrationskonzept definiert die technischen und organisatorischen Voraussetzungen an das Migrationsverfahren, welches für eine erfolgreiche Einführung des Systems benötigt wird. Das Verfahren stellt die Überführung des Systems in die bestehende IT-Landschaft während der Einführung sicher |
21 |
Benutzerdokumentation |
Beschreibt die Anwendung des IT-Systems aus Sicht der verschiedenen Benutzergruppen. |
22 |
Rollout-Schlussbericht |
Protokolliert den Ablauf der Einführung (Migrationen, Pilotinstallation, Verbreitung, Ausbildung, Einführungsschritte, offene Punkte). |
Anwenden