Objektorientierte Programmierung
LVA 185.162, VL 2.0, 2008 W
3. Übungsaufgabe
Themen:
Untertypbeziehungen, Programmiereffizienz, Wartung
Termine:
| Ausgabe: |
23.10.2008 |
| reguläre Abgabe: |
30.10.2008, 12:45 Uhr |
| nachträgliche Abgabe: |
06.11.2008, 12:45 Uhr |
| Abgabe von Nachbesserungen: |
13.11.2008, 12:45 Uhr |
Abgabeverzeichnis:
Gruppe/Aufgabe3
Programmaufruf:
java Test
Grundlage:
Skriptum bis Seite 70 sowie Seite 88 bis 90, Schwerpunkt auf Abschnitt 2.2
Aufgabe
Welche Aufgabe zu lösen ist:
Verbessern Sie die Brauchbarkeit der Messdatenerfassung aus der zweiten Aufgabe.
Schnittstellen, die Sie bereits in der Lösung der zweiten Aufgabe festgelegt haben, sollen dabei stabil bleiben.
Sollte eine Änderung einer Schnittstelle (abgesehen von einer Erweiterung, die dem Ersetzbarkeitsprinzip entspricht) unbedingt nötig sein, geben Sie Ihre Gründe dafür bekannt.
Alle Klassen (abgesehen von Test-Klassen) und ganz besonders Interfaces sollen mit allen für die Verwendung nötigen Zusicherungen in Form von Kommentaren versehen sein.
Alle Vererbungsbeziehungen in Ihrer Lösung sollen Untertypbeziehungen sein und auch hinsichtlich der Zusicherungen dem Ersetzbarkeitsprinzip entsprechen.
Wie die Aufgabe zu lösen ist:
Analysieren Sie zunächst selbst, wo die größten Schwächen Ihrer Lösung der zweiten Aufgabe liegen.
Beseitigen Sie zuerst bekannte Fehler in bereits vorhandenen Programmteilen und erweitern Sie danach (soferne das zeitlich möglich ist) den Umfang Ihrer Lösung.
Machen Sie wieder Pläne, welches Gruppenmitglied welchen Teil entwickelt, und setzen Sie diese (eventuell nach Absprache mit dem Tutor) in die Tat um.
Das Ziel besteht nach wie vor darin, möglichst viele der wichtigsten Eigenschaften so zu realisieren, dass die entsprechenden Programmteile fehlerfrei laufen und getestet sind.
Im Gegensatz zur zweiten Aufgabe gibt es aber neue Schwerpunkte:
Bereits bestehende Schnittstellen sollen erhalten bleiben, und alle Schnittstellen (außer eventuell jene von Test-Klassen) müssen mit durchdachten Zusicherungen versehen werden.
Ganz wichtig ist, dass alle Unterklassen- bzw. Untertypbeziehungen die nötigen Bedingungen auf Zusicherungen (siehe Skriptum) erfüllen.
Beachten Sie die allgemeinen Informationen zur Laborübung in der ersten Aufgabenstellung.
Wie in der zweiten Aufgabe ist es erlaubt (aber nicht notwendig), dass Sie packages verwenden.
Zu diesem Zweck dürfen Sie im Abgabeverzeichnis Gruppe/Aufgabe3
Unterverzeichnisse anlegen.
Wie üblich gibt es eine Woche nach dem regulären Abgabetermin einen nachträglichen Abgabetermin.
Es wird aber dringend empfohlen, dass Sie die Zeit vom 30.10. bis 6.11. zur Lösung der vierten Aufgabe nutzen.
Von einigen Gruppen werden die Tutoren Nachbesserungen der dritten Aufgabe verlangen, für die Sie vom 6.11. bis 13.11. Zeit haben.
Der Abgabetermin am 13.11. gilt nur für jene Gruppen, von denen Tutoren bestimmte Nachbesserungen ausdrücklich verlangen.