Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Übung 7

Heinrich-Heine-Universität Düsseldorf

Um ein konkretes Thema für das Abschlussprojekt (Hausarbeit) festzulegen, müssen Sie eine Projektskizze abgeben.

Aufgabe 1

Schreiben Sie zu Ihrem Abschlussprojekt eine Projektskizze auf. Diese ist nicht verbindlich, d.h. Sie können sich danach immer noch umentscheiden.

Aus der Projektskizze sollte klar hervorgehen:

  1. Elevator Pitch: Was soll ungefähr entwickelt werden (eine Bibliothek, eine Anwendung für Mobilgeräte, eine Anwendung für Terminals, ...)

  2. Was ist das MVP (minimum viable product), also was ist der Kern des Projekts, ohne den es niemals fertig sein könnte?

  3. Was ist nice-to-have, also nicht zwingend notwendig für das Projekt aber schon eine/mehrere schöne/gute Idee/n?

  4. Welche technische Grundlage soll verwendet werden (Bibliotheken, Abhängigkeiten, vorhandener Code, Projekte von anderen)? Was soll das Interface sein? Wie sind Input und Output strukturiert (Datentypen)?

  5. Wie soll sichergestellt werden, dass die Bewertungskriterien (die wir gemeinsam gesammelt haben und noch weiter sammeln) bestmöglich berücksichtigt werden?

  6. Was sind die ersten Schritte, die getan werden müssen, um zu validieren dass das Projekt vom Umfang her nicht zu groß ist und dass die sonstigen Annahmen über das Projekt erfüllt sind?

Aufgabe 2

Bewerten Sie die Projektskizze von anderen (am besten dann direkt über das ILIAS Peer-Review-Feature), hinsichtlich dieser Kriterien, wobei Sie jeweils mit Schulnoten arbeiten können (wie gut wurde das Kriterium umgesetzt, 6=gar nicht, 4=ausreichend, 1=sehr gut):

  1. Ist verständlich, worum es geht, was gemacht werden soll?

  2. Ist die Aufteilung in MVP und nice-to-have sinnvoll oder könnte man noch etwas vom MVP entfernen oder sind manche nice-to-have eher must-have?

  3. Wie sieht es insgesamt vom Umfang her aus - ist das Projekt tendenziell eher zu groß oder zu klein?

  4. Ist die technische Grundlage sinnvoll gewählt oder sollte etwas weniger/mehr/anderes in Betracht gezogen werden?

  5. Passt die Strategie zur Einhaltung der Bewertungskriterien?

  6. Sieht die Strategie zur Validierung der Annahmen zielführend aus oder gibt es Alternativen?

  7. Kommentar: was sonst noch dazu einfällt, ggf. weitere inhaltliche Ideen oder Tipps. Wenn in den Punkten zuvor etwas kritisiert wurde, wie lässt sich das Problem / die Probleme eventuell beheben?

Wenn Sie noch keine Skizze anderer zur Bewertung vorliegen haben - legen Sie diese Kriterien an ihre eigene Projektskizze an (und überarbeiten die eigene Projektskizze dann vor dem Hochladen in ILIAS nochmals).

Aufgabe 3

Zur Wiederholung der Inhalte bisher:

  1. Was ist der Hauptvorteil des Moduls logging gegenüber der klassischen Fehlersuche mit einfachen print-Statements?

  2. Welche Rolle spielt uv im Python-Ökosystem und warum?

  3. Was sind die wesentlichen Gründe für den Einsatz eines Werkzeuges wie ruff?

  4. Was ist der Unterschied vom Testen mit hypothesis im Gegensatz zu pytest?