Diplomarbeit, 2007
141 Seiten, Note: 1.0
Abstract
Inhaltsverzeichnis
0 Einleitung
1 Das Web 2.0 und Ajax
1.1 Web 2.0 – Eine Einführung
1.2 Ajax – Eine Einführung
1.3 Möglichkeiten von Ajax anhand vorhandener Applikationen
1.3.1 Google Maps
1.3.2 Google Suggest
1.3.3 IBM BlueMail
1.4 Zusammenfassung
2 Ajax-Grundlagen
2.1 Asynchrone Kommunikation mit Frames und IFrames
2.1.1 Hidden Frame-Technik
2.1.2 Hidden IFrame-Technik
2.1.3 Vor- und Nachteile
2.2 Asynchrone Kommunikation mit XMLHttpRequest
2.2.1 XMLHttpRequest
2.2.2 Vor- und Nachteile
2.3 Datenformate bei der asynchronen Übertragung
2.3.1 HTML
2.3.2 Text
2.3.3 XML versus JSON
2.4 Zusammenfassung
3 Untersuchung von Ajax-Bibliotheken
3.1 Beliebteste Ajax-Bibliotheken
3.1.1 Scriptaculous
3.1.2 Dojo Toolkit
3.1.3 Yahoo! UI
3.1.4 Google Web Toolkit
3.1.5 Microsoft ASP .NET Ajax
3.2 Vergleich der Toolkits
3.2.1 Nutzung der Bibliothek
3.2.2 Behandlung des Vor-/Zurück-Button-, Lesezeichen-Problems
3.2.3 Anzahl, Benutzung und Erweiterbarkeit von Widgets
3.2.4 Abstraktion der Ajax-Kommunikation
3.2.5 Visuelle Effekte
3.2.6 Dokumentation
3.3 Zusammenfassung
4 OpenAjax-Allianz
4.1 Integrationsprobleme von Ajax-Bibliotheken
4.2 Idee von OpenAjax
4.3 Aktivitäten der Allianz
4.3.1 Marketing-/Kommunikationsaktivitäten
4.3.2 Technische Aktivitäten
4.3.3 Arbeitsgruppen
4.4 OpenAjax-Hub
4.5 Eclipse Ajax Toolkit Framework
4.6 Zusammenfassung
5 Analyse
5.1 Websphere Integration Developer
5.1.1 Human Task Webclient
5.1.2 Business Process Choreographer Explorer
5.2 Zielbestimmung
5.3 Funktionale Anforderungen
5.4 Nichtfunktionale Anforderungen
5.4.1 Gebrauchstauglichkeit
5.4.2 Erweiterbarkeit und Wiederverwendbarkeit
5.4.3 Performanz
5.4.4 Zuverlässigkeit
5.4.5 Technische Anforderungen
5.5 Auswahl der Entwicklungsumgebung
5.5.1 Dojo
5.5.2 Datenaustauschformat
5.5.3 Ajax für IBM Websphere Platform Early Program
5.5.4 Websphere Applikationsserver
5.5.5 Rational Software Architekt und Aptana
5.5.6 Microsoft Internet Explorer und Mozilla Firefox
5.5.7 Debugging mit Firebug
5.6 Gliederung in Teilprodukte
5.7 Zusammenfassung
6 Dojo
6.1 Dojo-Architektur
6.2 Aspektorientiertes Programmieren mit Dojo´s Ereignissystem
6.2.1 Ereignisbehandlung mit der connect()-Funktion
6.2.2 Ereignisbehandlung mit der subscribe()-Funktion
6.3 Widgetentwicklung mit Dojo
6.3.1 Nutzung von Widgets
6.3.2 Entwicklung von Widgets
6.3.3 Erweiterung von Widgets
6.4 Zusammenfassung
7 Design
7.1 Design der Benutzeroberfläche
7.1.1 Anfordern und Freigeben einer Human Task
7.1.2 Bearbeitung einer Human Task oder Subtask
7.1.3 Erzeugen einer Subtask
7.1.4 Hilfesystem
7.1.5 Aktualisierung von Daten
7.2 Architekturübersicht
7.3 Wiederverwendbare Komponenten
7.3.1 AccordionContainer
7.3.2 TableController
7.3.3 ComboBox
7.3.4 InputCollector
7.4 Anwendungsspezifische Komponenten
7.4.1 ToDo
7.4.2 Task
7.4.3 Subtask
7.4.4 SliderContainer
7.4.5 Help
7.5 Zusammenfassung
8 Implementierung
8.1 Ordnerstruktur
8.2 Aufbau der Oberfläche
8.3 Objektorientiertes Programmieren mit Dojo
8.4 Kommunikation mit dem Server
8.5 Comet
8.5.1 Grundlagen
8.5.2 Einsatz in diesem Projekt
8.6 Nutzung wiederverwendbarer Komponenten
8.6.1 TableController
8.6.2 InputCollector
8.7 Erweiterung anwendungsspezifischer Komponenten
8.7.1 ToDo-, Task- und Subtaskkomponente
8.7.2 SliderContainer
8.8 Zusammenfassung
9 Zusammenfassung und Ausblick
Listings
Ehrenwörtliche Erklärung
Die Diplomarbeit untersucht, wie Ajax die Gebrauchstauglichkeit geschäftlicher Webanwendungen beeinflussen kann und wann sein Einsatz sinnvoll ist. Dazu vergleicht sie Ajax-Bibliotheken und entwickelt einen prototypischen Webclient zur Bearbeitung menschlicher Aufgaben im Umfeld des IBM Websphere Integration Developer.
7.2 Architekturübersicht
Die Software wurde mit einer Model-View-Controller-Architektur (MVC) entwickelt. Dabei bilden die Oberflächenkomponenten in Form von Widgets die Sichten. Alle durch den Nutzer ausgelösten Ereignisse wie das Klicken auf Buttons in den einzelnen Sichten werden an Steuerungsklassen weitergeleitet, in denen die Programmlogik implementiert ist. Diese senden über entsprechende Hilfklassen, die die Netzwerkkommunikation kapseln eine Anfrage an den Server und werten anschließend bei Ankunft der Antwort diese aus und aktualisieren die einzelnen Sichten. Falls das MVC-Prinzip unbekannt ist, sei auf [34] verwiesen.
Alle Komponenten werden so entwickelt, dass sie nach dem Ajax-Ansatz asynchron gesteuert werden. Nachdem eine Anfrage an den Server gesendet wurde, blockiert die Komponente nicht und andere Funktionen können ausgeführt werden bis die Antwort vom Server eintrifft.
Wie in Kapitel 5 schon erwähnt, wird als Datenaustauschformat zwischen Client und Server JSON verwendet. Dabei werden jedoch zwei unterschiedliche Kommunikationsarten genutzt. Zum einen wird der normale Ajax-Ansatz eingesetzt, indem die Kommunikation vom Client initiiert wird. Der Client löst in diesem Fall ein Ereignis auf dem Server aus. Diese Art wird bei allen Nutzerinteraktionen mit der Anwendung eingesetzt.
Zum anderen wird die Kommunikation über das Comet-Protokoll eingesetzt. In diesem Fall wird ein Ereignis vom Server auf dem Client ausgelöst. Dies wird eingesetzt, um beispielsweise gemeinsame Daten wie die zur Verfügung stehenden Human Tasks auf allen angemeldeten Clients auf dem gleichen Stand zu halten. Ansonsten müsste eine eigene Logik implementiert werden, die ein ständiges Polling auf dem Server ausführt oder der Nutzer müsste einen Aktualisierungsbutton klicken. Comet wird in Kapitel 8.5 näher erläutert.
Auf der Serverseite wird ein Servlet verwendet, das Anfragen entgegennimmt und an die entsprechenden Java-Klassen weiterleitet, die sich danach um die Bearbeitung der Anfrage kümmern.
Im nächsten Abschnitt folgt eine Beschreibung des Designs und der Funktionalitäten von allen Komponenten, die für den Prototyp während dieser Diplomarbeit entwickelt werden. Die Implementierung dieser Komponenten, deren Verwendung sowie die Struktur der übertragenen JSON-Daten wird in Kapitel 8 erläutert.
0 Einleitung: Die Einleitung stellt den Einsatz von Ajax im geschäftlichen Umfeld und den Aufbau der Untersuchung vor.
1 Das Web 2.0 und Ajax: Das Kapitel erläutert Web 2.0 und Ajax anhand vorhandener Anwendungen wie Google Maps und IBM BlueMail.
2 Ajax-Grundlagen: Behandelt werden asynchrone Kommunikation mit Frames und XMLHttpRequest sowie gebräuchliche Austauschformate.
3 Untersuchung von Ajax-Bibliotheken: Fünf Bibliotheken werden unter anderem hinsichtlich ihrer Komponenten, Kommunikation und Dokumentation verglichen.
4 OpenAjax-Allianz: Das Kapitel beschreibt Integrationsprobleme verschiedener Bibliotheken und die Aktivitäten der OpenAjax-Allianz.
5 Analyse: Bestehende Anwendungen, Projektziele, Anforderungen und Entwicklungsumgebung des Prototyps werden vorgestellt.
6 Dojo: Im Mittelpunkt stehen Architektur, Ereignisbehandlung sowie Entwicklung und Erweiterung von Widgets.
7 Design: Das Kapitel erläutert Benutzeroberfläche, Architektur und Komponenten des Human-Task-Clients.
8 Implementierung: Beschrieben werden die technische Umsetzung, die Serverkommunikation, Comet und die Nutzung wiederverwendbarer Komponenten.
9 Zusammenfassung und Ausblick: Der Autor bündelt seine Erfahrungen und erörtert Perspektiven und Grenzen des Ajax-Einsatzes.
Ajax, Web 2.0, Gebrauchstauglichkeit, Webanwendung, Geschäftsprozesse, Human Tasks, Dojo, Ajax-Bibliotheken, OpenAjax, Prototyp, JavaScript, JSON, Comet, Benutzeroberflächen
Sie untersucht Ajax im geschäftlichen Anwendungskontext und beschreibt die Entwicklung eines prototypischen Webclients für menschliche Aufgaben.
Im Mittelpunkt stehen asynchrone Kommunikation, Ajax-Bibliotheken, Benutzeroberflächen, Dojo und die Entwicklung eines Human-Task-Clients.
Sie fragt, ob und wie Ajax die Gebrauchstauglichkeit verbessern kann und unter welchen Bedingungen sein Einsatz sinnvoll ist.
Er vergleicht Bibliotheken anhand ausgewählter Kriterien, entwickelt einen Prototyp iterativ und beschreibt Gebrauchstauglichkeitstests mit Mitarbeitern.
Er reicht von den technischen Ajax-Grundlagen und dem Bibliotheksvergleich bis zu Anforderungen, Entwurf und Implementierung des Clients.
Wichtige Begriffe sind Ajax, Web 2.0, Dojo, Gebrauchstauglichkeit, Human Tasks, JSON und Comet.
Verglichen werden Scriptaculous, Dojo Toolkit, Yahoo! UI, Google Web Toolkit und Microsoft ASP .NET Ajax.
Comet dient dazu, angemeldete Clients über Änderungen zu benachrichtigen und gemeinsame Aufgabendaten aktuell zu halten.
Er unterstützt unter anderem das Anfordern, Freigeben und Bearbeiten menschlicher Aufgaben sowie das Erzeugen und Zuordnen von Teilaufgaben.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

