Software-Produktlinien ( SPLs ) oder Software- Produktlinienentwicklung bezeichnen Software-Engineering- Methoden, -Werkzeuge und -Techniken zur Erstellung einer Sammlung ähnlicher Softwaresysteme aus einem gemeinsamen Satz von Software-Assets unter Verwendung eines gemeinsamen Produktionsmittels . [ 1 ] [ 2 ]

Das Carnegie Mellon Software Engineering Institute definiert eine Software-Produktlinie als „eine Reihe softwareintensiver Systeme, die einen gemeinsamen, verwalteten Satz von Funktionen aufweisen, welche die spezifischen Bedürfnisse eines bestimmten Marktsegments oder einer bestimmten Mission erfüllen und die aus einem gemeinsamen Satz von Kernressourcen auf vorgeschriebene Weise entwickelt werden.“ [ 3 ]

Beschreibung

Hersteller nutzen seit Langem ähnliche Konstruktionstechniken, um eine Produktlinie ähnlicher Produkte in einer gemeinsamen Fabrik zu fertigen, in der Teile montiert und konfiguriert werden, die für die gesamte Produktlinie wiederverwendet werden können. So können beispielsweise Automobilhersteller mithilfe eines einzigen Pools sorgfältig entwickelter Teile und einer speziell für die Konfiguration und Montage dieser Teile konzipierten Fabrik einzigartige Varianten eines Automodells erstellen.

Das charakteristische Merkmal, das Software-Produktlinien von früheren Ansätzen unterscheidet, ist die vorausschauende versus opportunistische Software-Wiederverwendung . Anstatt allgemeine Softwarekomponenten in einer Bibliothek zu speichern und darauf zu hoffen, dass sich Wiederverwendungsmöglichkeiten ergeben, fordern Software-Produktlinien die Erstellung von Software-Artefakten nur dann an, wenn eine Wiederverwendung in einem oder mehreren Produkten einer klar definierten Produktlinie vorhergesagt wird. [ 4 ]

Jüngste Fortschritte im Bereich der Softwareproduktlinien haben gezeigt, dass die gezielte und strategische Anwendung dieser Konzepte die Softwareentwicklungskompetenz um Größenordnungen verbessern kann. Das Ergebnis ist oft ein sprunghafter Anstieg des Wettbewerbsvorteils, ähnlich dem, der bei der Einführung von Massenproduktion und Massenanpassung durch Hersteller zu beobachten ist .

Entwicklung

Während die frühen Methoden zur Softwareproduktlinienentwicklung in der Entstehungsphase des Fachgebiets die besten Kennzahlen für Software-Engineering-Verbesserungen der letzten vier Jahrzehnte lieferten, weisen die neuesten Methoden und Werkzeuge für Softwareproduktlinien noch größere Verbesserungen auf. Die neuen Methoden erweitern die Vorteile über die Produktentwicklung hinaus auf Wartung und Weiterentwicklung , senken die Gesamtkomplexität der Produktlinienentwicklung, erhöhen die Skalierbarkeit von Produktlinienportfolios und ermöglichen es Unternehmen, den Übergang zur Softwareproduktlinienpraxis mit einem Vielfachen an Zeit-, Kosten- und Arbeitsaufwand zu vollziehen.

In jüngster Zeit wurden die Konzepte von Software-Produktlinien erweitert, um Systeme und Softwareentwicklung ganzheitlich abzudecken. Dies spiegelt sich im Aufkommen von Industriestandardfamilien wie ISO 265xx zu System- und Softwareentwicklungspraktiken für Produktlinien wider. [ 5 ]

Siehe auch

Referenzen