WS 2016/17 edition of OOPM course

Das OOPM-Team

  • Vorlesung: Prof. Dr. Ralf Lämmel
  • Übung: Hakan Aksu
  • Tutoren:
    • Dennis Bartschat
    • Michael Monschau
    • Denise Förderer
    • Maximilian Meffert
    • Lukas Christmann
    • Michel Peltriaux

Alle technischen und inhaltlichen Fragen sollten nach Möglichkeit in der Vorlesung, der Übung bzw. dem Praktikum geklärt werden. Die Benutzung von Emails ist weniger zweckmässig.


Links


Klausuren

  • Klausurtermine
    • Probeklausur V/Ü: Di. 31.01.2017 (12:15 Uhr, Raum D028)
    • Probeklausur Praktikum Mi./Do. 08/09.02.17 in den jeweiligen Praktika
    • Klausur V/Ü: Do. 16.02.2017 (12:00 Uhr, Raum D028)
    • Klausur Praktikum: Fr. 03.03.2017 (Gruppe A: 9:00 Uhr, Gruppe B: 11:15 Uhr, Räume F312, F313, F314)
    • Nachklausur V/Ü: Mo. 24.07.17 (14:00 Uhr, Raum D028) An-/Abmeldung bis 19.07.17
    • Nachklausur Praktikum: Do. 27.07.17 (14:30 Uhr, Räume F312, F313, F314) An-/Abmeldung bis 24.07.17
  • Themen für die Nachklausuren sind hier aufgelistet.

  • Zulassungen zu Klausuren:
    • Zulassung Theorieklausur: hier
    • Zulassung Praxisklausur: hier
  • Einsichtstermin für Theorie- und Programmierklausur: 09.03.17 von 12:00 bis 13:30 Uhr in B009
  • Einsichtstermin für Theorie- und Programmiernachklausur: 31.07.17 von 14:00 bis 15:00 Uhr in B009

Vorlesung

Die Vorlesung beginnt zu beiden Terminen "ct".

Die Vorlesungsmaterialien werden zeitnah veröffentlicht.

Vorlesungsthemen

  • Einführung (Folien: (.pdf))
  • Anforderungsspezifikation (Skript: (.pdf))
  • Strukturierte Programmierung (Folien u.a.: (.html))
  • Algebraische Spezifikation (Skript u.a.: (.html))
  • Suchen und Sortieren (Folien u.a.: (.html))
  • Objektorientierung (Folien u.a.: (.html))
  • Modellierung von Struktur (Folien u.a.: (.html))
  • Rekursive Funktionen (Folien u.a.: (.html))
  • Testen von Programmen (Folien u.a.: (.html))
  • Spezifikation abstrakter Datentypen (Skript u.a.: (.html))
  • Implementation abstrakter Datentypen (Skript u.a.: (.html))
  • Beweis von Eigenschaften (Folien u.a.: (.html))
  • Generics (Folien u.a.: (.html))
  • Weihnachtsvorlesung (Folien: (.pdf))
  • Vor- und Nachbedingungen (Folien u.a.: (.html))
  • Ausnahmen (Folien u.a.: (.html))
  • Objektorientiere Verträge (Folien u.a.: (.html))
  • Verifikation von Algorithmen (Folien u.a.: (.html))
  • Komplexität von Algorithmen (Folien u.a.: (.html))
  • Modellierung von Verhalten (Folien u.a.: (.html))
  • Modellierung von Syntax (Folien u.a.: (.html))
  • Modellieren von Bedingungen in UML (Folien: (.pdf))

Die Inhalte sind sehr ähnlich zu denen im Vorjahr.


Übung und Programmierpraktikum

Die ersten Übungen beginnen am 07./08.11.16.
Die ersten Programmierpraktika beginnen am 02./03.11.16

  1. Eclipse, SVN, Abgabeordner
  2. Anforderungspezifikation, Abgabe Programmierteil, Java-Programmierung
  3. Algebraische Spezifikation, Suchen und Sortieren
  4. Sortieren, OO, Vererbung, Schnittstellen
  5. Modellieren von Struktur, Rekursion
  6. Glassbox-,Blackbox-Testen
  7. Spezifikation und Implementation abstrakter Datentypen
  8. Beweisen von Eigenschaften, Generics
  9. Vor- und Nachbedingungen, Ausnahmen
  10. Verifikation von Algorithmen, Objektorientiere Verträge
  11. Komplexität von Algorithmen, Implementation von Zustandsdiagrammen

Hausaufgaben

Lösungen für den Theorie- und Programmierteil hier

  1. Anforderungsspezifikation, iterative Programmierung vorgegebene Klassen-Datei: Functionality.java
  2. Algebraische Spezifikation, Arrays vorgegebene Klassen-Datei: Functionality.java
  3. Sortieren, Vererbung vorgegebene Klassen-Dateien: hier
  4. UML, Rekursion vorgegebene Klassen-Datei: Functionality.java [Letzte Änderung am 28.11.16 14:38]
  5. GlassBox-, Blackbox-Testing
  6. Spezifikation und Implementation abstrakter Datentypen
  7. Beweisen von Eigenschaften, Generics vorgegebene Klassen-Datei: Search.java
  8. Vor- und Nachbedingungen, Ausnahmen vorgegebene Klassen-Datei: Functionality.java
  9. Verifikation von Algorithmen, Objektorientiere Verträge vorgegebene Klassen-Datei: NaturalNumber.java
  10. Komplexität von Algorithmen, Implementation von Zustandsdiagrammen

Prüfung

Teilprüfung "OOPM"

  • Prüfung zu Vorlesungsende
  • Probeprüfung in der Semestermitte
  • Anmeldung zur Klausur via KLIPS
  • Form: Schriftliche Prüfung über etwa 60-90 Minuten
  • Für 2/3 der Hausaufgaben Theorieteil müssen 1 Punkt oder mehr erreicht werden.
  • Für 1/3 der Hausaufgaben Theorieteil müssen 2 Punkte erreicht werden.

Punktesystem für Hausaufgaben Theorieteil

  • 1 Punkt für den Kern der Lösung
  • 1 Punkt für Korrektheit / Vollständigkeit im Sinne der Aufgabenstellung

Weitere Regeln für Abgabe

  • Abgabe als Datei Hausaufgabe.pdf über svn

Teilprüfung "OOPM Programmierpraktikum"

  • Prüfung zu Vorlesungsende
  • Evtl. Probeprüfung in der Semestermitte.
  • Anmeldung zur Klausur via KLIPS
  • Form: Prüfung am Laborrechner über etwa 45 Minuten
  • Für 2/3 der Hausaufgaben Programmierteil müssen 2 oder mehr Punkte erreicht werden.

Punktesystem für Hausaufgaben Programmierteil

  • 1 Punkt für den Kern der Lösung
  • 1 Punkt für Korrektheit / Vollständigkeit im Sinne der Aufgabenstellung
  • 1 Punkt für Form (etwa Beachtung von Programmierregeln)

Regeln für die Aufgabenbearbeitung

  • Jeder Studierende reicht eigene Lösungen ein. Cloning wird als Betrug behandelt.
  • Regeln zur Form der Abgabe werden schrittweise eingeführt.
  • Lösungen werden über das entsprechende SVN-Repo eingereicht.
  • Abgaben nach Verstreichen der Deadline werden nicht gezählt.

Notenbildung

Die Note berechnet sich nach der Gewichtung wie in der Prüfungsordnung angegeben:

  • 70%: Teilprüfung "OOPM" (Theorieteil)
  • 30%: Teilprüfung "OOPM Programmierpraktikum"

Liste der Programmierpraktika

Gruppe Zeit Raum Tutor
1 Mi 8 - 10 c. d. t. F 113 Michael Monschau
2 Mi 14-16 c. t. F 113 Michel Peltriaux
3 Mi 16-18 s. t. F 113 Lukas Christmann
4 Do 14-16 c. t. F 113 Denise Förderer
5 Do 14-16 c. t. F 112 Maximilian Meffert
6 Do 16-18 c. t. F 113 Dennis Bartschat

Material von Hakan Aksu

Erläuterungen und Nebenbedingungen

Das Modul gilt nur als bestanden wenn beide Teilprüfungen bestanden sind. Bestandene Teilprüfungen seit WS 2009/10 werden nach Möglichkeit in das aktuelle Semester vererbt. Die Zulassung wird ebenfalls aus den Editionen WS 2015/16, WS 2014/15, WS 2012/13 und WS 2011/12 vererbt. (Es gab keine Zulassungsbedingungen in der Edition WS 2013/14. Somit müssen Studierende aus dieser Edition die Zulassung erwerben.) Dies gilt vorbehaltlich der Machbarkeit aus Sicht der Prüfungsordnung, des Prüfungsamtes und des Datenstandes.