ooad in uml - se.uni- · pdf filesascha tönnies: ooad in uml 3 einordnung des themas...
TRANSCRIPT
![Page 1: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/1.jpg)
OOAD in UMLOOAD in UML
Seminar Software-EntwurfB. Sc. Sascha Tönnies
![Page 2: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/2.jpg)
2Sascha Tönnies: OOAD in UML
AgendaAgenda
1. Einordnung des Themas im Seminar2. UML „kompakt“3. UML „detailliert“4. Werkzeugunterstützung
![Page 3: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/3.jpg)
3Sascha Tönnies: OOAD in UML
Einordnung des ThemasEinordnung des Themas
Software-Entwurf
OOP
UML
betrachtete ProgrammiertechnikOO Analyse und Design
wichtiger Bestandteil innerhalb vom Software-Entwurf
Hilfsmittel
![Page 4: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/4.jpg)
4Sascha Tönnies: OOAD in UML
Geschichte und ZukunftGeschichte und Zukunft
UML 0.9Booch, Rumbaugh, Jacobsen; 1996
UML 1.0UML Partners; 1/1997
UML 1.1UML Partners; 9/1997
UML 1.2UML Partners; 1998
UML 1.3UML Partners; 1999
UML 1.4UML Partners; 2001
UML 1.5UML Partners; 2003
UML 2UML 2 Partners ~10/2004
Einsatzerfahrungen der „Los amigos“
Integration derObject Constraint Language
XML Metadata Interchange
Erfahrungen der Anwender &semantische Präzisierung des Metamodells
![Page 5: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/5.jpg)
5Sascha Tönnies: OOAD in UML
UML kompaktUML kompakt
• Was ist UML?– Familie grafischer Notationen– ein einziges Metamodell– Hilft bei Beschreibung und Entwicklung von Softwaresystemen
• Notation– Syntax der Modellierungssprache
• Metamodell– „Ein Modell, welches festlegt,
wie ein anderes Modell gebaut wird.“
![Page 6: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/6.jpg)
6Sascha Tönnies: OOAD in UML
UML kompakt: 13 DiagrammtypenUML kompakt: 13 Diagrammtypen
Neu in UML 2.0
Neu in UML 2.0
Früher:Kollaborationsdiagramm
![Page 7: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/7.jpg)
7Sascha Tönnies: OOAD in UML
UML kompakt: EntwicklungsprozesseUML kompakt: Entwicklungsprozesse
• Es gibt viele Prozesse– UML für viele Bereiche der Prozesse nützlich
• Einsatzmöglichkeiten– Skizze– Blaupause– Programmiersprache
• Perspektiven– Softwareperspektive– Konzeptionelle Perspektive
![Page 8: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/8.jpg)
8Sascha Tönnies: OOAD in UML
AgendaAgenda
1. Einordnung des Themas im Seminar2. UML „kompakt“3. UML „detailliert“4. Werkzeugunterstützung
![Page 9: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/9.jpg)
9Sascha Tönnies: OOAD in UML
UML detailliert am VUML detailliert am V--ModellModell
Anforderungs-definition
Grobentwurf
Feinentwurf
Modulimple-mentierung
Abnahmetests
Systemtests
Integrations-tests
Modultests
Anwendungszenarien
Testfälle
Testfälle
Testfälle
• Anforderungsanalyse– Klassendiagramm (Class)– Anwendungsfälle (Use Cases)– Aktivitätsdiagramm (Activity)– Zustandsdiagramm (Statechart)
![Page 10: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/10.jpg)
10Sascha Tönnies: OOAD in UML
UML detailliert: KlassendiagrammUML detailliert: KlassendiagrammClass Drache {private boolean sleepy;private boolean hungry;private boolean firing;
public void feed(Animal a) {…
}public boolean sleep() {
return sleepy;}
public boolean makefire() {return true;
}}
Class Pinguin {private boolean sleepy;private boolean hungry;private boolean firing;
public void feed(Animal a) {…
}public boolean sleep() {
return sleepy;}
public boolean dive() {return true;
}}
![Page 11: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/11.jpg)
11Sascha Tönnies: OOAD in UML
UML detailliert: UML detailliert: UseUse CaseCase
Evolutionssimulator
AkteurSystemgrenze
Systemname
Anwendungsfall
![Page 12: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/12.jpg)
12Sascha Tönnies: OOAD in UML
UML detailliert: UML detailliert: StatechartStatechart
Auslöser(Trigger)
Bedingung(Guard)
Aktion
Start-zustand
Timetrigger
![Page 13: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/13.jpg)
13Sascha Tönnies: OOAD in UML
UML detailliert am VUML detailliert am V--ModellModell
• Entwurf– Klassendiagramm– Objektdiagramm– Paketdiagramm– Zustandsdiagramm– Verteilungsdiagramm
![Page 14: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/14.jpg)
14Sascha Tönnies: OOAD in UML
UML detailliert: KlassendiagrammUML detailliert: Klassendiagramm
Class Drache extends Animal {private boolean firing;
public boolean makefire() {return firing;
}}
Class Pinguin extends Animal {private boolean diving;
public boolean dive() {return diving;
}}
Class Animal {private boolean sleepy;private boolean hungry;
public void feed(Animal a) {…
}public boolean sleep() {
return sleepy;}
}
![Page 15: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/15.jpg)
15Sascha Tönnies: OOAD in UML
UML detailliert: KlassendiagrammUML detailliert: KlassendiagrammClass Animal {private boolean sleepy;private boolean hungry;
public int feed(Eatable a) {hasEaten++;return a.getCaloriens();
}public boolean sleep() {
return sleepy;}
}
Interface Eatable {public int getCaloriens();
}
Class Fisch implements Eatable {public int getCaloriens() {
return 100;}
}
![Page 16: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/16.jpg)
16Sascha Tönnies: OOAD in UML
UML detailliert: KlassendiagrammUML detailliert: Klassendiagramm
…….
![Page 17: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/17.jpg)
17Sascha Tönnies: OOAD in UML
UML detailliert: ObjektdiagrammUML detailliert: Objektdiagramm
![Page 18: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/18.jpg)
18Sascha Tönnies: OOAD in UML
AgendaAgenda
1. Einordnung des Themas im Seminar2. UML „kompakt“3. UML „detailliert“4. Werkzeugunterstützung
![Page 19: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/19.jpg)
19Sascha Tönnies: OOAD in UML
WerkzeugunterstWerkzeugunterstüützungtzung
• Noch sehr wenige Werkzeuge für UML 2– MagicDraw (in Anfängen)– Together (in Anfängen)
• Viele für UML 1.4– Rational XDE– ArgoUML (free)– Poseidon– ….
• Unterschiede in der Mächtigkeit der Tools– einige für Skizzen (z.B. Poseidon Comunity Edition)– einige für Blaupausen (z.B. Poseidon, MagicDraw)– CASE Modelling (Together)
![Page 20: OOAD in UML - se.uni- · PDF fileSascha Tönnies: OOAD in UML 3 Einordnung des Themas Software-Entwurf OOP UML betrachtete Programmiertechnik OO Analyse und Design wichtiger Bestandteil](https://reader031.vdocuments.site/reader031/viewer/2022020214/5a78e1987f8b9a21538eb98b/html5/thumbnails/20.jpg)
20Sascha Tönnies: OOAD in UML
EndeEnde
Danke für die Aufmerksamkeit!