Architekturmodellierung innerhalb der Unified Modeling Language (UML) close Bitte warten


Details

Veranstaltung: UML
Institution/Hochschule: Universität der Bundeswehr München (Wirtschaftsinformatik)
Kategorie: Seminararbeit
Jahr: 2002
Seiten: 34
Note: 2,3
Sprache: Deutsch
Dateigröße: 316 KB
Archivnummer: V5843
ISBN (E-Book): 978-3-638-13581-8
ISBN (Buch): 978-3-638-63911-8

Zusammenfassung / Abstract

Die Unified Modeling Language (UML) stellt eine Standardsprache für die Modellierung von Softwareentwürfen dar. Diese Sprache wurde von Jim Rumbaugh, Ivar Jacobsen und Grady Booch im Jahre 1997 in der ersten Version 1.1 veröffentlicht. Mittlerweile existiert die Version 1.4, welche mit Sicherheit nicht die letzte Version sein wird. Die UML kann heute bereits als ein Industriestandard angesehen werden, da heute nahezu alle Entwicklungswerkzeuge und Autoren diese Sprache unterstützen.1 Die zentralen Aufgaben der UML sind die Visualisierung, Spezifizierung, Konstruktion und Dokumentation von Softwaresystemen. In diesem Zusammenhang meint Spezifizierung die unzweideutige und vollständige Erstellung von Modellen und die Konstruktion eine direkte Kopplungsmöglichkeit an Programmiersprachen wie C++ oder Java, das heißt eine direkte Abbildbarkeit der UML Modelle auf die Programmiersprachen wird ermöglicht. Dabei ist die UML allerdings nur als ein Teil einer Methode zur Softwareentwicklung zu verstehen. Die UML stellt eine Sprache dar, die prozessunabhängig ist und dementsprechend in einem Entwicklungsprozess eingebunden sein sollte. Die UML kann im Rahmen der möglichen Modellierungsarten (Strukturmodellierung, Verhaltenmodellierung und Architekturmodellierung) sowohl die konzeptionellen als auch physischen Aspekte eines Systems abbilden. Die Modellierung von softwareintensiven Systemen fördert dabei das Verständnis des einzelnen Entwicklers, indem er sich vor der Implementierung Gedanken zur Umsetzung des Problems macht. Weiterhin bildet hat UML eine Art kommunikative Brückenfunktion zwischen den unterschiedlichen Anspruchsgruppen in einem Softwareentwicklungsprojekt. Unter anderem nehmen folgende Personengruppen an einem solchen Prozess teil: Anwender, Analytiker, Entwickler, Systemintegratoren, Tester, technische Autoren, Projektmanager etc. Diese Personengruppen sprechen zum Teil „unterschiedliche Fachsprachen“. Die UML bietet die Möglichkeit, durch grafische Visualisierung aus den verschiedensten Sichten eine allgemein verständliche Übersetzung spezifischer Aspekte eines Softwaresystems zu erstellen. Die vorliegende Arbeit wird sich mit der Übersetzungsfunktion der UML zwischen Softwareentwicklern und Hardware-Ingenieuren befassen, das heißt die Architekturmodellierung wird einer näheren Betrachtung unterzogen.

Textauszug (computergeneriert)

Architekturmodellierung innerhalb der Unified
Modeling Language

Hausarbeit zum Seminar
„UML – Unified Modeling Language“
WT 2002
Von: Bastian Kuhl
8. Trimester
Abgabetermin: 15.02.2002

Inhaltsverzeichnis

ABBILDUNGSVERZEICHNIS  ... III

1 EINFÜHRUNG  ... 1

2 ARCHITEKTURMODELLIERUNG ... 2


2.1 DIE FÜNF SICHTWEISEN ... 2
2.2 MODELLE UND SYSTEME ... 3

3 KOMPONENTEN  ... 4


3.1 AUFBAU VON KOMPONENTEN ... 4
3.2 FUNKTION UND ARTEN VON KOMPONENTEN  ... 7
3.3 GEBRÄUCHLICHE MODELLIERUNGSTECHNIKEN VON KOMPONENTEN ... 8

4 KOMPONENTENDIAGRAMM ... 10


4.1 AUFGABE UND AUFBAU VON KOMPONENTENDIAGRAMMEN ... 10
4.2 ARTEN DER MODELLIERUNG VON KOMPONENTENDIAGRAMMEN  ... 10
4.2.1 Modellieren von Sourcecode ... 10
4.2.2 Modellieren von ausführbaren Versionen ... 12
4.2.3 Modellieren einer physischen Datenbank ... 14
4.2.4 Modellieren adaptiver Systeme ... 15
4.3 HINWEISE UND TIPPS FÜR DIE MODELLIERUNG VON KOMPONENTENDIAGRAMMEN ... 16

5 KNOTEN  ... 17


5.1 AUFBAU VON KNOTEN  ... 17
5.2 GEBRÄUCHLICHE MODELLIERUNGSTECHNIKEN VON KNOTEN ... 19
5.2.1 Das Modellieren von Prozessoren und Geräten  ... 19
5.2.2 Das Modellieren der Verteilung von Komponenten ... 20

6 EINSATZDIAGRAMME ... 22


6.1 AUFGABE UND AUFBAU VON EINSATZDIAGRAMMEN ... 22
6.2 ARTEN DER MODELLIERUNG VON EINSATZDIAGRAMMEN  ... 22
6.2.1 Modellierung eines eingebetteten Systems ... 22
6.2.2 Modellierung von Client/Server-Systemen ... 24
6.2.3 Modellieren von vollständig verteilten Systemen ... 26
6.3 HINWEISE UND TIPPS FÜR DIE ERSTELLUNG VON EINSATZDIAGRAMMEN ... 27

7 EIGENES DIAGRAMMBEISPIEL  ... 28


7.1 BESCHREIBUNG DES BEISPIELSYSTEMS  ... 28
7.2 KOMPONENTENDIAGRAMM ... 28
7.3 EINSATZDIAGRAMM  ... 29

LITERATURVERZEICHNIS ...  30

Abbildungsverzeichnis

Abbildung 1: Modellieren einer Systemarchitektur ... 3
Abbildung 2: Grafische Darstellung einer Komponente ... 5
Abbildung 3: Komponenten und Schnittstellen ... 7
Abbildung 4: Modellierungsbeispiel für Komponenten ... 9
Abbildung 5: Modellierung von Sourcecode ... 12
Abbildung 6: Modellierung einer ausführbaren Version  ... 13
Abbildung 7: Modellierung einer physischen Datenbank ... 14
Abbildung 8: Modellierung adaptiver Systeme  ... 16
Abbildung 9: Grafische Darstellung eines Knotens ... 17
Abbildung 10: Varianten der grafische Darstellung von Knoten mit Komponenten ... 18
Abbildung 11:Grafische Darstellung von Verbindungen zwischen Knoten  ... 19
Abbildung 12: Stereotypisierte Darstellung von Prozessoren und Geräten  ... 20
Abbildung 13: Modellierung der Verteilung von Komponenten  ... 21
Abbildung 14: Die Modellierung eines eingebetteten Systems  ... 24
Abbildung 15: Modellierung eines Client/Server-Systems  ... 25
Abbildung 16: Modellierung eines vollständig verteilten Systems ... 27
Abbildung 17: Beispiel WebCam Komponentendiagramm  ... 28
Abbildung 18: Beispiel WebCam Einsatzdiagramm ... 29

Tabellenverzeichnis

Tabelle 1: Merkmale von Klassen und Komponenten ... 6

 

1 Einführung

Die Unified Modeling Language (UML) stellt eine Standardsprache für die Modellierung von Softwareentwürfen dar. Diese Sprache wurde von Jim Rumbaugh, Ivar Jacobsen und Grady Booch im Jahre 1997 in der ersten Version 1.1 veröffentlicht. Mittlerweile existiert die Version 1.4, welche mit Sicherheit nicht die letzte Version sein wird. Die UML kann heute bereits als ein Industriestandard angesehen werden, da heute nahezu alle Entwicklungswerkzeuge und Autoren diese Sprache unterstützen.1 Die zentralen Aufgaben der UML sind die Visualisierung, Spezifizierung, Konstruktion und Dokumentation von Softwaresystemen. In diesem Zusammenhang meint Spezifizierung die unzweideutige und vollständige Erstellung von Modellen und die Konstruktion eine direkte Kopplungsmöglichkeit an Programmiersprachen wie C++ oder Java, das heißt eine direkte Abbildbarkeit der UML Modelle auf die Programmiersprachen wird ermöglicht. Dabei ist die UML allerdings nur als ein Teil einer Methode zur Softwareentwicklung zu verstehen. Die UML stellt eine Sprache dar, die prozessunabhängig ist und dementsprechend in einem Entwicklungsprozess eingebunden sein sollte.2

Die UML kann im Rahmen der möglichen Modellierungsarten (Strukturmodellierung, Verhaltenmodellierung und Architekturmodellierung) sowohl die konzeptionellen als auch physischen Aspekte eines Systems abbilden. Die Modellierung von softwareintensiven Systemen fördert dabei das Verständnis des einzelnen Entwicklers, indem er sich vor der Implementierung Gedanken zur Umsetzung des Problems macht. Weiterhin bildet hat UML eine Art kommunikative Brückenfunktion zwischen den unterschiedlichen Anspruchsgruppen in einem Softwareentwicklungsprojekt. Unter anderem nehmen folgende Personengruppen an einem solchen Prozess teil: Anwender, Analytiker, Entwickler, Systemintegratoren, Tester, technische Autoren, Projektmanager etc. Diese Personengruppen sprechen zum Teil „unterschiedliche Fachsprachen“. Die UML bietet die Möglichkeit, durch grafische Visualisierung aus den verschiedensten Sichten eine allgemein verständliche Übersetzung spezifischer Aspekte eines Softwaresystems zu erstellen.3

Die vorliegende Arbeit wird sich mit der Übersetzungsfunktion der UML zwischen Softwareentwicklern und Hardware-Ingenieuren befassen, das heißt die Architekturmodellierung wird einer näheren Betrachtung unterzogen.

Dazu wird im nächstfolgenden Kapitel auf den Begriff Architektur in diesem Zusammenhang eingegangen und allgemeine Aspekte der Systemarchitektur vorgestellt. Das dritte und vierte Kapitel führt den Begriff Komponente und dessen Diagramm ein. Damit werden die softwarebasierten, physischen Aspekte eines Systems modelliert. Im Kapitel fünf und sechs werden Knoten und Einsatzdiagramm dargestellt, um die hardwarebasierten Aspekte in der UML modellieren zu können. In einem abschließenden Teil wird der Versuch unternommen, die beiden Diagramme anhand der Modellierung eines eigenen Beispiels vorzustellen.

2 Architekturmodellierung
2.1 Die fünf Sichtweisen

Die Systemarchitektur beschäftigt sich nicht nur mit dem Verhalten und der Struktur eines Softwaresystems sondern auch mit deren Funktionalität, Leistung, Robustheit, Wiederverwendbarkeit und Verständlichkeit. BOOCH/RUMBAUGH/JACOBSEN fassen die Bedeutung einer Systemarchitektur wie folgt zusammen:


„Die Architektur eines Systems ist vielleicht das wichtigste Artefakt, mit dem man diese verschiedenen Standpunkte [Anmerkung des Verfassers: die Standpunkte der unterschiedlichen Anspruchsgruppen vgl. Kap.1] verwalten und mithin die iterative und inkrementelle Entwicklung eines Systems während seines Lebenszyklus kontrollieren kann.“4

In der UML lässt sich die Architektur eines Systems am besten durch die fünf ineinander übergreifende Sichten darstellen. Abbildung 1 zeigt eine grafische Illustration dieser fünf Sichten. Jede dieser Sichten kann für sich alleine stehen und sich auf einzelne Aspekte des Systems konzentrieren und diese abbilden. Weiterhin interagieren die fünf Sichten miteinander. Die Einsatzsicht enthält beispielsweise die Komponenten der Implementierungssicht. Die Komponenten der Implementierungssicht wiederum repräsentieren die physische Realisierung von Klassen, Schnittstellen und Kollaborationen.5

[...]

1 Vgl. Seemann/Gudenberg, Softwareentwurf mit UML, 2000, S. 2 auch Oesterreich, Die UML Kurzreferenz für die Praxis, 2001, S. VIII.
2 Vgl. Booch/Rumbaugh/Jacobsen, Das UML-Benutzerhandbuch, 1999, S. 13 f.
3 Vgl. Booch/Rumbaugh/Jacobsen, Das UML-Benutzerhandbuch, 1999, S. 14-16 und vgl. OMG, http://www.omg.org/gettingstarted/what_is_uml.htm (Stand: 27.01.02).
4 Booch/Rumbaugh/Jacobsen, Das UML-Benutzerhandbuch, 1999, S. 34.
5 Vgl. Booch/Rumbaugh/Jacobsen, Das UML-Benutzerhandbuch, 1999, S. 35 f.

Kommentare

Kommentar hinzufügen

Dieser Text kann über folgende URL aufgerufen und zitiert werden:

http://www.grin.com/e-book/5843/