entwurfs- und implementationsdiagramme zentralabitur nrw
TRANSCRIPT
![Page 1: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/1.jpg)
Entwurfs- und Implementationsdiagramme
Zentralabitur NRW
![Page 2: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/2.jpg)
Übersicht
• Einsatzzweck der Diagramme• Erläuterung der Grundeigenschaften• Beispiel für einen Modellierungsprozess
Entwurfsphase und Implementierungsphase
• Modellierung von Klassen• Assoziationen• Vererbung
• Zusammenfassung• Übungen• Plenum
![Page 3: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/3.jpg)
Einsatzzweck der Diagrammtypen
Verändert nach Löbbert, Marl 2011/12
![Page 4: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/4.jpg)
Entwurfsdiagramm
4
Bei einem Entwurf werden die in der Auftragssituation vorkommenden Objekte identifiziert und ihren Klassen zugeordnet.
Das Entwurfsdiagramm enthält Klassen und ihre Beziehungen mit Multiplizitäten.
Als Beziehungen können Vererbung und gerichtete Assoziationen gekennzeichnet werden.
Gegebenenfalls werden wesentliche Attribute und / oder Methoden angegeben.
Löbbert, Marl 2011/12
![Page 5: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/5.jpg)
Klasse
Verändert nach Löbbert, Marl 2011/12 5
• Klassen werden durch Rechtecke dargestellt.• Diese tragen entweder nur den Namen der Klasse tragen oder
enthalten zusätzlich Attribute und / oder Methoden. • Attribute und Methoden können zusätzliche Angaben zu
Parametern und Sichtbarkeit (public (+), private (-)) besitzen.
• Attribute und Parameter werden in der Reihenfolge <Bezeichner> : <Typ>
notiert (UML-Notation).
HinweiseIm Zentralabitur werden protected (#)und Sichtbarkeit im Package (ohne Schlüsselwort bei der Deklaration) nicht benutzt. Der Zugriff auf die Attribute muss durch Hole- und Setze-Methoden (Getter/Setter) geregelt werden.
![Page 6: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/6.jpg)
Klassenerstellung mit UMLEDiTOR
![Page 7: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/7.jpg)
Abstrakte Klassen
Löbbert, Marl 2011/12
7
Bei abstrakten Klassen, also Klassen, von denen kein Objekt erzeugt werden kann, wird unter den Klassennamen im Diagramm {abstract} geschrieben.
Abstrakte Methoden, also Methoden, für die keine Implementierungen angegeben werden und die nicht aufgerufen werden können, werden in Kursivschrift dargestellt. Bei einer handschriftlichen Darstellung werden sie mit einer Wellenlinie unterschlängelt.
![Page 8: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/8.jpg)
Datentypen in Entwurfsdiagrammen
Verändert nach Löbbert, Marl 2011/12 8
Die Darstellung ist programmiersprachenunabhängig ohne Angabe eines konkreten Datentyps, es werden lediglich • Zahl, • Text, • Wahrheitswert und • Datenansammlung<·> unterschieden.
Bei der Datenansammlung steht in Klammer der Datentyp oder die Klassenbezeichnung der Elemente, die dort verwaltet werden. Beispiel: Datenansammlung<Klausur>
Datenansammlungen sind beispielsweise Listen oder Bäume
Anfragen werden durch den Datentyp des Rückgabewertes gekennzeichnet.
![Page 9: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/9.jpg)
Klassendiagramm
9
Entwurfsdiagramm Implementationsdiagramm(Java)
![Page 10: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/10.jpg)
Assoziation
Löbbert, Marl 2011/12
10
Eine gerichtete Assoziation von einer Klasse A zu einer Klasse B modelliert, dass Objekte der Klasse B in einer Beziehung zu Objekten der Klasse A stehen bzw. stehen können.
Bei einer Assoziation kann man angeben, wie viele Objekte der Klasse B in einer solchen Beziehung zu einem Objekt der Klasse A stehen bzw. stehen können. Die Zahl nennt man Multiplizität.
![Page 11: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/11.jpg)
Multiplizität
Löbbert, Marl 2011/12
11
Mögliche Multiplizitäten:1 genau ein assoziiertes Objekt0..1 kein oder ein assoziiertes Objekt0..* beliebig viele assoziierte Objekte1..* mindestens ein, beliebig viele assoziierte Objekte
![Page 12: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/12.jpg)
12
Bsp. Assoziation 1..1
Implementationsdiagramm
Entwurfsdiagramm
oder
oder
![Page 13: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/13.jpg)
Aufgabe
Löbbert, Marl 2011/12
13
Eine ToDo-Liste soll mit dem Rechner verwaltet werden.
Die Aufgaben haben eine unterschiedliche Priorität:niedrig, mittel, hoch
Aufgaben mit höherer Priorität sollen bevorzugt abgearbeitet werden.
Aufgaben mit gleicher Priorität werden in der Reihenfolge des Eintrags bearbeitet werden.
![Page 14: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/14.jpg)
Beispiel Assoziation
14
Entwurfsdiagramm
![Page 15: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/15.jpg)
Bsp. Assoziation Datenansammlung
Verändert nach Löbbert, Marl 2011/12 15
Ein Objekt der Klasse ToDoListe kann Objekte der Klasse Aufgabe verwalten.
Entwurfsdiagramm
![Page 16: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/16.jpg)
Assoziation bei lokalen Objekten
import javax.swing.JOptionPane;public class BeispielLokaleObjekte { public void lokalesObject(){ JOptionPane jOptionPane = new JOptionPane("Ich bin lokal"); }}
Lokale Objekt werden im Klassendiagramm nicht erfasst.
anders dagegen so:
import javax.swing.JOptionPane;public class BeispielGlobaleObjekte { private JOptionPane jOptionPane; public void globalesObject(){ jOptionPane = new JOptionPane("Ich bin global"); }}
![Page 17: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/17.jpg)
Implementationsdiagramm
Löbbert, Marl 2011/12
17
Ein Implementationsdiagramm ergibt sich durch Präzisierung eines Entwurfsdiagramms und orientiert sich stärker an der verwendeten Programmiersprache.
Für die im Entwurfsdiagramm angegebenen Datenansammlungen werden konkrete Datenstrukturen gewählt, deren Inhaltstypen in Form von Kommentardiagrammen angegeben werden. Die Attribute werden mit den in der Programmiersprache (hier Java) verfügbaren Datentypen versehen und die Methoden mit Parametern incl. ihrer Datentypen.
Bei den in dieser Schrift dokumentierten Klassen (List, BinaryTree, ..) wird auf die Angabe der Attribute und der Methoden verzichtet.
![Page 18: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/18.jpg)
Bsp. Assoziation
18
Implementationsdiagramm
Im Implementationsdiagramm steht die Entscheidung fürdie Datenstruktur (hier List).
Verändert nach Löbbert, Marl 2011/12
![Page 19: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/19.jpg)
Bsp. Assoziation
Im Implementationsdiagramm steht die Entscheidung fürdie Datenstruktur (hier List).
19
Implementationsdiagramm
![Page 20: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/20.jpg)
Bsp. Assoziation Array
20
Sonderfall:Implementierung einer Datenansammlung über ein Feld(Array)
Entwurfsdiagramm:
Implementationsdiagramm so:
aber nicht so:
![Page 21: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/21.jpg)
Aufgabenerweiterung
Löbbert, Marl 2011/12 21
Beispiel: ToDo-Liste
Aufgaben, die erledigt werden sollen, sollen nicht mehr gelöscht werden, sondern in einer zweiten Liste gesammelt werden.
Bei den Aufgaben soll das Datum, an dem die Aufgabe erledigt wurde, mit verwaltet werden.
![Page 22: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/22.jpg)
Vererbung
Verändert nach Löbbert, Marl 2011/12 22
Die Vererbung beschreibt die Beziehung zwischen einer allgemeineren Klasse (Oberklasse) und einer spezialisierten Klasse (Unterklasse). Die Unterklasse stellt alle öffentlichen Attribute und alle nicht überschriebenen öffentlichen Methoden der Oberklasse zur Verfügung. In der Unterklasse können Attribute und Methoden ergänzt oder auch überschrieben werden.
![Page 23: Entwurfs- und Implementationsdiagramme Zentralabitur NRW](https://reader033.vdocuments.pub/reader033/viewer/2022061312/55204d7349795902118c6faa/html5/thumbnails/23.jpg)
Implementationsdiagramm
Löbbert, Marl 2011/12 23