MMT-Logo
Sitemap | English

Inhalt

Komplexpraktikum Multimediatechnik 1

TravelAgent: Entwicklung eines webbasierten Reiseplaners

PersonDr.-Ing. Stefan Pietschmann
PersonDr.-Ing. Andreas Rümpel

Zeit mittwochs, 2. DS (09:20 bis 10:50 Uhr), erstmals am 08.04.2009
Raum INF 2042
Zeitrahmen 0/0/4 SWS

Aktuelles

Zum Seitenanfang... Zum Seitenanfang...

Kurzbeschreibung

Rich Mashup UI

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 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).

Die erstere Variante von Anwendungen folgt dem Prinzip der Thin-Server-Architektur, bei der die gesamte Präsentationslogik (z. B. in Form von JavaScript) auf dem Client liegt und von dort auf Backend-Dienste zugreift. Eine prominentes Framework zu deren Erstellung ist Qooxdoo. Es ermöglicht u. a. die objektorientierte Entwicklung mit JavaScript ähnlich wie bei normalen Desktop-Anwendungen, verfügt über eine umfangreiche Bibliothek von Oberflächenkomponenten, Data-Binding-Mechanismen u. v. m.

Zum Seitenanfang... Zum Seitenanfang...

Aufgabe

Im Rahmen des Komplexpraktikums soll eine webbasierte Reiseplanungsanwendung umgesetzt werden. Technologisch soll sie auf dem JavaScript-Framework Qooxdoo aufsetzen und somit als clientseitige Anwendung im Browser laufen. Im Hintergrund sollen verschiedene Dienste (RSS-Feeds, JS-APIs, Web- und REST-Services, etc.) angebunden werden, die die benötigte Geschäftslogik und Daten liefern, z. B. Veranstaltungs-, Hotel- und Fahrplanauskünfte.

Die zu entwickelnde Anwendung adressiert ein verbreiteten Anwendungsfall: die Reiseplanung. Trotz einer Vielzahl existierender Reiseportale ist diese heutzutage sehr aufwändig. Die Auswahl einer Veranstaltung oder Konferenz, die Suche passender Hotels in der Umgebung, die Abwägung von Anreisemöglichkeiten (Auto, Zug, Flugzeug, etc.) alles unter Beachtung bestimmter Budgets ist über viele Anwendungen bzw. Dienste verteilt. Ziel des Komplexpraktikums ist es deshalb, eine integrierte Webanwendung zu entwickeln, die diese Dienste miteinander verbindet und den Nutzer von der Planung einer beliebigen Reise bis hin zur Buchung unterstützt.

Zum Seitenanfang... Zum Seitenanfang...

Voraussetzungen

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:

Zum Seitenanfang... Zum Seitenanfang...

Leistungsnachweis

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... Zum Seitenanfang...

Ablauf

Vorgegeben werden ein Lastenheft, grundlegende Regeln für die Teamorganisation und ein Rahmen für die Implementierungs- und Spezifikationsumgebung. 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. Den Abschluss des Projektes bildet eine öffentliche Präsentation der Arbeitsergebnisse.

Zum Seitenanfang... Zum Seitenanfang...

Material

Im Folgenden finden sich einige nützliche Links zu den einzelnen Aufgabenbereichen.

Zum Seitenanfang... Zum Seitenanfang...