UML – Unified Modeling Language

Slides:



Advertisements
Ähnliche Präsentationen
Business Engineering Philipp Osl, Alexander Schmidt
Advertisements

1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Rollenbasierter Entwurf am Beispiel eines benutzeradaptierbaren Hyperbooks Institut für Informatik Rechnergestützte Wissensverarbeitung Universität Hannover.
Frank Simon, BTU Cottbus: Einführung in UML
Die Definitionsphase -Objektorientierte Analyse - Das statische Modell
UML-Basics: Einführung in Objekt-Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler.
Kapitel 7 State-Machines/Zustandsautomaten
OO Analyse Analyseprozess Erstellen eines Modells
Methodik: Objektorientierte Analyse
Objektorientierter Entwurf
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Manfred Thaller, Universität zu Köln Köln 28. Januar 2008
Visualisierung des Rechts mit UML
Seminar Rechtsinformatik
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Sequenzdiagramm.
Objektorientierte Analyse (OOA) Verhaltensmodellierung
Abhängigkeitsbeziehung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
Lösungen
Objektorientierte Konzepte
Modellierung komplexer Realität mit Objekten
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
UML Unified Modelling Language Dipl. -Inform
Software-Engineering II
DVG Klassen und Objekte
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
Rational Rose und UML: Erstellung einer Kontoverwaltung
UML Begleitdokumentation des Projekts
Unified Modeling Language Einführung zu UML Was ist „UML“?
Objektorientierte Softwareentwicklung
Referat „COMET-Basis“
Visualisierung objektrelationaler Datenbanken
11. Vorlesung: Dynamische Konzepte am Fallbeispiel
12. Vorlesung: Aktivitätsdiagramme
10. Vorlesung: Dynamische Konzepte
Unified Modeling Language Repetition / Einführung zu UML
UML WS 09/10: Datenbanken vs MarkUp Dozent: Prof. Dr. Manfred Thaller
Copyright 2011 Bernd Brügge, Christian Herzog Grundlagen der Programmierung TUM Wintersemester 2011/12 Kapitel 11, Folie 1 2 Dr. Christian Herzog Technische.
LVA , SS021 Im Mittelpunkt aller Bemühungen steht der Kunde und die Steigerung des Kundennutzens. Deswegen: Wer alles reinlässt kann nicht.
UML-Kurzüberblick Peter Brusten.
Unified Modeling Language
UML Modellierung des Verhaltens von Klassen und Objekten
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Informatik und Programmieren 3
Vorlesung Software Engineering I
Zustandsübergangsdiagramme (1)
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Unified Modeling Language UML
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
1 DigInf 05/06 Diagrammtypen der UML 2.0 StrukturdiagrammeVerhaltensdiagramme Interaktionsdiagramme Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm.
© Till Hänisch, 2002 BA Heidenheim Objekte und UML "You can model 80 percent of most problems by using about 20 percent of the UML." -- Grady Booch But.
Tutorium Software-Engineering SS14 Florian Manghofer.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
Tutorium Software-Engineering SS14 Florian Manghofer.
A nwendungsfalldiagramm. Ü berblick  Allgemein  Anwendungsfalldiagramm in Stichpunkten  Zusammenhang  Anwendungsbereich  Diagramm.
1 Objektorientierte Softwareentwicklung. Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS Phasen objektorientierter.
UML und Modellierung mit ArgoUML
OCL – Object Constraint Language
Einführung DI Harald Sander.
Systemanalyse BA Heidenheim 2002.
Objektorientiertes Programmieren
Vorlesung #3 ER Modellierung
4. Modellieren und Diagrammarten
Implementieren von Klassen
Use Cases Nico Wacker.
Informatik Softwareentwicklung – 4.2 Diagramme
 Präsentation transkript:

UML – Unified Modeling Language Praktischer Einsatz im Unterricht 12. 10. 2010 DI Harald Sander

UML Entwicklung von UML wurde 1994 von Booch, Jacobson und Rumbaugh (3 Amigos) bei Rational Inc. begonnen UML 0.9 – Juni 1996 UML 1.0 – Januar 1997 UML 1.1 – September 1997 Die UML wird seit 1998 als Standard für objektorientierte Modellierung angesehen UML 1.4 März 2001 Viele führende Unternehmen der Computerbranche (Microsoft, Oracle, Hewlett-Packard, ...) wirkten aktiv an der Entwicklung mit und unterstützen die UML UML 2.x – ab 2005, aktuelle Version UML 2.3 – Mai 2010 12. 10. 2010 DI Harald Sander

UML Was ist UML? Sprache zur Spezifikation, Visualisierung, Konstruktion und Dokumentation von Modellen für Softwaresysteme, Geschäftsmodelle und andere Nicht-Softwaresysteme UML bietet den Entwicklern die Möglichkeit, den Entwurf und die Entwicklung von Softwaremodellen auf einheitlicher Basis zu diskutieren UML bietet eine Notation für Modelle, keine Methode 12. 10. 2010 DI Harald Sander

UML Warum ist die UML keine Methode? Sie ist lediglich ein Satz von Notationen zur Formung einer allgemeinen Sprache zur Softwareentwicklung Eine Methode beinhaltet Empfehlungen zur Vorgehensweise bei Entwicklungsprozessen Um UML erfolgreich zu nutzen, ist es notwendig eine passende Methode zu entwickeln, die die UML unterstützt 12. 10. 2010 DI Harald Sander

UML • Use-Case-Diagramm • Klassendiagramm • Objektdiagramm Anforderungen Statische Sicht: Logischer Aufbau des Systems Dynamische Sicht: Interaktionen, Abläufe Implementierung, in VSDB bzw. Dezentrale Systeme • Objektdiagramm • Aktivitätsdiagramm • Verteilungsdiagramm • Komponentendiagramm • Zustandsdiagramm • Sequenzdiagramm • Kollaborationsdiagramm • Paket-Diagramm • Klassendiagramm • Use-Case-Diagramm 12. 10. 2010

UML Klassendiagramm Gemeinsame Darstellung der Klassen und Beziehungen eines Systems. Das zentrale Diagramm zur Modellierung. Es beschreibt alle Zusammenhänge bzw. Beziehungen zwischen den verschiedenen Klassen eines Programms. Komponenten Klassen Objekte Beziehungen 12. 10. 2010 DI Harald Sander

UML Klassendiagramm

UML Darstellung von Klassen Die Klassen – Darstellung beinhaltet Attribute und Methoden Modifizierer + für public # für protected ~ für package − für private 12. 10. 2010 DI Harald Sander

UML Beziehungen zwischen Klassen Ein Stereotyp gibt an, wie ein bereits durch die UML vorgegebenes Modellelement bzw. Metaklasse, für ein spezifisches Einsatzgebiet angepasst werden kann. 12. 10. 2010 DI Harald Sander

UML Objektdiagramm Das Objektdiagramm soll verdeutlichen, wie die Attribute einer Klasse zu einem bestimmten Zeitpunkt (Momentaufnahme) des Programms sind. => Es werden die Ausprägungen einer Klasse dargestellt 12. 10. 2010 DI Harald Sander

UML Objektdiagramm Die Komponenten (Assoziationen, Vererbungspfeile, usw.) sind genau gleich wie beim Klassendiagramm. Unterschiede zum Klassendiagramm: Es werden nur die Attribute mit ihren Werten eingetragen (nicht die Methoden)‏ Statt dem Klassennamen wird das Objekt folgendermaßen bezeichnet: Objektname:Klassenname (Wichtig: Unterstreichen nicht vergessen! Mit Unterstreichen wird deutlich gemacht, dass es sich um Objekte handelt. Dies gilt für alle UML-Diagramme)‏ Bei unbekanntem Objektnamen: :Klassenname Datentypen können weggelassen werden! 12. 10. 2010 DI Harald Sander

UML Objektdiagramm 12. 10. 2010 DI Harald Sander

UML Paketdiagramm Paketdiagramme zeigen Pakete von Klassen und die existierenden Abhängigkeiten zwischen ihnen. Sie dienen zur Strukturierung des Systems in Teilsysteme. Pakete bilden Namensräume aber keine physischen Einheiten 12. 10. 2010 DI Harald Sander

UML Paketdiagramm 12. 10. 2010 DI Harald Sander

UML Paketdiagramm merge – erweitert import und redefiniert importierte Classifier im aufnehmenden Paket, verschmelzt dadurch Pakete. import– erweitert den Namensraum, man kann auf die Klassen des Pakets transitiv unqualifiziert zugreifen. Öffentlicher Paketimport, Pakete sind auch nach außen sichtbar. access - erweitert den Namensraum, man kann auf die Klassen des Pakets nicht transitiv unqualifiziert zugreifen. Privater Paketimport. 12. 10. 2010 DI Harald Sander

UML Kollaborationsdiagramm Darstellung der Interaktionen für einen bestimmten begrenzten Kontext, unter besonderer Beachtung der Beziehungen unter den einzelnen Objekten. Die kommunikativen Aspekte zwischen den einzelnen Objekten werden ereignisbezogen dargestellt, Botschaften zwischen den Objekten sollen visualisiert werden. Der zeitliche Ablauf dieser Interaktionen steht im Hintergrund und wird lediglich durch eine Nummerierung der Nachrichten symbolisiert 12. 10. 2010 DI Harald Sander

UML Kollaborationsdiagramm 1:Versicherung beantragen(Daten) 4: Vertrag schicken() :Versicherungsdatenbank 2: Antrag prüfen() :Fahrzeughalter :Sachbearbeiter 3: Vertrag erstellen() V1:Versicherung 12. 10. 2010 DI Harald Sander

UML Sequenzdiagram Beschreibt die zeitliche Abfolge von Interaktionen zwischen einer Menge von Objekten innerhalb eines zeitlich begrenzten Kontextes, dynamisches Verhalten der Objekte zur Laufzeit. Mittels des Sequenzdiagramms beschreibt man die Interaktionen zwischen den Modellelementen ähnlich, wie bei einem Kollaborationsdiagramm, jedoch steht beim Sequenzdiagramm der zeitliche Verlauf des Nachrichtenaustausches im Vordergrund. 12. 10. 2010 DI Harald Sander

UML Sequenzdiagramm new( ) – erzeugt ein neues Objekt Rekursion – Objekt kommuniziert nicht mit einem anderen Objekt, sondern mit sich selbst Einfache Nachricht – Objekt übergibt die Steuerung an ein anderes Objekt Snychrone Nachricht – Objekt wartet auf Antwort bevor es fortfährt Asynchrone Nachricht – Objekt arbeitet weiter ohne auf Antwort zu warten

UML Sequenzdiagramme V1:Versicherung Aktor neuesObjekt :Fahrzeughalter Vertrag schicken() Versicherung beantragen(Daten) Antrag prüfen() Vertrag erstellen() Kündigen() Vertrag auflösen() Aktor neuesObjekt :Fahrzeughalter :Sachbearbeiter Ergebnis Nachricht Aktivierung Lebenslinie Zerstörung 12. 10. 2010 DI Harald Sander

UML Zustandsdiagramm Ein Zustand ist die Menge von möglichen Attributwerten, die die Objekte einer Klasse annehmen können. Visualisiert verschiedenartige Zustände der Objekte, sowie Funktionen, die zu Zustandsänderungen des Objektes führen (Transitionen). Eine Transition ist ein Zustandsübergang eines Objektes, der durch ein Ereignis ausgelöst wird und kann eine zu erfüllende Bedingung sowie auszuführende Aktionen umfassen. 12. 10. 2010 DI Harald Sander

UML Zustandsdiagramm Startzustand Endzustand einfacher Zustand Entry: Aktion(en) die beim Betreten des Zustands ausgeführt werden soll Do: Aktion(en) die ausgeführt werden, wenn der Zustand aktiv ist Exit: Aktion(en) die beim Verlassen ausgeführt werden 12. 10. 2010 DI Harald Sander

UML Zustandsdiagramm Transition = Übergang von einem Zustand in den anderen event [guard]/action Event: Ereignis das den Zustandsübergang auslöst Guard: Bedingung die überprüft wird (z.B. [tank=voll])‏ Action: Aktion (Methode) die ausgeführt wird, wenn der Event auftritt Schlüssel umgedreht [tank = voll]/Motor starten 12. 10. 2010 DI Harald Sander

UML Zustandsdiagramm 12. 10. 2010 DI Harald Sander

UML Zustandsdiagramm Darstellung von komplexen Zuständen erfolgt mit Hilfe von Zusammengestzten – Zuständen. Ein Zustand kann selber wieder ein Diagramm aus Unterzuständen enthalten (Zusammengesetzter - Zustand) Flache und tiefe History Zustände.

UML Zustandsdiagramm