1 / 23

Entwurfs- und Implementationsdiagramme

Entwurfs- und Implementationsdiagramme. Zentralabitur NRW. Übersicht. Einsatzzweck der Diagramme Erläuterung der Grundeigenschaften Beispiel für einen Modellierungsprozess Entwurfsphase und Implementierungsphase Modellierung von Klassen Assoziationen Vererbung Zusammenfassung Übungen

damisi
Télécharger la présentation

Entwurfs- und Implementationsdiagramme

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Entwurfs- und Implementationsdiagramme Zentralabitur NRW

  2. Übersicht • Einsatzzweck der Diagramme • Erläuterung der Grundeigenschaften • Beispiel für einen Modellierungsprozess Entwurfsphase und Implementierungsphase • Modellierung von Klassen • Assoziationen • Vererbung • Zusammenfassung • Übungen • Plenum

  3. Einsatzzweck der Diagrammtypen Verändert nach Löbbert, Marl 2011/12

  4. Entwurfsdiagramm 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

  5. Klasse • Klassen werden durch Rechtecke dargestellt. • Diesetragen 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). Hinweise Im Zentralabitur werden protected (#)undSichtbarkeit 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.

  6. Klassenerstellung mit UMLEDiTOR

  7. Abstrakte Klassen 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.

  8. Datentypen in Entwurfsdiagrammen • Die Darstellung ist programmiersprachenunabhängig ohne Angabe eines konkreten Datentyps, es werden lediglich • Zahl, • Text, • Wahrheitswertund • 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.

  9. Klassendiagramm Implementationsdiagramm (Java) Entwurfsdiagramm

  10. Assoziation 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.

  11. Multiplizität Mögliche Multiplizitäten: 1 genau ein assoziiertes Objekt 0..1 kein oder ein assoziiertes Objekt 0..* beliebig viele assoziierte Objekte 1..* mindestens ein, beliebig viele assoziierte Objekte

  12. Bsp. Assoziation 1..1 Entwurfsdiagramm oder Implementationsdiagramm oder 12

  13. Aufgabe 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.

  14. Beispiel Assoziation Entwurfsdiagramm

  15. Bsp. Assoziation Datenansammlung Entwurfsdiagramm Ein Objekt der Klasse ToDoListe kann Objekte der Klasse Aufgabe verwalten.

  16. Assoziation bei lokalen Objekten Lokale Objekt werden im Klassendiagramm nicht erfasst. importjavax.swing.JOptionPane; publicclassBeispielLokaleObjekte{ publicvoidlokalesObject(){ JOptionPanejOptionPane = newJOptionPane("Ich bin lokal"); } } anders dagegen so: importjavax.swing.JOptionPane; publicclassBeispielGlobaleObjekte { privateJOptionPanejOptionPane; publicvoidglobalesObject(){ jOptionPane = newJOptionPane("Ich bin global"); } }

  17. Implementationsdiagramm 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.

  18. Bsp. Assoziation Implementationsdiagramm Im Implementationsdiagramm steht die Entscheidung für die Datenstruktur (hier List). 18

  19. Bsp. Assoziation Implementationsdiagramm Im Implementationsdiagramm steht die Entscheidung für die Datenstruktur (hier List). 19

  20. Bsp. Assoziation Array Sonderfall: Implementierung einer Datenansammlung über ein Feld(Array) Entwurfsdiagramm: Implementationsdiagramm so: aber nicht so: 20

  21. Aufgabenerweiterung 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.

  22. Vererbung 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.

  23. Implementationsdiagramm

More Related