Your SlideShare is downloading. ×
0
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
05 ai uml_illik_students_part_2_de
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

05 ai uml_illik_students_part_2_de

980

Published on

This is the German language version of a 3 part UML introduction. A slide set with English language is also available.

This is the German language version of a 3 part UML introduction. A slide set with English language is also available.

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
980
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
22
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Wissen macht ambitionierte Geschäftsziele erreichbar. Wir liefern Wissen und schaffen Werte. UML 2.x Weltweit. Knowledge enables your business ambitions. We deliver knowledge and create value. Worldwide. Part 2 Einführung Fort. / Introduction cont. J. Anton Illik Ambit 1. 1
  • 2. UML intro & overview www.ambit.de Inhalt • 5. Komponentendiagramm • 10. Sequenzdiagramm sich ändern! Ebenso die Verteilung der Kapitel. (Component Diagram) (Sequence Diagram) • 6. Verteilungsdiagramm • 11. Kommunikations- (Deployment Diagram) diagramm • 7. Use-Case-Diagramm (Communication Diagram) (Use Case Diagram) • 12. Timingdiagramm (Timing Achtung: Reihenfolge kann • 8. Aktivitätsdiagramm (Activity Diagram) Diagram) • 13. Interaktionsübersichts- • 9. Zustandsautomat diagramm (State Machine) (Interaction Overview Diagram) 2 www.ambit.de
  • 3. Kapitel 3 www.ambit.de 5. Komponentendiagramm (Component Diagram) • Komponentendiagramme ähneln Klassendiagrammen. • Konzentrieren sich auf höher angesiedelte Abstraktionen der Subsystemebene (Komponenten, Schnittstellen und ihre Beziehungen). • Das Komponentendiagramm gibt die Möglichkeit die Struktur eines Systems zur Laufzeit darzustellen. Die Darstellung orientiert sich dabei an der gewählten Komponentenstruktur. 3 www.ambit.de
  • 4. Kapitel 3 www.ambit.de 5. Komponentendiagramm (Component Diagram) • Notationselemente – Komponente (ist physikalischer Systemteil; verschiedene Arten; siehe nächste Seite) – Artefakte • z.B.kompilierte Objektdatei, • Stück Quellcode, • Shared Library, • Enterprise JavaBean (EJB), • usw.; • auch „Entität aus der Anwendungswelt“) 4 www.ambit.de
  • 5. Kapitel 3 www.ambit.de 5. Komponentendiagramm (Component Diagram) • UML-Standard-Stereotypen bieten folgende Komponentenarten an – document – entity – executable – File – library – process – service – specification – subsystem – table 5 www.ambit.de
  • 6. Kapitel 3 www.ambit.de 5. Komponentendiagramm (Component Diagram) Black-Box-Sicht White-Box-SIcht Komplexer Port Implementierte Schnittstelle <<component>> <<component>> Komponente1 Komponente2 Bestandteil3 Allgemeine Kompositionskonektor Klasse Abhängigkeitsbeziehung Bestandteil4 Realisierungsbeziehung Bestandteil1 Bestandteil2 <<spezifcation>> Bestandteil einer Komponente Komponente specDoc <<artifact>> <<subsystem>> <<compontent>> Artefakt1 Port Komponente3 Komponente4 Verwendungs- <<use>> Beziehung <<artifact>> Komponente6 <<manifest>> Delegationskonnektor Implementierungsbeziehung Benötigte Schnittstelle 6 www.ambit.de
  • 7. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) • Das Verteilungsdiagramm zeigt die Zuordnung von Artefakten auf Hardware-Einheiten, die als Knoten bezeichnet werden. • Mit anderen Worten: Verteilungsdiagramme zeigen die Knoten, auf denen das System läuft. Knoten sind pysikalische Einheiten ( = Hardware) • Daneben stellt das Verteilungsdiagramm die Kommunikationsverbindungen und Abhängigkeiten zwischen den Knoten dar. 7 www.ambit.de
  • 8. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) • Artefakte – Artefakte modellieren physikalesche Informationen über ein System • Neben Hardware lassen sich auch • Benutzerhandbücher • Schulungsmaterial • Passwortdatei • jar-Archive als Artefakte modellieren. – Artefakte geben also die Begrifflichkeiten des modellierten Systems wieder. 8 www.ambit.de
  • 9. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) • Artefakte – Ein Beispielartefakt: ein Java-jar-Archiv NachrichtenübermittlungsFramework.jar – Artefakte können (wie andere UML-Classifier auch) Eigenschaften besitzen NachrichtenübermittlungsFramework.jar Reentrant: boolean numLoggers: int = 1 9 www.ambit.de
  • 10. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) • Notationselemente – Knoten • gebräuchliche Knoten-Stereotypen: – client – server – database – backup server – Kommunikationspfad – Verteilungsbeziehung – Einsatzspezifikation 10 www.ambit.de
  • 11. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) Knoten 2 <<device>> Kommunikationspfad Knoten 1 <<device>> Knoten 3 <<execution environment>> Deployment spezifikation execution: thread Deployment Beziehung Transaction: false Artefakt 11 www.ambit.de
  • 12. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) Ein Knoten Server Ein Knoten mit mehreren Abschnitten Server <<components>> Buchungssystem.jar Comon.jar 12 www.ambit.de
  • 13. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) Ein Knoten mit verteilten Komponenten Server <<deploy>> <<deploy>> Buchungssytem.jar Common.jar 13 www.ambit.de
  • 14. Kapitel 3 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) Mehrere Knoten und ihre Verbindung Client <<Internet>> <<LAN>> Datenbankserver Buchungsserver 14 www.ambit.de
  • 15. Kapitel 3 www.ambit.de Verteilungsdiagramm (Deployment Diagram) •CaseStudy Verteilungsdiagramm: Verteilung einer Autoscheibenserviceeinheit 15 www.ambit.de
  • 16. Kapitel 3 www.ambit.de Vierter Diagrammtyp Verhaltensmodellierung [Behaviour Modelling] 16 www.ambit.de
  • 17. Kapitel 3 www.ambit.de 7. Use-Case-Diagramm (Use Case Diagram) • Anwendungsfalldiagramme zeichnen Anforderungen an ein System auf: im Überblick und aus Sicht der Benutzer. • Anwendungsfälle haben oft eine Beziehung im Sinne von – Generalisierung ( ) – Erweiterung (<<extends>>) und – Enthaltensein(<<include>>) zu anderen Anwendungsfällen im selben System 17 www.ambit.de
  • 18. Kapitel 3 www.ambit.de 7. Use-Case-Diagramm (Use Case Diagram) • Notationselemente – Use Case (Anwendungsfall) – System (Betrachtungsgegenstand) – Akteuer (Rolle, die ein Benutzer übernimmt, wenn er den Anwendungsfall aufruft) – <<include>> - Beziehung • Anwendungsfall kann das Verhalten eines anderen Anwendungsfalls enthalten. Der enthaltene Anwendungsfall wird nicht selbständig genutzt, sondern ist Teil eines anderen, größeren Anwendungsfalls. – <<extend>> - Beziehung • Gehört nicht zum normalen, grundsätzlichen Ablauf. – Generalisierungsbeziehung 18 www.ambit.de
  • 19. Kapitel 3 www.ambit.de 7. Use-Case-Diagramm (Use Case Diagram) Datenkopplung Daten synchronisieren Drahtlos synchronisieren Seriell synchronisieren Eine Anwendungsfallgeneralisierung 19 www.ambit.de
  • 20. Kapitel 3 www.ambit.de 7. Use-Case-Diagramm (Use Case Diagram) Systemname Akteur 2 Mitverwendeter Anwendungsfall Bankkunde Akteur 1 <<include>> Anwendungsfall Debug-Info Akteur 3 <<extend>> aufzeichnen Rechnungswesen Dazu gehört ein Anwendungsfalldokument, in dem die Funktionalität beschrieben ist. U.U. prosa, Word-Datei. -> Technisch gesehen kein Teil der UML. Typischer Inhalt: Kurzbeschreibung (WAS?), Vorbedingungen, Basisablauf 20 www.ambit.de
  • 21. Kapitel 3 www.ambit.de Use-Case-Diagramm •CaseStudy Use-Case-Diagramm: Modellierung für ein Online-Banking-System 21 www.ambit.de
  • 22. Kapitel 3 www.ambit.de 8. Aktivitätsdiagramm (Activity Diagram) • Mit Hilfe von Aktivitätsdiagrammen lassen sich – komplexe Verläufe – unter Berücksichtung von Nebenläufigkeiten, – alternativen Entscheidungswegen und Ähnlichem konkret modellieren und nachvollziehen. • Aktivitätsdiagramme zeichnen – wie Zustandsautomaten / Zustandsdiagramme – ein Bild vom Verhaltensablauf, – konzentrieren sich jedoch dabei auf Zustandsübergänge (d.h. die einzelnen Schritte) – und nicht auf deren Auslöser 22 www.ambit.de
  • 23. Kapitel 3 www.ambit.de 8. Aktivitätsdiagramm (Activity Diagram) • Notationselemente – Aktion („Einzelschritt einer komplexeren – Unterbrechungsbereich Funktionalität“) – Exception-Handler – Aktivität („Folge von Aktionen“) – Aktivitätsbereich – Objektknoten – Strukturierte Knoten – Kanten – Mengenverarbeitungsbereich – Kontrollknoten – Schleifenknoten – Startknoten – Entscheidungsknoten – Endknoten – Verzweigungs- und Verbindungsknoten – Synchronistations- und Parallelisierungsknoten – Parametersatz 23 www.ambit.de
  • 24. www.ambit.de Kapitel 3 8. Aktivitätsdiagramm (Activity Diagram) Aktivitätsname Aktivität Startknoten Einladung bekommen Möglicher Ablauf Einladung Datum prüfen Objektknoten Eingabepara meter Lust auf [Zeit vorhanden] Feier prüfen Aktion [keine Zeit] Aktivitätskante [keine Lust] [Lust vorhanden] Bedingung Feier absagen Feier zusagen Kontrollknoten, Entscheidungsknoten Endknoten 24 www.ambit.de
  • 25. Kapitel 3 www.ambit.de 8. Aktivitätsdiagramm (Activity Diagram) Geschenk einpacken [Empfänger wohnt weiter weg] Paketaufkleber adressieren Weihnachts- Geschenk geschenk einpacken Unter den Baum legen [Empfänger wohnt in der Nähe] Ein Verzweigungsknoten im Einsatz / Entscheidung im Aktivitätsdiagramm 25 www.ambit.de
  • 26. Kapitel 3 www.ambit.de 8. Aktivitätsdiagramm (Activity Diagram) Etwas parallelisieren und wieder zusammenführen ……. ……. ……. 26 www.ambit.de
  • 27. Kapitel 3 www.ambit.de 9. Zustandsautomat (State Machine) Mit dem Zustandsautomaten wird die Möglichkeit gegeben, das Verhalten beliebiger Classifier zu modellieren. Sie spezifizieren dieses Verhalten mittels – Zuständen, die ein Classifier einnehmen kann, – und Übergängen (Transition) zwischen den Zuständen, die durch – interne oder externe Ereignisse initiiert werden können. Zustandsdiagramme zeigen verschiedene Stadien/Zustände an, die eine Entität in ihrem Leben durchlaufen kann. 27 www.ambit.de
  • 28. Kapitel 3 www.ambit.de 9. Zustandsautomat (State Machine) • Notationselemente – Einfacher Zustand – Ein- und Austrittspunkt – Transition („Zustandsübergang“) – Region – Startzustand – Historie – Endzustand – Spezialisierung – Pseudozustände – Kreuzung – Protokollzustandsautomat – Entscheidung – Terminator – Zusammengesetzter Zustand – Unterzustandsautomatenzustände – Nebenläufigkeiten werden wie im Aktivitätsdiagramm modelliert (gleiche Symbolik) 28 www.ambit.de
  • 29. Kapitel 3 www.ambit.de 9. Zustandsautomat (State Machine) Name des Zustandsautomaten Trigger / Auslöser Guard / Wächterbedingung Fahrkartenautomat Startzustand Aktionslabels: Betrag erhöht [Betrag<Preis] wartend entry [Münze eingeben] Geldaufnahme Do exit Zustand [Münze eingeben]/ do Betrag erhöhen include Cancel Fahrkarte Stopp gewählt ausgewählt gedrückt Transition Abbruch Berechnung Entry / Betrag ausgeben After do / Preis (Timeout) berechnen Kreuzungspunkt [Betrag = Preis] [Betrag>Preis] Ausgabe Fahrkarte Entry: Eintrittsverhalten Entry / Ausgabe Fahrkarte Wechselgeld ausgeben do / Wechselgeld Do: Zustandsverhalten ausgeben TimeTrigger 29 www.ambit.de
  • 30. Kapitel 3 www.ambit.de 10. Sequenzdiagramm (Sequence Diagram) • Der am häufigsten verwendete Typ von Interaktionsdiagramm. Zeigt chronologische Sicht des zwischen den Elementen/Entitäten stattfindenden Nachrichtenaustauschs. • In Sequenzdiagrammen wird der dynamische Ablauf zwischen Objekten unter Berücksichtigung der zeitlichen Abfolge dargestellt. 30 www.ambit.de
  • 31. Kapitel 3 www.ambit.de 10. Sequenzdiagramm (Sequence Diagram) • Notationselemente – Interaktion / Interaktionsrahmen – Lebenslinie – Nachricht – Zustandsinvariante – Kombiniertes Fragment – Ordnungsbeziehung – Interaktionsreferenz – Verknüpfungspunkt – Zerlegung von Lebenslinien 31 www.ambit.de
  • 32. Kapitel 3 www.ambit.de 10. Sequenzdiagramm (Sequence Diagram) Beteiligte Objekte objekt1 objekt2 objekt1 objekt2 nachricht() (a-b<2 sec.) a [x>0] nachricht1() b antwort Zusicherung Aktionssequenz [x<=0] nachricht2() Rekursion antwort2 Steuerungs- antwort1 fokus Lebenslinie Auflistung der Nachrichten von oben nach unten 32 www.ambit.de
  • 33. Kapitel 3 www.ambit.de 10. Sequenzdiagramm (Sequence Diagram) objekt1 objekt1 objekt2 neu() objekt2 Iteration nachticht() *nachricht() Objektkonstruktion und -dekonstruktion antwort zerstöre() antwort 33 www.ambit.de
  • 34. Kapitel 3 www.ambit.de Aktivitätsdiagramm •CaseStudy Aktivitätsdiagramme: Modellierung Verlauf einer Party 34 www.ambit.de
  • 35. Kapitel 3 www.ambit.de 11. Kommunikationsdiagramm (Communication Diagram) • Eng mit dem Sequenzdiagramm verwandt / Alternative zum Sequenzdiagramm. • Legt jedoch mehr gewicht darauf, wer mit wem kommuniziert. Der zeitliche Aspekt wird weniger betont. • In einem Kollaborationsdiagramm werden der dynamische Ablauf und dessen logische Abfolge im Rahmen einer Kollaboration von Objekten (Zusammenarbeit zur Realisierung eines Anwendungsfalls) gezeigt. 35 www.ambit.de
  • 36. Kapitel 3 www.ambit.de 11. Kommunikationsdiagramm (Communication Diagram) • Notationselemente – Interaktion / Interaktionsrahmen – Lebenslinie („virtuell, nur der „Kopf“ wird dargestellt) – Nachricht 36 www.ambit.de
  • 37. Kapitel 3 www.ambit.de 11. Kommunikationsdiagramm (Communication Diagram) sequenziell objekt:Klasse synchron [Bedingung] 1.2:antwort:=nachricht(arg.) eingeschränkt Start objekt:Klasse objekt:Klasse 1.1.*.nachricht(argumente) zeitabhängig Nachricht() asynchron Reihenfolge Nachrichten werden durch Linien zwischen den Kommunikationspartnern dargestell. 37 www.ambit.de
  • 38. Kapitel 3 www.ambit.de 12. Timingdiagramm (Timing Diagram) • Das Timingdiagramm zeigt das zeitliche Verhalten von Classifiern in einem System. • Stellt konkreten zeitlichen Ablauf der Nachrichten in den Mittelpunkt. 38 www.ambit.de
  • 39. Kapitel 3 www.ambit.de 12. Timingdiagramm (Timing Diagram) • Notationselemente – Interaktion / Interaktionsrahmen – Lebenslinie – Zeitverlaufslinie – Nachricht – Sprungmarke – Wertverlaufslinie – Ordnungsbeziehung 39 www.ambit.de
  • 40. Kapitel 3 www.ambit.de 12. Timingdiagramm (Timing Diagram) Name des Diagramms Zeitdauerbedingung Fußgängerampel {d…6*d} :Ampel grün rot gehen betriebsbereit nicht gehen swimlane aktivieren aktiv :Fußgänger Nachricht Zeitverlaufslinie wartend d Sek. 0 1 2 3 Zustand Zeitskala 40 www.ambit.de
  • 41. Kapitel 3 www.ambit.de 13. Interaktionsübersichtsdiagramm (Interaction Overview Diagram) • Ein Interaktionsübersichtsdiagramm zeigt das Zusammenspiel verschiedener Interaktionen, indem es Abfolgen von Interaktionen und Interaktionsreferenzen mittels einer Variante des Aktivitätsdiagramms darstellt. -> Vereinfachte Version eines Aktivitätsdiagramms (siehe CaseStudy „Party-Modellierung“) • Verfeinert wird fallspezifisch mit – Sequenzdiagramm – Kommunikationsdiagramm – Timingdiagramm 41 www.ambit.de
  • 42. Kapitel 3 www.ambit.de 13. Interaktionsübersichtsdiagramm (Interaction Overview Diagram) • Notationselemente – Interaktion / Interaktionsreferenz – Kontrollelemente 42 www.ambit.de
  • 43. Kapitel 3 www.ambit.de 13. Interaktionsübersichtsdiagramm (Interaction Overview Diagram) Geldautomat ref ref {0..10} Zeiteinheit PIN Eingabe Minuten Karteneinschub [Dauer > 10] Interaktionsreferenz [else] Paralellisierungsknoten ref [PIN Eingabe [PIN Eingabe == fehlgeschlagen] == 0] Geldtransaktion abwickeln sd ref :Authentifizierungs- Verzweigungsknoten :Display system Karteneinzug ref Anzeigen („Karte wird eingezogen“) Kartenauswurf Verbindungsknoten Kante Synchronisationsknoten Endknoten 43 www.ambit.de
  • 44. Kapitel 3 www.ambit.de Zustandsautomat •CaseStudy Zustandsdiagramme: Modellierung eines Fahrkartenautomaten 44 www.ambit.de
  • 45. www.ambit.de Kapitel 4 4 UML Modellentwicklung Kapitel 4 45 www.ambit.de
  • 46. Kapitel 4 www.ambit.de UML Diskussion Wie würden Sie bei der Modellentwicklung vorgehen? Grobe Reihenfolge der Modellentwicklung? 46 www.ambit.de
  • 47. www.ambit.de Literatur Literatur Literatur 47 www.ambit.de
  • 48. www.ambit.de UML verwendete und weiterführende Literatur 1. Wolfgang Zuser, Thomas Greching, Monika Köhle: „Software Engineering mit UML und Unified Process“; Pearson Studium, München, 2004 2. Chris Rupp, Jürgen Hahn, Stefan Queins, Mario Jeckle, Barbara Zengler: „UML 2 glasklar“; Hanser, München, 2005 3. Heide Balzert: „UML 2 kompakt“; Spektrum, Heidelberg, 2005 48 www.ambit.de

×