Softwareentwicklung was tun, wenn es nicht passt
Ausgangssituation
Die Anforderungen lagen zu Beginn des Projektes nur sehr grob vor. Neue Technologien und Unternehmensplattformen (mit denen noch keine Erfahrungen vorlagen) mussten eingesetzt werden. Die Vorgehensmodelle der beteiligten Unternehmen und Unternehmensbereiche passten einfach nicht zusammen. Auch die Zuständigkeiten zwischen den beteiligten Unternehmen war an entscheidenden Stellen nicht klar geregelt.
Die Software-Entwicklung erfolgte im Rahmen eines Festpreisprojekts auf Basis der in der ersten Projektphase fertiggestellten Konzeption/Spezifikation. Im Laufe des Projekts traten eine Vielzahl an Details zu Tage: es wurden Lücken in der Spezifikation und Widersprüche in den Anforderungen erkannt. Zudem änderten sich fachliche Anforderungen. All das führte zu Unzufriedenheit im Team, was auch die Fluktuation unter den Mitarbeitern erhöhte. Dies wiederum führte zu Know-How Verlust, die Stimmung sank, die Beteiligten suchten Schuldige und fanden sie zielsicher auf der Seite der anderen beteiligten Unternehmen bzw. Unternehmensbereiche .
Aufgabenstellung
Kurz gesagt: Endlich die gewünschte Software erstellen, welche
und das in überschaubaren, kleinen Schritten während des laufenden Betriebs. |
Lösung
Ausgehend von der bestehenden Software, wurde gemeinsam mit allen Projektbeteiligten eine vollständige Bestandsaufnahme aller Funktionen und Anforderungen sowie der IT-Architektur gemacht. Dadurch wurde der Änderungsbedarf identifiziert und konnte in überschaubare Arbeitspakete aufgeteilt werden. Auf dieser Basis konnte eine Bewertung und Priorisierung der großen Themenbereiche bis hin zu einzelnen Arbeitspaketen erfolgen.
Als Vorgehensmodell für Projekt- und Produktmanagement wurde Scrum gewählt. Das Team wurde hinsichtlich der dafür benötigten Rollen (scrum master, product owner, …) erweitert. Alle Schnittstellenpartner wurden eingebunden und sowohl Eingangs- als auch Ausgangsschnittstellen gemeinsam fachlich und technisch analysiert.
Außerdem wurden für alle Bereiche automatisierte Softwaretests eingerichtet, die durch fachliche Experten mitentwickelt wurden. Damit waren die Voraussetzungen für eine schrittweise Verbesserung der Software im laufenden Betrieb geschaffen.
Ergebnis
Die Umsetzung erfolgte innerhalb von 14 Monaten. Das Ergebnis war eine deutliche Verbesserung zum Ausgangspunkt, nicht perfekt, aber es war sehr viel verbessert worden. Bei den wichtigsten Themen wurden die großen und auch viele kleine Probleme beseitigt und neue Funktionalitäten behutsam ergänzt, und das bei laufendem Betrieb.
Wichtige Erfolgsfaktoren waren das gemeinsame Arbeiten des Teams an den entscheidenden Themen, die steigende Motivation durch immer weiter sichtbar werdende Verbesserungen sowie Zeit und Raum für die umfangreiche, gemeinsame Bestandsaufnahme und Bewertung.
Luft nach oben
Getreu dem Motto Hinterher ist man immer schlauer gab es bei der Lösung aber auch Luft nach oben. Das erreichte Resultat war ein riesiger Fortschritt, dennoch wären durchaus noch weitere Verbesserungen möglich gewesen. Warum? Weil einige oben dargestellte Ansätze zur Lösung zwar begonnen, aber nicht konsequent und nur halbherzig verfolgt wurden.
Hier sind einige Ideen dazu, wie man weitere Verbesserungen hätte erzielen können:
|
Unser Beitrag
its-people war an dem geschilderten Lösungsprozess mit einem Berater beteiligt, der als Mitglied des interdisziplinären Fachteams für folgende Aufgaben verantwortlich war:
|