Einführungskurs in die UML

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
UML-Basics: Einführung in Objekt-Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler.
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Objektorientierte Konzepte und Notation in UML
Manfred Thaller, Universität zu Köln Köln 28. Januar 2008
Manfred Thaller, Universität zu Köln Köln 7. Januar 2010
Franziska Schmidt Sarah Ahlheit
Visualisierung des Rechts mit UML
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Anwendungsfalldiagramm
Ziel: externe Systemverhalten aus Anwendersicht
Sequenzdiagramm.
Objektorientierte Analyse (OOA) Inhaltsübersicht
Systemanalyse In der Systemanalyse wird aus den fachspezifischen Anforderungen das Systemmodell erstellt; im Systemmodell ist spezifiziert, was das System.
Anwendungsfall-Diagramm (Use Case Diagram)
Abhängigkeitsbeziehung
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
Lösungen
Objektorientierte Konzepte und Notation in UML
Modellierung komplexer Realität mit Objekten
UML Unified Modelling Language Dipl. -Inform
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
Spezifikation von Anforderungen
2. Vorlesung Ansätze der Systemanalyse: Strukturierte Analyse (SA)
12. Vorlesung: Aktivitätsdiagramme
5 Methoden und Werkzeuge zur Prozessmodellierung
Unified Modeling Language Repetition / Einführung zu UML
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
UML WS 09/10: Datenbanken vs MarkUp Dozent: Prof. Dr. Manfred Thaller
LVA , SS021 Im Mittelpunkt aller Bemühungen steht der Kunde und die Steigerung des Kundennutzens. Deswegen: Wer alles reinlässt kann nicht.
Objektorientierte Analyse
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
Vom Geschäftsprozess zum Quellcode
Fachkonzepte in der UML
Datenbanksysteme für Hörer anderer Fachrichtungen
Informatik und Programmieren 3
Relationale Datenbanken
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Wenn alles so einfach wäre
Objektorientierte Modellierung mit UML
Die Unified Modeling Language UML
Klassen und Klassenstruktur
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Anwendungsfalldiagramm
Geoinformation I Lutz Plümer
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #3 ER Modellierung.
Kurze Rekapitulation aus der Einführungsvorlesung Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 20. Oktober 2011.
Sichtbarkeit einschränken
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
Objektorientierte (OO) Programmierung
Name des Vortragenden ‌ Klasse ‌‌‌ Ort / tt.mm.jjjj Anwendungsfalldiagramm.
Tutorium Software-Engineering SS14 Florian Manghofer.
© 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.
A nwendungsfalldiagramm. Ü berblick  Allgemein  Anwendungsfalldiagramm in Stichpunkten  Zusammenhang  Anwendungsbereich  Diagramm.
UML und Modellierung mit ArgoUML
UML – Unified Modeling Language
Systemanalyse BA Heidenheim 2002.
 Präsentation transkript:

Einführungskurs in die UML Bruno Stäuble Thomas Büchelin

UML Begriffe Aggregation Komposition Assoziation ERM UML Aktivitätsdiagramm Swimlane Synchronisation Attribut Use case Klasse Methoden

Lernziele: Kennen der UML Geschichte Auffrischen der Kenntnisse betreffend ERM Sie kennen wesentliche Vorteile der objektorientierten Modellierung Wesentliche Darstellungsmittel der Unified Modeling Language kennen Konstruieren eines einfachen Objektmodells

Ablauf Einleitung Geschichte ERM vs. UML UML Tools Ausblick Fragen ···· Ablauf Einleitung Geschichte ERM vs. UML UML Klassen-Diagramm Anwendungsfall-Diagramm Aktivitäts-Diagramm Tools Ausblick Fragen

Was ist UML ? Standard Modellierungssprache Dient Visualisierung, Spezifizierung Konstruktion Dokumentation von Modellen für Softwaresystemen

Geschichte der UML Erste Publikationen vor ca. 30 Jahren. 1. Einleitung 2. Geschichte 3. ERM vs. UML 4. UML ···· Geschichte der UML Erste Publikationen vor ca. 30 Jahren. IT-Gurus entwickeln verschiedene, meist nur auf einen Anwendungsbereich spezialisierte Methoden. (80er Jahre) Erste Bücher über objektorientierte Analyse – und Designmethoden seit Anfang der 90er Jahren.

Historische Entwicklung objektorientierter Methoden und der UML Quelle Grafik: http://www.oose.de/uml

3 Amigos (Godfather’s of UML) Grady Booch James Rumbaugh Ivar Jacobson Quelle Grafik:„Introduction to the Unified Modeling Language, Terry Quatrani

···· 2. Geschichte 3. ERM vs. UML 4. UML 4.1. Klassen-Diag ERM Merkmale: Eine Entität ist abgrenzbar und gehört einem begrenzten System an. Gleichartige Entitäten entsprechen einem Entitätstyp Jeder Entitätstyp seinerseits wird durch seine Eigenschaften beschrieben, die man Attribute nennt. Den Inhalt dieser wiederum nennt man Ausprägungen.

Beispiel einer Entität Entitäten: Mitarbeiter Ruedi Hasler, Projekt A Entitätstyp: Mitarbeiter, Projekte Attribute von Entitätstypen: Tätigkeiten, Endtermin Ausprägung von Attributen: Schreiner, 5. 6. 2003

Jeder Entität aus EM1 sind Entitäten aus EM2 zugeordnet: Beziehungen in der ERM Assoziationstyp (EM1, EM2) Jeder Entität aus EM1 sind Entitäten aus EM2 zugeordnet: 1 (einfach) genau eine c (konditionell) keine oder eine m (multipel) eine oder mehrere mc (multipel-konditionell) keine, eine oder mehrere Quelle Grafik: Aus Stahlknecht, Hasenkamp; Einführung in die Wirtschaftsinformatik, 9.Auflage, Berlin, 1999

einfaches graphisches Beispiel Projekt 1 arbeitet an m Mitarbeiter Ein Mitarbeiter arbeitet an mindestens einem Projekt.

UML isch ganz klar dr Standard in dr objäktorientierte Softwareentwicklig und isch nümme Wägzdängge!

Wasserfall Modell Quelle Grafik: http://www.fbe.hs-bremen.de/spillner/WModell/sld005.htm

Beispiel Einsatz der UML Quelle Grafik: http://www.sigs-datacom.de/sd/publications//os/1998/02/OBJEKTspektrum_UM_kompakt.htm

Vorteile UML Minimierung von Zeitverlusten durch einfache Erschliessung von anspruchsvollen und komplexen Anwendungen einfach Integration neuer Anforderungen (während des Entwicklungsprozesses) durch evolutionären Prozess Die durchgängige Modellierung begünstigt die Qualität der Arbeitsergebnisse.

···· 3. ERM vs. UML 4. UML Diag. 4.1. Klassen 4.2. Anw. fall UML Diagramme Klassendiagramm (engl. Class Diagram oder Static Structure Diagram) Anwendungsfalldiagramm (engl. Use Case Diagram) Aktivitätsdiagramm (engl. Activity Diagram) Sequenzdiagramm (engl. Sequence Diagram) Kollaborationsdiagramm (engl. Collaboration Diagram) Zustandsdiagramm (engl. State Diagram) Komponentendiagramm (engl. Component Diagram) Verteilungsdiagramm (engl. Deployment Diagram)

Klassendiagramm Zeigt die statische Sicht auf das System ···· 3. ERM vs. UML 4. UML Diag. 4.1. Klassen 4.2. Anw. fall Klassendiagramm Zeigt die statische Sicht auf das System Steht im Zentrum der UML aber auch anderer objektorientierter Methoden Klassendiagramm setzt sich aus mehreren Klassen zusammen.

Das Modell Realität Modell Schreibmaschine Leuchtturm Quelle Grafik: Angelehnt an Bernd Oestereich, Objektorientierte Softwareentwicklung,1998, 4. Auflage, Seite 35

Beispiel einer Klasse Vogel

Klassen, Objekte und Beziehungen Vogel Fledervogel

Sich aufs Wesentliche begrenzen !!! Beispiel einer Klasse Klassenname PKW Attribute Farbe Leistung Km/h Methoden Bremsen Lenken Beschleunigen Sich aufs Wesentliche begrenzen !!!

Vergleich Klasse mit einem Entitästyp Klasse der UML entspricht Entitätstyp im ER-Modell Attribut der UML entspricht Entität im ER-Modell Methoden haben kein Gegenüber im ER-Modell

Beziehungen zwischen Klassen Vererbung Assoziation Aggregation Komposition

Vererbung Bankberater Trägt einen Anzug Ist über 30 Jahre alt Beraten Verkaufen Kreditberater Anlageberater …………………. Trägt den grauen Anlageberater Anzug …………………… Verkauft Aktien …………………….. Oberklasse Unterklasse Trägt den schwarzen Kreditberater Anzug Berät bei Hypotheken

Assoziation Mechanismus der es den Objekten erlaubt untereinander zu kommunizieren. Bankkunde Bank 1..* 1

Aggregation Spezialart der Assoziation Teil des Ganzen Beziehung Oberklasse beschreibt, wie sie sich aus Unterklasse zusammensetzt Bank Vorsorgegeschäft Anlagegeschäft Kreditgeschäft

Komposition Sehr starke Aggregation Unterklasse kann ohne Oberklasse nicht existieren Stärkste Beziehung zwischen Klassen Buch Kapitel

Klassendiagramm PKW Besteht aus Einzelteil 1 0..* verwendet Motor Karosserie …………. 1 Besteht aus 8 Fahrzeughalter Zylinder Quelle Grafik: http://www.rise.tuwien.ac.at/courses/se/se1/ download/UmlTut_Studenten.pdf

Aufgabe (S.43) „Die Firma Salzgeber GmbH will für ihre Projekte festhalten, welcher Mitarbeiter an welchen Projekten arbeitet. Mitarbeiter sind Projektleiter, Entwickler oder Consultant. Folgende Informationen sollen festgehalten werden können: Name des Projektes, Datum der Fertigstellung. Für Mitarbeiter Name, Vorname. Alle Projektfunktionen haben ein Zeitbudget, Projektleiter einen Review-Termin, Entwickler einen Beschäftigungsgrad, Consultants einen Stundensatz.“

Einsatzgebiete Anwendungsfall ···· 4. UML Diag. 4.1. Klassen 4.2. Anw. Fall 4.3. Aktivität Einsatzgebiete Anwendungsfall eine IST-Situation beschreiben (Ist-Anwendungsfall) einen SOLL-Zustand beschreiben (Soll-Anwendungsfall) eine Essenz beschreiben (Essentielle Anwendungsfälle) nur die durch Software zu unterstützenden Sachverhalte beschreiben (System-Anwendungsfälle) auch außerhalb der Software und allgemeine geschäftliche Anwendungsfälle darstellen (Geschäfts-Anwendungsfälle) ganz einfach verwendet werden (Name + Kurzbeschreibung) semi-formal und detailliert verwendet werden

Anwendungsfalldiagramm Englisch Use-Case Diagram Zeigt wer das System anwendet und was er damit tut. Sinn und Zweck: Grundlage für das Erstellen und Testen eines Systems darzustellen

Komponenten des Anwendungsfalldiagramms Bankberater Kreditberater Akteur Anlageberater Verbindungshierarchie Glücklicher Akteur

Anwendungsfalldiagramm Happy Akteur Systemgrenze Diagrammname

Beziehungen zwischen Use-cases 1 Verwalten WB Kurs IT Prüfung Teilnahme Berechtigung Registrieren includes

Beziehungen zwischen Use-cases 2 IT-Budget überwachen <<includes>> Ausgaben notieren ALARM: Ausgaben höher 500'000 CHF <<extend>> GL- Konsultieren Extension point

Anwendungsfalldiagramm Kurs zusammen-stellen Kurs belasten Ausschluss vom Kurs Teilnehmer prüfen Teilnehmer bearbeiten Teilnahme erfassen Finanzen Daten Sachbearbeiter Jünger 20 <<extends>> <<includes>> Extension point

Aufgabe (S.44) Formulieren Sie eine verbale Beschreibung zum Use-case Diagramm. Eine verbale Beschreibung sollte u.a. enthalten: Akteure, Ablaufbeschreibung, Ausnahmen, Regeln, Ansprechpartner, Dialogbeispiele.

Die Aktivität ···· 4. UML Diag. 4.2. Anw. Fall 4.3. Aktivität 5. Tools Pin eingeben Aktivität Pin prüfen

Aufbau eines Aktivitätendiagramms Pin eingeben Geld auswerfen Pin Prüfen Kunde Geldautomat Bank Swimlanes

Notation Aktivitätsdiagramme Synchronisation Splitting (x>0) (x=0) (x<0)

Aktivitätsdiagramm Quelle Grafik: http://www.sigs-datacom.de/sd/publications//os/1998/02/OBJEKTspektrum_UM_kompakt.htm

Aufgabe (S.45) Modellieren Sie ein Aktivitätsdiagramm für den Anwendungsfall „Buchrückgabe“ mit allen dafür notwendigen Aktivitäten. Zusätzlich zur Rückgabe, soll ermittelt werden ob das Buch schon wieder reserviert wurde. Falls ja, soll der Besteller benachrichtigt werden.

Tools Rational Rose ···· 4. UML Diag. 4.3. Aktivität 5. Tools 6. Fragen Tools Rational Rose

Anbieter Rational Corporation Rational Rose Grösster und bekanntester Anbieter Erst kürzlich von IBM aufgekauft Profitool welches seinen Preis hat komplette Lösung für Business-, Daten- und System – Analysten, Designern sowie Web und XML Entwickler ausgezeichnet .

Rational Software ausgezeichnet: Yphise prämiert Rational Rose als beste UML-Lösung für die Modellierung von Projekt- und Informationssystemen Das führende Werkzeug für modellgetriebene Entwicklung überzeugte durch seine umfassenden Modellierungsfähigkeiten und leichte Implementierbarkeit München, 3. Februar 2003 - Rational Software (Nasdaq: RATL) ist von Yphise ausgezeichnet worden: Der renommierte Analyst prämierte Rational Rose als beste Unified-Modeling-Language (UML)-Lösung für die Modellierung von Projekt- und Informationssystemen. Yphise führt unabhängige Bewertungen von Software durch, basierend auf einer nach ISO 9001 zertifizierten Methodologie.... Quelle Grafik: Rational Software GmbH, http://www.rational-software.de

Anbieter Gentleware Quelle Grafik: Screenshot aus der Professional Edition, http://www.gentleware.com

deutscher Toolanbieter übersichtlich und einfach Zahlreiche Features Preis: von Freeware bis 700$ (Professional Edition)

Anbieter microTOOL führender deutscher Toolanbieter professionelles Werkzeug (teuer 2500 €) mittlere und grosse Projekte Demo ->VIDEO

Ausblick OMG < - > Revision Task Force (RTF) ISO Zertifizierung ···· 5. Tools 6. Ausblick 7. Fragen Ausblick OMG < - > Revision Task Force (RTF) Version 2.0 ISO Zertifizierung RealTime

···· 6. Ausblick 7. Fragen ? Besten Dank für Eure Aufmerksamkeit ? ?