Anwendungen mit Ajax modernisieren

20.09.2007
Von Patrick Thomas
Die Web-Entwicklungstechnik hat zu einem Hoch in der Javascript-Programmierung geführt. Ob sie sich für Unternehmensanwendungen lohnt, muss im Einzelfall bewertet werden.

Obwohl uns Web-Techniken seit über zehn Jahren begleiten, entspringt die Mehrzahl der Unternehmensanwendungen klassischen Client-Server- und Mainframe-Konzepten. Die Migration zu Web-basierenden Benutzeroberflächen scheiterte bislang an der notwendigen Interaktivität und Funktionalität, die in konventionellen Web-Seiten nicht darstellbar waren.

Mittels Ajax-Scripting lassen sich nun Web-Anwendungen realisieren, die einer klassischen Desktop-Anwendung stark ähneln. Autovervollständigung, direkte Validierungen, kontextbezogene Datenaktualisierung sowie Drag-and-Drop-Funktionen erhöhen den Benutzerkomfort, beschleunigen die Bedienung und reduzieren Fehlerquellen. Unternehmen müssen ihre IT-Infrastruktur für Ajax nicht spezifisch anpassen. Im Gegensatz zu Client-Umgebungen wie Flash oder Java ist für Ajax keinerlei Browser-Plug-in oder sonstige Runtime-Engine erforderlich.

Anwendungsbeispiele für Ajax

  • Komplexe Desktop-Clients wie in Call-Centern lassen sich mit Ajax umsetzen und deren unterschiedliche PC-Oberflächen in einer einzigen, konsistenten Web-Benutzerschnittstelle konsolidieren.

  • Customer-Relationship-Management-Software (CRM) der neuesten Generation kann im Web-Browser detaillierte Kundendaten darstellen, Web-gestützte GIS-Dienste wie Google Maps einbetten und Telefonnummern direkt via Internet-Telefonie (Voice over IP) anwählen.

  • Intranet-Anwendungen in Unternehmen wie Reisekosten-Abrechnungen, Purchasing-Anwendungen oder Online-Urlaubsanträge lassen sich ebenfalls mit Ajax umsetzen.

  • Im Internet erfüllen moderne Web-Angebote die Servicebedürfnisse von Kunden und Interessenten im Self-Service-Verfahren.

  • Ajax ermöglicht Banken und Versicherungen, komplexe Produkte und Dienstleistungen im Web-Browser abzubilden und in interaktiven Online-Rechnern simulierbar zu machen

Ajax-Entwicklungsstrategien für Unternehmen

Strategie

Beschreibung

Vorteil

Nachteil

Einsatzbereich

Do it yourself

Vollständige Eigencodierung von Ajax-Scripten.

Kontrolle über komplette Skriptbasis.

Hoher Aufwand und fehleranfällig.

Wenn Sie eine feine Kontrolle über die Ajax-Funktionalität benötigen.

Ajax-Bibliothek

Einsatz einer Javascript-Bibliothek für Ajax wie das Dojo Toolkit oder die Yahoo User Interface Library.

Verringert Javascript-Programmieraufwand.

Eventuell müssen mehrere Javascript-Bibliotheken mit unterschiedlicher Syntax unter einen Hut gebracht werden.

Wenn Sie sich unmittelbar Aufwand sparen wollen, um die ge-wünschte Ajax-Funktionalität zu realisieren.

Ajax-Framework

Verwendung eines Client-Server-Frameworks wie Java Server Faces (JSF).

Ermöglicht die Entwicklung wiederverwendbarer Ajax-Komponenten.

Einfaches Rapid Prototyping verleitet zur Unterschätzung des Aufwands für die Programmierung nichttrivialer Anwendungen.

Wenn Sie von Werkzeugen wie Sun Java Studio Creator profitieren wollen, um Ajax-Web-Anwendungen per Drag-and-Drop zu konzipieren.

Java-Framework

Einsatz von Frameworks wie GWT, um Ajax-Anwendungen in Java zu programmieren.

Keine speziellen Javascript-Kenntnisse erforderlich, reine Java-Programmierung.

Generiert komplexen Javascript-Code, der nur schwer direkt modifizierbar ist.

Wenn Sie ausschließlich in Java programmieren möchten.

Was zuvor zu prüfen ist

Vor der Entscheidung für eine Anwendungsmodernisierung oder Neuentwicklung mit Ajax steht ein Blick auf die vorhandene Infrastruktur an. Zentral gesteuerte Unternehmens-IT zeichnet sich in der Regel durch homogene Komponenten auf der Client-Seite aus. Dennoch ist zu prüfen, ob aktuelle Versionen der Browser Internet Explorer oder Firefox installiert sind und eventuell zum Einsatz kommende Ajax-Frameworks diese Browser-Versionsnummern unterstützen. Dies gilt besonders für Browser, wie sie in Handhelds und Smartphones arbeiten. Ein umfassender Einsatz von Ajax-Scripting mit Javascript kann ältere oder hardwareseitig schwächer ausgestattete Endgeräte überfordern.