CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

Größe: px
Ab Seite anzeigen:

Download "CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)"

Transkript

1 CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Th Letschert UML Seite 1 Th Letschert

2 UML - Klassen- / Paket- / Sequenzdiagramm - UML / OCL in Spezifikation und Implementierung Seite 2

3 UML Ein Bild sagt mehr als 1000 Worte! Seite 3

4 UML: Unified Modeling Language UML UML Unified Modelling Language aktuell vorherrschende (graphische) Notation zur Darstellung von SW-Architekturen, -Entwürfen, Implementierungen unified: entstanden als Kombination von konkurrierender Notation Klassendiagramm Darstellung von Klassen Objektdiagramm Darstellung von Szenen: Interagierende Objekte Sequenzdiagramm: Variante der Objektdiagramme Piktogramm einer Klasse Darstellung einer Klasse in UML: Rechteck mit Namen der Klasse und Methoden Beziehungen Darstellung der Beziehungen zwischen Klassen und / oder zwischen allen Objekten der Klassen. Seite 4

5 UML: Unified Modeling Language UML: Wichtige Diagrammtypen UML-Diagramm Struktur-Diagramm KlassenDiagramm KompositionsDiagramm Verhaltens-Diagramm KomponentenDiagramm VerteilungsDiagramm ObjektDiagramm PaketDiagramm AktivitätsDiagramm Use-CaseDiagramm SequenzDiagramm System-Struktur System-Verhalten Seite 5 ZustandsDiagramm

6 Bauer 1 Klassendiagramme sucht * Frau Seite 6

7 Klassendiagramm Klassendiagramm: Darstellung von Klassen und ihren Beziehungen Piktogramm einer Klasse graphische Darstellung einer einzigen Klasse Klassendiagramm mit einem Klassenpiktogramm Name der Klasse Airplane speed : int getspeed() : int setspeed(int) Objektvariablen in UML auch : Attribute der Klasse Methoden: Name / Parametertyp(en) / Ergebnistyp Ein Klassendiagramm erleichtert die Übersicht. Es ist nicht notwendig alle Attribute und Methoden anzugeben. Man listet auf: - was (beim aktuellen Entwicklungsstand) schon bekannt ist und / oder - was wichtig ist und / oder - für die aktuelle Diskussion, die aktuellen Betrachter des Diagramms relevant ist. Seite 7

8 Klassendiagramm Klassendiagramm: weitere Ausdrucksmittel (können wenn sinnvoll / bei Bedarf verwendet werden) unterstrichen: statische Komponenten einer Klasse + / - : public / private Konstruktor: nicht offiziell, kann als Methode angegeben werden Baer - gebrumm1: String - gebrumm2:string - gutgelaunt: boolean + Baer(boolean) +Baer() + saghallo(int) + aegern() Klassen-Variable / statisches Attribut Objekt-Variable / Attribut - : private +: public Seite 8

9 Klassendiagramm Klassendiagramm: Einsatz / Anwendung Analyse / konzeptionelle Modellierung Darlegung der wichtigen Konzepte eines Anwendungsgebiets: Was ist ein Entwurf / logische Modellierung Konzeption der Implementierung: geplante Klassen, Schnittstellen, verwendete Datentypen, Codierung Übersichtliche Darstellung des Codes Seite 9

10 Klassendiagramm: Assoziation (Beziehung) Assoziation Beziehung zwischen Klassen / Objekten der Klassen Name Bauer 1 besitzt * Kuh public class Bauer { private Kuh[] besitzt;... } Kardinalität Navigationsrichtung mögliche Implementierung Multiplizäten n..m n * wenigstens n höchstens m genau n beliebig: 0.. Ein Bauer (Objekt der Klasse Bauer) steht in der Beziehung (Assoziation) besitzt zu einer beliebigen Anzahl ( * ) von Kühen (Objekte der Klasse Kuh). Eine Kuh steht in der Beziehung besitzt zu genau (1) einem Bauer-Objekt. Von einem Bauer kann man dessen Kühe feststellen. (Vom Bauer zu seinen Kühen navigieren.) Darüber, ob dies umgekehrt ist möglich ist, sagt das Diagramm nichts aus. Multiplizitäten können weggelassen werden. Seite 10

11 Assoziation oder Attribut Assoziation oder Attribut Bauer 1 besitzt * Kuh Modellierung mit Assoziation Bauer besitzt : Sequence(Kuh) Assoziation: Die Klasse, zu der die Beziehung geht, ist wichtig. Ihre Objekte haben eigene Existenzberechtigung (im Modell). Attribut Die Klasse zu der Beziehung besteht ist weniger wichtig. Ihre Objekte haben keine unabhängige Existenzberechtigung. public class Bauer { private Kuh[] besitzt;... } Modellierung mit Attribut mögliche Implementierung für beide Diagramme Seite 11

12 Aggregation : Ganzes-Teil-Beziehung Aggregation besteht aus Spezialfall der Assoziation drückt die Beziehung zwischen dem Ganzen und seinen Teilen aus. Attribut oder Aggregation: Wichtige Klasse ~> Aggregation BauernVerband Bauer name : String public class Bauer { private Kuh[] besitzt; private String name;... } besitzt Kuh public class BauernVerband { private Bauer[] mitglied; private String name;... } Ein Objekt der Klasse BauernVerband besteht aus Objekten der Klasse Bauer. Ein Bauer kann in beliebig vielen Bauernverbänden sein, ein Bauernverband kann beliebig viele Bauern umfassen. (Eventuell durch Kardinalitäten einschränken) mögliche Implementierung der Klasse Bauer und BauernVerband Seite 12

13 Aggregation : Ganzes-Teil-Beziehung Komposition hat als Bestandteil Spezialfall der Assoziation drückt die Beziehung zwischen dem Ganzen und seinen Teilen aus. Intensivierung der Aggregation: Das Teil existiert nicht ohne das Ganze Bauer name : String beine public class Bauer { private Bein[] beine; private Kuh[] besitzt; private String name;... } 2 Bein besitzt Kuh mögliche Implementierung der Klasse Bauer Jedes Bauer-Objekt hat 2 Bein-Objekte. Ein Bein-Objekt kann nicht anders existieren (ist nicht interessant), denn als Bestandteil eins Bauern. Kühe können existieren (sind interessant) auch ohne den Bauer der sie besitzt. Seite 13

14 UML: Objekte und ihre Klasse snapshot ~ Exemplar / Instanz einer Klasse Baer bruno ist ein Exemplar der Klasse Baer <<snapshot>> bruno : Baer Seite 14

15 Paketdiagramme Seite 15

16 Paketdiagramm Pakete in UML Sammlung von Klassen Paketsichtbarkeiten können angegeben werden können geschachtelt sein Pakete definieren Namensräume linearealgebra + Matrix + Gleichnungssystem + Vektor - Algorithms determinante(matrix):double Paketsichtbarkeit Seite 16

17 Paketdiagramm Paket-Beziehungen : Import Import Methoden Öffentlicher Import (Erweiterung) <<import>> Alle Namen des exportierenden Pakets sind im importierenden Paket öffentlich sichtbar <<access>> Privater Import (Zugriff) Ein Name des exportierenden Pakets ist im importierenden Paket nicht öffentlich sichtbar Paket-Merge wird hier nicht behandelt Importierbar gesamtes Paket Element eines Pakets Seite 17

18 Paketdiagramm Paket-Beziehungen : Import Öffentlicher / Privater Import Import eines Pakets / eines Elements linearealgebra öffentlicher Paket-Import vektorrechnung + Punkt + Gerade + Ebene + Matrix <<import>> + Vektor or + Optimierer Matrix, Vektor, Gleichungssystem sind nutzbar und öffentliche Bestandteile von vektorrechnung - Algorithms + Gleichnungssystem <<access> > Gleichungssystem ist benutzbar in or aber nicht über or in anderen Pakten nutzbar privater Element-Import Seite 18

19 Sequenzdiagramme Seite 19

20 UML: Sequenzdiagramm Sequenzdiagramm Ein Sequenzdiagramm beschreibt Objekte und ihre Interaktion in einem zeitlichen Szenario o1 : Class1 o2 : Class2 Lebenslinie o3: Classe3 main method1 method2 Zeit Seite 20 Objekt : Klasse Methodenaufrufe Objekt o1 der Klasse Class1 ruft Methode Method1 von Objekt o2 auf. o2 hat den Typ Class2. In method1 wird method2 von Objekt o3 aufgerufen. o3 hat den Typ Class3.

21 Annotierte Klassendiagramme und OCL in Spezifikationen Seite 21

22 UML: Spezifikation und Implementierung Einsatz von Klassendiagrammen Analyse Konzepte der Anwendungswelt / der geplanten Lösung Entwurf Beschreibung (wichtiger Teile) der (geplanten) Lösung Implementierung Beschreibung / übersichtliche Darstellung der Software Seite 22

23 UML: Spezifikation und Implementierung Stapel: Spezifikation (Bestandteil des Entwurfs) und Implementierung dargestellt in UML abstrakter Zustand: Folge von Elementen konkreter Zustand Variante A Stack Sequence(int) push(int) pop() top():int Stack 10 Variablen push(int) pop() top():int Spezifikation: Stapel mit maximal 10 Elementen: - push fügt ein, - top liefert das zuletzt Eingefügte - pop entfernt das zuletzt Eingefügte Stack Feld der Länge 10 push(int) pop() top():int konkreter Zustand Variante B ImplementierungsVarianten 10 Variablen oder ein Feld. Seite 23

24 UML in Spezifikationen / Annotationen UML : Einsatz in der Spezifikation der Klasse Konto Annotation Konto keine Vorbedingung: muss immer korrekt arbeiten pre: post: returns kontostand kontostand: EuroBetrag + stand():eurobetrag + einzahlen(eurobetrag b):void + auszahlen(eurobetrag b):void Vorbedingung: Beschränkte Funktionsgarantie (NICHT Beschränkte Erlaubnis) Nachbedingung: gibt Ergebnis an Nachbedingung: gibt Zustandsänderung an pre: b >= 0 post: kontostand = kontostand@pre + b pre: b>=0, kontostand >= b post: kontostant = kontostand@pre - b Seite 24 Vorbedingung: Voraussetzung des korrekten Arbeitens

25 UML in Spezifikationen Keine Vorbedingung = Vorbedingung ist true Nachbedingung: kontostand = Wert von KontoStand am Ende der Methode kontostand@pre = Wert von kontostand am Anfang der Methode (zum Zeitpunkt der Auswertung der Vorbedingung) pre: post: returns kontostand pre: true post: returns kontostand Alternative Notationen old KontoStand ~ pre requires ~ pre ensures ~ post OCL (Object Constraint Language) Textuelle mathematisch orientierte Notation von UML zur Beschreibung von Invarianten,Vorbedingungen, Nachbedingungen und anderem, das sich nicht graphisch beschreiben lässt. pre: b >= 0 post: kontostand = kontostand@pre + b pre: b >= 0 post: kontostand = old kontostand + b requires: b >= 0 ensures: kontostand = old kontostand + b Annotationen Seite 25

26 UML in Spezifikationen Annotation graphisches Symbol mit Text (z.b. in OCL) und Bezug zu einen anderen Symbol Textform Text mit textuellem Bezug (Context) zu einer Klasse, Methode,... Konto kontostand: EuroBetrag + stand():eurobetrag + einzahlen(eurobetrag b) + auszahlen(eurobetrag b) context Konto.stand() pre: post: returns kontostand pre: post: returns kontostand OCL-Text beschreibt eine Bedingung / Anforderung (engl. Constraint) an die Methode Konto.stand() Diese Methode ist der Kontext der Bedingung Annotation mit Kommentar in OCL-Notation als Bestandteil eines Klassendiagramms Seite 26

27 UML in Spezifikationen: Klasseninvariante Klasseninvariante Bedingung, die jede Instanz der Klasse immer erfüllt / immer erfüllen muss. Immer: Vor und nach jeder Aktivierung einer Methode. (Die Invariante darf also während der Ausführung einer Methode ungültig sein.) init: <> inv: size(elems) <= 10 context Stack inv: size(elems) <= 10 Klasseninvariante von Stack: Die Liste der Stack-Elemente enthält immer höchstens 10 Werte! size(elems): Größe der Liste elems Stack - elems: Sequence(double) + Stack() + empty():bool + full():bool + push(int):void + pop():void + top():double Klasseninvariante in UML / OCL Seite 27

28 UML in Spezifikationen: Beispiel Stapel Stack - elems: Sequence(int) + Stack() + empty():bool + full():bool + push(int x):void + pop():void + top():double init: <> inv: size(elems) <= 10 pre: post: return size(elems)==0 pre: post: size(elems)=10 pre: size(elems)<10 post: elems = x+elems@pre pre: size(elems)>0 post: elems@pre = x + elems pre: size(elems)>0 post: returns first(elems) Listenplus: Zusammenfügen vonlisten Seite 28 Ein Stapel enthält eine Liste von 10 double-werten. init: Initalwert ist die leere Liste. inv: Invariante, immer wird die Größe <= 10 sein Sequence: Sequenz = Liste Stapel-Spezifikation: Wir erwarten, dass ein(e) Stapel(-Implementierung) sich so verhält wie hier beschrieben. (Ob er nun eine Liste von Elementen enthält, oder nur so tut, z.b. mit einem Feld.)

29 OCL OCL : Object Constraint Language ist eine Notation mit festgelegter Syntax und Semantik (entspricht einer Programmiersprache) könnte implementiert werden, ist aber nicht das Ziel Verwendungszweck: Fakten, Beziehungen, Eigenschaften kompakt und exakt darstellen z.b. in der Spezifikation einer Klasse Orientiert sich an mathematischen Notationen Umfasst Datentypen Mengen-Typ Set(<Typ der Elemente>) Listen-Typ Sequence(<Typ der Elemente>) mit den üblichen Operationen Seite 29

30 OCL OCL wurde ursprünglich von IBM entwickelt (~ ab 1995) ist jetzt Bestandteil von UML OCL ist eine deklarative (keine Anweisungen nur Ausdrücke) streng getypte (jeder Ausdruck hat einen festen Typ) Sprache zu Formulierung logischer (boolescher) Ausdrücke mit den Ausdrucksmitteln der Logik erster Stufe (Prädikate und Quantoren) Seite 30

31 Statechart (Zustandsdiagramm Zustandsübergangsdiagramm) Seite 31 Th Letschert

32 UML / Statechart Statechart / Zustandsdiagramm beschreibt das Verhalten von Systemen (Objekte, Kollektion von Objekten,..) durch Zustände und Ereignisse als Übergänge (Transitionen) zwischen Zuständen Zustand Das System befindet sich stets in genau einem von endliche vielen Zuständen. Das Zustandsdiagramm stellt diese dar. Ein Zustand ist der Ausgangs- (Start-) Zustand. Darstellung durch: Ereignisse führen zu einem Übergang / Transition Übergänge modellieren Ereignisse bei denen das System von einem in einen anderen Zustand übergeht. Ein (System vom Typ) Schalter hat zwei mögliche Zustände: an und aus. Es reagiert auf zwei Ereignisse: anschalten und ausschalten.bei einem Ereignis wechselt das System seinen Zustand (anschalten im Zustand aus), oder das Ereignis wird ignoriert (ausschalten im Zustand aus). Seite 32 Schalter anschalten an aus ausschalten Th Letschert

33 UML / Statechart Ereignis ~> Zustandsübergang Ein Ereignis führt zu einem Zustandsübergang. Das Diagramm stellt alle mögliche Ereignisse dar, sowie in welchen (Ausgangs-) Zuständen sie akzeptiert und zu welcher Transition (Übergang zum Zielzustand) sie das Systems führen. Ereignis und Aktion / Bedingung Ein (vom System akzeptiertes) Ereignis kann mit einer Aktion verbunden werden Ein Ereignis kann mit mit einer Bedingung versehen werden: Nur wenn das System im Ausgangszustand ist die Bedingung zutrifft Schalter Ein Schalter akzeptiert im Zustand aus das Ereignis anschalten falls Spannung anliegt. Er geht dann in den Zustand an über. Dabei wird die Aktion Kontakt schließen ausgeführt. anschalten [Spannung an] / Kontakt schließen an aus ausschalten Seite 33 Th Letschert

34 Statechart Übersicht Input1 Z Zustand mit Namen Z1 E Z2 Zustandsübergang (Transition) mit auslösendem Ereignis E Z Startzustand Z1 E/A Z2 Zustandsübergang mit auslösendem Ereignis E und Aktion A die beim Übergang in den neuen Zustand ausgeführt wird. Z Z1 E [E] / A Z2 Endzustand Zustandsübergang mit auslösendem Ereignis E und Bedingung B. Nur wenn B und E vorliegen wird in Z2 übergegangen und Z ausgelöst. Seite 34 Th Letschert

35 UML / Statechart Zusammengesetzter Zustand E1 Zustände werden zur besseren Übersicht zu komplexen Zuständen zusammengefasst. on off E2 off E1 on Z1 E2 Z1 Z2 Z2 E2 E2 Z3 composite state komplexer (zusammengesetzter) Zustand z1 und z2 und z3 Z3 Der Zustand on ist eigentlich einer der Zustände Z1, Z2, oder Z3. Der Übersicht halber werden Z1, Z2 und Z3 zu on zusammengefasst. Seite 35 Th Letschert

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Interface Seite 1 Schnittstelle / Interface Seite 2 Spezifikation / Schnittstelle / Interface Spezifikation Beschreibung einer Komponente

Mehr

NACHRICHTENTECHNISCHER SYSTEME

NACHRICHTENTECHNISCHER SYSTEME Einführung UML COMPUTERSIMULATION NACHRICHTENTECHNISCHER SYSTEME 11. Unified Modeling Language UML 220 Standardsprache d zur Visualisierung, i Spezifikation, Konstruktion und Dokumentation komplexer (Software-)

Mehr

UML (Unified Modelling Language) von Christian Bartl

UML (Unified Modelling Language) von Christian Bartl UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Dr. Dennis Pfisterer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Unified Modeling Language (UML)

Mehr

Unified Modeling Language 2

Unified Modeling Language 2 Unified Modeling Language 2 Marvin Frommhold 17.11.2008 Gliederung Einleitung Geschichte Strukturierung der Spezifikation Diagrammtypen Strukturdiagramme Verhaltensdiagramme CASE-Werkzeuge Quellen Was

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität

Mehr

Unified Modelling Language

Unified Modelling Language Unified Modelling Language SEP 72 Software-Entwicklung Software-Entwicklung ist Prozess von Anforderung über Modellierungen zu fertigen Programmen Anforderungen oft informell gegeben fertige Programme

Mehr

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

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

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

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel Jason T. Roff UML IT Tutorial Übersetzung aus dem Amerikanischen von Reinhard Engel Inhaltsverzeichnis Inhaltsverzeichnis Einführung 11 Grundlagen der UML 15 Warum wir Software modellieren 16 Analyse,

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2013 1 / 18 UML Einführung Klassendiagramme in der UML Relationen zwischen Klassen 2 / 18 UML: Grundsätzliches

Mehr

Formale Modellierung Vorlesung 10 vom : Formale Modellierung mit UML und OCL

Formale Modellierung Vorlesung 10 vom : Formale Modellierung mit UML und OCL 1 [30] Formale Modellierung Vorlesung 10 vom 24.06.14: Formale Modellierung mit UML und OCL Serge Autexier & Christoph Lüth Universität Bremen Sommersemester 2014 2 [30] Fahrplan Teil I: Formale Logik

Mehr

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

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

TEIL I Strukturdiagramme 1 Einführung Klassendiagramm Objektdiagramm Kompositionsstrukturdiagramm... Auf einen Blick TEIL I Strukturdiagramme 1 Einführung... 13 2 Klassendiagramm... 29 3 Objektdiagramm... 111 4 Kompositionsstrukturdiagramm... 125 5 Komponentendiagramm... 145 6 Verteilungsdiagramm... 161

Mehr

UML -Klassendiagramme

UML -Klassendiagramme UML -Klassendiagramme UML - offline: ArgoUML http://argouml.stage.tigris.org/ UML online: Links genmymodel.com umlet.com/umletino/umletino.html Arten von UML-Diagrammen Diagramm Strukturdiagramm Verhaltensdiagramm

Mehr

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

Christoph Kecher, Alexander Salvanos UML 2.5. Das umfassende Handbuch. Rheinwerk. Computing Christoph Kecher, Alexander Salvanos UML 2.5 Das umfassende Handbuch Rheinwerk Computing Inhalt Vorwort 13 1 Einführung 17 1.1 Weshalb muss Software modelliert werden? 17 1.2 Die Phasen bei der Softwareentwicklung

Mehr

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Thomas Röfer Motivation Entwicklung Spracheinheiten Diagramme (Struktur-/Verhaltensdiagramme) Rückblick Textsuche Naive Suche abrakadabra Boyer-Moore abrakadabra a Knuth-Morris-Pratt

Mehr

INSPIRE - Modellierung

INSPIRE - Modellierung INSPIRE - Modellierung Inhalt Motivation Modellierung UML Diagramme INSPIRE-Schulung LKROS 2 Motivation Was ist ein Modell, und warum wollen wir modellieren? Warum brauchen wir eine Modellierungssprache

Mehr

Übungen Softwaretechnik I

Übungen Softwaretechnik I Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Übungen Softwaretechnik I Übung 5: Objektorientierte Analyse Einführung Objektorientierung in der

Mehr

Analyse und Design mit U ML 2.3

Analyse und Design mit U ML 2.3 Analyse und Design mit U ML 2.3 Objektorientierte Softwareentwicklung von Bernd Oestereich unter Mitarbeit von Stefan Bremer 9., aktualisierte und erweiterte Auflage Ofdenbourg Verlag München Inhaltsverzeichnis

Mehr

Unified Modeling Language (UML )

Unified Modeling Language (UML ) Unified Modeling Language (UML ) Seminar: Programmiersprachenkonzepte Inhalt Einleitung UML 2.0 Diagrammtypen 2 Einleitung Objektorientierte Modellierungssprache Definiert vollständige Semantik Dient der

Mehr

1 Klassen und Objekte

1 Klassen und Objekte 1 Klassen und Objekte Datentyp - Spezifikation des Typs von Datenobjekten Datenstruktur - logische Ordnung von Elementen eines Datentyps - zur (effizienten) Speicherung, Verwaltung, Zugriff - auf die Elemente

Mehr

Objektorientiertes Design

Objektorientiertes Design Objektorientiertes Design Yi Zhao Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Zhao, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung 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

Mehr

Das umfassende Handbuch

Das umfassende Handbuch Christoph Kecher UML 2.0 Das umfassende Handbuch. Jfjf- Ali' ' w v^i* >" '-«(."', Galileo Press Inhalt Vorwort 11 1 Einführung 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3

Mehr

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017

So#waretechnologie für Fortgeschri4ene Teil Eide. Stunde IV: UML. Köln 26. Januar 2017 So#waretechnologie für Fortgeschri4ene Teil Eide Stunde IV: UML Köln 26. Januar 2017 Model of vs. model for TheoreKcal model model for comparison calibra9on verifica9on Empirical model model of deduc9on

Mehr

Einführung in die objektorientierte Programmierung

Einführung in die objektorientierte Programmierung Einführung in die objektorientierte Programmierung Seminarunterlage Version: 4.04 Copyright Version 4.04 vom 17. Juni 2016 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten.

Mehr

Abschnitt 15: Unified Modeling Language (UML)

Abschnitt 15: Unified Modeling Language (UML) Abschnitt 15: Unified Modeling Language (UML) 15. Unified Modeling Language (UML) 15.1 Grundlagen 15.2 Klassen und Objekte 15.3 Vererbung 15.4 Schnittstellen 15.5 Generische Typen 15.6 Pakete 15.7 UML

Mehr

Vgl. Oestereich Kap 2.4 Seiten

Vgl. Oestereich Kap 2.4 Seiten Vgl. Oestereich Kap 2.4 Seiten 99-110 1 Vgl. Oestereich Kap 2.41 Seiten 99ff 2 Wie das Klassendiagramm ist auch das Objektdiagramm ebenfalls ein Strukturdiagramm. Da die Anzahl der Attribute sehr groß

Mehr

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

Software Engineering, SoSe 07, WSI, D. Huson, May 7, Software Engineering, SoSe 07, WSI, D. Huson, May 7, 2007 17 4 Modellierung in UML Nach einer Vorlesung von Prof. Andreas Zeller, Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken. 4.1

Mehr

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

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language ADV-Seminar Leiter: Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

OOA-Dynamische Konzepte

OOA-Dynamische Konzepte Proseminar UML im SS 2005 OOA-Dynamische Konzepte Teil 2 von Benjamin Daeumlich 1 Übersicht Szenario Definition Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Sequenz- vs. Kommunikationsdiagramm

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

Mehr

Softwaretechnik Unified Modeling Language (UML)

Softwaretechnik Unified Modeling Language (UML) Softwaretechnik Unified Modeling Language () Karsten Weicker, Nicole Weicker HTWK Leipzig, FHTW Berlin David Shayne: She s so charismatic, and she s brilliant and beautiful. I mean, a real artist, and,

Mehr

Vorlesung "Software-Engineering"

Vorlesung Software-Engineering Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse

Mehr

Einführung in die OOP mit Java

Einführung in die OOP mit Java Einführung in die OOP mit Java Unterlagen zum Modul OOP mit Java V 3.0 2007 by WBR1/HTI 2011 by MOU2/TI Einführung in die OOP V3.0 2011 by WBR1/MOU2 BFH-TI Beziehungen zwischen Klassen, Packages, UML Einführung

Mehr

FACHHOCHSCHULE MANNHEIM

FACHHOCHSCHULE MANNHEIM Objektorientierte Programmierung 11. Vorlesung Prof. Dr. Peter Knauber FACHHOCHSCHULE MANNHEIM Hochschule für Technik und Gestaltung Die 2. lgruppe von KobrA: : le der : e Folie 1 Zur Erinnerung: 1. lgruppe:

Mehr

UML 2.0 Das umfassende Handbuch

UML 2.0 Das umfassende Handbuch Christoph Kecher V.-M \MM UML 2.0 Das umfassende Handbuch Galileo Computing Inhalt Vorwort 11 1 Einführung 13 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3 Die Geschichte

Mehr

Objektdiagramm Komponentendiagramm Paketdiagramm. 6. Weitere Strukturdiagramme

Objektdiagramm Komponentendiagramm Paketdiagramm. 6. Weitere Strukturdiagramme 6. Weitere Strukturdiagramme Objektdiagramm Komponentendiagramm Paketdiagramm 1 6.1 Objekte Ausprägungsspezifikation von Klassen und Assoziationen 2 Definition Das Objektdiagramm zeigt eine bestimmte Sicht

Mehr

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

Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl 26.07.21 Themenübersicht Objektorientierte Software-Entwicklung Objektorientierte Analyse und Design OOA OOD Objektorientierte

Mehr

Techniken der Projektentwicklungen

Techniken der Projektentwicklungen Dynamische Modellierung 8. Termin Rückblick auf statische Modellierung Dynamische Modellierung Basiskonzepte Beispiel Erweiterungen Eigenschaften Syntax Rückblick auf statische Modellierung Dynamische

Mehr

Algorithmen und Datenstrukturen 06

Algorithmen und Datenstrukturen 06 31. Mai 2012 1 Besprechung Blatt 5 Fragen 2 Objektorientierte Programmierung Allgemein Sichtbarkeit Konstanten 3 Unified Modeling Language (UML) Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung

Mehr

Übung Einführung in die Softwaretechnik

Übung Einführung in die Softwaretechnik Lehrstuhl für Informatik 3 RWTH Aachen Übung Einführung in die Softwaretechnik Lösungshinweise zum Übungsblatt 12 Aufgabe 28 Sichtbarkeits-Symbol UML Java + public # protected private (default) Sichtbar

Mehr

Requirements Engineering I

Requirements Engineering I Martin Glinz Requirements Engineering I Kapitel 9 UML Unified Modeling Language Universität Zürich Institut für Informatik 2006, 2008 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe sind

Mehr

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

15 Unified Modeling Language (UML) 7 UML und Java Informatik 2 (SS 07) 595 Überblick 15. Unified Modeling Language (UML) 15.1 Grundlagen 15.2 Klassen und Objekte 15.3 Vererbung 15.4 Schnittstellen 15.5 Generische Typen 15.6 Pakete 15.7 UML und Java 15.8 Zusammenfassung 15 Unified

Mehr

Software- und Systementwicklung

Software- und Systementwicklung Software- und Systementwicklung Seminar: Designing for Privacy 11.11.2009 Moritz Vossenberg Inhalt Vorgehensmodelle Wasserfallmodell V-Modell Phasen (Pflichtenheft) UML Klassendiagramm Sequenzdiagramm

Mehr

J.2 Objektorientiertes Modellieren mit UML

J.2 Objektorientiertes Modellieren mit UML Modellieren mit UML Objektorientiertes Modellieren mit UML 2002 Prof. Dr. Rainer Manthey Informatik II 1 UML: Übersicht in den 1980er Jahren: Entstehen einer Vielzahl objektorientierter Entwurfsmethoden

Mehr

124 Kompetenzorientierte Aufgaben im Informatikunterricht

124 Kompetenzorientierte Aufgaben im Informatikunterricht 124 Kompetenzorientierte Aufgaben im Informatikunterricht 4.2 Aufgaben 4.2.1 Aufgabe 1: Kühlschrank 4.2.1.1 Aufgabenstellung Ein einfacher Kühlschrank besitzt einen Ein-Aus-Schalter, der jederzeit betätigt

Mehr

Warum Programme Verträge schließen sollten

Warum Programme Verträge schließen sollten 1 Warum Programme Verträge schließen sollten RALF HINZE Institut für Informatik, Lehrstuhl Softwaretechnik, Universität Freiburg Georges-Köhler-Allee, Gebäude 079, 79110 Freiburg i. Br. Email: ralf@informatik.uni-bonn.de

Mehr

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

Einführung in UML. Überblick. 1. Was ist UML??? 2. Diagrammtypen. 3. UML Software. Was ist ein Modell??? UML Geschichte,... Vorlesung GIS Einführung in UML Stephan Mäs 28. Mai 2009 Überblick 1. Was ist UML??? Was ist ein Modell??? UML Geschichte,... 2. Diagrammtypen Schwerpunkt: Klassendiagramme 3. UML Software Arbeitsgemeinschaft

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

UML Eine kurze Einführung

UML Eine kurze Einführung UML Eine kurze Einführung Programmiermethodik Eva Zangerle Universität Innsbruck Modell und Diagramm Ein Modell stellt Abstraktion eines Realitätsausschnitts dar. Um Informationen verständlicher darzustellen

Mehr

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

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11 UML 2 für Studenten Inhaltsverzeichnis Vorwort 11 Teil I Einführung 13 Kapitel 1 UML (nicht nur) für Studenten 15 1.1 Zielgruppen 16 1.2 Konventionen 17 1.3 Abgrenzung 18 1.4 Aufbau dieses Buches 18 Kapitel

Mehr

Softwaretechnik 2015/2016

Softwaretechnik 2015/2016 Softwaretechnik 2015/2016 PST Lehrstuhl Prof. Dr. Matthias Hölzl HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME PST Joschka PROF. DR. Rinke WIRSING 14. JUNI 2009 VORNAME NAME AGENDA Übung 11: 14.01.2016 Schon

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 17 Objektorientiertes Design Florin Pinte Marc Spisländer Lehrstuhl für Software

Mehr

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

OOAD in UML. Seminar Software-Entwurf B. Sc. Sascha Tönnies OOAD in UML Seminar Software-Entwurf B. Sc. Sascha Tönnies Agenda 1. Einordnung des Themas im Seminar 2. UML kompakt 3. UML detailliert 4. Werkzeugunterstützung 2 Einordnung des Themas UML Hilfsmittel

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Meitner, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 16 Objektorientiertes Design Matthias Meitner Marc Spisländer Lehrstuhl für

Mehr

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

CARL HANSER VERLAG. Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins. UML 2 glasklar CARL HANSER VERLAG Mario Jeckle, Chris Rupp, Jürgen Hahn, Barbara Zengler, Stefan Queins UML 2 glasklar 3-446-22575-7 www.hanser.de Einleitung... 1 Liebe Leserin, lieber Leser... 1 Ihre Meinung ist uns

Mehr

Comelio GmbH - Goethestr Berlin. Course Catalog

Comelio GmbH - Goethestr Berlin. Course Catalog Comelio GmbH - Goethestr. 34-13086 Berlin Course Catalog 2 Table Of Contents a. Locations... 3 1. UML... 4 i. Design und Analyse... 4 ii. Notation und Konzepte...6 iii. OCUP Zertifizierung (Advanced)...8

Mehr

Th. Letschert OOP 2 6. Klassenentwurf II

Th. Letschert OOP 2 6. Klassenentwurf II Th. Letschert OOP 2 6. Klassenentwurf II Th Letschert FH Gießen-Friedberg Th. Letschert OOP 2 Klassenentwurf II - Substitutionsprinzip Seite 2 Th. Letschert OOP 2 Liskovs Substitutionsprinzip A: syntaktische

Mehr

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press Christoph Kecher UML2 Das umfassende Handbuch Galileo Press Vorwort 11 TEIL I Strukturdiagramme i '...,....,...,.;..,,,...,, 1.1 Weshalb muss Software modelliert werden? 13 1.2 Was ist die UML? 15 1.3

Mehr

Keller (Stapel, Stack, LIFO)

Keller (Stapel, Stack, LIFO) Keller (Stapel, Stack, LIFO) Liste K=[ K(1), K(2),..., K(n) ] mit beschränktem Zugriff Operationen: pop: liefert oberstes Element K(1) entfernt oberstes Element: K = [ K(2),..., K(n) ] (Fehler bei leerem

Mehr

Software-Engineering

Software-Engineering SWE43 Slide 1 Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 3: Der Systemanalysestandard UML SWE43 Slide 2 UML: Was ist das? UML = Unified Modelling Language ist ein Standard,

Mehr

Die Unified Modeling Language UML

Die Unified Modeling Language UML Informatik II: Modellierung Prof. Dr. Martin Glinz Kapitel 4 Die Unified Modeling Language UML Universität Zürich Institut für Informatik Inhalt 4.1 Hintergrund 4.2 Grundkonzepte der UML 4.3 Die Rolle

Mehr

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny 3. UML Klassendiagramm Nachtrag 3.1 Einführung UML UML ist eine standardisierte Sprache zur Modellierung von Systemen. In UML werden graphische

Mehr

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

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig. Inhalt Vorwort Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig Danksagungen Die Autoren XIII XV XV XVII XVIII XVIII XIX Teil I:

Mehr

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

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Objektmodellierung. Grundkurs C++ Grundkurs C++ Objektmodellierung Grundkurs C++ Objektmodellierung welche Objekte bzw. Klassen werden benötigt? welche Information wird benötigt, um ein Objekt zu beschreiben? welche Beziehungen bestehen

Mehr

UML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich

UML / Fujaba. Generierung von Java-Quellcode aus UML-Diagrammen. Marcel Friedrich UML / Fujaba Generierung von Java-Quellcode aus UML-Diagrammen Marcel Friedrich Agenda Einleitung Struktur Verhalten Klassendiagramme Storydiagramme Statecharts Action methods 2 Thema Codegenerierung mit

Mehr

Objektorientierte Analyse (OOA) Übersicht

Objektorientierte Analyse (OOA) Übersicht Übersicht UML ist die Notation für ein objektorientiertes Vorgehensmodell, sowohl für die Analyse als auch für das Design. Analyse (WAS?) Use Cases Aktivitätsdiagramme (für die Use Cases) Klassendiagramme

Mehr

Die abstrakte Syntax der Unified Modeling Language

Die abstrakte Syntax der Unified Modeling Language Die abstrakte Syntax der Unified Modeling Language 6. November 2012 Taentzer Visuelle Sprachen 79 Überblick Wie ist die abstrakte Syntax der UML definiert? Über ein Metamodell Die UML vereinigt verschiedene

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

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

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller UML Crashkurs v0.1 UML für Fachinformatiker von Hanjo Müller 3. Mai 2005 Inhaltsverzeichnis Inhaltsverzeichnis 1 UML - Unified Modeling Language 3 2 UML im Software Entwurf 4 2.1 Ablauf der Softwareentwicklung.............................

Mehr

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

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:

Mehr

Programmieren 2 C++ Überblick

Programmieren 2 C++ Überblick Programmieren 2 C++ Überblick 1. Einführung und Überblick 2. Klassen und Objekte: Datenkapselung 3. Erzeugung und Vernichtung von Objekten 4. Ad-hoc Polymorphismus 5. Behälter und Iteratoren 6. Templates

Mehr

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

Modellbasierter Test mit der UML. Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest Modellbasierter Test mit der UML Vortragender: Lars Westmeier Seminar: Spezifikationsbasierter Softwaretest Inhalt Einleitung und Motivation UML Testgenerierung Fazit Inhalt Einleitung und Motivation UML

Mehr

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

Klausur. Softwareentwurf. 14. Februar 2011 Bearbeitungszeit: 120 Minuten Klausur Softwareentwurf 14. Februar 2011 Bearbeitungszeit: 120 Minuten FG Datenbank- und Informationssysteme Prof. Dr. Gregor Engels unbedingt vollständig und lesbar ausfüllen! Vorname: Matrikelnummer:

Mehr

Formale Modellierung Vorlesung vom : Beyond JML

Formale Modellierung Vorlesung vom : Beyond JML Rev. 1702 1 [12] Formale Modellierung Vorlesung vom 07.05.12: Beyond JML Till Mossakowski & Christoph Lüth Universität Bremen Sommersemester 2012 2 [12] Heute im Programm Grenzen der JML Nach JML: UML

Mehr

Kurzeinführung in UML

Kurzeinführung in UML Kurzeinführung in UML Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von Softwaresystemen. Der Grundgedanke bei UML bestand darin, eine einheitliche Notation für viele Einsatzgebiete

Mehr

Gliederung des Vortrages

Gliederung des Vortrages Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme

Mehr

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS005 Objektorientierte Programmierung Bachelor of Science (Informatik) Th Letschert Felder Seite Th Letschert OOP Felder / Arrays Seite 2 Th Letschert Feld / Array Feld (auch Array) Daten unter einem

Mehr

Besprechung. Übung 1 Software Engineering

Besprechung. Übung 1 Software Engineering Besprechung Übung 1 Software Engineering SE, 19.10.10 Dustin Wüest Übungsabgaben Im PDF: vollständige Namen und Matrikelnummern Name vom Zip-File / PDF: Übungsnummer und Nachnamen z.b.: Ex1_Wueest_Schoen_Mueller

Mehr

UML 2 glasklar Praxiswissen für die UML-Modellierung

UML 2 glasklar Praxiswissen für die UML-Modellierung Chris Rupp, Stefan Queins, Barbara Zengler UML 2 glasklar Praxiswissen für die UML-Modellierung ISBN-10: 3-446-41118-6 ISBN-13: 978-3-446-41118-0 Inhaltsverzeichnis Weitere Informationen oder Bestellungen

Mehr

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure

8. Objektorientierte Programmierung. Informatik II für Verkehrsingenieure 8. Objektorientierte Programmierung Informatik II für Verkehrsingenieure Grundbegriffe ALAN KAY, ERFINDER DER SPRACHE SMALLTALK, HAT DIE GRUNDBEGRIFFE DER OBJEKTORIENTIERTEN PROGRAMMIERUNG WIE FOLGT ZUSAMMENGEFASST:

Mehr

UML Eine kurze Einführung

UML Eine kurze Einführung UML Eine kurze Einführung Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete

Mehr

Rückblick: Entity-Relationship-Modell

Rückblick: Entity-Relationship-Modell Rückblick: Entity-Relationship-Modell Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben

Mehr

Objektorientierte Modellierung

Objektorientierte Modellierung Objektorientierte Modellierung KLASSENDIAGRAMM Klasse = Typebene zum Beschreiben mehrerer Objekte der selben Struktur Objekt = konkrete Ausprägung einer Klasse Instanz = Objekt Klassendiagramm = beschreibt

Mehr

Programmieren in Java -Eingangstest-

Programmieren in Java -Eingangstest- Programmieren in Java -Eingangstest- Nummer: 1. Studiengang: Informatik B.Sc. Informatik M.Sc. ESE B.Sc. ESE M.Sc. Sonstiges: Fachsemester: Bitte Fragen, die Sie nicht beantworten können unbedingt mit

Mehr

Klassendiagramm. (class diagram)

Klassendiagramm. (class diagram) : Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau

Mehr

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm

Objektorientierte Analyse (OOA) Dynamisches Modell. Objektorientierte Analyse (OOA) Sequenzdiagramm Inhalte Sequenzdiagramm Kollaborationsdiagramm Dynamisches Modell Seite 1 Sequenzdiagramm Ein Sequenzdiagramm beschreibt die zeitliche Abfolge von Interaktionen zwischen einer Menge von Objekten innerhalb

Mehr

Teil II: OOP und JAVA (Vorlesung 9)

Teil II: OOP und JAVA (Vorlesung 9) Teil II: OOP und JAVA (Vorlesung 9) Modul: Programmierung B-PRG Grundlagen der Programmierung II Prof. Dot.-Ing. Roberto Zicari Professur für Datenbanken und Informationssysteme (FB 12) 14.06.06 1 Teil

Mehr

27. Oktober 2005 Florian Marwede

27. Oktober 2005 Florian Marwede Ausgewählte Aspekte zur Einführung in UML und XMI 27. Oktober 2005 Florian Marwede Carl von Ossietzky Universität Oldenburg Fakultät II Department für Informatik Abteilung Entwicklung korrekter Systeme

Mehr

Kapitel 2 - Die Definitionsphase

Kapitel 2 - Die Definitionsphase Kapitel 2 - Die Definitionsphase SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum Karlsruhe GmbH

Mehr

Programmieren in Java

Programmieren in Java FG TECHNISCHE INFORMATIK V JV A00 00 TH 0 Programmieren in Java Anhang A A. Modellierung von OOP-Programmen A.. Klassenkategorien A.2. Klassembeziehungen A.3. Klassendiagramm und Sequenzdiagramm der UML

Mehr

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

UML 1.4 Referenz. Matthias Niete Dirk M. Sohn Orientation in Objects GmbH Weinheimer Str Mannheim Matthias Niete niete@oio.de Dirk M. Sohn sohn@oio.de Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim 1 Allgemeine Notationselemente Paketnamen {Eigenschaftswerte} Notiz Paketnamen

Mehr

Objektorientiertes Design

Objektorientiertes Design Objektorientiertes Design Beispiel-Anforderungen: Simple International (SIB) Interaktion mit der SIB: Ablauf von Interaktionen: UML Beispiel für OOD: Vorgehen Ergebnis Beispiel-Anforderungen: Simple International

Mehr

4. Mentorium. UML-Modellierung (Lösungshinweise)

4. Mentorium. UML-Modellierung (Lösungshinweise) Wirtschaftsinformatik (PWIN) 4. Mentorium Objektorientierung & UML-Modellierung (Lösungshinweise) Wirtschaftsinformatik 2 (PWIN), SS 2009, Professur für Mobile Business & Multilateral Security 1 Objektorientierung

Mehr

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich

Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich WS 02/03 Warum muss ein Objekt wissen, zu welcher Klasse es gehört? Damit die Klassenzugehörigkeit

Mehr

Algorithmen und Datenstrukturen 07

Algorithmen und Datenstrukturen 07 5. Dezember 2011 1 Besprechung Blatt 6 Fragen 2 Vererbung Allgemein abstract Interfaces 3 Unified Modeling Language (UML) Ablaufdiagramme Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung Blatt 7

Mehr

Theorie zu Übung 8 Implementierung in Java

Theorie zu Übung 8 Implementierung in Java Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept

Mehr