Dr.-Ing. Andreas Rümpel
Dr.-Ing. Stefan Pietschmann
Die Bedeutung und Verbreitung von Webanwendungen ist in den letzten Jahren stark gestiegen. Eine Vielzahl von Applikationen hat sich vom Desktop in das Web verlagert. Sie werden als Rich Internet Applications (RIA) bezeichnet und verbinden die Vorteile beider Welten: reichhaltige Interaktions- und Darstellungsmöglichkeiten sowie zeit- und ortsunabhängigen Zugriff über den Browser. Im Hintergrund nutzen sie verstärkt Services, d. h. entkoppelte Dienste, die Geschäftslogik und Daten als wiederverwendbare Funktionsblöcke technologieunabhängig bereitstellen. Vorteil bei der Erstellung solcher Anwendungen ist die einfache Integration und Kombination u. U. fremder Mehrwertdienste, angefangen von RSS-Feeds bis hin zu Web- und REST-Services. Die Verknüpfung mehrerer solcher Dienste wird auch als Mashup bezeichnet.
Während die Erstellung von Webanwendungen im Backend durch die Nutzung der o. g. Services vereinfacht wurde, stellt die Entwicklung der passenden Benutzerschnittstelle noch immer ein anspruchsvolles Problem dar. Um eine reichhaltige Oberfläche zu erhalten muss diese i. d. R. von Hand programmiert werden. Hierzu stehen eine Reihe mehr oder weniger etablierter Web-Technologien (JavaScript, Flash, Silverlight, JavaFX, usw.) sowie eine große Zahl entsprechender Web Application Frameworks zur Auswahl. Eine populäre Klasse solcher Frameworks sind JavaScript- bzw. Ajax-Frameworks wie Qooxdoo oder Dojo, die sowohl rein clientseitige Anwendungen ermöglichen oder als browserseitige Präsentationsschicht für serverseitige Anwendungen genutzt werden (z. B. in Eclipse RAP oder Google GWT).
Um den Aufbau und das Verhalten solcher Mashups im zugehörigen Forschungsprojekt CRUISe beschreiben zu können, existiert ein plattformunabhängiges Kompositionsmodell je Mashup-Anwendung. Es spezifiziert u. a. die Verwendung von UI-Komponenten, die Anwendungslogik und die Anbindung von Backend-Diensten. Alle Anwendungsmodelle genügen einem Kompositionsmetamodell, welches in einer studentischen Arbeit entwickelt wurde. Aufgrund seiner Spezifikation in Ecore kann es als Grundlage für graphische Editoren auf Basis des Eclipse Graphical Modeling Framework (GMF) dienen.
Zum Seitenanfang...Im Rahmen des Komplexpraktikums soll ein GMF-basierter graphischer Editor für das Kompositionsmodell von User Interface Mashups unter Nutzung eines bestehenden Metamodells entwickelt werden. Dafür sollen die für den GMF-Generierungsprozess notwendigen Modelle erstellt werden (v. a. das Graphical Definition Model und das Tooling Model). Unter Nutzung des entwickelten Editors sollen Kompositionsmodelle ausgewählter Szenarien in CRUISe erstellt werden. Dabei ist der Erstellungsworkflow des Modells unter bestimmten Gesichtspunkten zu untersuchen und zu bewerten (allgemeine Usability-Analyse, Grenzen der Technologie, Erweiterungsbedarf für komfortable Autorenumgebung, prinzipielle Einschränkungen graphischer Notation, Eignung für Roundtripengineering).
Zum Seitenanfang...Im Komplexpraktikum steht die Teamarbeit im Vordergrund. Es sollen also Erfahrungen hinsichtlich der Strukturierung komplexer Aufgaben, deren Zuordnung, Koordination und Lösung im Zusammenspiel von Einzelleistungen gewonnen werden. Ziel ist damit nicht nur die Implementierung stabiler Prototypen, sondern auch das Sammeln praktischer Erfahrung bei der Organisation von Teamarbeit, beim Projekt- und Zeitmanagement, etc. Für die Teilnahme am Praktikum bestehen folgende Anforderungen:
Die Einschreibung ist abgeschlossen.
Zum Seitenanfang...Bei erfolgreicher Teilnahme am Praktikum erhalten Sie einen Schein über 4 SWS. Es besteht (in Abhängigkeit von der Prüfungsordnung und Absprachen mit dem Prüfer) die Möglichkeit, ein Komplexpraktikum in eine Komplexprüfung einzubringen.
Zum Seitenanfang...Vorgegeben werden das Kompositionsmetamodell, welches die Grundlage zur Erstellung des Editors bildet, und grundlegende Regeln für die Teamorganisation. Die Konkretisierung der Aufgabenstellung und die Spezifikation des Pflichtenheftes werden vom Team unter Einbeziehung eigener Ideen vorgenommen. Ebenso werden zu Projektbeginn die Projektorganisation und eine erste Planung abgesprochen. In einer wöchentlich stattfindenden Projektbesprechung werden Zwischenergebnisse vorgestellt und die Arbeitsplanung verfeinert. Der Phase der Entwicklung des GMF-Editors schließt sich eine weitere zur Analyse und Evaluation an. Den Abschluss des Projektes bildet eine öffentliche Präsentation der Arbeitsergebnisse.
Zum Seitenanfang...Im Folgenden finden sich einige nützliche Links zu den einzelnen Aufgabenbereichen.