Team CampusSchneider

StudiPlan

Eine java-basierte Bibliothek zur automatisierten und teil-automatisierten Planung von Hochschulstundenplänen


Architektur
Domainmodell

StudiPlan ist eine java-basierte Bibliothek die dazu konzipiert wurde an Hochschulverwaltungssysteme angekoppelt zu werden um die Planung der Semesterstundenpläne zu erleichtern.

Hierzu bietet sie ein Interface in dem die Stammdaten eingegeben werden können, sowie eine allgemeine API um eine Reihe von Bedingungen für die Planung einzugeben. Es besteht die Möglichkeit die Planung mit verschiedenen Planungsengines erstellen zu lassen, wobei einzelne Teilplanungen theoretisch mit verschiedenen Engines vorgenommen werden könnten.

Bei StudiPlan handelt es sich lediglich um einen Prototypen der bisher nur einen Grundstock an möglichen Bedingungen und nur eine Planungsengine, OptaPlanner, implementiert.


Jira Scrum Board

Performance Chart 1

Performance Chart 2

Team CampusSchneider


Von links nach rechts:

Tobias Lippert
Philipp Battenberg
Gregor Heß
Johann Reinhard
Julian Schindel
Tobias Hartmann



Auftraggeber:

werkstoff.bit® ist ein in Rödermark ansässiger IT-Dienstleister der Beratung, Weiterentwicklung und Erweiterungen für Hochschulverwaltungssysteme, insbesondere HISinOne, anbietet.

Verwendete Technologien

In diesem Projekt wurden die im Folgenden aufgeführten Technologien verwendet.


Planungsengine
Regelengine
Programmiersprache
Kompilation der Bibliothek
Testframework
Logging und Utilty-Methoden
Entwicklungsumgebung
LinuxEntwicklungs- und Zielplattform
Entwicklungs- und Zielplattform
Versionsverwaltung
Versionsverwaltung
Versionsverwaltung
Projektmanagement
Dokumentation
Google DriveDateiverwaltung bzgl. SEP
Team-Kommunikation
Zeittracking

Einarbeitungszeit

Die Einarbeitungszeit in bestehende Systeme sollte nicht unterschätzt werden. Insbesondere bei großen, unbekannten Software-Stacks sollte eine lange Einarbeitungszeit eingeplant werden.

Einarbeitungszeit kann man auch nutzen um bereits formale Teile des Projektes genauer zu spezifizieren oder zum Beispiel um GUI-Konzepte entwerfen.

Kontakt mit dem Auftraggeber

Man sollte im Kontakt mit dem Auftraggeber bedenken, dass es durchaus mehrere Tage dauern kann bis dieser auf eine E-Mail antwortet. Deswegen sollte man nach Möglichkeit vermeiden Fragen zu sammeln und sollte, wenn es dringend ist, den Auftraggeber telefonisch kontaktieren.

Regelmäßige Treffen mit dem Auftraggeber sind ebenfalls sehr hilfreich. Das gilt insbesondere für komplexere Sachverhalte, die mit dem Auftraggeber geklärt werden müssen. Zusätzlich kann der Auftraggeber sich so ein besseres Bild über den Fortschritt machen, ist involvierter und damit meist auch zufriedener. Damit können auch Probleme im Projektfortschritt frühzeitig erkannt werden und somit entsprechende, korrigierende Maßnahmen eingeleitet werden.

Aus diesem Grund sind Treffen mit dem Auftraggeber auch während Einarbeitungszeiten angeraten (siehe oben).

Einfache Organisation

Man könnte sich dazu verleitet fühlen eine detaillierte, umfassende, komplexe Organisationsstruktur aufzubauen. Es ist aber meist leichter Verantwortungen in einer Person zu konzentrieren, diese dafür von andere Pflichten zu entbinden.