Logo

Proseminar SS05: Objektorientierte Softwareentwicklung in Eiffel

Objektorientierte Softwareentwicklung in Eiffel

Proseminar "Objektorientierte Softwareentwicklung in Eiffel"


Betreuer

  • Dipl.-Inform. I. Armac
  • Dipl.-Inform. M. Kirchhof
  • Dipl.-Inform. R. Wörzberger

Beschreibung

Inhalt des Proseminars ist die Erarbeitung und Präsentation methodisch sauberer objektorientierter Softwareentwicklung in Eiffel. Eiffel ist, wie Java, eine objektorientierte Programmiersprache. Sie wurde mit der Zielsetzung entworfen, die Qualität komplexer Softwaresysteme zu erhöhen, insbesondere mit Hinblick auf Wartbarkeit, Erweiterbarkeit, Korrektheit und Wiederverwendbarkeit.

Zur Erreichung dieses Ziels bietet sie auch Konstrukte, die von der aus der Grundstudiumsvorlesung "Programmierung" bekannten Sprache Java nicht unterstützt werden. Dazu gehören beispielsweise Generizität oder "Design by Contract", das über Invarianten sowie Vor- und Nachbedingungen realisiert wird.

In den Ausarbeitungen und Vorträgen des Proseminars sollen die verschiedenen Techniken der Objektorientierung und ihre Umsetzung in Eiffel herausgearbeitet und präsentiert werden. Als Grundlage wird hierfür folgendes Buch verwendet: Bertrand Meyer: Object-Oriented Software Construction, Prentice Hall, 1997. In weiteren Vorträgen/Ausarbeitungen wird auf andere objektorientierte Programmiersprachen wie Smalltalk eingegangen.

Neben den formalen Voraussetzungen (s. u.) ist für den kritischen Vergleich mit Eiffel die fundierte Kenntnis einer höheren Programmiersprache (Java, Modula, o. ä.) von Vorteil.

Diese Veranstaltung vermittelt erste Einblicke in das wissenschaftliche Arbeiten. Besonderer Wert wird daher auch auf die sprachliche Qualität der schriftlichen Ausarbeitung und die Präsentationstechnik gelegt. Des Weiteren dient das Proseminar auch zur Vorbereitung einer eventuellen Vertiefung in der Softwaretechnik und Softwarekonstruktion während des Hauptstudiums.

Organisatorisches


Alle Dokumente sollen auf dem zentralen BSCW-Server abgelegt werden, eine Mail zur Registrierung ist bereits verschickt worden. Bitte richtet ein Verzeichnis für eure Arbeiten entsprechend dem Beispiel ein. Für die Dokumentablage soll die Versionsverwaltung verwendet werden, hierfür muss in den Benutzer-Preferenzen der Experten-Moduls gewählt werden. Bei Verlust des Passworts diesen Link zum Zurücksetzen des Passworts verwenden. Diskussionen, Fragen und Anregungen können über die Mailing-Liste geführt werden.

Sowohl die Ausarbeitung als auch der Vortrag werden auf Deutsch verfasst bzw. gehalten.


Themenliste

Vorüberlegungen zur Objektorientierung

  • Kapitel 3 und 4: Modulkonzept und Wiederverwendbarkeit (zurückgetreten)
  • Kapitel 5 und 6: Dekomposition und Datenabstraktion (Sven Kulle, Betreuer: Ibrahim Armac & René Wörzberger)

Techniken in objektorientierten Sprachen

  • Kapitel 7: Die statische Struktur: Klassen (Michael Maier, Betreuer: Ibrahim Armac & René Wörzberger)
  • Kapitel 8: Die Struktur zur Laufzeit: Objekte (Josef Hahn, Betreuer: Ibrahim Armac & René Wörzberger)
  • Kapitel 9: Speicherverwaltung (Garbage Collection) (Stefan Heukamp, Betreuer: Ibrahim Armac & René Wörzberger)
  • Kapitel 11 und 12: "Design by Contract" und Ausnahmebehandlung (Nikolaus Koemm, Betreuer: Ibrahim Armac & René Wörzberger)
  • Kapitel 14: Vererbung: Einführung (zurückgetreten)
  • Kapitel 15: Vererbung: Mehrfachvererbung (Gerrit Albers, Betreuer Michael Kirchhof)
  • Kapitel 10 und 16: Vererbungstechniken und Generizität (Carsten Wolff, Betreuer Michael Kirchhof)

Methodik in objektorientierten Sprachen

  • Kapitel 22 und 23: Identifikation und Entwurf von Klassen (zurückgetreten)
  • Kapitel 24 und 25: Sinnvoller Einsatz von Vererbung (Christian Brockly, Betreuer Michael Kirchhof)



Voraussetzungen

siehe Anmeldungsseite

Termine

  • Abgabe Gliederung bis zum 25. April .2005
  • Abgabe Schreibprobe bis zum 2. Mai 2005
  • Rhetorikkurs 2. Mai 2005, 15:00 Uhr
  • Abgabe der ersten Version der Ausarbeitung bis zum 30. Mai 2005
  • Abgabe der zweiten Version der Ausarbeitung bis zum 20. Juni 2005
  • Abgabe der ersten Version der Folien bis zum 4. Juli 2005
  • Abgabe der zweiten Version der Folien bis zum 15. Juli 2005
  • Blockseminar (27.7. von 14 Uhr bis 18 Uhr und 28.7. von 9 Uhr bis 13 Uhr im Seminarraum des i3)



Created by: system last modification: Wednesday 27 of July, 2005 [08:43:14 UTC] by rwoerz