Projektmanagement


Lessons Learned

Projektmanagement in SAP-Großprojekten

Björn Kibbel ist seit 1999 bei der innobis AG tätig. Als Manager Development und Integration Services analysiert er bankfachliche Geschäftsprozesse und die damit verbundenen Anforderungen an die IT-/SAP-Landschaft und übernimmt die Architekturberatung bei Banken.

Wohlüberlegte Dauer der Iterationen

Die Entwicklungsphase wurde wie im klassischen Projektmanagement nach Prince2 in Iterationen unterteilt. Bei der Wahl der Iterationsdauer sind mehrere Argumente (siehe Tabelle) gegeneinander abzuwägen.

Kurze Iterationen

Lange Iterationen

Organisatorischer Overhead (Iterationsplanung, Testfalldefinitionen, Testdurchführung etc.)

Relativ hoch, da mehr Iterationen im Zeitraum durchgeführt werden.

Niedriger, da weniger Iterationen im Zeitraum durchgeführt werden.

Iterationsergebnisse

Besonders in den ersten Iterationen ist nur wenig Vorzeig- und Testbares vorhanden.

Besonders in den hinteren Iterationen kann der Testaufwand aufgrund der Menge der erzeugten Features erheblich werden.

Kontrolle der Ergebnisse

Es gibt häufig die Möglichkeit des Eingriffs und der Steuerung.

Es besteht größere Gefahr, dass etwas in die falsche Richtung entwickelt wird.

Disziplin

Die häufigere Replanung wird erzwungen, in die auch neuere Erkenntnisse einfließen können.

Entwicklungsprobleme lassen sich leichter im Arbeitspaket "verstecken" und treten erst später zutage.

Aufgrund des sehr engen Gesamtzeitplans und des gedeckelten Budgets wurden etwa dreiwöchige Iterationszeiträume geplant, um die Entwicklungsergebnisse möglichst oft kontrollieren zu können. Es zeigte sich, dass gerade in den ersten Iterationen der Overhead für Iterationsplanung, Testfallerstellung, Vortest etc. die Teams sehr stark belastete. Damit einhergehend waren die vorzeigbaren und testbaren Ergebnisse so wenig aussagekräftig, dass eine wirksame Kontrolle nicht im erhofften Maß stattfinden konnte. Die ersten beiden Iterationen sollten daher in Projekten dieser Größe etwas länger gestaltet werden.

Fulltime-Job für Entwicklungsleiter

Andererseits kann eine Fehlentwicklung gerade in den ersten Iterationen zu großen Problemen im späteren Verlauf der Entwicklung führen. Um dieses Problem im Griff zu behalten, muss der Entwicklungsleiter und Architekt in engem Kontakt zu den Teams stehen und sich regelmäßig einen Überblick über die laufenden Entwicklungen verschaffen. Diese Aufgabe ist bei der Projekt-Größenordnung eine Fulltime-Aufgabe und muss in der Aufwandsplanung von vorne herein mit berücksichtigt werden.

Testfall-Definition zu Beginn der Iteration

Zu Beginn einer Iteration definierten die Arbeitspaketleiter die Testfälle, die am Ende der Iteration durchführbar sein sollten. Aufbauend auf diesen führten sie die Iterationsplanung durch und benannten Einschränkungen der Testfälle wie beispielsweise genutzte, aber erst vorläufig ausgeprägte Schnittstellen (auch von anderen Arbeitspaketen).

Dieses Verfahren hat sich bewährt, da die Arbeitspaketleiter sich bereits am Anfang einer Iteration tiefgehende Gedanken machen müssen, wie ein Stück Software umzusetzen ist. Ebenfalls bewährt hat es sich, dass alle Arbeitspaketleiter die Arbeitsplanungen aller Teams gemeinsam bewerten. So können sie zusätzliche Anforderungen der Teams untereinander abstimmen.

Software-Auslieferungen regelmäßig zusammenstellen

In diesem Projekt wurde auf einem zentralen System entwickelt und auf unterschiedliche Schichten des späteren Gesamtsystems ausgeliefert.

Dabei ist das regelmäßige Zusammenstellen der Auslieferungen am Ende einer Iteration sehr zu empfehlen, offenbart es doch Auslieferungsprobleme z.B. bei unberücksichtigten Abhängigkeiten. Diese müssen bereinigt werden. Erfolgt die Korrektur dagegen erst kurz vor dem Testbeginn, können erhebliche Aufwände entstehen, die in keiner Budget- oder Zeitplanung vorgesehen waren.

Zur Startseite