"Programmierung und Modellierung" WS 2020/21

WICHTIGE HINWEISE

  • Dieses Semester wird der Kurs komplett über OLAT organisiert.
  • Diese Seite wird nach dem 02.11.20 nicht mehr aktualisiert. Alle Informationen sind nur noch über Olat erreichbar.
  • Der Zugangscode wird per E-Mail an alle angemeldeten Studenten über Klips versendet. Alle 2-3 Tage werden die Neuanmeldungen ebenfalls benachrichtigt.
  • Sollten Sie bis zum 01.11.20 keine E-Mail mit dem Zugangscode erhalten haben oder sich nicht in Klips anmelden können, dann melden Sie sich bei Hakan Aksu <ed.znelbok-inu|uskanakah#ed.znelbok-inu|uskanakah> per E-Mail.
  • Vorlesung, Übung und Praktikum finden online statt. Die Klausuren finden auf dem Campus statt.

Das PM-Team

  • Vorlesung: Prof. Dr. Ralf Lämmel
  • Übung: M.Sc., M.Ed. Hakan Aksu
  • Tutoren:
    • Lukas Christmann
    • Tobias Frisch
    • Leonardo Malzacher
    • Clemens Steinmann
    • Leo Dietz
    • Stephanie Schmidt
    • Jan Herschel

Links


Klausuren

Musterlösungen

Vorlesung und Übung

Vorlesungstermin: Jeden Montag wird ein Vorlesungsvideo online gestellt.
Übungstermin:
Gruppe 1: Jeden Di. 10-12 Uhr über BigBlueButton (siehe OLAT)
Gruppe 2: Jeden Di. 12-14 Uhr über BigBlueButton (siehe OLAT)

Vorlesungs- und Übungsbetrieb beginnt am 02.11.20

Vorlesungsthemen

Die Themen können sich im Laufe des Semesters ändern.

Kapitel 1: Strukturierte Programmierung
Kapitel 2: Suchen und Sortieren
Kapitel 3: Rekursive Funktionen
Kapitel 4: Grundlagen der Modellierung und Programmentwicklung
Kapitel 5: Objektorientierung
Kapitel 6: Klassendiagramme
Kapitel 7: Ausnahmebehandlung
Kapitel 8: Testen von Programmen
Kapitel 9: Verhaltensdiagramme
Kapitel 10: Abstrakte Datentypen und Generics
Kapitel 11: Komplexitätsabschätzung
Kapitel 12: Objektorientierte Verträge
Kapitel 13: Modellieren von Syntax

Teilprüfung "Vorlesung und Übung"

  • Prüfung zu Vorlesungsende
  • Anmeldung zur Klausur via KLIPS
  • Form: Schriftliche Prüfung über etwa 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

Regeln für die Aufgabenbearbeitung

  • Die Abgabe erfolgt in 2er, 3er oder 4er-Gruppen
  • Jede Gruppe reicht eigene Lösungen ein. Cloning wird als Betrug behandelt.
  • Regeln zur Form der Abgabe werden schrittweise eingeführt.
  • Lösungen werden über den Autokorrektor eingereicht.
  • Abgaben nach Verstreichen der Deadline sind nicht möglich.

Programmierpraktikum

Gruppe Zeit Raum Tutor
1 Mi 08-10 c. t. Olat Leo Dietz
2 Mi 10-12 c. t. Olat Stephanie Schmidt
3 Mi 12-14 c. t. Olat Leonardo Malzacher
4 Mi 14-16 c. t. Olat Tobias Frisch
5 Do 10-12 c. t. Olat Jan Herschel
6 Do 12-14 c. t. Olat Clemens Steinmann

Die ersten Programmierpraktika beginnen am 04./05.11.20

Praktikumsthemen

Die Themen können sich während des Semesters ändern.

01. Grundlagen der Programmierung
02. Strings + Arrays
03. Suchen und Sortieren
04. Rekursive Funktionen
05. Objektorientierung
06. Programmentwicklung + Container
07. Implementation von Klassendiagrammen
08. Ausnahmebehandlung
09. Testen von Programmen
10. Implementation von Verhaltensdiagrammen
11. Implementation von ADTs
12. Generics

Teilprüfung "Programmierpraktikum"

  • Prüfung zu Vorlesungsende
  • Evtl. Probeprüfung in der Semestermitte.
  • Anmeldung zur Klausur via KLIPS
  • Form: Prüfung am Laborrechner über etwa 60 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 Beachtung von Form/Programmierregeln, von Sonderfällen/Randfällen oder von weiteren Bedingungen
  • Bei Compiler-Fehlern gibt es 0 Punkte.
    • Compiler-Fehler beim Autokorrektor enstehen z.B. durch Syntax-Fehler, kein UTF-8 als Textkodierung, Verwendung von Packages oder nicht Einhaltung von vorgegebenen Namen für Klassen oder Methoden.

Public- und ExtraTests

  • Die abgegebenen Java-Dateien werden im Autokorrektor mithilfe von JUnit Tests getestet.
  • Die Tests werden zur automatischen Vorkorrektur verwendet. Ein Korrektor schaut sich die Lösung abschließend an und vergibt die Punkte.
  • Die PublicTests werden in der Regel bereits bei Assignment-Ausgabe veröffentlicht.
  • Die ExtraTests werden in der Regel nach der Abgabe-Deadline veröffentlicht.
  • Die Public- und ExtraTests sind ein freiwilliger Service von uns und können jederzeit entfallen.
  • Die Tests stellen keine Anforderung auf komplette Testabdeckung gemäß Aufgabenstellung. Wenn die Tests also erfolgreich waren, dann heißt es immer noch nicht, dass Sie die vollständige Aufgabe abgedeckt haben. Eventuell werden einzelne Testfälle weggelassen, die später manuell überprüft werden müssen.
  • Die Tests können während der Woche verändert oder ergänzt werden. Dadurch können sich ihre Testergebnisse nach Ihrer Abgabe nachträglich ändern. Für Sie sollte entsprechend die Erfüllung der Aufgabe im Vordergrund stehen und nicht das Bestehen der Tests.

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 den Autokorrektor eingereicht.
  • Abgaben nach Verstreichen der Deadline sind nicht möglich.

Zulassungen aus den Vorjahren

Die Zulassung für den Theorie- und/oder Programmierteil wird aus den Editionen WS2019/20, WS2018/19 WS2017/18, WS2016/17 und WS 2015/16 von PM/OOPM vererbt. Dies gilt vorbehaltlich der Machbarkeit aus Sicht der Prüfungsordnung, des Prüfungsamtes und des Datenstandes.