Das Einmaleins der Softwareentwicklung

01.10.2003
Von Moll 

So nicht: Bei einem Dienstleistungsunternehmen mit großem Filialnetz wurden die unterschiedlichen Anwendungssysteme zur Sachbearbeitung für verschiedene Fachgebiete ohne eine standardisierte Softwareinfrastruktur entwickelt. Nach etwa sechs Jahren stand eine Reihe von Anwendungen zur Verfügung. Es existierte jedoch kein einheitlicher Styleguide für Benutzeroberflächen einschließlich Help-Funktion, es gab kein einheitliches Rechtekonzept mit Single-Logon, und die zentralen Steuerungsdaten waren redundant auf 54 unabhängige Tabellen verteilt. Die Anwendungssysteme waren folglich umständlich zu bedienen, schwer zu warten und schlecht erweiterbar.

Die Vereinheitlichung der Benutzeroberflächen einschließlich Single-Logon-Verfahren kostete etwa 30 Personenjahre. Die Konsolidierung der Steuerungsdaten brauchte rund fünf Personenjahre, und die Entwicklung einer einheitlichen Hilfefunktion verschlang nochmals fünf Personenjahre.

7. Stabilität der grundlegenden Anforderungen

Als erste Projektstufe wird ein minimaler Satz von grundlegenden Anforderungen festgelegt, der zentrale Funktionen für das Unternehmen abdeckt und als Basis für weitere Entwicklungsstufen dienen kann.

So nicht: In dem unter Regel 1 beschriebenen Projekt wurde entschieden, die gewünschte Funktionalität parallel für alle Produkte zu entwickeln. Dies führte dazu, dass bis zum ersten Test des Softwaresystems drei Jahre vergingen, in denen die Beteiligten gegen eine sich ständig ändernde Systemarchitektur entwickeln mussten. Außerdem wurde gegen das Prinzip der sequentiellen Abwicklung von einzelnen Projektphasen verstoßen und das Objektmodell während der Programmierung ständig geändert.

Besser wäre es gewesen, zunächst das Objektmodell an Hand eines Produkts stabil zu entwickeln und zu testen, um dann in weiteren Teilprojekten die restlichen Produkte zu ergänzen. Zusätzlich hätten so erste Ergebnisse früher genutzt werden können.