Child pages
  • ST2: FAQs zur Klausur am 01.03.2021

ST2: FAQs zur Klausur am 01.03.2021

Die ST2-Klausur findet am 01.03.2021 um 14:00  als virtuelle (digitale) Klausur statt. Auf dieser Seite haben wir zusammengefasst, was Sie über die Klausur und deren Format zur Vorbereitung wissen müssen. Ihnen fehlt eine Information? Kontaktieren Sie uns via Email oder Discord, und wir fügen das hier dazu. 

Was muss ich vorher machen?

Treten Sie dem Kurs Softwaretechnik II bei (https://f10.eassessment.th-koeln.de/ilias.php?ref_id=2111&cmdClass=ilrepositorygui&cmdNode=u1&baseClass=ilRepositoryGUI). Der Kurs liegt im E-Assessment-ILIAS unter Prüfungszeitraum März 2021.

In diesem Kurs liegt die Klausur (siehe nächste Frage), die wir erst zu Beginn der Bearbeitung freischalten. Sie können sie also vorher nicht sehen. 

Wie wird die Klausur ablaufen?

Sie beginnen die Klausur in ILIAS, in dem oben erwähnten Kurs. Dort liegt ein Test, den wir erst zu Beginn der Bearbeitung online schalten. Erst dann können Sie ihn sehen. 

Dies ist nur eine "leere" Klausur, deren einziger Zweck ist, ein authentifizierter Zugang zur Klausur zu sein. Insbesondere müssen Sie am Ende die eidesstattliche Erklärung (Täuschung etc.) abgeben, weil wir die abschließende eidesstattliche Erklärung brauchen. Sonst kann die Klausur nicht gewertet werden. In der ILIAS-Klausur finden Sie den Link auf ein Gitlab-Repo, in dem die Coding-Aufgaben liegen.

Sie müssen aber unbedingt den ILIAS-Test abschließen. Machen Sie das direkt am Anfang!

Ist das eine "Open Book" Klausur?

Ja, natürlich. Sie sitzen doch alle zu Hause. Eine Videoüberwachung gibt es nicht. D.h. alles andere als Open Book wäre doch gar nicht durchsetzbar. Wir haben ein paar Mittel eingebaut, um das Weitergeben von Lösungen aufzudecken. Ob Sie aber in Quellen während der Bearbeitung reinschauen, können und werden wir nicht kontrollieren.

Wie kann ich den Betreuern während der Klausur Fragen stellen?

Wir eröffnen zwei Kommunikationskanäle:

  1. Discord
    1. ein Kanal fragen-klausur, um Fragen zu stellen. Diese beantworten wir dann per PM. Allgemeingültige Antworten schreiben wir in den Antwortkanal (siehe (b)). 
    2. ein zweiter Kanal antworten-klausur für allgemeine Antworten (für Sie Read-Only), auf dem dann Antworten und Hinweise stehen, die für alle relevant sind. 
  2. Wenn Sie Discord nicht nutzen wollen, dann rufen Sie Stefan Bente direkt an unter 02261 8196 6367
    • Hier können Sie mündlich Ihre Frage stellen. 
    • Allgemein relevante Antworten werden dann auch in den Antwortkanal geschrieben (siehe 1b). 

Das Austauschen von Lösungen über diese Kanäle werten wir als Täuschungsversuch und schließen die betroffenden Studierenden sofort aus. 

Was muss ich für die Klausur können? 

Sie sollten die Inhalte der Praktikumsmeilensteine M1 - M3 beherrschen (dass Sie die Inhalte von M0 können, setzen wir voraus). Schauen Sie sich die Meilensteine noch einmal an und üben Sie das praktische Umsetzen (inklusive Coding). Dazu zählt insbesondere (*)

(*) Disclaimer: Wir erwarten, dass Sie alle Aufgaben der Praktikumsmeilensteine M1 - M3 für die Klausur praktisch beherrschen, auch wenn sie in dieser Liste fehlen sollten.

  • JPA
    • Entities und Repositories zu einer gegebenen Beschreibung implementieren
    • Beziehungen zwischen diesen Entities richtig umsetzen
    • Value Objects aus einer textuellen Beschreibung erkennen und richtig in Code umsetzen
  • REST Level 2
    • Aggregate-Grenzen entsprechend der Kriterien aus der Vorlesung erkennen
    • Aggregates richtig in Code umsetzen
    • CRUD-basierte Level-2-REST-APIs für solche Aggregates als Tabelle spezifizieren
    • Für solche Level-2-REST-APIs punktuell Controller- und ApplicationService-Code implementieren
    • Attribut-Validierung im Code umsetzen
    • korrekte HTTP-Returncodes auswählen und umsetzen
  • REST Level 3
    • Ein Statusdiagramm, das Geschäftslogik beschreibt, auf der Entity-Ebene implementieren 
    • Zu dem Statusdiagramm und einer vorgegebenen REST-Level-3-API-Struktur die Tabelle mit erlaubten Verben und angebotenen Links spezifizieren 
    • Dafür punktuell Controller- und ApplicationService-Code implementieren

Außerdem sollten Sie die Konzepte des strategischen DDD kennen und beispielsweise Bounded-Context-Grenzen und Beziehungen zwischen Bounded Contexts bestimmen können.

Welche technischen Voraussetzungen brauche ich für die Klausur?

  • Stabile Internetverbindung
  • Browser für ILIAS
  • Eine IDE, um Code zu schreiben
  • Git Bash oder ein anderes ähnliches Tool, um Commits zu machen. 
  • Weitere Hinweise zur generellen Ausstattung (z.B. sind Smartphones oder Tablets ungeeignet zum Bearbeiten der Klausur ...) finden Sie hier:

Was ist, wenn mein Internet plötzlich weg ist?

Stellen Sie am besten sicher, dass Sie auch Ausweichoptionen haben. Große Datenmengen werden für die Klausur nicht bewegt, also würde auch eine mobile Verbindung zur Not reichen. 

  • Wenn Sie die Onlineverbindung auf keinen Fall sicherstellen können, dann melden Sie sich bei uns, dann müssen wir über andere Lösungen nachdenken. 
  • Falls während der Klausur doch etwas schiefgeht: Dokumentieren Sie die Supportanfrage an Ihren Interprovider und dessen Antwort als Beleg, dass das Problem auf den ISP zurückgeht. 

Wie komme ich an das Repo, das für mich individualisiert wurde?

In ILIAS ist der Link auf ein Group in Gitlab. Darin ist nur ein einziges Repo für Sie sichtbar, das ist dasjenige mit Ihren Klausuraufgaben. 

Woher weiß ich, ob meine implementierte Lösung stimmt? Sehe ich die Ergebnisse der Unit-Tests?

Bei der Klausur sind die von uns erstellten Unit-Tests "hidden". Sie haben aber (anders als im Praktikum) keinen Zugriff auf die Seite, wo Sie die Testresultate sehen, sonst könnten Sie die Klausur per "Trial & Error" schreiben. 

Zusätzlich fügen wir einen "leeren" Unittest für Sie sichtbar hinzu. Wenn Sie den laufen lassen und der Test ist grün, dann wissen Sie zumindest, dass Ihr Code compiliert (mehr sagt das NICHT aus!). Zusätzlich können Sie selbst sicherstellen, dass Ihr Code korrekt ist, indem Sie einfache Tests ergänzen. Das ist aber keine Pflicht und gibt auch keine Extrapunkte.  

Was ist, wenn mein Unit-Test rot ist - habe ich dann null Punkte in der Aufgabe?

Nein, nicht unbedingt. Wir nehmen die Farbe der Tests (rot/grün) nur als ersten Indikator und schauen in jedem Fall noch manuell auf den Code.

  • bei grünem Test: Prüfung auf mögliche Täuschungen
  • bei rotem Test: Wie schwerwiegend ist der Fehler? Daran bemisst sich dann die Punktzahl. Bei einem kleineren Fehler gibt es nur Punktabzug.

Ist das nicht alles viel zu viel für eine Klausur?

Wir verlangen Ihnen das Coden nur wie einen "Lückentext" ab. D.h. es wird schon Codestruktur da sein, und Sie müssen nur einige Zeilen füllen. Wir testen die Klausur auch vorab mit unbeteiligten Personen, um sicherzustellen, dass die Menge im Rahmen bleibt. 

Wieviel Zeit habe ich?

Die Klausur dauert 2h. Zu Beginn geben wir Ihnen noch etwas Zeit zum Durchlesen und Nachfragen. Dann machen wir die Repos wieder zu. Alles, was Sie bis dahin gepusht haben, zählt als Lösung.

Ich habe einen Nachteilsausgleich - wie viel Zeit habe ich dann?

Personen mit Nachteilsausgleich bekommen mehr Zeit (prozentual von den o.g. 2h) entsprechend der uns vorliegenden Atteste. Bitte sorgen Sie selbst dafür, dass das Attest Stefan Bente zugeleitet wird, sonst erfahren wir nicht davon.