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.