und Thin Clients.

Transcription

und Thin Clients.
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
Entwicklung von Mobilkommunikationsanwendungen
im Spannungsfeld zwischen Rich und Thin Clients
Diederich Wermser, Fachhochschule Braunschweig/Wolfenbüttel
Frank Hauptmann, Netzlink Informationstechnik GmbH, Braunschweig
Vigo Sandhaus, Fachhochschule Braunschweig/Wolfenbüttel
Kontakt: [email protected]
Kurzfassung
Die Entwicklung von Anwendungslösungen auf Basis der mobilen Datenkommunikation kann sowohl vom klassisch kommunikationstechnischen Blickwinkel "Netzelemente und Protokolle" als auch unter der Perspektive
"Verteilte Softwaresysteme" gesehen werden.
Die Funktionen von Anwendungslösungen können entweder weitestgehend auf zentralen Servern realisiert werden. Auf den mobilen Endgeräten sind dann als einzige Funktionen die Darstellung der (grafischen) Nutzeroberfläche und die Möglichkeiten zur Aufnahme und Weiterleitung von Nutzeraktionen realisiert ("Thin Client").
Oder es erfolgt eine Verteilung der Funktionen zwischen zentral im Netz angeordneten Elementen und den mobilen Geräten, z.B. nach dem Prinzip "Maximise Coherence and Minimise Interaction", wie beim Entwurf verteilter Systeme üblich. In diesem Fall werden neben der Nutzeroberfläche weitere wesentliche Funktionen der Anwendungslösung durch auf den mobilen Geräten ablaufende Software realisiert ("Rich Client").
Der Beitrag diskutiert Vor- und Nachteile beider Lösungsvarianten, auch in Hinblick auf unterschiedliche Anwendungsbereiche. Die verschiedenen Aspekte werden durch Beispiele mobiler Anwendungslösungen illustriert,
die von den Autoren realisiert wurden.
1
Rich Client und Thin Client
nologie (z.B. Embedded, Java, Web vgl. [3]) klassifiziert.
Die Frage nach der Client-Architektur war in den
zurückliegenden Jahren eine der meistdiskutierten
Problemstellungen in der IT. Mit der Einführung
des Browsers als Front-End für Unternehmensanwendungen im leitungsgebundenen Internet entwickelte sich eine heftige Diskussion, ob der Browser
als Thin Client oder ein formularbasierter Rich
Client die richtige Wahl ist. Die Verfechter des
Rich Client führten hier meist die überlegene Usability und mögliche Offlinefähigkeiten ihrer Technologien ins Feld. Dagegen argumentierten die
Verfechter des Browsers als Client mit stark vereinfachter Verteilung der Anwendungen und daraus
deutlich sinkenden TCOs (Total Cost of Ownership). Das Web-Paradigma hat sich laut GartnerGroup heute durchgesetzt. In 2002 sollen mehr als
70% aller Anwendungsprojekte auf den Browser als
Nutzerschnittstelle gesetzt haben.
Die in diesem Artikel verwendete Abgrenzung
zwischen den einzelnen Client-Paradigmen klassifiziert nach dem Ort, an dem die Geschäftslogik
ausgeführt wird:
Der Rich (auch Fat) Client enthält fest einprogrammierte Anwendungslogik. Die Anwendung
läuft auf Server und Client verteilt. Die Darstellung
geschieht auf dem Client (z.B. SAP-GUI, 2-Tier
Datenbankanwendung). Softwareupdates können
nur durch manuelle Installation der Software auf
der Client-Hardware erfolgen. Bei Verwendung von
Rich Clients ist die Anwendung auch im Offlinebetrieb voll nutzbar. Lediglich der Online-Zugriff
auf Daten ist hier nicht möglich. Ein weiterer Vorteil ist, dass Rechenleistung vom Server auf den
Client verlagert werden kann. Der größte Nachteil
beim Einsatz von Rich Clients ist der mit der Anzahl der Nutzer steigende Wartungsaufwand. Die
Anwendungssoftware muss bei Updates und Neuinstallationen jeweils manuell auf den Clients installiert werden. Aus diesem Grund schneidet dieses
Zur Frage der Abgenzung zwischen Thin, Rich und
neuerdings auch Smart Clients gibt es verschiedene
Ansätze. Häufig wird nach der verwendeten Tech-
1/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
Client-Paradigma bei TCO-Berechnungen regelmäßig am schlechtesten ab.
diesen Endgeräten sind verschiedene Aspekte von
Bedeutung, die sich auch auf die Entscheidung für
Thin oder Rich Clients auswirken:
Ein Thin Client repräsentiert lediglich die Darstellungsschicht einer Anwendung. Er führt keinerlei
eigene Programmlogik aus (Webbrowser der 1.
Generation). Die Anwendungslogik läuft auf komplettt auf dem Server. Der Client übernimmt nur die
Darstellung. Aus vielen Gründen sind Thin Clients
heute weit verbreitet (vgl. [1]):
•
Die Mobilfunkbetreiber weisen den mobilen
Endgeräten IP-Adressen typisch nur temporär
zu (DHCP), teilweise werden auch nur nicht
routbare IP-Adressen vergeben. Dies bedingt
aufwändige Lösungen, um serverseitig initiierte Kommunikationsvorgänge möglich zu machen („Push-Funktion“). Abhilfe bieten hierfür
bisher nur mobile VPN – Dienste, die von einigen Betreibern angeboten werden bzw. in Vorbereitung sind.
•
Niedrige Bitraten und hohe Signallaufzeiten
stellen höhere Anforderungen an die Synchronisation von Protokollabläufen als bei Festnetzkommunikation.
•
Heutige kompakte mobile Endgeräte bieten
schlechte Voraussetzungen, um Nebenläufigkeit von Prozessen zu realisieren (siehe Ausführungen unten). Nebenläufigkeit ist insbesondere erforderlich, wenn gleichzeitig Nutzinteraktionen und timing-gerechte Reaktionen
auf Kommunikations-Protokolle auf Anwendungs-Ebene bedient werden müssen. Abbildung 2-1 illustriert das Problem der Nebenläufigkeit.
Ein Smart Client übernimmt die Darstellungsschicht einer Anwendung und kann vom Server aus
dynamisch mit Anwendungslogik versehen werden.
Die Anwendung läuft dabei auf Client und Server
(z.B. Webbrowser mit JavaScript/ ActiveX, .NET
Compact Framework, Java-Applets, Java Web
Start). Ein Smart Client ist also eine Mischung aus
einem Thin und einem Rich Client. Smart Clients
haben, genauso wie Rich Clients, gegenüber Thin
Clients den großen Vorteil der Offline-Fähigkeit
([2]). Das bedeutet, dass nicht immer eine Verbindung mit dem Server bestehen muss, um mit der
Anwendung arbeiten zu können. Weiterhin ermöglichen erst Smart Clients die Integration von Peripheriegeräten, wie z.B. Barcode Scannern oder
Druckern. Gegenüber Rich Clients entfällt das
Problem der Software-Verteilung. Die Clients werden beim Zugriff auf die Anwendung vom Server
aus automatisch mit der Software oder mit Updates
versorgt.
•
Bei Unternehmensanwendungen ist häufig eine
größere Anzahl mobiler Endgeräte im Einsatz.
In vielen Fällen kommen die Nutzer der Endgeräte nur unregelmäßig oder selten zum Firmengebäude. Eine Möglichkeit zur Fernprovisionierung und -wartung der Anwendungssoftware auf den mobilen Endgeräten über die
Funkschnittstellen ist daher unverzichtbar.
•
Mobile Endgeräte mit leistungsfähigen Prozessoren und Betriebssystemen (z.B. PDAs)
zeichnen sich heute meist durch kurze BatterieStandzeiten aus und sind damit für viele Anwendungsbereiche
wenig
geeignet.
•
Für sicherheitsrelevante Anwendungen, wie
z.B. im Bereich der Fernüberwachung technischer Anlagen, sind entsprechende Rich
Clients erforderlich, um eine Alarmierung auch
bei Ausfall des zugehörigen Servers sicher zu
stellen.
2
•
Die heute verfügbaren Werkzeuge zur Entwicklung von Anwendungslösungen für kompakte mobile Endgeräte als Zielumgebung sind
nach Erfahrung der Autoren heute noch sehr
unbefriedigend (siehe Abschnitt 4). Insbesondere die Kompatibilität zwischen Emulatoren
Thin Clients können sehr einfach in heterogenen
Umgebungen ausgeführt werden. Die Darstellung
wird vom Server mittels einer standardisierten
Markup Language an den Client übertragen (z.B.
WML, HTML, XHTML). Für den Server ist es
dabei belanglos, auf welcher Hardwareplattform der
Client läuft. Anwendungen können relativ einfach
eine weltweite Verteilung erreichen. Auf dem
zugreifenden Client ist lediglich die Installation
eines Browsers nötig.
Der größte Nachteil des Thin Clients ist dagegen
die mangelnde Offline-Fähigkeit und die vergleichsweise hohen Latenzzeiten bei der Dateneingabe.
Mit dem relativ neuen Konzept des Smart Clients
wird versucht, die Nachteile sowohl der Thin als
auch der Rich Clients zu überwinden.
Aspekte für die Entwicklung
mobiler Anwendungen
Für die Entwicklung von Anwendungslösungen
unter Nutzung von kompakten mobilen Endgeräten
und drahtlosen Kommunikationsverbindungen zu
2/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
in der Entwicklungsumgebung und der Ausführungsumgebung auf der jeweiligen Zielhardware
ist
meist
unzureichend.
•
Die Portierbarkeit von Client-Software zwischen verschiedenen Endgeräte-Typen ist eine
häufige Forderung von Anwendern, auch um
Investitionssicherheit zur erreichen. Thin
Client Lösungen, die mit Standard-Browsern
arbeiten, bieten diesbezüglich offensichtlich
Vorteile.
•
Die Nutzung von Standard-Browsern über
Schnittstellen zur drahtlosen Nahbereichskommunikation (Bluetooth und Infrarot (IrDA)) wird heute typisch noch nicht unterstützt.
Anwendungen auf Basis dieser Kommunikationsschnittstellen müssen also mit anderen
Client-Lösungen arbeiten. Dies gilt nicht für
WLAN, das für PDAs meist angeboten wird.
3
Abbildung 3-1: Prinzip der Nebenläufigkeit
JAVA ist von der Konzeption her plattformunabhängig. Durch sogenannten JSRs (Java Specification Request) werden Klassen und Methoden zur
Verfügung gestellt, die unterliegende Hardware auf
standardisierte Weise anzusteuern. Beispiele für
JSRs sind:
Möglichkeiten zur Entwicklung von Client Software unter
JAVA.
JSR 82: Java API für Bluetooth
JSR 118: MIDP 2.0
JSR 120: Wireless Messaging API (WMA)
JSR 135: Mobile Media API (MMAPI)
JSR 180: SIP API
Entscheidet man sich für eine Lösung mit Rich
Clients wird es nötig, Software zu entwickeln, die
auf kompakten mobilen Endgeräten (Mobiltelefonen) ablauffähig ist.
Beispielsweise ist es durch das MIDP (Mobile
Information Device Profile) möglich, Gerätespezifikationen, wie Displaygröße, IMEI etc., auszulesen
und mit in die Programmierung mit einzubeziehen.
Wie oben dargelegt, ist die Möglichkeit zur Realisierung von Nebenläufigkeit von wesentlicher Bedeutung. Da die bei mobilen Endgeräten üblichen
Betriebssysteme (insbesondere Symbian) kein Multitasking bieten, muß die Nebenläufigkeit in der
Anwendungsumgebung realisiert werden. Durch
Programmierung sogenannter „Listener“ kann der
Rich Client auf Nachrichten des Servers reagieren
(„Push Funktion“).
Die folgende Abbildung zeigt die Architektur der
Java Version für mobile Endgeräte (J2ME).
Die Programmiersprache JAVA bietet mit J2ME
(JAVA 2 Micro Edition) eine für die meisten mobilen Endgeräte verfügbare Programmierumgebung.
Sie verspricht damit die besten Voraussetzungen
auch für die Portierbarkeit von Anwendungen.
Abbildung 3-1: Architektur J2ME [9]
Ganz unten sind die Konfigurationen zu sehen.
Zum einen die CDC (Connected Device Configuration) für kompakte Endgeräte wie PDA und SetTopBoxen sowie die kleinere CLDC (Connected
3/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
Limited Device Configuration) für Mobiltelefone
und Smartphones.
Im Interesse eines minimalen Übertragungsvolumens werden lediglich die Zielkoordinaten und das
Trefferergebnis codiert über die Funkverbindung
übertragen. Die komplette Spielelogik befindet sich
auf den Clients, während der Server nur als PushServer für die ausgetauschten Nachrichten fungiert.
Darauf aufbauend erkennt man die Profile, darunter
auch das schon angesprochene MIDP (Mobile Independent Device Profile).
Die genannten JSRs wie Wireless Message API
oder MultiMediaAPI, sowie Bluetooth und SIP
(Session Initiation Protocol) sind darüber angeordnet.
4
Die folgende Abbildung zeigt zwei Screenshots der
realisierten Anwendung.
Beispiele für die Entwicklung
von mobilen Anwendungen
Im Folgenden werden einige Beispiele für mobile
Anwendungen beschrieben, die von den Autoren
konzipiert und realisiert wurden. Es werden sowohl
Thin Client als auch Rich Client Lösungen vorgestellt.
4.1
Anwendungsbeispiel 1: Schiffeversenken auf Blackberry Endgeräten
Abbildung 4-1: Mobiles Spiel „Schiffeversenken“
Das erste Anwendungsbeispiel gehört zur Kategorie
mobiler Spiele. Das Spiel funktioniert wie der bekannte Klassiker, den man zu zweit auf Papier
spielt.
Die Clients auf den mobilen Endgeräten wurden in
JAVA unter J2ME und Nutzung von MIDP 1.0, wie
auf den Blackberry Endgeräten der dargestellten
Generation verfügbar, realisiert.
Es handelt sich um ein „rundenbasiertes“ Spiel, d.h.
es ist immer nur ein Spieler am Zug, während der
andere wartet. Dies begünstigt eine Lösung mittels
Rich Clients.
4.2
Auf dem Endgerät befindet sich ein endlicher Zustandsautomat, der folgende Zustände annehmen
kann:
1.
2.
3.
4.
Anwendungsbeispiel 2: Fernsteuerung von Infotainmentfunktionen
im Fahrzeug über Bluetooth
Für die Volkswagen AG, Wolfsburg, wurde ein
Funktionsmuster für die Fernsteuerung von Infotainment-Funktionen in PKWs mittels Bluetoothfähiger Mobiltelefone entwickelt.
Bereit zum Schuss, Schussauswahl
Schuss mit Ergebnisempfang
Warten auf Angriff vom Gegner
Trefferanalyse und senden des Ergebnisses
Eine Rich Client Lösung bietet in diesem Umfeld
den Vorteil, dass keine hohen Ansprüche an die
Leistungsfähigkeit des betreffenden Prozessors im
Infotainment-System des Fahrzeugs gestellt werden
müssen (Embedded Prozessor).
Der Anfangszustand wird durch die Ermittlung des
Beginners realisiert, indem jeder Client eine Zufallszahl erzeugt, mit der Zahl des Gegners vergleicht und die höhere Zahl gewinnt.
Somit wurden Funktionen der Steuerungslogik und
die Generierung der Darstellung für die Nutzeroberfläche auf das mobile Endgerät verlagert. Dazu
wurde eine J2ME Anwendung geschrieben, die
über die Bluetooth API (JSR 82) per Bluetooth mit
dem entsprechenden On-Board Server des Fahrzeugs kommunizieren kann.
In Zustand 1 hat der Benutzer die Möglichkeit,
grafisch eine Zielkoordinate auf dem Spielfeld des
Gegners auszuwählen. Diese wird (Zustand 2) )
übertragen und das Ergebnis (Treffer oder kein
Treffer) wird ausgewertet. Zustand 3 nimmt Koordinaten entgegen, wertet diesen Schuss auf dem
Heimatfeld aus und überträgt das Ergebnis, während er das Ergebnis parallel auch auf dem Display
darstellt (Zustand 4).
Aufbauend auf dieser Verbindung schickt das mobile Endgerät Steuersignale in Form von Strings an
4/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
den Embedded Server. Dieser steuert dann Funktionen des Systems im Fahrzeug. Zum Test des mobilen Clients wurde ein Winamp-Player auf einem
PC gesteuert.
Die Anwendung ist auch in der Lage, Informationen des Servers, wie z.B. die Songliste einer abgespielten CD zu empfangen und auf dem Mobiltelefon für den Nutzer darzustellen.
Zielgerät war zunächst ein Nokia 6600. Im Rahmen
Untersuchungen konnte diese Anwendung ohne
Probleme auf andere Mobiltelefone, z.B. auf ein
Sony Ericsson P900 portiert werden. Lediglich eine
Anpassung an die unterschiedlichen DisplayGrößen ist notwendig.
Abbildung 4-3: Aufsetzen einer mobilen MultimediaKonferenz
Abbildung 4-4 zeigt das Medium Whiteboard auf
einem Smartphone, links mit freiem Zeichenbrett
und rechts mit einem Stadtplan, in dem Markierungen vorgenommen werden können.
Abbildung 4-2: Fernsteuerung von Infotainment-Funktionen
in Fahrzeugen mittels Mobiltelefon
4.3
Anwendungsbeispiel 3:
Mobile Mehrparteien Multimedia
Dienste
Das zukünftige „All-IP UMTS“ (UMTS Release 5
und folgende) basiert auf dem IMS (IP-based Multimedia Subsystem) als Kernnetz [10]. Als anwendungsorientiertes Steuerungsprotokoll wird das
Session Initiation Protocol (SIP) eingesetzt.
Abbildung
4-4:
Nutzung
des
Mediums
„Multiparty-
Whiteboard“ auf mobilen Endgeräten
Im Rahmen des Forschungsprojekts IMMS (IPbased Mobile Multimedia Services; [5], [4]) wurde
von den Autoren eine Anwendung für die mobile
Mehrparteien-Multimediakommunikation auf Basis
des IMS konzipiert und prototypisch realisiert.
Die implementierten Rich Clients realisieren sowohl die endlichen Zustandsautomaten für das SIPProtokoll („SIP-Stacks“) als auch die Clientseitigen Funktionen der Konferenzsteuerung und
die Clienten der unterstützten Medien (Whiteboard,
Chat; Streaming Medien (Sprache, Video) bisher
nicht implementiert) unter J2ME.
Abbildung 4-3 zeigt die Nutzeroberfläche zur Konferenzerstellung mit Konferenzname, Medien- und
Teilnehmerauswahl.
Die Realisierung von Nebenläufigkeit unter J2ME,
wo im Gegensatz zu J2SE kein Multi-Threading
unterstützt wird, stellte eine besondere Herausforderung dar.
Die Anforderungen dieser Anwendung machen die
Grenzen der Leistungsfähigkeit heutiger Endgeräte
deutlich.
5/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
4.4
Anwendungsbeispiel 4: Produktfamilie MOSIS
Ein kommerzieller Erfolg von Anwendungen auf
Basis der mobilen Datenkommunikation in großem
Umfang ist nur möglich, wenn entsprechende Anwendungslösungen vorgefertigt und leicht anpassbar für den jeweiligen spezifischen Bedarf verfügbar gemacht werden. Nur so lassen sich die Anforderungen der Anwender an niedrige Kosten, Zuverlässigkeit und Wartbarkeit der Software sowie kurze Projektrealisierungszeiträume erfüllen.
Vor diesem Hintergrund hat die Firma Netzlink in
Kooperation mit der Fachhochschule Braunschweig/Wolfenbüttel die Produktfamilie MOSIS
(Mobile Secure Interaction System) konzipiert und
implementiert [6], [7].
Abbildung 4-5: Durch MOSIS HIT-CaSe überwachte Systeme
MOSIS basiert auf einem serverseitigen Kernsystem, das wesentliche Funktionen für Anwendungsbereiche wie z.B. mobile CRM-Lösungen, mobile
Arbeitszeiterfassung oder die mobile Fernüberwachung und –steuerung technischer Anlagen bereitstellt (Abb. 4-8 und 4-9). Das Kernsystem ist auf
Basis eines J2EE Servers realisiert (Abb. 4-10). Die
Abbildungen 4-5 bis 4-7 zeigen exemplarisch die
Nutzeroberfläche der Lösung MOSIS HIT-CaSe
(Hospital Information Technology Calling Service),
die seit September 2004 am Städtischen Klinikum
Braunschweig zur kostengünstigen Sicherstellung
der 24h-Verfügbarkeit der IT-Anwendungen und –
Infrastruktur dieses Klinikums im Einsatz ist (Bereitschaftsdienst mit mobilen Endgeräten).
Abbildung 4-6: Schneller Zugriff auf den Status von Servern
Ausgehend von den im Abschnitt 2 genannten Gesichtspunkten und den oben genannten Randbedingungen kommerzieller Projekte nutzt MOSIS als
Basis-Lösung eine Thin Client Architektur. Zur
Lösung spezifischer Aufgaben, etwa der Überwachung der Funktionsfähigkeit des MOSIS Servers
selbst, werden problem-abhängig zusätzlich Rich
Clients eingesetzt.
Abbildung 4-7: Alarmmeldung wegen Ausfall eines Servers
6/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
Abbildung 4-8: Prinzip-Architektur des MOSIS-Systems
Abbildung 4-9: Funktionale Module des MOSIS-Systems
Abbildung 4-10: Software-Architektur des MOSIS-Systems
7/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
5
5.1
Erfahrungen mit Softwareentwicklung und -wartung für
mobile Rich Clients
Die mangelnde Kompatibilität zwischen den Endgeräten und den jeweiligen Emulatoren ist nach den
Erfahrungen der Autoren zur Zeit das wesentlichste
Hindernis für die erfolgreiche Entwicklung von
Rich Clients. Die Inkompatibilität betrifft typisch
insbesondere das I/O-Verhalten in Bezug auf
Kommunikationsschnittstellen (TCP/IP bzw. UDP)
und Nutzeroberflächen-APIs. Da Möglichkeiten
zum „On-Device-Debugging“ bisher nicht angeboten werden, kommt der Anwendungsentwickler in
die Situation, Debugging-Hilfsmittel, die auf dem
mobilen Zielgerät genutzt werden können, selbst
implementieren zu müssen.
Entwicklungsrandbedingungen
(Emulatoren, Endgeräte, Entwicklungsumgebungen)
Für die Implementation von Anwendungen für
mobile Endgeräte unter J2ME gibt es verschiedene
Entwicklungsumgebungen. Beispielhaft seien Eclipse, IBM Websphere und Sun One Studio 5 genannt.
Die dynamische Zuweisung von IP-Adressen zu
mobilen Endgeräten erfordert erheblichen Aufwand, um eine gesicherte Kommunikation zwischen Rich Clients und den zugehörigen Servern zu
erreichen.
Die Nutzung von Emulatoren in der jeweiligen,
rechner-gestützten Entwicklungsumgebung ist
Voraussetzung für eine effiziente Projektdurchführung. Sie erlauben insbesondere das Testen und
„Debuggen“ der entwickelten Software für das
mobile Endgerät. Der ausführbare Code wird somit
zunächst mit einem Emulator getestet, bevor er auf
der Zielhardware (Mobiltelefon) installiert wird.
Abbildung 5-1: Detailarchitektur einer OTA-Lösung
5.2
Fernwartung / Softwareverteilung
Beim so genannten „Over The Air Provisioning“
(OTA) handelt es sich um eine Technik, die zur
Software-Verteilung und Wartung über das Mobilfunknetz genutzt wird, so dass eine manuelle Verbindung mit einem Rechner nicht mehr notwendig
ist. Dies verspricht einen enormen Zeitgewinn und
ermöglicht eine schnelle, effiziente sowie kostensparende Distribution von Software für mobile
Clients. Dabei wird zwischen dem Einsatz so genannter Provisioning Portale und push-basierten
Provisioning Systemen unterschieden.
Wie oben erwähnt ist für den Einsatz von Rich
Clients in größeren Projekten mit vielen Endgeräten
die Ferninstallation und -wartung der Clientsoftware über die Funkschnittstelle unverzichtbar. Dabei muss insbesondere auch die Kompatibilität
fern-installierter Anwendungssoftware mit den
jeweils installierten Firmware-Versionen der mobilen Endgeräte gesichert werden.
Bei der Verwendung von Rich Clients muss die
Wartung von Client und Server miteinander synchronisiert werden, um sicherzustellen, dass auf
beiden Seiten der gleiche Releasestand der Software installiert ist.
Während bei dem Einsatzes eines Portals der User
eigenständig entsprechende Webseiten aufrufen
muss, um die gewünschte Software eigenhändig
8/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
auszuwählen, bekommt er dank des Provisioning
Systems proaktiv den Link zur Software zugespielt,
entweder per Channel-Push bei BlackberryHandhelds oder mittels WAP-Push bei MIDPkonformen Smartphones. Somit können mobile
Anwendungen von zentraler Stelle fern-installiert,
aktualisiert und konfiguriert werden, so dass ein
zuständiger Administrator serverseitig die aktuellen
Software-Stände der heterogenen, mobilen Endgeräte überwachen und beeinflussen kann. Nach erfolgreichem Abschluss der proaktiv angestoßenen
Installations- bzw. Updateprozesse erhält das Provisioning System einen detaillierten Status Report,
der bei Bedarf auch entsprechende Abrechnungsprozesse initiieren kann. Dank dieser Technik stehen nun auch technisch nicht versierten Nutzern
mobiler Endgeräte stets die aktuellsten SoftwareVersionen zur Verfügung.
Die Softwareaktualisierung der Clients kann für den
Nutzer unmerklich erfolgen. Die im J2ME Framework enthaltene AMS (Application Management
Software) bietet Basisfunktionen für die Realisierung von Over the Air Provisioning.
Abbildung
5-1
illustriert
eine
OTASoftwareinstallations und –wartungslösung, die im
Team der Autoren aktuell erprobt wird.
6
Ausblick
Die im Beitrag geschilderten heutigen Probleme bei
der Entwicklung von Rich Clients dürften innerhalb
der nächsten Jahre seitens der Hersteller mobiler
Endgeräte behoben werden. Die mit der zunehmenden Flächendeckung von UMTS realistisch verfügbaren höheren Bitraten verbessern einerseits die
Voraussetzungen für Thin Client basierte Lösungen. Gegenläufig dazu verbessert die schnell steigende Leistungsfähigkeit der Prozessoren mobiler
Endgeräte die Voraussetzungen für Rich Client
Lösungen. Die Entscheidung in der einen oder
anderen Richtung wird also weiterhin problemspezifisch getroffen werden müssen.
Für den kommerziellen Erfolg von Anwendungen
auf Basis der mobilen Datenkommunikation ist die
Verfügbarkeit vorgefertigter Lösungen, die eine
kostengünstige und risikolose Realisierung ermöglichen, in jedem Fall von zentraler Bedeutung, wie
am Beispiel der MOSIS Produktfamilie erläutert
wurde.
9/10
10. ITG-Fachtagung "Mobilfunk" des VDE, Osnabrück Juni 2005
VDE-Verlag 2005, ISBN 3-8007-2902-4
7
Literatur
8
[1] Rosemann,
M.;
Bachmendo,
B.:
Konzeption eines WWW-basierten Prozeßinformationssytems in Interaktion im Web – Innovative Kommunikationsformen, Teubner
1998 (Berichte des German Chapter of the
ACM; Bd. 50)
[2] Yuan, Michael Juntao: Enterprise J2ME –
developing Mobile Java Applications; Prentice
Hall; Upper Saddle River; 2004
[3] Golding, Paul; next generation wireless applications; Wiley; 2004
[4] Jusek, A.; Hans, M.; Kowalewski, F.; Wermser, D.: SIP-basierte Dienstentwicklung für
das IMS CN (UMTS Release 5). In: Mobilfunk - Stand der Technik und Zukunftsperspektiven, 9. VDE/ITG Fachtagung, VDEVerlag, Berlin 2004.
[5] Wermser, D.; Büch, C.; Hans, M.; Jusek, A.;
Kowalewski, F.: Adaptive Mobile Multimedia-Dienste für das zukünftige All-IP UMTS.
ITG-Fachtagung "Ambient Intelligence" auf
dem VDE Kongress 2004. VDE-Verlag, Berlin
2004.
[6] Wermser, D.; Wähling, S.-O.: Monitoring &
Control Integrating Wireless Agents and Mobile Users. ZVEI-Elektronik - Wireless Congress 2004. München Nov. 2004.
[7] Seidel, C.; Gruetz, R.; Wähling, S.-O.; Wermser, D.: Kostengünstige Sicherstellung der
Verfügbarkeit von DV-Systemen am Städtischen Klinikum Braunschweig, Systemrufbereitschaft und deren technische Umsetzung.
10. Fachtagung Praxis der Informationsverarbeitung in Krankenhaus und Versorgungsnetzen (KIS), Hamburg März 2005.
[8] it-frameworkssolutions GmbH: Mobile Anwendungen für Handy/PDA – Newsletter,
www.it-fws.de, 04.02.2004
[9] Schmatz, Klaus-Dieter: Java 2 Micro Edition,
dpunkt.verlag, 2004
[10] Poikselka, M. et al.: IMS – IP Multimedia
Concepts and Services in the Mobile Domain.
Wiley, New York, 2004.
Abkürzungen
AMS
API
AS
CDC
CLDC
ERP
CRM
DHCP
GPRS
GUI
HTML
IMEI
IMS
IMMS
IP
IrDA
J2ME
J2SE
J2EE
JSR
MIDP
MOSIS
OTA
SAP
Application Management Software
Application Programming Interface
Application Server
Connected Device Configuration
Connected Limited Device Configuration
Enterprise Resource Planning
Customer Relationship Management
Dynamic Host Configuration Protocol
General Packet Radio Service
Graphics User Interface
Hyper Text Markup Language
International Mobile Equipment Identity
IP-based Multimedia Subsystem
IP-based Mobile Multimedia Services
Internet Protocol
The Infrared Data Association
Java 2 Micro Edition
Java 2 Standard Edition
Java 2 Enterprise Edition
Java Standardisation Request
Mobile Information Device Profile
Mobile Secure Interaction System
Over the Air Provisioning
Systeme, Anwendungen und Produkte in
der Datenverarbeitung (ERP-Software)
SIP
Session Initiation Protocol
TCO
Total Cost of Ownership
TCP
Transmission Control Protocol
UDP
User Datagram Protocol
UML Unified Modeling Language
UMTS Universal Mobile Telecommunication
System
WAP Wireless Application Protocol
WML Wireless Markup Language
XHTML eXtensible Hyper Text Markup Language
10/10