Tipps und Tricks mit UML

Vorteile durch den Einsatz der UML

Da sich die Unterschiede in der System- und Softwarearchitektur hauptsächlich auf die Durchführung der Tätigkeiten beschränken, die Art der erzeugten Ergebnisse sich aber ähneln, sehen wir auch in der Systemarchitektur die UML als eine adäquate Möglichkeit, einen Großteil dieser Ergebnisse zu dokumentieren. Dabei ist es sicherlich nicht unsere Absicht, Ihnen in diesem Artikel die UML als Ersatz für bewährte Notationen im Bereich der Hardwareentwicklung (wie z.B. Konstruktionszeichnungen) schmackhaft zu machen. Wir wollen die UML in den Bereichen einsetzen, in denen wir bezüglich der folgenden Punkte einen Gewinn sehen:

  • Kommunikation zwischen den an der Systementwicklung beteiligten Teams
  • Kommunikation aus der Systementwicklung heraus zum Auftraggeber, Management, Vertrieb, etc.
  • Nachvollziehbarkeit der Entwicklungsentscheidungen
  • Leichter Übergang zur Softwareentwicklung

In diesem Artikel wird die UML Version 2.0 verwendet.

Ausgangspunkt für die Systemarchitektur

In diesem Artikel gehen wir von dem theoretischen Ausgangszustand aus, dass wir vor der Systemarchitektur eine vollständige Systemanalyse durchgeführt haben. In der Realität wird sich ein verzahnter Prozess zwischen einer groben Analyse, den ersten Architekturfestlegungen, einer Verfeinerung der Analyseergebnisse usw. ergeben.

Eine Technik hierfür ist die so genannte Use-Case-Analyse, mit der die funktionalen Anforderungen an ein System ermittelt und dokumentiert werden können. Dieser Ansatz schließt mit ein, dass die Use Cases (typische Interaktionen des Systems mit seiner Umwelt) durch Aktivitätsdiagramme oder, vor allem bei RTE-Systemen, durch Zustandsautomaten detailliert werden [siehe auch: Rupp, C.; Hruschka, P.: Agile Softwareentwicklung – für Embedded Real-Time Systeme mit der UML, Hanser, 2002]. Zusätzlich werden die Modelle auch durch Anforderungen in Form von natürlicher Sprache ergänzt [Rupp, C., et al.: Requirements Engineering und Management, Hanser, 2007].

Darüber hinaus bilden die nicht-funktionalen Anforderungen wie Zuverlässigkeit, Sicherheit, die Einbettung des Systems in seine Umwelt etc. eine wichtige Eingabe in die Systemarchitektur. Auch diese Anforderungen werden in der Systemanalyse erhoben und dokumentiert.

In der Realität werden Sie kaum einen vollständigen Stand der Systemanalyse vor den ersten Architekturtätigkeiten erreichen. Es wird sich ein verzahnter Prozess zwischen einer groben Analyse, den ersten Architekturfestlegungen, einer Verfeinerung der Analyseergebnisse usw. ergeben. Auf diesen Aspekt werden wir in diesem Artikel nicht eingehen, wir gehen vielmehr von einem wasserfallartigen Ablauf aus.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.