NACHRICHTENTECHNISCHER SYSTEME

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

Vorlesung Programmieren

Unified Modeling Language 2

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

Vorlesung Programmieren

UML 2.0 Das umfassende Handbuch

Das umfassende Handbuch

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Die Unified Modeling Language UML

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

Analyse und Modellierung von Informationssystemen

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

Objektorientierte Softwareentwicklung

Unified Modeling Language (UML )

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

UML 2 glasklar Praxiswissen für die UML-Modellierung

Von UML 1.x nach UML 2.0

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

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

Klassendiagramm. (class diagram)

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

Inhaltsverzeichnis.

Objektorientierte Modellierung mit UML

Software Engineering in der Praxis

Objektorientierte Softwareentwicklung

27. Oktober 2005 Florian Marwede

Requirements Engineering I

Methoden des Software Engineering

2. Strukturdiagramme

Modellierung von Web Anwendungen mit UML

Software Engineering in der Praxis

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert

Rückblick: Entity-Relationship-Modell

Software-Engineering

Software- und Systementwicklung

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

Oracle JDeveloper 10 g

Einführung in die OOP mit Java

Unified Modeling Language (UML)

Übungen Softwaretechnik I

Software-Engineering

Gliederung des Vortrages

Modellierung von Verhalten OOPM, Ralf Lämmel

Vorlesung "Software-Engineering"

Softwaretechnik Unified Modeling Language (UML)

Kurzeinführung in UML

UML (UNIFIED MODELING LANGUAGE)

Objektorientierte Analyse (OOA) Inhaltsübersicht

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

UML 2 glasklar. Praxiswissen für die UML-Modellierung. Bearbeitet von Chris Rupp, Stefan Queins, die SOPHISTen

UML mit Enterprise Architect

Software-Architektur-Modellierung mit UML

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

Folien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 4: Modellierung von betrieblichen Informationssystemen

Softwaretechnik 2015/2016

Techniken der Projektentwicklungen

Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme. 11. November 2014

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

Die abstrakte Syntax der Unified Modeling Language

J.2 Objektorientiertes Modellieren mit UML

Einführung in die Programmierung

Die 7 Todsünden der UML-Modellierung Andreas Ditze

Analyse und Modellierung von Informationssystemen

Bei Sitzungen im Team oder mit dem Kunden erleichtert eine grafische Darstellung des Software-Systems die Kommunikation.

Projektabwicklung mit UML und Enterprise Architect

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++

Methodische objektorientierte Softwareentwicklung

UML. Weiteres Vorgehen im Projekt

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

3. Tutorium zu Softwaretechnik I

OOA-Dynamische Konzepte

Übersicht der UML Diagramme

Abschnitt 15: Unified Modeling Language (UML)

Vorlesung Software-Engineering I

Kapitel 2 - Die Definitionsphase

15 Unified Modeling Language (UML) 7 UML und Java Informatik 2 (SS 07) 595

Notationen zur Prozessmodellierung

1 Überblick 1. 4 Literatur 21

Java Einführung Objektorientierte Grundkonzepte

Vorlesung Software Engineering I

Universität Karlsruhe (TH)

Blöcke. Block Definitionsdiagramm. Dr. Beatrice Amrhein

80/1RWDWLRQXQG6HPDQWLN. Dr. Eckhardt Holz Humboldt-Universität zu Berlin Institut für Informatik

Auf dem Weg zur Semantikdefinition? Das UML-Metamodell (für Klassendiagramme)

Teil II: OOP und JAVA (Vorlesung 9)

Softwaretechnik SS 2006

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

Grundlagen der UML-Modellierung. Modellierung. Elena Paslaru Seminar Praktische Modellierung SS

Software-Entwurf mit UML

Unternehmensmodellierung

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1

Aufgabe 1: Strukturmodellierung mittels Klassendiagramm Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit dem Klassendiagramm beschäftigt.

Programmieren in Java

Transkript:

Einführung UML COMPUTERSIMULATION NACHRICHTENTECHNISCHER SYSTEME 11. Unified Modeling Language UML 220 Standardsprache d zur Visualisierung, i Spezifikation, Konstruktion und Dokumentation komplexer (Software-) Systeme. Prozess- und technologieunabhängig im gesamten Entwicklungszyklus einsetzbar von der Object Management Group (OMG) entwickelt und standardisiert Festlegung der Bezeichner für die meisten Begriffe, die für die Modellierung wichtig sind Definition möglicher Beziehungen zwischen diesen Begriffen grafische Notationen für diese Begriffe für Modelle von statischen Strukturen und von dynamischen Abläufen UML-Historie nach Wikipedia Teilspezifikationen der UML 2.0 221 Quelle: http://de.wikipedia.org/wiki/bild:oo-historie.png aktuelle Version UML 2.1.2 222 UML 2.0 Infrastructure t Specification Beschreibung der am häufigsten verwendeten Elemente der UML2 und der Modellelemente, die die restlichen Modellelemente spezialisieren, z. B. Klasse Assoziation Multiplizität eines Attributs UML 2.0 Superstructure Specification Definition der Modellelemente der UML2, die sich für bestimmte Einsatzzwecke eignen, z. B. Anwendungsfall Aktivität Zustandsautomat UML 2.0 Object Constraint Language (OCL2) textuellen Spezifikation von Invarianten in Klassendiagrammen, von Bedingungen in Sequenzdiagrammen oder der Formulierung von Vor- und Nachbedingungen für Methoden

Diagramme in UML 2 Klassendiagramme 223 224 Strukturdiagramme: das Klassendiagramm, das Kompositionsstrukturdiagramm (auch: Montagediagramm), das Komponentendiagramm, das Verteilungsdiagramm, das Objektdiagramm und das Paketdiagramm. Verhaltensdiagramme: das Aktivitätsdiagramm, das Anwendungsfalldiagramm (auch: Use-Case o. Nutzfalldiagramm genannt), das Zustandsdiagramm, das Interaktionsübersichtsdiagramm, das Kommunikationsdiagramm, das Sequenzdiagramm und It Interaktionsdiagramme das Zeitverlaufsdiagramm (auch: Timing-Diagramm). Klassen bestehen aus Namen (verpflichtend) Attributen Operationen Abteil http://de.wikipedia.org/wiki/bild:class-2.png Abstrakte Klassen und Operationen sind möglich Attribute einer Klasse Datentypen 225 Zur Präzisierung i von Konzepten oder Implementationsgestaltung ti t lt Werte der Attribute in Slots abgelegt, Zugriff per Namen des Attributs alle Objekte einer Klasse verfügen über dieselben Arten von Slots, die aber mit unterschiedlichen Werten gefüllt sein können Attribute sind von einem bestimmten Typ: vordefinierte Basistypen, nutzereigene Typen dennoch kann Typangabe fehlen können mit Multiplizitäten versehen sein (Achtung: mit Klammerung [ ]) können mit explizit gesetzten Anfangswerten, Eigenschaften (Achtung: mit Klammerung { }) und Sichtbarkeiten ausgestattet sein 226 Definition der Datentypen erfolgt als Stereotype Werte besitzen keine Identität Vordefiniert: i Boolean, String, Integer, Uli Unlimitedi Natural

Sichtbarkeiten Das Classifier-Konzept 227 Quelle: http://de.wikipedia.org/wiki/bild:class-3.png Können explizit it angegeben werden: + (public): allgemein im Namensraum sichtbar # (protected): in allen Elementen sichtbar, von denen eine Generalisierungsbeziehung zum umgebenden Namenraum besteht ~ (package): in allen Elementen des gleichen Pakets sichtbar -(private): nur innerhalb des jeweils unmittelbar umgebenden Namensraum sichtbar (z.b.: in der definierenden Klasse, im definierenden Paket) 228 229 Wichtige Beziehungen Generalisierung / Spezialisierung Eine Klasse verfeinert eine andere Klasse Assoziation Beziehung zwischen zwei oder mehr Klassen An den Enden von Assoziationen sind häufig Multiplizitäten vermerkt Komposition und Aggregation Beziehung zwischen einem Ganzen und seinen Teilen Aggregation = schwache Komposition, d. h. Teile können auch ohne das Ganze existieren 230 Assoziationen und Links: Objektdiagramm Quelle: http://casablanca.informatik.hu-berlin.de/database/modsoft/vl/v4-modsoft-ii.klassen(1).pdf N-stellige Assoziationen

Kompositionsstrukturdiagramm Komponentendiagramm 231 232 http://de.wikipedia.org/w/index.php?title=bild:component-4.png&filetimestamp=20050406195806 Quelle: http://de.wikipedia.org/wiki/bild:kompositionsstrukturdiagramm-1.png Strukturdiagramm: bestimmte Sicht auf die Struktur des modellierten Systems Komponenten mit deren Schnittstellen bzw. Ports. Abhängigkeitsbeziehungen und Konnektoren Verteilungsdiagramm Paketdiagramm 233 234 http://de.wikipedia.org/w/index.php?title=bild:packageimport-2.png&filetimestamp=20050321183100 http://de.wikipedia.org/wiki/bild:verteilungsdiagramm-1.png Statischen ti Modellierung: Darstellung der Verteilung von Komponenten auf Rechenknoten Artefakte Ausprägungsspezifikationen Knoten Verteilungsbeziehungen Strukturdiagramm: Sicht auf die Struktur des modellierten Systems Pakete Paketverschmelzungen Paketimports Abhängigkeitsbeziehungen

Aktivitätsdiagramm Anwendungsfalldiagramm 235 Verhaltensdiagramm dynamischen Aspekte des modellierten Systems Vernetzung von elementaren Aktionen und deren Verbindungen mit Kontroll- und Datenflüssen Ablauf eines Anwendungsfalls Grundlage: Petri-Netze 236 Verhaltensdiagramm: erwartete Verhalten eines Systems Spezifikation der Anforderungen an ein System Darstellung von Anwendungsfällen und Akteuren mit ihren Abhängigkeiten und Beziehungen Ein Anwendungsfalldiagramm g stellt keine Ablaufbeschreibung dar. http://de.wikipedia.org/w/index.php?title=bild:activity-2.png&filetimestamp=20050620154613 http://de.wikipedia.org/w/index.php?title=bild:usecase-7.png&filetimestamp=20050330143950 Interaktionsübersichtsdiagramm Kommunikationsdiagramm 237 Verhaltensdiagramm: Sicht auf die dynamischen Aspekte des modellierten Systems Beteiligte Lebenslinien Ausgetauschte Nachrichten 238 Verhaltensdiagramm dynamischen Aspekte des modellierten Systems Interaktionen Austausch von Nachrichten zwischen Ausprägungen mittels Lebenslinien http://de.wikipedia.org/wiki/bild:kommunikationsdiagramm-2.png http://de.wikipedia.org/wiki/bild:iau-diagramm-1.png

Sequenzdiagramm Zustandsdiagramm 239 grafische Darstellung einer Interaktion durch den Austausch von Nachrichten nahe verwandt mit Message Sequence Charts (MSC) in der Regel ein Weg durch einen Entscheidungsbaum innerhalb eines Systemablaufes http://de.wikipedia.org/wiki/bild:sequenzdiagramm-3.png 240 Grafische Darstellung eines endlichen Automaten Spezifikation des Verhaltens eines Systems oder der zulässigen Nutzung der Schnittstelle eines Systems Die in der UML verwendete Diagrammform ist eine Variante des Harel- Zustandsdiagramms. http://de.wikipedia.org/wiki/bild:statemachine-6.png Zusammenfassung Literatur 241 242 UML ist ein allgemein akzeptierter und weit verbreiteter Standard für die Modellierung von Prozessen der Informationstechnik Probleme laut Wikipedia: Übermäßiger Notations- oder Sprachumfang Aufwand zum Erlernen der Notation Prägnanz der Abbildung in UML Die Verallgemeinerung der Notation ti der UML ist formal nicht geschlossen und nicht abgegrenzt Unified Modeling Language bei Wikipedia, http://de.wikipedia.org/wiki/unified_modeling_la nguage. Prof. Mario Jeckle: UML 2.0 Die neue Version der Standardmodellierungssprache, Fachhochschule Furtwangen, 2004. Prof. Dr. Joachim Fischer: Software-Entwicklung mit UML 2, Humboldt-Universität Berlin, WS 2007/08.