Zum Hauptinhalt springen

Organisatorische Informationen

Was muss ich eigentlich in diesem Seminar tun, wie läuft die Bewertung ab und was passiert an den unterschiedlichen Terminen?

Ziel der Bachelor-Seminare ist es, dich auf die Bachelorarbeit vorzubereiten. Dieses Seminar bereitet insbesondere auf eine programmierpraktische Bachelorarbeit vor.

Nach dem Seminar solltest du folgende Kompetenzen erlangt haben:

  • Eine Software abgestimmt auf den Bedarf der zukünftigen Anwender:innen (ggf. man selbst) entwerfen und mithilfe aktueller Programmierwerkzeuge und -methoden umsetzen.
  • Eine angemessene Softwarearchitektur begründet auswählen und umsetzen.
  • Die Qualität der Software, insbesondere durch automatische Tests, sicherstellen.
  • Die wesentlichen Erkenntnisse aus der Umsetzung des Projekts strukturiert und zielgruppengerecht schriftlich und vor Kommilliton:innen mündlich präsentieren und dabei das eigene Vorgehen kritisch reflektieren.
  • Anderen zu ihrer Softwarearchitektur und ihren Vorträgen konstruktiv Feedback geben.

Was für ein Programm du schreibst, kannst du dir im Wesentlichen selbst aussuchen. Wenn du gerade keine eigene Idee hast, findest du hier ein paar Vorschläge.

In diesem Seminar sollst du dich frei ausprobieren können. Failure is an Option. Es ist (auch für die Bewertung) nicht wichtig, dass das gesteckte Ziel (i. d. R. ein Programm mit allen angedachten Funktionen) am Ende fertig ist und fehlerfrei funktioniert. Es ist z. B. auch vollkommen okay, zwischendurch zu merken, dass etwas doch nicht so einfach war und dies dann in der schriftlichen Seminararbeit und dem Vortrag entsprechend zu reflektieren.

Beachtet, dass es sich um ein Modul mit 5 CP handelt, also ein Gesamtzeitaufwand von 150 Stunden. Abzüglich Präsenztermine bedeutet das, dass du ca. 110 Stunden Zeit für das Programmierprojekt, die Ausarbeitung und die Vorbereitung der Abschlusspräsentation hast.

Zeiteinteilung

Plan dir am besten wöchentlich fest Zeit für dieses Seminar ein, d. h. ungefähr 6–7 Stunden pro Woche (außerhalb der Präsenztermine).

Kontakt & Feedback

Wenn im Laufe des Seminars fachliche oder organisatorische Fragen auftauchen, kannst du gerne eine der folgenden Kontaktmöglichkeiten nutzen:

  • stelle Fragen direkt vor Ort während, direkt vor oder nach den Seminarterminen
  • das Ilias-Forum
  • E-Mail (direkt mit deinen Fragen oder Bitte um einen Gesprächstermin, online oder in Präsenz)

Per E-Mail kannst du auch einmalig im Laufe des Semesters Feedback zu deinem Abstract, der Einleitung und dem Inhaltsverzeichnis deiner Ausarbeitung bekommen.

Außerdem gibt es in der Woche vor den Abschlussvorträgen die Möglichkeit, für eine allgemeine Rückmeldung oder ausführlichere Fragen zu Ausarbeitung und Vortrag eine Beratungs-Sprechstunde (Präsenz oder online) zu buchen. Die Buchung erfolgt über Ilias (Anleitung Sprechstundenbuchung). Dort kannst du dir dann z. B. Feedback zu Teilen deiner Ausarbeitung einholen oder Unklarheiten klären.

Du hast kontinuierlich die Möglichkeit, anonym Feedback zum Seminar und den besprochenen Inhalten zu geben und Fragen zu stellen. Das Feedback hilft Markus dabei, das Seminar noch im Laufe des Semesters zu verbessern und an eure Bedarfe anzupassen. Die wöchentlichen, anonymen Feedback-Umfragen findest du im Ilias.

Termine

Das nötige Wissen zur Softwareentwicklung hast du in den Programmierpraktika erlangt. In den Seminarterminen während der Vorlesungszeit werden wir uns u. a. damit befassen, wie eine gute Ausarbeitung geschrieben wird und Präsentationstechniken praktisch üben.

  • 03.04.23: Startveranstaltung: Orga, Exposé, Feedback
  • 10.04.23: Ostermontag (gesetzlicher Feiertag)
  • 17.04.23: Hilfe, mein Publikum schläft sofort ein‽
  • 24.04.23: Wie halte ich einen schlechten Vortrag?
  • 01.05.23: Erster Mai (gesetzlicher Feiertag)
  • 08.05.23: Vorträge Zwischenstand
  • 15.05.23: Bitte was soll ich denn am Ende aufschreiben?
  • 22.05.23: Vorträge Zwischenstand
  • 29.05.23: Pfingsten (gesetzlicher Feiertag) (jetzt ist ein guter Zeitpunkt, den schriftlichen Teil anzufangen)
  • 05.06.23: Vorträge Zwischenstand
  • 12.06.23: Eeehm … – Souveränes Beantworten von Fragen
  • 19.06.23: Vorträge Zwischenstand
  • 26.06.23: Motiviert meine Einleitung zum Weiterlesen?
  • 03.07.23: Vorträge Zwischenstand
  • 10.07.23: Fragestunde/Themenwünsche
  • Deadline Ausarbeitung: Montag, 07.08.23, 06:00 Uhr MESZ
  • Deadline Code: Montag, 07.08.23, 06:00 Uhr MESZ
  • Abschluss-Präsentationen: Montag, 07.08.23, bis Freitag, 11.08.23, jeweils 8:30 Uhr bis 14:00 Uhr, Raum 25.13.U1.24
Anwesenheitspflicht?

Insbesondere bei der Bewertung wird davon ausgegangen, dass du die Inhalte aller Seminartermine während der Vorlesungszeit kennst. Wenn du die Möglichkeiten zum Üben nicht nutzen möchtest, steht es dir frei, nicht zu kommen. Nur bei den Abschlussvorträgen besteht Anwesenheitspflicht (Abmeldung per Mail mit Beleg erforderlich!), alle anderen Termine sind freiwillig.

Zwischenstands-Vorträge

Die Zwischenstands-Vorträgen kannst du (freiwillig) nutzen:

  • um zu berichten, wie dein aktueller Zwischenstand ist
  • um öffentlich deine weiteren Meilensteine zu kommunizieren, um etwas externen Druck zu generieren
  • um dich zu Schwierigkeiten auszutauschen und Feedback von anderen zu erhalten
  • um die Präsentationstechniken zu üben, die wir im Laufe des Seminars kennenlernen

Die Zwischenstands-Vorträge sollen 15 Minuten (inkl. Diskussion/Feedback) nicht überschreiten. Damit hätten alle die Chance, mindestens einmal einen Vortrag zu üben. Um Chaos zu verhindern, werden Zeitslots für Zwischenvorträge im Ilias vorab gebucht.

Abschlusspräsentation

Die Abschlusspräsentationen haben eine Länge von 20 Minuten zzgl. 10 Minuten Diskussion. Genauso wie bei einer Bachelorarbeit sind der Code und die schriftliche Ausarbeitung vor der Präsentation fertigzustellen.

Voraussetzung für die Vergabe von Kreditpunkten

  • Einreichen eines Exposés per E-Mail bis Freitag, 14.04.23, 12:00 Uhr MESZ (unbewertet)
  • formale Anmeldung zum Seminar über das Studierendenportal bis Freitag, 12.05.23, 23:59 Uhr MESZ (Das ist etwas anderes als die Anmeldung im LSF!)
  • Umsetzung eines Softwareprojekts mit angemessenem Umfang bis Montag, 07.08.23, 06:00 Uhr MESZ (Code muss dann im bereitgestellten Repo liegen; formal ist der Code Teil der Ausarbeitung)
    • Bearbeitung allein oder zu zweit; es ist möglich, (angekündigt) zum eigenen Code befragt zu werden.
  • aktive Mitarbeit (d. h. insbes. Anwesenheit bei den Abschlussvorträgen)
  • Abgabe der schriftlichen Ausarbeitung als PDF per E-Mail bis Montag, 07.08.23, 06:00 Uhr MESZ mit max. 10 Seiten Text (nur Text in den Kapiteln gezählt, ohne Zählung von Abbildungen, Verzeichnissen und Abstract)
  • Halten eines Vortrags über das eigene Projekt (Zeitraum Montag, 07.08.23, bis Freitag, 11.08.23, jeweils 8:30 Uhr bis 14:00 Uhr, Raum 25.13.U1.24; individuelle Termine werden nach der formalen Anmeldung festgelegt)
  • Code, Ausarbeitungen und Präsentationen müssen auf Deutsch oder Englisch sein. Die Sprache für diese drei Teile darf unterschiedlich sein.
Einzuhaltende Fristen

Eine verspätete Abgabe der Ausarbeitung (inkl. Code) oder Nicht-Erscheinen zum Vortrag nach erfolgter formaler Anmeldung wird als nicht bestanden (5,0) gewertet. Trag dir die wichtigen Termine mit Erinnerung im Kalender ein!

Vergiss den finalen Push nicht! Zur E-Mail mit der Ausarbeitung gibt es (zu regulären Bürozeiten) eine Empfangsbestätigung.

Wichtig bei Gruppenarbeit

Wenn zu zweit gearbeitet wird, dann muss für die Bewertung klar sein, wer was beigetragen hat:

  • Code: via Commit-Autor, bei Pair-Programming via Commit-Messages
  • schriftliche Ausarbeitung: separat ausweisen, wer was geschrieben hat (ggf. auch via Commits, sofern Ausarbeitung in LaTeX geschrieben und versioniert ist)
  • Vortrag wird zu zweit gehalten

Ein umfangreicheres Projektziel kann im Prinzip auch von mehreren (>2) Personen gemeinsam entwickelt werden, dazu muss es dann aber zwei klar abgegrenzte Codebasen (z. B. Backend und Frontend), zwei (vollständig eigenständig geschriebene) Ausarbeitungen und zwei Vorträge geben. Eine Codebasis darf also maximal von zwei Personen erstellt werden – ansonsten wird eine individuelle Bewertung unmöglich.

Bewertung

Im Gegensatz zur Bachelorarbeit, bei der der eigentliche Inhalt stärker bewertet wird, steht in diesem Seminar der Prozess und das Experimentieren mehr im Vordergrund. In die Gesamtnote für das Seminar fließen die drei Bereiche Code, Ausarbeitung und Vortrag jeweils zu einem Drittel ein.

Die Noten werden vor Beginn des folgenden Semesters per E-Mail mitgeteilt und kurz begründet.

Die verwendeten Begrifflichkeiten ergeben sich aus den Material-Seiten bzw. in den Präsenz-Terminen.

Code

  • notwendig: nicht trivial/zu kleines Projekt (anhand des Exposé-Feedbacks geklärt)
  • notwendig bei Partnerarbeiten: angemessener Anteil eigener Leistung
  • sinnvolle Commits
  • regelmäßige Commits
  • sinnvolle Softwarearchitektur
  • grundsätzliche Funktionsfähigkeit
  • getestete Logik
  • keine offensichtlichen Fehler/Code Smells (SpotBugs und Checkstyle nutzen!)
  • Nutzung von Bibliotheken für Standard-Funktionalitäten
  • Dokumentation, wie Code ausgeführt werden kann (oder alternativ Standard-Methode wie Gradle oder Docker-Compose-Datei)
  • selbst erklärender, ggf. dokumentierter Code

Ausarbeitung

  • notwendig: fristgerecht eingereicht
  • aussagekräftiger Titel
  • sinnvolle, einseitige Zusammenfassung (Abstract)
  • sinnvolle Struktur
  • Motivation vorhanden
  • Einordnung/Related Work vorhanden
  • Beschreibung relevanter Entscheidungen (bspw. Softwarearchitektur)
  • Relevanz aller Abschnitte klar
  • überleitende Strukturierungselemente
  • Überblick über das Erreichte/Gelernte (bspw. umgesetzte Funktionalität)
  • Ausblick/Lehren für die Zukunft
  • sprachliche Korrektheit
  • sprachlich angemessene Formulierungen
  • angemessen an Vorwissen der Leserschaft angepasst
  • sinnvolle Abbildungen/Tabellen und deren Referenzierung im Text (falls vorhanden)
  • angemessene Quellen und korrekte Zitierweise
  • angemessener Umfang (nicht zu knapp, nicht ausschweifend)
  • fachliche Korrektheit

Vortrag

  • notwendig: im Rahmen der Abschlusspräsentationen gehalten
  • ansprechend gestaltetes Opening
  • übersichtliche Slides
  • Einhaltung der Zeit (in beide Richtungen), keine Beschleunigung am Ende
  • freie Rede und Kontakt zum Publikum
  • Darstellung des gelösten Problems/der Marktlücke (Motivation)
  • sinnvoller thematischer Fokus (z. B. Überblick über das Erreichte, Darstellung/Begründung besonderer Entscheidungen während der Entwicklung)
  • abschließende Zusammenfassung der wichtigsten Punkte
  • Ausblick/Lehren
  • nachvollziehbare Struktur und sprachliche Führung
  • Relevanz aller Abschnitte klar
  • angemessen an Vorwissen angepasst
  • sprachliche Korrektheit der Folien
  • sinnvolle Abbildungen (falls vorhanden)
  • angemessener Umgang mit Fragen
  • fachliche Korrektheit

Weiteres Material auf der Kursseite

Wie du Ergebnisse überzeugend und zielgruppengerecht sowohl schriftlich, als auch mündlich präsentierst, lernst du (praktisch) im Rahmen der Seminartermine und optional mit den weiteren Materialien auf dieser Kursseite. Diese Fähigkeiten werden dir sicherlich nicht nur bei Abschlussarbeiten helfen, sondern hoffentlich auch im späteren Berufsleben.

Wenn du alle Seminartermine besuchst, musst du das weitere Material hier auf der Kursseite nicht durchlesen. Dir steht aber frei, die Termine nicht zu besuchen und stattdessen die Kursseite selbständig durchzuarbeiten. Die Kenntnisse dieser Inhalte wird bei der abschließenden Bewertung vorausgesetzt. Damit du freies Formulieren und Vortragen praktisch üben kannst, ist eine Teilnahme an den Präsenzterminen aber empfohlen. Außerdem kannst du dir dann Techniken bei anderen abgucken.