Systemmodellierung

Software-Variantenmanagement mit SysML

< zurück

Seite: 2/3

Anbieter zum Thema

Entwicklung in Domänen und Applikationen

Zu Beginn einer Systementwicklung werden Produkte oft als Baum von Features dargestellt. Dabei stellt man sich ein Feature als Subsystem oder Komponente mit eigenständiger Funktionalität vor, die man etwa auch separat verkaufen kann. Bei der Produktlinienentwicklung basierend auf einer Plattform werden Möglichkeiten betrachtet, Features zu identifizieren, die allen Produkten gemeinsam sind, um sie für alle Produkte gemeinsam zu entwickeln und zu testen.

In der Produktlinienentwicklung bezeichnet man dieses Herausfaktorisieren von Features als Scoping. Dies führt zu einer Aufspaltung in eine Domänen- und eine Applikationsentwicklung. Dabei kommt es darauf an, nur die Features der Plattform hinzuzufügen, die tatsächlich mehr als einem Produkt zur Verfügung stehen. Domäne bezeichnet also die wiederverwendbare Plattform, entweder aus Core-Elementen, die es immer geben muss und/oder als Ansammlung von Komponenten, die es bei mehr als einem Produkt gibt und deshalb auch zur Plattform gezählt werden. Die Applikation ist das konkrete, einzelne Produkt oder System.

Bildergalerie

Einzelne Systeme innerhalb einer Familie von Produkten können als Varianten einer Produktplattform angesehen werden. Die Varianten unterscheiden sich in bestimmten variablen Merkmalen. Diese Variabilität lässt sich ebenso modellieren wie das gesamte System. Grundsätzlich zu unterscheiden ist die Variabilität in der Produktentwicklung einerseits von den Konfigurationsmöglichkeiten von Features während der Laufzeit eines Produkts andererseits.

Eine effektive Variantenmodellierung von Produktlinien muss diesen Unterschied sichtbar machen. Tool-Unterstützung sorgt dafür, dass Inklusions-, Exklusions- und Abhängigkeitsbedingungen für die Kombination von Features formuliert werden können und am Ende nur erlaubte Kombinationen von Features ein Produkt definieren können.

Die Methoden FODA und OVM im Überblick

Bereits Anfang der 90er machten sich Kang, Cohen und andere am Carnegie Mellon Software Engineering Institute (SEI) Gedanken über Software-Wiederverwendung im Rahmen von Domänenmodellen und konzipierten dafür die Feature Oriented Domain Analysis (FODA) [3].

In ihrem Variantenmodell können optionale, verpflichtende und sich gegenseitig ausschließende Varianten dargestellt werden. Allerdings ist die Aussage, was genau sich in den Varianten ändert, nur implizit dargestellt. Es gibt keine Symbole in der Notation dafür, die als Diskriminatoren dienen könnten. Auch kann nicht gut zwischen Variabilität zur Entwicklungszeit und Laufzeit (z. B. Konfigurierbarkeit des Produkts) unterschieden werden.

Eine neuere Methode zur Modellierung von Variabilität ist Orthogonal Variability Modeling (OVM) [2]. In dieser Notation wird die Variabilität eines Features als eigenständiges und darstellbares Modellierungselement behandelt. Darin besteht ein wesentlicher Fortschritt gegenüber FODA.

Beim OVM wird die Variabilität zweier Hauptelemente betrachtet:

  • Variability Point: „Was variiert?“
  • Variante: „Wie variiert es?“

Durch diesen Ansatz kann OVM die Variabilität in allen Phasen der Systementwicklung konsistent und völlig unabhängig von der sonstigen Systemmodellierung darstellen.

Als Beispiel einer Produktfamilie betrachten wir eine KFZ-Standheizung. Ein Basis-Feature, das allen Heizungen einer Produktlinie gemeinsam ist, ist die Temperatursteuerung. Jedoch ergeben sich bei grundlegender Überlegung Varianten: Standheizungen können mit Strom oder mit (fossilem) Kraftstoff betrieben werden. In letzterem Fall könnte die Standheizung einen eigenen kleinen Tank besitzen oder den Kraftstoff des KFZ nutzen, wobei zwischen Benzin- und Dieselvarianten unterschieden werden muss.

Artikelfiles und Artikellinks

(ID:43962689)

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung