Smart Clients - Definition, Abgrenzung und Aspekte ... - Compeople
Smart Clients - Definition, Abgrenzung und Aspekte ... - Compeople
Smart Clients - Definition, Abgrenzung und Aspekte ... - Compeople
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Serverseitige Fehler sind für den Client<br />
dann interessant, wenn sie dessen Arbeit beeinflussen.<br />
Ob dabei besser eine auf dem Server<br />
aufgetretene native Exception oder eine<br />
verständlichere Nachricht übermittelt wird,<br />
hängt vom angestrebten Benutzerkreis ab.<br />
Universelle Lösungen sind im Falle<br />
von Fehlern nötig, die nicht von den eigenen<br />
Services, sondern vom Webserver oder<br />
von der Transportschicht kommen. Ihre<br />
Behandlung wird dadurch erschwert, dass<br />
sie bei der Implementierung des <strong>Clients</strong> oft<br />
gar nicht bekannt sind. Für die Erkennung,<br />
Klassifizierung <strong>und</strong> Verarbeitung solcher<br />
Fehler bietet sich ein globaler Handler an.<br />
Hilfe <strong>und</strong> Dokumentation<br />
Es ist nicht verboten, sich von anderen,<br />
gut durchdachten Lösungen anregen zu<br />
lassen. Empfehlenswert ist zum Beispiel<br />
ein Blick auf das Hilfe- <strong>und</strong> Supportcenter<br />
von Windows. Hilfe <strong>und</strong> Dokumentation<br />
komplett auf dem Client, das klingt logisch<br />
<strong>und</strong> funktioniert auch. Andererseits wird<br />
der größte Teil davon erfahrungsgemäß<br />
nie angeschaut werden. Ein <strong>Smart</strong> Client<br />
soll doch online verteilt <strong>und</strong> aktualisiert<br />
werden. Macht es da nicht Sinn, wenn diese<br />
Informationen auf dem Server bleiben,<br />
bis sie gebraucht werden? Natürlich muss<br />
der gr<strong>und</strong>legende Teil, zum Beispiel die<br />
Anleitung zur Fehlerbehebung bei Netzwerkproblemen,<br />
immer lokal verfügbar<br />
bleiben. Ist in ihrem Anwendungsfall eine<br />
verteilte Dokumentation denkbar? Erst<br />
wird die Information lokal gesucht <strong>und</strong> bei<br />
Misserfolg auf den Server weitergeleitet?<br />
Dann ist es kein allzu großer Schritt mehr<br />
bis zum Angebot, direkt eine Verbindung<br />
zum Supportcenter herzustellen.<br />
Installation <strong>und</strong> Update<br />
Ein gr<strong>und</strong>legendes Merkmal eines <strong>Smart</strong><br />
Client ist die Möglichkeit, ihn online zu<br />
verteilen <strong>und</strong> zu aktualisieren. Eine automatische,<br />
zwangsweise Aktualisierung<br />
stellt sicher, dass jeder Benutzer immer<br />
nur mit der neuesten Version arbeitet.<br />
Wartung <strong>und</strong> Support sind erheblich einfacher,<br />
wenn ältere Versionen nicht unterstützt<br />
werden müssen. Zentrale Services<br />
müssen nur mit einer einzigen Version des<br />
<strong>Clients</strong> zusammenarbeiten.<br />
In vielen Anwendungen muss die Datenbasis<br />
oder die Programmlogik in regelmäßigen<br />
Abständen aktualisiert werden,<br />
zum Beispiel bei jährlichen Anpassungen<br />
an geänderte Steuergesetze. Das beeinflusst<br />
die Frage, ob eine Komponente am<br />
besten auf den Client oder auf den Server<br />
gehört. Wo liegt die aktuelle Wetterkarte<br />
<strong>und</strong> wo die Kartenbasis eines Routenplaners?<br />
Zwei maßgebliche Faktoren sind<br />
also die voraussichtliche Häufigkeit einer<br />
Aktualisierung <strong>und</strong> die dabei zu übertragende<br />
Datenmenge.<br />
Daten, die sehr schnell veralten <strong>und</strong>/<br />
oder nur sporadisch gebraucht werden,<br />
gehören nicht auf den Client. Aber auch<br />
Daten, die vielleicht nur einmal im Jahr<br />
www.javamagazin.de © Software & Support Verlag GmbH 2006<br />
9.2006<br />
special<br />
<strong>Smart</strong> <strong>Clients</strong><br />
aktualisiert werden müssen, dann aber<br />
viele Megabyte Update bedeuten würden,<br />
sind auf dem Server besser aufgehoben.<br />
Um der Bedeutung der automatischen<br />
Verteilung <strong>und</strong> Aktualisierung als eine<br />
der Kernkomponenten eines <strong>Smart</strong> Client<br />
gerecht zu werden, wird sich ein eigener<br />
Artikel mit deren Technik befassen.<br />
Fazit<br />
Ein <strong>Smart</strong> Client macht die Entwicklung<br />
einer Anwendung nicht automatisch einfacher.<br />
Seine Stärke ist die Flexibilität, die<br />
mehr Möglichkeiten der Umsetzung erlaubt.<br />
Ob ein Service auf dem Client oder<br />
auf dem Server liegt, wird nicht durch die<br />
verwendete Technologie vorgegeben.<br />
Stattdessen liegt es in der Verantwortung<br />
des Entwicklungsteams, die für die gegebene<br />
Problemstellung jeweils am besten<br />
geeignete Lösung zu finden. Falls sich<br />
diese Lösung später doch nicht als optimal<br />
herausstellt oder sich die Rahmenbedingungen<br />
ändern, kann der Service leicht verlagert<br />
werden. Das verringert das Risiko<br />
<strong>und</strong> erleichtert den Einstieg in die Entwicklung<br />
mit einem <strong>Smart</strong>-Client-Framework.<br />
Oliver Kleber arbeitet als IT-Consultant<br />
bei der compeople AG in Frankfurt. Seine<br />
Schwerpunkte sind Client-Server-Frameworks,<br />
agile Entwicklungsmethoden <strong>und</strong><br />
Build-Management.<br />
Links & Literatur<br />
[1] spirit <strong>Smart</strong> Client Framework:<br />
www.compeople.de/smartclient.html<br />
9