Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 Objektorientierte Softwareentwicklung. Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 2 Phasen objektorientierter.

Ähnliche Präsentationen


Präsentation zum Thema: "1 Objektorientierte Softwareentwicklung. Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 2 Phasen objektorientierter."—  Präsentation transkript:

1 1 Objektorientierte Softwareentwicklung

2 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 2 Phasen objektorientierter Softwareentwicklung Analyse –objektorientiertes Modell der realen Welt wird erstellt –Funktionalität des Softwaresystems wird definiert –Annahme einer perfekten Technik Entwurf –Modell der realen Welt wird in die Welt der Software übertragen –Berücksichtigung der vorhandenen Technik und verwendeter Programmiersprache –algorithmische Beschreibung der Funktionalität Implementierung –Software-Architektur wird zum realen Programm

3 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 3 UML UML steht für Unified Modelling Language (Booch, Rumbaugh, Jacobson, 1999) Standardisierte Sprache die mögliche Modelle in Diagrammen beschreibt Klassendiagramme beschreiben die Klassen und deren statische Beziehungen zueinander Kollaborationsdiagramme beschreiben die dynamisch wechselwirkende Zusammenarbeit zwischen den Klassen

4 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 4 Beschreibung einer Klasse TV 2001 EinAus z; Seriennummer s; Kanal k; Lautstärke l; ein(); aus(); wähle_Kanal(); wähle_Lautstärke(); get_Seriennummer();

5 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 5 Beispiel: Motor Motor EinAus z; Seriennummer s; Vorwärtslauf v; Rückwärtslauf r; Drehzahl d; ein(); aus(); vorwärts(); rückwärts(); get_Drehzahl(); set_Drehzahl();

6 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 6 Objektbeziehungen Objekte stehen in verschiedenster Form in Beziehung zueinander UML modelliert die Beziehungen zwischen Klassen Beziehungsarten u.a.: strukturelle Beziehungen Einschlussbeziehung (has-a) Subtyp- bzw. Vererbungsbeziehung (is-a) verhaltensbezogene Beziehungen Nachrichtenaustausch oder Methodenaufruf

7 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 7 Allgemeine Beziehungen PersonAuto besitzt 11...*

8 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 8 Einschlussbeziehung (Aggregation) Abteilungen hat1 1...* eine Aggregation ist die Zusammensetzung eines Objektes aus einer Menge von Teilobjekten Unternehmen Mitarbeiter hat1 1...*

9 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 9 Komposition sind die Einzelteile einer Aggregation vom Aggregat existenzabhängig, so spricht man von Komposition 1 1..*hat 1 3..4hat PositionRechnung PkwRad Komposition Aggregation

10 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 10 Subtyp- und Vererbungsbeziehung Gerät RadioTV

11 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 11 Nachrichten senden AutoHerstellerKunde Bestellung

12 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 12 Methodenaufruf DriveRobot vorwärts() Drive d; 1 1...* hat move_ppt(); vorwärts();

13 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 13 Objektorientierte Analyse in Form grammatikalischer Inspektion Anfertigung einer natürlichsprachlichen Beschreibung des Problems und der Problemumgebung Umfeld des System (Geräte, etc.) Aufzählung der abzubildenden Arbeitsabläufe (Nutzungsartanalyse und Nutzungsszenarien) Beschreibungen werden gezielt nach enthaltenen Objekten, Attributen, Funktionalitäten und Beziehungen untersucht Substantive  Objekte und Zustände Verben  Funktionalität Aussagen wie „hat ein“ oder „ist ein“ deuten auf Objektbeziehungen hin

14 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 14 Steuerung einer Werkstück-Vereinzelungseinheit Schieber A Schieber B Sensor C Sensor D Druckluft V

15 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 15 Situationsbeschreibung Die Vereinzelungseinheit besteht aus einer senkrechten Röhre, zwei Schiebern A und B, zwei Sensoren C und D, sowie aus einem Druckluftventil V. In der Röhre können Bälle gespeichert werden, die von oben zugeführt werden und die auf Anforderung unten einzeln aus der Röhre geblasen werden sollen. Die Schieber können die Stellungen geöffnet oder geschlossen besitzen. Ist ein Schieber geschlossen, so ist die Röhre geschlossen. Die Sensoren melden, ob sich an der entsprechenden Stelle ein Ball befindet; falls ja, sind sie aktiviert, falls nein, sind sie deaktiviert. Am unteren Ende der Röhre befindet sich ein Druckventil, das geöffnet oder geschlossen werden kann und das nicht ständig geöffnet bleiben sollte.

16 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 16 Nutzungsszenarien Standardoperation: Die Bälle werden von oben zugeführt und von der Röhre abgespeichert. Auf Anforderung wird genau ein Ball freigegeben und aus dem Ausgabeschacht geblasen Wartung/Fehlerbeseitigung: Der Wartungstechniker aktiviert einen Wartungszyklus, in dem alle Operationen der beteiligten Geräte einmal ausgeführt werden. Stellt er eine Fehlfunktion fest, so lässt er die Seriennummer des beteiligten Geräts ausgeben und tauscht es um.

17 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 17 Aufsuchen von Objekten und Objektbeziehungen Die Vereinzelungseinheit besteht aus einer senkrechten Röhre, zwei Schiebern A und B, zwei Sensoren C und D, sowie aus einem Druckluftventil V. In der Röhre können Bälle gespeichert werden, die von oben zugeführt werden und die auf Anforderung unten einzeln aus der Röhre geblasen werden sollen. Die Schieber können die Stellungen geöffnet oder geschlossen besitzen.......... Der Wartungstechniker aktiviert einen Wartungszyklus, in dem alle Operationen der beteiligten Geräte einmal ausgeführt werden. Stellt er eine Fehlfunktion fest, so lässt er die Seriennummer des beteiligten Geräts ausgeben und tauscht es um.

18 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 18 Aufsuchen von Objekten und Beziehungen Mögliche Objekte: Vereinzelungseinheit, Schieber, Sensor, Ventil, Ball (?), Röhre (?) Beziehungen: Die Vereinzelungseinheit enthält Schieber, Sensoren, Ventil und eine Röhre. Bälle sind kein integraler Bestandteil, aber es besteht in jedem Fall eine temporäre Beziehung

19 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 19 Ball Klassendiagramm für Vereinzelungseinheit Vereinzelungseinheit SchieberSensorVentil 1 n Röhre 1 2 2 1 1 1 1 1 Ventil

20 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 20 Aufsuchen der Zustandsvariablen der Objekte..... Die Schieber können die Stellungen geöffnet oder geschlossen besitzen. Ist ein Schieber geschlossen, so ist die Röhre geschlossen. Die Sensoren melden, ob sich an der entsprechenden Stelle ein Ball befindet; falls ja, sind sie aktiviert, falls nein, sind sie deaktiviert. Am unteren Ende der Röhre befindet sich ein Druckventil, das geöffnet oder geschlossen werden kann und das nicht ständig geöffnet bleiben sollte. Der Wartungstechniker aktiviert einen Wartungszyklus, in dem alle Operationen der beteiligten Geräte einmal ausgeführt werden. Stellt er eine Fehlfunktion fest, so lässt er die Seriennummer des beteiligten Geräts ausgeben und tauscht es um.

21 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 21 Ball Klassendiagramm für Vereinzelungseinheit Vereinzelungseinheit SchieberSensorVentil 1 n Röhre 1 2 2 1 1 1 1 1 Seriennummer n; Stellung s; //auf,zu Seriennummer n; Zustand z; //aktiv Seriennummer n; Stellung s; //auf,zu Seriennummer n; Ventil

22 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 22 Aufsuchen der Funktionalität Standardoperation: Die Bälle werden von oben zugeführt und von der Röhre abgespeichert. Auf Anforderung wird genau ein Ball freigegeben und aus dem Ausgabeschacht geblasen Wartung/Fehlerbeseitigung: Der Wartungstechniker aktiviert einen Wartungszyklus, in dem alle Operationen der beteiligten Geräte einmal ausgeführt werden. Stellt er eine Fehlfunktion fest, so lässt er die Seriennummer des beteiligten Geräts ausgeben und tauscht es um.

23 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 23 Ball Klassendiagramm für Vereinzelungseinheit Vereinzelungseinheit SchieberSensorVentil 1 n 2 2 1 1 1 1 Seriennummer n; Stellung s; //auf,zu Seriennummer n; Zustand z; //aktiv Seriennummer n; Stellung s; //auf,zu Seriennummer n; zuführen_Ball(); freigeben_Ball(); wartungszyklus(); öffnen(); schliessen(); öffnen(); schliessen(); ist_aktiv(); ist_inaktiv(); Ventil

24 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 24 Ball Verfeinerungsschritt (1) Vereinzelungseinheit SchieberSensorVentil 1 7 2 2 1 1 1 1 Seriennummer n; Stellung s; //auf,zu Seriennummer n; Zustand z; //aktiv Seriennummer n; Stellung s; //auf,zu Seriennummer n; zuführen_Ball(); freigeben_Ball(); wartungszyklus(); öffnen(); schliessen(); öffnen(); schliessen(); ist_aktiv(); ist_inaktiv(); Ventil

25 Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 25 Verfeinerungsschritt (2) Gerät EinAus ea; Seriennummer n; ein(); aus(); get_Seriennummer(); 2 2 1 Ball Vereinzelungseinheit SchieberSensorVentil 1 1 1 Stellung s; //auf,zuZustand z; //aktivStellung s; //auf,zu zuführen_Ball(); freigeben_Ball(); wartungszyklus(); öffnen(); schliessen(); öffnen(); schliessen(); ist_aktiv(); ist_inaktiv(); Ventil 1 7


Herunterladen ppt "1 Objektorientierte Softwareentwicklung. Dr. Wolfram Amme, Objektorientierte Softwareentwicklung, Informatik II, FSU Jena, SS 2002 2 Phasen objektorientierter."

Ähnliche Präsentationen


Google-Anzeigen