Wir haben durch die zahlreichen in den letzten zehn Jahren von uns durchgeführten Softwareentwicklungsprojekte zu einer Arbeitsweise gefunden, die unseren Kunden und uns als Entwicklungsdienstleister erhebliche Vorteile bietet, wenn es die Rahmenbedingungen des Projekts zulassen.
Wir nennen diese Art der Projektbearbeitung inkrementelle Softwareentwicklung, weil der Software dabei kontinuierlich neue Funktionen hinzugefügt werden.
Kein hoher Initialaufwand
Für viele Projekte stellt der initiale Planungsaufwand bereits eine hohe zeitliche und finanzielle Hürde dar. Bei der inkrementellen Softwareentwicklung verzichten wir auf eine vollständige und detaillierte Planung aller angedachten Funktionen, die das Softwaresystem im Vollausbau einmal besitzen soll.
Wichtigste Funktionen zuerst
Stattdessen identifizieren wir zusammen mit unserem Kunden die wichtigsten Funktionen des Softwaresystems, den sogenannten Kern der Software. Ohne diese Kernfunktionen wäre das Projekt unsinnig, daher bieten sie den höchsten Nutzen im Vergleich zum benötigten Aufwand. Häufig werden an dieser Stelle für den Projekterfolg kritische Funktionen umgesetzt, so daß der Kunde frühstmöglich das Umsetzungsrisiko einschätzen kann.
Fokussiert starten
Indem wir die Planung auf den kleinstmöglichen Kern an Funktionen beschränken und danach sofort mit der Umsetzung beginnen, können auch größere Projekte mit vergleichsweise geringem Budget starten. Nach kurzer Projektlaufzeit stehen unseren Kunden bereits die wichtigsten Funktionen zur Verfügung, wodurch ihnen idealerweise ein Marktvorteil entsteht oder ein Verbesserungspotential optimal genutzt werden kann. Sollte sich wider Erwarten zeigen, dass das Projekt nicht wie gewünscht umsetzbar ist, wird dies zum frühestmöglichen Zeitpunkt erkannt. Auch auf diese Weise betreiben wir Investitionsschutz für unsere Kunden.
Schrittweise erweitern
Nach der intensiven ersten Projektphase sind die wichtigsten Funktionen des Softwaresystems einsatzbereit, wenn auch teilweise minimalistisch umgesetzt. Daran schließen sich weitere Phasen an, deren Länge vollständig von unseren Kunden bestimmt wird. Im Rahmen des bereitgestellten Budgets planen wir gemeinsam weitere Funktionen und Verbesserungen für die bestehende Software. Dabei kann das Vorgehen der ersten Phase wiederholt werden: Nur die wichtigsten Funktionen werden detailliert geplant und anschließend realisiert.
Zu jedem Zeitpunkt eine einsatzbereite Software
Durch dieses Vorgehen haben unsere Kunden nach Abschluss der ersten Projektphase immer eine einsatzbereite Software, in der die notwendigen Funktionen vorhanden sind. Danach kann jede mögliche weitere Funktion von unseren Kunden bezüglich des Geschäftsnutzen beurteilt und hoffentlich beauftragt werden.
Zusammenfassung
Mit der Arbeitsweise der inkrementellen Softwareentwicklung haben wir ein Vorgehen entwickelt, um Softwareprojekte effizient und für unsere Kunden vorteilhaft zu realisieren. Unser Vorteil liegt in der kompakten Projektgröße jeder Phase, so dass wir konzentriert und planbar vorgehen können.
Verfasst von daniel.lindner