Objektorientierte Softwareentwicklung

Ähnliche Dokumente
UML (Unified Modelling Language) von Christian Bartl

INSPIRE - Modellierung

NACHRICHTENTECHNISCHER SYSTEME

Vorlesung Programmieren

Inhalt. 1 Einführung 17. Strukturdiagramme. 2 Klassendiagramm 37

Unified Modeling Language (UML )

Analyse und Design mituml2.1

Analyse und Design mituml2

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm...

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing

Die Unified Modeling Language UML

Analyse und Design mit U ML 2.3

Unified Modeling Language 2

Das umfassende Handbuch

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Requirements Engineering I

Objektorientiertes Design

Datenbanken. Teil 2: Informationen. Kapitel 7: Objektorientierte Sicht. UML-Diagramme. Vorstellung der unterschiedlichen UML-Diagramme

Software Engineering in der Praxis

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Einführung in die objektorientierte Programmierung

UML 2.0 Das umfassende Handbuch

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Das UML Benutzerhandbuch

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl

Übungen Softwaretechnik I

Oracle JDeveloper 10 g

UML 1.4 Referenz. Matthias Niete Dirk M. Sohn Orientation in Objects GmbH Weinheimer Str Mannheim

Analyse und Modellierung von Informationssystemen

Media Engineering. Objektorientierte Modellierung. Verhaltensmodellierung. R. Weller University of Bremen, Germany cgvr.cs.uni-bremen.

UML mit Enterprise Architect

Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML2 glasklar. UNIFIED MODELING LANGUAGE l HANSER

Modellbasierter Test mit der UML. Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest

Software Engineering in der Praxis

Software Engineering in der Praxis

Projektabwicklung mit UML und Enterprise Architect

CARL HANSER VERLAG. Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML 2 glasklar

Objektorientierte Analyse (OOA) Übersicht

Software-Engineering

Softwaretechnik 2015/2016

Softwaretechnologie für Fortgeschrittene Wohce 4 Modellierung UML

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller

Wirtschaftsinformatik 6a: Modellierung. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

Das UML Benutzerhandbuch

Guido de Melo Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

Von UML 1.x nach UML 2.0

Unified Modelling Language

Unified Modeling Language

Klassendiagramm. (class diagram)

Martin Fowler, Kendall Scott. UML konzentriert. Eine strukturierte Einführung in die Standard-Objektmodellierungssprache. 2., aktualisierte Auflage

Objektorientierte Softwareentwicklung

27. Oktober 2005 Florian Marwede

Systemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester Teil 8 -

SWE6 Slide 1. Software-Engineering. Vorlesung 6 vom Sebastian Iwanowski FH Wedel

Objektorientierte Modellierung mit UML

Formale Modellierung Vorlesung vom : Beyond JML

Methodische objektorientierte Softwareentwicklung

Tamagotchi-Spezifikation in UML

Zustandsdiagramme: Modellierung und Implementation. OOPM, Ralf Lämmel

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

Software Engineering, SoSe 07, WSI, D. Huson, May 7,

Objektorientierte Systementwicklung

Gliederung des Vortrages

Techniken der Projektentwicklungen

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11

Software- und Systementwicklung

Harald Störrle UML 2 für Studenten

Einführung in die Wirtschaftsinformatik

UML -Klassendiagramme

RUP Analyse und Design: Überblick

Software-Engineering

Inhaltsverzeichnis.

OOAD in UML. Seminar Software-Entwurf B. Sc. Sascha Tönnies

Objektorientierte Analyse (OOA) Inhaltsübersicht

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten

Softwaretechnik SS Vorlesungseinheit

UML konzentriert. Eine kompakte Einführung in die Standard-Objektmodellierungssprache. Martin Fowler. ADDISON-WESLEY An imprint of Pearson Education

Unified Modeling Language (UML)

Java Einführung Objektorientierte Grundkonzepte

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Requirements Engineering I

Einführung in UML. Überblick. 1. Was ist UML??? 2. Diagrammtypen. 3. UML Software. Was ist ein Modell??? UML Geschichte,...

Übung Einführung in die Softwaretechnik

UML - Unified Modeling Language

Rückblick: Entity-Relationship-Modell

Vorlesung Software-Engineering I

Transkript:

Objektorientierte Softwareentwicklung Grundkonzepte der UML Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile direkt aus der Vorlesung von Prof. Dr.-Ing. Faustmann (ebenfalls FHW Berlin) übernommen worden. Für die Bereitstellung dieses Vorlesungsmaterials möchte ich mich an dieser Stelle noch einmal recht herzlich bedanken. 31.05.2011 OO A/D/P Prof. Dr. Andreas Schmietendorf 1

Übersicht zur Vorlesung Übersicht zu den Diagrammen der UML Übersicht - Rational Unified Process (RUP) Werkzeuge zur Modellierung mit UML Erweiterungen im Kontext der UML Version 2.0 31.05.2011 Prof. Dr. Andreas Schmietendorf 2

Übersicht zu den Diagrammen der UML (eine Auswahl die typisch für den Bereich der Wirtschaftsinformatik ist) 31.05.2011 OO A/D/P Prof. Dr. Andreas Schmietendorf 3

UML-Diagrammtypen 31.05.2011 Prof. Dr. Andreas Schmietendorf 4

UML Anwendungsfalldiagramm Zeigt Beziehungen zwischen Akteuren und Anwendungsfällen auf Akteure (verschiedene Stereotypisierung) - Person im Sinne einer konkreten Rolle innerhalb einer Anwendung - Technische Systeme und deren Rolle - Externes System mit der Auslösung eines zeitlichen Ereignisses Anwendungsfälle - Menge von Aktivitäten eines Systems aus Nutzersicht - Komplette unteilbare Beschreibung - Zu jedem Anwendungsfall existiert eine textuelle Beschreibung Akteure, Vor- und Nachbedingungen, Invarianten, NFA, Ablaufbeschreibung Ausnahmen, Fehler, Regeln, Services, Ansprechpartner, Änderungshistorie Anwendungsfallbeziehungen (<<include>>, <<extend>>, Vererbung) 31.05.2011 Prof. Dr. Andreas Schmietendorf 5

UML Anwendungsfalldiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 6

UML Klassendiagramm Klassen definieren Struktur und Verhalten von Objekten - Objekte werden auf der Basis von Klassen erzeugt - Struktur Attribute und Operationen (Methoden) - Verhalten beschrieben durch verarbeitbare Nachrichten Attribute Name, [Typ, Initialwert, Zusicherung, ] Operationen Name, [Parameter, Parametertyp, ] Abstrakte Klassen abstrakter Oberbegriff - Abstrakte Klasse: Fahrzeug (keine sinnvolle Instanz) - Konkrete Klasse: PKW, Bahn, LKW, Beziehungen - Vererbung (Generalisierung und Spezialisierung) - Assoziationen (Beziehung, Aggregation, Komposition) Objekt Exemplar einer Klasse 31.05.2011 Prof. Dr. Andreas Schmietendorf 7

UML Klassendiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 8

UML Zustandsdiagramm Zustandsdiagramm (state diagram) - Zustände eine Objektes - Stimuli für Zustandsübergänge - Ereignisse Beschreibt einen endlichen Automaten - Endliche, nicht leere Menge von Zuständen - Endliche, nicht leere Menge von Ereignisse - Zustandsübergänge - Ein Anfangszustand - Menge von Endzuständen 31.05.2011 Prof. Dr. Andreas Schmietendorf 9

UML Zustandsdiagramm - 31.05.2011 Prof. Dr. Andreas Schmietendorf 10

UML Aktivitätsdiagramm Aktivitätsdiagramm (activity diagram) Spezielle Form der Zustandsdiagramme Beschreiben der Ablaufmöglichkeiten eines Systems - Aktivität (einzelner Schritt im Verarbeitungsablauf) - Transition (folgen dem Abschluss einer internen Aktion) Zuordnung zu Klassen, Objekten oder Anwendungsfall Beschreibung nebenläufiger Aktivitäten Strukturierung durch hierarchische Schachtelung Verwendung von Verantwortlichkeitsbereichen (swimlanes) 31.05.2011 Prof. Dr. Andreas Schmietendorf 11

UML Aktivitätsdiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 12

UML Kollaborationdiagramm Zeigt Interaktionen zwischen ausgewählten Objektinstanzen - Unterstellt einen begrenzten Anwendungskontext - Beziehungen zwischen Objekten und Topographie Darstellbare Eigenschaften - Zeitliche Abfolge von Nachrichten - Namen der versendeten Nachrichten und erhaltenen Antworten - Ggf. vorhandene Argumente der nachrichten - Darstellung von Iterationen und Nachrichten-Schleifen Zeitlicher Verlauf durch Nummerierung der Nachrichten Darstellung von Entwurfs- und Realisierungssachverhalten 31.05.2011 Prof. Dr. Andreas Schmietendorf 13

UML Kollaborationdiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 14

UML Sequenzdiagramm Zeigt Interaktionen zwischen Objektinstanzen - Interaktionsdiagramm - Message Sequence Chart (ITU -MSC) Vergleichbarkeit Sequenzdiagramm Kollaborationdiagramm - Kollaborationdiagramm Zusammenarbeit der Objekte - Sequenzdiagramm zeitlicher Verlauf des Nachrichtenaustausch - Können ineinander überführt werden (automatisch) Verwendung zur detaillierten Analyse von Systemzusammenhängen Keine präzise und vollständige Definition von Systemverhalten 31.05.2011 Prof. Dr. Andreas Schmietendorf 15

UML Sequenzdiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 16

UML Komponenten- und Verteilungsdiagramm Komponentendiagramm - Kapselt komplexes Verhalten - Instanzen können gebildet werden - Komponenten soll Wiederverwendung unterstützen - Bestehen intern zumeist aus mehreren Klassen - Bietet definierte Schnittstelle an Verteilungsdiagramm - Knoten (typ. Aktive Rechnerkomponenten) - Häufig ergänzt durch Icons herkömmlicher Zeichenprogramme 31.05.2011 Prof. Dr. Andreas Schmietendorf 17

UML Komponentendiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 18

UML Verteilungsdiagramm 31.05.2011 Prof. Dr. Andreas Schmietendorf 19

Rational Unified Process 31.05.2011 OO A/D/P Prof. Dr. Andreas Schmietendorf 20

Entwicklung - Prozessmodelle Bekannte Prozessmodelle - Wasserfallmodell - Spiralmodell - V-Modell - Rational Unified Process (kurz RUP) Mittels Aktivitätsdiagrammen beschriebene Workflows im RUP - Geschäftsprozessmodellierung - Klassische Phasen der SW-Entwicklung (OOA/D/P/T) - Verteilung Überführung in den Wirkbetrieb - Projekt-, Change- und Konfigurationmanagement - Einführung einer Werkzeugumgebung 31.05.2011 Prof. Dr. Andreas Schmietendorf 21

Übersicht zum RUP Quelle: Versteegen, G.: Projektmanagement mit dem RUP, Springer-Verlag, 2004 31.05.2011 Prof. Dr. Andreas Schmietendorf 22

Aufgabe 9-1 Überlegen Sie für welche Aspekte ihres Projekte die hier einführend aufgezeigten Diagrammarten verwendet werden können, identifizieren Sie ggf. nicht abgedeckte Aspekte. Erstellen Sie ausgehend von den im RUP aufgezeigten Aspekten des Projektmanagement einen groben Projektplan ihres eigenen Projektes. Berücksichtigen Sie dabei eine iterative Vorgehensweise. 31.05.2011 Prof. Dr. Andreas Schmietendorf 23

Werkzeuge zur Modellierung mit UML 31.05.2011 OO A/D/P Prof. Dr. Andreas Schmietendorf 24

Übersicht zu Werkzeugen Status: Mai 06 31.05.2011 Prof. Dr. Andreas Schmietendorf 25

ArgoUML 31.05.2011 Prof. Dr. Andreas Schmietendorf 26

UML Together 31.05.2011 Prof. Dr. Andreas Schmietendorf 27

MagicDraw 31.05.2011 Prof. Dr. Andreas Schmietendorf 28

Microsoft Visio 31.05.2011 Prof. Dr. Andreas Schmietendorf 29

ARIS UML Designer 31.05.2011 Prof. Dr. Andreas Schmietendorf 30

BlueJ interaktive Lernplattform Quelle: http://www.bluej.org/about/what.html 31.05.2011 Prof. Dr. Andreas Schmietendorf 31

UML in der Version 2.0 31.05.2011 OO A/D/P Prof. Dr. Andreas Schmietendorf 32

UML-Diagrammtypen V 2.0 Quelle: Oestereich, B.: Objektorientierte Software- Entwicklung UML 2.0, Oldenbourg-Verlag, 2004 31.05.2011 Prof. Dr. Andreas Schmietendorf 33

UML Version 2.0 Klassendiagramm (engl. class diagram) Objektdiagramm (engl. object diagram) Komponentendiagramm (engl. component diagram) Kompositionsstrukturdiagramm (engl. composite structure diagram) Verteilungsdiagramm (engl. deployment diagram) Paketdiagramm (package diagram) 31.05.2011 Prof. Dr. Andreas Schmietendorf 34

UML Version 2.0 Anwendungsfalldiagramm (UML2) (use case diagram) Zustandsdiagramm (statechart) Aktivitätsdiagramm (activity) Sequenzdiagramm und Sequenzdiagramm (UML2) (sequence diagram) Interaktionsübersichtsdiagramm (engl. interaction overview diagram) Kommunikationsdiagramm (communication diagram) Zeitverlaufsdiagramm (timing) 31.05.2011 Prof. Dr. Andreas Schmietendorf 35

Aufgabe 9-2 Machen Sie sich mit einem Werkzeug zur UML-Modellierung vertraut (ArgoUML und OMONDO sind auf den Rechnern vorinstalliert). Berücksichtigen Sie ggf. den im Internet bereitgestellten Exkurs zur Modellierung mittels OMONDO. Analysieren Sie die Möglichkeiten zur Modellierung - Bereitgestellte Diagramme & unterstützte UML Version - Integration in die Softwareentwicklungsumgebung Machen Sie sich mit den unter http://www.omg.org/uml bereitgestellten Informationen der OMG vertraut 31.05.2011 Prof. Dr. Andreas Schmietendorf 36

UML Referenzen G.Booch, J.Rumbaugh, I.Jacobson: Das UML-Benutzerhandbuch, Addison-Wesley Bernd Oesterreich, Objektorientierte Softwareentwicklung, Oldenbourg Bernd Oesterreich, UML-Kurzreferenz, Oldenbourg Object Management Group (www.omg.org/uml) UML-Vorgehensmodelle - www.rational.com/rup - www.oose.de/oep Wikipedia: http://de.wikipedia.org/wiki/unified_modeling_language 31.05.2011 Prof. Dr. Andreas Schmietendorf 37