In kleinen Schritten zur richtigen Lösung

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

  • die fachlichen Anforderungen erfüllt

  • auf der Unternehmensplattform läuft

  • den Belangen des IT-Betriebs gerecht wird

  • mit angemessenem Aufwand gewartet werden kann

  • aufgrund neuer Anforderungen weiterentwickelt werden kann

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:

  • mehr Zeit für fachliche Analyse unter Mitarbeit der Experten

  • intensivere Schulung und Coaching der Projektbeteiligten hinsichtlich der erforderlichen Selbstorganisation im Scrum Ansatz und der Scrum-Methode im Allgemeinen

  • weitergehende Überwindung sprachlicher Barrieren in einem internationalen Team

  • Definition kleinerer abgeschlossenen Pakete

  • flexibler Umgang mit unerwarteten Abhängigkeiten im System

  • intensivere Gespräche mit den Schnittstellenpartnern

  • verstärkte Fokussierung auf langfristige Teilziele (statt auf gegenläufige kurzfristige Teilziele)

  • frühere und intensivere Einbindung der Plattform und der Rahmenprozesse (Service Management, IT Governance), um eine höhere Stabilität für die eigenen Entwicklungen zu erreichen

  • frühere Einbindung des Betriebes

  • …

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:

  • fachliche Analyse

  • Erstellung der User Stories

  • fachliche Begleitung der Entwicklung

  • Durchführung der fachlichen Tests

 

Das könnte Sie auch interessieren

Bleiben Sie informiert:

its-people hilft Ihnen...

Weitere Blogthemen:

its-people – wir machen Ihre IT moderner,
leistungsfähiger und sicherer

Erfahren Sie bei einem persönlichen Gespräch, wie wir Sie gewinnbringend unterstützen können. Suchen Sie sich einen passenden Zeitpunkt aus. Wir melden uns. Versprochen!