Lade Inhalt...

Rich Internet Application - Potenzial gegenüber Desktop Applikationen

Bachelorarbeit 2010 31 Seiten

Informatik - Internet, neue Technologien

Leseprobe

Inhaltsverzeichnis

Zusammenfassung

Abstract

Abbildungsverzeichnis

Abkürzungsverzeichnis

1. Einleitung
1.1. Motivation
1.2. Zielsetzung
1.3. Begriffserklärung Rich Internet Application
1.4. Abgrenzung RIAs von „normalen“ Webanwendungen

2. RIA Aufbau
2.1. Browser unabhängige RIAs
2.1.1. JavaFX und Java Web Start
2.1.2. Representational State Transfer (REST)
2.1.3. Zusammenfassung
2.2. Browser abhängige RIAs - Ajax Anwendungen
2.2.1. Definition Ajax
2.2.2. Datenübermittelung
2.2.3. Crossbrowser-Kompatibilität
2.2.4. Zusammenfassung
2.3. Plug-in-basierte RIAs
2.3.1. Analyse Verbreitung RIA Plug-Ins
2.3.2. Adobe Flash Player
2.3.3. Adobe Flex
2.3.4. Zusammenfassung

3. Analyse RIA Potenzial
3.1. Nichtfunktionale Anforderungen an eine Applikation
3.2. Gegenüberstellung RIA und Desktop Applikation
3.3. Vergleich der RIA Technologien
3.4. Erfolgsfaktor Software as a Service /Application Service Provider
3.4.1. Software as a Service (SaaS)
3.4.2. Unterschied SaaS und ASP Modell
3.4.3. Potenzial

4. Fazit

Literaturverzeichnis

Zusammenfassung

IT Technologien müssen nicht nur wohldurchdacht sein, sondern benötigen auch einen peppigen Namen, um sich Gehör zu verschaffen. Rich Internet Application (RIA) war einer der Begriffe, der um die Web 2.0 Schlagwortwolke entstanden ist. Hinter dem Begriff RIA steckt eine Reihe von Technologien, gebündelt mit dem Ziel, reichhaltige Internet Anwendungen zu schaffen, welche ein neues Zeitalter von Anwendungen einläuten.

Seit der erstmaligen Nennung des Begriffes im Jahr 2002 ist ein Hype unter den Big Playern in der Software Branche ausgebrochen. Mittlerweile sind die unterschied- lichsten Ansätze und Technologien auf den Markt gekommen. Diese Arbeit wird die drei unterschiedlichen RIA Kategorien und deren potentiell zukunftsträchtigsten Technologien unter die Lupe nehmen. Aufbauend auf die Analyse der Technologien wird der aktuelle Stand der Technik mit dem der Desktop Applikationen verglichen.

Abstract

This thesis was inspired by a hot topic which came up last years in the IT industry, Rich Internet Applications (RIAs). RIAs are not to be confused with Web Applications, the function possibilities of RIAs are similar to those of Desktop Applications and they are delivered via the internet. A lot of people think that this new technology has the potential to start a new era of applications. This thesis will provide a state-of-the-art overview and select one example of each RIA category which has the most potential.

The goal is to analyze the potential of RIAs compared to Desktop Applications in a business environment. For the analysis it is necessary to know about the nonfunc- tional requirements which an Application must fulfill to be successful. Important ad- vantages of RIAs arise when aligned with models like Software as a Service (SaaS) or Application Service Provider (ASP). The alliance between SaaS and RIA is com- parable to Desktop Applications. The three different types of RIAs, browser inde- pendent, browser dependent and browser plug-in will be analyzed and the differ- ences contrasted to distinguish which of them has the potential to be a competitor to Desktop Applications.

Abbildungsverzeichnis

Abb. 1-1: Eigene Darstellung

Abb. 2-1: Übersicht über die REST Bestandteile

Abb. 2-2: Vergleich des traditionellen Modells einer Webanwendung (links) mit dem Ajax Modell für Webanwendungen (rechts)

Abb. 2-3: Zusammensetzung des Inhalts, der (A) an eine klassische Web- anwendung bzw. (B) an eine Ajax-Anwendung ausgeliefert wird. Während der Nutzung der Anwendung erhöht sich der kumulierte Datenverkehr (C)

Abb. 2-4: Analyse der Verbreitung von RIA Plug-Ins

Abb. 3-1: SaaS Szenario

Abb. 3-2: Architektur-Unterschiede zwischen SaaS und ASP

Abkürzungsverzeichnis

Abbildung in dieser Leseprobe nicht enthalten

1. Einleitung

1.1. Motivation

Die IT-Brache ist im ständigen Umbruch, Standards, die in anderen Branchen über Jahrzehnte gelten, sind in der IT-Branche meist nach einigen Jahren nicht mehr gültig. Zwar gibt es vereinzelt Technologien oder Denkansätze mehrere Jahre lang, doch können sich diese meist nicht durchsetzen. Erst eine Kombination von Technologien, Denkansätzen und auch Geschäftsmodellen verpackt mit einem gut klingenden Namen, hat das Potenzial, einen neuen Trend einzuläuten.

Ein solch besagter Trend könnte durch Rich Internet Application (RIA) ausgelöst werden. RIA wird als Technologie angesehen, welche zahlreiche Technologien bün- delt. Die Technologie hat sich zügig in den letzten Jahren entwickelt und Wurzel ge- fasst. Jeder, der mit dem Internet arbeitet, ist schon irgendwo mit der RIA Technolo- gie in Berührung gekommen. Da sie nicht über das nötige Basiswissen verfügen, werden die meisten Internetnutzer jedoch gar nicht bemerkt haben, dass sie mit RIAs gearbeitet haben.

Software Unternehmen und deren Kunden müssen sich in Zukunft vermehrt mit dem Thema RIA auseinandersetzen und weitreichende Entscheidungen treffen. Man wird sich fragen müssen, ob man Software auf klassische Art als Desktop Anwendung oder über das Internet als RIA nützen bzw. zur Verfügung stellen möchte. Wann im- mer es zu einer Entscheidung zwischen Desktop Anwendung und RIA kommt, muss ein weiterer wichtiger Faktor mitberücksichtigt werden. Viele Vorteile, die RIAs im Vergleich zu Desktop Anwendungen bieten, kommen erst durch die Kombination mit dem Modell Software as a Service (SaaS) oder Application Service Provider (ASP) zur Geltung.

1.2. Zielsetzung

Diese Bachelor Arbeit soll Personen mit einem breiten IT Basiswissen die not- wendigen Informationen liefern, um einen Überblick über den aktuellen Stand der Technik und die damit verbundenen Möglichkeiten zu bekommen. Die Arbeit baut sich wie in Abbildung 1-1 ersichtlich auf, betrachtet die unterschiedlichen RIA Tech- nologie Ansätze und inwieweit heute schon Desktop Applikationen im unternehmeri- schen Umfeld eingesetzt werden können. Um das Potential hervorzuheben, werden die Kombinationen RIA und SaaS/ASP analysiert und die technischen Vorteile auf- gezeigt.

Abbildung in dieser Leseprobe nicht enthalten

Abb. 1-1: Eigene Darstellung1

1.3. Begriffserklärung Rich Internet Application

Der Begriff Rich Internet Applikation (RIA) entstand in derselben Zeit wie auch andere populäre Begriffe, zum Beispiel Web 2.0. Erstmals wurde der Begriff in Marketing Unterlagen von Macromedia im März 2002 verwendet. Das Unternehmen wollte mit dem Begriff darauf hinweisen, dass die Flash Technologie voll funktionsfähige, webbasierende Applikationen erstellen kann.2

RIAs sind Webapplikationen der nächsten Generation, deren Features und Funktionalitäten denen einer Desktop Applikation entsprechen. Frühe Internet Appli- kationen unterstützten nur eine einfache HTML basierende grafische Benutzerober- fläche (GUI3 ). Durch die geringen Funktionalitätsmöglichkeiten entsprachen das Aus- sehen und die Benutzerführung der ersten Internet Applikationen nicht denen einer Desktop Applikation. Die langsame Internet Verbindung im Vergleich zur aktuellen Technologie führte zu dem negativen Image „World Wide Wait“ von Internet Applika- tionen.4

1.4. Abgrenzung RIAs von „normalen“ Webanwendungen

Eine klare, transparente Linie zwischen RIAs und „normalen“ Webanwendungen kann nicht gezogen werden. Der Begriff RIA beinhaltet diverse Technologien und Umsetzungsmöglichkeiten, daher wird versucht, über Eigenschaften eine Abgren- zung zu schaffen. Es kann durchaus vorkommen, dass auch eine „normale“ Weban- wendung die eine oder andere dieser Eigenschaften besitzt, aber trotzdem nicht den RIAs zu zuordnen ist.

Ein Hauptindiz für eine RIA ist der Einsatz von dementsprechenden Technologien (siehe Kapitel 2). RIAs zielen drauf ab, täuschend ähnlich den Desktop Anwendungen zu sein, folglich sind Aussehen und Verhalten von Kontrollelementen, Drag and Drop Funktionalität, u.v.m. Indikatoren. Weitere Basiseigenschaften von RIAs sind, dass Seiten nicht notwendigerweise aktualisiert werden müssen und dass Clientaktivitäten ohne Serverbeanspruchung durchgeführt werden können5.

2. RIA Aufbau

Über die Jahre haben sich verschiedenste Ansätze etabliert, um eine RIA zu entwi- ckeln. Im Allgemeinen hat sich folgende grundsätzliche Kategorisierung durchge- setzt:

- Browser unabhängig
- Browser abhängig (AJAX)
- Browsererweiterung (Plug-In)

2.1. Browser unabhängige RIAs

Für die Entwicklung von Browser unabhängigen RIAs stehen mehrere RIA Technolo- gien zur Verfügung. Hierzu zählen unter anderem Adobes AIR und Sun Microsys- tems JavaFX.

Rüdiger Spies, Analyst des IT Beratungsunternehmen IDC, räumt JavaFX ein größeres Potenzial gegenüber der Konkurrenz ein. Bestehende Java Applikationen können mit Hilfe von JavaFX SaaS tauglich gemacht und verschönert werden. Ein weiterer Vorteil ist die große bestehende Java Entwickler Community, für welche die neue JavaFX Skriptsprache zusätzliche Erleichterungen bringt. Vorgreifend auf das Thema SaaS/ASP wendet sich dieses Kapitel ausschließlich der JavaFX Technologie von Oracles Tochterunternehmen Sun Microsystems zu.6

2.1.1. JavaFX und Java Web Start

Am 4. Dezember 2008 wurde mit dem Verkauf der Version 1.0 der neuen Produkt- palette „JavaFX“ von Sun Microsystems begonnen. Kern dieser Produktpalette ist die Programmiersprache JavaFX Script, welche einfaches und elegantes User Interface Design ermöglicht. Ein großer Vorteil von JavaFX für Entwickler ist, dass es sämtli- che Möglichkeiten von Java nützt und die Millionen an bestehenden Java Klassen verwendet. Java FX Script selbst ist eine objektorientierte und funktionale Program- miersprache. Der Source Code wird in Java Bytecode kompiliert, womit auch auf Java Code zurückgegriffen werden kann.7

Um einen Browser unabhängigen Start der Software zu ermöglichen, ist es notwen- dig, Java Web Start zu verwenden. Java Web Start ist eine Technologie, welche das Starten einer Anwendung außerhalb eines Browser erlaubt. Für die Programm In- stance wird eine Java Runtime Environment (JRE) benötigt, welche beim ersten Start der Anwendung mit allen weiteren nötigen Dateien vom Webserver heruntergeladen wird.

Nach jedem weiteren Start der Anwendung überprüft Java Web Start die Client Ver- sion mit der Version am Webserver und lädt sich gegebenenfalls ein Update herun- ter. Das Starten der Anwendung kann über einen Link in einer Webseite erfolgen, welcher auf die Java Network Launching Protocol (JNLP) Datei verweist bzw. über ein Desktop Start Icon, um eine Desktop Anwendungsähnlichkeit zu erreichen. In der JNLP Datei sind alle Informationen gespeichert, wie die Anwendung über Java Web Start aufgerufen werden soll.8

2.1.2. Representational State Transfer (REST)

Das Akronym REST entstammt der Dissertation von Dr. Roy Fielding und kann als Architekturstyle bezeichnet werden. REST ist eine Sammlung von technologie- unabhängigen Prinzipien basierend auf dem Hypertext-Transfer-Protokoll (HTTP). Alle Komponenten des Systems kommunizieren über Schnittstellen und sind über einen Hypermedia Link (z.B. URL9 ) eindeutig identifizierbar. Jegliche Kommunika- tion ist zustandslos, das heißt, der Empfänger hat alle nötigen Daten und Infor- mationen, um die Nachricht zu verstehen. Durch den Architekturstyle können Daten in jeder Schicht gecached werden. Diese Prinzipien der Architekturart machen REST zu einer idealen Datentransfermöglichkeit für Browser unabhängige RIAs.10

Abbildung in dieser Leseprobe nicht enthalten

Die Abbildung 2-1 veranschaulicht eine REST Architektur, welche eine logische

Software Architektur mit physikalischen Netzwerkelementen kombiniert. In der Abbildung werden die REST Prinzipien dargestellt. Die physikalischen Komponenten sind zum besseren Verständnis grau hinterlegt.

- Die Kommunikation erfolgt über HTTP untereinander
- REST Services können auch miteinander kommunizieren
- Firewalls zwischen den Clients und den REST Services können aus Sicher- heitsgründen zwischengeschaltet werden
- Eine Lastverteilungshardware vor den Servern sorgt für Skalierbarkeit
- Clients beinhalten optional Caches für die Effizienzsteigerung
- Services können Caches bereitstellen zu Back-End Systemen
- Es gibt weder Einschränkungen hinsichtlich der Clientanzahl pro Services noch umgekehrt11

Abbildung in dieser Leseprobe nicht enthalten

Abb. 2-1: Übersicht über die REST Bestandteile12

2.1.3. Zusammenfassung

Die JavaFX Technologie steckt noch in ihren Kinderschuhen und wird seitens des Herstellers permanent verbessert, erweitert und optimiert. Um bestehende Software Produkte auf den Markt durch JavaFX webtauglich zu machen, benötigt es einige Jahre Entwicklung und Tests. Erst nachdem größere Software Applikationen durch die JavaFX Technologie webtauglich gemacht wurden, wird das gesamte Potential ersichtlich werden.

Durch die Browserunabhängigkeit hat diese Art von RIAs einen klaren Vorteil gegen- über den anderen Typen. Der User sieht optisch keinen Unterschied zu einer Desk- top Applikation. Für komplexe Software Applikationen ist der Browserrahmen ein stö- rendes Element und benötigt zusätzlich Platz, welcher sonst für das Programm be- nutzt werden könnte.

Eine einhellige Meinung von Experten über die Grenzen und Probleme der Technologie hat sich noch nicht gebildet. Der Grundtenor besagt, dass sich die Technologie schnell weiterentwickeln muss, um sich auf dem RIA Markt durchzusetzen.

[...]


1 Eigene Darstellung.

2 Vgl.: Sheiko, Dmitri (2007): Rich Internet Application And Content Management. http://ajax.phpmagazine.net/2007/03/rich_internet_application_and.html [Stand 22.02.2010].

3 Graphical User Interface.

4 Vgl.: Deitel, Paul J./Deitel, Harvey M. (2008): AJAX, Rich Internet Applications, and Web Development for Programmers. 1. Aufl. Bosten: Prentice Hall International. S. 32.

5 Vgl.: Pfeil, Christian (2008): Adobe AIR - RIAs für den Desktop entwickeln: Know-how für HTML/Ajax- und Flash/Flex- Entwickler. München: Addison-Wesley. S. 1 - 4.

6 Vgl.: Pichler, Thomas (2008): JavaFX startet offiziell ins Rich-Internet-Rennen. Offenheit ist ein Vorteil gegenüber Konkurrenz- Technologien. http://www.pressetext.at/news/081204018/javafx-startet-offiziell-ins-rich-internet-rennen/ [Stand 21.03.2010].

7 Vgl.: Weaver, James L./Gao, Weigi/Chin, Stephen/Iverson, Dean (2009): Pro JavaFX Platform. Script, Desktop and Mobile RIA with Java Technology. 1. Aufl: Apress. S. 1 - 7.

8 Vgl.: Clarke, Jim/Connors, Jim/Bruno, Eric (2009): JavaFX: Developing Rich Internet Applications. 1. Aufl. Amsterdam: Addison-Wesley Longman. S. 256 - 258.

9 Uniform Resource Locator.

10 Vgl.: Clarke/Connors/Bruno (2009): JavaFX: Developing Rich Internet Applications. S. 259 - 264.

11 Vgl.: Clarke/Connors/Bruno (2009): JavaFX: Developing Rich Internet Applications. S. 261.

12 Clarke/Connors/Bruno (2009): JavaFX: Developing Rich Internet Applications. S. 261.

Details

Seiten
31
Jahr
2010
ISBN (eBook)
9783656096030
ISBN (Buch)
9783656095798
Dateigröße
986 KB
Sprache
Deutsch
Katalognummer
v184676
Institution / Hochschule
Campus02 Fachhochschule der Wirtschaft Graz
Note
2
Schlagworte
RIA Rich Internet Application Desktop Applikationen JavaFX Java Web Start Software as a Service SaaS ASP Ajax Adobe

Autor

Teilen

Zurück

Titel: Rich Internet Application - Potenzial gegenüber Desktop Applikationen