• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
05 ai uml_illik_students_part_1_de
 

05 ai uml_illik_students_part_1_de

on

  • 692 views

This is part1 of 3 parts of a set of slides for UML introduction. The slide are in German language. An English language version is also available.

This is part1 of 3 parts of a set of slides for UML introduction. The slide are in German language. An English language version is also available.

Statistics

Views

Total Views
692
Views on SlideShare
692
Embed Views
0

Actions

Likes
0
Downloads
12
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    05 ai uml_illik_students_part_1_de 05 ai uml_illik_students_part_1_de Presentation Transcript

    • 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 1 Einführung / Introduction J. Anton Illik Ambit 1. 1
    • UML intro & overview www.ambit.de ! Session 6 Inhalt / TOC ! Komponentendiagramm, ! Session 1 Verteilungsdiagramm, Use- ! Einführung, Diagrammarten Case-Diagramm sich ändern! Ebenso die Verteilung der Kapitel. ! Session 2 ! Session 7 ! Grundlagen, ! Case Study Use-Case-Diagramm 1. Klassendiagramm ! Session 8 ! Session 3 ! Case Study ! Aktivitätsdiagramm, Zustandsautomat, Achtung: Reihenfolge kann Klassendiagramm ! Session 4 Sequenzdiagramm ! 2. Paketdiagramm, ! Session 9 ! 3. Objektdiagramm, ! Case Study Zustandsdiagramm, ! 4. Kompositionsstruktur- Aktivitätsdiagramm diagramm ! Session 10 ! Session 5 ! Kommunikationsdiagramm, ! Case Study Timingdiagramm, Objektdiagramm, Interaktionsübersichtsdiagramm Verteilungsdiagramm 2 www.ambit.de
    • www.ambit.de Organisatorisches ! Arbeitstechniken dieses Seminars ! Dialog und Präsentation ! Lösung von Übungsaufgaben ! Bearbeitung von Fallbeispielen ! Nacharbeiten in der Literatur ! Fragen und Anregungen sind jederzeit erwünscht !!! 3 www.ambit.de
    • www.ambit.de UML Inhalte 1. UML Allgemein 2. UML Diagramme im Überblick 3. UML Diagramme im Detail 4 www.ambit.de
    • www.ambit.de Kapitel 1 1 UML Allgemein Kapitel 1 5 www.ambit.de
    • Kapitel 1 www.ambit.de 1 UML Allgemein 1.1 Was ist UML 1.2 Entwicklung von UML 1.3 Deutsche UML Begriffe 1.4 Überblick Diagrammtypen 6 www.ambit.de
    • www.ambit.de Kapitel 1 1. Was ist UML • eine Sprache zur Analyse, Spezifikation, Entwurf/Konstruktion und Visualisierung, Dokumentation von Modellen für Softwaresysteme • liefert Notationselemente für statische und dynamische Modelle -> Strukturdiagramme -> Verhaltensdiagramme • unterstützt objektorientierte Vorgehensweise 7 www.ambit.de
    • www.ambit.de Kapitel 1 2. Entwicklung von UML Unified Modelling Language 2.0 Erfahrungen der Anwender UML2 Partners 2005 Unified Modelling Language 1.5 UML Partners 2003 Unified Modelling Language 1.4 Object Management Group UML Partners übernimmt Copyright 2001 Unified Modelling Language 1.3 XML Metadata Interchange UML Partners 1999 Unified Modelling Language 1.2 UML Partners 1998 Unified Modelling Language 1.1 Integration der Object UML Partners Constraint Language 1997 Unified Modelling Language 1.0 Einsatzerfahrung der UML Partners Sprachschöpfer 1996 Unified Modelling Language 0.9 1995 Booch, Rumbaugh,Jacobson OMT OOD OOSE Rumbaught 1991 Booch 1992 Jacobson 1992 8 www.ambit.de
    • www.ambit.de Kapitel 1 3. UML Begriffe Englisch Deutsch Englisch Deutsch action Aktion component Komponente activity Aktivität component diagramm Komponenten- Diagramm activity diagramm Aktivitätsdiagramm composition Komposition actor Akteur, Aktor constraint Einschränkung aggregation Aggregation, Teile/ CRC-Card CRC-Karte, Ganzes-Beziehung Klassenkarte association Assoziation decision Entscheidung (ungerichtet) association class Assoziationsklasse dependency Abhängigkeit assoziation role Assoziationsrolle deployment diagram Verteilungs- diagramm 9 www.ambit.de
    • www.ambit.de Kapitel 1 3. UML Begriffe Englisch Deutsch Englisch Deutsch Attribute Attribut Discriminator Diskriminator, Unterscheidungs -Merkmal behavior diagramm Verhaltens- Event Ereignis Diagramm Bidirectional Bidirektionale Focus of control Steuerungsfokus association Assoziation bound element Gebundenes Generalization Generalisierung Element Cardinality Kardialität Instance Exemplar Class Klasse Interaction Interaktionsdiagr diagrams amme Class diagram Klassendiagramm Interface Schnittstelle collaboration Kollaborations- diagram Diagramm 10 www.ambit.de
    • www.ambit.de Kapitel 1 3. UML Begriffe Englisch Deutsch Englisch Deutsch lifeline Lebenslinie pattern Muster link Objektbeziehung problem domain Problembereich message Nachricht property Eigenschaft method Methode property string Eigenschaftswert multiplicity Multiplizität refinement Verfeinerung navigability Navigierbarkeit relationship Beziehung node Knoten scenario Szenario object Objekt sequence diagram Sequenz- diagramm object diagram Objektdiagramm state Zustand operation Operation statechart diagram Zustands- Diagramm package Paket stereotype Stereotyp parameterized Parametrisierte Klasse class 11 www.ambit.de
    • www.ambit.de Kapitel 1 3. UML Begriffe Englisch Deutsch subclass Unterklasse superclass Oberklasse swimlane Verantwortlichkeitsbereich, Schwimmbahn transition Transition, Übergang template class Parametrisierbare Klasse type Typ UML (die) UML unidirecitional associaton Gerichtete Assoziation use case Anwendungsfall use case diagram Anwendungsfalldiagramm 12 www.ambit.de
    • www.ambit.de Kapitel 1 4. Diagramm-Typen in UML Strukturdiagramme Verhaltensdiagramme -statisch- -dynamisch- Klassendiagramm Use-Case-Diagramm Interaktionsdiagramme: Paketdiagramm Aktivätsdaigramm Sequenzdiagramm Objektdiagramm Kommunikationsdiagramm Zustandsautomat Kompositionsstruktur- Timingdiagramm diagramm Interaktionsübersichtsdiagramm Komponentendiagramm Verteilungsdiagramm 13 www.ambit.de
    • www.ambit.de UML Inhalte 1. UML Allgemein 2. UML Diagramme im Überblick 3. UML Diagramme im Detail 14 www.ambit.de
    • www.ambit.de Kapitel 2 2 UML-Übersicht Kapitel 2 15 www.ambit.de
    • Kapitel 2 www.ambit.de 2 Diagramme der UML und ihre Anwendung 2.1 Klassendiagramm (Class Diagram) 2.2 Paketdiagramm (Package Diagram) 2.3 Objektdiagramm (Object Diagram) 2.4 Kompositionsstrukturdiagramm (Composite Structure Diagramm) 2.5 Komponentendiagramm (Component Diagram) 2.6 Verteilungsdiagramm (Deployment Diagram) 2.7 Use-Case-Diagramm (Use Case Diagram) 2.8 Aktivitätsdiagramm (Activity Diagram) 2.9 Zustandsautomat (State Machine) 2.10 Sequenzdiagramm (Sequence Diagramm) 2.11 Kommunikationsdiagramm (Communication Diagram) 2.12 Timingdiagramm (Timing Diagram) 2.13 Interaktionsübersichtsdiagramm (Interaction Overview Diagram) 16 www.ambit.de
    • www.ambit.de Kapitel 2 Erster Diagrammtyp Strukturmodellierung [Structure Modelling] 17 www.ambit.de
    • Kapitel 2 www.ambit.de 1. Klassendiagramm (Class Diagram) Diese Zentrale Frage beantwortet das Diagramm: Aus welchen Klassen besteht mein System und wie stehen diese untereinander in Beziehung? Stärken: • Beschreibt die statische Struktur des zu entwerfenden oder abzubildenden Systems. • Enthält alle relevanten Strukturzusammenhänge und Datentypen. • Bildet die Brücke zu den dynamischen Diagrammen. 18 www.ambit.de [Rupp et.a] S. 93-164
    • Kapitel 2 www.ambit.de 2. Paketdiagramm (Package Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wie kann ich mein Modell so schneiden, dass ich den Überblick bewahre? Stärken: • Organisiert das Systemmodell in größere Einheiten durch logische Zusammenfassung von Modellelementen. • Modellierung von Abhängigkeiten 19 www.ambit.de [Rupp et.a] S. 165-178
    • Kapitel 2 www.ambit.de 3. Objektdiagramm (Object Diagram) Diese Zentrale Frage beantwortet das Diagramm: Welche innere Struktur besitzt mein System zu einem bestimmten Zeitpunkt zur Laufzeit Stärken: • Zeigt Objekte und deren Attributbelegungen zu einem bestimmten Zeitpunkt. • Wird nur beispielhaft zur Veranschaulichung verwendet. • Detailniveau wie im Klassendiagramm • Sehr gute Darstellung von Mengenverhältnissen. 20 www.ambit.de [Rupp et.a] S. 179-190
    • Kapitel 2 www.ambit.de 4. Kompositionsstrukturdiagramm (Composite Structure Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wie sieht das Innenleben einer Klasse, einer Komponente, eines Systemteils oder eines Systems aus? Stärken: • Ideal für die Top-Down-Modellierung des Systems. • Mittleres Detailniveau, zeigt Teile eines „Gesamtelements und deren Mengenverhältnisse“; White-Box-View 21 www.ambit.de [Rupp et.a] S. 191-212
    • Kapitel 2 www.ambit.de 5. Komponentendiagramm (Component Diagramm) Diese Zentrale Frage beantwortet das Diagramm: Wie werden meine Klassen zu wieder verwendbaren, verwaltbaren Komponenten zusammengefasst und wie stehen diese miteinander in Beziehung? Stärken: • Zeigt Organisation und Abhängigkeiten einzelner technischer Systemkomponenten. • Modellierung angebotener und benötigter Schnittstellen möglich. 22 www.ambit.de [Rupp et.a] S. 213-224
    • Kapitel 2 www.ambit.de 6. Verteilungsdiagramm (Deployment Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wie sieht das Einsatzumfeld (Hardware, Server, Datenbanken, …) des Systems aus ? Wie werden Komponenten zur Laufzeit wohin verteilt ? Stärken: • Zeigt das Laufzeitumfeld des Systems mit den „greifbaren“ Systemteilen (meist Hardware). • Hohes Abstraktionsniveau, kaum Notationselemente. 23 www.ambit.de [Rupp et.a] S. 225-236
    • www.ambit.de Kapitel 2 Zweiter Diagrammtyp Verhaltensmodellierung [Behaviour Modelling] 24 www.ambit.de
    • Kapitel 2 www.ambit.de 7. Use-Case-Diagramm (Use Case Diagram) Diese zentrale Frage beantwortet das Diagramm: Was leistet mein System für seine „Umwelt“ (Nachbarsysteme, Stakeholder)? Stärken: • Präsentiert die Außensicht auf das System. • Geeignet zur Kontextabgrenzung. • Hohes Abstraktionsniveau, einfache Notationsmittel. 25 www.ambit.de [Rupp et.a] S. 239-264
    • www.ambit.de Kapitel 2 8. Aktivitätsdiagramm (Activity Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wie läuft ein bestimmter flussorientierter Prozess oder ein Algorithmus ab? Stärken: • Sehr detaillierte Visualisierung von Abläufen mit Bedingungen, Schleifen, Verzweigungen. • Parallelisierung und Synchronisation möglich. 26 www.ambit.de [Rupp et.a] S. 265-334
    • Kapitel 2 www.ambit.de 9. Zustandsautomat (State Machine) Diese Zentrale Frage beantwortet das Diagramm: Welche Zustände kann ein Objekt, eine Schnittstelle, ein Use-Case,… bei welchen Ereignissen annehmen? Stärken: • Präzise Abbildung eines Zustandsmodells mit Zuständen, Ereignissen, Nebenläufigkeiten, Bedingungen, Ein- und Austrittsaktionen. • Schachtelung möglich. 27 www.ambit.de [Rupp et.a] S. 335-403
    • Kapitel 2 www.ambit.de 10. Sequenzdiagramm (Sequence Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wer tauscht mit wem welche Informationen in welcher Reihenfolge aus ? Stärken: • Stellen den zeitlichen Ablauf des Informationsaustausches zwischen Kommunikationspartnern dar. • Schachtelung u. Flusssteuerung (Bedingungen, Schleifen Verzweigungen) möglich. 28 www.ambit.de [Rupp et.a] S. 407-485
    • Kapitel 2 www.ambit.de 11. Kommunikationsdiagramm (Communication Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wer kommuniziert mit wem? Wer „arbeitet“ im System zusammen? Stärken: • Stellt den Informationsaustausch zwischen Kommunikationspartnern dar. • Überblick steht im Vordergrund (Details und zeitliche Abfolge weniger wichtig) 29 www.ambit.de [Rupp et.a] S. 487-498
    • Kapitel 2 www.ambit.de 12. Timingdiagramm (Timing Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wann befinden sich verschiedene Interaktionspartner in welchem Zustand? Stärken: • Visualisiert das exakte zeitliche Verhalten von Klassen, Schnittstellen… • Geeignet f. Detailbetrachtungen, bei denen es überaus wichtig ist, dass ein Ereignis zum richtigen Zeitpunkt eintritt. 30 www.ambit.de [Rupp et.a] S. 499-514
    • Kapitel 2 www.ambit.de 13. Interaktionsübersichtsdiagramm (Interaction Overview Diagram) Diese Zentrale Frage beantwortet das Diagramm: Wann läuft welche Interaktion ab? Stärken: • Verbindet Interaktionsdiagramme (Sequenz-, Kommunikations- und Timingdiagramme auf Top-Level-Ebene. • Hohes Abstraktionsniveau. • Gut geeignet als Strukturierung der Interaktionsdiagramme. 31 www.ambit.de [Rupp et.a] S. 515-524
    • www.ambit.de Kapitel 2 Geschafft! (Finished!) 32 www.ambit.de
    • www.ambit.de Kapitel 2 Was wir skizziert haben Strukturdiagramme Verhaltensdiagramme -statisch- -dynamisch- Klassendiagramm Use-Case-Diagramme Interaktionsdiagramme Paketdiagramm Aktivitätsdiagramm Sequenzdiagramm Objektdiagramm Kommunikationsdiagramm Zustandsautomat Kompositionsstruktur- Timingdiagramm diagramm Interaktionsübersichtsdiagramm Komponentendiagramm Verteilungsdiagramm 33 www.ambit.de
    • www.ambit.de Kapitel 2 Wie ist ihre Meinung/Erfahrung… Werden alle Diagrammtypen ausführlich benutzt? Welche Diagramme verwenden Sie? Klassendiagramme, -> Überblick, pragmatische Gründe Sequenzdiagramme, Use-Case-Diagramme, Aktivitätsdiagramme … … 34 www.ambit.de
    • www.ambit.de UML Inhalte 1. UML Allgemein 2. UML Diagramme im Überblick 3. UML Diagramme im Detail 35 www.ambit.de
    • www.ambit.de Kapitel 3 3 UML Diagramme im Detail Kapitel 3 36 www.ambit.de
    • Kapitel 3 www.ambit.de 3 UML Diagramme im Detail 3.1 Klassendiagramm (Class Diagram) 3.2 Paketdiagramm (Package Diagram) 3.3 Objektdiagramm (Object Diagram) 3.4 Kompositionsstrukturdiagramm (Composite Structure Diagramm) 3.5 Komponentendiagramm (Component Diagram) 3.6 Verteilungsdiagramm (Deployment Diagram) 3.7 Use-Case-Diagramm (Use Case Diagram) 3.8 Aktivitätsdiagramm (Activity Diagram) 3.9 Zustandsautomat (State Machine) 3.10 Sequenzdiagramm (Sequence Diagramm) 3.11 Kommunikationsdiagramm (Communication Diagram) 3.12 Timingdiagramm (Timing Diagram) 3.13 Interaktionsübersichtsdiagramm (Interaction Overview Diagram) 37 www.ambit.de
    • www.ambit.de Kapitel 3 Dritter Diagrammtyp Strukturmodellierung [Structure Modelling] 38 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm (Class Diagram) In Klassendiagrammen werden die Attribute und Methoden von Klassen gezeigt sowie die Beziehungen der Klassen untereinander dargestellt. Bei der Darstellung von Klassen können unterschiedliche Detailgrade gewählt werden. Zum Beispiel: • Klassen (nur Namen) • Klasse mit Attributen • Klasse mit Attributen und Methoden/Operationen • Hinzukommen u.U. diverse Relationen/Beziehungen zwischen Klassen 39 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm (Class Diagram) • Notationselemente – Klasse – Verwendungsbeziehungen – Attribut – Abstraktionsbeziehung – Operation – Realisierungsbeziehung – Schnittstelle – Substitutionsbeziehung – Parametriesierte Klasse – Informationsfluss – Generalisierung – Informationseinheit – Generalisierungsmenge – Assoziation – Assoziationsklasse – Abhänigkeitsbeziehung 40 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm – Klassen Klasse <<Stereotyp>> Normale Operation () Paket: Klasse Klasse Abstrakte Operation() {Merkmale} /abgeleiteteOperation klassenOperation() Attribut: Typ = Inititalwert +publicOperation() {Zusicherung/Assertion} #protectedOperation Abstrakte Klasse Operation{Arg.liste}:Rückgabetyp -privateOperation ~package („friendly“) {Zusicherung/Assertion} i: Element Klasse <<metaclass>> Parametriserbare Klasse normales Attribut Klasse /abgeleitetes Attribut klassenAttribut +publicAttribut Klasse <Parameter> #protectedAttribut - private Attribut 41 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm – Vererbung Oberklasse Unterklasse 3 Unterklasse 1 Unterklasse 2 Landfahrzeug D1 Diskriminator 2 Oberklasse LKW PKW Motorad D2 Unterklasse 3 Coupe Limosine Kombi Diskriminator 1 D3 BMW Ford VW Unterklasse 1 Unterklasse 2 42 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm – Assoziationen 0..6 * Klasse Klasse <<Stereotypen>> Beziehungsname {Zusich../Merkmal} Aggregation Ganzes Klasse Klasse Klasse Komposition Existenz- abhängiger Assoziierte Teil Klassen 43 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm •Siehe Part1b: „Klassendiagramme im Detail“ 44 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm •CaseStudy Klassendiagramme: Modellierung einer Party- Verwaltung 45 www.ambit.de
    • Kapitel 3 www.ambit.de 1. Klassendiagramm – Pakete Komposition Komposition Multiplizität Multiplizität Teil Paket Rolle Teil Klasse1 Paket Klasse2 46 www.ambit.de
    • Kapitel 3 www.ambit.de 2. Paketdiagramm (Package Diagram) Das Paketdiagramm gibt die Möglichkeit die Struktur beliebiger Systeme zu gliedern und so Sichten in verschiedenen Abstraktionen auf dem System zu beschreiben. 47 www.ambit.de
    • Kapitel 3 www.ambit.de 2. Paketdiagramm (Package Diagram) • Notationselemente – Paket – Paket-Importer / Element-Importer – Paket-Merge 48 www.ambit.de
    • Kapitel 3 www.ambit.de 2. Paketdiagramm (Package Diagram) <<merge>> Allgemeines <<merge>> Use-Case Klassen Verhalten <<merge>> <<merge>> <<merge>> <<merge>> Kompositions- Aktivitäten Interaktionen strukturen <<merge>> <<merge>> Zustands- Komponenten Verteilung automat <<merge>> <<merge>> 49 www.ambit.de
    • Kapitel 3 www.ambit.de 3. Objektdiagramm (Object Diagram) Das Objektdiagramm gibt die Möglichkeit Instanzen von – Klassen, – Komponenten, – Knoten, – Assoziationen und – Attribute zu modellieren. 50 www.ambit.de
    • Kapitel 3 www.ambit.de 3. Objektdiagramm (Object Diagram) • Notationselemente – Instanzbeschreibung / Objekt – Werteangaben / Slots („identifier:typ = wert“) – Link („instance of an association“) 51 www.ambit.de
    • Kapitel 3 www.ambit.de 3. Objektdiagramm (Object Diagram) Objekt Attributname: Datentyp = Wert Objektname:Classifiername Classifiername = Name der abstrakten Klasse oder der Basisklasse UML-Classifier = Menge von UML-Elementen, die etwas gemeinsam haben: Klasse, Komponente, Datentyp, Schnittstelle, Knoten, Signal, Subsystem 52 www.ambit.de
    • Kapitel 3 www.ambit.de 3. Objektdiagramm (Object Diagram) Student Mitarbeiter Arbeitsverhältnis Firma martrikelnummer: String vorname: String Arbeitnehmer Arbeitgeber name: String geburtsdatum: Date vorlesungBesuchen() pruefungSchreiben() Arbeitsverhältnis einkommen: Geld Studentischer Mitarbeiter zugeordneterProfessor: String 53 www.ambit.de
    • Kapitel 3 www.ambit.de 4. Kompositionsstrukturdiagramm (Composite Structure Diagram) Das Kompositionsstrukturdiagramm gibt die Möglichkeit die interne Struktur von z.B. einer Klasse sowie seine Interaktionsbeziehungen zu anderen Systemteilen zu beschreiben. 54 www.ambit.de
    • Kapitel 3 www.ambit.de 4. Kompositionsstrukturdiagramm (Composite Structure Diagram) • Notationselemente – Part – Konnektor („verbindet Parts“) – Port („angebotene und benötigte Schnittstellen“) – Kollaboration – Kollaborationsanwendung 55 www.ambit.de
    • Kapitel 3 www.ambit.de 4. Kompositionsstrukturdiagramm (Composite Structure Diagram) Strukturierte Klasse (Classifier) Fahrzeug Part FahrerFenster: 1 FahrerSchalter: 1 Fenster Kippschalter Part- oder Rollenname BeifahrerFenster: 1 BeifahrerSchalter: 1 Fenster Kippschalter Konnektoren FondFenster: 2 (sind Verbindungen zwischen Parts, Fenster ähnlich wie Assoziationen zwischen Klassen.) Klassenname eines Parts Multiplizität eines Parts 56 www.ambit.de
    • www.ambit.de Literatur Literatur Literatur 57 www.ambit.de
    • 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 58 www.ambit.de