Was ist agiles Projektmanagement?
Wenn Software entwickelt wird, dann nutzte man lange Zeit das sogenannte Wasserfall Modell.
Die Anforderungen wurden zum Start des Projektes komplett aufgenommen und dann wurde die komplette Anwendung umgesetzt.
Meistens hat man versucht, den Kunden so wenig wie möglich zu involvieren, da dieser meistens Änderungswünsche hat. Denn diese Veränderungen sind in den Wasserfall Umsetzungen kaum einbaubar. Das liegt an folgenden Punkten:
- 1) Der Preis: Meistens wurde ein “fester” Preis vereinbart und eine genaue Stundenzahl für die Umsetzung genannt. Änderungen innerhalb einer Umsetzungsphase würden den Aufwand jedoch überproportional steigen lassen.
Beispiel: Die Umsetzungszeit wurde für 6 Monate und 2 Wochen festgelegt. Die Stundenzahl sind 800 Stunden. Der Dienstleister plant nun alle Ressourcen (Manager, Projektleiter, Programmierer, Designer, Content Spezialisten, etc.) ein. Dabei ist jedoch auch zu beachten, dass die meisten dieser Personen in unterschiedlichen Aufgaben tätig sind und nicht nur in diesem einen Projekt.
Nach einiger Zeit merkt der Kunde jedoch: “Upps. Ich habe eine ganz wichtige Sache vergessen” oder “Erst nach den ersten Entwicklungsschritten habe ich gemerkt, dass es noch ein paar Sachen gibt die es zu berücksichtigen gilt”.
Der Dienstleister oder das Entwicklungsteam wird jedoch sagen: “Sorry, wir haben das bereits vereinbart was gemacht werden soll. Wir können die Änderungswünsche nur in der nächsten Version berücksichtigen” (Klar: Es wird sicherlich nicht genauso formuliert, sondern in einer abgeschwächten Form, aber das ist damit gemeint).
Der Abnehmer (entweder eine Kunde oder eine interne Abteilung) wird sehr unzufrieden sein. Denn, es könnte sein, dass gerade diese neuen Funktionalitäten über den Projekterfolg entscheiden.
- 2) Die Zeit: Auch der Zeitraum für die Entwicklung wird sich enorm verändern. Denn wenn, zum Beispiel, der Designer mit seiner Aufgabe fertig ist und an einem anderen Projekt arbeitet, kann er/ sie die Änderungswünsche nicht vornehmen, sondern das Team muss darauf warten, dass der Designer mit seinen derzeitigen Projekten fertig wird. Was wiederum bedeutet, dass höchstwahrscheinlich ein grosser Teil des Team mit “warten” beschäftigt sein wird.
Zum einen werden die bestehenden Teammitglieder aufgehalten und zum anderen verlängert sich der Zeitraum für die Entwicklung und natürlich auch der Preis, der exorbitant ansteigt.
Das Besondere an IT Projekten ist jedoch: Kaum jemand weiss von Anfang an, was die Anforderungen an die Software sind. In den meisten Fällen werden innerhalb der Aufgabe die Funktionalitäten klar. Und so kann es sein, dass sich die Anforderungen zum Teil zu 80 Prozent vom Start unterscheiden.
Mit den Jahren hat sich dieser Trend nur noch verstärkt. Heutzutage ist Software in den meisten Fällen relativ komplex und wird langfristig entwickelt.
Dadurch haben sich Experten aus der IT Branche Gedanken gemacht, wie man IT Projekte besser handhaben kann. “Agiles Projektmanagement” oder einfach “Agile” war der Lösungsansatz, welchen man nutzen sollte, um Softwareumsetzungen besser zu machen.
Das Manifest
Dieser Lösungsansatz wurde im “Agilen Manifest” im Jahr 2001 festgehalten.
Dabei gibt es zwölf Prinzipien welchem Agile folgt. Um es kürzer zu halten, sind die wichtigsten Punkte hier als Überschriften beschrieben:
- Die Annahme, dass sich Anforderungen während des Projektes ändern: Eine wichtige Erkenntnis ist, dass sich Anforderungen meistens ändern werden und man das dementsprechend berücksichtigen muss. Eine Versteifung auf initiale Anforderungen (z.B Wasserfall Modell) ist in vielen Fällen, wenig sinnvoll.
- Funktionierende Funktionalitäten werden stetig geliefert: Anstatt, wie beim traditionellen Projektmanagement Monate und Jahre, auf ein fertiges Produkt zu warten, werden in kurzen Abständen funktionierende Funktionalitäten geliefert. So kann auch der Kunde/ die interne Abteilung schnell gegenlenken und Resultate sehen.
- Entwickler und Kunde stehen im ständigen Austausch: Anders als bei der traditionellen Zusammenarbeit wird durch agiles Projektmanagement der ständige Austausch zwischen allen Parteien gefördert. Dass heisst, nicht nur zum Start des Projektes, sondern auch während des Projektes. Dort können dann auch Änderungswünsche besprochen werden.
Die Vorteile bei der Softwareentwicklung
Die Vorteile lassen sich relativ schnell erkennen.
Der Kunde oder Abnehmer wird viel glücklicher sein, weil er/ sie zum einen 1) ständig neue funktionierende Funktionalitäten geliefert bekommt (in Wochen oder Monatsabschnitten) und zum anderen 2) Änderungswünsche einbringen kann.
Zudem sieht solch ein Projektmanagement auch vor, dass sich die Entwicklerteams immer weiter verbessern (Punkt 12 im Agilen Manifest) und alles so einfach wie möglich zu halten.
Das Entwicklerteam wird auch glücklicher sein, da es keine Argumente mit dem Kunden beginnen muss, wie “Aber das war nicht Teil der Anforderungen” oder “das würde den Projektrahmen sprengen, lassen Sie uns das lieber in einer nächsten Phase machen”.
Herausforderungen
Agiles Projektmanagement bringt jedoch auch einige Herausforderungen mit sich.
Wie im Beitrag bereits beschrieben: Wenn sich die Anforderungen verändern, dann verändern sich auch die Zeiträume und die Kosten.
Das bedeutet also, dass man zum Beispiel die folgenden Punkte flexibel halten muss:
- Budget: Da sich die Anforderungen immer wieder ändern werden und diese vom Team auch begrüsst werden, ändert sich natürlich auch das Budget. Das Budget muss daher flexibel gehalten werden.
- Zeitrahmen: Auch der Zeitrahmen wird sich bei ständig ändernden Anforderungen immer weiter ausdehnen. Was initial mit 2 Monaten angegeben wurde, kann dadurch auch gut und gerne 4 Monate, 6 Monate oder länger dauern.
Das ist wiederum meistens schwer für den Kunden zu verstehen. Wer möchte schon gerne verstehen, dass der Preis und die Zeit flexibel bleiben müssen? Das wirkt gegenüber dem Kunden dann fast schon wie ein “Laissez-faire” Ansatz, in welchem man sich soviel Zeit wie nur möglich lassen kann und sich an der Kasse wie an einem Buffet bedienen kann.
Der Agile Ansatz kann also nur gewählt werden, wenn ein gewisses Vertrauen zwischen Anbieter und Kunde besteht und das Verständnis versteht, dass Softwareentwicklung oftmals nicht von Anfang an genau geplant werden kann.
Lösungsansatz
Um die Herausforderung zu lösen, versucht man eine Art “Mix” aus klassischem Ansatz (festes Budget, feste Anforderungen, fester Zeitplan) und Agile (flexible Anforderungen, enge Zusammenarbeit) zu nutzen.
So hat der Kunde zum einen eine grobe Richtlinie wie viel das Ganze kosten wird und weiss in etwa wann er/ sie eine fertige Lösung erhält.
Fazit
Agiles Projektmanagement kann noch viel weiter im Detail beschrieben werden. Dies sind jedoch die Hauptpunkte. Auf Spezialisierungen von Agile wie Scrum oder Kanban gehen wir hier nicht ein. Man sollte sich damit beschäftigen.
Sehr viele, unter anderem sehr erfolgreiche, Unternehmen unterschiedlichster Grösse nutzen heutzutage diesen Ansatz.
Die Grundsätze lassen sich jedoch in fast allen Projekten einsetzen, auch wenn diese nicht im IT Bereich sein sollten:
- Enge Zusammenarbeit zwischen allen Stakeholdern (Kunde, Entwickler, Projektleiter, etc.)
- Prozesse so einfach wie möglich halten
- In kurzen Abständen messbare, funktionierende Funktionalitäten liefern
- Offen sein für Veränderungen während Projekten
- Offenheit auf Seiten des Kunden das Budget und den Zeitrahmen anpassen zu lassen
Nutzen Sie Agile Methoden? Wie gehen Sie vor?
Microtool gibt eine Übersicht über diese Projektmanagement Methode
In diesem Glossar gibt es eine Definition zum Begriff agiles Projektmanagement
Bilder: Canva.com
Der Autor: Sascha Thattil arbeitet bei YUHIRO und hilft Unternehmern und Unternehmen beim einfachen Aufbau von Programmier-Teams in Indien. YUHIRO ist ein deutsch-indisches Unternehmen welches IT Firmen, Agenturen und IT Abteilungen Softwareentwickler bereitstellt.
Schreibe einen Kommentar