Im Energiemarkt, der mit der Transformation zum digitalen Energiesystem zusätzlich an Dynamik zugenommen hat, sind klassische Ansätze in der Projektabwicklung – insbesondere bei der Entwicklung individueller Softwarelösungen – häufig nicht mehr flexibel genug. Beim klassischen Vorgehen (sog. Wasserfallmethode) in der Softwareentwicklung werden Aufgaben in einer festgelegten Reihenfolge abgearbeitet– von der Sammlung der Anforderungen bis hin zum Go-live. Die nächste Projektphase beginnt immer erst dann, wenn die vorherige komplett abgeschlossen ist. Werden Fehler nicht bereits während des Projektes entdeckt, ist es oft schwierig, diese noch zu korrigieren. Daher überrascht es wenig, dass in der Softwareentwicklung immer agile Methoden im Einsatz sind.
Seit acht Jahren bedient sich Seven2one der Scrum-Methode für die Softwareentwicklung und arbeitet agil mit Kunden in Projekten zusammen wie z.B. mit der TransnetBW und den Stadtwerken Krefeld. Welche Vorteile hat der agile Ansatz, welche Herausforderungen habe ich als Kunde zu erwarten? Das fasst dieser Blog-Post zusammen.
Agil zum (Projekt-)ziel
In der agilen Projektabwicklung geht man in kleinen Schritten vor, die jeweils einen Mehrwert/Kundennutzen erzeugen. In Entwicklungsintervallen von wenigen Wochen (sog. Sprints) erhalten unsere Kunden funktionstüchtige und bereits intern getestete Software-Inkremente.
Zunächst klären wir vor dem Sprint gemeinsam mit dem Kunden das Ziel für den nächsten Sprint. Hier geht es im Wesentlichen darum, die Inhalte für die nächsten Sprints zu planen und Feedback zu den gelieferten Inkrementen zu erhalten. Nach jedem Sprint findet eine Feedback-Runde statt. Dann wird der nächste Sprint geplant. Das Vorgehen in solchen Intervallen mit frühzeitigem Feedback macht es möglich, Fehler oder falsch verstandene Anforderungen frühzeitig zu erkennen und zu beheben. Außerdem kann der Kunde durch Änderung der Priorisierung auch kurzfristig die Richtung anpassen und so auf veränderte Rahmenbedingungen reagieren.
Klassische versus agile Projektabwicklung bei individuellen Softwareprojekten
Klassisches Vorgehen
Agiles Vorgehen
Welche Vorteile bietet die agile Projektumsetzung?
Wir als Softwarelieferant liefern Ihnen in einem gemeinsam festgelegten Zeitraum ein Software-Inkrement. Das Software“stück“ ist lauffähig. So erhalten Sie regelmäßig einen funktionsfähigen Zwischenstand, können die Software in dieser Vorschauversion bereits nutzen und erste Erfahrungen damit sammeln. Die gelieferten Software-Inkremente greifen ineinander über. Die Zwischenergebnisse lassen sich durch das Abarbeiten der Anforderungen in kurzen Zyklen viel besser planen. Zudem können Fehler sofort behoben sowie Änderungswünsche für das gelieferte Inkrement können zeitnah eingebaut werden. Insgesamt reduziert sich das Risiko, an den Anforderungen vorbei zu entwickeln.
Beim agilen Vorgehen wird strikt nach Prioritäten gearbeitet. Wir als Projektpartner gehen nach den Prioritäten vor, die Sie gesetzt haben. Unserer Erfahrung nach sind die Anforderungen in einem Projekt sehr unterschiedlich wichtig: So gibt es Anforderungen, die unbedingt umgesetzt werden müssen. Dann gibt es Anforderungen, die möglichst umgesetzt werden sollen. Und es gibt Anforderungen, die umgesetzt werden können, sofern das Budget dies noch hergibt. Der Vorteil für die Anwender: Sie haben in jeder Phase des Projektes Einfluss auf die Reihenfolge der umzusetzenden Anforderungen, um das für sie passendere Ergebnis am Projektende zu erhalten.
In gemeinsamen Planungs-Sessions spezifizieren wir gemeinsam mit Ihnen die Anforderungen und priorisieren die kurzfristigen Ziele. Regelmäßige Reviews – z.B. nach jeder Software-Lieferung – sorgen für eine hohe Transparenz über Projektstatus und weitere Schritte. Wir schauen jedoch nicht nur darauf, dass Ihre Anforderungen umgesetzt werden, sondern analysieren parallel wie wir Arbeitsabläufe und Abstimmungsprozesse im Projekt optimieren können. Kurz: Es geht hier um eine hocheffiziente Umsetzung mit der Konzentration auf das Wesentliche.
Welche Herausforderungen bringt eine agile Methode mit sich?
Jede Medaille hat zwei Seiten, daher sollen hier auch die Herausforderungen und Stolpersteine erwähnt werden, die ein agiles Vorgehen mit sich bringt.
Kontinuierlicher Aufwand im laufenden Projekt: Für agiles Vorgehen sind eine intensive Zusammenarbeit und regelmäßige Planungs- und Feedback-Runden unerlässlich. Dafür braucht es mehr kontinuierliche Mitarbeit bei den Projektpartnern als bei einem klassischen Vorgehen. Ein Aufwand, den man sich bewusst machen und entsprechend einplanen sollte.
Agile Projekte brauchen das entsprechende Umfeld und Mindset. „Jetzt sind wir mal agil“ funktioniert nicht. Wenn sich ein Unternehmen für Agilität entscheidet, dann muss dies als Mindset im Unternehmen verankert sein. Konkret bedeutet dies häufig einen Paradigmenwechsel in der Organisation: unternehmerisches Handeln auf allen Hierarchieebenen, neuer Umgang mit Fehlern, Coaching statt Vorgaben. Dann klappt es auch mit der agilen Vorgehensweise.
Kommentare
Pingback: Individualsoftware versus Standardsoftware: ein Vergleich | Seven2one