Von Kopien zu ProduktLinien
Hersteller von Softwareprodukten stehen heutzutage vor der Herausforderung, ihre Software schnell und vor allem flexibel an die Anforderungen von Kunden und Branchen anpassen zu müssen. Zeit- und Kostendruck führen dazu, dass dabei oft bestehende Produkte kopiert und für den nächsten Einsatz angepasst werden. Dies ist zwar zunächst die einfachste und schnellste Vorgehensweise, führt aber mittel- und langfristig zu erhöhtem Wartungsaufwand und verhindert die Möglichkeit, neue Funktionen und Eigenschaften miteinander zu kombinieren und mehreren Kunden anbieten zu können.
Gelöst werden kann dies mit sogenannten Software-Produktlinien. Diese verwalten verschiedene, systematisch kombinierbare und konfigurierbare Software-Bausteine, die flexibel an Kunden- und Branchenbedürfnisse angepasst werden können. Durch solche Bausteine erhöht sich der Grad der Wiederverwendung. Der Aufwand für die Realisierung und Wartung kundenspezifischer Softwarevarianten reduziert sich. Diesen langfristigen Vorteilen einer Software-Produktlinie stehen jedoch anfangs deutlich höhere Entwicklungsaufwände gegenüber. Vor allem in noch unbekannten Domänen und gerade für kleine und mittelständische Softwarehersteller bedeutet dies oft ein zu hohes Investitionsrisiko.
Projektziel
Ziel von KoPL ist es, die kurzfristigen Vorteile von Produktkopien mit den langfristigen Vorteilen von Produktlinien zu kombinieren. In KoPL soll dazu für die zahlreichen Softwarehersteller mit Produktkopien eine einfache, risikoarme und wirtschaftliche Methode entwickelt werden um ausgehend von Produktkopien eine Produktlinie zu erzeugen.
Hierzu soll eine Werkzeugkette realisiert werden, die es aufbauend auf aktuellen Forschungsergebnissen ermöglicht, bestehende Produktkopien automatisiert zu analysieren und Softwareherstellern Designvorschläge für eine Produktlinie anbieten. Anschließend erfolgt durch die Werkzeugkette eine automatisierte Umformung der Produktkopien in eine Produktlinie.
Neben der Bereitstellung von Werkzeugen soll das Projekt qualitative und quantitative Aussagen zur Nutzbarkeit und Wirtschaftlichkeit des Konsolidierungsansatzes liefern. Dies wird die Projektpartner befähigen sowohl in ihren eigenen Entwicklungsprojekten, als auch durch Dienstleistungen und Beratungen für andere Softwareentwicklungsfirmen eine schnelle, zeit- und kostensparende Konsolidierung von Produktkopien zu erreichen.