Programmierprojekte

Rahmenbedingungen

In Programmierprojekten können Studierende (allein oder in Kleingruppen) Softwareprojekte im Umfang von maximal 6 Kreditpunkten (180 Stunden) im Bereich der Sprachtechnologie durchführen. Die Projekte können, müssen aber nicht im Rahmen laufender Forschungsprojekte am Institut durchgeführt werden.

Themen Das Institut unterhält eine Liste mit offenen Themen für Projekte. Die Studierenden sind jedoch eingeladen, eigene Projekte vorzuschlagen, die sich allenfalls auch interdisziplinär im Zusammenhang mit dem Hauptfach ergeben.

Zeit Normalerweise werden die Projekte im Sommer übernommen, damit die Hauptarbeit in die vorlesungsfreie Zeit fallen kann. Programmierprojekte müssen innerhalb von 6 Monaten abgeschlossen werden.

Aufwand Für die Entwicklung sollten zwischen 60 und 100 Arbeitsstunden eingesetzt werden. Dabei ist allfällige Einarbeitungszeit in die verwendete Programmiersprache bzw. -umgebung nicht eingerechnet.

Abgabeform Der kommentierte Programmcode wird in maschinenlesbarer Form abgegeben. Ein kurzer technischer Bericht (max. 10 Seiten) dokumentiert die Arbeit. Die unten stehende Checkliste fasst die wichtigsten Punkte zusammen, die bei der Abgabe beachtet werden müssen.

Copyright Die Universität Zürich erhält das Copyright und die Nutzungsrechte für den erstellten Code.

Dokumente zum Programmierprojekt befinden sich hier.

Kontakt

Simon Clematide und Manfred Klenner sind die Anlaufstelle für Interessierte.

Checkliste: Abgabe Programmierprojekt

1. Programmdateien

  • Alle Programmtexte und notwendigen Hilfsdateien in einem Hauptverzeichnis
  • Keine Umlaute (Zeichen mit ANSI-Code > 127) in den Dateinamen
  • Kein Dateiname länger als 31 Zeichen (Einschränkung MacOS)
  • Im Hauptverzeichnis eine README.TXT-Datei, die Auskunft gibt über:
    • alle Dateien und ihre Funktion.
    • Plattform (Betriebssystem, Programmierumgebung mit Versionsangabe), auf der das Programm lauffähig war.
    • Komponenten (z.B. Gertwol, Tagger), die im Projekt verwendet werden, aber nicht teil der Abgabe sind mit Versionsangabe.
    • wie Hauptfunktion(en), die das/die Programme ausmachen, aufgerufen werden.

2. Technische Dokumentation

Die Dokumentation ist gebunden in Papierform sowie elektronisch (HTML-, RTF- oder PDF-Dateien) abzugeben. Die Dokumentation enthält folgende Informationen:

  • Ziele und Arbeitsschritte des Projekts mit Angaben über das Erreichen
  • positive und negative Resultate auflisten (Dies funktioniert gut weil, ... Das hat nicht geklappt, weil…)
  • Dokumentation der verwendeten Konzepte, Algorithmen, Resourcen (Dies geschieht am besten, während man die Sache erarbeitet! Nicht am Schluss noch machen!)
  • Mit Ablaufdiagrammen lässt sich ein System oft übersichtlich zusammenfassen.
  • Woher kommt dieser Algorithmus? Woher kommt diese Klassifikation? Woraus wurde diese Liste entnommen?
  • Dokumentation der verschiedenen Datenformate (Input- und Output-Formate bei Dateien)
  • kommentierte Literatur-/Linkliste (bzw. Zusammenfassungen, falls dies Teil der Aufgabenstellung war)
  • Hinweise auf Ausbau-/Erweiterungsmöglichkeiten
  • Kommentierter Programmkode (falls zu gross, nur in der elektronischen Version)