4.1 Die graphische Benutzungsoberfläche: Konzept und Prototyp

 

In diesem Teil des Projektberichts wird die graphische Benutzungsoberfläche (GUI: Graphical User Interface) des UniPlaners und ihre Implementierung1 behandelt. Anhand der folgenden Kapitel kann man nachvollziehen, welchen zeitlichen Rahmen die eigentliche Implementation des UniPlaners innerhalb der gesamten Entwicklungsphase eingenommen hat. Änderungsvorschläge und Anregungen der gegenwärtig amtierenden Stundenplaner des Fachbereichs 12 sind im wesentlichen zu jeder Zeit in die Implementierung eingeflossen. Dadurch verursachte Änderungen und Ergänzungen im Programm erhöhten den Zeitbedarf der Implementierungsphase. Dies ist als normal anzusehen, wenn man bedenkt, daß andere Projekte respektive der Kundennähe den gleichen Entwicklungszyklus durchlaufen. Anders steht es jedoch mit einem erhöhten Zeitbedarf, der durch Fehler in der Entwicklungsumgebung, der Entwicklungsplattform und nicht zuletzt auch durch die unzureichende Betrachtung von alternativen Entwicklungsumgebungen entsteht. Wenn man bedenkt, daß keine Software fehlerfrei ist, kann man den ersten beiden Ursachen meist nur während der Implementierungsphase begegnen. Die Auswahl der Entwicklungsumgebung – nicht nur die von einzelnen Softwarebibliotheken – sollte sorgfältig schon während der Analyse-Phase des Projektes erfolgen. Im Sinne der Objektorientierung können auch zukünftige Projekte als Nutznießer dieser geleisteten Recherche auf bereits gesammelte Erfahrungen wieder zurückgreifen.

4.1.1 Anforderungen an eine Benutzungsoberfläche

Die Anforderungen an die GUI respektive des Stundenplanproblems wurde schon im Lastenheft dargestellt. Die wesentlichen Formulare der manuellen Entwicklung sollen sich darstellungsgleich auch in der Softwarelösung wiederfinden (Erhebungsbogen und Stundenplandarstellung). Allgemeine Anforderungen ergeben sich aus der Mensch-Maschine-Interaktion mit jeder Art von Softwarelösung. Der Lernaufwand sollte so gering wie möglich gehalten werden. Dies impliziert, daß sich die Funktionalität der UniPlaner-Applikation so ansprechen läßt wie die anderer Windows-Anwendungen. Neben der Mausbedienung wird im UniPlaner die Funktionalität auch über Tastaturkürzel (ALT + "Key") angeboten.

4.1.2 Die Entwicklungsumgebung

Zu Beginn des Projekts wurde die Entwicklungsumgebung Visual C++ von Microsoft favorisiert – mit der Begründung "Microsoft ist Marktführer in Sachen graphischer Benutzeroberflächen". Aber die bessere Entwicklungsumgebung – nicht zuletzt auch viel benutzt – bietet derzeit immer noch Borland mit ihrer C++-Entwicklungsumgebung. Schon anfangs des Projekts wurde versucht, die jeweiligen Kontrahenten Objekt Windows Library und die Microsoft Foundation Classes (MFC) mit dem Softwaretool Rational Rose/C++ in ein Booch-Modell zu überführen. Damit wäre es möglich, das Analysemodell des Problembereichs mit Details der Implementierung zu verbinden. Während sich die OWL fehlerlos in ein Booch-Modell überführen läßt, scheiterte dieser Versuch hinsichtlich der MFC aufgrund von unzähligen Fehlermeldungen. Eine Modellierung mit Rational Rose/C++ hat den Vorteil, daß die verschiedenen Phasen des Software-Entwurfs nahtlos in einander übergehen. Dies war jedoch mit der Framework-Visual/C++ Umgebung nicht möglich. Eine weitere Tatsache die für die Borland-Umgebung gesprochen hätte, wäre die Verfügbarkeit von Softwarekomponenten. Während des Entwurfs des UniPlaners wurde – im Sinne der Wiederverwendung – auch nach bereits erstellten Klassenimplementationen gesucht, die für das Projekt von Nutzen gewesen wären. Während für die Borland-Compiler aufgrund seiner starken Marktpräsens ein riesiges Angebot von frei verfügbaren Komponenten existiert, sind solche Software-Komponenten für den Visual-C++-Compiler relativ rar.

4.1.3 Das Programm "UniPlaner"

Abbildung 4.1.1: Das Programm "UniPlaner"

Die folgenden Abschnitte befassen sich mit den einzelnen Dialogen des UniPlaners. Der UniPlaner ist in seiner gegenwärtigen Form eher als gereifter Prototyp zu betrachten. Einige Dinge wie z. B. das Editieren der Pläne sind leider noch nicht implementiert. Als ausgereift kann man jedoch die Datenerfassung ansehen. Dieser Bereich wurde auch schon praktisch durch die Stundenplaner des FB 12 erprobt. Wie schon erwähnt, flossen viele Änderungswünsche in diesen Bereich des UniPlaners mit ein.

 

Weiter zu den Beschreibungen der Benutzungsoberfläche:

4.1.4 Datenerfassung

4.1.5 Berechnung der Pläne

4.1.6 Darstellung der Pläne

4.1.7 Sonstige Ansichten

 


1 Während der Implementierungsphase wurde folgende Literatur benutzt: [Aumiller, 1995], [BorProg, 1995], [BorRef, 1995], [Matzke, 1995] und [Norton,1991].

 

Web-Designer: Hans Peter Kunz. Letzte Änderung: 12-03-1998.