Diplomarbeit - Groupware Competence Center

Transcription

Diplomarbeit - Groupware Competence Center
Fakultät für Wirtschaftswissenschaften
Department 3 Wirtschaftsinformatik - Business Information Systems
Prof. Dr. Ludwig Nastansky
Warburger Str. 100
33098 Paderborn
Diplomarbeit
Entwicklung einer generischen Schnittstelle
zum Datenaustausch zwischen Groupware-basierten
Applikationen und Oce Suites
am Beispiel von IBM Lotus Notes 8,
PAVONE Enterprise Oce und OpenOce.org
David Bergen
vorgelegt bei
Prof. Dr. Ludwig Nastansky
Paderborn, April 2008
Eidesstattliche Erklärung
Ich erkläre hiermit an Eides Statt, dass ich die vorliegende Arbeit selbstständig und ohne unerlaubte fremde Hilfe sowie ohne Benutzung anderer als der angegebenen Quellen
angefertigt habe. Alle Ausführungen, die wörtlich oder sinngemäÿ übernommen worden
sind, sind als solche gekennzeichnet. Die Arbeit hat, soweit mir bekannt, in gleicher oder
ähnlicher Form noch keiner anderen Prüfungsbehörde vorgelegen.
Paderborn, den 30. April 2008
i
Inhaltsverzeichnis
1. Einleitung
1
1.1.
Ziel der Arbeit
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.
Aufbau der Arbeit
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Theoretische Grundlagen
2.1.
2
2
4
Oce-Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
2.1.1.
Individuelle Oce-Anwendungen
. . . . . . . . . . . . . . . . . . .
8
2.1.2.
Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.1.3.
Workow
21
2.1.4.
Archivierung
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.2.
Groupware und Groupware-basierte Anwendungen . . . . . . . . . . . . . .
25
2.3.
Oce Suites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
2.4.
Generische Schnittstelle zwischen Groupware-Systemen und Oce Suites
.
31
2.5.
Technische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
2.5.1.
Component Object Model (COM) Technologie . . . . . . . . . . . .
33
2.5.2.
Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
3. Konzepte zum Datenaustausch
3.1.
Technische Betrachtung
36
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.1.1.
Groupware-Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.1.2.
Oce Suites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
3.2.
Re-Engineering der PAVONE OceGateway Schnittstelle . . . . . . . . . .
59
3.3.
Konzeptanforderungen
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
3.4.
Vergleich verschiedener Konzeptansätze . . . . . . . . . . . . . . . . . . . .
70
3.5.
Bewertung der Konzeptansätze
79
. . . . . . . . . . . . . . . . . . . . . . . .
ii
Inhaltsverzeichnis
3.6.
iii
Auswahl eines Konzeptes für die prototypische Implementierung
4. Prototypische Realisierung der OceGateway Schnittstelle
5. Zusammenfassung
6. Ausblick
Anhang
A.
Eingesetzte Software
Abbildungsverzeichnis
Tabellenverzeichnis
Listingsverzeichnis
Literaturverzeichnis
. . . . . .
85
86
98
100
102
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
103
105
106
107
Abkürzungsverzeichnis
ACL
AIX
AMaViS
API
BSI
BWL
CD
CLI
CMS
COM
CSCW
DCOM
DIN
DLL
DMS
DOS
EE
EIP
Access Control List
Advanced Interactive eXecutive
A Mail Virus Scanner
Application Programming Interface
Bundesamt für Sicherheit in der Informationstechnik
Betriebswirtschaft
Compact Disc
Common Language Infrastructure
Content-Management-Systeme
Component Object Model
Computer Supported Cooperative Work
Distributed Component Object Model
Deutsches Institut für Normung e.V.
Dynamic Link Library
Dokumenten-Management-System
Disk Operating System
Enterprise Edition
Enterprise Information Portal
iv
Inhaltsverzeichnis
GPL
GUI
HTML
HTTP
HTTPS
General Public Licence
Graphical User Interface
Hypertext Markup Language
Hypertext Transfer Protocol
Hypertext Transfer Protocol über Secure Sockets Layer (SSL)/Transport
Layer Security (TLS)
IBM
IEC
IDE
IMAP
IMAPS
IP
ISDN
ISO
IT
J2EE
JavaEE
JDK
JRE
JSP
JVM
KDE
LDAP
LDAPS
International Business Machines Corporation
International Electrotechnical Commission
Integrated Development Environment
Internet Message Access Protocol
Internet Message Access Protocol über SSL/TLS
Internet Protocol
Integrated Services Digital Network
International Organization for Standardization
Informationstechnik
Java Platform, Enterprise Edition
Java Platform, Enterprise Edition
Java Development Kit
Java Runtime Environment
JavaServer Pages
Java Virtual Machine
K Desktop Environment
Lightweight Directory Access Protocol
Lightweight Directory Access Protocol über SSL/TLS
v
Inhaltsverzeichnis
LGPL
LS2J
MAPI
MCSE
MIME
OASIS
ODBC
ODF
OLE
OS
OX
PC
PDF
PHP
PKI
PIM
POP
RCP
ROM
RPC
RSA
RSS
SDK
SISSL
LGNU Lesser General Public License
LotusScript-to-Java
Messaging Application Programming Interface
Microsoft Certied Systems Engineer
Multipurpose Internet Mail Extension
Organization for the Advancement of Structured Information Standards
Open Database Connectivity
Open Document Format
Object Linking and Embedding
Operating System
Open-Xchange
Personal Computer
Adobe Portable Document Format
PHP: Hypertext Preprocessor
Public Key Infrastructure
Personal Information Manager
Post Oce Protocol
Rich Client Platform
Read-Only Memory
Remote Procedure Call
Rivest, Shamir und Adelman
Really Simple Syndication
Software Devolopment Kit
Sun Industry Standards Source License
vi
Inhaltsverzeichnis
SLOX
SMTP
SMTPS
SOA
SOAP
SQL
SSL
S/MIME
TAR
TCP
TLS
UDDI
UDK
UML
UNO
URI
URL
VAX
VB
VBA
VoIP
W3C
WAP
WSDL
Suse Linux Openexchange Server
Simple Mail Transfer Protocol
Simple Mail Transfer Protocol über SSL/TLS
Serviceorientierten Architektur
Simple Object Access Protocol
Structured Query Language
Secure Sockets Layer
Secure / Multipurpose Internet Mail Extension
Tape File Archiver
Transmission Control Protocol
Transport Layer Security
Universal Description, Discovery and Integration
Uno Software Development Kit
Unied Modeling Language
Universal Network Object
Uniform Resource Identier
Uniform Resource Locator
Virtual Address eXtension
Visual Basic
Visual Basic for Applications
Voice over Internet Protocol (IP)
World Wide Web Consortium
Wireless Access Protocol
Web Services Description Language
vii
Inhaltsverzeichnis
XML
Extensible Markup Language
viii
1. Einleitung
In den letzten 30 Jahren hat sich die Automatisierung am Büroarbeitsplatz von isolierten Textverarbeitungssystemen zu integrierten Oce-Systemen gewandelt.
1
Innova-
tionsmotor war und ist immer noch das Bestreben, die Durchlaufzeiten typischer Büroprozesse, wie beispielsweise das Schreiben von Serienbriefen, die Kostenkalkulation,
die Teamkoordination oder das Erstellen präsentationsfähiger Diagramme, zu verringern
und dabei eine verbesserte Ergebnisqualität zu erzielen.
2
Einerseits wird die individuelle
Produktivität durch Sofwarewerkzeuge, allgemein bekannt als Oce Suites, gesteigert.
Anderseits wird die Gruppenarbeit durch integrierte Groupware-Systeme und WorkowManagement-Systeme eektiv unterstützt.
Oce Suites bestehen aus einer Ansammlung integrierter Softwarekomponenten, die auf
unterschiedliche Aufgabengebiete spezialisiert sind. Dazu können Softwarekomponenten
zur Textverarbeitung, Tabellenkalkulation, Präsentationserstellung, Grakerstellung und
3
zum persönlichen Informationsmanagement zählen. Die Aufgabe von Groupware-Systeme
ist hingegen die Kommunikation und Kooperation zu unterstützen, um eine eektive Koordination von Gruppenarbeit zu gewährleisten.
4
Durch einen gegenseitigen Datenaustausch zwischen Groupware-Systemen und Oce Suites erönen sich neue Möglichkeiten im Einsatz der Oce-Systeme. Zum Beispiel lassen
sich wichtige Kundendaten, die sich in einer Groupware Datenbank benden, mit den
Bordmitteln eines Groupware-Systems nicht präsentationsfähig aufbereiten.
1 Vgl. [Hansen und Neumann, 2005] S.326
2 Vgl. [Hansen und Neumann, 2005] S.326
3 Vgl. [Abts und Mülder, 2004] S.194
4 Vgl. [Hansen und Neumann, 2005] S.441
1
1. Einleitung
2
Doch wenn diese Daten mithilfe einer Datenaustauschlösung der Tabellenkalkulationsanwendung einer Oce Suite zur Verfügung gestellt würden, könnten die Kundendaten dort
ausgewertet und in Graken visuell dargestellt werden.
1.1. Ziel der Arbeit
Das Ziel dieser Arbeit ist die Entwicklung einer generischen Schnittstelle zum Datenaustausch zwischen Groupware-basierten Applikationen und Oce Suites. Dazu sollen
erst einmal Groupware-Systeme und Oce Suites voneinander abgegrenzt werden, um
Unterschiede und Berührungspunkte im Anwendungskontext aufzuzeigen. Das Hauptaugenmerk dieser Arbeit liegt auf der Erarbeitung von möglichen Schnittstellenkonzepten,
um einen Datenaustausch zu ermöglichen. Dieses wird in Kooperation mit der PAVONE
5
AG , konkret am Beispiel ihrer Groupware-basierten Anwendung PAVONE Enterprise
Oce untersucht, die eine auf dem Groupware-System Lotus Notes basierende Anwendung
für das Prozess- und Informationsmanagement ist.
6
Die konzeptionelle Arbeit, wie auch
die anschlieÿende prototypische Implementierung, konzentrieren sich auf die PAVONE
OceGateway Schnittstelle, die in die PAVONE Enterprise Oce Anwendung integriert
werden kann, um Daten mit Oce Suites auszutauschen. Dabei soll die OceGateway
Schnittstelle dahingehend adaptiert werden, dass ein Datenaustausch zwischen Lotus
Notes und OpenOce.org auf den beiden Betriebssystemplattformen Windows und Linux
möglich ist.
1.2. Aufbau der Arbeit
Zunächst erfolgt in Kapitel 2 ein Überblick über die theoretischen Grundlagen. Es wird der
Kontext von Oce-Systemen im Bereich des Oce-basierten Arbeitens abgegrenzt. Eine
begriiche Einordnung von Groupware und Oce Suites ermöglicht die Unterschiede und
Berührungspunkte zwischen ihnen, hinsichtlich des angestrebten Datenaustausches, aufzuzeigen. Weiterhin erfolgt eine Einführung in die technischen Grundlagen der Plattform-
5 http://www.pavone.de
6 Vgl. [PAVONE, 2008a] S.7
1. Einleitung
3
Technologie COM und der Web Service Technik, die für das weitere Verständnis dieser
Arbeit von Bedeutung sind.
In Kapitel 3 wird erst einmal eine technische Betrachtung verschiedener GroupwareSysteme und Oce Suites gegeben. Danach folgt das Re-Engineering der PAVONE OceGateway
Schnittstelle, die als Beispiel für den Datenaustausch zwischen Groupware-basierten Anwendungen und Oce Suites ausgewählt wird. Auf Basis der Ergebnisse aus dem ReEngineering der PAVONE OceGateway Schnittstelle sollen Anforderungen an das Konzept zum Datenaustausch zwischen Lotus Notes 8 und OpenOce.org deniert werden, die
als Bewertungsgrundlage der verschiedenen Konzeptansätze dienen. Nach der Diskussion
der Konzeptsansätze folgt die prototypische Implementierung der neuen OceGateway
Schnittstelle in Kapitel 4.
Die Zusammenfassung in Kapitel 5 reektiert noch einmal die wichtigsten Konzepte, Ergebnisse und Probleme. Das Kapitel 6 zeigt auf, welche Funktionalitäten noch implementiert werden müssen, um die neue OceGateway Schnittstelle marktfähig zu machen.
2. Theoretische Grundlagen
[Abts und Mülder, 2004] teilen die Anwendungssoftware, wie in Abbildung 2.1 zu sehen, in
betriebswirtschaftliche, technisch-wissenschaftliche, branchenbezogene und QuerschnittsAnwendungen ein.
1
Software
Systemsoftware
Betriebs−
systeme
Datenbank−
systeme
Netzwerk−
software
Abbildung 2.1.: Aufgliederung
Anwendungssoftware
Software−
Entwicklungs−
systeme
der
Technisch/
Wissenschaft−
liche
Software
Betriebs−
wirtschaftliche
Software
Software
in
System-
und
Branchen−
Software
Querschnitts−
Software
Anwendungssoftware
([Abts und Mülder, 2004] S.62)
Querschnittssoftware kann branchenübergreifend eingesetzt werden, da sich damit einfache und allgemeine betriebliche Aufgaben lösen lassen.
2
Betriebswirtschaftliche Anwen-
dungssoftware wird im kaufmännischen Umfeld, wie beispielsweise zur Unterstützung von
Finanz- und Rechnungswesen, der Personalwirtschaft oder der Materialwirtschaft, eingesetzt.
3
Technisch-wissenschaftliche Anwendungssoftware kommt beispielsweise bei ma-
thematischen Berechnungen, beim Lösen von statistischen Problemen, bei der Konstruktion und Entwicklung von Produkten oder zum Steuern von Produktionsverfahren und
-maschinen zum Einsatz.
4
Branchensoftware trägt dagegen den speziellen Anforderungen
1 Vgl.[Abts und Mülder, 2004] S.62
2 Vgl. [Kroll, 2000] S.177
3 Vgl. [Abts und Mülder, 2004] S.63
4 Vgl. [Abts und Mülder, 2004] S.63
4
2. Theoretische Grundlagen
5
des Leistungserstellungsprozesses einzelner Branchen Rechnung.
SAP
6
5
Der Softwareanbieter
bietet mehrere Branchenlösungen unter anderem für Banken, der Automobilbran-
7
che oder dem Einzelhandel an.
Querschnittssoftware
Multimedia−
systeme
Wissens−
managment−
Systeme
Abbildung 2.2.: Oce-Systeme
Content−
Managment
Systeme
Unternehmens−
portale
im
Kontext
der
Office−
Systeme
Querschnittssoftware
(Vgl.
[Abts und Mülder, 2004] S.62)
Oce-Systeme
8
werden, wie in Abbildung 2.2 zu sehen ist, zur speziellen Gruppe von
Anwendungssoftware, nämlich der Querschnittssoftware, gezählt. Querschnittssoftware
kann unabhängig von der Unternehmenshierachie oder bestimmten Benutzergruppen an
betrieblichen Arbeitsplätzen eingesetzt werden.
9
Zur Querschnittssoftware zählen nach
[Abts und Mülder, 2004] nicht nur Oce-Systeme, sondern auch Multimedia-Systeme,
Wissensmanagement-Systeme, Unternehmensportale und Content-Management-Systeme
(CMS), die nun im Folgenden, wenn nicht explizit eine andere Quelle angegeben wird,
entsprechend der Ausführungen von [Abts und Mülder, 2004] näher erklärt werden.
10
Multimedia-Systeme
Bei Multimedia-Systemen wird durch gleichzeitige Nutzung unterschiedlicher Medien der
Wirkungsgrad der Informationsübermittlung zum Benutzer gesteigert. Dabei ist ein multimediales Informationssystem durch die computergesteuerte Erzeugung, Manipulation,
Darstellung, Speicherung und Kommunikation von unabhängigen Informationen gekennzeichnet. Der Einsatz von Multimedia-Systemen in Unternehmen liegt schwerpunktmäÿig
5 Vgl. [Abts und Mülder, 2004] S.63
6 http://www.sap.com/index.epx
7 Vgl. [Hansen und Neumann, 2005] S.589
8 Eine genauere Betrachtung folgt im Abschnitt 2.1
9 Vgl. [Stahlknecht und Hasenkamp, 2002] S.331
10 Vgl. [Abts und Mülder, 2004] S.187
2. Theoretische Grundlagen
6
im Marketingbereich, beispielsweise in Form von multimedialen Produktpräsentationen
in Compact Disc (CD)-Read-Only Memory (ROM)-Katalogen. Auch im Weiterbildungsbereich werden multimediale Informationssysteme eingesetzt, die die Gruppenarbeit und
das Lernen durch Telekooperation und Telelernen fördern.
11
Wissensmanagement-Systeme
Wissensmanagement-Systeme bieten eine computergestützte Unterstützung zur Nutzung
des in einem Unternehmen und auÿerhalb des Unternehmens vorhandenen Wissens. Ziel
ist das Wissen, welches als klassizierte und interpretierte Information verstanden wird,
in einem systematischen Prozess zu managen. Dieser Wissensmanagementprozess besteht
aus folgenden Schritten:
1. Denition von Wissenszielen
2. Wissensgewinnung durch Identizierung von relevantem Wissen
3. Wissensstrukturierung beispielsweise mit Hilfe von Schlagworten, Suchbegrien, Hyperlinks oder Ablagesystematiken
4. Wissensdarstellung zur zielgruppengenaue Aufbereitung des Wissens zum Beispiel
durch Portale oder multimedialer Informationsdarstellung
5. Wissensverteilung beispielsweise durch den Einsatz von Internet, Intranet, E-Mails,
Diskussionsforen, Really Simple Syndication (RSS)
12
-Feeds, Weblogs, Wikis oder
Mailinglisten
6. Wissensnutzung zum Beispiel durch den Einsatz von Abfragesprachen und Suchmaschinen zur Schlagwortsuche bzw. zur Volltextsuche
7. Wissensspeicherung zum Beispiel in Datenbanksystemen
8. Wissensbewertung
11 Vgl. [Abts und Mülder, 2004] S.215-217
12 RSS bezeichnet einen Extensible Markup Language (XML)-Dateiformat, mithilfe dessen Informationen,
die in Form einer Liste vorliegen, als Schlagzeilen mit kurzen Beschreibungen (RSS-Feeds) standardisiert zur Verfügung gestellt werden können. (Vgl. [Koer und Öggl, 2005] S.229)
2. Theoretische Grundlagen
7
Das Problem bei Wissensmanagement-Systemen ist die Tatsache, dass der gröÿte Teil
des Wissens eines Unternehmens nicht als Schriftstück oder Dokument vorliegt und somit
auch nicht informationstechnisch verarbeitet werden kann.
13
Unternehmensportale
Ein Unternehmensportal wird auch als Enterprise Information Portal (EIP) bezeichnet
und ist eine Webseite, die innerhalb eines Unternehmens dem Mitarbeiter Zugang zu internen und externen Informationen, Anwendungen und Diensten bietet. Der Zugang ist
an den individuellen Informationsbedarf des jeweiligen Benutzers angepasst und erschlieÿt
viele für die Aufgabenstellung des Benutzers typischen Anwendungen. Da ein Portal auf
Internet-Technik basiert, kann der Benutzer im Normalfall von jedem beliebigen Ort aus
14
über einen Browser auf seine personalisierten Informationen zugreifen.
Content-Management-Systeme
CMS ermöglichen Medieninhalte, oft auch als Content bezeichnet, dezentral, arbeitsteilig und ohne Programmierkenntnisse zu erstellen, im Inter- oder Intranet zu publizieren,
verändern, archivieren oder zu löschen. Dabei kann es sich bei den Medieninhalten um
Texte, Bilder, Graken, Audio-Ausschnitte, Video-Sequenzen, Animationen, interaktive
Elemente oder Links handeln.
15
2.1. Oce-Systeme
16
In der Literatur werden für Oce-Systeme auch die Begrie Bürosysteme
mationssysteme
17
und Büroinfor-
verwendet. Oce-Systeme sind Anwendungssoftware, die die fachlichen
18
Aufgabenstellungen der Anwender unterstützen.
13 Vgl. [Abts und Mülder, 2004] S.217-221
14 Vgl. [Abts und Mülder, 2004] S.222-224
15 Vgl. [Abts und Mülder, 2004] S.224-226
16 Vgl. [Abts und Mülder, 2004] S.192
17 Vgl. [Fischer et al., 2002] S.76 und [Hansen und Neumann, 2005] S.326
18 Vgl.[Kirchmer, 1996] S.13
2. Theoretische Grundlagen
8
Office−Systeme
Individuelle
Office−
Anwendungen
Kommunikation
Abbildung 2.3.: Softwarewerkzeuge
der
Workflow
Anwendungsebene
Archivierung
von
Oce-Systemen
(Vgl.
[Abts und Mülder, 2004] S.62)
Nach [Abts und Mülder, 2004] beinhaltet die Anwendungsebene von Oce-Systemen, wie
in Abbildung 2.3 dargestellt, Softwarewerkzeuge für individuelle Oce-Anwendungen,
Kommunikation, und Archivierung.
2.1.1. Individuelle Oce-Anwendungen
Softwarewerkzeuge, die zur Erhöhung der individuellen Produktivität beitragen, können
als individuelle Oce-Anwendungen oder als Produktivitätsanwendungen
20
werden.
19
bezeichnet
Zu diesen Softwarewerkzeugen zählen Anwendungen zur Textverarbeitung, Ta-
bellenkalkulation, Präsentation, Grakerstellung und zum persönlichen Informationsmanagement, wie Adressverwaltung, Terminverwaltung, Aufgabenverwaltung und Notizver-
21
waltung.
Textverarbeitungsanwendung
Zu den Hauptanforderungen an die Textverarbeitung gehören das Erfassen, Überarbeiten,
Speichern und Drucken von Texten. Weitere typische Funktionen von Textverarbeitungsprogrammen sind nach [Hansen und Neumann, 2005]:
•
die Unterstützung der Texteingabe durch die Rechtschreibhilfe, die Formatspeicherung, die Tabellenbearbeitung oder den automatischen Zeilen- und Seitenumbruch
19 Vgl. [Weiss, 2002] S.103
20 Vgl. [Abts und Mülder, 2004] S.194
21 Vgl. [Abts und Mülder, 2004] S.194
2. Theoretische Grundlagen
•
9
die Formatierungsmöglichkeit des Schriftbildes durch freie Auswahl der Schriftart,
der Schriftgröÿe und der Schriftform
•
textmengenorientierte Funktionen, wie das Selektieren von Zeichen oder ganzen
Textblöcken, das Suchen innerhalb des Textes oder das Erstellen von Serienbriefen
•
dokumentenbezogene Funktionen, wie zum Beispiel die automatische Seitennummerierung, der Einsatz von Kopf- und Fuÿzeilen, das automatische Erzeugen von
Inhaltsverzeichnissen oder die Fuÿnotenbehandlung
•
Speicherungs- und Wiedergabefunktionen wie das Archivieren, Löschen, Umbenennen und Kopieren von Dokumenten oder die Suchmöglichkeit über mehrere Dokumente hinweg
Als eine wichtige Funktion sei noch die Programmierbarkeit erwähnt, die es erlaubt, durch
die Erstellung von Makros, Funktionsabläufe zu automatisieren.
Tabellenkalkulationsanwendung
Die Tabellenkalkulation besteht aus einer zweidimensionalen Tabelle, die aus Zellen besteht und somit Zeilen und Spalten bilden.
Texte und Formeln eingegeben werden.
23
22
In den Zellen können jeweils Zahlenwerte,
Die Zellen können durch die Zeilen- und Spal-
tenangaben adressiert werden, sodass zwischen den Zellen mathematische Beziehungen
hergestellt werden können.
24
Die Zellen können mit mathematischen Funktionen, statis-
tischen Funktionen oder nanzmathematischen Funktionen, Datums- und Zeitfunktionen
25
gefüllt werden.
Durch das Vorhandensein von mehreren zweidimensionalen Tabelle, die
untereinander in Beziehung stehen können, lässt sich die dritte Dimension realisieren. Wie
bei Textverarbeitungsprogrammen stehen mehrere Möglichkeiten zur Layoutgestaltung
26
bereit, wie beispielsweise die Schriftformatierung oder der Einsatz von Tabellenrahmen.
Weiterhin besteht die Möglichkeit, Funktionsabläufe durch Makros zu automatisieren oder
22 Vgl. [Abts und Mülder, 2004] S.196
23 Vgl. [Abts und Mülder, 2004] S.196
24 Vgl. [Abts und Mülder, 2004] S.196
25 Vgl. [Abts und Mülder, 2004] S.197
26 Vgl. [Abts und Mülder, 2004] S.197
2. Theoretische Grundlagen
10
die Tabellendaten grasch auswerten zu lassen.
27
Neben zweidimensionalen Graken wie
Balken-, Linien- oder Kreisdiagrammen stehen auch dreidimensionale Darstellungen zur
graschen Auswertung zur Verfügung.
28
Dabei wird die Grak bei einer Wertänderung in
der Tabellenkalkulation automatisch angepasst.
29
Präsentationsanwendung
30
Die Präsentationsanwendung ermöglicht das Erstellen von Folien, Dias und Handouts.
Dabei wird das Einbinden von Text, Bildern, Animationen, Audio- und Videosequenzen
31
auf den Folien unterstützt.
Um die Folien in einem einheitlichen Layout präsentieren
zu können, kann ein Folienmaster als Layoutvorlage verwendet werden.
32
Die Übergänge
zwischen den einzelnen Folien können variabel eingestellt werden und optional kann der
Ablauf der Präsentation zeitgesteuert angezeigt werden.
33
Die Präsentationsfolien können
am Bildschirm oder durch einen Beamer, aber auch auf ausgedruckten Overheadfolien
34
präsentiert werden.
Persönliches Informationsmanagement
Nach [Hansen und Neumann, 2005] zählen zum persönlichen Informationsmanagement
Anwendungen zur Unterstützung der Planung und Organisation von Terminen, Aufgaben und Adressen.
Zur Terminverwaltung wird ein Terminkalender eingesetzt, der es dem Benutzer ermöglicht seine Termine und Aktivitäten für einen bestimmten Tag und einer bestimmten Uhrzeit zu planen. Dabei können auch immer wiederkehrende Termine eingetragen werden.
Als Vorteil gegenüber traditionellen Terminkalendern können jedoch Ereignisse deniert
werden, die beispielsweise eine Stunde vor wichtigen Besprechungen eine Erinnerungsmeldung auslösen.
27 Vgl. [Abts und Mülder, 2004] S.197
28 Vgl. [Abts und Mülder, 2004] S.197
29 Vgl. [Abts und Mülder, 2004] S.197
30 Vgl. [Hansen und Neumann, 2005] S.354
31 Vgl. [Hansen und Neumann, 2005] S.356
32 Vgl. [Hansen und Neumann, 2005] S.355
33 Vgl. [Abts und Mülder, 2004] S.197
34 Vgl. [Abts und Mülder, 2004] S.197
2. Theoretische Grundlagen
11
Netzwerkfähige Terminkalender zählen zu den Softwarewerkzeugen, die die Kommunika-
35
tion unterstützen und werden im Unterabschnitt 2.1.2 behandelt.
Das Ziel einer persönlichen Adressverwaltung ist die Speicherung von wichtigen Angaben zu geschäftlichen und persönlichen Kontakten. Dabei reichen die Eingabemöglichkeiten von Basisdaten wie Name, Adresse, Telefonnummer und E-Mailadresse bis hin zu
Zusatzinformationen wie Spitzname oder persönlicher Webseite. Bei guten Adressverwaltungsprogrammen besteht die Möglichkeit die Kontakte zu kategorisieren und zusätzliche
Kontakte durch einen Importlter aus anderen Anwendung aufzunehmen. Es können auch
die eingegebenen Daten durch einen Exportlter in andere Programme eingebunden werden, um zum Beispiel ein Programm mit Adressdaten für das Erstellen von Serienbriefen
zu nutzen.
36
Die Aufgabenverwaltung ermöglicht es dem Benutzer alle seine zu erledigenden Aufgaben
zu managen. Die Aufgaben können mit einem bestimmten Fälligkeitszeitpunkt deniert,
mit individuellen Prioritäten belegt oder bestimmten Kategorien zugeordnet werden. Es
besteht die Möglichkeit die Aufgabenliste nach verschiedenen Parametern, beispielsweise der Wichtigkeit oder der Dringlichkeit, zu sortieren und dabei die schon erledigten
37
Aufgaben entweder abzuhaken, auszublenden oder ganz zu löschen.
Ziel der Notizverwaltungsanwendung ist es, die Notizzettel auf dem realen Schreibtisch
nachzuempnden. Der Benutzer kann seine Notizen (Memos) auf unterschiedlich gefärbten Zetteln verfassen, beliebig sortieren, nach Themen kategorisieren und den Inhalt auch
38
in andere Anwendungen hinein kopieren.
Grakanwendung
Bei den Anwendungen zur Grakerstellung muss zwischen pixelorientierten und vektororientierten Programmen unterschieden werden. Die pixelorientierten Programme speichern
39
Bilder als eine Folge verschiedenfarbiger Bildpunkte.
Dabei deniert jeder einzelne Bild-
punkt einer Pixelgrak einen Farbwert, der separat bearbeitet werden kann.
35 Vgl. [Hansen und Neumann, 2005] S.339-341
36 Vgl. [Hansen und Neumann, 2005] S.341-343
37 Vgl. [Hansen und Neumann, 2005] S.342
38 Vgl. [Hansen und Neumann, 2005] S.342-343
39 Vgl. [Hansen und Neumann, 2005] S.389
40 Vgl. [Hansen und Neumann, 2005] S.389
40
Es können
2. Theoretische Grundlagen
12
Linien, Rechtecke, Vielecke, Kreise, Kreisbögen oder Freihandguren erstellt und Farbe
41
oder Musterfüllungen eingesetzt werden.
Pixelgraken eignen sich gut für Fotos mit
kontinuierlichen Graustufen und Farbtönen, deshalb werden pixelorientierte Programme
bevorzugt zum Nachbearbeiten von importierten Bildern eingesetzt.
42
Vektororientierte
Programme speichern nicht wie pixelorientierte Programme die Grak als Muster einzelner Punkte ab, sondern es werden die Koordinaten der Führungspunkte und gestalterische
Parameter für jedes Grakelement separat gespeichert.
43
Die Grakelemente, wie zum
Beispiel Kreise, Rechtecke und Linien sind unabhängig voneinander positionierbar und
bearbeitbar.
44
Dadurch, dass die Vektorgraken immer neu berechnet werden können,
eignen sie sich sehr gut für geometrische Manipulationen (Strecken, Stauchen, Spiegeln
oder Skalieren). Weiterhin können Vektorgraken platzsparender als Pixelgraken abge-
45
speichert und immer in der höchstmöglichen Auösung des Ausgabegerätes
ausgegeben
46
werden.
2.1.2. Kommunikation
Kommunikation bezeichnet den Austausch von Nachrichten bzw. Daten zwischen Menschen und/oder Maschinen.
47
Dabei ist eine Nachricht eine Information, die mit zusätz-
lichen Angaben, wie Quelladresse, Zieladresse, Kontroll- und Prüelder erweitert wird.
48
Die Information ist also der eigendliche Inhalt der Nachricht. Informationen, die für die
maschinelle Verarbeitung vorgesehen sind, werden als Daten bezeichnet.
49
Kommunikati-
on lässt sich einteilen in synchroner und asynchroner Kommunikation, je nachdem ob die
Kommunikationspartner zeitgleich oder zeitversetzt kommunizieren.
50
Softwarewerkzeu-
ge, die die Kommunikation zwischen Kommunikationspartnern unterstützen, werden als
Kommunikationsdienste bezeichnet. Dabei lassen sich die Kommunikationsdienste nach
41 Vgl. [Hansen und Neumann, 2005] S.394
42 Vgl. [Hansen und Neumann, 2005] S.394
43 Vgl. [Hansen und Neumann, 2005] S.395
44 Vgl. [Hansen und Neumann, 2005] S.395
45 zum Beispiel Bildschirm, Drucker oder Plotter
46 Vgl. [Hansen und Neumann, 2005] S.397
47 Vgl. [Berling et al., 2005] S.267
48 Vgl. [Berling et al., 2005] S.267
49 [Berling et al., 2005] S.267
50 Vgl. [Hansen und Neumann, 2005] S.411
2. Theoretische Grundlagen
13
von ihnen genutzten bzw. bearbeiteten Medien kategorisieren. Zu den Medien zählen
Text, Graken bzw. Bilder, Audio und Video. Da bei einer Kommunikation mindestens
zwei Partner vorhanden sein müssen, kann als Zielgruppe für Kommunikationsdienste das
51
Kontinuum von wenigen Personen bis zu vielen Personen angenommen werden.
Bei der näheren Betrachtung der von Kommunikationsdiensten genutzten bzw. bearbeiteten Medien lassen sich folgende fünf Mediengruppen feststellen: nur Text , Text und
Bild , nur Audio , nur Video und Text, Bild, Audio und Video . Im Folgenden werden
synchrone und asynchrone Kommunikationsdienste jeweils einer der fünf Mediengruppen
zugeordnet und näher erläutert.
Synchrone Kommunikation
Nur Text Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.4 zu sehen,
Text-Chats und elektronische Sitzungssysteme.
Ein Text-Chat ist ein Client-Server-Dienst, der das unterhalten (chatten) in Echtzeit er-
52
möglicht.
Dabei läuft die Kommunikation durch kurze Textnachrichten nach dem Push-
53
Verfahren ab.
Durch die ständige Anzeige vom Status des Kommunikationspartners in
der Kontaktliste kann jeder Teilnehmer sehen, ob der andere Kommunikationspartner online ist, gerade selbst eine Nachricht schreibt, telefonisch erreichbar ist oder nicht gestört
werden möchte.
54
Dieser Dienst stellt eine spontane und schnelle Kommunikation dar.
55
Auch elektronische Sitzungssysteme basieren auf eine Client-Server Architektur, die es
den Sitzungsteilnehmer erlaubt durch jeweils einen Client miteinander auf der gemeinsa-
56
men Arbeitsäche, die durch den Server verwaltet wird, zu interagieren.
Diese Systeme
können von Gruppen eingesetzt werden, die zur gleichen Zeit am gleichen Ort beschäftigt
sind.
57
Einige Systeme erlauben auch eine räumlich verteilte Sitzung, wobei diese spezielle
Art der elektronischen Sitzungssysteme auch zum Kommunikationsdienst der elektroni-
51 Vgl. [Abts und Mülder, 2004] S.194
52 Vgl. [Hansen und Neumann, 2005] S.438
53 Vgl. [Hansen und Neumann, 2005] S.438
54 Vgl. [Hansen und Neumann, 2005] S.439
55 Vgl. [Abts und Mülder, 2004] S.201
56 Vgl. [Hansen und Neumann, 2005] S.443
57 Vgl. [Hansen und Neumann, 2005] S.443
2. Theoretische Grundlagen
14
Mediengruppe
Text, Bild,
Audio und
Video
Elektronische
Konferenzsysteme
Video
Audio
Videokonferenzsysteme
Telefonie
Telefonkonferenzsysteme
Whiteboards
Text, Bild
Gruppeneditoren
Elektronische
Sitzungssysteme
Text
Text−Chat
wenige Personen
viele Personen
Zielgruppe
Abbildung 2.4.: Kategorisierung der synchronen Kommunikationsdienste
58
schen Konferenzsysteme gezählt werden kann.
Die Systeme bieten Unterstützung bei der
Organisation von Sitzungen, bei der Entscheidungsndung, der Bewertung von Vorschlä-
59
gen oder helfen bei Abstimmungen im Projektmanagement.
Der Server protokolliert alle
Äuÿerungen, Anregungen und Bewertungen der Gruppenmitglieder und strukturiert sie
60
auf der Arbeitsäche, die im Normalfall durch einen Beamer an die Wand projiziert wird.
Text und Bild Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.4
zu sehen, Gruppeneditoren und Whiteboards.
58 Vgl. [Hansen und Neumann, 2005] S.443
59 Vgl. [Hansen und Neumann, 2005] S.443
60 Vgl. [Hansen und Neumann, 2005] S.443
2. Theoretische Grundlagen
15
Mit einem Gruppeneditor, oder auch Mehrbenutzereditor genannt, können mehrere Per-
61
sonen an Texten oder Graken arbeiten.
Dabei kann die Zusammenarbeit zeitgleich
(synchron) oder auch zeitversetzt (asynchron) stattnden.
63
an einer Grak kann zurückverfolgt werden.
62
Jede Änderung am Text oder
Weiter erlaubt der Editor den Autoren An-
merkungen an bestimmten Stellen zu machen, bestimmte Textteile für Änderungen durch
einen anderen Autor zu sperren oder auch separat erstellte Teile zusammenzufügen.
64
Es kann jedoch auch zu Konikten kommen, wenn mehrere Autoren gleichzeitig an der
gleichen Stelle im Dokument arbeiten möchten.
Ein Whiteboard ist eine weiÿe Arbeitsäche am Bildschirm auf dem Dokumente importiert werden können.
65
Die importierten Dokumente sind jedoch nicht wie in einem Editor
bearbeitbar, sondern können wie in einem Zeichenprogramm nur ergänzt werden.
66
Die
Datenänderungen werden zentral vom Server auf alle Benutzer-Clients synchronisiert, so-
67
dass alle Benutzer jederzeit über dieselben Informationen verfügen.
Nur Audio Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.4 zu
sehen, die Telefonie und Telefonkonferenzsysteme.
Mit Telefonie ist die Kommunikation, also die technische Übertragung des gesprochenen Wortes über ein Kommunikationsnetz, zwischen zwei oder mehreren Menschen ge-
68
meint.
Herkömmliche Telefonie und IP-Telefonie unterscheiden sich lediglich durch die
verwendete Übertragungstechnik: Die herkömmliche Telefonie ist leitungsvermittelt, die
IP-Telefonie hingegen paketvermittelt.
over IP (VoIP).
61 Vgl. [Hansen und Neumann, 2005] S.443
62 Vgl. [Hansen und Neumann, 2005] S.443
63 Vgl. [Hansen und Neumann, 2005] S.444
64 Vgl. [Hansen und Neumann, 2005] S.444
65 Vgl. [Hansen und Neumann, 2005] S.432
66 Vgl. [Hansen und Neumann, 2005] S.432
67 Vgl. [Hansen und Neumann, 2005] S.432
68 Vgl. [Klöppner, 2007] S.109
69 [Klöppner, 2007] S.109
69
Bei der IP-Telefonie spricht man auch von Voice
2. Theoretische Grundlagen
16
Unter einem Telefonkonferenzsystem ist die Konferenzschaltung per Telefon gemeint, die
70
es ermöglicht Sitzungen zur gleichen Zeit an verschiedenen Orten durchzuführen.
Ziel
71
von Telefonkonferenzsystemen ist die Einsparung von Reisezeiten und Reisekosten.
Nur Video Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.4 zu
sehen, nur Videokonferenzsysteme.
Bei der Benutzung eines Videokonferenzsystems benden sich die Teilnehmer zur gleichen
Zeit an verschiedenen Orten.
72
Es existieren speziell für Videokonferenzen ausgestattete
Studios, die angemietet werden können, um eine Konferenzschaltung mit mehreren Teil-
73
nehmern durchzuführen.
Es können auch mithilfe einer Dokumentenkamera Folien oder
74
Zeichnungen übertragen werden.
Alternativ können am Arbeitsplatz auch ein sogenann-
ter Video-Chat eingerichtet werden, der jedoch einiges an zusätzlicher Hardware und entsprechender Software erfordert.
75
Text, Bild, Audio und Video Mediengruppe: Zu dieser Mediengruppe zählen, wie in
Abbildung 2.4 zu sehen, nur elektronische Konferenzsysteme.
Ein elektronisches Konferenzsystem ist eine Webapplikation, die von den Konferenzteil-
76
nehmern mit Hilfe des Browsers gestartet werden kann.
Somit können Diskussionsbei-
77
träge, Vorträge oder Präsentationen live am Bildschirm mitverfolgt werden.
Um Fragen
zu stellen oder an Diskussionen teilzunehmen, kann ein integrierter Text-Chat verwendet
78
werden.
Elektronische Konferenzsysteme bieten auch die Möglichkeit einen Vortrag im
79
Nachhinein anzusehen bzw. die zusätzlich bereitgestellten Informationen zu sichten.
70 Vgl. [Hansen und Neumann, 2005] S.431
71 Vgl. [Abts und Mülder, 2004] S.204 und [Hansen und Neumann, 2005] S.431
72 Vgl. [Abts und Mülder, 2004] S.204
73 Vgl. [Hansen und Neumann, 2005] S.431
74 Vgl. [Hansen und Neumann, 2005] S.432
75 Vgl. [Hansen und Neumann, 2005] S.432
76 Vgl. [Abts und Mülder, 2004] S.204
77 Vgl. [Abts und Mülder, 2004] S.204
78 Vgl. [Abts und Mülder, 2004] S.204
79 Vgl. [Abts und Mülder, 2004] S.204
2. Theoretische Grundlagen
17
Asynchrone Kommunikation
Nur Text Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.5 zu sehen,
Gruppenkalender, Adressverwaltungssysteme und Webforen.
Mediengruppe
Elektronische
Konferenzsysteme
E−Mail−Systeme
Text, Bild,
Audio und
Video
Mailinglists
Weblogs
Video−Podcasts
Video
Audio−Podcasts
Audio
Voice−Mail−Systeme
Wikis
Gruppeneditoren
Text, Bild
Telefax
Projektmanagment−
Systeme
Webforen
Gruppenkalender
Text
Adressverwaltungssysteme
wenige Personen
viele Personen
Zielgruppe
Abbildung 2.5.: Kategorisierung der asynchronen Kommunikationsdienste
Mit einem Gruppenkalender besteht die Möglichkeit in einem Unternehmen die Termine
der Mitarbeiter, Raumreservierungen und Gerätebenutzungen zu koordinieren.
80
Dadurch
lassen sich Sitzungstermine einfacher festlegen und vorhandene Ressourcen, wie beispielsweise der Einsatz eines Beamers, besser nutzen.
81
Adressverwaltungssysteme erlauben in einem Unternehmen die zentrale Verwaltung der
82
wichtigsten Daten von Mitarbeitern, Kunden oder Lieferanten.
80 Vgl. [Hansen und Neumann, 2005] S.443
81 Vgl. [Hansen und Neumann, 2005] S.443
82 Vgl. [Hansen und Neumann, 2005] S.49
Dabei wird das Problem
2. Theoretische Grundlagen
18
der Dateninkonsistenz vermieden, da jeder Benutzer auf den gleichen Datenbestand zugreift und Adressänderungen zentral im Adressverwaltungssystem vorgenommen werden.
Webforen erlauben den Austausch von Nachrichten in Diskussionen mit einem InternetBrowser ohne zusätzlicher Software.
83
Dabei sind alle Teilnehmer bei den Diskussionen
84
weitgehend gleichberechtigt.
Text und Bild Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.5 zu
sehen, Telefax, Projektmanagement-Systeme, Wikis und Gruppeneditoren.
Telefax ist ein an das Telefonnetz angeschlossener Fernkopierer, der die eingelesenen
Schrift- und Bildvorlagen in einzelne Bildpunkte zerlegt und über das Telefonnetz zum
räumlich entfernten Fernkopierer schickt.
85
Ein Projektmanagement-System ist im Sinne der Deutsches Institut für Normung e.V.
(DIN) 69904 ein Führungs- und Vorgehensmodell zur erfolgreichen Realisierung von Projekten.
86
Durch das Projektmanagement-System ist der Projektleiter in der Lage die
groÿen Datenmengen schneller, sicherer und vollständiger zu beherrschen, als dies auf
87
manueller Basis möglich wäre.
Besonders im Berichtswesen leistet der Softwareeinsatz
eine groÿe Hilfe, um beispielsweise anschauliche Graken und Tabellen auszugeben oder
88
den Projektbeteiligten und den Auftraggeber über den Projektfortschritt zu informieren.
Wikis ermöglichen den Benutzern nicht nur Beiträge zu einer Diskussion hinzuzufügen,
89
sondern auch Inhalte, die von anderen erstellt wurden, zu verändern.
Diese Änderungen
lassen sich schnell und einfach am Browser durchführen, indem eine einfache Text-Syntax
eingehalten wird.
90
Dabei können die einzelnen Seiten und Artikel eines Wikis durch Links
91
miteinander verknüpft werden.
Wikis eignen sich in Unternehmen als eine gute Infor-
mationsquelle, da im Gegensatz zu Diskussionsforen oder Mailinglisten mehr Flexibilität
92
hinsichtlich der Gliederung und Einordnung der Beiträge besteht.
83 Vgl. [Stocksmeier, 2002] S.43-44
84 Vgl. [Hein, 2007] S.28
85 Vgl. [Bühner, 2004] S.335
86 [Kor, 2006] S.59
87 Vgl. [Vahrenkamp, 2004] S.358
88 Vgl. [Vahrenkamp, 2004] S.358
89 Vgl. [Hansen und Neumann, 2005] S.428
90 Vgl. [Hansen und Neumann, 2005] S.428
91 Vgl. [Hansen und Neumann, 2005] S.428
92 Vgl. [Hansen und Neumann, 2005] S.429
2. Theoretische Grundlagen
19
Da Gruppeneditoren zeitgleich und zeitversetzt verwendet werden können, können sie den
93
synchronen wie auch den asynchronen Kommunikationsdiensten zugeordnet werden.
Nur Audio Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.5 zu
sehen, Audio-Podcasts und Voice-Mail-Systeme.
Ein Audio-Podcast ist eine Art Radiosendung, die im Internet veröentlicht wird.
94
Audio-
Podcasts lassen sich mit einfachen Mitteln, beispielsweise einer Soundkarte, einem Mikrofon oder einem Headset und entsprechender Software, erstellen und sind in ihrer Länge
95
nicht beschränkt.
Nach [Abts und Mülder, 2004] können Voice-Mail-Systeme folgendermaÿen deniert werden: Wie Texte können auch Sprachinformationen digital gespeichert werden und in Form
einer Datei über ein Netz an andere Benutzer gesendet werden. Nach dem Prinzip des Anrufbeantwortes können diese Informationen über das Telefon eingegeben und abgerufen
werden.
96
Nur Video Mediengruppe: Zu dieser Mediengruppe zählen, wie in Abbildung 2.5 zu
sehen, nur Video-Podcasts.
Video-Podcasts können im Internet publiziert werden und kommen einer eigenden Fern-
97
sehsendung gleich.
Video-Podcasts lassen sich mit einfachen Mitteln, beispielsweise einer
Webcam oder mit der Videoaufnahmefunktion eines Mobiltelefons und einer Software zum
Schneiden von Videos, produzieren.
98
Text, Bild, Audio und Video Mediengruppe: Zu dieser Mediengruppe zählen, wie in
Abbildung 2.5 zu sehen, E-Mail-Systeme, Mailinglisten, Weblogs und elektronische Konferenzsysteme.
93 Siehe Gruppeneditoren unter synchroner Kommunikation
94 Vgl. [Alby, 2007] S.73
95 Vgl. [Alby, 2007] S.77
96 [Abts und Mülder, 2004] S.201
97 Vgl. [Alby, 2007] S.84
98 Vgl. [Alby, 2007] S.86
2. Theoretische Grundlagen
20
E-Mail-Systeme stellen das Gegenstück zur konventionellen Briefpost dar und bieten auch
99
eine räumliche und zeitliche Entkoppelung der Kommunikation.
Dabei speichern die E-
Mail-Server die Nachrichten zwischen, Verwalten die Mailboxen der Anwender und regeln
die Weiterleitung von Nachrichten zu anderen E-Mail-Servern, die die Mailboxen der Empfänger beherbergen.
100
Der Benutzer kann Nachrichten schreiben und an eine oder mehrere
Personen verschicken, E-Mails empfangen und eine empfangene E-Mail an andere Benut-
101
zer weiterleiten.
E-Mail-Systeme ermöglichen somit den papierlosen Austausch von Tex-
ten und Graken, aber auch von anderen Formaten wie Audiodateien und Videodateien.
102
Um die Vertraulichkeit der Informationen zu gewährleisten sind auch Verschlüsselung von
E-Mails möglich.
103
Die Nachricht wird im Postfach des Empfängers gespeichert und kann
zu jeder Zeit vom Benutzer abgerufen werden.
105
E-Mails in der Mailbox zuzugreifen.
104
Es existieren zwei Protokolle, um auf die
Beim Post Oce Protocol (POP) Protokoll werden
die Mails vom Server heruntergeladen und lokal gespeichert.
106
Dagegen werden bei der
Verwendung des Internet Message Access Protocol (IMAP) Protokolls die E-Mails direkt
auf dem Mail-Server verwaltet und nur bei Bedarf auf den Client-Server übertragen.
107
Die
E-Mail Kommunikation leidet oft an der groÿen Flut von unerwünschten Mails (Spam),
welche einen groÿen Teil des weltweiten Mailaufkommens ausmachen.
108
Auch im Hinblick
auf die Sicherheit ist beim Verwenden der E-Mail Kommunikation Vorsicht geboten, da
109
oft schädliche E-Mail Würmer in den E-Mail Anhängen verbreitet werden.
Mailinglisten werden genutzt, um Mails an mehrere Benutzer zu verteilen.
110
Sie können zu
unterschiedlichen Zwecken eingesetzt werden, beispielsweise als Newsletter, Diskussionen,
Koordination von Projekten oder als Marketingwerkzeug, um zielgerichtet Information an
bestimmte Kundengruppen zu schicken.
99 Vgl. [Abts und Mülder, 2004] S.200
100 Vgl. [Hansen und Neumann, 2005] S.412
101 Vgl. [Hansen und Neumann, 2005] S.412
102 Vgl. [Hansen und Neumann, 2005] S.412
103 Vgl. [Abts und Mülder, 2004] S.201
104 Vgl. [Abts und Mülder, 2004] S.200
105 Vgl. [Hansen und Neumann, 2005] S.419
106 Vgl. [Hansen und Neumann, 2005] S.419
107 Vgl. [Hansen und Neumann, 2005] S.419
108 Vgl. [Hansen und Neumann, 2005] S.420
109 Vgl. [Janowicz, 2005] S.234
110 Vgl. [Hansen und Neumann, 2005] S.424
111 Vgl. [Hansen und Neumann, 2005] S.424
111
Dabei beschränkt sich der Empfängerkreis auf
2. Theoretische Grundlagen
21
die Benutzer, die diese Mailingliste abonniert haben.
112
Es besteht aber auch die Möglich-
113
keit eine Antwort an eine einzelne Person der Mailingliste zu senden.
Jeder Benutzer
kann selbstständig Anfragen an den Server schicken, der die Mailingliste verwaltet, um
114
sich beispielsweise alle E-Mail Adressen der Mailinglisten-Mitglieder anzeigen zu lassen.
Der Begri Weblog setzt sich zusammen aus Web und Logbuch und wird auch oft als
Blog bezeichnet.
115
Weblogs sind Web-Tagebücher, die chronologisch immer weiter fort-
116
geschrieben werden, sodass der neueste Eintrag immer am Anfang der Liste erscheint.
Weblogs sind oft textorientiert, können aber auch Bilder, Graken, Audiostreams und
117
Videostreams enthalten.
Die Leser der Weblogs können durch Hinzufügen von Kom-
mentaren Stellung zum Inhalt nehmen, haben aber nicht wie bei Wikis die Möglichkeit
118
den Inhalt von anderen Autoren zu ändern.
Da elektronische Konferenzsysteme die Möglichkeit bieten Vorträge auch im Nachhinein
anzusehen, können sie den synchronen wie auch den asynchronen Kommunikationsdiens-
119
ten zugeordnet werden.
2.1.3. Workow
Mit Workow wird der Ablauf eines Geschäftsprozesses bezeichnet.
120
Dabei besteht ein
Geschäftsprozess aus einer zeitlich-strukturellen Aneinanderreihung von Teilaufgaben und
wird durch Ereignisse ausgelöst und beendet.
121
Die Teilaufgaben können von verschiede-
nen Personen oder auch Agenten ausgeführt werden und sind aus einzelnen Aktivitäten
zusammengesetzt.
122
Es lassen sich nach [Abts und Mülder, 2004] drei Workow-Typen
unterscheiden:
112 Vgl. [Hansen und Neumann, 2005] S.424
113 Vgl. [Hansen und Neumann, 2005] S.424
114 Vgl. [Hansen und Neumann, 2005] S.424
115 Vgl. [Hansen und Neumann, 2005] S.429
116 Vgl. [Hansen und Neumann, 2005] S.429
117 Vgl. [Hansen und Neumann, 2005] S.430
118 Vgl. [Hansen und Neumann, 2005] S.430
119 Siehe Elektronische Konferenzsysteme unter synchroner Kommunikation
120 Vgl. [Hansen und Neumann, 2005] S.447
121 Vgl. [Fischer et al., 2002] S.243
122 Vgl. [Fischer et al., 2002] S.243
2. Theoretische Grundlagen
22
1. Ad-hoc-Workows: Wenig strukturierte Arbeitsabläufe, mit denen spontane und oft
einmalige Aufgaben erledigt werden sollen, nennen sich Ad-hoc-Workows. Sie werden vollständig manuell durchgeführt, da die Arbeitsschritte nicht im Voraus denierbar sind. Die Bearbeiter solcher Workows haben jedoch sehr hohe Freiheitsgrade bei der Ablaufsteuerung.
123
2. Fallbezogene Workows: Nicht vollständig strukturierbare Arbeitsabläufe mit teilweisen Wiederholungen werden zu den fallbezogene Workows gezählt. Die Bear-
124
beiter solcher Workows haben gewisse Freiheitsgrade bei der Ablaufsteuerung.
3. Stark strukturierte Workows: Arbeitsaufgaben, die im Voraus denierbar und vollständig strukturierbar sind, zeichnen sich durch ihre wiederholenden Arbeitsabläufe
aus. Dadurch haben die Bearbeiter solcher Workows wenige bzw. keine Freiheitsgrade bei der Veränderung einmal festgelegter Abläufe.
125
Workow-Management wird auch als Vorgangsbearbeitung bezeichnet und umfasst die
Modellierung, Spezikation, Ausführung, Steuerung und Überwachung des Workows.
126
Ziel ist es, den Geschäftsprozess optimal zu organisieren und die Bearbeitungszeiten
der Teilaufgaben zu reduzieren.
127
Nach [Hansen und Neumann, 2005] können Workow-
Management-Systeme folgendermaÿen deniert werden:
Workow-Management-Systeme unterstützen die Abwicklung der Geschäftsprozesse, indem sie automatisch nach den vordenierten Regeln Dokumente, Informationen oder Aufgaben zu den jeweiligen Bearbeitern weiterleiten, entsprechend dem jeweiligen Bearbeitungsschritt die notwendigen Daten und Anwendungen bereitstellen und Fristen und Ausnahmesituationen überwachen.
128
Am besten eignen sich stark strukturierte Workows für die Computerunterstützung
129
durch Workow-Management-Systeme.
Workow-Management-Systeme verfügen nor-
malerweise über ein Planungsmodul, ein Ausführungsmodul und ein Kontrollmodul.
123 Vgl. [Abts und Mülder, 2004] S.211
124 Vgl. [Abts und Mülder, 2004] S.211
125 Vgl. [Abts und Mülder, 2004] S.211
126 Vgl. [Abts und Mülder, 2004] S.210
127 Vgl. [Abts und Mülder, 2004] S.210
128 [Hansen und Neumann, 2005] S.447
129 Vgl. [Abts und Mülder, 2004] S.211
130 Vgl. [Ott, 1999] S.30
130
2. Theoretische Grundlagen
23
Das Planungsmodul dient zur Modellierung der Aufbau- und Ablauforganisation sowie zur
131
Spezikation der zu steuernden Prozesse.
Weiterhin übernimmt das Ausführungsmo-
dul die Steuerung der laufenden Prozesse, indem die benötigten Informationen und Doku-
132
mente bereitgestellt bzw. an den nächsten Bearbeiter weitergeleitet werden.
den zur Aufgabenerledigung benötigte Applikationen automatisch gestartet.
Dabei wer-
133
Das Kon-
trollmodul überwacht den Prozessablauf und sammelt Daten, die für die Organisations-
134
bzw. Prozessoptimierung genutzt werden können.
Der Zusammenhang zwischen Work-
ow, Geschäftsprozess und Workow-Management-System ist in Abbildung 2.6 dargestellt.
IT−Sicht
Workflow−Management−Systeme
definieren, starten und verwalten
die Ausführung von
Organisations−Sicht
Workflows
ist die Automatisierung von
BWL−Sicht
Geschäftsprozesse
Abbildung 2.6.: Workow-Managment aus IT-Sicht, Organisations-Sicht und BWL-Sicht (Vgl.
[Abts und Mülder, 2004] S.210)
131 Vgl. [Fischer et al., 2002] S.244
132 Vgl. [Fischer et al., 2002] S.244
133 Vgl. [Fischer et al., 2002] S.244
134 Vgl. [Fischer et al., 2002] S.244
2. Theoretische Grundlagen
24
2.1.4. Archivierung
Die kurz- bis mittelfristige Speicherung von noch in Bearbeitung bendlicher Dokumente wird als Ablage bezeichnet.
135
Archivierung ist die langfristige Aufbewahrung bzw.
136
Auslagerung von Dokumenten auf externen Datenträgern.
Das Problem von einfachen
Ablagesystemen, wie beispielsweise dem Dateisystem eines Betriebssystems, ist das Wiedernden von Dokumenten in der hierarchischen Dateisystemstruktur. Die verbreiteten
Betriebssysteme bieten nur eine eingeschränkte Dokumentensuche über wenige Attribute,
wie beispielsweise dem Dateinamen, dem Dateiformat oder dem Erstellungszeitpunkt, an.
Die Dokumente in einem Unternehmen, die in den lokalen Dateisystemen abgelegt sind,
erzwingen die individuelle Archivierungen durch jeden einzelnen Mitarbeiter. Um eine zentrale Archivierung aller Dokumente der Mitarbeiter zu ermöglichen, können Netzlaufwerke
auf dedizierten Speichersystemen für die Ablage der Mitarbeiterdokumente eingerichtet
werden. Ein Dokumenten-Management-System (DMS) hingegen erlaubt das Einfügen,
Aktualisieren und Archivieren von nicht-strukturierten Dokumenten, einen schnellen Zugri auf die Dokumente unterschiedlicher Formate durch eine integrierte Volltextsuche
und die Archivierung der Dokumente.
der Dokumente möglich.
138
137
Durch die Volltextsuche ist die Suche innerhalb
Zusätzlich wird das fortlaufende Arbeiten an Dokumenten
139
durch eine integrierte Versionskontrolle unterstützt.
Da sowohl die Archivierung als
auch die Ablage von Dokumenten zentral verwaltet werden, stehen eine Rechteverwal-
140
tung und eine Zugriskontrolle im DMS zur Verfügung.
Durch die zentrale Ablage aller
Dokumente wird sparsamer mit den Speicherplatz-Ressourcen umgegangen, da gleiche
Dokumente nicht mehrfach an verschiedenen Orten abgespeichert werden. Die Mehrfachablage von Dokumenten verursacht auch Probleme in der Zusammenarbeit, da das Risiko
besteht, dass Teammitglieder an unterschiedlichen Versionen eines Dokumentes arbeiten
und somit Arbeit unnötig mehrfach geleistet wird.
135 Vgl. [Abts und Mülder, 2004] S.205
136 Vgl. [Abts und Mülder, 2004] S.205
137 Vgl. [Hansen und Neumann, 2005] S.454
138 Vgl. [Hansen und Neumann, 2005] S.454
139 Vgl. [Hansen und Neumann, 2005] S.454
140 Vgl. [Hansen und Neumann, 2005] S.454
2. Theoretische Grundlagen
25
2.2. Groupware und Groupware-basierte Anwendungen
Das Ziel jeder Groupware ist die Unterstützung der Gruppenarbeit.
141
Dieses interdiszipli-
näre Forschungsgebiet nennt sich Computer Supported Cooperative Work (CSCW) und
umfasst Bereiche aus der Wirtschaftsinformatik, der Arbeitswissenschaft, der Psychologie und der Kommunikationswissenschaft.
142
Groupware ist ein Kunstwort aus Group und
Software, also ein Oberbegri für jede Art von Software, die Kommunikation, Kooperation
und Koordination bei arbeitsteiliger Aufgabenbearbeitung unterstützt.
143
1. Kommunikation: Die Grundlage der Kooperation und Koordination stellt die Kom-
144
munikation dar.
Unter Kommunikation ist die Übermittlung bzw. der Austausch
von Informationen zwischen Personen und Programmen oder nur zwischen Program-
145
men gemeint.
Dabei steht das Send-Prinzip des Push-Modells im Vordergrund,
zu sehen auf der linken Seite von Abbildung 2.7, welches einen asynchronen Informationsuss erlaubt.
146
Das Push-Modell wird beispielsweise bei E-Mail-Systemen
147
für die 1:1 und 1:n Kommunikation ezient eingesetzt.
Bei der n:m Kommunika-
tion kommen Kommunikationsdienste, die auf dem Push-Modell beruhen, aber sehr
schnell an ihre Grenzen, sodass das sogenannte Share-Prinzip eingesetzt wird.
148
2. Kooperation: Die Kooperation basiert auf der Kommunikation und beschreibt den
Informationsaustausch mit einem gemeinsamen Ziel.
149
Sie setzt eine Zusammen-
arbeit von mindestens zwei Personen voraus, die Zugri auf einen gemeinsamen
Datenbestand nach dem Share-Prinzip des Pull-Modells haben.
150
Dieses Modell,
welches auf der rechten Seite in der refFigkooperation dargestellt ist, ermöglicht
eine eektive n:m Kommunikation ohne ein erhöhtes Datenaufkommen durch die
Informationsverteilung zu erzeugen.
141 Vgl. [Fischer et al., 2002] S.238
142 Vgl. [Fischer et al., 2002] S.238
143 Vgl. [Abts und Mülder, 2004] S.211
144 Vgl. [Seufert, 1997] S.76
145 Vgl. [Seufert, 1997] S.76
146 Vgl. [Lotus, 1995] S.14
147 Vgl. [Lotus, 1995] S.14
148 Vgl. [Lotus, 1995] S.14
149 Vgl. [Dierker und Sander, 1998] S.104
150 Vgl. [Fischer et al., 2002] S.241
2. Theoretische Grundlagen
26
3. Koordination: Wird im Rahmen der Gruppenarbeit kommuniziert und bezieht sich
die Kommunikation auf die Abstimmung aufgabenbezogener Tätigkeiten, so wird
diese Dimension der Kommunikation als Koordination bezeichnet.
151
Koordination
baut auf Kommunikation und Kooperation auf und soll eine eziente Gruppenar-
152
beit ermöglichen.
Abbildung 2.7 veranschaulicht das Push- und Pull-Modell im
Hinblick auf die Koordinationsunterstützung.
Koordination
Kommunikation
Kooperation
Push−Modell
Pull−Modell
Abbildung 2.7.: Kommunikation, Kooperation und Koordination (Vgl. [Fischer et al., 2002]
S.242)
Groupware-Systeme stellen eine Mehrbenutzersoftware dar, die einen Werkzeugkasten
mit Programmen zur Unterstützung der Kommunikation, Kooperation und dem Ziel der
Koordination anbietet.
153
Dabei bieten die Hersteller unterschiedliche Kombinationen von
154
synchronen und asynchronen Kommunikationsdiensten
in ihren Groupware-Systemen
an. Eine Arbeitsgruppe hat die Möglichkeit, mittels eines Groupware-Systems, gemeinsam mit Daten umzugehen, sie zu erzeugen, sammeln, kommentieren, strukturieren und
zu verteilen.
155
Voraussetzung für Groupware-Systeme ist die Vernetzung der Arbeits-
platzrechner, um eine eziente Zusammenarbeit zu gewährleisten.
156
Groupware-Systeme
basieren oft auf verteilte Datenbanken, Replikation, Sicherheitsmechanismen und Nachrichtentransport mit Verschlüsselungsmöglichkeit.
157
151 [Fischer et al., 2002] S.242 nach [Teufel et al., 1995] S.12
152 Vgl. [Fischer et al., 2002] S.242
153 Vgl. [Hansen und Neumann, 2005] S.441
154 Siehe Unterabschnitt 2.1.2
155 Vgl. [Hansen und Neumann, 2005] S.442
156 Vgl. [Wagner, 1995] S.43
157 Vgl. [Wagner, 1995] S.43
2. Theoretische Grundlagen
27
Datenhaltung
Etwa 80% - 90% der gespeicherten Informationen in Unternehmen liegen in unstrukturier-
158
ter Form vor, die sich nur schwer oder gar nicht in relationalen Datenbanken
lassen.
159
ablegen
Groupware-Systeme bieten eine gute Plattform, um solche unstrukturierten In-
formationen abzuspeichern und zu verwalten.
160
Auf die verteilten Datenbanken eines
Groupware-Systems können auch mehrere Benutzer gleichzeitig zugreifen.
161
Replikation
Eine wichtige Eigenschaft von Groupware-Systemen ist die Replikation, die es erlaubt,
dass Gruppenmitglieder eine Kopie der gemeinsamen Datenbank erstellen können.
162
Die
verschiedenen Versionen auf den unterschiedlichen Rechnern der Mitarbeiter werden dann
jedesmal bei Verbindung mit der zentralen Datenbank abgeglichen.
163
Damit wird sicher-
gestellt, dass die von einem Mitarbeiter eingegebene Information nicht durch die veraltete
Eingabe eines anderen Mitarbeiters überschrieben wird.
164
Durch diesen Synchronisations-
Mechanismus reduziert sich auch das Problem der Daten-Inkonsistenz.
165
Eine Replik
steht im Gegensatz zu einer Kopie der Datenbank weiter im Zusammenhang mit dem
Original.
166
Sicherheit
Da im Kontext der computerunterstützenden Gruppenarbeit wichtige interne Daten übertragen und gespeichert werden, sind Sicherheits- und Zugangsaspekte in Groupware-
167
Systemen von groÿer Bedeutung.
Damit die Informationsobjekte, die sich in der ge-
meinsamen Datenbank benden, nicht von jedem beliebigen Benutzer eingesehen werden
158 Eine relationale Datenbank ist ein spezieller Datenbank-Typ, der Daten in Tabellen organisiert und
Relationen, d.h. Beziehungen, zwischen Tabellen beschreibt. Diese Beziehungen ermöglichen es, Daten von mehreren Tabellen zu verschiedenen Views (Ansichten) dieser Daten zusammenzufügen.
([Reese et al., 2003] S.4-5)
159 Vgl. [Riempp, ] S.25 und S.72
160 Vgl. [Riempp, ] S.25 und S.72
161 Vgl. [Dierker und Sander, 1998] S.32
162 Vgl. [Ebel, 2005] S.441
163 Vgl. [Ebel, 2005] S.441
164 Vgl. [Ebel, 2005] S.441
165 Vgl. [Ehlers, 1997] S.159
166 Vgl. [Dierker und Sander, 1998] S.129
167 Vgl. [Fischer et al., 2002] S.255
2. Theoretische Grundlagen
28
168
können, bedarf es eines komplexen Rechtesystems.
Dabei handelt es sich bei den In-
formationsobjekten um Funktions- und Präsentationselemente, Designelemente, Formulare, Ansichten aber auch Programmfunktionalitäten.
169
Bei der Sicherheitsmodellierung
können durch Bildung von Gruppen und Rollen auch komplexe reale Organisationsstrukturen abgebildet werden.
170
Die Rechtestruktur besteht dabei aus mehreren Ebenen, wie
beispielsweise der Leser-, Autoren, Editoren- und Administratoren-Stufe.
171
Weiterhin
können Verschlüsselungs- und Autorisierungsprozeduren auf die verschiedenen, hierarchischen Ebenen der Informationsinfrastruktur eines Groupware-Systems, wie beispielsweise
der Datenbanken, Dokumentenobjekte, Felder und der Kommunikationskanäle, eingesetzt
172
werden.
Entwicklungsumgebung
Einige Groupware-Systeme bieten Architekturkonzepte mit verschiedenen Schnittstellen
an, welche die Entwicklung von Groupware-basierte Applikationen ermöglichen.
173
Group-
ware ermöglicht als sogenannte Middleware den Austausch von Informationen zwischen
verschiedenen Komponenten einer verteilten, heterogenen Systemlandschaft und übernimmt die Funktion von Kommunikationssoftware.
175
wie Simple Mail Transfer Protocol (SMTP)
174
Es können Standardschnittstellen
und POP3/IMAP zum E-Mail-Austausch
zur Verfügung stehen, aber auch Schnittstellen angeboten werden, um auf externe Dienste, wie beispielsweise einem Lightweight Directory Access Protocol (LDAP)
einem Hypertext Transfer Protocol (HTTP)
177
176
-Server oder
-Server, zugreifen zu können.
168 Vgl. [Fischer et al., 2002] S.255
169 Vgl. [Fischer et al., 2002] S.255
170 Vgl. [Fischer et al., 2002] S.255
171 Vgl. [Fischer et al., 2002] S.255
172 Vgl. [Ott, 1999] S.20 und S.43 und [Ehlers, 1997] S.128
173 Vgl. [Ott, 1999] S.19 und [Ehlers, 1997] S.126
174 [Fischer et al., 2002] S.257
175 SMTP ist ein Protokoll für die zuverlässige Übertragung von E-Mail-Nachrichten von den Mail-Servern
der Sender zu denjenigen der Empfänger. (Vgl. [Kurose und Ross, 2002] S.123)
176 LDAP ist eine Spezikation für Verzeichnisdienste und ermöglicht durch Authentizierung einen sicheren Zugri auf Verzeichnisdaten. (Vgl. [Coulouris et al., 2002] S.446)
177 Das HTTP deniert, wie Browser und andere Client-Typen mit Webbrowsern kommunizieren.
([Coulouris et al., 2002] S.30)
2. Theoretische Grundlagen
29
Mit der Funktionseinbettung in Buttons, der Makro- und Skripting-Funktionalität, dem
Event-Management und der automatisierten und teilautomatisierten Prozessaktivierung
stehen exible und endbenutzernahe Programmierungskonzepte zur Verfügung.
178
Zum
Entwickeln von eigenen Groupware-basierten Anwendungen existieren in den meisten
179
Groupware-Systemen Application Programming Interfaces (APIs)
für unterschiedliche
Programmiersprachen wie beispielsweise Java, C oder C++.
2.3. Oce Suites
Eine Oce Suite, auch als integrierte Bürosoftware
180
bezeichnet, ist ein integriertes Pro-
grammpaket, welches sich aus verschiedenen, aufeinander abgestimmten Komponenten für
181
den Bürobereich zusammensetzt.
Zu einer Oce Suite zählen, wie in Abbildung 2.8 zu
182
sehen, die individuellen Oce-Anwendungen
zur Textverarbeitung, Tabellenkalkulati-
on, Präsentation, zum persönlichen Informationsmanagement (Terminkalender, Adressverwaltung, Aufgabenplanung und Notizverwaltung) und zur Grakerstellung. Bei einer
weitläugeren Begrisdenition kann auch ein E-Mail-Client und ein Datenbankverwaltungssystem einer Oce Suite hinzugerechnet werden. Eine Oce Suite ist eine Sammlung
von Softwarewerkzeugen, die zur Erhöhung der individuellen Produktivität an einem Bü-
183
roarbeitsplatz beitragen soll.
Aus diesem Grunde sind Datenbankverwaltungssysteme
in einer Oce Suite nicht mehr relevant, da es heute in Unternehmen für diese keinen
sinnvollen Einsatz
184
mehr gibt. Frühere Anwendungsfälle, wie beispielsweise eine eigene
Adressverwaltungsdatenbank als Datenquelle für Serienbriefe zu erstellen, sind oft durch
den Leistungsumfang der Oce Suites abgedeckt, da die Adressverwaltung integraler Bestandteil des oft mitgelieferten E-Mail-Clients ist.
178 Vgl. [Fischer et al., 2002] S.257
179 API ist die Gesamtheit aller veröentlichten Methoden, Eigenschaften und andere Befehlsmittel einer
Applikation, um dem Softwareentwickler die Möglichkeit zu geben, mit seiner geschriebenen Software
auf diese zuzugreifen. (Vgl. [Schmidt und Wohlberg, 2007] S.1217)
180 Vgl. [Hansen und Neumann, 2005] S.338
181 Vgl. [Jordan, 2001] S.358
182 Siehe Unterabschnitt 2.1.1
183 Vgl. [Hansen und Neumann, 2005] S.339
184 Im Heim- oder Hobbybereich kann es noch eine sinnvolle Aufgabenerfüllung geben
2. Theoretische Grundlagen
30
Mediengruppe
Text, Bild,
Audio und
Video
Datenbankanwendungen
E−Mail−Systeme
Präsentationsanwendungen
Video
Audio
Grafikanwendungen
Text, Bild
Textverarbeitungsanwendungen
Tabellenkalkulationsanwendungen
Text
Persönliches
Informationsmanagement
Einzelpersonen
wenige Personen
Zielgruppe
Abbildung 2.8.: Kategorisierung der Oce Suite Komponenten (Vgl. [Abts und Mülder, 2004]
S.194)
Da Oce Suites für Einzelarbeitsplätze ausgelegt sind, können sie nur schwierig für eine
eektive Gruppenarbeit eingesetzt werden. Falls diese doch für Gruppenarbeit eingesetzt
werden sollen, können folgende Schwierigkeiten auftreten:
•
Da oft kein gleichzeitiger Zugri auf einem Dokument, beispielsweise einem Textverarbeitungsdokument oder einem Präsentationsfoliensatz, durch mehrere Bearbeiter
möglich ist, kann nur eine sequentielle Bearbeitung durch mehrere Gruppenmitglieder erfolgen.
•
Die mehrfache Ablage der gleichen Dokumente durch unterschiedliche Gruppenmitglieder führt zu Daten-Inkonsistenzen, zu vielen unterschiedlichen Versionen eines
Dokumentes und einem erhöhten Speicherplatzverbrauch.
2. Theoretische Grundlagen
•
31
Ein Dokumentenmanagement mit Versionskontrolle in einer Gruppe ist schwierig zu
realisieren. Dies kann zwar durch ein manuelles Hochzählen der Versionsnummer im
Dateinamen erfolgen, ist aber sehr unsicher, unpraktikabel und zeitaufwändig.
•
Die Archivierung der lokal gespeicherten Dokumente ist nicht zufriedenstellend sicher und erfordert eine individuelle Datensicherung durch jeden einzelnen Benutzer.
Dies kann zwar durch den Einsatz eines gemeinsamen Netzlaufwerkes und der daraus resultierenden Möglichkeit der zentralen Datensicherung abgemildert werden,
führt jedoch zu neuen Problemen bei der Zugriskontrolle auf das Netzlaufwerk.
Auÿerdem besteht die Schwierigkeit, wie auch schon auf dem lokalen Dateisystem,
die unstrukturierten Informationen sinnvoll zu strukturieren.
•
Das Wissensmanagement in einem Unternehmen, in dem jeder Mitarbeiter seine
eigenen Daten speichert und verwaltet, ist problematisch. Viel vorhandenes Wissen
wird dadurch nicht weitergegeben, geht verloren und kann von anderen Gruppenmitgliedern nicht gefunden werden. Das Nutzen eines zentralen Netzlaufwerkes im
Dateisystem leidet unter der mehrdeutigen Strukturierungsmöglichkeiten von Dokumenten und der eingeschränkten Suchmöglichkeit.
2.4. Generische Schnittstelle zwischen
Groupware-Systemen und Oce Suites
Beim Vergleich von Groupware-Systemen und Oce Suites lässt sich die Kommunikation
durch E-Mail-Systeme als gemeinsamer asynchroner Kommunikationsdienst identizieren.
Weiterhin lassen sich eine Reihe von Anwendungen der Oce Suites, die nur durch eine
Einzelperson benutzt werden können, durch Anwendungen, die auch die Gruppenarbeit
unterstützen, ersetzen oder ergänzen. Dazu zählt die persönliche Adressverwaltung, die
durch die zentrale Adressverwaltung des Groupware-Systems ersetzt werden kann. Die
zentrale Adressverwaltung ermöglicht auch die Speicherung von persönlichen Kontakten
durch das Rechte- und Zugrissystem der Groupware. Jedoch macht der integrierte Gruppenkalender eines Groupware-Systems den persönlichen Terminkalender nicht überüssig,
obwohl er die Möglichkeit bietet persönliche Termine zu verwalten. Zur Wahrung der Pri-
2. Theoretische Grundlagen
32
vatsphäre wird in der Praxis oft ein persönlicher Terminkalender zusätzlich zu einem
Gruppenkalender genutzt. So können individuell, für die Gruppenarbeit relevante, persönliche Termine mit dem Gruppenkalender abgeglichen werden. Ein Gruppeneditor, der
das gemeinsame Schreiben an einem Dokument in einer Gruppe gewährleistet, kann auch
in Anwendungsfällen genutzt werden, in denen nur ein Autor an einem Dokument arbeitet.
Somit leistet auch ein Gruppeneditor einen Mehrwert gegenüber der Textverarbeitungsanwendung, die als Komponente in der Oce Suite zu nden ist. Ein groÿer Vorteil von
Groupware-Systemen ist die integrierte Dokumentenverwaltung. Sie erönet durch das
exible Rechte- und Zugrissystem die Möglichkeit der Dokumentenverteilung und trägt
somit auch zur Wissensverteilung im Unternehmen bei. Zusätzlich bietet es eine zentrale
Dokumentenarchivierung und erspart die zeitintensive und unsichere Datenarchivierung
durch jeden einzelnen Mitarbeiter.
In vielen Fällen ergänzen sich die Programme der Groupware Welt und der Oce
Suite Welt. Dies hängt natürlich auch davon ab, welche Anwendungen im konkreten
Groupware-System vorhanden sind. Deshalb können konkrete Datenaustauschszenarien
nur bei Betrachtung realer Groupware-Systeme und Oce Suites betrachtet werden. Da
einige Groupware-Systeme als Middlewareplattformen die Entwicklung von Groupwarebasierten Applikationen unterstützen, verwenden diese Anwendungen auch die in Groupware integrierte Datenverwaltung. Auf diese Groupware-basierten Applikationen, wie auch
auf die in der Groupware integrierte Datenverwaltung kann mithilfe von APIs extern programmtechnisch zugegrien werden. Auch die marktbeherrschenden
185
Oce Suites bie-
ten APIs an, mit deren Hilfe auf die einzelnen Teilanwendungen, wie beispielsweise der
Textverarbeitungs-, der Tabellenkalkulations- oder der Präsentationsanwendung, mittels
unterschiedlicher Programmiersprache zugegrien werden kann. Durch Verwendung der
Groupware API auf der einen Seite und der Oce Suites APIs auf der anderen Seiten, lassen sich Datenaustauschlösungen zwischen Groupware-basierten Applikationen und Oce
Suites implementieren.
185 Siehe Unterabschnitt 3.1.2
2. Theoretische Grundlagen
33
2.5. Technische Grundlagen
2.5.1. COM Technologie
COM ist ein von der Firma Microsoft entwickeltes Komponentenmodell für die Entwicklung und Nutzung objektorientierter Softwarekomponenten.
186
Es hat seine Ursprünge im
Object Linking and Embedding (OLE), das eine Technologie zur Erzeugung von Dokumenten ist, welche aus mehreren Anwendungen bestehen. Heute ist die OLE Technologie
ein Teil von COM.
187
Der COM Begri teilt sich in die COM-Spezikation und der COM-
Implementierung auf.
188
Die COM-Spezikation umfasst den Aufbau der COM-Komp-
189
onenten und der von COM angebotenen Komponentendienste.
Die COM-Implemen-
tierung ist die passende Implementierung der COM-Spezikation in Form der COMBibliothek.
bar.
191
190
Die COM-Bibliothek ist jedoch nur für Windows Betriebssysteme verfüg-
COM ist eine sehr stark in Windows integrierte Technologie, da sie beispielsweise
auf die Windows-Sicherheit zugreift und die Windows-Registry als Kongurationsspeicher
benutzt.
192
Da COM einen Binärstandard für Komponenten umfasst, ist es programmier-
193
sprachenunabhängig und somit für viele Sprachen verfügbar.
Beispielsweise können
Sprachen wie C++, C oder Java die COM-Komponenten nutzen und erzeugen.
194
Da
COM ein objektorientiertes Modell ist, verwendet es Klassen, Schnittstellen, Attribute
und Methoden.
195
Distributed Component Object Model (DCOM) ist die Middleware zu
COM und erweitert diese um die Benutzung der COM-Komponenten über Rechnergrenzen hinaus.
196
Mit dem Betriebssystem Windows 2000 hat Microsoft COM+ eingeführt,
197
das COM um neue Dienste erweitert.
186 Vgl. [Schwichtenberg, 2001] S.26
187 Vgl. [Schwichtenberg, 2001] S.27
188 Vgl. [Schwichtenberg, 2001] S.27
189 Vgl. [Schwichtenberg, 2001] S.27
190 Vgl. [Schwichtenberg, 2001] S.27
191 Vgl. [Schwichtenberg, 2001] S.27
192 Vgl. [Schwichtenberg, 2001] S.29
193 Vgl. [Schwichtenberg, 2001] S.29
194 Vgl. [Schwichtenberg, 2001] S.29
195 Vgl. [Schwichtenberg, 2001] S.29
196 Vgl. [Schwichtenberg, 2001] S.27
197 Vgl. [Schwichtenberg, 2001] S.28
2. Theoretische Grundlagen
34
Auch ActiveX wird zur COM Technologie gezählt und umfasst die Graphical User Interface
198
(GUI)- und browserbasierten Teile von COM.
2.5.2. Web Service
Web Services sind in sich abgeschlossene, modulare Anwendungen, die beschrieben, veröentlicht, gesucht und über das Netz aufgerufen werden können.
199
Der Web Service
Programmieransatz orientiert sich an der Serviceorientierten Architektur (SOA).
200
Web
Services ermöglichen sowohl einen Remote Procedure Call (RPC) als auch einen Nachrichtenaustausch.
201
Im Gegensatz zu Technologien wie COM oder .NET bieten Web
Services anstelle von proprietären Binärformaten eine textbasierte Kommunikation an,
die auf Standards wie XML und Simple Object Access Protocol (SOAP) beruht.
202
Es
besteht eine klare Trennung zwischen Schnittstelle und Implementierung, sodass die Im-
203
plementierungssprache von untergeordneter Bedeutung ist.
Somit sind Web Services
plattformunabhängig und können Java Platform, Enterprise Edition (JavaEE)- und .NET-
204
Anwendungen miteinander verbinden.
Dadurch wird die Interoperabilität zwischen un-
terschiedlichen Plattformen und Programmiersprachen ermöglicht.
205
Die Nachteile von
Web Services gegenüber konventionell erstellten Anwendungen liegen darin, dass die Performance schlechter ist.
206
In Abbildung Abbildung 2.9 ist eine typische Web Service Architektur zu sehen. Der
Web Service Anbieter veröentlicht im Universal Description, Discovery and Integration
(UDDI) Verzeichnis seinen Web Service, der mittels Web Services Description Language
(WSDL) beschrieben ist. Die Beschreibung basiert auf einer XML-Datei und deniert die
unterstützten Methoden und deren Parameter, die für die Verwendung des Web Services
207
von Seiten des Konsumenten von Bedeutung sind.
198 Vgl. [Griel, 1998] S.80
199 [Ebel, 2005] S.395
200 Vgl. [Ebel, 2005] S.396
201 Vgl. [Schäer, 2002] S.998
202 Vgl. [Schäer, 2002] S.998
203 Vgl. [Schäer, 2002] S.998
204 Vgl. [Schäer, 2002] S.997
205 Vgl. [Schäer, 2002] S.998
206 [Müller, 2004] S.162
207 Vgl. [Ebel, 2005] S.396
Der Konsument kann das UDDI
2. Theoretische Grundlagen
35
UDDI
Finden mittels
WSDL
Web Service
Konsument
Veröffentlichen
mittels WSDL
XML und SOAP basierte Methodennutzung
Webservice
Anbieter
Abbildung 2.9.: Eine typische Web Service Architektur (Vgl. [Ebel, 2005] S.395)
Verzeichnis durchsuchen und mithilfe der Funktionsbeschreibung den gewünschten Web
Service auswählen. Durch das Uniform Resource Identier (URI) Benennungsschema kann
der Web Service vom Konsumenten eindeutig identiziert und verwendet werden.
208
Die
gewünschten Funktionalitäten des Web Services können durch den Konsumenten genutzt
werden, indem er auf die entsprechenden Methoden des Web Services zugreift.
208 Vgl. [Schäer, 2002] S.77
3. Konzepte zum Datenaustausch
Nachdem im Kapitel 2 der Kontext von Oce-Systemen im Bereich des Oce-basierten
Arbeitens abgegrenzt und eine begriiche Einordnung von Groupware und Oce Suites
gegeben wurde, soll nun eine technische Betrachtung einiger Groupware-Systeme in Abschnitt 3.1 folgen. Diese Betrachtung hat zum Ziel das geeigneteste Groupware-System
zum Datenaustausch mit Oce Suites auszuwählen. Dabei spielt bei der Auswahl insbesondere das Schnittstellenangebot eine groÿe Rolle. Aber auch die Möglichkeit Groupwarebasierte Anwendungen auf dem Groupware-System ausführen zu lassen, soll in die Bewertung mit einieÿen. Aufbauend auf der getroenen Auswahl des Groupware-Systems
werden in Abschnitt 3.3 Anforderungen, an das prototypisch umzusetzende Datenaustauschkonzept, deniert. Diese Anforderungen dienen als Bewertungsgrundlage für die
verschiedenen Konzeptansätze, die im Abschnitt 3.4 erarbeitet werden sollen. Diese Konzeptansätze werden hinsichtlich ihrer Vor- und Nachteile diskutiert und im Abschnitt 3.5
bewertet, um somit eine Entscheidung in Abschnitt 3.6 für die prototypische Implementierung der OceGateway Schnittstelle in Kapitel 4 zu legen.
3.1. Technische Betrachtung
In diesem Abschnitt soll erst einmal in Unterabschnitt 3.1.1 ein Überblick über den Groupware Markt gegeben werden. Danach werden im Unterabschnitt 3.1.2 näher auf die Oce
Suites eingegangen. Dabei wird die technische Betrachtung folgenden Oce Suites gelten:
Microsoft Oce, die Oce Suites Lotus SmartSuite und Lotus Symphony des Unternehmens International Business Machines Corporation (IBM) und OpenOce.org, die Sun
Microsystems als Open Source seiner kommerziellen Oce Suite StarOce freigegeben
hat.
36
3. Konzepte zum Datenaustausch
37
3.1.1. Groupware-Systeme
Der Markt kommerzieller Groupware-Systeme ist insofern übersichtlich, da dieser im Wesentlichen von drei Anbietern beherrscht wird. Markführer dieser Branche ist das Unternehmen Microsoft
Jahre 2006.
2
1
mit einem Markanteil von 32% des Produktes Microsoft Exchange im
3
Konkurrent IBM
besitzt mit Lotus Notes 24% des Marktes und als abge-
4 5
schlagener Dritter folgt das Groupware-System GroupWise der Firma Novell .
6
wird der Anteil von Microsoft nach Einschätzung der Radicati Group
sen, Lotus auf 20% schrumpfen.
7
Bis 2009
auf 37% wach-
Alternative Groupware-Systeme sind beispielsweise das
8
9
Open Source Community-Projekt Kolab und Open-Xchange (OX) , bei dem die Entwicklerversion auch als Open Source zur Verfügung steht. Open Source Software bezeichnet
Software, deren Programme als Quellcode (Source Code) frei verfügbar sind, sodass die
Nutzer bzw. nutzende Unternehmungen, diese Programme für ihre Zwecke verändern,
Verbesserungen entwickeln und Fehler beseitigen können.
10
Im Folgenden wird kurz auf die Entstehung jedes Groupware-Systems eingegangen. Da
diese eine Mehrbenutzersoftware darstellen, die einen Werkzeugkasten mit unterschiedli-
11
chen Kombinationen von synchronen und asynchronen Kommunikationsdiensten
anbie-
ten, soll jeweils aufgezeigt werden, welche Kommunikationsdienste und Funktionalitäten
in der aktuellen Version integriert sind. Der Schwerpunkt der Betrachtung liegt jedoch auf
der Fähigkeit Groupware-basierte Anwendungen auf dem Groupware-System auszuführen
und der Existenz von Schnittstellen, die einen Datenaustausch ermöglichen.
1 http://www.microsoft.com
2 Vgl. [Jung, 2006]
3 http://www.ibm.com
4 http://www.novell.com
5 Vgl. [Jung, 2006]
6 http://www.radicati.com
7 [Jung, 2006]
8 http://www.kolab.org
9 http://www.open-xchange.com
10 [Alpar et al., 2002] S.396
11 Vgl. [Hansen und Neumann, 2005] S.441
3. Konzepte zum Datenaustausch
38
Microsoft Exchange
Das Groupware-System Microsoft Exchange ist aus dem Programm Microsoft Mail entstanden und wurde im Jahre 1995 veröentlicht.
12
Die folgende Betrachtung von Microsoft
Exchange basiert, sofern es nicht anders gekennzeichnet ist, auf der Onlinedokumentation
im TechNet von Microsoft
Aktuell
14
13
.
ist die Version 2007 von Microsoft Exchange auf dem Markt und bietet ein
Messaging-System mit Zugri auf E-Mails, Voice-Mails, Kalender und Kontakte und einen
integrierten Schutz vor Spam und Viren. Exchange Server 2007 wird als Standard Edition und Enterprise Edition angeboten. Exchange Server 2007 Standard Edition wurde
für kleine und mittlere Unternehmen konzipiert, wohingegen die Enterprise Edition für
groÿe Unternehmen entwickelt wurde und zusätzlich die Erstellung mehrerer Speichergruppen und Datenbanken ermöglicht. Als Groupware Client existieren die verschiedenen
Outlook Varianten Outlook, Outlook Express, Outlook Mobile Access, Pocket Outlook
und Outlook Web Access.
In Exchange 2007 wurde das Konzept der Serverfunktionen neu eingeführt, die separat
installiert werden können. Folgende Serverfunktionen stehen zur Verfügung:
•
Mailbox: Die Serverfunktion Mailbox ist für das Hosten der Postfachdatenbanken
zuständig. Zur Bereitstellung einer hohen Verfügbarkeit der Postfachserver wurden
drei unterschiedliche Replikationstechniken implementiert.
•
ClientAccess: Die Serverfunktion ClientAccess ermöglicht den Postfachzugri über
15
Oce Outlook 2007, Oce Outlook Web Access, POP3, IMAP4, Outlook Anywhere
und Exchange Server ActiveSync. Outlook Web Access ermöglicht den Zugri auf die
Exchange Funktionalitäten über einen beliebigen Webbrowser. Exchange ActiveSync
kann für die Synchronisierung von E-Mails, Kontakten, Kalenderinformationen und
Tasks zwischen einem mobilen Gerät und Exchange 2007 eingesetzt werden.
12 Vgl. [Allan, 2001] S.104
13 Vgl. [Microsoft, 2007]
14 Stand: Februar 2008
15 Weitere Informationen unter
80).aspx
http://technet.microsoft.com/en-us/library/bb123741(EXCHG.
3. Konzepte zum Datenaustausch
•
39
Hub Transport: Die Serverfunktion Hub Transport verwaltet das Routing und wendet darüber hinaus Richtlinien auf eingehende und ausgehende E-Mails an.
•
UniedMessaging: In der Serverfunktion UniedMessaging werden Sprach-, Faxund E-Mail Nachrichten in einer einzigen Messaginginfrastruktur kombiniert, auf
die die Benutzer mithilfe mobiler Geräte und Mobil-, Analog- oder Digitaltelefone
zugreifen können. Die Voraussetzung zur Nutzung der meisten UniedMessaging
Funktionen ist jedoch der Betrieb eines Microsoft Oce Communications Server
2007
•
16
.
Edge-Transport: Die Serverfunktion Edge-Transport bietet Antispam- und Antivirendienste zum Schutz vor Spam und Viren. Es stehen ein Virenscan-API und eine
programmierbare Virenüberwachung auf Transportebene zur Verfügung.
Exchange 2007 enthält eine Reihe neuer Dienste, die als Exchange-Webdienste bezeichnet
werden. Sie bieten Entwicklern den Zugri auf die Postfächer authentizierter Benutzer. Die Exchange-Webdienste sind eine programmierbare Schnittstelle und verarbeiten
17
SOAP
.NET
18
-Nachrichten, die über HTTP gesendet werden. Weiterhin stehen in Exchange
Framework-Erweiterungen zur Verfügung, die mit Hilfe von Klassen und Daten-
strukturen den Zugri auf, sowie die Bearbeitung von verschiedenen Komponenten der
E-Mail-Nachrichten ermöglichen. Exchange besitzt kein integriertes DMS. Doch existieren
Lösungen von Drittanbietern, wie zum Beispiel Keyles Active Document Workspace
20
der Firma Pronobis
16 Weitere
19
, die ein DMS Exchange und Outlook hinzufügen.
Informationen
unter
http://office.microsoft.com/de-de/communicationsserver/
FX101729111031.aspx
17 SOAP ist ein Kommunikationsprotokoll, welches den Aufbau und das Format von Nachrichten deniert,
die zwischen dem Service Consumer und dem Service Provider ausgtauscht werden. Der Austausch der
XML-basierten SOAP-Nachricht erfolgt mithilfe eines Transportprotokolls, wie beispielsweise HTTP.
(Vgl. [Kollmann, 2007] S.98)
18 Microsofts .NET ist eine Entwicklungs- und Deployment-Plattform zur Konstruktion und zum Betrieb
von verteilten Applikationen für das Intra- und Internet. (Vgl. [Petzel, 2005] S.403)
19 Weitere Informationen unter
20 http://www.pronobis.at
http://www.pronobis.at/Software/eiStream/master_eiStream.htm
3. Konzepte zum Datenaustausch
40
Lotus Notes
Die Groupware Lotus Notes/Domino ist ein kommerzielles Produkt von IBM. Der Bereich
der Groupware spielt bei der heutigen Version von Lotus Notes/Domino eigentlich nur eine
untergeordnete Rolle.
21
Lotus Notes/Domino stellt eher eine Applikationsplattform mit ei-
gener Datenbankentwicklungsumgebung dar, die zusätzlich ein Dokumentenmanagement,
Groupwareanwendungen, Administrationswerkzeuge und viele anderen Technologien und
22
Funktionalitäten integriert hat.
Die folgende Entstehungsgeschichte basiert auf [Webteam, 2007] und soll den Schwerpunkt auf die Einführung und Integration wichtiger Technologien in Lotus Notes/Domino
legen. Lotus Notes wurde ab 1984 von Iris Associates mit der Vision entwickelt OnlineDiskussion, E-Mail, Telefonbücher und eine Dokumentendatenbank zusammen in ein Produkt zu integrieren. Die erste Version, die 1989 vorgestellt wurde, beinhaltete Programme
wie Group Mail, Group Discussion und Group Phone Book und die Möglichkeit mithilfe
von Templates eigene Applikationen zu entwickeln. Lotus Notes bot dem Benutzer eine Client/Server Architektur an, die die Clients über das Netzwerk bedienen konnten.
Es war auch möglich mehrere Notes Server zu benutzen, die über den SynchronisationsMechanismus der Replikation
23
ihre Daten miteinander abgleichen konnten. Revolutionäre
Funktionalitäten waren die Verschlüsselung, die Signierung, die auf dem Rivest, Shamir
und Adelman (RSA)-Kryptosystem
24
basierende Authentizierung und die Integration
der Formelsprache @Formulas. Die Version 2.0 wurde 1991 eingeführt und konzentrierte
sich auf die Verbesserung der Skalierbarkeit. Auÿerdem wurde unter anderem das C-API,
zusätzliche Formelsprachfunktionen und der Richtext-Support hinzugefügt. Im Mai 1993
wurde die Lotus Notes Version 3.0 freigegeben. In dieser Version wurden die Hauptveränderungen am Design vorgenommen und zusätzliche Funktionen, wie beispielsweise die
Volltextsuche und die Integration der standardisierte Datenbankschnittstelle Open Data-
25
base Connectivity (ODBC)
, eingeführt. Die Version 4.0 von Lotus Notes, die im Januar
21 Vgl. [Feilner, 2007] S.5
22 Vgl. [Feilner, 2007] S.5
23 Vgl. Abschnitt 2.2
24 Das RSA-Kryptosystem ist eine Verschlüsselung mit öentlichem Schlüssel und basiert auf die Verwendung des Produkts zweier groÿer Primzahlen, die eine Primfaktorzerlegung sehr aufwendig machen.
(Vgl. [Coulouris et al., 2002] S.329)
25 ODBC ist ein Industriestandard für Datenbanken und ermöglicht, durch die Verwendung eines
ODBC
Treibers,
den
Zugri
auf
Daten
der
meisten
gängigen
Datenbanksysteme.
(Vgl.
3. Konzepte zum Datenaustausch
41
1996 veröentlicht wurde, wies eine komplette Überarbeitung der Benutzerschnittstelle
auf. Weiterhin wurde die Programmiersprache LotusScript und aufgrund der steigenden
Bedeutung des Webs wichtige Web-Technologien, wie ein HTTP Server, integriert. Im
Dezember 1996 wurde im Zuge der Übernahme von Lotus durch IBM, die schon 1995
statgefunden hatte, der neue Notes 4.5 Server in Lotus Domino 4.5 umbenannt. Der Lotus
Domino Server wandelte sich in einen interaktiven Webapplikations-Server, der die oenen
Internet Standards und Protokolle mit der integrierten Entwicklungsumgebung von Lotus
Notes kombinierte. Lotus Notes/Domino in der Version 5.0 wurde Anfang 1999 eingeführt.
Mit dieser Version ging die Web-Integration weiter. Wichtige Weiterentwicklungen des Domino Servers waren zum Beispiel der Multipurpose Internet Mail Extension (MIME)
26
und
SMTP Support und die Unterstützung der Programmiersprachen Java und JavaScript.
Die Version 6.0 des Lotus Domino Servers, der zusammen mit dem Lotus Notes Client im
Oktober 2002 vorgestellt wurde, legte die Schwerpunkte im Wartungs- und Administrationsbereich durch Verbesserung der Installation, Skalierbarkeit und Performance. Auch
27
weitere Unterstützung wichtiger Technologien wie beispielsweise SOAP/XML
ver Pages (JSP)
28
und Sevlets
29
, JavaSer-
wurden implementiert. Im September 2003 gab IBM Lotus
Notes/Domino 6.5 frei. Diese Version bot eine engere Integration mit anderen IBM/Lotus
Technologien, wie beispielsweise dem Instant Messaging Produkt IBM Lotus Sametime
und IBM Lotus Domino Web Access. Lotus Notes/Domino 7.0 wurde im August 2005
eingeführt. Diese Version legte das Hauptaugenmerk auf eine einfachere und ezientere
Nutzung und Wartung von Lotus Notes/Domino.
[Elmasri und Navathe, 2002] S.614 und S.930)
26 MIME als Standard für das Versenden von E-Mail-Nachrichten, die verschiedene Daten, wie beispielsweise Text, Bilder und Audio beinhalten können. Vor den Daten wird der MIME-Präx geschrieben,
damit der Empfänger den Typ der Daten erkennen kann. (Vgl. [Coulouris et al., 2002] S. 186)
27 XML ist eine Vielzahl von Standards, die vom World Wide Web Consortium (W3C), für
die
Denition
und
die
Verarbeitung
strukturierter
Datenformate,
entwickelt
wurden.
(Vgl.
[Schmidt und Wohlberg, 2007] S.1233)
28 Die JSP Technologie ist Teil des Java Enterprise Edition (EE)-Standards und ermöglicht die serverseitige Erweiterung von Hypertext Markup Language (HTML)-Seiten um dynamisch generierte Inhalte.
(Vgl. [Bergsten, 2002] S.13)
29 Servlets sind Java-Klassen, die in einer Java-Umgebung im Webserver integriert sind und mit der Servlet
Engine auf dem Server interagieren. Sie verarbeiten und beantworten Anfragen, die vom Webbrowser
über die Servlet Engine an sie gestellt werden. (Vgl. [Hunter, 1998] S.17)
3. Konzepte zum Datenaustausch
42
Der Notes Client ermöglichte es nun Instant Messaging Meetings mit Hilfe von Screen
Sharing, Whiteboards, Audio und Video durchzuführen.
30
Die aktuelle
Version von Lotus Notes/Domino in der Version 8.0 wurde im August 2007
veröentlicht. Es enthält die folgenden Produkte: den Server IBM Lotus Domino 8, den
Client IBM Lotus Notes 8, den Client IBM Lotus Domino Web Access 8, der den Zugri
auf Lotus Domino-Werkzeuge über einen Webbrowser ermöglicht, und die Anwendungs-
31
entwicklungssoftware IBM Lotus Domino Designer 8.
Auf die Verbesserungen, neuen
Funktionalitäten und Innovationen der Version 8.0 soll nun im Folgenden näher eingegangen werden.
Der Lotus Domino Server 8 bietet Unterstützung für eine Vielzahl von Betriebssystemen,
wie IBM i5/Operating System (OS), IBM z/OS, IBM Advanced Interactive eXecutive
32
(AIX), Sun Solaris, Windows und Linux.
und Linux Betriebssysteme zur Verfügung.
Der Lotus Notes 8 Client steht für Windows
33
Lotus Notes 8 wurde auf der Grundlage
der auf oenen Standards basierenden Technologie Eclipse Rich Client Platform (RCP)
entwickelt. Die Eclipse RCP unterstützt die Anwendungsentwicklung mit einer funktionsreichen graschen Benutzeroberäche.
34
Die Eclipse RCP wird auch von IBM Lotus
Sametime und IBM Lotus Expeditor genutzt und ermöglicht somit eine clientübergreifende Entwicklung.
35
Eclipse ist eine oene Community, die Open-Source-Code und -
Standards für eine RCP bereitstellt, die auf einer breiten Palette von Desktop-Personal
Computers (PCs), Laptops, Tablet-PCs, Selbstbedienungsterminals und mobilen Endgeräten ausgeführt werden kann. Eclipse verwaltet auch die Installation, Aktualisierung
und Deinstallation von Softwarekomponenten. Lotus Expeditor erweitert die EclipseCodierung um eine Plattform für Verbundanwendungen sowie um Basisservices für Lotus
Notes und Lotus Sametime.
36
Verbundanwendungen ermöglichen, durch die bereitgestell-
37
ten Komponenten, den Aufbau einer einheitlichen Benutzerschnittstelle.
30 Stand: Januar 2008
31 Vgl. [IBM, 2007d] S.3
32 Vgl. [IBM, 2007a] S.12
33 Vgl. [IBM, 2007a] S.12
34 [IBM, 2007b] S.7
35 Vgl. [IBM, 2007b] S.5
36 [IBM, 2007b] S.7
37 Vgl. [IBM, 2007b] S.5
3. Konzepte zum Datenaustausch
43
Wobei jede Komponente ein Fenster zu einer Anwendung oder einem System darstellt,
die durch denierte Beziehungen miteinander kommunizieren können.
38
Die Lotus Domino-Roadmap für die Anwendungsentwicklung baut auf der grundlegenden
Voraussetzung auf, dass die Plattform Lotus Domino exibel, oen und anpassungsfähig
ist. Dies zeigt sich an ihrer Unterstützung für XML und für zahlreiche Programmiersprachen und Unternehmensintegrationslösungen.
39
Die XML-Schnittstelle kann zum Da-
tenaustausch zwischen Lotus Domino-Systemen und anderen Systemen verwendet werden, um auf Daten in einer Lotus Domino Datenbank zuzugreifen, sie in ein benötigtes
Format umzuwandeln oder Daten in einer Lotus Domino Datenbank zu aktualisieren.
40
Die XML-Unterstützung ist nicht auf Anwendungsdaten beschränkt. Die Elemente einer Lotus Domino-Anwendung besitzen auch eine XML Repräsentation. Dadurch können
Entwickler Code unter Verwendung einer standardisierten Denition gemeinsam nutzen
und pegen.
41
Zur Unterstützung der Interoperabilität bietet Lotus Notes und Domino mehrere Schnittstellen zu einem einheitlichen Objektmodell.
42
Auf das Objektmodell von Lotus Notes/Domino
kann aus einem Java EE-System mittels Java oder Lotus Domino-JSP-Tags über das JavaAPIs oder aus einer .NET-Umgebung über das COM
zugegrien werden.
44
43
-APIs auf Lotus Domino-Services
Lotus Notes/Domino bietet eine Web Service Unterstützung über
Standardwebprotokolle wie XML, SOAP und HTTP.
45
Web Services
46
ermöglichen die
verteilte Datenverarbeitung und Kommunikation zwischen unterschiedlichen Softwareanwendungen auf unterschiedlichen Plattformen.
47
Weiterhin bietet das einheitliche Lotus
Connectors-API den programmgestützten Zugri auf systemeigene Verbindungen für gän-
38 Vgl. [IBM, 2007b] S.5
39 [IBM, 2007b] S.11
40 Vgl. [IBM, 2007b] S.12
41 [IBM, 2007b] S.12
42 [IBM, 2007b] S.12
43 COM ist ein von Microsoft entwickeltes Framework zum Objektaustausch, welches als Teil OLE beinhaltet. (Vgl. [Schmidt und Wohlberg, 2007] S.1219)
44 Vgl. [IBM, 2007b] S.12
45 [IBM, 2007b] S.12
46 Weitere Informationen unter Unterabschnitt 2.5.2
47 Vgl. [IBM, 2007b] S.12
3. Konzepte zum Datenaustausch
44
48
gige Datenbanksysteme, wie zum Beispiel IBM DB2
50
Query Language (SQL) Server
und ODBC-Systeme.
, Oracle Datenbank
49
, Structured
51
Der Lotus Notes Client ist die zentrale Schnittstelle, um auf E-Mails, Kalender, Kontakte und Anwendungen zugreifen zu können. Eine seitliche Aktionsleiste ermöglicht
den schnellen Zugri auf oft verwendete Funktionen, wie beispielsweise die integrierten Instant-Messaging-Kontaktlisten von IBM Lotus Sametime oder RSS Feeds.
52
Die
E-Mail-Funktionalität wurde dahingehend verbessert, indem beispielsweise durch das EMail-Threading zusammengehörige E-Mail-Nachrichten gruppiert angezeigt oder durch
die Funktionalität des E-Mail-Rückrufs versehentlich versendete E-Mail-Nachrichten zu-
53
rückgerufen werden können.
Eine hilfreiche Innovation stellt die Collaboration History
dar. Die Collaboration History zeigt zu jedem Kontakt die E-Mails, Besprechungen, Chatnachrichten und sonstige Interaktionen an, somit hat man jederzeit die Übersicht über
getätigte Kommunikation.
Eine weitere Neuerung in der aktuellen Lotus Notes Version 8 sind die IBM Produktivitätstools. Die Produktivitätstools sind eine Gruppe von Anwendungen für die Textverarbeitung, Tabellenkalkulation und Präsentation: IBM Lotus Documents, IBM Lotus Spreadsheets und IBM Lotus Presentations.
55
(ODF)
54
Sie unterstützen das Open Document Format
und sind zusätzlich in der Lage die Dokumente, Tabellen und Präsentationen
56
in Adobe Portable Document Format (PDF) Dateien zu konvertieren.
Durch die Inte-
gration von Oce Suites Anwendungen in Form der Produktivitätstools versucht IBM
auch das Gebiet der individuellen Oce-Anwendungen
57
mit seinem Groupware-System
abzudecken. Aus den Produktivitätstools ist IBMs neue Oce Suite Lotus Symphony
als eigenständiges Produkt hervorgegangen.
48 Weitere Informationen unter
49 Weitere Informationen unter
50 Weitere Informationen unter
51 Vgl. [IBM, 2007b] S.13
59
http://www-306.ibm.com/software/data/db2
http://www.oracle.com/lang/de/database/index.html
http://www.microsoft.com/germany/sql/2008/default.mspx
52 Vgl. [IBM, 2007d] S.5
53 Vgl. [IBM, 2007d] S.5
54 Vgl. [IBM, 2007c] S.2
55 Siehe OpenOce.org unter Unterabschnitt 3.1.2
56 Vgl. [IBM, 2007c] S.2,4
57 Vgl. Unterabschnitt 2.1.1
58 Siehe Lotus Symphony unter Unterabschnitt 3.1.2
59 Vgl. [Head, 2008] S.61
58
3. Konzepte zum Datenaustausch
45
GroupWise
Das Groupware-System der Firma Novell heiÿt GroupWise und stammt von WordPerfect
60
Oce ab, das ab 1986 entwickelt wurde.
1993 wurde die Version 4.0 von Wordperfect
Oce eingeführt, die aus dem bisher reinen E-Mail-System ein Groupware-System machte
61
und ergänzend Kalender- und Workow Funktionen enthielt.
Novell WordPerfect und entwickelte daraus GroupWise 4.1.
63
Die aktuelle
Ein Jahr später übernahm
62
64
Version 7 von GroupWise, die im Juni 2005 vorgestellt wurde
, wird von
den Betriebssystemen wie Novell Open Enterprise Server, NetWare, Linux und Windows unterstützt.
65
Der Groupwise Client steht für die Betriebssysteme Windows, Linux
und Mac OS zur Verfügung.
66
Der GroupWise WebAccess-Client ermöglicht den Zugri
auf den GroupWise Server über einen Webbrowser und kann auch auf Pocket PCs mit
Windows und auf jedem mobilen Gerät eingesetzt werden, welches das Wireless Access
67
Protocol (WAP)
68
unterstützt.
Auch ein Outlook-Connector existiert, der den Benutzer
in die Lage versetzt Outlook als Groupware Client in Verbindung mit einem GroupWise
Server zu verwenden.
69
GroupWise 7 bietet E-Mail- und Kalenderfunktionen, Instant Messaging, Aufgaben- und
Dokumentenverwaltung mit integrierter Versionskontrolle sowie Funktionen zur Datenar-
70
chivierung.
Zur sicheren Kommunikation unterstützt GroupWise oene Sicherheitsstan-
dards wie SSL
71
, Secure / Multipurpose Internet Mail Extension (S/MIME) und Public
60 Vgl. [De Korte, 2006] S.25
61 Vgl. [Krause, 2002]
62 Vgl. [De Korte, 2006] S.25
63 Stand: Februar 2008
64 Vgl. [Novell, 2005]
65 Vgl. [Novell, 2007a] S.7
66 Vgl. [Novell, 2007a] S.5
67 Der WAP Standard bietet Mobilfunkteilnehmern Zugang zum Internet. Dabei sind die Inhalte auf
das Wesentliche reduziert, um den Anforderungen eines mobilen Gerätes gerecht zu werden. (Vgl.
[Lüders, 2001] S.204)
68 Vgl. [Novell, 2007a] S.5
69 Vgl. [Novell, 2007a] S.6
70 Vgl. [Novell, 2005]
71 Das SSL-Protokoll richtet mithilfe einer Verschlüsselung mit öentlichen Schlüsseln einen sicheren
Kanal ein, der dann genutzt wird, um geheime Schlüssel für die spätere Datenübertragung auszutauschen. SSL wird auch allgemein dafür eingesetzt, um eine sichere Implementierung von existierenden Protokollen, wie beispielsweise MIME, IMAP, HTTP oder SMTP, zu realisieren. (Vgl.
3. Konzepte zum Datenaustausch
72 73
Key Infrastructure (PKI)
.
46
GroupWise arbeitet mit mehreren Spamschutz-Ebenen, die
den Empfang unerwünschter E-Mail-Nachrichten blockieren.
74
Weiterhin kann GroupWise
mit Zusatzprodukten von Drittanbietern kombiniert werden, die beispielsweise einen Virenund Spamschutz integrieren.
75
Der in GroupWise integrierte Novell GroupWise Internet Agent ermöglicht den E-Mail
Austausch mit anderen Groupware-Systemen, welche die oenen Protokolle POP/SMTP,
IMAP, MIME und S/MIME unterstützen.
76
Da der GroupWise Internet Agent auch als
LDAP-Server fungieren kann, sind die Benutzer in der Lage, LDAP-Anfragen zu Benutzerinformationen zu erstellen, die im GroupWise-Adressbuch enthalten sind.
77
GroupWise Web Service (GroupWise SOAP) ist eine plattformübergreifende Schnittstelle, mit der die GroupWise-Funktionen erweitert werden können.
78
GroupWise WebSer-
vice ermöglicht den serverseitigen Zugri auf GroupWise-Benutzerkonten, sodass ClientAnwendungen erstellt, Nachrichten, Adressbücher und Ordner gelesen, geändert und angelegt, sowie ereignisgesteuerte Vorgänge ausgeführt werden können.
79
Kolab
Im Folgenden wird, soweit keine andere Literatur angegeben ist, in Anlehnung an [Schütze, 2008]
näher auf die Groupware Kolab eingegangen.
Die Entwicklung von Kolab geht auf eine Ausschreibung durch das Bundesamt für Sicher-
80
heit in der Informationstechnik (BSI) zurück.
Ziel der Ausschreibung war die Entwick-
lung einer Open Source Groupware-Lösung basierend auf freier Software.
81
Im Oktober
2002 wurde die Ausschreibung an drei Unternehmen (Intevation GmbH, Erfrakon und
Klarälvdales Datakonsult) vergeben, die das Projekt unter dem Projektnamen Kroupware
[Coulouris et al., 2002] S.297 und S.352)
72 PKI
ist
ein
Oberbegri
([Lieberwirth, 2004] S.708)
73 Vgl. [Novell, 2006a] S.18
74 Vgl. [Novell, 2006a] S.5
75 Vgl. [Novell, 2007b] S.19
76 Vgl. [Novell, 2007a] S.6
77 Vgl. [Novell, 2007a] S.6
78 Vgl. [Novell, 2007a] S.7
79 Vgl. [Novell, 2007a] S.7
80 Vgl. [Schütze, 2008] S.7
81 Vgl. [Schütze, 2008] S.7
für
die
Verwendung
von
öentlichen
und
privaten
Schlüsseln.
3. Konzepte zum Datenaustausch
fertig stellten.
82
47
Die Softwarekomponenten des Kolab Projektes heiÿen Kolab Server, sowie
K Desktop Environment (KDE)
neral Public Licence (GPL).
84
83
Kolab Client und stehen als Open Source unter der Ge-
Im Juli 2003 erschien die erste stabile Version von Kolab1
85
und zwar der Kolab Server 1.0 und der KDE Kolab Client 1.0.
Um Groupware-Daten
plattformübergreifend zugreifbar zu machen, wurde in Kolab2 das Kolab XML Format
86
eingeführt und im Juni 2005 der Kolab Server 2.0 veröentlicht.
Aktuell
87
ist der Kolab Server 2.2.0 in der Entwicklung, der voraussichtlich im ersten Quar-
88
tal 2008 fertiggestellt werden soll.
Kolab ist in erster Linie ein Konzept, wie mit freier
Software eine skalierbare, stabile und sichere Groupware-Lösung umgesetzt werden kann.
In dieser Idee unterscheidet sich Kolab bereits von vielen anderen Produkten, welche Kommunikation und Arbeitsgruppen unterstützen möchten. [...] Bei Kolab entsteht der Nutzen
im Zusammenspiel von Client und Kolab-Server. Es werden Groupware-Funktionen zum
Austauschen von E-Mails, Freigeben und Bearbeiten von Dateien, sowie Verwalten von
Kontakten, Terminen, Aufgaben und Notizen auf Basis oener Standards geboten.
90
Die Nutzerdaten werden in Ordnern zentral auf dem Kolab-Server gespeichert.
89
Jeder
Nutzer verwaltet seine Ordner selbstständig und kann diese auch für andere Nutzer freigeben.
91
Die E-Mail Funktionalität beinhaltet beispielsweise eine Abwesenheitsbenachrich-
92
tigung und eine E-Mail-Weiterleitung.
Durch die vollwertige Unterstützung von IMAP,
POP3, SMTP sind die Voraussetzungen für die Unterstützung durch jeden Mail-Client
gegeben.
93
82 Vgl. [Schütze, 2008] S.7
83 KDE ist ein vollständig integrierter Desktop für das X Window-System und bei vielen LinuxDistributionen der Standard-Desktop. (Vgl. [Drilling et al., 2000] S.179)
84 Vgl. [Schütze, 2008] S.7
85 Vgl. [Schütze, 2008] S.7
86 Vgl. [Schütze, 2008] S.7
87 Stand: Februar 2008
88 Vgl. [Schütze, 2008] S.7
89 [Schütze, 2008] S.6
90 Vgl. [Schütze, 2008] S.7
91 Vgl. [Schütze, 2008] S.7
92 Vgl. [Schütze, 2008] S.7
93 Vgl. [Schütze, 2008] S.7
3. Konzepte zum Datenaustausch
48
Bei der Entwicklung von Kolab liegt ein Schwerpunkt auf die Implementierung von Sicherheitsmechanismen auf der Applikations- und Transportebene.
94
Zur Verschlüsselung von
E-Mail kann optional auf Seiten des KDE Kolab-Clients das PKI Verschlüsselungsverfah-
95
ren eingesetzt werden.
Die Kommunikation zwischen Server und Client ndet über SSL-
verschlüsselte Protokolle wie Internet Message Access Protocol über SSL/TLS (IMAPS),
Simple Mail Transfer Protocol über SSL/TLS (SMTPS) und Hypertext Transfer Protocol
über SSL/TLS (HTTPS) statt und gewährleistet eine sichere Kommunikation auf Transportebene.
96
Ein weiterer Sicherheitsaspekt des Kolab-Konzepts ist die Implementierung
einer Access Control List (ACL), um die Berechtigungen der Benutzer bei Zugri auf
97
Verzeichnisse oder Postfächer zu denieren.
Als optionale Sicherheitsmechanismen des
Kolab-Servers sind die Open Source Schnittstelle A Mail Virus Scanner (AMaViS) für
Virenscanner und die Skriptsprache Sieve, mit deren Hilfe Spamnachrichten ausgeltert
98
werden können, zu nennen.
Mit Hilfe von AMaViS kann der E-Mail Verkehr auf Viren
99
untersucht und somit die Verbreitung von Schädlingen eingedämmt werden.
Der KDE Kolab-Client bündelt viele Einzelprogramme (u. a. KMail, KAdressbook, KOrganizer,
KNotes) aus der KDE-Umgebung zu einem Programm und ist für alle Betriebssysteme
(zum Beispiel Linux, UNIX, Mac OS), bei denen der Windowmanager KDE eingesetzt
100
werden kann, verfügbar.
Seit der Kolab Server Version 2.2 ist auch der Horde Webclient
integraler Bestandteil, um die Groupwarefunktionalitäten auch plattformunabhängig im
101
Webbrowser nutzen zu können.
102
Neben dem oziellen Kolab Server, sowie den Kolab-Clients Kontact und Horde
103
bereits weitere Entwicklungen
vention Groupware Server
105
104
von Drittanbietern.
Als Kolab-Server noch ist der Uni-
vorhanden. Um Microsoft Outlook Groupware-Funktionalitäten
94 Vgl. [Schütze, 2008] S.28
95 Vgl. [Schütze, 2008] S.7
96 Vgl. [Störmer, 2004] S.18
97 Vgl. [Störmer, 2004] S.28
98 Vgl. [Störmer, 2004] S.29
99 Vgl. [Störmer, 2004] S.29
100 [Schütze, 2008] S.64
101 Vgl. [Schütze, 2008] S.65
102 http://www.horde.org
103 Stand: Januar 2008
104 Vgl. [Schütze, 2008] S.7
105 Weitere Informationen unter
, gibt es
http://www.univention.de/ugs.html
3. Konzepte zum Datenaustausch
49
eines Kolab Clients zu ermöglichen, existieren proprietäre Outlook-Konnektoren von Toltec
107
KONSEC
und Bynari
106
108 109
.
OX
Die erste Version ihres Groupware-Systems entwickelte Netline
110
1998 als Browser-basierte
Webanwendung mit Funktionen wie Kalender, Kontakt- und einem kleinen Projektma-
111
nagement.
Im Jahr 2000 stellte Netline zusammen mit Compaq das System comFire
vor, welches eine Linux-basierte Weiterentwicklung darstellte.
112
Die SuSE Linux AG in-
tegrierte 2001 die Groupware-Funktionen von ComFire in ihren Suse Linux Openexchange
Server (SLOX), der explizit auf den SUSE Linux Enterprise Server abgestimmt wurde und
somit zwar Open Source Code beinhaltete, jedoch letztendlich eine proprietäre Software
113
war.
Netline entwickelte daraufhin das Groupware-System OX aus reinen Open Source
114
Komponenten und stellte es im August 2004 unter die GPL.
Es bietet Groupware-
Funktionen wie gemeinsame Nutzung von E-Mail, Kontakten, Kalendern, Aufgabe und
Datensicherung in Echtzeit.
Die aktuelle
116
115
Version der OX Community Edition ist OX Server 0.8.8-0. Die kommerziel-
117
le Variante von OX Server liegt aktuell
in der Version 5 vor und enthält alle Funktionen
118
des Open Source Projekts OX Server 0.8.
Zusätzlich erweitert es den Leistungsumfang
unter anderem um Konnektoren für Outlook und Palm, einem Web-Interface für Administratoren, Handbücher und Installationssupport.
119
Für eine erhöhte Netzwerksicherheit
120
stehen auch noch lizenzfreie Anti-Virus und Anti-Spam Module zur Verfügung.
106 http://www.toltec.co.za
107 http://www.konsec.com
108 http://www.bynari.com
109 Vgl. [Schütze, 2008] S.7
110 http://netline-is.de
111 Vgl. [Hierlmeier, 2004]
112 Vgl. [Hierlmeier, 2004]
113 Vgl. [Hierlmeier, 2004]
114 Vgl. [Feilner, 2007] S.3
115 [Hierlmeier, 2004]
116 Stand: Februar 2008
117 Stand: Februar 2008
118 Vgl. [c't, 2005]
119 Vgl. [c't, 2005]
120 Vgl. [Open-Xchange, b]
OX
,
3. Konzepte zum Datenaustausch
50
Server 5 unterstützt die beiden führenden Enterprise Linux Distributionen Red Hat und
SUSE und ist auch als Collax OX Server
121
122
verfügbar.
OX Server 5 stellt eine erweiter-
bare Integrationsplattform (OX Framework) durch den Einsatz und die Implementierung
von oenen Standards, Protokollen und Dateiformaten dar und bietet somit die Möglichkeit weitere Module, wie beispielsweise ein Instant-Messanger oder einen VoIP-Dienst,
einzubinden.
123
Als Groupware Client stehen bei OX der OX Web-Client oder die Verwen-
dung des OXtender für Microsofts Outlook bereit, der die volle Groupware Funktionalität
bietet.
124
Auswahl einer Groupware
Nach der Betrachtung einiger Groupware-Systeme soll nun ein System ausgewählt werden,
welches die besten Voraussetzungen für eine Datenaustauschlösung mit Oce Suites ermöglicht. Dabei ist wichtig, dass es mit diesem Groupware-System möglich ist, Groupwarebasierte Anwendungen zu implementieren und ausführen zu lassen. Als weitere Anforderung an das auszuwählende Groupware-System, sind die angebotenen Schnittstellen zu
nennen.
Microsoft Exchange ermöglicht es zwar .NET Erweiterungen zu implementieren, jedoch ist
125
dies nur auf das Betriebssystem Windows beschränkt.
Auch stellt Microsoft Exchange
von Hause aus kein eigenes DMS zur Verfügung. Dies lässt sich nur durch Produkte von
Drittanbietern nachrüsten.
GroupWise von Novell besitzt eine Dokumentenverwaltung
ge Zusatzprodukte
127
126
und ist auch in der La-
zu integrieren, jedoch fehlt es an einer integrierten Entwicklungs-
umgebung, um die Implementation von Groupware-basierte Anwendungen zu ermöglichen. GroupWise stellt mit dem GroupWise Web Service eine plattformübergreifende
Schnittstelle zur Verfügung, mithilfe dessen Web Services auf die Funktionalitäten des
Groupware-Systems zugreifen können.
121 Weitere Informationen unter
http://www.collax.com/de/loesungen/groupware.html
122 Vgl. [Open-Xchange, a]
123 Vgl. [Laguna de la Vera, 2007] S.8
124 Vgl. [Open-Xchange, a]
125 Vgl. [Microsoft, 2007]
126 Vgl. [Novell, 2005]
127 Vgl. [Novell, 2007b] S.19
128 Vgl. [Novell, 2007a] S.7
128
3. Konzepte zum Datenaustausch
51
Das Groupware-System Kolab besitzt durch seine Architektur, die auf oenen Standards
und freier Software basiert, ein groÿes Potential Erweiterungen zu implementieren.
129
Auch werden die Daten der Benutzer zentral auf dem Kolab-Server in Datenbanken ver-
130
waltet.
Jedoch ist das Ziel von Kolab die Standardfunktionen einer Groupware durch
das Zusammenspiel von Client und Kolab-Server zur Verfügung zu stellen und nicht die
Bereitstellung einer integrierten Entwicklungsumgebung von Groupware-basierten Anwendungen.
131
Die Architektur des Groupware-Systems OX stellt eine erweiterbare Integrationsplattform
(OX Framework) durch den Einsatz und die Implementierung von oenen Standards,
132
Protokollen und Dateiformaten dar.
Somit bietet es die Möglichkeit weitere Module zu
implementieren und in das Groupware-System einzubinden.
133
Auch stellt es eine Anzahl
von Schnittstellen bereit, die OX zum potentialen Kandidaten für die Auswahl eines
Groupware-Systems machen, um in dieser Arbeit eine Datenaustauschlösung mit Oce
Suites zu realisieren.
Lotus Notes/Domino ist eher eine Applikationsplattform mit eigener Datenbankentwicklungsumgebung, die zusätzlich ein Dokumentenmanagement, Groupwareanwendungen,
Administrationswerkzeuge und viele anderen Technologien und Funktionalitäten integriert.
134
Lotus Notes/Domino stellt ein Objektmodell zur Verfügung auf das mithilfe
135
unterschiedlicher Schnittstellen zugegrien werden kann.
Dazu zählen unter anderem
APIs für die Programmiersprachen C und Java und die Technologie COM.
stehen eine Webervice Unterstützung
RCP Framework
138
137
136
Weiterhin
, die Makrosprache LotusScript und das Eclipse
für die Anwendungsentwicklung zur Verfügung.
Die Groupware-Systeme Lotus Notes/Domino und OX bieten gegenüber den anderen
Groupware-Systemen die besten Voraussetzungen für die Realisierung einer Datenaus-
129 Vgl. [Schütze, 2008] S.6
130 Vgl. [Schütze, 2008] S.7
131 Vgl. [Schütze, 2008] S.6
132 Vgl. [Laguna de la Vera, 2007] S.8
133 Vgl. [Laguna de la Vera, 2007] S.8
134 Vgl. [Feilner, 2007] S.5
135 Vgl. [IBM, 2007b] S.12
136 Vgl. [IBM, 2007b] S.12
137 Vgl. [IBM, 2007b] S.12
138 [IBM, 2007b] S.7
3. Konzepte zum Datenaustausch
52
tauschlösung mit Oce Suites. Sie stellen beide eine leicht erweiterbare Applikationsplattform dar und bieten eine Reihe von Schnittstellen zum Zugri auf das Groupware-System
an. Lotus Notes/Domino besticht jedoch durch die integrierte Datenbankentwicklung und
das Objektmodell, welches über viele verschiedenen APIs verwendbar ist. Das GroupwareSystem OX ist eher eine Alternative auf dem Groupwaremarkt, wohingegen Lotus/Domino
einen sehr hohen Marktanteil inne hat. Somit werden sich die weiteren Ausführungen in
dieser Arbeit lediglich auf das Groupware-System Lotus Notes/Domino beschränken.
3.1.2. Oce Suites
Wie in Abschnitt 2.3 ausgeführt wurde, sind Oce Suites eine Sammlung von Softwarewerkzeugen, die zur Erhöhung der individuellen Produktivität am Büroarbeitsplatz beitragen soll.
139
Bei den Oce Suites auf dem Markt variiert der Umfang dieser Softwarewerk-
zeuge. Jedoch kann festgestellt werden, dass die Kernanwendungen zur Textverarbeitung,
Tabellenkalkulation und Präsentation bei den meisten Produkten vorhanden sind.
Die folgende technische Betrachtung der Oce Suites soll sich einerseits auf die Oce
Suites beziehen, die diesen Markt beherrschen. Dazu zählt vor allem das proprietäre Produkt Microsoft Oce, das nach [Miedl, 2007] einen Markanteil von über 90% innehat.
Und die lizenzfreie Oce Suite OpenOce.org, da es die einzige Oce Suite ist, die in
140
den letzen Jahren Marktanteile hinzugewinnen konnte.
Aussagen über den Marktanteil
von OpenOce.org lassen sich nur sehr ungenau machen, da die Schätzungen zwischen
3% und 15% schwanken.
141
Anderseits soll sich die technische Betrachtung auf die Oce
Suites Lotus SmartSuite und Lotus Symphony von IBM beziehen, da Lotus SmartSuite
sehr gut mit Lotus Notes/Domino verzahnt und Lotus Symphony ein Abkömmling der
freien Oce Suite OpenOce.org ist.
Microsoft Oce
Microsoft führte im Jahre 1990 seine erste Oce Suite ein, die aus der Textverarbeitung Word, der Tabellenkalkulation Excel und der Präsentationssoftware PowerPoint be-
139 Vgl. [Hansen und Neumann, 2005] S.339
140 Vgl. [Zwahlen, 2004] S.10
141 Vgl. [Schule mobil, 2007] S.2
3. Konzepte zum Datenaustausch
stand.
142
53
1993 kam die Version 4.0 auf dem Markt, die zusätzlich zu Word, Excel und
PowerPoint den E-Mail-Client Mail und das Datenbankverwaltungssystem Access beinhaltete.
143
Mit Oce 2007 wurde die erste Version des Personal Information Managers (PIMs)
144
Outlook in die Oce Suite integriert.
Die aktuelle
145
Version der Oce Suite von Microsoft ist die Version 2007. Es existieren un-
terschiedliche Varianten der Oce Suite, die sich im Lieferumfang der Programmkomponenten unterscheiden. Beispielsweise enthält die Standard Version von Oce 2007 nur die
Basisausstattung mit Word, Excel, Powerpoint und dem PIM Outlook für Windows oder
146
dem PIM Entourage für Mac OS.
Dagegen umfasst der Lieferumfang der Enterprise Ver-
sion zusätzlich noch 6 Komponenten. Dazu gehören Access, der Communicator, OneNote,
Groove, InfoPath und der Publisher.
147
Der Communicator ist ein Kommunikationsclient,
der die Kommunikation mit anderen Benutzern an unterschiedlichen Standorten durch
148
Kommunikationsmöglichkeiten wie Textnachrichten, Sprache und Video ermöglicht.
Er
ist eng in den anderen Microsoft Oce-Programmen integriert und kann daher aus dem
Kontext des gerade verwendeten Programms genutzt werden.
149
Oce OneNote 2007 ist
ein Notizen- und Informationsverwaltungsprogramm mit dem elektronische Notizen er-
150
stellt, organisiert, durchsucht und für andere Teammitglieder freigeben werden können.
Dank der dezentralen Architektur von Oce Groove 2007 können Teams Informationen
von beliebigen Orten aus freigeben, selbst wenn sie nicht mit dem Unternehmensnetzwerk
verbunden sind.
151
Oineinhalte werden automatisch synchronisiert, sobald eine Inter-
netverbindung besteht, sodass alle Teammitglieder auf relevante Projektdaten zugreifen
und die Aktivitäten von Teammitgliedern, sowie Änderungen an Dokumenten, überwachen können.
152
Oce Groove 2007 und Oce OneNote 2007 reduzieren die Speicher-
platzanforderungen für E-Mails, da sie Teamzusammenarbeitsaktivitäten aus der E-Mail
142 Vgl. [Allan, 2001] S.103
143 Vgl. [Allan, 2001] S.103
144 Vgl. [Voss, 2004] S.12
145 Stand: Februar 2008
146 Vgl. [Microsoft, 2008h]
147 Vgl. [Microsoft, 2008a]
148 Vgl. [Microsoft, 2008b]
149 Vgl. [Microsoft, 2008b]
150 Vgl. [Microsoft, 2008c]
151 [Microsoft, 2008d]
152 Vgl. [Microsoft, 2008d]
3. Konzepte zum Datenaustausch
heraus verlagern.
153
54
Oce InfoPath 2007 kann dazu verwendet werden elektronische For-
154
mulare zu entwerfen und auszufüllen.
Da InfoPath auf XML basiert, kann es mit einer
Reihe von anderen Programmen und Servern im Microsoft Oce-System, einschlieÿlich
155
Outlook, Excel und Access, interagieren.
Oce Publisher 2007 ist ein Publishingpro-
gramm, mit dem Marketing- und Kommunikationsmaterial erstellt, entworfen und veröf-
156
fentlicht werden kann.
In Oce 2007 hat Microsoft in Word, Excel, PowerPoint, Outlook und Acces mit der
Oberäche Fluent ein neues Bedienkonzept eingeführt, welches die Übersichtlichkeit
verbessern und die Produktivität steigern soll.
im Oce-System Unterstützung.
158
157
Wikis und Blogs nden nun ebenfalls
Weiterhin hat Microsoft ein neues Dokumentenformat
eingeführt, das sogenannte Open XML. Oce Open XML ist ein vorgeschlagener, internationaler oener Standard für Textverarbeitungsdokumente, Präsentationen und Tabel-
159
lenkalkulationen.
Die Arbeit an der Standardisierung von Open XML wurde vom Fach-
ausschuss TC45 der privaten Normungsorganisation Ecma International geleistet. Dieser
Gruppe gehören Vertreter u.a. von Microsoft, Apple, Intel, Novell und Toshiba an.
160
Dabei steht die Verzahnung mit den proprietären Binärformaten von Microsoft im Mittelpunkt: OpenXML was designed from the start to be capable of faithfully representing
the pre-existing corpus of word-processing documents, presentations, and spreadsheets
that are encoded in binary formats dened by Microsoft Corporation.
161
Nach Einschätzung von Forrester-Analyst John Rymer positioniert Microsoft sein OceSystem nun noch klarer als zuvor als Entwicklungsplattform für Geschäftsanwendungen.
[...] Mit Oce 2007 hat Microsoft sein Büropaket erstmals durchgängig in seine Plattform integriert. Damit geht das Unternehmen nun einen gröÿeren Schritt weg von der
angestammten Desktop-Produktivität hin zu individuelleren, kollaborativen und geschäft-
153 [Microsoft, 2008d]
154 Vgl. [Microsoft, 2008e]
155 Vgl. [Microsoft, 2008e]
156 Vgl. [Microsoft, 2008f]
157 Vgl. [Microsoft, 2008g]
158 Vgl. [Miedl, 2007]
159 Vgl. [Ngo, 2007b] S.1
160 Vgl. [Ngo, 2007a] S.1
161 [Ngo, 2007b] S.1
3. Konzepte zum Datenaustausch
lichen Anwendungen.
162
55
Die Oce-Applikation selbst bildet keine geschlossene Einheit
mehr, sondern präsentiert sich als Komponentenbaukasten.
163
Somit können Entwickler
Outlook, Word und Excel als Benutzeroberächen im Zusammenhang mit Geschäftsprozessen, Transaktionen, Content-Management und anderen Back-Oce-Lösungen einsetzen.
164
OpenOce.org
StarOce wurde Mitte der 80er Jahren von der Firma StarDivision geschrieben und 1999
165
von Sun Microsystems gekauft.
Nachdem im August 1999 die erste StarOce Ver-
sion veröentlicht wurde, entschied sich Sun im Oktober 2000 dazu den Quelltext von
166
StarOce als Open Source freizugeben.
Somit wurde im Mai 2002 die Version 1.0 der
freien Oce Suite OpenOce.org präsentiert.
167
StarOce wurde von Sun als kommerzi-
elle Version weitergeführt und besteht im Wesentlichen aus OpenOce.org, angereichert
mit zusätzlicher Software und Services (zum Beispiel Rechtschreibhilfe, Schriftarten, Hilfesystem und zusätzlichen Importlter für Fremdformate) und einem ergänzendem Support.
168
OpenOce.org 1.0 enthielt die Textverarbeitung Writer, die Tabellenkalkulation
Calc und die Präsentationsanwendung Impress.
169
OpenOce.org wurde unter den bei-
den Lizenzen Sun Industry Standards Source License (SISSL) und LGNU Lesser General
Public License (LGPL) gestellt.
170
Nach der SISSL Lizenz dürfen beispielsweise proprie-
täre Erweiterungen zur Software hinzugefügt und diese modizierte Software unter einer
171
eigenen Marke vertrieben werden.
Die LGPL Lizenz basiert auf der GPL Lizenz, die
von Richard Stallman entworfen wurde und das Ziel verfolgt freie Software zu schützen.
172
Im Groben fordert die GPL vier Freiheiten ein:
162 Vgl. [Miedl, 2007]
163 Vgl. [Miedl, 2007]
164 Vgl. [Miedl, 2007]
165 Vgl. [Head, 2008] S.10
166 Vgl. [Head, 2008] S.10
167 Vgl. [Head, 2008] S.10
168 Vgl. [S., 2001]
169 Vgl. [Gibson, 2005] S.344
170 Vgl. [Berndt, 2005] S.5
171 Vgl. [S., 2001]
172 Vgl. [Berndt, 2005] S.4
173 Vgl. [Berndt, 2005] S.4
173
3. Konzepte zum Datenaustausch
56
1. Die Freiheit das Programm auszuführen.
2. Die Freiheit, Kopien zu erstellen und zu verbreiten.
3. Die Freiheit, Modikationen am Quelltext durchzuführen und das geänderte Programm ebenfalls wieder unter die GPL zu stellen.
4. Die Freiheit des freien Zugangs zum Quellcode des Programmes.
Im Gegensatz zur GPL dürfen bei der LGPL jedoch alle unter diesen Nutzungsbedingungen stehenden Bibliotheken bzw. Programme in kommerzielle Software eingebunden
174
werden.
Im Oktober 2005 folgte OpenOce.org 2.0.
175
Seit dieser Version steht OpenOce.org
nicht mehr unter der SISSL, sondern nur noch unter der LGPL.
176
Das Datenbankverwal-
tungssystem Base kam hinzu, welches als Frontend für Tabellen und Abfragen dient und
177
externe Datenbanken anbinden kann.
Auch wurde für alle Dokumententypen die nächs-
178
te Generation des Dateiformates eingeführt und zwar ODF.
ODF ist ein XML-basiertes
oenes und programmunabhängiges Datenformat für den Austausch von Dateien zwischen
verschiedenen Oce-Programmen.
179
Es wurde vom ODF Technical Committee innerhalb
der Organization for the Advancement of Structured Information Standards (OASIS)
Standardisierungsorganisation entwickelt und ist seit November 2006 ein International
Organization for Standardization (ISO)/International Electrotechnical Commission (IEC)
180
freigegebener Standard.
Das OASIS Whitepaper [Novell, 2006b] deniert das Ziel von
ODF folgendermaÿen: The ODF was designed to be vendor neutral and implementation
agnostic. It was designed to be used by as many applications as possible. In order to
simplify transformations and to maximize interoperability, the format reuses established
standards ...
181
174 Vgl. [Berndt, 2005] S.5
175 Vgl. [Head, 2008] S.10
176 Vgl. [Berndt, 2005] S.6
177 Vgl. [Koer, 2005] S.128
178 Vgl. [Thalmayr, 2005] S.163
179 Vgl. [IBM, 2007c] S.3
180 Vgl. [IBM, 2007c] S.3
181 [Novell, 2006b] S.10
3. Konzepte zum Datenaustausch
Aktuell
182
57
ist OpenOce.org in der Version 2.4 für die Betriebssystemplattformen Win-
dows, Mac OS, Linux und Sun Solaris verfügbar.
183
Die Community von OpenOce.org
treibt die Entwicklung beständig voran, sodass alle sechs Monate ein neues Release von
OpenOce.org erscheint.
184
Durch die Softwarearchitektur können separat installierbare
Erweiterungen und ganze Anwendungen in OpenOce.org integriert werden. Es existieren
bereits zahlreiche solcher Anwendungen, wie beispielsweise der Mind-Map-Editor Free-
185
Mind, das Desktop-Publishing-Programm Scribus
O3Spaces
187
188
, das mit Microsoft Sharepoint
an Dokumenten ermöglicht.
189
186
, das freie Statistikpaket R
oder
vergleichbar ist und eine Zusammenarbeit
Somit hilft das ODF, dass immer mehr Lösungen rund
um OpenOce.org entstehen. Um diesen Prozess zu unterstützen und zu beschleunigen,
beginnt Sun Microsystems auf OpenOce.org gerade ein neues Projekt zur Entwicklung
eines ODF-Toolkits.
190
191
Macros können in der Basic-Integrated Development Environment (IDE)
sic
192
in StarBa-
oder anderen Skript- und Programmiersprachen, insbesondere Python und Java
193
erstellt werden.
Auch steht ein API mit Namen Universal Network Object (UNO)
zur Verfügung, mit deren Hilfe die Interoperabilität zwischen unterschiedlichen Program-
194
miersprachen, Objektmodellen, Systemarchitekturen und Prozessen gewährleistet ist.
Zur Zeit ist UNO für Linux, Solaris, Windows, Power PC, FreeBSD und Mac OS verfügbar.
195
Die direkt unterstützten Programmiersprachen sind Java, C++, Python und
182 Stand: März 2008
183 Vgl. [Koll, 2007] S.28
184 Vgl. [Tenhumberg, 2007] S.1
185 http://www.scribus.net
186 http://www.r-project.org
187 http://www.o3spaces.org
188 Weitere
Informationen
unter
http://office.microsoft.com/de-de/sharepointserver/
FX100492001031.aspx
189 Vgl. [Tenhumberg, 2007] S.2
190 Vgl. [Tenhumberg, 2007] S.2
191 IDE ist eine integrierte Software-Entwicklungsumgebung mit einer graschen Benutzerschnittstelle.
Die
Funktionen
umfassen
beispielsweise
das
Editieren,
das
Debugging
und
die
Unterstüt-
zung groÿer Projekte mit mehreren Entwicklern durch eine integrierte Versionskontrolle. (Vgl.
[Schmidt und Wohlberg, 2007] S.1224)
192 Wird auch als OpenOce.org Basic bezeichnet.
193 Vgl. [Horst, 2004] S.92
194 Vgl. [Head, 2008] S.17
195 Vgl. [Schmidt und Wohlberg, 2007] S.33
3. Konzepte zum Datenaustausch
die OpenOce.org Skriptsprache Basic.
58
196
Durch die COM-Schnittstelle ist UNO für viele
weitere Sprachen verwendbar. Weiterhin besteht durch das Common Language Infrastructure
197
(CLI), welches Teil des .NET Frameworks von Microsoft ist
, die Möglichkeit das UNO-
API von Skriptsprachen wie JavaScript oder Beanshell, zugreifbar zu machen.
198
Lotus SmartSuite
Die Oce Suite Lotus SmartSuite, die ursprünglich von der Firma Lotus entwickelt wurde, wurde im Jahre 1996 von IBM übernommen.
199
Seitdem wurde Lotus SmartSuite
200
immer mehr mit dem Groupware-System Lotus Notes/Domino verzahnt.
IBM Lotus
SmartSuite beinhaltet die Tabellenkalkulation Lotus 1-2-3, die Textverarbeitung Word
Pro, das Präsentationsprogramm Freelance Graphics, den PIM Lotus Organizer und das
Datenbankverwaltungssystem Approach.
201
Die Lotus SmartSuite Komponenten Lotus
202
1-2-3 und Lotus Organizer sind auch als eigenständige Produkte erhältlich.
203
Lotus SmartSuite ist aktuell
in der Version 9.8
204
für Windows und in der Version 1.7
205
für OS/2 erhältlich.
Da Lotus SmartSuite mit dem Groupware-System Lotus Notes/Domino interagieren kann,
ist sie besonders für die Teamarbeit geeignet.
206
Beispielsweise können Daten aus Lotus
Freelance Graphics mit Lotus Notes gemeinsam genutzt werden oder innerhalb von Lotus
Approach auf Notes Datenbanken zugegrien und untereinander Daten ausgetauscht
207
werden.
Auch steht in Lotus SmartSuite die objektorientierte Programmiersprache
LotusScript zur Verfügung, um Aufgaben in den Komponenten zu automatisieren.
208
196 Vgl. [Schmidt und Wohlberg, 2007] S.33
197 Vgl. [Schwichtenberg und Eller, 2004] S.986
198 Vgl. [Schmidt und Wohlberg, 2007] S.33
199 Vgl. [Zisman, 1996]
200 Vgl. [Zisman, 1996]
201 Vgl. [IBM, 2008a]
202 Vgl. [IBM, 2008a]
203 Stand: Februar 2005
204 Weitere Informationen unter
features.html
205 Weitere Informationen unter
os2.html
http://www-306.ibm.com/software/lotus/products/smartsuite/
http://www-306.ibm.com/software/lotus/products/smartsuite/
206 Vgl. [IBM, 2008d]
207 Vgl. [IBM, 2008b] und [IBM, 2008c]
208 Vgl. [Weber, 1998]
3. Konzepte zum Datenaustausch
59
Lotus Symphony
IBMs neue Oce Suite Lotus Symphony ist als eigenständiges Produkt aus den in dem
Groupware-System Lotus Notes 8 integrierten Produktivitätstools hervorgegangen.
209
Die
Produktivitätstools basieren auf der Version 1.1 der freien Oce Suite OpenOce.org.
210
Lotus Symphony umfasst nur die Basiskomponenten einer Oce Suite und zwar die
Textverarbeitung Symphony Documents, die Tabellenkalkulation Symphony Spreadsheets
211
und die Präsentationslösung Symphony Presentations.
Genau wie Lotus Notes 8 läuft
Lotus Symphony in IBMs Open Source Entwicklungsumgebung Eclipse.
212
Diese Plug-in-
Architektur ermöglicht es Entwicklern Ergänzungen für die Oce Suite zu schreiben.
214
Die aktuell
letzte Betaversion 4 wurde im Februar 2008 freigegeben.
215
213
Lotus Symphony
ist beim Design der Benutzerschnittstelle dem Vorbild der meisten Webbrowsern gefolgt
und verwendet ein Tab-Interface.
217
Dokument.
216
Dabei repräsentiert jeder Tab ein anderes oenes
Tabs für Dateien aus der Textverarbeitung, der Tabellenkalkulation und
der Präsentationssoftware können nebeneinander angeordnet sein und somit den Wechsel
218
zwischen den Programmen erleichtern.
IBM setzt bei Lotus Symphony auch auf den
freien Industriestandard ODF als standardmäÿiges Dokumentenformat, welches auch in
219
OpenOce.org verwendet wird.
3.2. Re-Engineering der PAVONE OceGateway
Schnittstelle
Das Ziel dieser Arbeit lässt sich nach der Auswahl des Groupware-Systems Lotus Notes/Domino
nun präziser formulieren. Es soll ein Schnittstellenkonzept erstellt werden, welches den
209 Vgl. [Head, 2008] S.61
210 Vgl. [Head, 2008] S.10
211 Vgl. [Borland, 2007]
212 Vgl. [Head, 2008] S.62
213 Vgl. [Borland, 2007]
214 Stand: Februar 2008
215 Vgl. [Pte, 2008]
216 Vgl. [Borland, 2007]
217 Vgl. [Borland, 2007]
218 Vgl. [Borland, 2007]
219 Vgl. [Borland, 2007]
3. Konzepte zum Datenaustausch
60
Datenaustausch zwischen Lotus Notes/Domino-basierten Anwendungen und Oce Suites
ermöglicht. Es existiert bereits eine Datenaustauschlösung von der Firma PAVONE und
zwar die PAVONE OceGateway Schnittstelle, die den bi-direktionalen Datenaustausch
220
zwischen Lotus Notes/Domino und Oce Suites ermöglicht.
Zu den unterstützten Oce
Suites zählen Microsoft Oce, Lotus SmartSuite und OpenOce.org. Genauer ist der Datenaustausch mit folgenden Komponenten der jeweiligen Oce Suites möglich:
221
1. Microsoft Oce: Word, Excel, PowerPoint
2. Lotus SmartSuite: WordPro, Lotus 1-2-3
3. OpenOce.org: Writer, Calc
Die aktuelle PAVONE OceGateway Schnittstelle funktioniert jedoch nur unter dem Win-
222
dows Betriebssystem, da die COM-Technologie verwendet wird.
Die COM-Technologie
ist bei den technischen Grundlagen im Unterabschnitt 2.5.1 näher erläutert. Da seit der
Version 8 von Lotus Notes auch Linux unterstützt wird, besteht der Wunsch auch einen
Datenaustausch zwischen der Linuxvariante von Lotus Notes und den OceSuites, die
auf Linux lauähig sind, zu ermöglichen. OpenOce.org und Lotus Symphony sind die
einzigen in Unterabschnitt 3.1.2 betrachteten Oce Suites, die auch für Linux verfügbar sind. Da Lotus Symphony ein Abkömmling der freien Oce Suite OpenOce.org ist
und sich zur Zeit noch im Entwicklungsstadium bendet, wird sich die folgende Arbeit
lediglich auf OpenOce.org beschränken. Um entsprechende Datenaustauschkonzepte zu
entwickeln, zu diskutieren und bewerten zu können, soll in diesem Abschnitt ein ReEngineering der PAVONE OceGateway Schnittstelle durchgeführt werden. Nach der
Denition von [Klösch und Gall, 1995] ist Re-Engineering die Untersuchung und Änderung eines bestehenden Systems mit dem Ziel, das System in einer neuen, geänderten Form zu implementieren. Dies kann sich auch auf die Adaptierung des Systems an
geänderte Anforderungen erstrecken.
223
Dabei wird die OceGateway Schnittstelle als
integraler Bestandteil der Groupware-basierten Anwendung PAVONE Enterprise Oce
untersucht. PAVONE Enterprise Oce ist eine auf dem Groupware-System Lotus Notes
basierende Anwendung für das Prozess- und Informationsmanagement und unterstützt die
220 Vgl. [PAVONE, 2007] S.5
221 Vgl. [PAVONE, 2007] S.5
222 Vgl. [PAVONE, 2007] S.5
223 [Klösch und Gall, 1995] S.9
3. Konzepte zum Datenaustausch
61
Adressverwaltung, das Korrespondenz- sowie Dokumentenmanagement und die Archivie-
224
rung.
OceGateway als standardisierte und kongurierbare Schnittstelle ist nicht nur
in PAVONE Enterprise Oce, sondern auch in weiteren PAVONE Anwendungen, wie
225
zum Beispiel PAVONE Project Management und PAVONE Sales, integriert.
Alterna-
tiv kann PAVONE OceGateway auch in andere beim Kunden bereits bestehende Lotus
Notes Anwendungen integriert werden
226
In PAVONE Enterprise Oce stehen die drei Dokumenttypen Oce-Dokument, OceSerienbrief und Oce-Bericht zur Verfügung, bei denen die OceGateway Schnittstelle
zum Datenaustausch mit den Oce Suites verwendet werden. Dabei hängt die verwendete Oce Suite von der Auswahl der Oce-Dokument-Vorlage ab. Im PAVONE Settings Directory stellt der Administrator Oce-Dokument-Vorlagen zur Verfügung. Diese
Vorlagen werden später von den Benutzern in der PAVONE Enterprise Oce Anwendung genutzt, um eingebettete Microsoft Oce-, Lotus SmartSuite und OpenOce.orgDokumente zu erstellen. Die Vorlagen können so gestaltet werden, dass sich der Benutzer
das Dokument aus mehreren angebotenen Teilbausteinen je nach Erfordernis zusammenstellen kann.
227
Mit Hilfe des Dokumenttyps Oce-Dokument können Briefe auf Basis
von Oce-Dokument-Vorlagen erstellt oder bereits in der Oce Suite erstellte Briefe
übernommen werden.
228
Das geönete Oce-Dokument kann je nach Wunsch ergänzt,
ausgedruckt und beim Schlieÿen im zugehörigen Notes-Dokument gespeichert werden.
229
Serienbriefe können, wie in Abbildung 3.1 zu sehen, mit Hilfe des Dokumenttyps OceSerienbrief, die direkt mit den Adressaten aus der Adressenliste von PAVONE Enterprise
230
Oce verknüpft sind, erstellt werden.
Abhängig von der gewählten Vorlage wird die
Oce Suite gestartet und die einzelnen Serienbriefe können, vor dem Ausdrucken und
dem Zurückspeichern in das zugehörige Notes-Dokument, zunächst in einem oder mehreren Dokumenten gespeichert werden.
224 Vgl. [PAVONE, 2008a] S.7
225 Vgl. [PAVONE, 2007] S.4
226 [PAVONE, 2007] S.4
227 [PAVONE, 2008a] S.64
228 Vgl. [PAVONE, 2008b] S.11
229 Vgl. [PAVONE, 2008b] S.11
230 Vgl. [PAVONE, 2008b] S.17-18
231 Vgl. [PAVONE, 2008b] S.19
231
Zum Ablegen und Pegen von längeren Texten,
3. Konzepte zum Datenaustausch
62
Abbildung 3.1.: Erstellung eines Serienbriefes mit Hilfe des Dokumenttyps Oce-Serienbrief
in PAVONE Enterprise Oce
die sich über mehrere Kapitel erstrecken, eignet sich die Berichtsfunktion.
232
Mit Hilfe
des Dokumenttyps Oce-Bericht können Inhalte von Berichtsdokumenten über Vorlagen
233
erstellt oder bereits bestehende Dokumente importiert werden.
Im Folgenden soll die Funktionsweise der aktuellen PAVONE OceGateway Lösung mithilfe des Schaubilds Abbildung 3.2 näher erläutert werden:
1. Im Vorlagendokument ist ein Feld ExportView deniert, welches eine Exportansicht
und weitere Parameter des Exports festlegt. Die Exportansicht selbst ist nicht Teil
von OceGateway, sondern Teil der Integration von OceGateway in PAVONE
Enterprise Oce. Eine Vorauswahl der Dokumente, die beim Export von Datenfeldern genutzt werden sollen, kann in der Selektionsformel der Ansicht getroen
werden. Zusätzlich bzw. stattdessen kann auch ein Filter (ExportFilter) an die
OceGateway Schnittstelle übergeben werden.
232 [PAVONE, 2008b] S.
233 Vgl. [PAVONE, 2008b] S.22
3. Konzepte zum Datenaustausch
Maske
63
2
PAVONE
OfficeGateway
3
Dokument
4
Exportansicht
7
9
PAVONE Enterprise Office
Makro
1
Vorlagenrepository
5
6
Vorlage
COM
8
10
COM
UNO
Lotus Notes 8 Client
OpenOffice.org
temporäres Verzeichnis
Windows Plattform
Abbildung 3.2.: Bi-direktionaler
Datenaustausch
mithilfe
der
PAVONE
OceGateway
Schnittstelle zwischen PAVONE Enterprise Oce und OpenOce.org
2. Aus PAVONE Enterprise Oce heraus kann eines der drei Dokumenttypen OceDokument, Oce-Serienbrief oder Oce-Bericht ausgewählt werden.
3. Eine OpenOce.org Vorlage wird aus der Vorlagendatenbank ausgewählt und geladen.
4. OpenOce.org wird mit der ausgewählten Vorlage geönet.
5. OceGateway führt einen Export anhand der Exportansicht oder einen Datenaustausch durch und erstellt eine temporäre Datei auf dem Dateisystem.
6. Es wird zwischen Export und Austausch dierenziert. Export ist der uni-direktionale
Transfer von eventuell mehreren Datensätzen über die Ansicht. Wobei der Feldaustausch der bi-direktionale und feldweise Austausch zwischen dem aktuellen NotesDokument und dem geöneten Dokument in OpenOce.org ist. Auch können programmierbare Events ausgeführt werden, womit die Anwendung bzw. das OceDokument zusätzlich manipuliert werden kann.
7. Das OpenOce.org Dokument kann durch den Benutzer noch weiter bearbeitet
werden.
3. Konzepte zum Datenaustausch
64
8. Speichern des Dokumentes in der OpenOce.org Anwendung führt zur Speicherung
des Dokumentes im temporären Verzeichnis auf dem Dateisystem.
9. Das OpenOce.org Makro triggert OceGateway, damit das Dokument als Attachement in Lotus Notes gespeichert werden kann.
10. Das Oce-Dokument wird geschlossen und als Attachment in Lotus Notes gespeichert.
Abbildung 3.3.: Übersicht der Klassenrelationen der aktuellen OceGateway Implementation
Da aus datenschutzrechtlichen Gründen nicht näher auf den Quellcode der PAVONE
OceGateway Schnittstelle eingegangen werden kann, wird hier nur eine grobe Übersicht
der Implementierung mithilfe der Abbildung 3.3 gegeben. Die Klasse COceDocument
ist die Hauptklasse der OceGateway Schnittstelle und steuert die COceConnection
Klasse, d.h. dass COceConnection als Treiber für die Oce-Anwendung fungiert. Die
jeweiligen Klassen der Oce Suites Microsoft Oce, Lotus SmartSuite und OpenOce.org
erben von der COceConnection Klasse. Jede unterstützte Komponente der jeweiligen
3. Konzepte zum Datenaustausch
65
Oce Suite besitzt eine eigene Klasse. Im konkreten Fall wird die OpenOce.org Komponente Writer durch die Klasse COpenOceWriteConnection bzw. die Calc Komponente
durch die Klasse COpenOceCalcConnection repräsentiert.
3.3. Konzeptanforderungen
Auf Basis der Ergebnisse aus dem Re-Engineering der PAVONE OceGateway Schnittstelle sollen Anforderungen an das Konzept zum Datenaustausch zwischen Lotus Notes 8
und OpenOce.org deniert werden, die als Bewertungsgrundlage für die Erarbeitung der
Konzeptansätze im Abschnitt 3.4 dienen. Nach der Diskussion der Konzeptsansätze folgt
die prototypische Implementierung der neuen OceGateway Schnittstelle in Kapitel 4.
Die Anforderungen an die Konzepte zum Datenaustausch können am Besten im Hinblick
quantitativer Software-Metriken deniert werden. [Brössler und Siedersleben, 2000] teilt
die Qualitätskriterien von Systemen in harte und weiche Kriterien ein. Dabei sind die harten Kriterien objektiv zur Laufzeit messbar und die weichen Kriterien einer quantitativen
234
Bewertung nicht zugänglich.
In dieser Arbeit sollen sich die Konzeptanforderungen auf
die im ISO 9126 Standard denierten Kriterien beziehen.
Kriterien der Softwarequalität
nach ISO 9126
Funktionalität
Zuverlässigkeit
Eignung
Reife
Benutzbarkeit
Effizienz
Wartbarkeit
Portierbarkeit
Verständlichkeit
Zeitverhalten
Analysierbarkeit
Anpassbarkeit
Ressourcen−
auslastung
Modifizierbarkeit
Installierbarkeit
Richtigkeit
Fehlertoleranz
Erlernbarkeit
Interoperabilität
Wiederherstell−
barkeit
Bedienbarkeit
Stabilität
Konformität
Attraktivität
Prüfbarkeit
Austauschbarkeit
Sicherheit
Abbildung 3.4.: Softwarequalitätsmerkmale nach ISO 9126 (Vgl. [Abran et al., 2003] S.328)
234 Vgl. [Brössler und Siedersleben, 2000] S.98-99
3. Konzepte zum Datenaustausch
Der ISO Standard 9126
235
66
ist ein produktorientierter Standard und beinhaltet sowohl wei-
236
che als auch harte Qualitätskriterien.
Die Softwarequalität wird in sechs verschiedenen
Eigenschaftskategorien eingeteilt, wobei die ersten vier Kriterien für den Benutzer sicht-
237
bar und wichtig sind (Benutzersicht).
Die letzen zwei stellen die Aspekte dar, die für
238
den Entwickler von Bedeutung sind (Entwicklersicht).
Zu den harten Kriterien zählen
die Funktionalität, die Zuverlässigkeit, die Benutzbarkeit und die Ezienz. Dagegen sind
die Wartbarkeit und die Portierbarkeit den weichen Qualitätskriterien zuzurechnen. Die
Abbildung 2.5 zeigt die Zusammenfassung der im Folgenden vorgestellten sechs Qualitätsmerkmalen.
1.
Funktionalität: Beim Kriterium der Funktionalität ist zu überprüfen, ob die Software die geforderten Funktionen leistet.
239
Da nicht alle Funktionen die gleiche Prio-
rität besitzen, ist es sinnvoll die geforderten Funktionen nach ihrer Wichtigkeit zu
bewerten.
240
Die Funktionalität beinhaltet die Eignung, die Richtigkeit, die Interope-
241
rabilität und die Sicherheit.
Die Eignung umfasst die Einhaltung von spezischen
Normen oder gesetzlichen Bestimmungen.
242
Das Liefern von richtigen Ergebnissen
oder das Zeigen der erwarteten Wirkung werden dem Merkmal der Richtigkeit zuge-
243
rechnet.
Die beiden Kriterien Eignung und Richtigkeit sind Voraussetzungen für
jeden Konzeptvorschlag. Ansätze, die diese beiden Kriterien nicht genügen, werden
somit erst gar nicht in Betracht gezogen. Die Interoperabilität, also das Zusammenwirken mit anderen Systemen, ist besonders dann gefährdet, wenn das Konzept
sehr umfangreich ist und sehr viele verschiedene Schnittstellen verwendet werden.
Die Verwendung von standardisierten APIs kann die Interoperabilität erhöht, da ohne Kenntnis der internen Softwarestruktur die Schnittstelle genutzt werden kann.
244
Der Begri Sicherheit wird im Amerikanischen in zwei Aspekte aufgeteilt: Safety
235 Vgl. [ISO, 2001]
236 Vgl. [Abran et al., 2003] S.2
237 Vgl. [Kahlbrandt, 2001] S.45
238 Vgl. [Kahlbrandt, 2001] S.46
239 Vgl. [Brössler und Siedersleben, 2000] S.99
240 Vgl. [Kahlbrandt, 2001] S.47
241 Vgl. [Abran et al., 2003] S.328
242 Vgl. [Noe, 2006] S.202
243 Vgl. [Noe, 2006] S.202
244 Vgl. [Noe, 2006] S.202
3. Konzepte zum Datenaustausch
und Security.
245
67
Safety bezieht sich auf die Sicherheit der Datenintegrität, wobei
Security den Schutz vor unbefugter Nutzung oder dem Missbrauch meint.
246
Die
Sicherheit der Datenintegrität kann durch Verwendung nicht standardisierter und
getesteter Technologien beeinträchtigt werden. Auch steigt das Risiko der Datenintegritätsverletzung bei einem sehr hohen Programmieraufwand, da sich sehr schnell
Fehler einschleichen können. Der Schutz vor unbefugter Nutzung oder dem Missbrauch (Security) ist in dieser Arbeit von nicht so groÿer Bedeutung und wird daher
nicht weiter betrachtet.
2.
Zuverlässigkeit: Ein Softwaresystem ist zuverlässig, wenn es die geforderten Leistungen erbringt ohne in gefährliche oder andere unerwünschte Zustände zu geraten.
247
Zu der Zuverlässigkeit zählen die Reife der Software, die Fehlertoleranz und
die Wiederherstellbarkeit.
248
Über die Reife eines Softwaresystems können erst Aus-
sagen getroen werden, wenn das System in Benutzung ist. Somit kann keine Aussage über die Reife der theoretischen Konzepte in dieser Arbeit gefällt werden. Um
die Fehlertoleranz zu gewährleisten, existiert bei den meisten Programmiersprachen
eine Fehlerbehandlung. Es ist die Aufgabe des Programmierers fehlerhafte Eingaben bzw. Aktionen durch die Programmierung abzufangen. Die Fehlerbehandlung
wird in der Konzeptphase nicht erschöpfend behandelt, sodass die Fehlertoleranz
auch nicht hinreichend bewertet werden kann. Die Wiederherstellbarkeit fordert die
Möglichkeit Daten im Fehlerfall wiederherzustellen und das System in einen de-
249
nierten Zustand zu befördern.
Dies bedarf beispielsweise des Sicherns von System-
250
variablen, Eingabedaten oder Daten in Queues und Buers.
Auch die Beachtung
der Wiederherstellbarkeit wird in der Konzeptphase vernachlässigt, da es sonst den
Rahmen dieser Arbeit sprengen würde.
3.
Benutzbarkeit:
Benutzbarkeit bezieht sich auf die Benutzung der Software, die
dem Anwender ein einfaches, angenehmes, ezientes und fehlerarmes Arbeiten er-
245 Vgl. [Kahlbrandt, 2001] S.58
246 Vgl. [Kahlbrandt, 2001] S.58
247 [Kahlbrandt, 2001] S.51
248 [Abran et al., 2003] S.328
249 Vgl. [Noe, 2006] S.213
250 Vgl. [Noe, 2006] S.213
3. Konzepte zum Datenaustausch
möglichen soll.
251
68
Dazu gehören die Verständlichkeit, die Erlernbarkeit, die Bedien-
barkeit und die Attraktivität der Benutzungsschnittstelle.
252
Erlernbarkeit und Be-
dienbarkeit stehen in vielen Fällen im Konikt zueinander, da eine intuitive Bedienung eher langsam und nicht so leistungsfähig, dagegen eine leistungsfähige und
schnelle Bedienung oft schwerer zu erlernen ist. In dieser Arbeit soll die Benutzungsschnittstelle der aktuellen Lösung von OceGateway soweit wie möglich beibehalten
werden, damit die Anwender die Benutzung nicht neu erlernen müssen.
4.
Ezienz: Die Ezienz einer Softwarelösung teilt sich in das Zeitverhalten und der
Ressourcenauslastung auf.
253
Das Zeitverhalten wird nach [Kahlbrandt, 2001] auch
als Software-Ezienz bezeichnet und bezieht sich bespielsweise auf die Antwortzeit
und die Verarbeitungszeit des Systems nach einer Benutzereingabe oder den Durch-
254
satz von Aktionen pro Zeiteinheit.
Dagegen beschreibt die Ressourcenauslastung
die Benutzung der Hardwareressourcen, beispielsweise wieviele Instruktionen und
255
wieviel Hauptspeicher für die Ausführung einer Funktion benötigt werden.
Des-
halb bezeichnet [Kahlbrandt, 2001] die Ressourcenauslastung auch oft als HardwareEzienz. Die Software-Ezienz, wie auch die Hardware-Ezienz lassen sich jedoch
nur messtechnisch ermitteln, was den Rahmen dieser Arbeit sprengen würde, da
nicht alle Lösungsansätze implementiert und hinsichtlich der Ezienz miteinander
verglichen werden können.
5.
Wartbarkeit:
Da jedes Softwaresystem Fehler hat, fordert die Wartbarkeit diese
Fehler mit akzeptablen Aufwand lokal zu reparieren und dabei keine anderen, un-
256
erwarteten Fehler zu produzieren.
Zur Wartbarkeit zählen die Analysierbarkeit,
die Modizierbarkeit, die Stabilität und die Prüfbarkeit.
257
Das Merkmal der Ana-
lysierbarkeit bezieht sich auf den Aufwand, der für die Fehlerlokalisierung notwendig ist.
258
Das einfache Aktivieren von Debug-Ausgaben oder die Implementierung
von kongurierbaren Log-Dateien tragen wesentlich zu einer guten Analysierbarkeit
251 Vgl. [Kahlbrandt, 2001] S.54
252 Vgl. [Abran et al., 2003] S.328
253 Vgl. [Abran et al., 2003] S.328
254 Vgl. [Kahlbrandt, 2001] S.49
255 Vgl. [Kahlbrandt, 2001] S.50
256 Vgl. [Brössler und Siedersleben, 2000] S.100
257 Vgl. [Abran et al., 2003] S.328
258 Vgl. [Noe, 2006] S.197
3. Konzepte zum Datenaustausch
bei.
259
69
Im Hinblick auf die Modizierbarkeit ist eine exible Softwarearchitektur von
Vorteil, die beispielsweise das Hinzufügen neuer Funktionen zum Programm erleichtert. Eine exible Architektur weist beispielsweise eine Modularisierung oder eine
260
gute Lesbarkeit des Quellcodes auf.
Eine hohe Stabilität fordert von der Software
die Eigenschaft, dass Änderungen an Teilen der Software keine unerwarteten Auswirkungen auf die Gesamtfunktionalität haben.
261
Die Prüfbarkeit bezieht sich auf
den Testaufwand der neuen bzw. geänderten Software.
262
Da nicht alle Konzeptan-
sätze getestet werden können, wird das Merkmal Prüfbarkeit in dieser Arbeit nicht
bewertet. Diese Kriterien hängen alle sehr eng zusammen und stellen bestimmte
Anforderungen an die Konzepte. Dazu gehört ein strukturierter, sauberer und gut
dokumentierter Programmierstil, der beispielsweise durch den Einsatz einer objektorientierten Programmiersprache oder der Verwendung von APIs und anderen wohl
denierten Schnittstellen unterstützt wird.
6.
Portierbarkeit:
Die Portierbarkeit fordert von der Softwarearchitektur eine Fle-
xibilität, um beispielsweise mit einigen Anpassungen ein Wechsel auf ein anderes
Betriebssystem zu vollziehen oder ein anderes DMS zu integrieren.
263
Im Hinblick
auf die Anpassbarkeit ist eine exible Softwarearchitektur wünschenswert, die es mit
geringem Anpassungsaufwand ermöglicht, die Datenaustauschlösung auch auf Mac
OS/X lauähig zu machen. Eine exible Architektur wird beispielsweise durch die
Struktur, die Modularisierung, die Lesbarkeit des Quellcodes oder die Dokumentation beeinusst.
264
Die Erstellung exibler Software erhöht grundsätzlich den
Entwicklungsaufwand.
265
Der höhere Aufwand kann jedoch durch eine hohe Än-
derungshäugkeit gerechtfertigt werden.
266
Zur Portierbarkeit zählt nicht nur die
Anpassbarkeit, sondern auch die Installierbarkeit, die Konformität und die Austauschbarkeit.
267
Die Installierbarkeit bezieht sich auf den Ist-Zustand der Software,
259 Vgl. [Noe, 2006] S.198
260 Vgl. [Noe, 2006] S.195
261 Vgl. [Noe, 2006] S.196
262 Vgl. [Noe, 2006] S.196
263 Vgl. [Brössler und Siedersleben, 2000] S.100
264 Vgl. [Noe, 2006] S.195
265 [Noe, 2006] S.195
266 Vgl. [Noe, 2006] S.195
267 Vgl. [Abran et al., 2003] S.328
3. Konzepte zum Datenaustausch
70
also die Fähigkeit ohne softwaretechnischen Anpassungen in verschiedenen Umgebungen oder auf unterschiedlichen Betriebssystemplattformen installierbar und lauffähig zu sein.
268
In dieser Arbeit ist die Anforderung, dass OceGateway auf den
Betriebssystemen Windows und Linux lauähig sein soll. Die Konformität fordert
eine Koexistenz mit anderen Softwareprodukten in einer gemeinsamen Umgebung,
welches nur durch die Einhaltung von genormten Schnittstellen, oenen Standards
269
und anerkannten Vereinbarungen erreicht werden kann.
Ziel der Konformität ist
es auf herstellerspezische Besonderheiten verzichten zu können.
270
Die Austausch-
barkeit fordert, dass die Programme oder auch Module bzw. Funktionen ungeändert
in anderen Systemen wiederverwendet werden können.
271
Wichtige Voraussetzung
ist dabei das Einhalten von Normen und Standards, aber auch der Einsatz von
modularer Programmierung, welches durch eine objektorientierte Programmierung
272
erreicht werden kann.
Als weitere Anforderung soll in dieser Arbeit das Qualitätsmerkmal der Wirtschaftlichkeit hinzugenommen werden. Sie sagt aus, dass die Konzepte auch nach ihrem jeweiligen
Implementierungsaufwand und der späteren Wartung bewertet werden sollen, um auszu-
273
schlieÿen, dass sie mehr Kosten verursachen, als dass sie Nutzen stiften.
In Tabelle 3.1 sind alle Qualitätskriterien noch einmal übersichtlich aufgeführt und hinsichtlich ihrer Relevanz gewichtet. Einige Kriterien können jedoch nicht bewertet werden,
sodass im Abschnitt 3.5 bei der Bewertung der Konzeptansätze nur die bewertbaren Qualitätskriterien von Bedeutung sind.
3.4. Vergleich verschiedener Konzeptansätze
Im Folgenden werden einige potentielle Konzeptansätze zum Datenaustausch zwischen
der Groupware-basierten Anwendung PAVONE Enterprise Oce und der Oce Sui-
268 Vgl. [Noe, 2006] S.209
269 Vgl. [Noe, 2006] S.209
270 Vgl. [Noe, 2006] S.209
271 Vgl. [Noe, 2006] S.209
272 Vgl. [Noe, 2006] S.209
273 Vgl. [Alpar et al., 2002] S.332
3. Konzepte zum Datenaustausch
Qualitätskriterien
71
wichtig gewünscht vernachlässigbar nicht bewertbar
Funktionalität
Eignung
X
Richtigkeit
X
Interoperabilität
X
Sicherheit
- Security
X
- Safety
X
Zuverlässigkeit
Reife
X
Fehlertoleranz
X
Wiederherstellbarkeit
X
Benutzbarkeit
Verständlichkeit
X
Erlernbarkeit
X
Bedienbarkeit
X
Attraktivität
X
Ezienz
Zeitverhalten
X
Ressourcenauslastung
X
Wartbarkeit
Analysierbarkeit
X
Modizierbarkeit
X
Stabilität
X
Prüfbarkeit
X
Portierbarkeit
Anpassbarkeit
X
Installierbarkeit
X
Konformität
X
Austauschbarkeit
Wirtschaftlichkeit
X
X
Tabelle 3.1.: Bewertung und Gewichtung der Qualitätskriterien
3. Konzepte zum Datenaustausch
72
te OpenOce.org vorgestellt. Dies sind die Ansätze COMsource, LotusScript-to-Java
(LS2J) + Web Service, LS2J + Agent, Rhino + Web Service und Rhino + Agent.
Dabei werden jeweils zu jedem Konzept die Vor- und Nachteile aufgezeigt.
COMsource Ansatz
Der erste Ansatz verwendet die COMsource Technologie. Alle nachfolgende Informationen über die COMsource Technologie sind dem Internetauftritt
ums
275
274
des Industriekonsorti-
Open Group entnommen. COMsource ist eine oene Systemimplementation von
Microsoft's COM Technologie unter UNIX. Es bietet alle Basisfunktionen, Bibliotheken
und Werkzeuge an, die eine COM Applikation benötigt. Mithilfe von COMsource ist es
unabhängigen Softwareherstellern möglich ihre COM Programme auf Plattformen, die
COM standardmäÿig nicht unterstützen, zu portieren. Das objektbasierte und verteilte
Programmiermodell von COMsource ermöglicht es C++, Visual C, Visual Basic oder Java
Programme in einem Softwarekomponentenobjekt zu kapseln. Ein Komponentenobjekt ist
ein gegen die COM Standardschnittstelle geschriebener und wiederverwendbarer Binärcode, der sich mit anderen derart implementierten Komponentenobjekten verbinden kann.
OpenGroup stellt zwei Referenzimplementationen (auf Solaris und Tru64 UNIX) bereit,
die jeweils den Sourcecode, eine Interoperabilitätstestsuite und Referenzdokumentation
beinhalten. Mithilfe der Interoperabilitätstestsuite ist es jedoch auch möglich eine Systemimplementation der COM Technologie auf dem Linux Betriebssystem zu realisieren.
Nach Aussage von Open Group liegt der Portierungsaufwand inklusiv der notwendigen
Tests zwischen 1,5 und 3 Monaten. Die Lizenzkosten belaufen sich für die Entwicklerlizenz
mit späteren Vertriebsrechten einmalig auf 35.000 Dollar.
276
In Abbildung 3.5 ist der COMsource Ansatz zu sehen. Mithilfe einer Linux Implementation von COMsource auf Linux kann die aktuelle OceGateway Implementation ohne
Anpassungen eingesetzt werden. Die Portierung von COMsource auf Linux sollte mithilfe
der Referenzimplementationen innerhalb relativ kurzer Zeit möglich sein. Nachteilig sind
277
die Lizenzkosten
für die Verwendung der COMsource Technologie. Ein weiterer gravie-
274 Siehe
http://www.opengroup.org/comsource
277 Siehe
http://www.opengroup.org/comsource/cs-pricelist.htm
275 Mitglieder sind beispielsweise Hewlett-Packard Company, Microsoft Corporation oder die Siemens AG
276 Stand: März 2008
3. Konzepte zum Datenaustausch
73
Maske
PAVONE
OfficeGateway
Dokument
PAVONE Enterprise Office
Vorlagenrepository
COM
COM
Lotus Notes 8 Client
UNO
OpenOffice.org
COMsource Technologie
Linux Implementation
Linux Plattform
Abbildung 3.5.: COMsource Ansatz: Linux Implementation der COMsource Technologie zur
Bereitstellung der COM Technologie
278
render Schwachpunkt ist die Komplexität
der COM Technologie an sich, die schon bei
der aktuellen OceGateway Schnittstelle nachteilig ist und bei diesem Ansatz zusätzlich
zu der COMsource Implementation zum Tragen kommt würde. Wünschenswert für ein
gutes Konzept ist es den Einsatz der COM Technologie zu vermeiden. Da jedoch die Linuxversion von OpenOce.org nicht mit COM Unterstützung ausgestattet ist, muss die
Windowsversion von OpenOce.org unter Linux zum Laufen gebracht werden. Inwieweit
dies möglich ist und welche zusätzlichen Probleme entstehen können, wird in dieser Arbeit
nicht weiter untersucht.
278 Vgl. [Schwichtenberg, 2005] S.906
3. Konzepte zum Datenaustausch
74
LS2J Ansatz
Der zweite Ansatz basiert auf die Verbindung von LotusScript und Java mittels LS2J.
Die nachfolgenden Informationen zu LS2J basieren auf der Lotus Notes 8 Hilfe zu LS2J.
Mithilfe von LS2J kann in LotusScript Programmen auf Java zugegrien werden. Ein Satz
von vordenierten LotusScript Objekten erlauben LotusScript die Benutzung von schon
vorhandenen Java Klassen, die entweder als Script Bibliotheken verfügbar oder im gesetzten Klassenpfad zu nden sind. LS2J ist das Interface, welches den Datentransfer von Java
Datentypen zu LotusScript Datentypen ermöglicht und den Aufruf von Java Objektmethoden aus LotusScript heraus erlaubt. Weiterhin bietet es die Möglichkeit Java Objekte
zu erzeugen, als ob sie zu der gewöhnlichen LotusScript Umgebung gehören. Dieser Satz
von LotusScript Objekten ist als LotusScript Erweiterung implementiert und kann in jeder
existierenden LotusScript Implementation genutzt werden. Sei es eine eigenständige oder
eine, in eine Applikation wie Lotus SmartSuite oder Lotus Notes, eingebettete LotusScript
Implementierung. In einer Notes Umgebung lokalisiert LotusScript Java Klassen und benutzt sie, als ob sie LotusScript Objekte wären. Schon in Java geschriebene Klassen können
somit ohne Modikationen in LotusScript benutzt werden. Beim LS2J Ansatz soll die
bestehende Implementierung von PAVONE OceGateway weitgehend wiederverwendet
werden. Mithilfe von LS2J kann somit eine Wrapper Klasse in der Programmiersprache
Java geschrieben werden, die die LotusScript COM Aufrufe in Java Aufrufe umwandelt
und die COM Technologie überüssig macht. Die Java Wrapper Klasse greift somit direkt auf die UNO-Schnittstelle zu. Um aus OpenOce.org heraus Lotus Notes triggern zu
können, soll ein in die Oce-Vorlage eingebautes Makro verwendet werden. Dabei greift
das Makro nicht direkt auf Lotus Notes zu, sondern nutzt entweder die Lotus Notes Web
Service Unterstützung über einen zwischengeschalteten Web Service oder einen Agentenaufruf über die Betriebssystemebene. Diese zwei Optionen, um Lotus Notes zu triggern,
werden in der weiteren Arbeit als getrennte Ansätze betrachtet.
Mithilfe der Abbildung 3.6 soll erst einmal die Funktionsweise des Ansatzes LS2J + Web
Service erläutert werden:
1 Im Vorlagendokument ist ein Feld ExportView deniert, welches eine Exportansicht und weitere Parameter des Exports festlegt.
3. Konzepte zum Datenaustausch
75
Web Service
2
Maske
Java Klasse
3
PAVONE
OfficeGateway
8a
4b
Dokument
4a
5a
Export−
ansicht
9
7
8b
8c
PAVONE Enterprise Office
Makro
1
Vorlagenrepository
5b
6
Web
Service
Vorlage
10
UNO
OpenOffice.org
Lotus Notes 8 Client
temporäres Verzeichnis
Windows / Linux Plattform
Abbildung 3.6.: Funktionsweise der Ansätze LS2J und Rhino in Kombination mit einem
Web Service
2 Aus PAVONE Enterprise Oce heraus kann eines der drei Dokumenttypen
Oce-Dokument, Oce-Serienbrief oder Oce-Bericht ausgewählt werden.
3 Eine OpenOce.org Vorlage wird aus der Vorlagendatenbank ausgewählt und
geladen.
4a+b
OpenOce.org wird über LS2J durch die Java Wrapper Klasse mit der Vorlage geönet.
5a+5b+6
OceGateway führt den Export oder Datenaustausch anhand der Ex-
portansicht durch und erstellt eine temporäre Datei auf dem Dateisystem.
Auch können programmierbare Events ausgeführt werden, womit OpenOce.org
bzw. das Oce-Dokument zusätzlich manipuliert werden kann.
7 Das OpenOce.org Dokument kann durch den Benutzer noch weiter bearbeitet werden.
8a+b+c
Das OpenOce.org Makro triggert den Web Service
279
, der über die Web
Service Schnittstelle von Lotus Notes auf die Java Wrapper Klasse zugreift.
279 Siehe Unterabschnitt 2.5.2 für weitere Informationen
3. Konzepte zum Datenaustausch
76
9 Die Java Wrapper Klasse triggert OceGateway, damit es das Oce-Dokument
als Anhang in Lotus Notes speichert.
10 Das Oce-Dokument wird geschlossen und als Anhang in Lotus Notes gespeichert.
Maske
2
Java Klasse
PAVONE
OfficeGateway
3
4b
Dokument
4a
5a
Export−
ansicht
7
9
Agent
PAVONE Enterprise Office
Makro
6
1
Vorlagenrepository
Vorlage
5b
10
UNO
OpenOffice.org
Lotus Notes 8 Client
8
temporäres Verzeichnis
Windows / Linux Plattform
Abbildung 3.7.: Funktionsweise der Ansätze LS2J und Rhino in Kombination mit einem
Agentenaufruf
Mithilfe der Abbildung 3.7 soll nun die Funktionsweise des Ansatzes LS2J + Agent
erläutert werden:
1 Im Vorlagendokument ist ein Feld ExportView deniert, welches eine Exportansicht und weitere Parameter des Exports festlegt.
2 Aus PAVONE Enterprise Oce heraus kann eines der drei Dokumenttypen
Oce-Dokument, Oce-Serienbrief oder Oce-Bericht ausgewählt werden.
3 Eine OpenOce.org Vorlage wird aus der Vorlagendatenbank ausgewählt und
geladen.
3. Konzepte zum Datenaustausch
4a+b
77
OpenOce.org wird über LS2J durch die Java Wrapper Klasse mit der Vorlage geönet.
5a+5b+6
OceGateway führt einen Export anhand der Exportansicht oder eine
Feldaustausch durch und erstellt eine temporäre Datei auf dem Dateisystem.
Auch können programmierbare Events ausgeführt werden, womit OpenOce.org
bzw. das Oce-Dokument zusätzlich manipuliert werden kann.
7 Das OpenOce.org Dokument kann durch den Benutzer noch weiter bearbeitet werden.
8 Das OpenOce.org Makro triggert Lotus Notes, indem es einen Notes Agentenaufruf über die Betriebssystemebene durchführt.
9 Der LotusScript Agent triggert OceGateway, damit es das Oce-Dokument
als Anhang in Lotus Notes speichert.
10 Das Oce-Dokument wird geschlossen und als Anhang in Lotus Notes gespeichert.
Vorteilhaft beim LS2J Ansatz ist, dass die grobe Architektur der aktuellen OceGateway
Implementierung erhalten bleibt. Die OceGateway Schnittstelle wird, wie bei der aktuellen OceGateway Lösung, direkt in die Datenbank eingebaut und ermöglicht den
Entwicklern auf ihre bisherigen Erfahrungen zurückzugreifen. Es fallen keine zusätzlichen Lizenzkosten an, da LS2J seit der Version 6 in Lotus Notes integriert ist. Durch
die Integration in Lotus Notes kann davon ausgegangen werden, dass LS2J für den produktiven Einsatz hinsichtlich der Verwendung und der Performance optimiert ist. Es ist
aber dennoch mit einem Performanceverlust gegenüber der aktuellen OceGateway Lösung zu rechnen. Der LS2J Ansatz in Kombination mit einem Web Service hebt sich
dabei von der Verwendung des LS2J Ansatzes mit Agentenaufruf dahingehend ab, dass
er plattformunabhängig ist. Jedoch ist das Erstellen eines Web Services gegenüber dem
Implementieren eines Notes Agenten mit einem höheren Aufwand verbunden.
Rhino Ansatz
Der Rhino Ansatz setzt auf die Ersetzung der in der aktuellen Implementierung von
OceGateway verwendeten Programmiersprache LotusScript durch JavaScript. Dabei
3. Konzepte zum Datenaustausch
78
soll, genau wie beim LS2J Ansatz, eine Java Wrapper Klasse eingesetzt werden, die mit-
280
hilfe von Rhino von JavaScript interagieren kann. Rhino
281
Interpreter des Mozilla-Projekts.
ist ein quelloener JavaScript-
Er ist in Java implementiert und besitzt eine API für
282
das Einbetten von JavaScript in andere Anwendungen.
Somit kann beispielsweise in ei-
ner Java-Anwendung JavaScript durch das Verwenden von Rhino eingebettet werden.
283
Gleichzeitig ermöglicht Rhino JavaScript Felder von Java Objekten abzufragen und zu
284
setzen und auch Java Methodenaufrufe durchzuführen.
Wenn ein Java-Objekt über
ein Bindings-Objekt an ein JavaScript-Skript übergeben wird oder an eine JavaScriptFunktion übergeben wird, kann JavaScript dieses Objekt fast so manipulieren, als wäre es
ein natives JavaScript-Objekt. Alle öentlichen Felder und Methoden des Java-Objektes
werden als Eigenschaften des JavaScript-Wrapper-Objekts veröentlicht
285
Mithilfe von
Rhino kann somit eine Wrapper Klasse in der Programmiersprache Java geschrieben werden, die die LotusScript COM Aufrufe in Java Aufrufe umwandelt und die COM Technologie überüssig macht. Die Java Wrapper Klasse greift somit direkt auf die UNOSchnittstelle zu. Um aus OpenOce.org heraus Lotus Notes triggern zu können, soll wie
beim LS2J Ansatz ein in die Oce-Vorlage eingebautes Makro verwendet werden. Dabei
kommen wieder die beiden Möglichkeiten, um das Triggern von Notes zu bewerkstelligen,
in Frage. Und zwar die Benutzung der Lotus Notes Web Service Unterstützung über einen
zwischengeschalteten Web Service oder ein Notes Agent, der über die Betriebssystemebene
durch ein OpenOce.org Makro aufgerufen wird.
Ein groÿer Nachteil beim Rhino Ansatz ergibt sich durch die Ersetzung von LotusScript
durch JavaScript. An dieser Stelle der Konzeptphase ist nicht klar, ob der gesamte Code
von LotusScript nach JavaScript portierbar ist. Folglich ist von einem sehr groÿen Entwicklungsaufwand auszugehen, da zusätzlich zu der Portierung noch die Implementierung
der Java Wrapper Klasse und des Web Services bzw. des JavaScript Agenten hinzukommt.
Auch ist mit einem Performanceverlust gegenüber der aktuellen OceGateway Lösung zu
rechnen, die durch den Einsatz von Rhino zu Stande kommen wird.
280 Siehe
http://www.mozilla.org/rhino
281 Vgl. [Flanagan, 2007] S.237
282 Vgl. [Flanagan, 2007] S.237
283 Vgl. [Flanagan, 2007] S.237
284 Vgl. [Flanagan, 2007] S.245
285 [Flanagan, 2007] S.245
3. Konzepte zum Datenaustausch
79
3.5. Bewertung der Konzeptansätze
Die Bewertung der vorgestellten Konzepte soll nun mithilfe der Qualitätskriterien, die in
Abschnitt 3.3 eingeführt wurden, durchgeführt werden. Dabei bezieht sich die Bewertung
nur auf die wichtigen und gewünschten Kriterien aus Tabelle 3.1. In Tabelle 3.2 ist eine Übersicht der Bewertung zu sehen, die sich auf die folgende Diskussion stützt. Die
Bewertung erfolgt nach folgendem Schema: -
++
bedeutet sehr gut, +
gut, O
durchschnittlich, schlecht und bedeutet sehr schlecht.
1. Funktionalität
•
Eignung und Richtigkeit: Die Eignung und die Richtigkeit sind Voraussetzungen für alle relevanten Konzeptvorschläge. Konzeptideen, die diesen beiden
Eigenschaften nicht genügen, wurden schon im Vorfeld nicht in Betracht gezogen. Somit sind alle vorgestellten Konzepte für die Erfüllung der geforderten
Funktionalität hinsichtlich der Eignung und der Richtigkeit mit sehr gut bewertet.
•
Interoperabilität: Um die COM Technologie der aktuellen OceGateway Lösung beizubehalten, wird beim COMsource Ansatz auf die Portierung der
COMsource Technologie auf Linux gesetzt, die wie eine Middleware zwischen
der Anwendung und dem Betriebssystem agiert. Deshalb ist eine Interoberabilität nur innerhalb der OceGateway Lösung, die auf der Linux COMsource
Implementierung aufsetzt, gewährleistet. Eine Interoperabilität mit anderen
Programmen, die native auf Linux ausgeführt werden, ist dagegen schwieriger, wenn von Linux nicht bekannte Protokolle oder Technologien eingesetzt
werden. Im Gegensatz dazu verwenden die Konzeptansätze LS2J und Rhino vertrauenswürdige Schnittstellen und Technologien, wie Java, LS2J, Rhino,
Notes Agent und Web Services. Dies führt zu einer Steigerung der Interoperabilität und somit zu einer Bewertung mit gut gegenüber der Bewertung des
COMsource Ansatzes mit schlecht.
•
Sicherheit (Safety): Die Wahrung der Datenintegrität des COMsource Ansatzes ist von der COMsource Linux Implementierung abhängig. Es kann jedoch
davon ausgegangen werden, dass der Einsatz der COMsource Technologie die
3. Konzepte zum Datenaustausch
80
Datenintegrität nicht negativ beeinusst. LS2J verbindet LotusScript mit Java
und ist in Lotus Notes integriert. Somit ist eine Verletzung der Datenintägrität durch LS2J nicht zu erwarten. Auch der Einsatz eines Web Services
bei den beiden Ansätzen LS2J und Rhino sollte bei richtiger Benutzung
die Datenintegrität nicht negativ beeinträchtigen. Der Rhino Ansatz ersetzt
LotusScript durch JavaScript und verwendet die Rhino Technologie zur Interaktion von JavaScript mit Java. Durch den höheren Programmieraufwand
der Rhino Ansätze gegenüber den anderen Konzeptansätzen ist mit einem
erhöhten Fehlerrisiko zu rechnen. Dies führt zur Abwertung der beiden Rhino Ansätze (Bewertung mit befriedigend) gegenüber den anderen Ansätzen
(Bewertung mit gut).
2. Benutzbarkeit: Da alle Konzeptansätze bei der Benutzbarkeit das Ziel verfolgen
die Benutzungschnittstelle der aktuellen Lösung von OceGateway beizubehalten,
werden sie alle mit sehr gut bewertet.
3. Wartbarkeit
•
Analysierbarkeit: Beim COMsource Ansatz wird die Implementierung mit
LotusScript und COM von der aktuellen OceGateway Lösung übernommen, sodass der Einsatz des LotusScript Debuggers zur Analysierbarkeit genutzt werden kann. Möglichkeiten der Analyse bei Portierungproblemen von
COMsource auf Linux sind durch die zwei bereitgestellten Referenzimplementationen, der Interoperabilitätstestsuite und der Referenzdokumentation gegeben. Jedoch kann keine Aussage darüber gemacht werden, ob diese Hilfsmittel eine ausreichende Analysierbarkeit bieten können. Deshalb wird der
COMsource Ansatz nur mit befriedigend bewertet. Bei den Ansätzen LS2J
und Rhino stehen Debugger für die verschiedenen Programmiersprachen LotusScript,
JavaScript und Java zur Verfügung. Im Gegensatz zum LotusSript und JavaScript
Debugger, die aus Lotus Notes heraus genutzt werden, können die Programmteile, welche in Java implementiert sind, losgelöst in einer Entwicklungsumgebung (z.B. Eclipse oder NetBeans) getestet werden.
3. Konzepte zum Datenaustausch
81
Dies erhöht die Fähigkeit der Analysierbarkeit und führt zu einer Beurteilung
der Ansätze LS2J und Rhino in Kombination mit einem Web Service bzw.
einem Agentaufruf mit gut.
•
Modizierbarkeit: Modizierungen des COMsource Ansatzes beschränken sich
auf Änderungen, die die LotusScript Implementierung in Kombination mit der
COM Technologie zulassen. Die Ansätze LS2J + Web Service und Rhino +
Web Service bieten durch ihre exible Architektur eine gute Modizierbarkeit.
Diese Flexibilität wird durch den Einsatz der plattformunabhängigen Java und
Web Service Technologien gewährleistet. Dagegen bieten die Ansätze LS2J
und Rhino in Kombination mit dem Notes Agentenaufruf über die Betriebssystemebene eine geringere Flexibilität, protiert durch die Einfachheit des
Agentenaufrufes im Gegensatz zum Einsatz eines Web Services. Die Objektorientierung von Java und die daraus resultierende gute Ausgangsposition für
eine strukturierte Programmierung, trägt zu einer guten Modizierbarkeit bei
allen LS2J und Rhino Ansätzen bei. Nachteilig ist jedoch die Erlernung der
beiden Bridgetechniken LS2J und Rhino durch den Programmierer. Die Beurteilung aller LS2J und Rhino Ansätze fällt aber dennoch besser (gut), als
die Bewertung des COMsource Ansatzes (befriedigend), aus.
•
Stabilität: Durch den Einsatz der COMsource Technologie beim COMsource
Ansatz kann die aktuelle OceGateway Implementierung voraussichtlich ohne
Änderungen weiterverwendet werden. Jedoch kann die aktuelle OceGateway
Lösung nur eine bedingte Flexibilität vorweisen. Auch kann im Vorfeld nicht abgesehen werden, welche Auswirkungen die Linux Implementierung der COMsource
Technologie auf zukünftige Änderungen der OceGateway Schnittstelle ausüben wird. Folglich wird der COMsource Ansatz nur mit befriedigend bewertet. Die Stabilität aller LS2J und Rhino Ansätze wird durch ihre exible Architektur gewährleistet, sodass keine unerwarteten Auswirkungen auf
die Gesamtfunktionalität zu erwarten sind. Jedoch wird die Flexibilität der
beiden Ansätze LS2J und Rhino in Kombination mit dem Notes Agenten
durch den betriebssystemabhängigen Agentenaufruf gemindert. Daraus folgt
eine schlechtere Beurteilung dieser beiden Ansätze mit gut gegenüber der
3. Konzepte zum Datenaustausch
82
sehr guten Beurteilung der Ansätze LS2J + Web Service und Rhino +
Web Service.
4. Portierbarkeit
•
Anpassbarkeit und Installierbarkeit: Die Anpassbarkeit des COMsource Ansatzes leidet daran, dass es eine entsprechende COMsource Implementation
auf dem gewünschten Betriebssystem geben muss. In dieser Arbeit folgt daraus eine Linux Implementation. Jedoch müsste beispielsweise beim Einsatz auf
Mac OS die COMsource Technologie auf Mac OS portiert werden. Deshalb
wird die Anpassbarkeit und die Installierbarkeit nur mit schlecht bewertet.
Im Gegensatz dazu protieren die LS2J und der Rhino Ansätze von ihrer
exiblen Architektur. Dies ermöglicht eine übersichtlichere Struktur, eine Modularisierung und durch die Eigenschaft der Objektorientierung von Java und
der Web Service Technologie bzw. Notes Agent auch eine bessere Lesbarkeit
des Quellcodes. Bei den beiden Ansätzen LS2J + Web Service und Rhino + Web Service führt die Plattformunabhängigkeit von Java und der Web
Service Technologie dazu, dass sie ohne softwaretechnischen Anpassungen auf
vielen Betriebssystemen installierbar und lauähig sind. Deshalb werden bei
diesen beiden Ansätzen die Kriterien Anpassbarkeit und Installierbarkeit mit
sehr gut bewertet. Im Gegensatz dazu sind bei den beiden LS2J und Rhino Ansätze durch den plattformabhängigen Agentenaufruf bei der Bewertung
der beiden Kriterien Abstriche zu machen, da sie nicht ohne Portierungsaufwand auf einem neuen Betriebssystem installierbar und lauähig sind. Somit
werden die Merkmale Anpassbarkeit und Installierbarkeit der beiden Ansätze
mit gut bewertet.
•
Konformität: Der COMsource Ansatz basiert auf der COMsource Technologie, welche von der Open Group entwickelt und angeboten wird. Da Open
Group ein Industriekonsortium mehrerer namhafter Hersteller ist, kann davon
ausgegangen werden, dass keine herstellerspezischen Besonderheiten von Nöten sind, die die Konformität beeinträchtigen könnten. Auch die LS2J und die
Rhino Ansätze gewährleisten, durch die Verwendung von anerkannten Standards und Technologien, wie die Prgrammiersprachen Java, JavaScript, Notes
3. Konzepte zum Datenaustausch
83
Agenten oder der Web Service Technologie, die Konformität. Deshalb werden
alle Konzeptansätze mit sehr gut bewertet.
•
Austauschbarkeit: Der Einsatz von objektorientierten Programmiersprachen
ermöglicht eine Modularisierung von Programmen. Die Fähigkeit der Modularisierung ist Voraussetzung für eine gute Austauschbarkeit. Beim COMsource
Ansatz kommt die Makrosprache LotusScript, die in Lotus Notes eingebettet
ist, zum Einsatz. Eine Modularisierung des Programms kann durch die Verwendung von Klassen und die Aufteilung des Codes in mehreren Script Libraries erreicht werden, die dann auch in anderen Programmen wiederverwendet
werden können. Somit erhält der COMsource Ansatz für das Kriterium der
Austauschbarkeit die Bewertung gut. Alle LS2J und Rhino Ansätze erweitern die Notes interne Modularisierung des LotusScript Codes durch die
Java Wrapper Klasse und den Einsatz eines Web Services bzw. eines Notes
Agenten. Somit wird die Austauschbarkeit der LS2J und Rhino Ansätze
mit sehr gut bewertet.
5. Wirtschaftlichkeit: Hinsichtlich der Wirtschaftlichkeit wird der COMsource Ansatz
nur mit schlecht bewertet, da bei der Implementation der COMsource Technologie
Lizenzkosten an Open Group anfallen. Weiterhin ist auch die Abhängigkeit von der
COMsource Technologie für zukünftige Entwicklungsarbeit und Softwarepege nicht
positiv bewertbar. Die beiden LS2J Ansätze bestechen gegenüber dem Rhino Ansatz dadurch, dass der LotusScript Code nicht komplett ersetzt werden muss. Dieser
nicht unerheblich gröÿere Entwicklungsaufwand bei den Rhino Ansätzen rechtfertigt die schlechteren Bewertungen dieser Konzeptansätze. Da die Entwicklung und
Benutzung eines Web Services gegenüber der eines Notes Agenten einen höheren
Entwicklungsaufwand bedeutet, werden die Ansätze mit Agentenaufruf besser bewertet, als die Ansätze in Kombination eines Web Services. Somit ergibt sich eine
abstufende Bewertung von sehr gut für den Ansatz LS2J + Agent bis schlecht
für den Ansatz Rhino + Web Service.
3. Konzepte zum Datenaustausch
Qualitätskriterien
84
COMsource LS2J + LS2J + Rhino + Rhino +
Web
Agent
Service
Web
Agent
Service
Funktionalität
Eignung
++
++
++
++
++
Richtigkeit
++
++
++
++
++
-
+
+
+
+
+
+
+
O
O
++
++
+
++
O
Analysierbarkeit
O
+
+
+
+
Modizierbarkeit
O
+
+
+
+
Stabilität
O
++
+
++
+
Anpassbarkeit
-
++
+
++
+
Installierbarkeit
++
+
++
+
++
++
++
++
++
+
++
++
++
++
-
+
++
-
O
Interoperabilität
Sicherheit
- Safety
Benutzbarkeit
Wartbarkeit
Portierbarkeit
Konformität
Austauschbarkeit
Wirtschaftlichkeit
Tabelle 3.2.: Bewertung der Konzeptansätze hinsichtlich der relevanten Qualitätskriterien
3. Konzepte zum Datenaustausch
85
3.6. Auswahl eines Konzeptes für die prototypische
Implementierung
Aufgrund der Diskussion der Konzeptansätze, wird nun ein Ansatz ausgewählt, um die
OceGateway Schnittstelle unter Windows und Linux lauähig zu machen und einen Datenaustausch zwischen Lotus Notes und OpenOce.org prototypisch zu realisieren. Dabei
fällt die Bewertung des COMsource Ansatzes gegenüber den beiden anderen Ansätzen
deutlich negativ aus. Die LS2J und die Rhino Ansätze haben durch den Einsatz eines
Web Services bzw. Notes Agenten und der Java Wrapper Klasse eine sehr groÿe Ähnlichkeit. Doch die LS2J Ansätze sind gegenüber den Rhino Ansätzen im Vorteil, da
sie den LotusScript Code beibehalten. Dieser muss bei den Rhino Ansätzen durch die
Verwendung der Rhino Technologie, die JavaScript mit Java verbindet, durch JavaScript
ersetzt werden. Dies ist besonders fehleranfällig (Kriterium Safety) und unwirtschaftlich.
Als potentielle Kandidaten bleiben die beiden LS2J Ansätze übrig: der Ansatz LS2J +
Web Service und der Ansatz LS2J + Agent. Die schlechteren Bewertungen des LS2J
+ Agent Ansatzes bei den Merkmalen Stabilität, Anpassbarkeit und Installierbarkeit
beruhen auf den plattformabhängigen Aufruf des Notes Agenten. Jedoch sind die Änderungen für die Portierung auf ein neues Betriebssystem sehr gering und beziehen sich
im Groben nur auf den Basic Code im OpenOce.org Makro. Ein groÿer Vorteil des
Notes Agenten gegenüber der Verwendung eines Web Service liegt in der Einfachheit und
Übersichtlichkeit. Im Hinblick auf die prototypische Implementierung in dieser Arbeit ist
die Wirtschaftlichkeit das ausschlaggebende Kriterium. Deshalb wird der LS2J Ansatz
in Kombination mit einem Notes Agenten, der über die Betriebssystemebene aufgerufen
wird, im Kapitel 4 prototypisch umgesetzt.
4. Prototypische Realisierung der
OceGateway Schnittstelle
Anhand der Abbildung 4.1 werden einzelne Änderungen im vorhandenen Quelltext erläutert. Auch wird die Benutzung von LS2J, um von LotusScript auf Java Klassen zuzugreifen, mithilfe einiger Codeausschnitte näher erläutert. Dabei wird auf Einschränkungen,
Vereinfachungen und Abweichungen der prototypischen Implementierung vom theoretischen Konzept hingewiesen. Aus datenschutzrechtlichen Gründen wird nur ein Klassendiagramm der Java Wrapper Klasse OOoStart gezeigt. Im Anschluss daran wird eine
Einschätzung der prototypischen Implementierung gegeben und der Frage nachgegangen,
ob sie auf Windows und Linux lauähig ist. Auch werden Probleme und Einschränkungen der prototypischen Implementierung aufgezeigt und gegebenfalls Lösungen skizziert.
Die für die Entwicklung der prototypischen Realisierung eingesetzte Software ist im Abschnitt A zu nden.
Am Anfang der prototypischen Entwicklungsarbeit wurde in Absprache mit der PAVONE
AG eine Prioritätenliste erstellt, die die Schwerpunkte der Entwicklungsarbeit festlegen
soll. Anhand dieser Prioritätenliste konnte die zeitlich begrenzte Implementierungsarbeit
auf das Wichtigste konzentriert werden. Im Folgenden ist die Prioritätenliste zu sehen:
1. OpenOce.org aus Lotus Notes heraus starten
2. Zurückspeichern des Oce-Dokumentes als Anhang
3. Feldaustausch zwischen Lotus Notes und OpenOce.org
4. Export von Daten ins Oce-Dokument
5. Event-Handling
86
4. Prototypische Realisierung der OceGateway Schnittstelle
87
Die prototypische Implementierung des Ansatzes LS2J + Agent deckt im Groben die
Punkte OpenOce.org aus Lotus Notes heraus starten, Zurückspeichern des OceDokumentes als Anhang und Feldaustausch zwischen Lotus Notes und OpenOce.org
der Prioritätenliste ab.
Im Vorfeld müssen einige Vorbereitungen getroen werden, um den Prototypen zum Laufen zu bringen. Zuerst muss die Kongurationsdatei OGConf.txt, die nur den Pfad zur
ausführbaren Datei des Notes Clients beinhaltet, erstellt werden. Dabei erwartet das
OpenOce.org Makro Module1 die Kongurationsdatei in einem fest denierten Ver-
1
zeichnis . Um die Verwendung einer Kongurationsdatei überüssig zu machen, könnte
der Pfad des Notes Clients beim Önen von OpenOce.org dem Makro als Argument
übergeben werden. Weiterhin ist das Setzen von zwei Parametern in der notes.ini von Nöten. Der Parameter OOoExeFolder gibt den Installationspfad von OpenOce.org an und ist für
das Starten von OpenOce.org aus Lotus Notes heraus notwendig. Der zweite Parameter
OOoTemplate verweist auf die Testvorlage OOoVorlage.odt mit dem integrierten Makro Module1, der den COM Mechanismus durch einen Agentenaufruf auf Betriebsystemebene
ersetzen soll. Da die Oce-Vorlagen bei der vollständigen Umsetzung des Konzeptes in einer Notes Vorlagendatenbank gespeichert werden, wird der Parameter OOoTemplate überüssig. Damit OpenOce.org mit Java gestartet und Oce-Dokumente manipuliert werden
können, muss Java in OpenOce.org aktiviert und konguriert werden.
2
Als letzte Vorbe-
reitungsmaÿnahme muss das Tape File Archiver (TAR)-Archive bootstrapconnector.jar
in das classes Verzeichnis der OpenOce.org Installation kopiert werden. Dies ist durch
die Verwendung des in OpenOce.org 2.x eingeführten Ladeprogramm Mechanismuses
3
notwendig.
Das TAR-Archiv beinhaltet Quellcode aus dem Uno Software Development
Kit (UDK) Projekt
4
von OpenOce.org.
1 In der prototypischen Implementierung wird eine Testvorlage OOoVorlage.odt
erstellt, die das ExportView Feld nicht berücksichtigt, da der Implementie-
1 Unter Windows im Verzeichnis C:\OceGateway\ und unter Linux im Verzeichnis /etc/
2 Menü Extras -> Optionen und dann im Baum OpenOce -> Java
3 Siehe
http://user.services.\unhbox\voidb@x\hbox{OpenOffice.org}/en/forum/viewtopic.
php?f=44&t=2520 für weitere Informationen
http://udk.\unhbox\voidb@x\hbox{OpenOffice.org}/source/browse/udk/
4 Siehe
4. Prototypische Realisierung der OceGateway Schnittstelle
Maske
2
PAVONE
OfficeGateway
88
Java Klasse
OOoStart
3
4b
Dokument
4a
5a
Export−
ansicht
9
7
Notes Agent
OOoTrigger
Form
OOoTriggerForm
PAVONE Enterprise Office
Makro
Module1
6
Vorlagenrepository
5b
10
8
UNO
OpenOffice.org
Lotus Notes 8 Client
Office Vorlage
OOoVorlage.odt
temporäres Verzeichnis
Windows / Linux Plattform
Abbildung 4.1.: Implementierung des LS2J + Agent Ansatzes mit Zwischenschalten eines
Formaufrufes
rungspunkt Export von Daten ins Oce-Dokument der Prioritätenliste zeitlich nicht umgesetzt werden konnte.
2 Eines der drei Dokumenttypen Oce-Dokument, Oce-Serienbrief oder OceBericht kann ausgewählt werden. Die prototypische Implementierung beschränkt
sich jedoch auf Änderungen bei der Erstellung eines Oce-Dokumentes (siehe Abbildung 4.2). Dabei wird die Integration in den OceGateway Code
vernachlässigt und nur die Methodenaufrufe der Java Wrapper Klasse mittels LS2J in der Schaltäche Dokument über Vorlage erstellen exemplarisch
zusammengefasst.
3 Die Testvorlage OOoVorlage.odt wird nicht aus der Vorlagendatenbank geladen, da sie auf dem Dateisystem abgelegt ist und Lotus Notes durch den
Parameter OOoTemplate in der notes.ini bekannt gemacht wird.
4a+b
OpenOce.org wird in dem Prototypen mittels der Java Wrapper Klasse
OOoStart gestartet. Dazu muss sich das TAR-Archive bootstrapconnector.jar in dem classes Verzeichnis der OpenOce.org Installation benden,
4. Prototypische Realisierung der OceGateway Schnittstelle
89
Abbildung 4.2.: Die prototypische Implementierung beschränkt sich auf das Oce-Dokument
damit die Java Wrapper Klasse OOoStart OpenOce.org starten kann. Der
Zugri auf OOoStart ndet durch den eingebetteten LotusScript Code in
der Schaltäche Dokument über Vorlage erstellen mittels LS2J statt.
In Abbildung 4.3 ist das Klassendiagramm der Java Wrapper Klasse OOoStart zu sehen, die die Methoden bootstrapOpenOffice() zum Starten von OpenOce.org
und OpenDocument(String sourceFile) zum Önen eines Oce-Dokumentes anbietet.
Die Methode fieldExchange(String fieldName, String fieldValue) dient zum Feldaustausch zwischen der Lotus Notes basierten Anwendung PAVONE Enterprise
Oce und einem OpenOce.org Dokument. Als Übergabeparameter erwartet die Methode zwei Strings. Der Parameter fieldName gibt die Textmarke
5
in
der Oce-Vorlage an und der Parameter fieldValue den zu übergebenden Inhalt, der an die Position der Textmarke geschrieben wird. Weiterhin existiert
die Hilfsmethode createUNOFileURL(String filelocation), mit der es möglich ist eine
5 auch alsBookmark bezeichnet
4. Prototypische Realisierung der OceGateway Schnittstelle
Uniform Resource Locator (URL) aus einem Dateiverzeichnispfad zu erstellen, die von UNO verwendet werden kann. Die Verwendung von LS2J, um
Abbildung 4.3.: Klassendiagramm der Java Wrapper Klasse OOoStart
von LotusScript auf Java Klassen zuzugreifen, wird anhand von Codeteilen
in der Schaltäche Dokument über Vorlage erstellen (siehe Abbildung 4.4)
näher erläutert. Um die LotusScript Erweiterung LS2J zu laden, wird die Anweisung Uselsx "*javacon" als Option der Schaltäche Dokument über Vorlage
erstellen hinzugefügt. Da in der prototypischen Implementierung die Java
Wrapper Klasse OOoStart als Java Bibliothek integriert ist, muss sie durch
den Befehl Use "OOoStart" bekannt gemacht werden.
Listing 4.1: Initialisierung der LotusScript Erweiterung LS2J
1
Dim mySession As JAVASESSION
2
Dim jclass As JAVACLASS
3
Dim oObject As JavaObject
4
5
Sub Initialize
6
oooExeFolder = session . GetEnvironmentString ( " OOoExeFolder ")
7
Set mySession = New JavaSession
8
Set jclass = mySession . GetClass (" OOoStart " )
9
Set oObject = jclass . CreateObject ("( Ljava / lang / String ;) V" ,
oooExeFolder )
10
End Sub
90
4. Prototypische Realisierung der OceGateway Schnittstelle
91
Abbildung 4.4.: Der Zugri auf die Java Wrapper Klasse OOoStart ndet in dem eingebet-
teten LotusScript Code in der Schaltäche Dokument über Vorlage erstellen
mittels LS2J statt
In der Unterfunktion Initialize im Listing 4.1 wird in Zeile 6 der Parameter
OOoExeFolder aus der notes.ini gelesen. Die JavaSession Klasse wird benötigt,
um von LotusScript eine Verbindung zu einer Java Virtual Machine (JVM)
herzustellen. Um auf die Java Wrapper Klasse OOoStart zugreifen zu können, muss erst einmal ein JAVASESSION Objekt instanziiert werden (Zeile 7). Nun
kann das JAVACLASS Objekt die Methode GetClass(..) benutzen (Zeile 8), um über
das JavaObject den Konstruktor der Klasse OOoStart aufzurufen. Dazu
wird in Zeile 9 der CreateObject() Methode als erstes Argument die Datentypensignatur String des OOoStart Konstruktors und als zweites Argument der
String selbst übergeben. Da der Konstruktor der Klasse OOoStart als Übergabewert den Programmpfad der OpenOce.org Installation erwartet, wird
ihm der String oooExeFolder mit dem Inhalt des Parameters OOoExeFolder aus der
notes.ini übergeben.
4. Prototypische Realisierung der OceGateway Schnittstelle
Listing 4.2: Starten von OpenOce.org und Önen der Oce-Vorlage
1
Sub Click ( Source As Button )
2
oObject . bootstrapOpenOffice
3
template = session . GetEnvironmentString (" OOoTemplate ")
4
Call oObject . openDocument ( template )
5
...
6
End Sub
Die Unterfunktion Click, die im Listing 4.2 zu sehen ist, wird beim Klicken
auf die Schaltäche Dokument über Vorlage erstellen ausgeführt. Mithilfe
des LS2J Objektes oObject kann nun die Java Methode bootstrapOpenOffice() (Zeile
2) aufgerufen werden, die die Oce Suite OpenOce.org startet. Die Testvorlage OOoVorlage.odt wird in Zeile 3 aus der notes.ini gelesen und der OOoStart Methode OpenDocument(..) als Argument mittels LS2J übergeben, damit
OpenOce.org die Vorlage önen kann.
5a+5b+6
Ein Export wird im Gegensatz zum Feldaustausch in der Prototyp Im-
plementierung nicht umgesetzt. Um einen Feldaustausch durchzuführen, muss
die jeweilige Textmarke der Oce-Vorlage bekannt sein. Im Listing 4.3 wird
beispielsweise in Zeile 4 der String zusammengefügt, der die Betrezeile des
Oce-Dokumentes enthalten soll. Der Betre wird durch den Befehl doc.GetItemValue
("Subject")(0) gelesen. Nun wird die Betrezeile mithilfe der OOoStart Methode fieldExchange(..) an die Textmarke StartContents der Oce-Vorlage geschrieben. Beim Erstellen der temporären Datei auf dem Dateisystem durch
die Funktion TempDir() in der LotusScript Bibliothek ogUtil, muss aufgrund
der unterschiedlichen Dateisystemkonventionen eine Unterscheidung zwischen
Windows und Linux gemacht werden. Dazu wird die private Funktion Platform()
genutzt, die als Ergebnis einen String zurückgibt, der angibt auf welchem Betriebssystem Lotus Notes gerade läuft. Als temporäres Verzeichnis wird unter
Windows C:\Temp\ und unter Linux /var/tmp verwendet.
92
4. Prototypische Realisierung der OceGateway Schnittstelle
93
Listing 4.3: Feldaustausch der Betrezeile zwischen Lotus Notes und dem Oce-Dokument
1
Sub Click ( Source As Button )
2
...
3
Dim subject As String
4
subject = " Betreff : " & doc . GetItemValue ( " Subject ") (0)
5
Call oObject . fieldExchange (" StartContents " , subject )
6
...
7
End Sub
7 Die geönete Vorlage OOoVorlage.odt kann nun durch den Benutzer noch
weiter bearbeitet werden.
8 Das in der Testvorlage OOoVorlage.odt integrierte Makro Module1 kann,
wie in Abbildung 4.5 zu sehen, über das OceGateway Symbol aktiviert werden. Es ist auch möglich das Makro an ein anderes Event, wie beispielsweise
das Önen oder Speichern des Oce-Dokumentes, zu knüpfen.
Abbildung 4.5.: Aktivieren des Makros Module1 über das OceGateway Symbol
4. Prototypische Realisierung der OceGateway Schnittstelle
94
Listing 4.4: Makro Module1 triggert Lotus Notes mittels eines Formaufrufes
1
Sub CloseDocument
2
Select Case GetGUIType ()
3
Case 1 ' Windows
4
platform = " Windows "
5
Case 4 ' Unix
6
platform = " Linux "
7
End Select
8
...
9
If platform =" Windows " Then
10
ogConf = "C :\ OfficeGateway \ OGConf . txt "
11
ElseIf platform =" Linux " Then
12
ogConf = "/ etc / OGConf . txt "
13
End If
14
...
15
formURL = " Notes :/// es \ _ap \ _d . nsf / OOoTriggerForm ? OpenForm "
16
If platform =" Windows " Then
17
command = notes & formUrl
18
ElseIf
19
20
End If
21
22
platform =" Linux " Then
command = notes & formUrl
Shell ( command )
End Sub
Im Listing 4.4 sind einige Teile des OpenOce.org Makros Module1 zu sehen. In Zeile 2 bis 6 wird mithilfe der Funktion GetGUIType() festgestellt auf welchem Betriebssystem OpenOce.org läuft. Anhand dieser Information kann
in Zeile 9 bis 13 das Notes Installationsverzeichnis aus der Kongurationsdatei
OGConf.txt des entsprechenden Betriebssystems gelesen werden. Da bei der
Implementierung der Aufruf des Notes Agenten OOoTrigger direkt aus dem
Oce Makro nicht funktioniert, wird der Agentaufruf über eine Form durchgeführt. Dazu wird die Form OOoTriggerForm nach folgender Syntax durch den
Shell(..) Befehl auf Betriebssystemebene aufgerufen: <Pfad zum Notes Client> Notes
:///<Datenbank>/Notes:///<FormName>?OpenForm. Die Form OOoTriggerForm führt
den Formula Befehl @Command([ToolsRunMacro]; "(OOoTrigger)") aus, um den Agenten
OOoTrigger zu aktivieren.
9 Der durch die Notes Form OOoTriggerForm getriggerte Agent OOoTrigger
speichert in Zeile 2 (siehe Listing 4.5) durch CurrentDocument() die Referenz auf
4. Prototypische Realisierung der OceGateway Schnittstelle
95
das aktuelle Dokument. Dies ist in der Hinsicht ein unsicherer Lösungsansatz, dass es beim zwischenzeitlichen Önen eines anderen Notes-Dokumentes
zu einem Fehler kommt, der noch abgefangen werden sollte. Damit die Form
OOoTriggerForm nicht als aktuelles Dokument erkannt wird, wird sie in der
Unterfunktion Postopen(..) sofort wieder geschlossen. Das temporäre Setzen des
Parameters OOoTrigger in der notes.ini ist notwendig, damit in der Unterfunktion PostRecalc(..), die beim Aufruf der Funktion Refresh ausgeführt wird, der
Agentenaufruf abgefangen werden kann.
Listing 4.5: Triggern von OceGateway durch den LotusScript Agenten OOoTrigger
1
...
2
Set nuid = nuiw . CurrentDocument ()
3
Call session . SetEnvironmentVar (" OOoTrigger " ," 1")
4
Call nuid . Refresh ()
5
...
Das Abfangen des Agentenaufrufs durch die Unterfunktion PostRecalc(..), die
sich in der ogLib Bibliothek bendet, ist im Listing 4.6 dargestellt. In Zeile
3 wird der vom Agenten OOoTrigger temporär in der notes.ini gespeicherte
Parameter OOoTrigger gelesen und im Anschluss daran das bearbeitete OceDokumente mithilfe der Funktion Attach(..) als Anhang im PAVONE Enterprise
Oce Dokument gespeichert (siehe Abbildung 4.6). Dabei wird das OceDokument in der prototypischen Implementierung an einer fest im Quellcode
denierten Stelle auf dem Dateisystem abgelegt (Zeile 5 und 7). Diese feste Zuordnung resultiert aus der fehlenden Integration in die OceGateway Schnittstelle und sollte durch eine variable Auswahl des Verzeichnisses bzw. des Dateinamens ersetzt werden. Die Unterscheidung zwischen den Betriebssystemen
Windows und Linux aufgrund der unterschiedlichen Dateisystemkonventionen
wird in Zeile 4 durch die private Funktion Platform() vorgenommen.
4. Prototypische Realisierung der OceGateway Schnittstelle
96
Listing 4.6: Speichern des Oce-Dokumentes im PAVONE Enterprise Oce Dokument beim
Ausführen der Unterfunktion PostRecalc(..)
1
Sub PostRecalc ( Source As NotesUiDocument )
2
...
3
If session . GetEnvironmentValue (" OOoTrigger ") = " 1" Then
4
If platform () = " Windows " Then
5
Call Me . Attach (" OOoAttachment . odt " , "C :\ OfficeGateway
\ OOoAttachment . odt " , Me . Params ("
FieldAttachment_OfficeDoc "). Value )
6
Else
7
Call Me . Attach (" OOoAttachment . odt " , "/ home / test /
OOoAttachment . odt " , Me . Params ("
FieldAttachment_OfficeDoc "). Value )
8
End If
9
10
...
End Sub
Abbildung 4.6.: Oce-Dokumente als Anhang im PAVONE Enterprise Oce Dokument ge-
speichert
Bewertung des Prototypen
Das Ziel der prototypischen Implementierung, OceGateway auf Windows und Linux
lauähig zu machen, wurde durch Tests des Prototypen auf beiden Betriebssystemen
bestätigt. Die Performance von OceGateway unter Windows und Linux kann nicht miteinander verglichen werden, da die Linux Testinstallation
6
in einer virtuellen Maschine
unter VMware erstellt wurde. Im Folgenden werden einige Probleme und Einschränkun-
6 Siehe Abschnitt A für weitere Informationen
4. Prototypische Realisierung der OceGateway Schnittstelle
97
gen der prototypischen Implementierung aufgezeigt und gegebenfalls Lösungsansätze für
den produktiven Einsatz skizziert:
•
Die Kongurationsdatei OGConf.txt kann, durch eine Parameterübergabe beim
Önen von OpenOce.org über die Java Wrapper Klasse OOoStart, ersetzt werden. Dadurch entfällt die Erstellung der Kongurationsdatei und vereinfacht die
Konguration von OceGateway.
•
Die Testvorlage OOoVorlage wird in der prototypischen Implementierung auf dem
Dateisystem gespeichert. Grundsätzlich sollten sich die Oce-Vorlagen beim produktiven Einsatz in einer Notes Vorlagendatenbank benden.
•
Der direkte Agentenaufruf, wie er im Datenaustauschkonzept beschrieben wird,
funktioniert nicht. Deshalb wird der Umweg über einen Formaufruf gewählt. Die
Form ruft dann den Notes Agenten auf, der das Speichern des Oce-Dokumentes
als Anhang im PAVONE Enterprise Oce Dokument veranlasst.
•
Beim Starten von OpenOce.org wird das integrierte Makro nicht aktiviert. Die Makrosicherheit schlägt zu, obwohl die Makrosicherheit von OpenOce.org auf Niedrig eingestellt ist. Dieses Problem konnte in dieser Arbeit nicht gelöst werden. Um
das Problem zu umgehen, muss das Dokument auf dem Dateisystem gespeichert
und neu geönet werden.
•
In der prototypischen Implementierung ist der Speicherort des Oce-Dokumentes,
welches als Anhang dem PAVONE Enterprise Oce Dokument zugeordnet wird,
fest deniert. Dies sollte durch eine variable Auswahl ersetzt werden.
5. Zusammenfassung
Das Hauptaugenmerk dieser Arbeit lag auf der Erarbeitung von möglichen Schnittstellenkonzepten, um einen Datenaustausch zwischen Groupware-basierten Applikationen und
Oce Suites zu ermöglichen. Nachdem der Kontext von Oce-Systemen im Bereich des
Oce-basierten Arbeitens abgegrenzt und eine begriiche Einordnung von Groupware
und Oce Suites gegeben wurde, folgte eine technische Betrachtung einiger GroupwareSysteme und Oce Suites. Zu den Groupware-Systemen zählten Microsoft Exchange,
IBM Lotus Notes, Novell GroupWise, Kolab und OX. Die Betrachtung der Oce Suites konzentrierte sich auf Microsoft Oce, OpenOce.org, Lotus SmartSuite und Lotus
Symphony. Es folgte das Re-Engineering der PAVONE OceGateway Schnittstelle, die als
Beispiel für den Datenaustausch zwischen Groupware-basierten Anwendungen und Oce
Suites ausgewählt wurde. Auf Basis der Re-Engineering Ergebnisse wurden Anforderungen
an das Konzept zum Datenaustausch zwischen Lotus Notes 8 und OpenOce.org deniert, die als Bewertungsgrundlage für die Erarbeitung der Konzeptansätze dienten. Der
konzeptionellen Erarbeitung der Konzeptansätze COMsource, LS2J + Web Service,
LS2J + Agent, Rhino + Web Service und Rhino + Agent, folgte eine Diskussion
dieser hinsichtlich ihrer Vor- und Nachteile im Hinblick auf die vorher festgelegten Anforderungen. Aufgrund der Vorteile, wie beispielsweise der guten Wirtschaftlichkeit oder der
hohen Flexibilität und somit einer guten Wartbarkeit und Portierbarkeit, sind die beiden Ansätze LS2J + Web Service, LS2J + Agent die geeignetesten Ansätze für eine
gute Lösung der OceGateway Schnittstelle. Im Kontext der prototypischen Implementierung wurde der LS2J Ansatz in Kombination mit einem Notes Agenten ausgewählt,
da er einfacher und schneller umzusetzen ist (Wirtschaftlichkeit). Die prototypische Implementierungsarbeit beschränkte sich auf das Starten der Oce Suite OpenOce.org
aus der Lotus Notes basierten Anwendung PAVONE Enterprise Oce heraus und auf
das Speichern des OpenOce.org Dokumentes als Anhang Im PAVONE Enterprise Oce
98
5. Zusammenfassung
99
Dokument. Ein weiterer Schwerpunkt lag auf dem Feldaustausch zwischen Lotus Notes
und OpenOce.org.
6. Ausblick
Da der Schwerpunkt dieser Arbeit auf der Erarbeitung von möglichen Schnittstellenkonzepten lag, wurde die Zeit für die praktische Implementierungsarbeit sehr stark eingeschränkt. Dadurch wurde der Konzeptansatz LS2J in Kombination mit einem Notes
Agenten nur ansatzweise prototypisch umgesetzt. Da am Anfang der prototypischen Entwicklungsarbeit in Absprache mit der PAVONE AG eine Prioritätenliste erstellt wurde,
konnte jedoch zielstrebig entwickelt werden. Im Folgenden ist noch einmal die Prioritätenliste zu sehen:
1. OpenOce.org aus Lotus Notes heraus starten
2. Zurückspeichern des Oce-Dokumentes als Anhang
3. Feldaustausch zwischen Lotus Notes und OpenOce.org
4. Export von Daten ins Oce-Dokument
5. Event-Handling
Die prototypische Implementierungsarbeit beschränkt sich auf das Starten der Oce Suite OpenOce.org aus der Lotus Notes basierten Anwendung PAVONE Enterprise Oce
heraus (Punkt 1), auf das Speichern des Oce-Dokumentes als Anhang in das Notes Dokument (Punkt 2) und auf den Feldaustausch zwischen Lotus Notes und OpenOce.org
(Punkt 3). Das Konzept ist nur an einigen Stellen in PAVONE OceGateway prototypisch implementiert worden und erhebt nur den Anspruch die Machbarkeit des Konzeptes
zu demonstrieren. Zum produktiven Einsatz fehlt die Implementierung des Exports von
Daten ins Oce-Dokument (Punkt 4) und das Event-Handling (Punkt 5). Von groÿer
Wichtigkeit ist jedoch die Integration des LS2J + Agent Ansatzes in die bestehende
PAVONE OceGateway Schnittstelle, um ein marktreifes Produkt zu erhalten. Der Auf-
100
6. Ausblick
101
wand kann mit einem Arbeitsaufwand von 1,5 Mannmonate abgeschätzt werden. Vorraussetzung für diese Abschätzung ist, dass der Entwickler schon Erfahrung mit der PAVONE
OceGateway Schnittstelle gesammelt hat.
Anhang
A. Eingesetzte Software
Windows
Betriebssystem: Windows XP
Groupware-System: Lotus Notes 8
Groupware-basierte Anwendung: PAVONE Enterprise Oce 9 (build 820)
Oce Suite: OpenOce V2.3.1 mit Java Runtime Environment (JRE)
Java Entwicklungsumgebung: Software Devolopment Kit (SDK) 2.3.0
Java Entwicklungswerkzeuge: Java Development Kit (JDK) 6 Update 5
Integrierte Entwicklungsumgebung: NetBeans 6.0.1 (komplett) mit OpenOce.org Plugin
Linux
Virtualisierung: VMware Server Console 1.0.1
1
Betriebssystem: SUSE Linux Enterprise Desktop 10
2
Groupware-System: Lotus Notes 8
Groupware-basierte Anwendung: PAVONE Enterprise Oce 9 (build 820)
Oce Suite: OpenOce V2.3.1 mit JRE
Java Entwicklungsumgebung: SDK 2.3.0
Java Entwicklungswerkzeuge: JDK 6 Update 5
Integrierte Entwicklungsumgebung: NetBeans 6.0.1 (komplett) mit OpenOce.org Plugin
1 Weitere Informationen und freier Download unter http://www.vmware.com/de/products/server/
2 weitere unterstütze Linux Distributionen sind Red Hat Enterprise Linux Desktop 4 und 5
102
Abbildungsverzeichnis
2.1.
Aufgliederung der Software in System- und Anwendungssoftware ([Abts und Mülder, 2004]
S.62) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.
Oce-Systeme im Kontext der Querschnittssoftware (Vgl. [Abts und Mülder, 2004]
S.62) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.
4
5
Softwarewerkzeuge der Anwendungsebene von Oce-Systemen (Vgl. [Abts und Mülder, 2004]
S.62) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2.4.
Kategorisierung der synchronen Kommunikationsdienste
. . . . . . . . . .
14
2.5.
Kategorisierung der asynchronen Kommunikationsdienste . . . . . . . . . .
17
2.6.
Workow-Managment aus IT-Sicht, Organisations-Sicht und BWL-Sicht
(Vgl. [Abts und Mülder, 2004] S.210)
2.7.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
Kategorisierung der Oce Suite Komponenten (Vgl. [Abts und Mülder, 2004]
S.194)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.
Eine typische Web Service Architektur (Vgl. [Ebel, 2005] S.395)
3.1.
Erstellung eines Serienbriefes mit Hilfe des Dokumenttyps Oce-Serienbrief
in PAVONE Enterprise Oce
3.2.
23
Kommunikation, Kooperation und Koordination (Vgl. [Fischer et al., 2002]
S.242)
2.8.
. . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
30
35
62
Bi-direktionaler Datenaustausch mithilfe der PAVONE OceGateway Schnittstelle zwischen PAVONE Enterprise Oce und OpenOce.org . . . . . . .
63
3.3.
Übersicht der Klassenrelationen der aktuellen OceGateway Implementation 64
3.4.
Softwarequalitätsmerkmale nach ISO 9126 (Vgl. [Abran et al., 2003] S.328)
3.5.
COMsource Ansatz: Linux Implementation der COMsource Technologie
zur Bereitstellung der COM Technologie
103
. . . . . . . . . . . . . . . . . . .
65
73
Abbildungsverzeichnis
3.6.
104
Funktionsweise der Ansätze LS2J und Rhino in Kombination mit einem
Web Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.
Funktionsweise der Ansätze LS2J und Rhino in Kombination mit einem
Agentenaufruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.
75
76
Implementierung des LS2J + Agent Ansatzes mit Zwischenschalten eines
Formaufrufes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
4.2.
Die prototypische Implementierung beschränkt sich auf das Oce-Dokument 89
4.3.
Klassendiagramm der Java Wrapper Klasse OOoStart . . . . . . . . . . .
4.4.
Der Zugri auf die Java Wrapper Klasse OOoStart ndet in dem ein-
90
gebetteten LotusScript Code in der Schaltäche Dokument über Vorlage
erstellen mittels LS2J statt
. . . . . . . . . . . . . . . . . . . . . . . . . .
91
4.5.
Aktivieren des Makros Module1 über das OceGateway Symbol . . . . .
93
4.6.
Oce-Dokumente als Anhang im PAVONE Enterprise Oce Dokument
gespeichert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
96
Tabellenverzeichnis
3.1.
Bewertung und Gewichtung der Qualitätskriterien . . . . . . . . . . . . . .
3.2.
Bewertung der Konzeptansätze hinsichtlich der relevanten Qualitätskriterien 84
105
71
Listingsverzeichnis
4.1.
Initialisierung der LotusScript Erweiterung LS2J . . . . . . . . . . . . . . .
90
4.2.
Starten von OpenOce.org und Önen der Oce-Vorlage
92
4.3.
Feldaustausch der Betrezeile zwischen Lotus Notes und dem Oce-Dokument 93
4.4.
Makro Module1 triggert Lotus Notes mittels eines Formaufrufes
4.5.
Triggern von OceGateway durch den LotusScript Agenten OOoTrigger
4.6.
Speichern des Oce-Dokumentes im PAVONE Enterprise Oce Dokument
. . . . . . . . .
. . . . .
beim Ausführen der Unterfunktion PostRecalc(..) . . . . . . . . . . . . . . . .
106
94
95
96
Literaturverzeichnis
[Abran et al., 2003]
Abran, A., Kheli, A., Suryn, W., und Seah, A. (2003). Usability
meanings and interpretations in ISO standards. Software Quality Journal, 11(4):325
338.
[Abts und Mülder, 2004]
Abts, D. und Mülder, W. (5.Auage 2004). Grundkurs Wirt-
schaftsinformatik: Eine kompakte und praxisorientierte Einführung. Vieweg & Sohn,
Braunschweig/Wiesbaden.
[Alby, 2007]
Alby, T. (2.Auage 2007). Web 2.0: Konzepte, Anwendungen, Technologien.
Hanser Verlag, München.
[Allan, 2001]
Allan, R. A. (2001). A History of the Personal Computer: The People and
the Technology. Allan Publishing, London, Ontario.
[Alpar et al., 2002]
2002).
Alpar, P., Grob, H. L., Weinmann, P., und Winter, R. (3.Auage
Anwendungsorientierte Wirtschaftsinformatik: Strategische Planung, Entwick-
lung und Nutzung von Informations- und Kommunikationssystemen. Vieweg & Sohn,
Braunschweig/Wiesbaden.
[Bergsten, 2002]
Bergsten, H. (2.Auage 2002). Java Server Pages. O'Reilly & Associates
Inc., Sebastopol.
[Berling et al., 2005]
2005).
Berling, B., Heinrich, B., Thrun, W., und Vogt, W. (8.Auage
Kaspers/Küfner Messen - Steuern - Regeln: Elemente der Automatisierungs-
technik. Vieweg & Sohn, Braunschweig/Wiesbaden.
[Berndt, 2005]
Berndt, T. (2005). OpenOce.org 2.0. O'Reilly Germany Verlag, Köln.
[Bühner, 2004]
Bühner, R. (10.Auage 2004). Betriebswirtschaftliche Organisationslehre.
Wissenschaftsverlag, Oldenbourg.
107
Literaturverzeichnis
108
Borland, J. (2007). IBMs Bürosymphonie. Technology Review.
[Borland, 2007]
//www.heise.de/tr/artikel/97038
[Brössler und Siedersleben, 2000]
http:
(Stand: 10.10.2007).
Brössler, P. und Siedersleben, J. (2000). Softwaretech-
nik: Praxiswissen für Software-Ingenieure. Carl Hanser Verlag, München/Wien.
[Coulouris et al., 2002]
Coulouris, G., Dollimore, J., und Kindberg, T. (3.Auage 2002).
Verteilte Systeme: Konzepte und Design. Pearson Studium, München.
[c't, 2005]
c't (2005). Netline veröentlicht Open-Xchange Server 5.
de/newsticker/meldung/58483
[De Korte, 2006]
http://www.heise.
(Stand: 12.04.2005).
De Korte, E. (2006). The GroupWise Powerguide: Get the Most Out of
Group Wise. Books4Brains.
[Dierker und Sander, 1998]
Dierker, M. und Sander, M. (1998).
Lotus Notes 4.6 und
Domino: Integration von Groupware und Internet. Addison-Wesley Verlag, Bonn.
[Drilling et al., 2000]
Drilling, T., Kobylinska, A., und Martins, F. (2000). Linux: Pro
Know-How. Data Becker, Düsseldorf.
[Ebel, 2005]
Ebel, N. (2005).
WebSphere Domino Workplace Administration: Anwen-
dungsplattformen integrieren. Addison-Wesley Verlag, Bonn.
[Ehlers, 1997]
Ehlers, P. (1997). Integriertes Projekt- und Prozessmanagement auf Ba-
sis innovativer Informations- und Kommunikationstechnologien: Das GroupProjektSystem. PhD thesis, Dissertation am Groupware Competence Center der Univerität
Paderborn.
[Elmasri und Navathe, 2002]
Elmasri, R. und Navathe, S. B. (3.Auage 2002). Grund-
lagen von Datenbanksystemen. Pearson Studium, München.
[Feilner, 2007]
Teil 1.
Feilner, M. (2007).
Linux-Magazin Online.
Die Platzhirsche - Übersicht Groupware-Server,
http://www.linux-magazin.de/online_artikel/
uebersicht_groupware_server_teil_1
[Fischer et al., 2002]
(Stand: 23.04.2008).
Fischer, J., Herold, W., Dangelmaier, W., Nastansky, L., und Suhl,
L. (3.Auage 2002). Bausteine der Wirtschaftsinformatik: Grundlagen, Anwendungen,
PC-Praxis. Erich Schmidt Verlag, Essen.
Literaturverzeichnis
[Flanagan, 2007]
109
Flanagan,
D.
Javascript: Das umfassende Referenzwerk.
(2007).
O'Reilly Germany Verlag, Köln.
Gibson, W. (2005). Flying Solo: A Survival Guide for the Solo and Small
[Gibson, 2005]
Firm Lawyer. American Bar Association.
Griel, F. (1998). Componentware. Konzepte und Techniken eines Soft-
[Griel, 1998]
wareparadigmas. dpunkt-Verlag, Heidelberg.
[Hansen und Neumann, 2005]
Hansen, H. R. und Neumann, G. (9.Auage 2005). Wirt-
schaftsinformatik I. Lucius & Lucius, Stuttgart.
[Head, 2008]
Head, J. (2008).
BP215 Integration of IBM Lotus Notes 8 with IBM
Lotus Symphony and OpenOce.org.
http://www.pcslisten.com/
Präsentation
enTouchCMS/FileUplFolder/BP215.pdf.
Hein, A. (1. Auage 2007). Web 2.0: Das müssen Sie wissen. Haufe Verlag.
[Hein, 2007]
[Hierlmeier, 2004]
Hierlmeier, E. (2004).
News.
Starkes Geschütz gegen Microsoft Exchange.
http://www.crn.de/showArticle.jhtml?articleID=
Computer
Reseller
184423677
(Stand: 09.12.2004).
Horst, B. (2004). The Tiny Guide To OpenOce.org. Hentzenwerke, Mil-
[Horst, 2004]
waukee.
Hunter, J. (1998). Java Servlet Programming. O'Reilly & Associates Inc.,
[Hunter, 1998]
Sebastopol.
[IBM, 2007a]
IBM
(2007a).
A
Whitepaper LOW10802-USEN-01,
preview
of
IBM
Lotus
Notes
8
software.
ftp://ftp.software.ibm.com/software/lotus/
lotusweb/product/notes/Hannover_white_paper.pdf.
[IBM, 2007b]
ding
on
IBM
the
USEN-00,
(2007b).
evolution
of
IBM
Lotus
people-centric
Notes
and
applications.
Domino
software:
Whitepaper
buil-
LOB10852-
ftp://ftp.software.ibm.com/software/lotus/pub/lotusweb/product/
domino/NDRoadmapBrochure.pdf.
[IBM, 2007c]
IBM
(2007c).
An
overview
of
the
IBM
productivity
tools.
Whi-
Literaturverzeichnis
tepaper,
110
ftp://ftp.software.ibm.com/software/lotus/pub/lotusweb/misc/IBM_
productivity_tools_overview.pdf.
[IBM, 2007d]
IBM (2007d). Neuerungen in IBM Lotus Notes und Lotus Domino 8. IBM.
Broschüre LOB10862-DEDE-00
ftp://ftp.software.ibm.com/software/emea/de/
lotus/LOB10862-DEDE-00_HR.pdf.
[IBM, 2008a]
IBM (2008a).
IBM Lotus SmartSuite 9.8.
software/lotus/products/smartsuite
[IBM, 2008b]
IBM (2008b).
http://www-306.ibm.com/
(Stand: 23.04.2008).
Freelance Graphics - Fact Sheet.
http://www-306.
ibm.com/software/lotus/products/smartsuite/freelancefeatures.html
(Stand:
23.04.2008).
[IBM, 2008c]
IBM
(2008c).
Lotus
Approach
-
Fact
Sheet.
http://www-306.
ibm.com/software/lotus/products/smartsuite/approachfeatures.html
(Stand:
23.04.2008).
[IBM, 2008d]
IBM (2008d). Lotus SmartSuite.
http://www-142.ibm.com/software/
dre/ecatalog/Detail.wss?locale=de_DE&synkey=U105945Z10099Y00
(Stand:
23.04.2008).
[ISO, 2001]
ISO (2001). ISO/IEC 9126 - Software product evaluation-quality characte-
ristics and guidelines for the user.
[Janowicz, 2005]
Janowicz, K. (2. Auage 2005). Sicherheit im Internet. O'Reilly Ger-
many Verlag, Köln.
[Jordan, 2001]
Jordan, P. D. (2001). Paralegal Studies: An Introduction. Delmar Cengage
Learning, New York.
[Jung, 2006]
Jung, J. (2006).
te. Computer Reseller News.
188102594
Groupware-Alternativen: Exchange auf der Abschusslis-
http://www.crn.de/showArticle.jhtml?articleID=
(Stand: 16.03.2006).
[Kahlbrandt, 2001]
Kahlbrandt, B. (2.Auage 2001). Software-Engineering mit der Uni-
ed Modeling Language. Springer Verlag, Berlin/Heidelberg.
Literaturverzeichnis
[Kirchmer, 1996]
111
Kirchmer, M. (1996). Geschäftsprozeÿorientierte Einführung von Stan-
dardsoftware: Vorgehen zur Realisierung strategischer Ziele. Gabler Verlag, Wiesbaden.
[Klöppner, 2007]
Klöppner, C. (2007).
Rechtsprobleme der IP-Telefonie.
LIT Verlag,
Münster.
[Klösch und Gall, 1995]
Klösch, R. und Gall, H. (1995). Objektorientiertes Reverse En-
gineering. Springer Verlag, Berlin/Heidelberg.
Koer, M. (3.Auage 2005). The Denitive Guide to MySQL. Apress.
[Koer, 2005]
[Koer und Öggl, 2005]
Koer, M. und Öggl, B. (2005). PHP: Hypertext Preprocessor
(PHP) 5 und MySQL 5. Pearson Studium, München.
[Koll, 2007]
parison.
Koll, K. (2007). OpenOce.org 2.x and Microsoft Oce 2007 Feature Com-
http://www.openoffice.org/product/docs/ms2007vsooo2.pdf.
[Kollmann, 2007]
Kollmann, T. (2007). Web 2.0: Trends und Technologien im Kontext
der Net Economy. Deutscher Universitäts-Verlag, Wiesbaden.
[Kor, 2006]
Kor, M. (2006). Projektmanagement: Management von Zeit, Ressourcen
und Kosten im Rahmen eines Projektes.
[Krause, 2002]
Krause, U. C. (2002). Novell GroupWise 6 - Leitfaden zur Installation,
Konguration und Systemverwaltung. Carl Hanser Verlag, München/Wien.
[Kroll, 2000]
Kroll, H. (2000). Rechnungswesen im Handwerk. Schlütersche.
[Kurose und Ross, 2002]
Kurose, J. F. und Ross, K. W. (2002). Computernetze. Pearson
Studium, München.
[Laguna de la Vera, 2007]
on. Whitepaper
Laguna de la Vera, R. (2007). Die Zukunft von Collaborati-
http://www.open-xchange.com/fileadmin/downloads/Future_of_
Collaboration_Deutsch.pdf.
[Lüders, 2001]
Lüders, C. (2001). Mobilfunksysteme. Vogel Buchverlag, Würzburg.
[Lieberwirth, 2004]
Lieberwirth, F. C. (2004).
Microsoft Certied Systems Engineer
(MCSE) Windows Server 2003 Active Directory-Infrastruktur.
lag, Bonn.
Addison-Wesley Ver-
Literaturverzeichnis
[Lotus, 1995]
112
Lotus (1995). Groupware: Communication, Collaboration, Coordination.
[Microsoft, 2007]
Microsoft (2007). Microsoft Exchange Server 2007.
microsoft.com/de-de/library/bb124558(EXCHG.80).aspx
[Microsoft, 2008a]
Microsoft (2008a).
FX101674041031.aspx
[Microsoft, 2008b]
(Stand: 23.04.2008).
Microsoft
Microsoft
[Microsoft, 2008e]
Microsoft
Microsoft
[Microsoft, 2008h]
http://office.microsoft.com/de-de/
(2008e).
(Stand: 23.04.2008).
http://office.microsoft.com/de-de/
(2008f ).
(Stand: 23.04.2008).
Microsoft (2008g).
HA101679411031.aspx
http://office.microsoft.com/de-de/suites/
(Stand: 23.04.2008).
publisher/HA100385691031.aspx
[Microsoft, 2008g]
http://office.microsoft.com/de-de/
(Stand: 23.04.2008).
infopath/HA101635771031.aspx
[Microsoft, 2008f ]
(Stand: 23.04.2008).
(2008c).
Microsoft (2008d).
HA101656431031.aspx
http://office.microsoft.com/de-de/
(2008b).
onenote/HA100325701031.aspx
[Microsoft, 2008d]
http://office.microsoft.com/de-de/suites/
(Stand: 23.04.2008).
Miedl, W. (2007).
(Stand: 23.04.2008).
Müller, J. (2004).
Computerwoche.
Microsoft setzt auf Collaboration.
http://www.computerwoche.de/heftarchiv/2007/07/1217901
[Müller, 2004]
http://office.
Microsoft (2008h). Microsoft oce enterprise 2007.
microsoft.com/de-de/suites/HA101656551031.aspx
[Miedl, 2007]
(Stand: 31.10.2007).
http://office.microsoft.com/de-de/suites/
communicator/HA102037151031.aspx
[Microsoft, 2008c]
http://technet.
Workow-based Integration.
(Stand: 05.02.2007).
Springer Verlag, Ber-
lin/Heidelberg.
[Ngo, 2007a]
paper
Ngo,
T.
(2007a).
Übersicht
über
Oce
Open
XML.
White-
http://www.ecma-international.org/news/TC45_current_work/OpenXML_
White_Paper_German.pdf.
[Ngo, 2007b]
Ngo,
T.
(2007b).
Oce
Open
XML
Overview.
Whitepaper
Literaturverzeichnis
113
http://www.ecma-international.org/news/TC45_current_work/OpenXML%
20White%20Paper.pdf.
[Noe, 2006]
Noe, M. (2006). Projektbegleitendes Qualitatsmanagement. Wiley-VCH Ver-
lag, Weinheim.
[Novell, 2005]
semitteilung,
Novell (2005).
Zahlreiche Neuerungen in Novell GroupWise 7.
http://www.novell.com/de-de/DE/news/press/novell_opens_the_
enterprise_for_cross_platform_collaboration_de-de
[Novell, 2006a]
ness Goals.
Pres-
Novell (2006a).
(Stand: 28.06.2005).
A Collaboration Solution That Supports Your Busi-
Business Whitepaper 462-DE2056-002
http://www.novell.com/rc/
docrepository/public/37/RC-23542/28634.pdf.
[Novell, 2006b]
Novell (2006b).
Open by Design - The Advantages of the OpenDocu-
ment Format (ODF). OASIS Whitepaper
http://www.oasis-open.org/committees/
download.php/21450/oasis_odf_advantages_10dec2006.pdf.
[Novell, 2007a]
tät
bei
Novell (2007a).
Workgroups.
Geschäftlicher Erfolg durch Auswahl und Flexibili-
Whitepaper
462-DE2056-002
http://www.novell.com/rc/
docrepository/public/37/basedocument.2007-03-14.9214224451/462DE2056_
de_de.pdf.
[Novell, 2007b]
Novell
(2007b).
Install
Guide.
http://www.novell.com/
documentation/gw7/pdfdoc/gw7_install/gw7_install.pdf.
[Open-Xchange, a]
Open-Xchange.
Open-Xchange
Server
5.
http://www.
open-xchange.com/DE/header/produkte/openxchange_server_5.html
(Stand:
23.04.2008).
[Open-Xchange, b]
Open-Xchange.
on for your company.
The powerful, next generation groupware soluti-
http://www.open-xchange.com/fileadmin/downloads/OX5_
FactSheet_EN.pdf.
[Ott, 1999]
Ott, M. (1999). Organization Design as a Groupware-supported Team Pro-
cess, Group-Orga - Participative and Distributed Organization Design for Oce information and Workow Management Systems. Kluwer Academic Publishers, Dordrecht,
The Netherlands.
Literaturverzeichnis
[PAVONE, 2007]
114
PAVONE
(2007).
PAVONE
OceGateway:
Leistungsüber-
http://www.pavone.de/pages.nsf/7b818bbcaa69e993c125714c002b1359/
sicht.
0d6c2d1d1836c724c125737c0049678c/$FILE/Leistungs%C3%BCbersicht_PAVONE_
OfficeGateway.pdf.
[PAVONE, 2008a]
PAVONE (2008a). PAVONE Enterprise Oce 9 - Administrations-
handbuch.
[PAVONE, 2008b]
PAVONE (2008b).
PAVONE Enterprise Oce 9 - Erste Schrit-
http://www.pavone.de/pages.nsf/7b818bbcaa69e993c125714c002b1359/
te...
31e7380d2ef68c2cc12573220030d058/$FILE/PAVONE%20Enterprise%20Office%
207.6_Erste%20Schritte.pdf.
Petzel, E. (2005). E-Finance: Technologien, Strategien und Geschäftsmo-
[Petzel, 2005]
delle. Gabler Verlag.
[Pte, 2008]
Pte
fentlicht.
(2008).
Lotus
Symphony:
Software
Development
Kit
veröf-
http://www.computerwoche.de/produkte_technik/software/1854741/
index.html
(Stand: 04.02.2008).
[Reese et al., 2003]
Reese, G., Yarger, R. J., und King, T. (2003). MySQL. O'Reilly &
Associates Inc., Sebastopol.
[Riempp, ]
Riempp, G. Wide Area Workow Management. Creating Partnerships for the
21st Century CSCW.
[S., 2001]
S., W. (2001).
woche, (42).
html
Star Oce 6 löst sich vom Microsoft-Vorbild.
Computer-
http://www.computerwoche.de/heftarchiv/2001/42/1071354/index.
(Stand: 19.10.2001).
[Schäer, 2002]
Schäer, S. (2002). Enterprise Java mit IBM WebSphere: Java Platform,
Enterprise Edition (J2EE)-Applikationen ezient entwickeln. Addison-Wesley Verlag,
Bonn.
[Schmidt und Wohlberg, 2007]
Schmidt, J. und Wohlberg, G. (2007). OpenOce.org 2.3
- Developer's Guide.
[Schütze, 2008]
Schütze,
E.
(2008).
Allgemeine
Betriebsdokumentation
für
Literaturverzeichnis
Kolab
Server
115
2.2.
Osnabrück,
1.0
edition.
http://www.kolab.org/doc/
Allgemeine-Betriebsdokumentation-KolabServer22_20080103_1.0.pdf.
[Schule mobil, 2007]
2.0.
Schule
mobil,
P.
(2007).
Einführung
in
OpenOce.org
www.linux-magazin.de/content/download/15528/108976/Steglich_
EinfuehrungOOo.pdf
[Schwichtenberg, 2001]
(Stand: 12.02.2008).
Schwichtenberg,
H.
(2001).
COM-Komponenten-Handbuch.
Addison-Wesley Verlag, Bonn.
[Schwichtenberg, 2005]
Schwichtenberg, H. (2005). Windows Scripting. Addison-Wesley
Verlag, Bonn.
[Schwichtenberg und Eller, 2004]
Schwichtenberg, H. und Eller, F. (2004). Programmie-
rung mit der .NET-Klassenbibliothek. Addison-Wesley Verlag, Bonn.
[Seufert, 1997]
Seufert, A. (1997).
Groupware enabled Data Warehouse: Management
Support für die professionelle Know-how Organisation Prüfungs- und Beratungsgesellschaft. Gabler Verlag, Wiesbaden.
[Stahlknecht und Hasenkamp, 2002]
Stahlknecht, P. und Hasenkamp, U. (2002). Einfüh-
rung in die Wirtschaftsinformatik. Springer Verlag, Berlin/Heidelberg.
[Stocksmeier, 2002]
Stocksmeier, T. (2002). Business-Webdesign: Benutzerfreundlichkeit,
Konzeptionierung, Technik, Wartung. Springer Verlag, Berlin/Heidelberg.
[Störmer, 2004]
Störmer, M. (2004). Open Source Groupware am Beispiel Kolab.
[Tenhumberg, 2007]
Tenhumberg, E. (2007). OpenOce: Community statt Featuritis.
Computerwoche, (7).
http://www.computerwoche.de/heftarchiv/2007/07/1217908
(Stand: 06.02.2007).
[Teufel et al., 1995]
Teufel, S., Sauter, C., Mühlherr, T., und Bauknecht, K. (1995). Com-
puterunterstützung für die Gruppenarbeit. Addison-Wesley Verlag, Bonn.
[Thalmayr, 2005]
Thalmayr, D. (2005). Umsatteln auf Linux. O'Reilly Germany Verlag,
Köln.
[Vahrenkamp, 2004]
Vahrenkamp, R. (5.Auage 2004). Produktionsmangement. Wissen-
schaftsverlag, Oldenbourg.
Literaturverzeichnis
[Voss, 2004]
116
Voss, A. (2004). Outlook für's Büro. Franzis Verlag, London, Ontario.
Wagner, M. (1995). Groupware und neues Management: Einsatz geeigne-
[Wagner, 1995]
ter Softwaresysteme für exiblere Organisationen. Vieweg & Sohn, Braunschweig/Wiesbaden.
[Weber, 1998]
c't, (11):62.
Weber, V. (1998). OS/2 Latecomer - Lotus SmartSuite for OS/2 Warp 4.
http://www.heise.de/ct/english/98/11/062/
[Webteam, 2007]
Webteam (2007).
(Stand: 12.1998).
The History of Notes and Domino.
www.ibm.com/developerworks/lotus/library/ls-NDHistory/index.html
http://
(Stand:
14.11.2007).
[Weiss, 2002]
Weiss, S. (3.Auage 2002). Handheld Usability. Wiley & Sons, Chichester.
[Zisman, 1996]
Zisman, A. (1996).
Lotus SmartSuite 96 challenges Microsoft Oce.
http://www.zisman.ca/Articles/1996/Smart96.html
[Zwahlen, 2004]
Zwahlen, C. (2004). Oce Programme.
ch/downloads2/Office_programme_mac.pdf.
(Stand: 05.2006).
http://www.zwahlendesign.