Intern
    Lehrstuhl für Künstliche Intelligenz und Wissenssysteme

    Praktikum: Softwarepraktikum

    Softwarepraktikum - Sommersemester 2024

    Prof. Dr. Frank Puppe, Prof. Dr. Samuel Kounev und Mitarbeiter der Lehrstühle II und VI

    Zulassungsvoraussetzungen:

    Die Grundvorlesungen zur Praktischen Informatik und Programmiererfahrung sind erforderlich, damit Sie im Praktikum erfolgreich zusammenarbeiten können. Die konkreten Zulassungsvoraussetzungen unterscheiden sich je nach Studiengang und Version der Prüfungsordnung und können für Bachelor-Studiengänge hier  und für Lehramts-Studiengänge mit Informatik als eines der Hauptfächer hier nachgesehen werden. In der Regel muss Softwaretechnik sowie das Programmierpraktikum bestanden worden sein und die Veranstaltung Algorithmen und Datenstrukturen ist nicht erforderlich, wird aber dringend empfohlen.

    Nur wenn Sie einen Lehramts-Studiengang mit Drittfach Informatik studieren (also nicht als eines Ihrer beiden Hauptfächer), sind keine Module erforderlich. Auch hier werden allerdings dieselben Module wie im Bachelor Informatik dringend empfohlen.

    Anmeldung:

    Beachten Sie vor der Anmeldung bitte, dass das Softwarepraktikum 10 ECTS Punkte bringt, was pro Person einer Arbeitszeit von ungefähr 300 Stunden entspricht. Und da es für das Softwarepraktikum keine Klausur gibt, verteilen sich diese Stunden über die ganze Vorlesungszeit. Bitte berücksichtigen Sie dies schon vor der Anmeldung bei der Planung Ihres Semesters. Eine Abmeldung im laufenden Praktikum ist sowohl für Ihre übrigen Gruppenmitglieder als auch für den Betreuer Ihres Themas mit erheblichem Mehraufwand verbunden, weswegen eine Abmeldung nach der Themenvergabe seit letztem Semester nur noch mit schriftlicher Begründung möglich ist.

    Für die Teilnahme an der Veranstaltung melden Sie sich bitte in WueStudy für das Softwarepraktikum an und schicken bis spätestens Dienstag, den 16.04.2024 um 18:00 Uhr eine von WueStudy erstellte und verifizierbare PDF mit der Anmeldebestätigung per E-Mail an Leon Liman (leon.liman@uni-wuerzburg.de). Die entsprechende WueStudy-Bescheinigung heißt "Bescheinigung über angemeldete Prüfungen". Bitte verwenden Sie für die Anmeldung das Stud-Mail Konto, oder nennen Sie in Ihrer Anmeldung Ihre Stud-Mail-Adresse.

    Die Anmeldung für das Softwarepraktikum ist in WueStudy ab dem 01.04.2024 möglich und kann nur durchgeführt werden, wenn Sie die Zulassungsvoraussetzungen dafür bereits erfüllt und in WueStudy eingetragen bekommen haben. Wenn Sie einen Lehramts-Studiengang mit Drittfach Informatik studieren, können Sie sich nicht per WueStudy für das Softwarepraktikum anmelden. Schicken Sie in diesem Fall bitte eine aktuelle Immatrikulationsbescheinigung ebenfalls bis zum 16.04.2024 um 18:00 Uhr per E-Mail an die oben genannte Adresse.

    Wenn Sie das Programmierpraktikum erst kurz vor Beginn der Vorlesungszeit bestanden haben und nur noch auf die Eintragung in WueStudy warten, können Sie sich mit einem aktuellen WueStudy-Notenspiegel (mit den übrigen Zulassungsvoraussetzungen) und einem Screenshot der Eintragung des Klausurergebnisses des Programmierpraktikums in WueCampus bereits vorläufig anmelden. Die WueStudy-Anmeldebestätigung muss dann nachgereicht werden, sobald die Verbuchung des Programmierpraktikums in WueStudy stattgefunden hat.

    WICHTIG: Es wird davon ausgegangen, dass Studierende von Informatik-Studiengängen in der Lage sind, zumindest einmal am Tag ihre E-Mails zu kontrollieren. Sollten Sie auf eine E-Mail der Organisatoren des Praktikums (Ivo Rohwer und Leon Liman) bzgl. fehlender Informationen in Ihrer Anmeldung oder nachzureichender Dokumente nicht innerhalb von maximal 48 Stunden (Wochenende und Feiertage ausgenommen) reagieren, verlieren Sie Ihren Platz im Praktikum und können sich eventuell erst im nächsten Semester wieder anmelden.

    Einreichen von Themenvorschlägen:

    Auf Vorschlag der Teilnehmer:innen vor einigen Semestern hin, besteht auch dieses Semester wieder die Möglichkeit, dass Sie auch selber Themen für das Softwarepraktikum vorschlagen können. Falls Sie eine Idee für ein Thema haben, dann schicken Sie diese bitte bis spätestens zum 31.03.2024 an die oben für die Anmeldung genannte E-Mail-Adresse. Bei dem Vorschlag sollte es sich um etwas handeln, was als Web-Anwendung umgesetzt werden kann und der Vorschlag muss mindestens das Folgende enthalten:

    • Titel
    • Schwerpunkte (z.B. zu verwendende Frameworks, Programmiersprachen oder Techniken)
    • Kurze, textuelle Beschreibung der Idee hinter dem Thema
    • Auflistung der konkreten Anforderungen an die zu entwickelnde Software (analog zu den Muss-Kritierien in einem Pflichtenheft)
    • Mögliche Aufteilung der Anforderungen des Themas auf 3 bis 4 Studierende

    Wir werden versuchen geeignete Themenvorschläge in diesem (oder einem der nächsten) Semester anzubieten. Ob ein Thema angeboten werden kann, hängt allerdings auch von der Zahl an Anmeldungen für das Softwarepraktikum sowie von den von den einzelnen Betreuern selber vorgeschlagenen Themen ab. Falls Ihr Themenvorschlag verwendet wird, dann wird dieser in die normale Themenvergabe (wie unten beschrieben) mit aufgenommen und kann von Ihnen (wie von allen anderen Teilnehmer:innen) mit einer Ihrer Prioritäten gewählt werden.

    Ablauf:

    • Einschreibung in den WueCampus-Kurs: Am Tag nach der Anmelde-Deadline werden alle Teilnehmer:innen gegen Mittag/Nachmittag automatisch in den WueCampus-Kurs für das Softwarepraktikum eingeschrieben.
    • Themenvergabe: Die Bearbeitung der Projektaufgaben findet in Gruppen aus 3 oder 4 Studierenden statt. Die Themen sowie die Teams werden nicht mehr zufällig verteilt, sondern die Titel und Schwerpunkte aller Themen vorab im WueCampus Kurs ausgeschrieben. Dadurch sollen die Teilnehmer:innen einen Eindruck bekommen, mit welchen Frameworks, Programmiersprachen oder Techniken gearbeitet werden soll. Ab der Einschreibung in den WueCampus-Kurs besteht dann bis etwa 1 Stunde vor Beginn der Einführungsveranstaltung bzw. etwa für 24 Stunden die Möglichkeit Prioritäten für die Themen zu vergeben und anschließend werden alle Teilnehmer:innen entsprechend ihrer Prioritäten so gut wie möglich auf die Themen verteilt. Nach dieser Verteilung steht dann auch eine detaillierte Projektbeschreibung für jedes Thema in WueCampus zur Verfügung.
    • Treffen mit dem Betreuer: Melden Sie sich nach der Themenvergabe bitte direkt bei dem Betreuer Ihres Themas. Dieser spricht dann mit Ihrer Gruppe den ersten Termin und die weitere Form der Kommunikation innerhalb der Gruppe ab.
    • Einführungsveranstaltung: Zur genaueren Erläuterung des Ablaufs sowie um allen Teilnehmer:innen die Möglichkeit zu geben, dazu Fragen zu stellen, wird es am 18.04.2024 um 14:15 Uhr im Zuse-Hörsaal des Informatikgebäudes eine Einführungsveranstaltung geben. Im Rahmen dieser Veranstaltung wird dann auch die Themenzuteilung bekanntgegeben (und nach dem Termin in WueCampus veröffentlicht).
    • Fokus auf Webentwicklung: Nach dem positiven Feedback dafür in den letzten Semestern, wird es auch in diesem Semester wieder größtenteils Themen geben, in denen eine Web-Anwendung entwickelt werden soll. Dabei werden vor allem die folgenden Frameworks für die Web-Oberfläche (das Frontend) bzw. für den Server (das Backend) zum Einsatz kommen: Eine mit allen obigen Frameworks implementierte Beispielanwendung finden Sie hier. In dem Archiv ist auch eine Anleitung zur Verwendung der Beispielanwendung enthalten. Die oben für die Frameworks verlinkten Materialen sowie die Beispielanwendung müssen von den Teilnehmer:innen vor Beginn der Veranstaltung durchgegangen werden und sind Voraussetzung für die erfolgreiche Teilnahme am Softwarepraktikum. Sollten Sie dies für alle Frameworks zeitlich nicht schaffen, dann wählen Sie mindestens eines der Frameworks für das Frontend sowie eines für das Backend aus und arbeiten sich in deren Materialen sowie deren Teile der Beispielanwendung ein.
    • Agile Entwicklung: Der Software-Entwicklungsprozess während des Praktikums orientiert sich an dem SCRUM-Modell. In diesem Zusammenhang legen Sie für Sprints mit einer Länge von jeweils 2 Wochen Ihre Ziele in dem Projekt fest. Diese Ziele dürfen Sie maximal zweimal zu weniger als 50% erfüllen, um das Softwarepraktikum zu bestehen. Außerdem müssen alle Teilnehmer:innen in ihrer Gruppe mindestens einmal SCRUM-Master gewesen und damit für die Organisation innerhalb der Gruppe und die Planung des nächsten Sprints zuständig gewesen sein.
    • Abgabetermine: Im Laufe des Semesters gibt es mehrere Termine, die Sie für ein Bestehen des Praktikums einhalten müssen. Die genauen Tage und Uhrzeiten finden Sie zu Beginn der Vorlesungszeit im WueCampus-Kurs.
      • Etwa 2 Wochen nach Beginn des Praktikums muss von allen Gruppen ein Pflichtenheft für ihr Thema abgegeben werden. In dem Pflichtenheft muss auch festgelegt werden, welche Muss-Kriterien bis zur Halbzeit des Projekts erfüllt sein werden. Außerdem müssen darin die groben Zuständigkeiten der einzelnen Teilnehmer:innen festgelegt werden.
      • Ebenfalls 2 Wochen nach Beginn des Praktikums müssen alle Teilnehmer:innen eine von ihrem jeweiligen Betreuer festgelegte Einführungsaufgabe implementiert und abgegeben haben. Diese Aufgabe werden Sie bereits mit den Tools und Frameworks bearbeiten, die in Ihrem Thema verwendet werden sollen, wodurch Sie sich mit diesen schon besser vertraut machen können.
      • Zur Halbzeit des Projekts müssen die im Pflichtenheft festgelegten Halbzeit-Ziele von allen Teilnehmer:innen erreicht und der Code dafür hochgeladen sein.
      • 2 Wochen vor dem Ende der Vorlesungszeit muss die Implementierung aller Muss-Kriterien aus dem Pflichtenheft (inklusive Kommentare und Tests) vollständig abgeschlossen und hochgeladen sein.
      • Bis zum Tag vor der Abschlussveranstaltung müssen dann außerdem die Dokumentation zu Ihrem Projekt sowie die Abschlusspräsentation abgegeben werden.
    • Abschlussveranstaltung: Im Rahmen einer Abschlussveranstaltung (in der letzten Woche der Vorlesungszeit) stellt abschließend jedes Team seine Ergebnisse kurz vor.

    Gewinner-Teams:

    Nach der Abschlussveranstaltung am 17.07.2024 konnten die Teilnehmenden gegenseitig ihre Projekte bewerten. Die beste Bewertung in der Kategorie "Projektergebnis" (2,59 von 3) hat dabei das Team aus Pascal Diehm, Daniel Fleischmann und Marie Ostrowski (betreut von Ivo Rohwer) mit dem Thema "Online-Schach" erhalten.


    Das Gewinner-Team in der Kategorie "Projektergebnis" (in der Mitte) zusammen mit den beiden Organisatoren des Praktikums sowie einem der Professoren der für das Softwarepraktikum zuständigen Lehrstühle (rechts)

    Die beste Bewertung in der Kategorie "Präsentation" (2,57 von 3) bekam das Team aus Christian Claeßen und Gedeon Igelspacher (betreut von Luca Kohlhepp) mit dem Thema "WebUI für Large-Language-Models".


    Das Gewinner-Team in der Kategorie "Präsentation" (in der Mitte) zusammen mit den beiden Organisatoren des Praktikums sowie einem der Professoren der für das Softwarepraktikum zuständigen Lehrstühle (rechts)