UML 2.0 -- Strukturdiagramme
Transcription
UML 2.0 -- Strukturdiagramme
2.Strukturdiagramme 2.5 Das Komponentendiagramm 2.6 Das Verteilungsdiagramm Prof. Mario Jeckle Fachhochschule Furtwangen [email protected] http://www.jeckle.de Fachhochschule Furtwangen, Sommersemester 2004 Digitally signed by Mario Jeckle Reason: I am the author of this document Location: www.jeckle. de Date: 2004.05.27 06:30:19 +02'00' 2.Strukturdiagramme Das Komponentendiagramm Dient • Darstellung der Systemstruktur in Komponenten zur Laufzeit • Ausführungsorientierter Sichtweise jeckle.de Antwort auf Frage: Wie ist die Struktur des Systems und wie werden diese Strukturen erzeugt? M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 2 2.Strukturdiagramme Das Komponentendiagramm Verhalten der Komponenten • Abgegrenzt • Über Schnittstelle zugreifbar jeckle.de Komponenten können -- bei Verwendung der selben Schnittstellen -- ohne Systemänderungen ausgetauscht werden M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 3 2.Strukturdiagramme Komponentendiagramm Komponente Implementierte Schnittstelle Komplexer Port «component» Komponente2 «component» Bestandteil3 Komponente1 Klasse 1..* Bestandteile einer Komponente Kompositionskonnektor Realisierungsbeziehung Allgemeine Abhängigkeitsbeziehung «artifact» Artefakt1 Bestandteil4 Bestandteil1 Komponente «specification» Bestandteil2 specDoc Verwendungsbeziehung «subsystem» «component» Komponente3 Komponente4 «use» jeckle.de «artifact» Konnektor «manifest» Komponente6 Teilsystem Port Implementierungsbeziehung Konnektor Benötigte Schnittstelle M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 Delegationskonnektor 4 2.Strukturdiagramme Elemente des Komponentendiagramms jeckle.de • • • • • • Das Komponentendiagramm besteht aus folgenden Elementen: Komponente Schnittstelle Realisierungs-, Implementierungs-, Verwendungsbeziehung Klasse Artefakt Port M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 5 2.Strukturdiagramme Notationselemente Die Notationselemente des Komponentendiagramms lauten: jeckle.de • Komponente • Artefakt • Abhängigkeiten M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 6 2.Strukturdiagramme Komponente • Darstellung durch Klassensymbol und Stereotyp component jeckle.de • Untereinheiten in großen Systemen können auch durch das Stereotyp subsystem gekennzeichnet sein «component» «component» Komponente Komponente «subsystem» Subsystem M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 7 2.Strukturdiagramme Komponente jeckle.de • ...ist modularer Systemteil mit transparenter Kapselung seines Inhalts • ...besteht aus Elementen mit klar definierter Funktionalität • ... kann eine eigenständige Anwendung sein • ... läßt sich nur über Schnittstellen beschreiben • ... wird zusammen mit Subsystemen durch mindestens ein Artefakt manifestiert M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 8 2.Strukturdiagramme Komponente Die Darstellung ist des Weiteren möglich als • Blackbox Komponenten • Whitebox Komponenten «component» jeckle.de Black-box Darstellung Teilnehmerverwaltung «provided interfaces» Sortierter Zugriff Wahlfreier Zugriff «required interfaces» Speichermedium White-box Darstellung «realization» Teilnehmer Verwaltungsmetadaten «artifacts» teilnehmer.jar M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 9 2.Strukturdiagramme Blackbox Komponenten • Angabe von Schnittstellen in nur einem weiteren Bereich • Keine Darstellung interner Realisierungen • Kennzeichnung durch Stereotyp: jeckle.de • provided interface: wird durch Komponente angeboten • required interface: wird von Komponente benötigt M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 10 2.Strukturdiagramme Whitebox Komponenten • Ist gegenüber den Blackbox-Komponenten erweitert um Angaben zu Classifiern und Artefakten • Kennzeichnung der Classifier durch Stereotyp realization jeckle.de • Kennzeichnung der Artefakte durch Stereotyp artifacts M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 11 2.Strukturdiagramme Artefakt jeckle.de Darstellung durch Classifiersymbol mit Stereotyp artifact und Dokumentensymbol in der rechten oberen Ecke «artifact» «artifact» Artefakt Artefakt M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 12 2.Strukturdiagramme Artefakt jeckle.de • • • • • Ist physische Informationseinheit Stellt konkrete Ausprägungen in Komponente dar Ist immer eine konkrete Ausprägung Hat keine eigenständige Abstraktion Konkretisierung des Artefakts durch Stereotyp file M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 13 2.Strukturdiagramme Stereotyp file File physische Datei innerhalb des Systems Sonderformen zu file: jeckle.de Document Executable Source Library hat keinen Quell- oder ausführbaren Code enthält Anweisungen für direkte Ausführung enthält übersetz- oder interpretierbaren Code enthält statisch oder dynamisch verwendbare Bibliothek M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 14 2.Strukturdiagramme Abhängigkeiten Darstellung durch Abhängigkeitsbeziehung (siehe Klassendiagramm) Zeilennummer «interface» «component» «interface» Sortierter Zugriff Zeilengenerator Speichermedium «use» «source» «executable» util.jar «component» «manifest» helper.java Listengenerator «tool generated» «source» «artifact» list.java jeckle.de list.class «custom code» «component» Addierer Zahlenfolge «artifact» «document» meinKlassendiagramm spec.tex M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 15 2.Strukturdiagramme Stereotypen Auch hier kommen Stereotypen zum Einsatz: jeckle.de • manifest verbindet Artefakt mit Komponente (Spezialfall: custom code: Zusammenhang von 2 Artefakten, wobei eines in das andere überführt wird tool generated: s.o., allerdings wird das eine in das andere automatisiert überführt) • use verbindet Komponente mit Schnittstelle M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 16 2.Strukturdiagramme jeckle.de 2.6 Das Verteilungsdiagramm M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 17 2.Strukturdiagramme Das Verteilungsdiagramm Dient • Aufzeigen der Zuordnung von Softwarekomponenten auf Hardwareknoten • Darstellung von Kommunikation und Abhängigkeit zwischen den Knoten jeckle.de Antwort auf Frage: Wie werden Systemkomponenten zur Laufzeit wohin verteilt? M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 18 2.Strukturdiagramme Verteilungsbeispiel «device» Bildprozessor 1..* 1 <<device>> Zentralprozessor Bildbearbeitung «artifact» Bildverarbeitung.exe 1 1 «device» Host «deploy» «deploy» «artifact» «artifact» Taskprogramm Strahlberechnungsprogramm Bereitstellung Datenmanagementprogramm «deployment spec» Bildaufbaubeschr.xml «artifact» Taskverarbeitung: Art maxDauer: Sek jeckle.de Bildberechnung.file M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 19 2.Strukturdiagramme Anwendung im Projekt jeckle.de • • • • Client-Server-Systeme Systeme mit mehr als einer Rechnereinheit Workstations Visualisierung von Systemtopologie M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 20 2.Strukturdiagramme Sonstiger Einsatz • Physikalische Kontextabgrenzung des Systems, wenn Nachbarsysteme existent • Blackboxmodellierung und Darstellung von System und Nachbarsystem Bewegungssensor : Sensor «Display» «Funk» «Tasten» jeckle.de : Fernbedienung «IR» : Anlagensteuerung «Funk» «Funk» Rauchsensor : Sensor Außenlampe : Beleuchtung M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 21 2.Strukturdiagramme Sonstiger Einsatz • Dokumentation von Hardwarevorgaben in visualisierter Form- besser als rein textuelle Darstellung PC1 «Internet» «deploy» Host : Mehrprozessorsystem «artifact» «LAN» PC2 «deploy» DBClient DBServer «WLAN» jeckle.de «artifact» «deploy» Laptop M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 22 2.Strukturdiagramme Notationselemente Das Verteilungsdiagramm verfügt über folgende Notationselemente: jeckle.de • • • • Knoten Kommunikationspfad Verteilungsbeziehung Einsatzspezifikation M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 23 2.Strukturdiagramme Knoten Darstellung durch Quader mit Knotennamen jeckle.de Knotenname M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 24 2.Strukturdiagramme Knoten jeckle.de • Repräsentiert Ressource, die genutzt wird für • Installation • Konfiguration • Bereitstellung • Ausführung von Artefakten • Sind strukturierte Classifier • Lassen sich schachteln M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 25 2.Strukturdiagramme Gerätenotation • Unter Gerät versteht man einen Knoten mit dem Stereotyp device • Gerät repräsentiert die Hardware im Verteilungsdiagramm «device» jeckle.de Name «workstation» M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 «lautsprecher» 26 2.Strukturdiagramme Notation Ausführungsumgebung • Unter Ausführungsumgebung versteht man einen Knoten mit Schlüsselwort ExecutionEnvironment • Ist die Softwareumgebung, in der die Softwarekomponenten ausgeführt werden «ExecutionEnvironment» jeckle.de Name M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 27 2.Strukturdiagramme Kommunikationspfad • Darstellung wie Assoziation, da Kommunikationspfad eine Assoziation ist • Wird eingeteilt in • Ungerichteter Kommunikationspfad jeckle.de • Gerichteter Kommunikationspfad M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 28 2.Strukturdiagramme Kommunikationspfad • Verbindet Knoten um Nachrichten auszutauschen • Modellierung komplexer Netzwerke möglich 0..50 PC1 «Internet» Host : Mehrprozessorsystem 1 1 «LAN» 0..50 PC2 jeckle.de 1 Laptop «WLAN» 0..10 M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 29 2.Strukturdiagramme Verteilungsbeziehung • Darstellung durch gestrichelten Pfeil und deploy • Beziehung zwischen Artefakt und Knoten, auf dem es verteilt ist «deploy» : B ibliotheksserver jeckle.de «artifact» R eservierung.jar M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 «deploy» «artifact» A usleihe.jar 30 2.Strukturdiagramme Einsatzspezifikation Darstellung durch Classifier-Symbol und deployment spec «deployment spec» «deployment spec» Name Name jeckle.de Attribut: Typ M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 31 2.Strukturdiagramme Einsatzspezifikation • Ist durch Abhängigkeitsbeziehung mit Artefakt verbunden • Beinhaltet Parameter zur Artefaktverteilung auf Knoten • Durch Parameterfestlegung ist Artefaktausführung steuerbar • alternative Notation: {Parameter der Einsatzspezifikation} in Artefakt «artifact» jeckle.de Bestellung.jar «deployment spec» BestellungBeschr.xml Taskverarbeitung : thread maxDauer : 3 M. Jeckle: 2.Strukturdiagramme. Fachhochschule Furtwangen, Sommersemester 2004 «artifact» Bestellung.jar {Taskverarbeitung : thread maxDauer : 3} 32