1 / 26

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/26

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/26. Komposition Eine Komposition ist eine strenge Form der Aggregation, bei der die Teile vom Ganzen existenzabhängig sind. Sie beschreibt, wie sich etwas Ganzes aus Einzelteilen zusammensetzt und diese kapselt.

mauve
Download Presentation

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/26

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/26 Komposition Eine Komposition ist eine strenge Form der Aggregation, bei der die Teile vom Ganzen existenzabhängig sind. Sie beschreibt, wie sich etwas Ganzes aus Einzelteilen zusammensetzt und diese kapselt. Abhängigkeitsbeziehung Eine Abhängigkeitsbeziehung ist eine Beziehung zwischen zwei Modellelementen, die zeigt, dass eine Änderung in dem einen (unabhängigen) Element eine Änderung in dem anderen (abhängigen) Element notwendig macht.

  2. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 2/26 • Assoziation • Eine Assoziation beschreibt als Relation zwischen Klassen die gemeinsame Semantik und Struktur einer Menge von Objektverbindungen. • Es wird unterschieden in: • Attributierte • Qualifizierte • Abgeleitete • Mehrgliedrige • Gerichtete und • Spezialisierte • Aggregation • Eine Aggregation ist eine Assoziation, erweitert um den semantisch verbindlichen Kommentar, dass die beteiligten Klassen keine gleichwertige Beziehung führen, sondern eine Ganzes-Teil-Hierarchie darstellen. Eine Aggregation soll beschreiben, wie sich etwas Ganzes aus seinen Teilen logisch zusammensetzt.

  3. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 3/26 Klassendiagramm, Beziehungselemente Beziehungselemente verdeutlichen die Relationen zwischen den einzelnen Elementen. Definitionen (die wichtigsten) Generalisierung, Spezialisierung (Vererbung) Vererbung ist ein Programmiersprachenkonzept. Hier werden Operationen der Oberklasse auch den Unterklassen zugänglich gemacht. Generalisierung und Spezialisierung sind Abstraktionsprinzipien zur hierarchischen Strukturierung der Semantik eines Modells.

  4. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 4/26 Vererbung Realisierungsbeziehung Assoziation Gerichtete Assoziation Aggregation Komposition

  5. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 5/26 Verhaltensdiagramme Aktivitätsdiagramm Verwandte Begriffe: activity diagram, Objektzustand, Aktionszustand, Ablaufdiagramm, Programmablaufplan Definition Aktivitätsdiagramme beschreiben die Ablaufmöglichkeiten eines Systems mit Hilfe von Aktivitäten. Es ist eine spezielle Form des Zustandsdiagramms, das überwiegend oder ausschließlich Aktivitäten enthält. Eine Aktivität ist ein einzelner Schritt im Ablauf. Nebenläufige Aktivitäten werden durch das Aktivitätsdiagramm unterstützt. Für parallel laufende Pfade gilt, dass ihre Reihenfolge irrelevant ist. Aktivitäten sind entweder einer Klasse, einer Operation oder einem Anwendungsfall zugeordnet.

  6. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 6/26 Notation Dargestellt wird eine Aktivität durch ein grafisches Element mit einer geraden Ober-, Unterseite und einer konvex geformten Seite. Im Element sollte eine kurze Aktivitätsbeschreibung enthalten sein. Zulässig sind auch kurze Programmiercodes, frei formulierte Beschreibungen und Pseudocodes.

  7. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 7/26 Aktivitätsdiagramm aktivität1 () akitivität2 () [x>0] [x=0] Aktivität Entscheidung [x<0] Synchronisation (AND) Splitting Zusammenführung (XOR)

  8. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 8/26 Schleife Aktivität [Abbruchbedingung] [sonst] Verantwortungsbereich 1 Verantwortungsbereich 2 Verantwortungsbereich 3 Aktivität 1 Aktivität 2 Aktivität 3 Aktivität 4 Aktivität 5

  9. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 9/26 Senden und empfangen Aktivität 1 Signal senden Aktivität 2 Objekt Signal empfangen Aktivität 3 Aktivität 1 Aktivität 2 Objekt

  10. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 10/26 • Objektflussdiagramm • UML Aktivitätsdiagramme können auch als Objektflussdiagramme eingesetzt werden, wodurch sich ihr methodischer Nutzen erheblich steigert. Ein vorhandenes Diagrammelement ist die Notation vom resultierenden und vorausgesetzten Objektzustand. • Da eine Aktivität mehrere ausgehende Transitionen haben kann, bestimmte resultierende Objekte bzw. Objektzustände aber nur für bestimmte Transitionen erzielt werden, müssen sich die resultierenden Objektzustände auf konkrete Transitionen beziehen. Um dies in einem Aktivitätsprogramm darzustellen, reichen folgende Konventionen aus: • Nummerieren Sie die Aktivitäten eines Diagramms durch • Nummerieren Sie die ausgehenden Transitionen relativ zu jeder Aktivität in der • Form <Aktivitätsnummer>, <Transitionsnummer> • Geben Sie bei resultierenden Objekten/Objektzuständen die • Transitionsnummern an, für die das Resultat gilt.

  11. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 11/26 Werden die resultierenden Objekte nicht mehr dargestellt, wird aus dem Objektflussdiagramm einfach nicht dargestellt. Objektflussdiagramm 1.3 [Abbruch] Aktivität 1 1.2 1.2 [nicht ok] Objekt A (Zustand) 1.1 1.1 [ok] Objekt B (Zustand) Aktivität 2 2.1 [ok]

  12. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 12/26 Kollaborationsdiagramm Verwandte Begriffe: Zusammenarbeitsdiagramm, Kooperationsdiagramm, Interaktionsdiagramm Definition Ein Kollaborationsdiagramm zeigt eine Menge von Interaktionen zwischen ausgewählten Objekten in einer bestimmten begrenzten Situation (Kontext) unter Betonung der Beziehungen zwischen den Objekten und ihrer Topographie. Ein Kollaborationsdiagramm zeigt im Grunde dasselbe wie ein Sequenzdiagramm, geht jedoch tiefer auf die Zusammenarbeit untereinander ein. Kollaborationen sind stets Projektionen des dahinter stehenden Gesamtmodells und sind zu diesem konsistent. Es lassen sich mit einem Kollaborationsdiagramm die zeitlichen Folgen von Nachrichten, Antworten und Schleifen darstellen. Objektverbindungen können temporär oder grundsätzlich vorhanden sein.

  13. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 13/26 • Notation • Zwischen Objekten werden Assoziationslinien gezeichnet, auf denen die Nachrichten notiert werden. Ein kleiner Pfeil zeigt die Richtung der Nachricht an. • Es existieren zwei verschiedene Pfeilformen: • Nachrichten, bei der der Sender wartet, bis der Empfänger die Nachricht angenommen hat, werden als synchron bezeichnet. • Nachrichten, die in eine Warteschlange aufgenommen werden, wobei dem • Sender egal ist, wann die Nachricht angenommen wird, werden als • asynchron bezeichnet.

  14. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 14/26 Kollaborationsdiagramm objekt:Klasse [Bedingung] 1.2:antwort:=nachricht (arg) objekt:Klasse startNachricht() Actor objekt:Klasse 1.1.*:nachricht(argumente)

  15. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 15/26 Sequenzdiagramm Verwandte Begriffe: Interaktionsdiagramm, Ereignispfaddiagramm, Szenario, Nachrichtendiagramm, Reihenfolgediagramm Definition Eine Sequenz zeigt eine Reihe von Nachrichten, die eine ausgewählte Menge von Objekten in einer zeitlich begrenzten Situation austauscht, wobei der zeitliche Ablauf betont wird.

  16. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 16/26 Notation Objekte werden durch gestrichelte senkrechte Linien dargestellt. Oberhalb der Linie steht der Namen bzw. das Objektsymbol. Die Nachrichten werden als waagerechte Pfeile zwischen den Objektlinien gezeichnet. Auf ihnen wird die Nachricht notiert. Die Antwort wird als gestrichelter Pfeil mit offener Spitze dargestellt. Die Überlagerung der gestrichelten Lebenslinien durch breite, nichtausgefüllte (oder graue) senkrechte Balken symbolisiert den Steuerungsfokus. Der Steuerungsfokus gibt an, welches Objekt gerade die Programmkontrolle besitzt. Am linken oder rechten Rand sind frei formulierte Erläuterungen zulässig.

  17. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 17/26 Sequenzdiagramm Objekt 1 Objekt 2 Objekt 3 Iteration *nachricht () x antwort (x-y <2sec) delete () y Zusicherung Selbstdelegation Lebenslinie

  18. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 18/26 • Zustandsdiagramm • Verwandte Begriffe: Zustandsübergangsdiagramm, endlicher Automat • Definition • Ein Zustandsdiagramm zeigt eine Folge von Zuständen, die ein Objekt im Laufe seines Lebens einnehmen kann und aufgrund welcher Stimuli Zustandsänderungen stattfinden. • Ein Zustandsdiagramm beschreibt eine hypothetische Maschine (endlicher Automat), die sich zu jedem Zeitpunkt in einer Menge endlicher Zustände befindet. Sie besteht aus: • Einer endlichen, nicht-leeren Menge von Zuständen • einer endlichen, nicht-leeren Menge von Ereignissen • Zustandsübergängen • einen Anfangszustand • und einer Menge von Endzuständen

  19. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 19/26 • Zustand • Definition • Ein Zustand gehört zu genau einer Klasse und stellt eine fachlich motivierte Abstraktion bzw. Zusammenfassung einer Menge von möglichen Attributwerten dar, die die Objekte dieser Klasse einnehmen können. Zustandsdiagramme beschreiben das innere Zustandsmodell eines Objektes. • Es gibt zwei besondere Zustandstypen: • Startzustand (Zu einem Startzustand kann kein Übergang stattfinden.) • Endzustand (Vom Endzustand führt kein Ereignis mehr weg.) • Jeder Zustand kann eine Menge von Zustandsvariablen enthalten. Zustandsvariablen sind Attribute der Klasse, zu denen der Zustand gehört. • Zustände besitzen einen eindeutigen Namen oder sind anonyme Zustände. Anonyme Zustände sind grundsätzlich voneinander verschieden. Zwei namenlose Zustände in einem Diagramm sind zwei verschiedene Zustände.

  20. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 20/26 • Übergänge von einem Zustand zum nächsten werden durch Ereignisse ausgelöst. Ein Ereignis hat einen Namen und eine Liste möglicher Argumente. • Ein Zustand kann Bedingungen an Ereignisse knüpfen, die erfüllt werden müssen, damit der Zustand durch ein Ereignis eingenommen werden kann. • Ereignisse können Aktionen innerhalb des Zustandes auslösen. Dabei sind folgende Auslöser vordefiniert: • Entry löst automatisch bei Eintritt in einem Zustand aus. • Exit löst automatisch beim Verlassen eines Zustandes aus. • Do wird immer wieder ausgelöst, solange der Zustand aktiv ist. • Notation • Zustände werden durch abgerundete Rechtecke dargestellt. Sie können Namen beinhalten und optional durch horizontale Linien in drei Bereiche aufgeteilt werden. Ein Startzustand ist ein kleiner ausgefüllter Kreis. Der Endzustand ist ein nicht-ausgefüllter Kreis mit einem mittig angesetzten ausgefüllten Kreis.

  21. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 21/26 • Ereignis und Transition • Verwandter Begriff: engl. event • Definition • Ein Ergebnis ist ein beachtendes Vorkommnis, das in einem gegebenen Kontext eine Bedeutung hat, sich räumlich und zeitlich lokalisieren lässt und das einen Zustandübergang (Transition) auslöst. • Ein Ereignis kann folgende Ursachen haben: • Eine (für eine Transition) Bedingung wird erfüllt. • Das Objekt enthält eine Nachricht.

  22. Zustand Zustandsvariable Zustand Zustand Zustand Ereignis/ Aktions- beschreibung Zustands- variablen Zustandsvariablen Ereignis/ Aktions- beschreibung UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 22/26 Zustandsdiagramm Zustand 2 Notation Zustand Zustand anonymer Zustand Endpunkt Startpunkt

  23. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 23/26 Notation Transition Transition Zustand 1 Zustand 2

  24. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 24/26 Implementierungsdiagramme Komponentendiagramm Verwandte Begriffe: Subsystem, Modul, Paket, Baustein, Anwendungsbaustein Definition Eine Komponente ist ein ausführbares Stück Software mit eigener Identität und definierten Schnittstellen. Es sind Komponentendefinitionen (z.B. “Person“) und Komponenteninstanzen (z.B. „Martin Muster“) zu unterscheiden. Komponentendiagramme zeigen Beziehungen der Komponenten untereinander. UML-Komponenten ähneln den Paketen: Sie definieren Grenzen, sie gruppieren und gliedern eine Menge einzelner Elemente. Komponenten können über Schnittstellen verfügen. Komponenten bzw. Komponentendiagramme werden manchmal benötigt, um Compiler- und Laufzeitabhängigkeiten zu notieren.

  25. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 25/26 Einsatz- und Verteilungsdiagramm Verwandte Begriffe: Knotendiagramm, Konfigurationsdiagramm Ein Knoten ist ein zur Laufzeit physisch vorhandenes Objekt, das über Rechenleistung bzw. Speicher verfügt (Prozessor, Peripheriegeräte). Verteilungsdiagramme zeigen, welche Komponenten und Objekte auf welchen Knoten laufen (wie konfiguriert und welche Kommunikationsbeziehungen). Notation Knoten werden als Quader dargestellt, die miteinander kommunizieren. Innerhalb des Quaders können optional Komponenten oder Laufzeitobjekte (Prozesse) platziert werden. Zulässig sind auch Schnittstellen und Abhängigkeitsbeziehungen.

  26. Actor Komponente UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 26/26 Einsatz- und Verteilungsdiagramm Knoten 2 Knoten 1 Knoten 3 Objekt

More Related