Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Objektorientierte Softwareentwicklung Klaus Becker 2003.

Ähnliche Präsentationen


Präsentation zum Thema: "Objektorientierte Softwareentwicklung Klaus Becker 2003."—  Präsentation transkript:

1 Objektorientierte Softwareentwicklung Klaus Becker 2003

2 KB Objektorientierte Softwareentwicklung 2 Softwareentwicklung als Prozess Analyse Entwurf ImplementierungWartung

3 KB Objektorientierte Softwareentwicklung 3 Teil 1 Auftrag und Pflichtenheft

4 KB Objektorientierte Softwareentwicklung 4 Das Problem Schon wieder keine 6! 10mal gewürfelt und es ist keine einzige 6 gefallen. Stimmt hier etwas nicht? Problem: Wie wahrscheinlich ist es, dass man bei 10maligem Würfeln - keine 6 - genau einmal eine 6 - genau zweimal eine mindestens zweimal und höchstens viermal eine 6 erhält?

5 KB Objektorientierte Softwareentwicklung 5 Eine Lösungsmethode Empirische Abschätzung: Wir führen das Zufallsexperiment 10mal Würfeln sehr oft durch (z. B mal) und ermitteln, wie oft dabei das Ereignis keine 6 eintritt.

6 KB Objektorientierte Softwareentwicklung 6 Begriffe Zufallsexperiment: Experiment, bei dem mehrere Ergebnisse möglich sind, der Ausgang aber nicht genau vorhergesagt werden kann Ereignis: Teilmenge der Ergebnismenge eines Zufallsexperiments Bernoulli-Experiment: Zufallsexperiment mit genau zwei Ergebnissen (1: Treffer; 0: Niete) Bernoulli-Kette der Länge n: n-malige Durchführung eines Bernoulli-Experiments

7 KB Objektorientierte Softwareentwicklung 7 Verallgemeinertes Problem Problem: Wie groß ist die Wahrscheinlichkeit, dass man bei einer Bernoulli- Kette der Länge n und der Trefferwahrscheinlichkeit p eine bestimmte Anzahl von Treffern erhält? Empirische Abschätzung: Wir führen die Bernoulli-Kette sehr oft aus und ermitteln, wie oft dabei eine bestimmte Anzahl von Treffern eingetreten ist.

8 KB Objektorientierte Softwareentwicklung 8 Der Auftrag Es soll ein Softwaresystem entwickelt werden, mit dem der Benutzer die wiederholte Ausführung von Bernoulli-Ketten simulieren und die Simulationsergebnisse auswerten kann.

9 KB Objektorientierte Softwareentwicklung 9 Ein Prototyp zum Softwaresystem Ein Prototyp dient dazu, bestimmte Aspekte eines zu entwickelnden Software-Systems vor der Realisierung zu überprüfen. Häufig wird ein Prototyp der Benutzungsoberfläche erstellt. Anhand dieses Prototyps können die Entwickler mit dem Auftraggeber diskutieren, inwieweit dessen Wünsche beachtet und umgesetzt wurden.

10 KB Objektorientierte Softwareentwicklung 10 Aufgabe Auftraggeber und Entwickler sollen gemeinsam einen Prototyp erstellen und dokumentieren.

11 KB Objektorientierte Softwareentwicklung 11 Prototyp zum Simulationssystem p = 0,1666 n = 10 a = : 195 1: 310 2: neue Simulation und Auswertung neue Auswertung Eingabefelder f. d. Simulationsparam. Darstellung der Häufigkeitsverteilung 0: : : absolute Häufigkeit relative Häufigkeit Auswertung min = 0 max = 0 h = Button Grafische Darst. d. Häufigkeitsverteilung

12 KB Objektorientierte Softwareentwicklung 12 Pflichtenheft Ein Pflichtenheft ist eine textuelle Beschreibung dessen, was das zu realisierende System leisten soll. Es soll dabei zwei Zielsetzungen erfüllen: Zum einen ist es das Einstiegsdokument in das Projekt für alle, die das System später pflegen und warten sollen, zum anderen soll es den Systemanalytiker in die Lage versetzen, eine objektorientierte Analyse vorzunehmen. Zielformulierungen (Muss-Kriterien, Kann-Kriterien, Abgrenzungskriterien) Einsatzbereiche (Anwendungsbereich, Zielgruppe,...) Umgebung (Hardware, Software,...) Funktionalitäten Datenhaltung Benutzungsoberfläche...

13 KB Objektorientierte Softwareentwicklung 13 Aufgabe Ergänzen Sie das folgende, bereits angefangene Pflichtenheft.

14 KB Objektorientierte Softwareentwicklung 14 Pflichtenheft zum Simulationssystem /0/ Der Benutzer kann folgende Simulationsparameter vorgeben: Trefferwahrscheinlichkeit p; Länge der Bernoulli-Kette n; Anzahl der Wiederholungen: a. /1/ Der Benutzer kann folgende Auswertungsparameter vorgeben: Minimum und Maximum des Ereignisbereichs. Diese Parameter müssen aber nicht gesetzt sein. /2/ Das System bestimmt (auf Buttondruck) zu den vorgegebenen Simulationsparametern eine absolute und relative Häufigkeitsverteilung und zeigt diese in Tabellenform an. /3/ (evtl.) Die relativen Häufigkeiten werden auch grafisch in Form eines Histogramms angezeigt. /4/ Das Simulationssystem soll im Stochstikunterricht eingesetzt werden können....

15 KB Objektorientierte Softwareentwicklung 15 Pflichtenheft zum Simulationssystem

16 KB Objektorientierte Softwareentwicklung 16 Pflichtenheft zum Simulationssystem

17 KB Objektorientierte Softwareentwicklung 17 Teil 2 Objektorientierte Analyse

18 KB Objektorientierte Softwareentwicklung 18 Zielsetzung der OOA - Unabhängig von der späteren Implementierung wird die Miniwelt mit Hilfe von Objekten, Klassen sowie deren Beziehungen beschrieben. - Die Miniwelt wird dabei soweit abstrahiert, dass alle für den Auftraggeber relevanten Bestandteile des Problembereichs abgebildet sind. - Das Ergebnis einer OOA ist also eine präzise, abstrahierende Beschreibung der Miniwelt. Aufgabe der objektorientierten Analyse (kurz: OOA): Modellierung des Problembereichs (Miniwelt), der vom zu entwickelnden Informatiksystem erfasst werden soll.

19 KB Objektorientierte Softwareentwicklung 19 Identifikation der Objekte Vorgehensweise: - Zunächst wird die Miniwelt beschrieben (verbal und/oder mit Bildern etc.). - Anschließend wird analysiert, welche (konkreten oder abstrakten) Gegenstände in der Miniwelt vorkommen. - Abschließend wird entschieden, welche Gegenstände der Miniwelt im Modell repräsentiert werden sollen und was ihre jeweilige Zuständigkeit ist. BeschreibenAnalysierenAuswählen Aufgabe: Führen Sie die oben beschriebenen Schritte zur Identifikation der Objekte durch.

20 KB Objektorientierte Softwareentwicklung 20 Beschreibung der Miniwelt

21 KB Objektorientierte Softwareentwicklung ,02 Beschreibung der Miniwelt Simulation: 100 mal (a mal) das Zufallsexperiment ausführen Verteilung: 1 0,14 2 0,27 3 0,30 4 0,20 5 0, ,77 Zufallsgerät: Münze, Würfel,... (0-1-Gerät) Zufallsexperiment: Bernoulli-Kette (n mal 0-1-Gerät aktivieren) relative Häufigkeit Ereignis absolute Häufigkeit Anzahl der Treffer TrefferNiete rel. Häufigk.

22 KB Objektorientierte Softwareentwicklung 22 Beschreibung der Miniwelt Das Zufallsexperiment benutzt ein 0/1-Zufallsgerät (d. h. ein Gerät, mit dem man zufallsbasiert zwei Ergebnisse erzielen kann: 1 bzw. Treffer und 0 bzw. Niete). Ein (Bernoulli-) Zufallsexperiment besteht darin, das Zufallsgerät n mal zu aktivieren und eine bestimmte Beobachtungsgröße (hier Anzahl der Treffer) zu ermitteln. Bei einer Simulation wird das Zufallsexperiment a mal durchgeführt. Das Ergebnis einer Simulation ist eine Tabelle mit den jeweiligen absoluten Häufigkeiten. Zur Auswertung der Simulationsergebnisse wird die Verteilung der Beobachtungsgröße (relative Häufigkeiten der Ergebnisse) bestimmt und evtl. eine relative Häufigkeit für eine konkrete Fragestellung (das interessierende Ereignis) bestimmt.

23 KB Objektorientierte Softwareentwicklung 23 Objekte und ihre Zuständigkeiten zufallsgeraet: erzeugt Treffer (1) bzw. Nieten (0) mit einer Wahrscheinlichkeit p zufallsexperiment: führt das eigentliche Experiment (wiederholte Aktivierung des Zufallsgeräts) durch und ermittelt die Beobachtungsgröße (Anzahl der Treffer) simulation: führt das Zufallsexperiment eine bestimmte Anzahl mal durch und ermittelt die absolute Häufigkeit der möglichen Ergebnisse der Beobachtungsgröße verteilung: verwaltet die relative Häufigkeit aller möglichen Ergebnisse der Beobachtungsgröße und ggf. die relative Häufigkeit eines interessierenden Ereignisses

24 KB Objektorientierte Softwareentwicklung 24 Modellierung der Objekte Ziel: Festlegung der Objektattribute Aufgabe: Erstellen Sie (mit Hilfe von Violet) ein Objektdiagramm zur Miniwelt Simulation von Bernoulli-Ketten. Legen Sie insbesondere die Attribute der Objekte fest und weisen Sie diesen Attributen typische Attributwerte zu.

25 KB Objektorientierte Softwareentwicklung 25 Ein erstes Objektdiagramm

26 KB Objektorientierte Softwareentwicklung 26 Modellierung der Klassen Ziel: Informelle Festlegung der Attribute und Methoden der Klassen Aufgabe: Erstellen Sie (mit Hilfe von Violet) ein erstes vorläufiges Klassendiagramm zur Miniwelt Simulation von Bernoulli-Ketten. Legen Sie hierzu die Attribute und Methoden der Klassen fest.

27 KB Objektorientierte Softwareentwicklung 27 Ein erstes Klassendiagramm

28 KB Objektorientierte Softwareentwicklung 28 Aufgabe: Überlegen Sie sich, welches Objekt welches andere Objekt kennen (besitzen) muss, um seine Aufgaben zu erfüllen. Identifikation von Beziehungen

29 KB Objektorientierte Softwareentwicklung 29 Wer kennt wen? zufallsexperiment: benutzt das Zufallsgerät kennt zufallsgeraet simulation: führt das Zufallsexperiment wiederholt durch kennt zufallsexperiment erstellt aus dem Simulationsergebnis eine Verteilung kennt verteilung zufallsexperiment: benutzt das Zufallsgerät kennt zufallsgeraet simulation: führt das Zufallsexperiment wiederholt durch kennt zufallsexperiment verteilung: wertet die Ergebnisse der Simulation aus kennt simulation Version 1Version 2

30 KB Objektorientierte Softwareentwicklung 30 Aufgabe: Führen Sie zunächst in Ihrem Objektdiagramm geeignete Referenzparameter ein und stellen Sie die Beziehungen zwischen den Objekten mit Referenzen dar. Ergänzen Sie anschließend in Ihrem Klassendiagramm die Beziehungen. Verfeinerung der Diagramme

31 KB Objektorientierte Softwareentwicklung 31 Verfeinertes Objektdiagramm

32 KB Objektorientierte Softwareentwicklung 32 Klassendiagramm mit Beziehungen

33 KB Objektorientierte Softwareentwicklung 33 Teil 3 Objektorientierter Design

34 KB Objektorientierte Softwareentwicklung 34 Zielsetzung des OOD - Genaue Spezifikation der Attribute (Datentypen) und Methoden (Parameter und ihre Datentypen) - Modellierung der Benutzungsoberfläche Aufgabe des objektorientierten Designs (kurz: OOD): Anpassung des OOA-Modells an die Rahmenbedingungen des zu erstellenden Systems

35 KB Objektorientierte Softwareentwicklung 35 Spezifikation der Attribute und Methoden Aufgabe: Erstellen Sie (mit Hilfe von UMLed) ein dokumentiertes Klassendiagramm. Legen Sie insbesondere folgende Punkte fest: - die Zugriffsrechte und Datentypen der Attribute - die Konstruktoren - die get/set-Operationen - die Parameter der Operationen

36 KB Objektorientierte Softwareentwicklung 36 Verfeinertes Klassendiagramm (Violet) Dynamischer Array

37 KB Objektorientierte Softwareentwicklung 37 Verfeinertes Klassendiagramm (UMLed) Dynamischer Array

38 KB Objektorientierte Softwareentwicklung 38 Exkurs: Dynamische Arrays Statischer Array: var s: array [1..10] of integer Bem.: Ein (statischer) Array hat eine feste Größe (Indexbereich 1..10), die in der Deklaration festgelegt wird. Dynamischer Array: var d: array of integer Bem.: Ein dynamischer Array hat zunächst keine feste Größe. Der genaue Indexbereich wird erst zur Laufzeit dynamisch mit Hilfe der Methode SetLength festgelegt. setLength(d, 3) // Indexbereich 0..2

39 KB Objektorientierte Softwareentwicklung 39 Klassen-Dokumentation Zielsetzung: Damit die entwickelten Klassen gut benutzt werden können (z. B. von anderen Personen / zu einem späteren Zeitpunkt), sollten die Klassenbeschreibungen hinreichend kommentiert werden. Integrierte Dokumentation: Die Dokumentation erfolgt während der Entwicklung. Viele CASE-Tools (wie UMLed) unterstützen die Dokumentationstätigkeit. Aufgabe: Erstellen Sie Klassen-Dokumentationen zu den entwickelten Klassen.

40 KB Objektorientierte Softwareentwicklung 40 Klassen-Dokumentation (mit UMLed) Dokumentation der Klasse "TZufallsgeraet" Beschreibung der Klasse: modelliert ein Zufallsgerät, mit dem Bernoulli-Experimente (d.h.: 0/1- Experimente) ausgeführt werden können. Attribute e : integer // Ergebnis (1: Treffer; 0: Niete) p : real // Trefferwahrscheinlichkeit Protokoll der Dienste / Methoden Konstruktor create Auftrag aktivieren // veranlasst das Zufallsgerät, zufallsbasiert eine 0/1-Entscheidung zu treffen Auftrag setP ( p: integer ) Anfrage getE : integer

41 KB Objektorientierte Softwareentwicklung 41 Aufgabe: Entwerfen Sie eine Benutzungsoberfläche. Der Entwurf soll die GUI-Objekte und die Ereignisbehandlung festlegen. Benutzungsoberfläche

42 KB Objektorientierte Softwareentwicklung 42 Entwurf einer Benutzungsoberfläche Simulations- parameter Auswertungs- parameter Simulations- ergebnis Auswertungs- ergebnis: Verteilung Auswertungs- ergebnis

43 KB Objektorientierte Softwareentwicklung 43 Ereignisbehandlung BenutzeraktionProgrammreaktionen Mausklick auf den neue Simulation und Auswertung-Button Zuerst werden die Simulationsparameter (p, n, a) und Auswertungsparameter (min, max) übernommen und gesetzt. Anschließend wird die Simulation ausgeführt sowie die Verteilung erstellt und ausgewertet. Abschließend werden die Simulations- und Auswertungsergebnisse angezeigt. Mausklick auf den neue Auswertung- Button Zuerst werden die Auswertungsparameter (min, max) übernommen und gesetzt. Anschließend wird die Verteilung ausgewertet. Abschließend werden die Auswertungsergebnisse angezeigt.

44 KB Objektorientierte Softwareentwicklung 44 Modellierung der GUI-Klasse

45 KB Objektorientierte Softwareentwicklung 45 Sequenzdiagramm

46 KB Objektorientierte Softwareentwicklung 46 Sequenzdiagramm

47 KB Objektorientierte Softwareentwicklung 47 Teil 4 Implementierung und Testen

48 KB Objektorientierte Softwareentwicklung 48 Implementierung Aufgabe: Implementieren Sie die entwickelten Klassen. Arbeitsaufteilung: - Fachkonzeptklassen (TZufallsgeraet,..., TVerteilung) - GUI-Klasse (Benutzungsoberfläche, Ereignisverarbeitung,...) Zielsetzung: Erstellung eines lauffähigen Programms zum entwickelten Modell

49 KB Objektorientierte Softwareentwicklung 49 Naive Vorgehensweise: Wir überlegen uns (möglichst alle) Testfälle und schauen, wie das entwickelte System die Testfälle bearbeitet. Die Ergebnisse werden kurz dokumentiert. Zielsetzung: Auffinden von Fehlern / Nachweis der Fehlerfreiheit Testen Aufgabe: Untersuchen Sie möglichst viele Testfälle und dokumentieren Sie die Ergebnisse. Achtung: Vor dem Testen alle Programmteile abspeichern! Absturzgefahr!

50 KB Objektorientierte Softwareentwicklung 50 Dokumentation der Testfälle /1/ alle Simulationsparameter sind sinnvoll eingegeben; min, max ist nicht eingegeben; Button neue Simulation und Auswertung gedrückt ok /2/ Simulationsparameter nicht eingegeben; Button neue Simulation und Auswertung gedrückt Fehlermeldung

51 KB Objektorientierte Softwareentwicklung 51 Teil 5 Wartung und Pflege

52 KB Objektorientierte Softwareentwicklung 52 Wartung und Pflege Beispiel: /1/ Alle nicht erwünschten Eingaben sollen vom System abgefangen werden. Der Benutzer soll jeweils geeignet informiert werden. Hinweise: try-exept-Anweisung (beachte Delphi-Einstellung: Tools-Debugger-Optionen- SprachExceptions-BeiDelphiExceptionsStoppen) Zielsetzung: Änderungen / Erweiterungen / Verbesserung des Systems

53 KB Objektorientierte Softwareentwicklung 53 Wartung und Pflege Beispiel: /2/ Die tabellenartige Ausgabe der Verteilung soll um eine grafische Ausgabe ergänzt werden. Zielsetzung: Änderungen / Erweiterungen / Verbesserung des Systems

54 KB Objektorientierte Softwareentwicklung 54 Grafische Ansicht der Verteilung

55 KB Objektorientierte Softwareentwicklung 55 Modellierung von Ansichten

56 KB Objektorientierte Softwareentwicklung 56 Modellierung von Ansichten

57 KB Objektorientierte Softwareentwicklung 57 Teil 6 Zusammenfassung / Bemerkungen

58 KB Objektorientierte Softwareentwicklung 58 Entwicklungszyklus OOA: Analyse und Modellierung der Miniwelt OOD: Entwurf des Software-Systems OOP: Implementierung des Systems; Testen des Systems Wartung und Pflege: Fehlerbeseitigung, Erweiterung,...

59 KB Objektorientierte Softwareentwicklung 59 Prinzipien für die Entwicklung von Software Folgende allgemeinen Prinzipien sollten bei der Entwicklung von Softwaresystemen beachtet werden: (http://www.oszhdl.be.schule.de/index.htm) Abstraktion Hervorhebung des Wesentlichen, absehen von speziellen, untergeordneten Details, erkennen gleicher Merkmal Hierarchisierung Anordnung der Elemente in einer Rangordnung. Elemente gleicher Rangordnung stehen auf derselben Stufe und bilden eine Schicht oder Ebene. Grundsatz: Innerhalb der Hierarchie dürfen keine zirkulären Beziehungen auftreten

60 KB Objektorientierte Softwareentwicklung 60 Prinzipien für die Entwicklung von Software Modularisierung "Modularisierung" ist ein allgemeines Prinzip aus den Ingenieurwissenschaften und dient insbesondere der Erzeugung überschaubarer Systeme, deren Komponenten unter Umständen auch in anderen Systemen wiederverwendet werden können. Auf die Softwareentwicklung angewandt fordert dieses Prinzip die Aufteilung des Systems in überschaubare Teile, mit klar definierten Schnittstellen. Dabei sollen einzelne Module ausgetauscht oder geändert werden können, ohne dass Veränderungen im übrigen System erforderlich sind.

61 KB Objektorientierte Softwareentwicklung 61 Prinzipien für die Entwicklung von Software Lokalität Alle wichtigen Informationen, die zu derselben Situation gehören, sind an einem Platz vorhanden. Optimale Lokalität liegt vor, wenn die jeweils benötigten Informationen auf einer Seite stehen. Lokalität ist damit auch ein Strukturierungsprinzip. Integrierte Dokmentation Ein Software-System besteht aus "Programmcode und Dokumentation" und ist letztlich nur so gut wie diese. Die Dokumentation muss integraler Bestandteil der Softwareentwicklung sein.

62 KB Objektorientierte Softwareentwicklung 62 Warum Objektorientierung? These (Oestereich) Objektorientierung ist die derzeitige Antwort auf die gestiegene Komplexität der Softwareentwicklung.

63 KB Objektorientierte Softwareentwicklung 63 Das Probleme der Zuverlässigkeit Eines der Hauptprobleme der Software-Entwicklung ist die Entwicklung zuverlässiger Software. Man bezeichnet ein Programm als zuverlässig, wenn es sich im Betrieb so verhält, wie man es aufgrund der Anforderungen an das Programm erwartet. Je umfangreicher ein Software-Projekt ist, desto unwahrscheinlicher ist es, dass sein Ergebnis jemals fehlerfrei wird. Man muss sogar davon ausgehen, dass es unmöglich ist, umfangreiche Software- Produkte vollständig fehlerfrei zu entwickeln. (Gumm, Einführung in die Informatik, S. 661 ff)

64 KB Objektorientierte Softwareentwicklung 64 Berühmte Programmierfehler Der Taschenrechner von Windows 3.1 rechnete bei einigen Eingaben total falsch. Z. B.: 2,01 – 2 = 0,00 Eine Schweizer Bank überwies einigen Kunden den Betrag, den die Kunden selbst an die Bank hätten überweisen müssen. Der Fehler wurde erst nach 9 Monaten bemerkt, der Bank entstand inzwischen ein Schaden von ca DM. Beim Bau der Rakete Ariane-5 wurde das bewährte Navigationssystem der Ariane-4 komplett übernommen. Daher konnten die für die Softwaretests vorgesehenen Ausgaben von mehr als 100 Millionen DM drastisch reduziert werden. Eine praxisgerechte Simulation der bei einem Ariane-5-Start anfallenden Datenmengen fand nicht statt. Da die Ariane-5 durch zusätzliche Triebwerke schneller startete als ihr Vorgängermodell, konnten die Computer die Daten nicht schnell genug verarbeiten. Die Ariane-5 musste eine Minute nach dem Start gesprengt werden (Schaden: mehrere Milliarden DM). Der als schwarzer Montag in die Börsengeschichte eingegangene war zum Großteil durch falsch programmierte Börsenprogramme großer Banken hervorgegangen. Als der Kurs einiger Aktien an diesem Tag besonders stark fiel, verkauften einige Programme automatisch die entsprechenden Aktien. Durch einen Lawineneffekt kam es zu einem weltweit drastischen Absinken der Kurse. (vgl. Bähnisch: Praktische Informatik 1, S. 193 ff)

65 KB Objektorientierte Softwareentwicklung 65 Das Probleme der Modifizierbarkeit Das andere Hauptproblem der Software-Entwicklung besteht darin, die Software so zu entwickeln, dass sie später problemlos geändert werden kann. Für die Entwickler ist es vorteilhaft, wenn die Entwicklung eines Software-Systems nach seiner Fertigstellung beendet ist. Eine weitergehende Betrachtung zeigt jedoch, dass die Entwicklung eines Software-Systems ein evolutionärer Prozess ist, der oft sehr lange währt, und dessen Ende womöglich nicht abzusehen ist. (Gumm, Einführung in die Informatik, S. 662 ff)

66 KB Objektorientierte Softwareentwicklung 66 Der Millennium-Bug Weil in der Anfangszeit der Computerentwicklung Programmspeicher noch sehr teuer war und mit jedem Byte gegeizt wurde, hatte es sich eingebürgert, die Jahreszahlen in Datumsangaben nur zweistellig statt vierstellig zu speichern. Beim Jahrtausendwechsel kam es daher zum Umspringen der Jahreszahl von (19)99 auf (19)00. Einige Pannen: Die Münchner Stadtverwaltung verschickte über 400 Mahnungen mit einem Wert von bis zu DM. Ursache war ein Programmierfehler, der die Verzugszinsen nicht vom Januar 2000 aus, sondern seit Januar 1900 berechnete. Mehrere amerikanische Spionagesatelliten sendeten nur nach fehlerhafte Daten. In weltweit 16 Kernkraftwerken kam es zu kleineren Unregelmäßigkeiten, die zum Glück sofort geklärt werden konnten. (vgl. Bähnisch: Praktische Informatik 1, S. 195 ff)

67 KB Objektorientierte Softwareentwicklung 67 Warum Objektorientierung? These 1 (Oestereich) Die ganzheitliche Sichtweise in der Modellierung wird den Strukturen, Zusammenhängen und Abhängigkeiten der realen Welt besser gerecht. Anspruchsvollere und komplexere Anwendungsgebiete können infolgedessen einfacher erschlossen werden. Sichtweise: - Die Welt ist aus Objekten aufgebaut. - Der Mensch sieht die Welt objektorientiert.

68 KB Objektorientierte Softwareentwicklung 68 Warum Objektorientierung? These 2 (Oestereich) Objektorientierung erlaubt eine durchgängige und konsistent aufeinander aufbauende Entwicklung von Software-Systemen. Dies begünstigt die Qualität der Arbeitsergebnisse. Phasen: - objektorientierte Analyse - objektorientierter Entwurf - objektorientiertes Programm Durchgängige Modellrepräsentation

69 KB Objektorientierte Softwareentwicklung 69 Warum Objektorientierung? These 3 (Oestereich) Objektorientierung begünstigt einen evolutionären Software- Entwicklungsprozess. Neue Anforderungen können auch während des Entwicklungsprozesses nachgereicht und integriert werden. - entwicklungsfähige Modelle - änderungsfreundliche Modelle

70 KB Objektorientierte Softwareentwicklung 70 Warum Objektorientierung? These 4 (Oestereich) Die Kommunikation zwischen Softwareentwickler und den Experten des Anwendungsbereichs wird durch die am Menschen orientierte objektorientierte Sichtweise verbessert. - am Menschen orientierte Denkweise - anschauliche Fachsprache - grafische Modellierungssprache

71 KB Objektorientierte Softwareentwicklung 71 Literaturhinweise Helmut Balzert: Lehrbuch Grundlagen der Software-Technik. Spektrum Ak. Verlag Eberhard Lehmann: Projekte im Informatik-Unterricht – Software- Engineering. Dümmler-Verlag Unterrichtsmaterialien von Klaus Merkert. Unterrichtsmaterialien der OSZ-Handel I terial/index.htm terial/index.htm


Herunterladen ppt "Objektorientierte Softwareentwicklung Klaus Becker 2003."

Ähnliche Präsentationen


Google-Anzeigen