Wintersemester 2020/21

Praxis der Softwareentwicklung (PSE)

Thema: Entwicklung eines digitalen Klassenbuchs für den Einsatz an Schulen

Prof. Dr. Bernhard Beckert, Prof. Dr. Carsten Sinz, Dr. Mattias Ulbrich, Marko Kleine Büning

Aktuelles

Die Lehrveranstaltung wird online stattfinden, weitere Informationen auf den Seiten des Lehrstuhls für Programmierparadigmen!

Allgemeines

In "Praxis der Softwareentwicklung" (PSE) lernen die Teilnehmer, ein vollständiges Softwareprojekt nach dem Stand der Softwaretechnik in einem Team mit etwa 5 bis 6 Teilnehmern durchzuführen. Ziel ist es insbesondere, Verfahren des Software-Entwurfs und der Qualitätssicherung praktisch einzusetzen, Implementierungskompetenz umzusetzen, und arbeitsteilig im Team zu kooperieren.

Allgemeine Informationen zum Bachelor-Modul inklusive formaler Voraussetzungen und Prüfungsmodalitäten sind auf den Seiten des Lehrstuhls für Programmierparadigmen am IPD zu finden. Außerdem gibt es für PSE in diesem Semester einen (allgemeinen) ILIAS-Kurs.

Hintergrund

Dieses PSE-Projekt wird im Rahmen des Projekts OSL2 (Open-Source-Lehrsoftware-Labor) durchgeführt.

Motivation

Das traditionelle Klassenbuch:

  • Einträge für Noten, Fehlzeiten, Dienste, und so weiter
  • Ein Buch für eine Klasse, nicht für einen Lehrer
  • Keine Auswertungen von Daten (z. B. Fehlzeiten) möglich
  • Keine zusätzlichen Notizen und Planungen möglich

Das digitale Klassenbuch:

  • Einträge für Noten, Fehlzeiten, Dienste, und so weiter
  • Ein digitales Buch für einen Lehrer
  • Applikation gibt einfache Übersicht und Auswertungen über alle aufgenommenen Daten
  • Möglichkeit für zusätzliche Notizen und Kommentare

Rahmenbedingungen

Aufgabenstellung:

  • Entwurf und Implementierung des digitalen Klassenbuchs für den Einsatz an Schulen
  • Implementierung als Desktop-Applikation für Microsoft Windows
  • Daten dürfen nur verschlüsselt und durch Passwort gesichert erreichbar sein
  • Als Programmiersprache wird Java empfohlen

Open-Source Software:

  • Wir möchten die Software gerne als Open-Source Projekt behandeln
  • Es gibt viele Vorteile, z. B. Weiterentwicklung und wirklicher Einsatz von Lehrern

Hinweise und Erwartungen

  • Aktives Source Code Management mittels eines Versionsverwaltungssystems
  • Automatische Softwaretests
  • Kontinuierliche Integration
  • Anwendung bzw. Einhaltung von Design Patterns, Best Practices, und Style-Konventionen
  • Kommentierter Quellcode, sowie Dokumentation und Testprotokolle