Evolution webbasierter Groupware – eine

Transcription

Evolution webbasierter Groupware – eine
Evolution webbasierter Groupware –
eine Fallstudie am Beispiel von x-manage
Jörg Becker, Axel Winkelmann
European Research Center for Information Systems (ERCIS)
Oliver Steffmann
x-dot GmbH
Zusammenfassung: Mit dem Aufkommen leistungsfähiger Browser Mitte der 90er
Jahre wurde es möglich, webbasierte Groupwaresysteme zu entwickeln, um dem
Informationsbedürfnis „Anytime, Anywhere, Anyhow“ zu begegnen. Nicht eine
lokale zu installierende Software, sondern der einfache Zugriff auf Groupwarefunktionalität über beliebige Webbrowser stand im Vordergrund. Insbesondere in
den New-Economy-Jahren entstanden viele webbasierte Groupwaresysteme, die
mit unterschiedlichem Erfolg entwickelt und vermarktet wurden. Am Beispiel des
Systems x-manage wird die funktionale und technische Entwicklungsgeschichte
eines webbasierten Groupwaresystems nachgezeichnet und abschließend ein Ausblick auf zukünftige, Semantice Web-basierte Groupwarearchitekturen gegeben.
Schlüsselworte: CSCW, Groupware, Semantic Web, Anwendungsarchitektur,
Mobilität
1
Motivation
Anfang der 80er-Jahre begannen Wissenschaftler und Softwareentwickler, sich
intensiv mit der Arbeitsumgebung und den Arbeitsanforderungen von Mitarbeitern
an ihre Anwendungssysteme, insbesondere im Bereich Computer-Supported
Cooperative Work (CSCW) bzw. Groupware [Grud94, S. 19], auseinanderzusetzen. Erste Groupwaresysteme entstanden. Bis Mitte der 90er-Jahre waren diese
Softwarelösungen ausschließlich client-server-basiert und wurden mit dem
Aufkommen grafikfähiger Browser durch webbasierte Groupwaresysteme ergänzt.
Damit entfiel ddie Notwendigkeit einer Softwareinstallation am Arbeitsrechner.
Die Groupware konnte über beliebige Browser genutzt werden. Webbasierte
Groupwaresysteme waren zunächst einfach gehalten, wurden aber mit technischer
Reife der Browser- und Internettechnologie immer komplexer und
leistungsfähiger.
Anhand des webbasierten Groupwaresystems x-manage werden die Entwicklung
und die Möglichkeiten der Progammierung einer CSCW-Internetapplikation
2
J. Becker, O. Steffmann, A. Winkelmann
nachgezeichnet. Es werden aus den Erfahrungen bei der Entwicklung und
Vermarktung webbasierter Groupware Vor- und Nachteile von Internetapplikationen aufgezeigt. Generelle Defizite heutiger Groupwarearchitekturen führen abschließend zu einer ersten gedanklichen Skizze einer zukünftigen Semantic Webbasierten Groupwarearchitektur.
2
2.1
Entwicklung webbasierter Groupwaresysteme
Groupware
Groupwaresysteme sind Informationssysteme, die die Zusammenarbeit von
Gruppenmitgliedern unterstützen [Schr96; Elli+92, S.25; Bock92, S.1; KaJo98, S.
29f]. Sie erlauben im Allgemeinen Informationen elektronisch zwischen
Gruppenmitgliedern auszutauschen oder in einem gemeinsamen Speicher zu
koordinieren [Ober91, S. 5; Bock93, S. 1-12]. Groupwaresysteme erfüllen im
Wesentlichen die drei Aufgaben Kommunikation, Kollaboration und Koordination
zwischen Mitarbeitern innerhalb einer virtuellen oder realen Organisation [Nast97,
S. 90ff; CaTh97, S. 309ff]. Dabei sind die Funktionalitäten vielfältig und werden
nicht ausnahmslos von allen Systemen unterstützt.
Kommunikationskomponenten sind Benachrichtigungsmethoden und PushKomponenten, mit denen Informationen und Daten an andere Nutzer
weitergegeben werden können. Hierbei kann unterschieden werden zwischen
asynchronen Komponenten, welche die Kommunikation zu verschiedenen
Zeitpunkten ermöglichen wie beispielsweise Email-Systeme [Elli+92, S. 27], und
synchronen Komponenten, welche die zeitgleiche Kommunikation ermöglichen.
So können beispielsweise Konferenzsysteme die räumlichen Distanzen bei
synchroner Kommunikation überwinden. Sie machen damit in vielen Fällen
zeitraubende Reisen unnötig. Dies gilt auch für die Desktop-Konferenzsysteme,
die durch Application Sharing1 oder Video Conferencing [Wald93, S. 297-312]
räumlich voneinander entfernten Personen bei der Lösung nicht vorhersehbarer
oder unstrukturierter Probleme unterstützen [Teuf95, S. 143ff].
Kollaborationskomponenten regeln das Zusammenwirken verschiedener Personen
und Systeme. Zu ihnen zählen beispielsweise Zugriffe auf gemeinsame
Datenbestände oder Dokumenten-Management-Systeme mit Zugriffsberechtigungsverwaltung [Dohm94, S. 5-11; Bus+93, S. 45-59; Bard98, S. 89-98].
1
Application Sharing Software ermöglicht das gemeinsame Zugreifen auf lokal auf einem
Rechner gespeicherte Applikationen.
Evolution webbasierter Groupware
3
Koordinationskomponenten gewährleisten die Abstimmung von Akteuren,
Aktivitäten und Ressourcen und zielen auf Steuerung und Kontrolle von
komplexen, zu automatisierenden Abläufen aus Unternehmenssicht ab [MaBo92,
S. 446f]. Zu ihnen gehören beispielsweise die Workflow-Systeme und
elektronische Kalender [Born95, S. 22f].
2.2
Webbasierte Groupware
Im Gegensatz zu traditionellen Groupware- und Unified Messaging-Systemen wie
Lotus Notes, Novell GroupWise, Microsoft Exchange oder Tobit David, die
mittels Installation eines Clients einen Teil der Applikationslogik auf dem
Anwenderrechner laufen lassen, wurden vollständig webbasierte Ansätze erst
durch grafikfähige Browser ab Mitte der 90er-Jahre möglich. Der Vorteil dieser
Thin-Client-Ansätze, bei denen außer einem Browser keine Software auf dem
Client-Rechner benötigt wird, liegt in dem spontanen, oft Betriebssystemunabhängigen (da Browser-unabhängigen) Zugriff auf die Groupware-Funktionalitäten und -Daten. Alle User-Daten sind zentral auf dem Server verfügbar,
und der Zugriff auf webbasierte CSCW-Systeme erfolgt häufig sowohl durch
Browser (Windows-, Windows-CE-, Apple-, Linux-Computer usw.) als auch
durch WAP-fähige Endgeräte (PDA, Handy, Internet-fähiges Autoradio usw.).
Webbasierte Groupwaresysteme bauen auf einer Mehrschichten-Architektur auf.
Eine Mehrschichten-Applikation ist auf mehrere voneinander unabhängige
Computer aufgeteilt. Dadurch können Prozesse und Daten in einem Netzwerk von
Computern verteilt und unabhängig von anderen Schichten bearbeitet und
aktualisiert werden.
Die webbasierten Groupwareansätze basieren auf der 3-Schichten-Architektur.
Hierbei wird die Programmlogik von der Client- auf die Serverseite verlegt. Dabei
wird der Rechenaufwand einer Applikation auf die Serverseite verlagert, während
clientseitig nur das User-Interface abgebildet wird. Der auch als thin-client- oder
fat-server-Architektur bezeichnete Aufbau teilt die Anwendung in die GUI-Logik
(1-tier), die Programmlogik (2-tier) und die Datenzugriffslogik (3-tier) [Edwa97,
S. 4f]. Durch die Möglichkeit, die Programmlogik physikalisch auf einen eigenen
Server zu verlagern oder diesen Bereich aufzuteilen und zu gewissen Teilen der
GUI- oder Datenbankkomponente zuzuschreiben, entstehen vielfältige
Implementierungsarten [Meye93, S. 84ff].
2.3 Historie webbasierter Groupware
Als Pionier der – auch als Web-Office-Systeme bezeichneten – webbasierten
Groupwareansätze galt die 1995 gegründete US-Firma HotOffice Technologies,
Inc. Die zunächst recht einfache Software HotOffice bot als managed-serviceLösung kleinen und mittelständischen Firmen über das Internet die Möglichkeit,
4
J. Becker, O. Steffmann, A. Winkelmann
weltweit per Browser auf die Funktionen und Daten von HotOffice zuzugreifen
(vgl. Abbildung 1). HotOffice war zunächst eine einfache Groupware für die
Bereiche Email, Kalender und Kontakte. Bereits 1999 registrierten sich monatlich
etwa 29.000 User für eine 30 tägige Testphase [Mosk99].
Abbildung 1: HotOffice V3.0 (Ende 1999)
Angezogen durch die große Nachfrage für webbasierte Dienste und die guten
Förderungsaussichten durch Venture Capital-Gesellschaften entstanden zahlreiche
Unternehmen und webbasierte Groupware- und Kommunikationssysteme
unterschiedlichster Funktionsbreite und Qualität, die zunächst häufig nach der
Strategie Follow-the-free als kostenlose, werbefinanzierte managed-serviceVersionen angeboten wurden. Die Entwicklung webbasierter Software bot den
Softwareunternehmen gegenüber der traditionellen Rich-Client-SoftwareEntwicklung zahlreiche Vorteile: es waren keine Installationen nötig und somit
keine Inkompatibilitäten auf dem Rechner des Anwenders zu erwarten. Neue
Software-Releases standen schneller zur Verfügung, da das Programm nur auf
dem Server zu installieren war und sofort allen Kunden zur Verfügung stand.
Außerdem war die Skalierbarkeit der Lösungen in vielen Fällen sehr gut und das
zentrale, server-basierte Wartungs- und Backup-Management der Daten im Sinne
des Application Service Providing (ASP) erwies sich als gutes Argument
gegenüber Kapitalgebern und potenziellen Nutzern [Zu den Vorteilen
webbasierter Software Grah01].
Erste deutsche Groupwareprodukte wurden ab 1997/1998 von den Firmen
Novolabs (DICE) und Smartvia Communications (CANBOX) angeboten und von
vielen Unternehmen zur Einbindung in deren Internetportale bzw.
Geschäftsmodelle lizenziert. Es folgten im deutschsprachigen Raum Firmen wie
DayByDay Media (DayByDay, 1999), Space2Go.com (Space2Go, 2000) oder
x-dot (x-manage, 2000). Auch Consumer-Dienste wie Gmx.de oder Web.de
Evolution webbasierter Groupware
5
entstanden in der zweiten Hälfte der 90er-Jahre. Eine Übersicht über das Angebot
im Jahre 2000 bietet Abbildung 2.
Private Nutzung
16
18*
11
22
2
3
20
17
12
24
15
Datenaustausch
zwischen
Personen
25
19
Datenaustausch
zwischen
Endgeräten
7
6
4
27
14
9
28
5
10
23
26 8
21
13
1
Berufliche Nutzung
1) Space2Go
2) IOBox
3) WeSync.com
4) FusionOne
5) MagicalDesk
6) FreeOffice.de
7) DayByDay
8) Dice
9) WebEx
10) HotOffice
11) 1&1
12) Zkey
13) FreeDesk
14) Desktop.com
15) Visto.com
16) FreeDrive.com
17) My-Files.de
18) DirectBox.com*
19) Canbox
20) Start
21) Cyberscheduler
22) Skyrix.de
23) e-Room
24) Anyday.com
25) Netscape Virtual Office
26) Lotus Instant Team Room
27) Virtual Workplace
28) eDock
* kein Data-Sharing möglich
Abbildung 2: Überblick über ausgesuchte
Groupwaresysteme in 2000 [Wink00, S. 33]
webbasierte
Kommunikations-
und
Mit dem Abflachen der New-Economy-Hysterie war vor allem in 2001 und 2002
eine Konsolidierung des Marktes zu verzeichnen. Einige Geschäftsmodelle
erwiesen sich als nicht tragfähig oder die technologische Basis war veraltet, zu
komplex oder nicht mehr wartbar. Zahlreiche webbasierte Groupwaresysteme
wurden ganz oder teilweise von größeren Firmen übernommen, sodass von den in
Abbildung 2 dargestellten 28 webbasierten Groupwaresystemen bis Mitte 2004
nur noch 13 Systeme bestanden. Die übrigen Groupwareentwickler fusionierten,
meldeten Konkurs an oder verwarfen die Entwicklung ihrer webbasierten
Groupwaresysteme.
Die traditionellen Groupwaresystem-Hersteller haben relativ spät die Vorzüge
webbasierter Groupwarebenutzeroberflächen erkannt und boten erst in neueren
Produktversionen zusätzlich zu den zu installierenden Clients gute browserbasierte
Bedienungsoberflächen an.
6
J. Becker, O. Steffmann, A. Winkelmann
3 Entwicklungshistorie einer webbasierten
Groupware – eine Fallstudie
Exemplarisch für die Entwicklungsschritte webbasierter Groupwaresysteme in
Abhängigkeit von technologischen Entwicklungen der Browser und
Internettechnologien sowie des Marktumfeldes wird im Folgenden die
Entwicklung des webbasiertes Groupwaresystems x-manage der x-dot GmbH
dargestellt. Die x-dot GmbH ist ein deutsches Software-Unternehmen, das seine
Produkte schwerpunktmäßig im deutschsprachigen Raum vertreibt. Die Firma
wurde im März 2000 gegründet. Sie ist eine Verschmelzung der Firmen Web-DSign, P-Well GmbH Abteilung internet business service und der x-dot OHG.
Erfahrungen durch Zusammenarbeiten der Mitarbeiter bestehen bereits seit 1995.
Die Firma bietet neben Java-Softwareentwicklung Full-Service-Providing und
Web-Design. Neben der Weiterentwicklung des webbasierten Groupware- und
Unified Messaging-Produktes x-manage entwickelt das Unternehmen eine
internetbasierte Workflowlösung (x-flow) und ein Shopsystem (x-sale). x-manage
wird u.a. von T-Mobile als „Office Manager“ im österreichischen Markt
vertrieben. Das Groupwaresystem wird seit 2003 als weltweites Kommunikationssystem für alle Botschaften des Auswärtigen Amtes eingesetzt.
3.1
x-manage Version 1.0 (2000)
x-manage sollte zunächst als internetbasiertes Dokumentenablagesystem mit
rudimentärer Groupwarefunktionalität entwickelt werden. Anders als andere in
2000 am Markt befindliche Web-Groupwareprodukte entschied sich die x-dot
GmbH jedoch gegen die schrittweise Einführung von Softwaremodulen2 und
launchte Ende 2000 mit einer Big-Bang-Strategie [BeSc04, S. 184] unter
www.x-manage.de eine managed service-Version 1.0 der Software (vgl.
Abbildung 3). In Abbildung 4 werden die Komponenten und unterstützten
Protokolle des Groupwaredienstes dargestellt. Der schwarze Kasten neben den
Funktionen deutet an, wie groß der Leistungsumfang einer Funktion zu diesem
Zeitpunkt ist.
Der Kommunikationsbereich bot Unified Messaging-Funktionalität. Beispielswiese konnten eingehende Emails als Fax oder SMS weitergeleitet werden. x-manage
bot im Email-Bereich Funktionen wie Autoresponder, Filter, Signaturverwaltung
und Nutzung des eigenen Domainnamens (ihrname@ihrname.de). Die VoiceMail-Funktionalität
ermöglichte
ein rudimentäres
Aufzeichnen
von
Sprachnachrichten.
2
Zu einer schrittweisen Einführung ihrer Software entschied sich beispielsweise die
Firma DayByDay Media GmbH, deren Software DayByDay 1999 zunächst nur aus
Kalender- und Bookmarkfunktionalität bestand.
Evolution webbasierter Groupware
7
Abbildung 3: Screenshot x-manage Version 1.0 (Ende 2000)
Im Koordinationsbereich fanden sich einfache Aufgaben- und Terminplaner.
Aufgaben konnten periodisiert und mit Prioritäten versehen werden. Über die
Anzeige des Bearbeitungsstandes war es jederzeit möglich, den
Bearbeitungsfortschritt zu kontrollieren. Neben beliebigen, sich auch
überschneidenden Terminanlegemöglichkeiten konnten beim Terminplaner auch
Serientermine erstellt werden. Eine Gruppenterminkoordination stand in Version
1.0 allerdings noch nicht zur Verfügung.
Abbildung 4: Funktionsumfang von x-manage V1.0
Der
Informationsmanagementbereich
bot
einfache
Notizblockund
Bookmarkfunktionen. Das Adressbuch ermöglichte ausführliche Kontakt-
8
J. Becker, O. Steffmann, A. Winkelmann
Eintragungsmöglichkeiten, jedoch keine Kontakthistorie oder Synchronisation mit
anderen Produkten. Zusätzlich bestand die Möglichkeit, in öffentlichen Ordnern
Adressen allen Nutzern einer Firma zugänglich zu machen. Die gleiche Berechtigungszuteilung (privat, Firma) galt auch für den Dateimanager. Beliebige Dateien
konnten hochgeladen und zentral gespeichert und verwaltet werden. Die Ordnerstruktur konnte beliebig erweitert werden. Als eines der ersten webbasierten
Groupwaresysteme nutzte x-manage in 2000 das WebDAV-Protokoll, um auch
über den lokalen Rechner direkt aus dem Explorer oder Web-DAV-unterstützenden Applikationen wie Word oder Excel auf die Web-Office-Ordnerstruktur
zugreifen zu können bzw. per drag & drop Dateien im Internet ablegen zu können.
Entgegen dem damaligen Trend zur Verwendung von Skriptsprachen für die
Entwicklung webbasierter Groupwaresysteme3 entschied sich die x-dot GmbH für
die damals aus Performancegründen noch umstrittene Java-Technologie, um einen
objektorientierten Entwicklungsansatz verfolgen zu können. Das System wurde
zunächst browserunabhängig als reine HTML-Lösung ohne Einsatz von Frames
oder JavaScript-Funktionalitäten konzipiert, um zum einen auf möglichst allen
Browservariationen, die in 2000 noch in vielen Bereichen sehr fehleranfällig
waren, lauffähig zu sein und zum anderen die Komplexität bei der Entwicklung
gering zu halten. Zusätzlich wurde ein selbstentwickeltes Framework (x-engine)
als Grundlage für eine flexible Web-Architektur eingesetzt (vgl. Abbildung 5).
In die x-engine eingehende Anforderungen in Form von z. B. Nachrichten, WebServer-Requests oder CORBA-Methoden-Aufrufen wurden in ein XMLDokument integriert und mit einer Session-ID versehen, über die die zugehörige
Zustands-XML-Datei aufgerufen werden konnte. Diese Datei enthielt alle
Einstellungen des Benutzers wie beispielsweise die von ihm gewünschte Sprache,
das Design sowie das verwendete Endgerät. Auf diese Weise konnten für jeden
Nutzer individuelle Daten über das Aussehen und die Funktion des Systems
gespeichert werden. Abhängig von den Einstellungen der Zustands-Datei wurden
in einer Ablauf-XML-Datei die anschließend auszuführenden Aktionen, etwa Vorund Nachbedingungen, ausgelesen.
Die relevanten Daten aus den beiden Dateien wurden mit den zusätzlich
angeforderten Informationen in einem XML-Dokument verknüpft und per XSL-tFilter4 in verschiedene grafische Formate z. B. HTML oder WML5 „on the fly“
umgewandelt. Aufgrund der in x-manage 1.0 noch nicht in allen Bereichen
3
4
5
Zahlreiche webbasierte Groupwaresysteme wurden in Skriptsprachen wie ASP (z. B.
HotOffice, Magically, WebEx) oder PHP (z. B. DayByDay, Dice) erstellt.
XSL ist eine Beschreibungssprache für Stylesheets, d. h. Darstellungsparameter, die
auf Elemente und Attribute eines XML-Dokumentes angewendet werden. Die
Untermenge XSL-t sorgt dafür, dass XML-Dokumente korrekt dargestellt werden.
WML steht für Wireless Markup Language und ist eine XML-Untermenge, die
speziell für mobile Internet-Medien wie WAP-Handys geschaffen wurde.
Evolution webbasierter Groupware
9
gelösten Trennung von Funktion und Benutzeroberfläche wurden Funktionen
teilweise mehrfach für unterschiedliche Oberflächen entwickelt.
Definition der Prozesse und
Navigationsstrukturen in
zentralem XML-Dokument
Individuelle Prozesse/Strukturen für
unterschiedliche Nutzer
WWW-Server
x-engine Kernel
Daten der angeschlossenen
Datenbanken, Softwareapplikationen etc.
Datenbank
JavaBeans
PC, Handy, Palm,
Psion, TV,
Drucker usw.
XML-Dokument
(enthält Daten)
Enterprise JavaBeans
JavaServlets
XSL-t-Filter : generiert
dynamische Informationen
für einzelne Anwender/
Applikationen
CORBA
XMLSchnittstellen
Datenaufbereitung für
den Endanwender in
HTML, WML usw.
APIs
3rd Party
Applikationen
C++, VisualBasic
usw.
3rd Party
Content
Lotus Notes Domino
MS Exchange Server
SAP R/3
HTML, WML, XML, PDF,
LaTeX usw.
Abbildung 5: x-engine-Architektur
Eine Übersicht über die in Version 1.0 eingesetzten Technologien bietet Tabelle 1.
Programmiersprache
Java 1.3
Betriebssystem Application-Server
verschiedene
Betriebssystem Client-Rechner
Betriebssystem unabhängig
Web-Server
Apache
Java Virtual Machine
IBM JVM 3oder Black Down JDK 1.3
Java Servlet Engine
Resin
Datenbank
MySQL, Oracle
Tabelle 1: Systemvoraussetzungen x-manage 1.0
3.2
x-manage Version 2.0 (2002)
In 2002 wurde x-manage in Version 2.0 gelauncht. Die fortschreitende
Entwicklung der Browser ermöglichte komplexere Darstellungen, sodass das
GUI-Design stärker an das Look and Feel traditioneller Groupwaresysteme
10
J. Becker, O. Steffmann, A. Winkelmann
angepasst werden konnte, um eine höhere Akzeptanz von Anwenderseite zu
erhalten (vgl. Abbildung 7). Hierzu wurden u. a. per MouseOver-Funktion ButtonEffekte imitiert. Die Benutzerführung wurde von textbasierten auf grafische Icons
umgestellt, da diese einen höheren Erkennungs- und Wiedererkennungswert
besitzen [Wied99]. Außerdem wurde ein höheres Augenmerk auf die mobilen
Endgeräte (Palm, Psion usw.) gelegt, da diese zunehmend für den
Informationsabruf im Internet verwandt wurden. In Abhängigkeit von den
Display- und PDA-Browsereinschränkungen mussten hierzu neue Benutzeroberflächen geschaffen werden.
Abbildung 6: Screenshot x-manage Version 2.0 (2002)
Funktional wurde auf die Implementierung neuer Funktionen zu Gunsten der Erweiterung und Verbesserung der bestehenden Groupwareelemente verzichtet (vgl.
Abbildung 7). Die Ordner, die in Version 1.0 von der Funktionsstruktur separiert
waren, wurden in die Funktionsstruktur integriert. Die Email- und Fax-Funktionalität wurde durch einen HTML-Editor erweitert. Der Terminkalender erhielt
eine einfache Termineinladungsfunktion zum Zu- oder Absagen von Terminen.
Durch eine proprietäre Java-Lösung (x-sync) konnten Kontakte, Termine und
Aufgaben mit MS Outlook synchronisiert werden.
Die im x-engine-Framwork eingesetzte XML-Technologie, insbesondere XSL-T,
wurde durch andere Technologien substitutiert, da leistungsfähige Parser noch
nicht zur Verfügung standen. Im Redesign wurde zum einen die Anzahl der
Dateien für bisherige Funktionalitäten von rund 20.000 auf ca. 8.000 reduziert.
Zum anderen wurde durch die Entwicklung einer Komponentenarchitektur unter
Evolution webbasierter Groupware
11
Verwendung eines EJB-Servers als Applikationsserver eine bessere Kapselung der
Funktionen erreicht. Der Einsatz eines EJB-Servers bot implementierte Vorteile
wie Transaktionsunterstützung und Rollback-Mechanismen, Messaging- und
Scheduler-Funktionen, Möglichkeiten zum Aufbau verteilter Server-Komponenten
uvm. Für internationale Sprach- und Zeichensysteme sollte der Unicode-Standard
unterstützt werden. Da MySQL diesen Standard (noch) nicht unterstützte, wurde
stattdessen die Open-Source-Datenbank PostgreSQL verwandt.
Abbildung 7: Funktionsumfang von x-manage V2.0
Eine Übersicht über die in Version 2.0 eingesetzten Technologien bietet Tabelle 2.
Programmiersprache
Java 1.3, EJB-Kapselung
Betriebssystem Application-Server
verschiedene
Betriebssystem Communication-Server
Linux oder Derivate
Betriebssystem Client-Rechner
Betriebssystem unabhängig
Web-Server
Apache
Java Virtual Machine
Sun JDK 1.4, IBM JVM 3
EJB-Server
JBOSS
Java Servlet-Engine
Tomcat
Datenbank
PostgreSQL
Tabelle 2: Systemvoraussetzungen x-manage 2.0
12
3.3
J. Becker, O. Steffmann, A. Winkelmann
x-manage V 3.0 (2004)
Anfang 2004 wurde die x-manage-Version 3.0 erstmals offiziell vorgestellt (vgl.
Abbildung 8. Die grafische Benutzeroberfläche wurde funktional und technologisch verbessert, sodass es nun auch möglich war, in vielen Bereichen das System
per Tastatur zu bedienen. Es wurde jedoch auf eine tiefere Interaktion mit dem
Betriebssystem mittels ActiveX o. ä. verzichtet, um nicht die Browserunabhängigkeit zu Gunsten der Microsoftwelt zu vernachlässigen. x-manage kann seit
Version 3.0 erstmalig als Standardprodukt auf CD ausgeliefert und somit vor Ort
von Firmen ohne Hilfe der x-dot GmbH installiert werden.
Abbildung 8: Screenshot x-manage Version 3.0 (2004)
Funktional wurde insbesondere der Kommunikationsbereich deutlich erweitert
(vgl. Abbildung 9). SPAM-und Viren-Schutz wurden ebenso integriert wie PGPVerschlüsselung, IMAP-Unterstützung und die Verwaltung verschiedener
Absendersignaturen. Faxe, die bislang nur als einfache Texte versandt werden
konnten, können nun zunächst als PDF- oder Postscriptdatei erstellt und
anschließend versandt werden. Ein Faxdruckertreiber, der nötig wäre, um aus
allen lokalen Applikationen (Word, Excel usw.) ein Fax zu senden, wurde jedoch
in Version 3.0 noch nicht vorgestellt. Der x-manage-Anrufbeantworter kann seit
dieser Version telefonisch abgehört werden. Eine Interaktion mit dem Server ist
möglich (Anruf noch mal anhören, Anruf löschen usw.). Durch das
implementierte Jabber-Protokoll konnte Instant-Messaging-Funktionalität genutzt
werden. Die Gruppenfunktionalitäten des Terminkalenders wurden durch den
Evolution webbasierter Groupware
13
Einsatz des iCalendar-Protokolls wesentlich verbessert. Das Protokoll ermöglicht
auf effiziente Weise das Einladen zu und Koordinieren von gemeinsamen
Terminen. Als Standardprotokoll können diese Einladungen auch über
Systemgrenzen hinweg beispielsweise mit MS Exchange-Nutzern ausgetauscht
werden.
Abbildung 9: Funktionsumfang von x-manage V3.0
Als Erweiterung zur Version 2.0 wurde das SyncML-Protokoll implementiert, das
als Standardprotokoll die Synchronisation mit beliebigen Applikationen auf allen
SyncML-unterstützenden Plattformen ermöglicht. Über den integrierten
OpenLDAP-Server können darüber hinaus nun auch zentrale LDAPVerzeichnisse im Kontaktbereich genutzt werden. Die Implementierung des
VCard-Protokolls zum Austausch von Kontakten bzw. digitalen Visitenkarten per
Email runden die Neuerungen im Informationsbereich ab.
Technologisch zeichnete sich – wie bei vielen webbasierten Projekten – eine
Tendenz zur Integrierung statt Implementierung. Zahlreiche Funktionalitäten und
Erweiterungen wurden erst durch die Integration bestehender OpenSourceProjekte möglich. Während in den x-manage-Versionen 1.0 und 2.0 noch zu rund
80 % eigener Java-Quellcode verwendet wurde und kaum externe Projekte
eingebunden waren, konnten in x-manage 3.0 durch die Einbindung diverser
größerer und kleinerer OpenSource-Projekte rasche Fortschritte erzielt werden.
Eingebunden sind beispielsweise Projekte wie der Exim-Mailserver6, der
OpenLDAP-Server7 zur Integration bestehender LDAP-Verzeichnisse, der Cyrus
IMAP-Server8, CapiSuite9 als zentrale Komponente für die VoiceMail6
7
8
http://www.exim.org/
http://www.OpenLDAP.org/
http://asg.web.cmu.edu/cyrus/imapd/
14
J. Becker, O. Steffmann, A. Winkelmann
Kommunikation und HylaFAX10 für die Fax-Kommunikation, um nur einige
zentrale OpenSource-Projekte zu nennen. Die Groupware umfasste in Version 3.0
darüber hinaus über 70.000 Zeilen Java-Quellcode und ca. 2.000 eigene JavaKlassen.
Die zentrale Aufgabe des Entwicklungsteams wandelte sich von der
Implementierung neuer Funktionen zur Integration von Komponenten unter der
einheitlichen x-manage-Oberfläche. Das zentrale x-engine-Framework, das in den
vorangegangenen Versionen nur teilweise dem MVC-Paradigma folgte und eher
seitenbasiert arbeitete, wurde zur Unterstützung des Paradigmas erweitert. Durch
eine klare Trennung von Model, View und Controller wurde eine verbesserte
Flexibilität und Wiederverwertung von Funktionalitäten und ein optimiertes
Abarbeiten von Events möglich.
Eine Übersicht über die in Version 3.0 eingesetzten Technologien bietet Tabelle 3.
Programmiersprache
Java 1.4, Swing/AWT-ähnliche Komponenten,
EJB-Kapselung
Betriebssystem Application-Server
verschiedene
Betriebssystem Communication-Server
Linux oder Derivate
Betriebssystem Client-Rechner
Betriebssystem unabhängig
Web-Server
Apache
Java Virtual Machine
Sun JDK 1.4
EJB-Server
JBOSS
Java Servlet Engine
Tomcat
Datenbank
PostgreSQL, Oracle
Anzahl verwendeter Klassen
Ca. 30.000 Klassen (davon ca. 2.000 eigene
Klassen)
Tabelle 3: Systemvoraussetzungen x-manage 3.0
9
10
http://www.capisuite.de/
http://www.hylafax.org/
Evolution webbasierter Groupware
15
4 Ansatzpunkte für zukünftige
Groupwarearchitekturen
Trotz der technologischen Weiterentwicklung der Browser und der großen
Vorteile konnten webbasierte Groupwaresysteme nur einen weltweit geringen
Marktanteil erreichen. Nahezu 90% des Marktes wird derzeit von großen traditionellen Systemen dominiert [O.V.04]. Dies liegt u. a. daran, dass einige Nachteile
webbasierter Software die Akzeptanz browser-gestützter Systeme einschränken
[Spol04]:
•
Grafische Elemente sind auf Grund der Rendering-Performance heutiger
Browser nur bedingt einsetzbar, was die Gestaltung aufwändiger Benutzeroberflächen einschränkt. Auch rechenintensive Prozesse wie z. B. eine Rechtschreibprüfung mit Unterstreichung fehlerhafter Wörter oder eingeschränkte
Update-Prozesse eines Teilbereiches einer Seite ohne Neuaufruf eines
kompletten Frames vom Server sind derzeit in der Browserwelt nahezu
unmöglich.
•
Obwohl sich rich-client-Elemente (Buttons, Pull-Down-Menüs usw.) zumindest teilweise im Browser nachbilden lassen, entspricht die Benutzerführung
nicht der gewohnten. Eine vollständige Benutzung der Software über die
Tastatur oder Drag-und-Drop-Funktionalität ist – Browserunabhängigkeit der
webbasierten Software vorausgesetzt – nicht möglich. Ebensowenig wird der
Nutzer beim Schließen des Browserfensters auf einen möglichen Datenverlust
aufmerksam gemacht.
•
Die Nutzer müssen zwingend beim Arbeiten online sein. Ein Arbeiten
während Reisen usw. ist somit nur durch Synchronisation der Daten mit einer
lokalen Software möglich. Dies führt jedoch wiederum das Konzept
webbasierter Software ad absurdum.
Webbasierte Groupwareanwendungen leiden derzeit darunter, dass die
Komplexität bei der Weiterentwicklung überproportional zunimmt. Zumeist sind
Funktionalität und Benutzeroberfläche eng miteinander verwoben, sodass kleinere
Änderungen an der grafischen Oberfläche zwangsläufig zu größeren Änderungen
im Backend-Bereich führen. Darüber hinaus verlangen viele Anwender von einer
webbasierten Anwendung den selben Komfort und die gleiche Usability lokal
installierter Groupware-Applikationen.
Es ist davon auszugehen, dass die derzeitige kommerzielle Groupwarevielfalt mit
einer Vielzahl kleinerer Softwareprojekte in den nächsten Jahren abnehmen wird.
Neue größere Anbieter wie Sun oder Oracle sind zusätzlich zu den bisherigen
traditionellen größeren Herstellern mit eigenen Groupware-Produkten aktiv
geworden. Hinzu kommt eine Vielzahl an Open Source-Initiativen und
ehemaligen kommerziellen Produkten, die zu einer Konsolidierung des Marktes
führen werden, auch wenn derzeitige OpenSource-Projekte noch nicht den
16
J. Becker, O. Steffmann, A. Winkelmann
Standard herkömmlicher Groupwaresysteme erreicht haben [Drak04]. Während
bis in die Anfänge des 21. Jahrhunderts die webbasierten Anwendungsoberflächen
von traditionellen Groupwareanbietern vernachlässigt wurden, bieten diese
mittlerweile konkurrenzfähige browserbasierte Oberflächen zusätzlich zu ihren
leistungsstarken Softwareclients. Der Vorteil „anytime, anywhere, anyhow“
webbasierter Systeme wird durch diese Offensive und auch durch leistungsstarke
Terminalserverkonzepte (Citrix Metaframe, Microsoft Terminalserver usw.)
relativiert. Zusätzlich wird Groupwarefunktionalität zunehmend auch von
Softwareanwendungen aus den Bereichen CMS, WFMS, ERP oder DMS ins
Leistungsspektrum aufgenommen.
Bei derzeitigen Groupwaresystemen führt die konzeptionelle Trennung zwischen
verschiedenen Bereichen einer Groupwareanwendung zu Ineffizienzen bei der
Nutzung der Funktionen und Daten. Email-Adressen von Geschäftspartnern oder
Freunden, mit denen mehrfach Emails ausgetauscht wurden, tauchen nicht automatisch im Adressbuch auf, sondern müssen manuell übernommen werden. An
Emails angehängte Attachments werden nicht automatisch in Dateiordner abgelegt, sodass sie wie alle übrigen Dateien zur Verfügung stehen. Ordnerstrukturen
bieten keine Möglichkeit zur mehrdimensionalen Recherche nach Daten – einmal
in einen Emailordner einsortierte Emails lassen sich nur in diesem Ordner
wiederfinden. Grundlage für eine zukunftsorientierte Groupwarearchitektur muss
daher ein einheitliches Beschreibungsmodell und eine standardisierte Sprache
sein, um maschinelle Verarbeitung und Kommunikation auch über Funktions- und
Applikationsgrenzen hinweg zu ermöglichen.
Eine Möglichkeit zur Aufbereitung von Daten, sodass diese von Maschinen
„verstanden“ werden können, wird im Semantic Web mit den Sprachen RDF,
RDF Schema und DAML+OIL verfolgt. Hierbei werden auf Basis von Ontologien
und Metadaten Datenobjekte so aufbereitet, dass verschiedene Applikationen und
verteilte Computer(netze) auf diese zugreifen und die Daten mittels der
zugehörigen Metadaten verarbeiten können. Datenobjekte erhalten zur eindeutigen
Identifizierung eine Unified Resource Identifier (URI)11 und können auf andere
Datenobjekte verweisen (vgl. Abbildung 10).
11
Die genaue Syntax einer URI wird in RFC 2396 beschrieben. Vgl. RFC 2396:
Uniform Resource Identifiers (URI): Generic Syntax. http://www.isi.edu/innotes/rfc2396.txt.
Evolution webbasierter Groupware
17
Abbildung 10: Prototypische Datenabspeicherung in einem Semantic Web-basierten
Groupwaresystem
Mittels der über die Metadaten spezifizierten Daten, ihrer eindeutigen
Identifizierung via URI und der Möglichkeit, Datenobjekte bzw. Metadaten miteinander zu verknüpfen, entsteht die Möglichkeit, Informationen unabhängig vom
Entstehungsort zu verarbeiten. Während in heutigen Groupwaresystemen Kontaktdaten beispielsweise zum Kontakt „Axel Winkelmann“ starr abgespeichert werden, wird es unter Verwendung von Semantic Web-Technologien zukünftig möglich werden, Datenobjekte zu kombinieren. So können z. B. zusätzlich zu der abgespeicherten Telefonnummer aus allen Emails Email-Adressen von Axel Winkelmann extrahiert oder aus den Metadaten eines von ihm erstellten Word-Dokuments sein Arbeitgeber ermittelt werden. Über Metadatenabfragen werden Ordnerstrukturen obsolet, da sich beliebige Objekte verknüpfen lassen (z. B. Anzeigen
aller Emails, die heute eingegangen sind, von der Absenderdomain „x-dot.de“
stammen und noch ungelesen sind). Mittels leistungsfähiger Indexierungsverfahren können die gängigsten Strukturen bzw. Suchpfade permanent aktualisiert werden, sodass auch bei großen Datenmengen eine hohe Performance gewährleistet
wird. Die Navigation durch die Informationsbestände kann im einfachsten Fall
durch Suchfelder erfolgen.
Die Vorteile einer Semantic Web-basierten Groupwarearchitektur reichen über die
Substitution klassischer Ordnerstrukturen hinaus, da über das URI-Konzept auch
Datenobjekte auf anderen Rechnern adressiert werden können (verteilte
18
J. Becker, O. Steffmann, A. Winkelmann
Szenarien) oder andere Applikationen auf die Groupware-immanenten Daten
zugreifen bzw. diese mit Daten anderer Applikationen verknüpft werden können.
Erste Applikationen wie GMail12 oder ZOË13, die auf gängige Ordnerkonzepte
verzichten, zeigen, dass die sich ergebenden Vorteile unabhängig von der Diskussion Rich-Client vs. Webapplikation genutzt werden können. Die x-dot GmbH
baut derzeit auf Basis von Semantic Web-Technologien einen ersten GroupwarePrototypen, der ab Herbst 2004 auf den Seiten http://www.x-knowledge.de zur
Demonstration zur Verfügung stehen wird (vgl. Abbildung 11).
Abbildung 11: Sicht auf ein Semantic Web-basiertes Groupwaresystem
12
13
http://www.google.com bzw. http://www.gmail.com.
http://zoe.nu/
Evolution webbasierter Groupware
19
Literatur
[Bard98] Bardram, J.: Designing for the Dynamics of Cooperative Work Activities.
In: Proceedings on CSCW 98. Computer Supported Cooperative Work. Hrsg.: S.
Poltrock, J. Grudin. Seattle, Washington 1998, S. 89-98.
[BeSc04] Becker, J.; Schütte, R.: Handelsinformationssysteme. Landsberg/Lech
2004.
[Bock92] Bock, G.: Groupware: The Next Generation for Information Processing?
In: Groupware. Software for Computer-Supported Cooperative Work. 2nd Ed.
Hrsg.: D. Marca, G. Bock. Washington, Brussels, Tokyo 1992, S. 1-6.
[Bock93] Bock, G.: What is Groupware, anyway? In: GroupWare’93 Europe
Conference Proceedings. Ed.: D. Coleman. Scottsdale 1993, S. 1-12.
[Born95] Bornschein-Grass, C.: Groupware und computerunterstützte
Zusammenarbeit - Wirkungsbereiche und Potentiale. Hrsg.: A. Picot, R.
Reichwald. Wiesbaden 1995.
[Bus+93] Busbach, U.; Fuchs, L., Syrin, A.: ASCW: Ein Assistent zur
Unterstützung synchroner und asynchroner Kooperation. In: Unterstützung
Organisatorischer Prozesse durch CSCW. GI/FA 5.5-Workshop, Münster 1993.
Arbeitsberichte des Instituts für Wirtschaftsinformatik, Münster. Hrsg.: S. Kirn, R.
Unland. Münster 1993, S. 45-59.
[CaTh97] Cats-Baril, W.; Thompson, R.: Information Technology and
Management. Chicago et al. 1997.
[Drak04] Drakos, N.: Open-Source Teams Collaboration Tools Not Up to Big
Tasks Yet. Gartner Group, 30. 3. 2004.
[Dohm94] Dohmen, W.: Kooperative Systeme. Techniken und Chancen.
München, Wien 1994.
[Edwa97] Edwards, J.: 3-tier client/server at work. Portland, 1. Aufl., Portland
1997.
[Elli+92] Ellis, C. A.; Gibbs, S. J.; Rein, G. L.: Some Issues and Experiences. In:
Groupware. Software for Computer-Supported Cooperative Work. 2nd Ed. Hrsg.:
D. Marca, G. Bock. Washington, Brussels, Tokyo 1992, S. 24-32.
[Grah01]
Graham,
P.:
The
other
road
ahead.
Abruf
http://www.paulgraham.com/road.html. Abrufdatum 16.06.2004.
unter:
[Grud94] Grudn, J.: CSCW: History and Focus. In: IEEE Computer 27 (1994) 5,
S. 19-26.
[KaJo98] Karsten, H.; Jones, M.: The Long and Winding Road: Collaborative IT
and organisational change. In: Proceedings on CSCW 98. Computer Supported
20
J. Becker, O. Steffmann, A. Winkelmann
Cooperative Work. Hrsg.: S. Poltrock, J. Grudin. Seattle, Washington 1998, S. 2938.
[MaBo92] Marca, D., Bock, G.: Coordinators. In: Groupware. Software for
Computer-Supported Cooperative Work. 2nd Ed. Hrsg.: D. Marca, G. Bock.
Washington, Brussels, Tokyo 1992, S. 446-447.
[Meye93] Meyer, H-M.: Softwarearchitekturen für verteilte Verarbeitung. In:
Client-Server-Architektur. Grundlagen und Herstellerkonzepte für Downsizing
und Rightsizing. Hrsg.: W-R. Hansen. Bonn u. a. 1993, S. 69-116.
[Mosk99] Moskowitz, L.: HotOffice Debuts Free Intranet. NetworkWorldFusion,
13.10.1999.
Abruf
am
05.9.2000.
http://www.nwfusion.com/news/1999/1013freeintra.html.
[Nast97] Nastansky, L., Ott, M.: Groupware, Charakterisierung und
technologische Perspektive. In: WiSt - Wirtschaftswissenschaftliches Studium.
Frankfurt a. M. 1997, S. 90-94.
[Ober91] Oberquelle, H.: Kooperative Arbeit und menschengerechte Groupware
als Herausforderung für die Software-Ergonomie. In: Kooperative Arbeit und
Computerunterstützung. Hrsg.: H. Oberquelle, Stuttgart 1991, S.1-10.
[O.V.04] O. V.: Groupware Scoreboard. 09.06.2004. Abruf
http://techupdate.zdnet.com/enterprise_software/groupware_pd.html.
unter:
[Schr96] Schräder, A.: Management virtueller Unternehmungen. Frankfurt/New
York 1996.
[Spol04] Spolsky, J.: How Microsoft lost the API war. 13. Juni 2004. Abruf unter:
http://www.joelonsoftware.com/articles/APIWar.html. Abrufdatum: 16.06.2004.
[Teuf95] Teufel, S. u. a.: Computerunterstützung für die Gruppenarbeit. Bonn
1995.
[Wald93] Walden, C: Using Video Conferencing to Increase Corporate
Productivity. In: GroupWare’93 Europe Conference Proceedings. Ed.: D.
Coleman. Scottsdale 1993, S. 297-312.
[Wied99] Wiedenbeck, S. (1999). The use of icons and labels in an end user
application program: an empirical study of learning and retention. Behaviour &
Information Technology, 18 (1999) 2, 68-82.
[Wink00] Winkelmann, A.: Entwicklung von Business-to-Employee-InternetPortals. Eine Marktstudie am Beispiel von Web-Office-Anbietern. Diplomarbeit
an der Universität Münster 2000.