Diplomarbeit am Institut für Informationssysteme



Funktionale Modellierung von web-basierten Informationssystemen


Beschreibung

Bei der Entwicklung einfacher Webanwendungen mit heute verfügbaren Technologien tritt oft ein kaum zu rechtfertigendes Missverhältnis zwischen Brutto- und Nettocode auf. Die Java-Plattform bietet ein reichhaltiges Angebot an den verschiedensten Lösungsansätzen zur Entwicklung von Webanwendungen auf Grundlage der Enterprise Edition (Java EE oder J2EE). Allen Anwendungen gemein sind Aufgaben aus den Bereichen Präsentation, Benutzerführung, Sitzungsverwaltung, Typkonvertierung, Rechteverwaltung, Fehlerbehandlung, Internationalisierung und Persistenz. Um diese Aufgaben nicht bei jedem Projekt neu zu lösen, haben sich so genannte Frameworks etabliert, um dem Entwickler diese Aufgaben zu erleichtern oder abzunehmen. Die Grundlage dieser Frameworks ist fast immer Java EE mit den Kerntechnologien Servlets und JavaServer Pages (JSP). Während die Bereiche Präsentation und Sitzungsverwaltung für die meisten Anwendungen zufriedenstellend gelöst sind, ist in den anderen Bereichen viel Platz für Verbesserungen. Dies ist allein schon durch die Allgemeingültigkeit von Java EE bedingt, die einer vereinfachten Benutzung oft entgegen steht. Sun selbst hat reagiert und mit JavaServer Faces ein Framework hauptsächlich für die Benutzerführung veröffentlicht, das in die fünfte Version der Enterprise Edition integeriert wurde. Ein relativ breit angelegtes J2EE-Framework ist Spring, das als leichtgewichtig beworben wird. Die genannten Frameworks lösen viele Probleme aus den aufgezählten Bereichen und bieten softwaretechnisch günstige Lösungswege, wie z.B. das Dependency Injection-Muster zur Verringerung von Abhängigkeiten. Frameworks, die dem Entwickler viele Aufgaben abnehmen, sind oft unflexibel in ihrer Erweiterbarkeit oder stellen hohe Anforderungen an die Struktur der Anwendung. Weiterhin wenig zufriedenstellend ist zudem das Verhältnis zwischen Brutto- und Nettocode bei kleinen Webapplikationen, entweder durch Sitzungsverwaltung oder durch zu viel Aufwand bei der Konfiguration.

Das Ziel dieser Arbeit ist die Untersuchung von Ansätzen, die das ungünstige Verhältnis zwischen Brutto- und Nettocode bei kleineren webbasierten Informationssystemen verbessern, ohne die Ausdrucksmöglichkeiten von Java zu sehr einzuschränken. Dazu wird der Ansatz verfolgt, Verhalten und Zustand der Benutzerschnittstelle in gewöhnlichen Java-Klassen zu modellieren und die Web-spezifischen Aspekte wie Rechteverwaltung, Konvertierung und Validierung durch die Verwendung deskriptiver Annotationen aus dem eigentlichen Quelltext herauszuhalten, aber nicht von ihm zu trennen. Für diesen Ansatz wird ein Entwurfsmuster entwickelt und Methoden zur Realisierung mit der Java EE-Plattform aufgezeigt. Fehlerbehandlung und Internationalisierung werden von dem Framework automatisch unter Verwendung von Programmierkonventionen bereitgestellt.

Ergebnis:
Die Ausarbeitung kann im Institut für Informationssysteme angefordert werden.

Bearbeiter:
Hagen Schendel

Betreuung:
Prof. Dr. rer.nat. V. Linnemann
Institut für Informationssysteme
Ratzeburger Allee 160 ( Gebäude 64 - 2.OG )
23538 Lübeck
Telefon: 0451/500 5700

17.11.2005, webmaster