Unified Modelling Language

UML für die Systemarchitektur

25.08.2011
Von Stefan  Queins

Komponenten identifizieren

Das Türsystem enthält die Softwarekomponente "Lokale Türsteuerung" mit den in der UML notierten Use-Cases der Komponente, wobei auch die Kommunikationspartner dargestellt sind.
Das Türsystem enthält die Softwarekomponente "Lokale Türsteuerung" mit den in der UML notierten Use-Cases der Komponente, wobei auch die Kommunikationspartner dargestellt sind.
Foto: Sophist

Um Komponenten zu identifizieren, wird das System nach und nach vollständig zerlegt und ein hierarchischer Baum von Komponenten erzeugt. So kann das betrachtete System aus Subsystemen aufgebaut sein, die wiederum aus einzelnen Segmenten bestehen. Bis zu welcher Ebene Sie die Zerlegung treiben sollten, ist im Prinzip leicht zu beantworten: Es gilt, Komponenten zu finden, deren Umsetzung die Realisierung anderer Komponenten nicht mehr beeinflusst. Eine Ausnahme bilden hier natürlich die Schnittstellen der Komponenten. Als Randbedingung gilt hierbei natürlich, dass Sie für die Komponenten der untersten Ebene auch eine Abteilung oder externen Zulieferer finden, der diese Komponente für Sie entwickeln kann.

Ein Kriterium bei der Strukturierung des Systems auf den höheren Ebenen kann die räumliche Anordnung der Systemteile sein. Besteht das System zum Beispiel aus mehreren, voneinander getrennten Baugruppen, so können diese die erste Hierarchieebene in der Komponentenzerlegung bilden. Ferner kommen die aus der Softwarearchitektur bekannten Prinzipien für das Schneiden von Komponenten zum Tragen. Das sind zum Beispiel eine hohe Kohäsion, eine geringe Kopplung oder eine überschaubare Anzahl von Komponenten.

Zur Darstellung der Systemkomponenten verwendet man als Notationsmittel die UML-Komponenten. Diese können durch die so genannten Stereotypen zusätzlich klassifiziert werden, die Angabe erfolgt in spitzen Klammern. So lässt sich beispielsweise die Unterscheidung zwischen logischen, das heißt gruppierenden Komponenten beziehungsweise Hard- und Softwarekomponenten über die Stereotypen <<logical>>, <<HW>> und <<SW>> abbilden, oder als weitere mögliche Unterscheidung <<HW-Elektronik>> und <<HW-Mechanik>>.

Die Wahl der Stereotypen richtet sich häufig nach den Vorgaben an Ihr Projekt. So wird in V-Modell-basierten Projekten der Stereotyp <<logical>> häufig durch die Begriffe Subsystem, Segement und Subsegement weiter differenziert.