als PDF

Transcription

als PDF
Technische Universität München
Fakultät für Informatik
Diplomarbeit
Open-Source-Groupware
Überblick, Kategorisierung, Auswahl
und Installation
Jörg Geiger
Aufgabensteller: Prof. Dr. Johann Schlichter
Betreuer: Dr. Michael Koch
Abgabedatum: 15. April 2003
Ich versichere, dass ich diese Diplomarbeit selbständig verfasst und nur die angegebenen
Quellen und Hilfsmittel verwendet habe.
München, den 15. April 2003
Jörg Geiger
Inhaltsverzeichnis
Zusammenfassung
1
1
Einleitung
2
1.1
Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
1.2
Themenbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
1.3
Begriffsbildung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.4
Aktueller Bezug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2
Allgemeine Strukturierung
10
2.1
Klassische Ansätze . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.1.1
Raum-Zeit-Matrix . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.1.2
Anwendungsorientierte Funktionsklassen . . . . . . . . . . . . .
12
2.1.3
3K-Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
2.2
Probleme bei der Klassifizierung . . . . . . . . . . . . . . . . . . . . . .
17
2.3
Funktionale Strukturierung . . . . . . . . . . . . . . . . . . . . . . . . .
19
2.3.1
Nachrichtenaustausch . . . . . . . . . . . . . . . . . . . . . . .
21
2.3.1.1
Synchroner Nachrichtenaustausch . . . . . . . . . . . .
23
2.3.1.2
Asynchroner Nachrichtenaustausch . . . . . . . . . . .
26
2.3.2
Informations- und Dokumentenverarbeitung . . . . . . . . . . . .
27
2.3.3
Gruppenplanung . . . . . . . . . . . . . . . . . . . . . . . . . .
29
Grenzen der funktionalen Strukturierung . . . . . . . . . . . . . . . . . .
30
2.4
ii
INHALTSVERZEICHNIS
iii
3
Rahmenbedingungen des Groupware-Einsatzes
32
3.1
Aufwand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3.1.1
Einführungs-Aufwand . . . . . . . . . . . . . . . . . . . . . . .
34
3.1.2
Installations-Aufwand . . . . . . . . . . . . . . . . . . . . . . .
35
3.1.3
Wartungs-Aufwand . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.2
Kosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
3.3
Bedienbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
3.4
Erweiterbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
3.5
Flexibilität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
3.6
Integrierbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
3.7
Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
3.8
Skalierbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
3.9
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4
Web-basierte Open-Source-Groupware
45
4.1
Auswahlkriterien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
4.2
Testschema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
4.3
Backtalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
4.3.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
47
4.3.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
48
4.3.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
4.3.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
51
4.3.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
4.3.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
Discus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
4.4.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
52
4.4.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
53
4.4.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
4.4
INHALTSVERZEICHNIS
4.5
4.6
4.7
4.8
iv
4.4.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
54
4.4.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
4.4.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
Extropia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
4.5.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
57
4.5.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
57
4.5.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
4.5.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
58
4.5.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
4.5.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
IntranetSuite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
4.6.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
60
4.6.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
61
4.6.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
4.6.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
62
4.6.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
4.6.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
Moregroupware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.7.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
64
4.7.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
64
4.7.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
4.7.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
66
4.7.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
4.7.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
phpCollab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
4.8.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
69
4.8.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
69
INHALTSVERZEICHNIS
v
4.8.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
4.8.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
71
4.8.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
4.8.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
phpGroupware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
73
4.9.1
Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
73
4.9.2
Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
73
4.9.3
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
73
4.9.4
Start und Administration . . . . . . . . . . . . . . . . . . . . . .
76
4.9.5
Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
76
4.9.6
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
4.10 PHPNuke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
4.10.1 Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
79
4.10.2 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
79
4.10.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
4.10.4 Start und Administration . . . . . . . . . . . . . . . . . . . . . .
81
4.10.5 Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
4.10.6 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
4.11 PHProjekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
82
4.11.1 Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
82
4.11.2 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
83
4.11.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
4.11.4 Start und Administration . . . . . . . . . . . . . . . . . . . . . .
84
4.11.5 Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
4.11.6 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
4.12 TUTOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
4.12.1 Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
86
4.9
INHALTSVERZEICHNIS
vi
4.12.2 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
87
4.12.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
87
4.12.4 Start und Administration . . . . . . . . . . . . . . . . . . . . . .
89
4.12.5 Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
4.12.6 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
4.13 WikiWeb - Beispiel phpWiki . . . . . . . . . . . . . . . . . . . . . . . .
90
4.13.1 Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
91
4.13.2 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
91
4.13.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
4.13.4 Start und Administration . . . . . . . . . . . . . . . . . . . . . .
93
4.13.5 Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
4.13.6 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
94
4.14 Zope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
94
4.14.1 Entwicklung und Vitalität . . . . . . . . . . . . . . . . . . . . .
95
4.14.2 Voraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . .
95
4.14.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
4.14.4 Start und Administration . . . . . . . . . . . . . . . . . . . . . .
96
4.14.5 Funktionalität . . . . . . . . . . . . . . . . . . . . . . . . . . . .
98
4.14.6 Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
98
5
Einsortierung der Open-Source-Groupware
100
6
How-Tos für Standard-Probleme
102
6.1
Einrichtung eines LAMP-Systems . . . . . . . . . . . . . . . . . . . . . 103
6.1.1
Linux-Installation . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.1.2
MySQL-Installation . . . . . . . . . . . . . . . . . . . . . . . . 104
6.1.3
Apache-Installation . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.1.4
PHP-Installation . . . . . . . . . . . . . . . . . . . . . . . . . . 107
INHALTSVERZEICHNIS
6.2
Szenario 1 - Die benachbarte Gruppe . . . . . . . . . . . . . . . . . . . . 108
6.2.1
6.3
Die Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Szenario 3 - Die Interessengruppe . . . . . . . . . . . . . . . . . . . . . 110
6.4.1
7
Die Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Szenario 2 - Die verteilte Gruppe . . . . . . . . . . . . . . . . . . . . . . 109
6.3.1
6.4
vii
Die Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Fazit
112
7.1
Abschließende Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.2
Alternativen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.3
Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Abbildungsverzeichnis
116
Tabellenverzeichnis
117
Literaturverzeichnis
118
Zusammenfassung
Rechnergestützte Gruppenarbeit ist zwar noch ein recht junges Forschungsgebiet, es als
brandneu zu bezeichnen, täte ihm aber Unrecht. Groupware hingegen, also Systeme, die
diese Art der Zusammenarbeit erlauben, erleben seit Ende der 90er Jahre einen Boom.
Die professionellen Nutzer von Groupware, etwa Firmen und Universitäten, setzen dabei
meist proprietäre Lösungen ein. Die bekanntesten stammen von Microsoft und Lotus.
Der Schluss liegt nahe, statt einer proprietären Groupware-Lösung die offene Infrastruktur des Internet für die Zusammenarbeit zu nutzen. Aus diesem Gedanken sind die so
genannten Web-basierten Groupware-Systeme entstanden. Besonders interessante Entwicklungen gibt es in diesem Bereich bei Open-Source-Projekten.
In den letzten Jahren haben sich immer mehr Projekte gegründet, die oftmals in kreativem
Chaos arbeiten. Es gibt durchaus brauchbare Lösungen; die passende zu finden erfordert
aber viel Aufwand. Ein Aufwand, der in der Praxis meist zu groß ist.
Diese Arbeit soll eine Hilfestellung bei der Auswahl und Installation von Open-SourceGroupware geben; dabei ist die Sicht auf rein Web-basierte Lösungen eingeschränkt.
Diese Systeme zeichnen sich dadurch aus, dass sie zur Bedienung lediglich einen WebBrowser erfordern und so besonders flexibel einsetzbar sind.
1
Kapitel 1
Einleitung
1.1
Motivation
Laut einer Studie des Marktforschungsinstituts IDC wurden im Jahr 2002 täglich 12,56
Milliarden E-Mails verschickt, die ausschließlich geschäftlichen Zwecken dienten. Das
heißt, unerwünschte Spam-Mails sind aus dem Aufkommen bereits herausgerechnet. Die
Prognose für die kommenden Jahre sagt eine erhebliche Steigerung voraus: Im Jahr 2003
sollen bereits durchschnittlich 15,8 Milliarden E-Mails pro Tag verschickt werden, 2004
soll die Anzahl elektronischer Postmitteilungen auf 18,14 Milliarden steigen und 2005
muss mit 19,75 Milliarden gerechnet werden. Die Studie schließt mit einer Prognose für
2006, dann sollen bereits 21,08 Milliarden E-Mails pro Tag für geschäftliche Zwecke
versendet werden.
Die Gründe für den Anstieg sind vielfältig: Die Verbreitung von Internet-Anschlüssen
nimmt auch im Geschäftsbereich noch zu. Das bedeutet, dass immer mehr Firmen Ihren
Mitarbeitern die Möglichkeit geben, E-Mails zu versenden. Das führt wiederum zu einer immer größer werdenden Akzeptanz der elektronischen Postmitteilungen, etwa auch
bei Behörden. Auch die Computer-Nutzung selbst wird immer selbstverständlicher, der
Rechner tritt also auch immer mehr als Werkzeug der Zusammenarbeit in den Vordergrund und das Mittel Nummer eins zur rechnergestützten Kommunikation ist heutzutage
E-Mail.
E-Mail ist zweifellos ein gutes Mittel für den asynchronen Nachrichtenaustausch zwischen zwei Teilnehmern, also bei der 1 : 1-Kommunikation. Auch 1 : n- und n : 1-Kommunikation funktionieren. Das ist dann der Fall, wenn ein Absender seine E-Mail an mehrere Empfänger schickt und von Empfängerseite wieder geantwortet wird. Problematisch
wird es dann, wenn die angesprochenen Personen Rückfragen haben, oder gar ein Gruppentermin per E-Mail festgelegt werden soll. Die Folge ist eine verwirrende Menge von
E-Mails mit Antworten und Antworten auf Antworten und so weiter. Das mag ein weiterer
2
KAPITEL 1. EINLEITUNG
3
Abbildung 1.1: IDC-Studie täglich verschickter E-Mails
wichtiger Grund für das hohe E-Mail-Aufkommen sein. Oftmals ist E-Mail das einzige
Mittel, das für die rechnergestützte Kommunikation in Gruppen zur Verfügung steht; dabei ist es nicht immer optimal geeignet.
Für schnellen synchronen Nachrichtenaustausch gibt es etwa so genannte Messenger,
diese simulieren ein Gespräch über eine Textkonsole. Außerdem gibt es ConferencingSysteme, die sogar Video- oder Audio-Kommunikation über den Rechner erlauben und
ein reales Zusammentreffen von Personen nachahmen. Für die Einhaltung von Terminen
eignen sich Gruppenkalender, und Projektplaner helfen dabei, auch komplexere Gruppenarbeiten zu strukturieren. Eine Alternative zu lästigen E-Mail-Attachments ist FileSharing und Gruppeneditoren gewährleisten die Datenintegrität wenn mehrere Benutzer
an derselben Datei arbeiten wollen.
Viele Aufgaben, die häufig nur unzureichend per E-Mail abgewickelt werden, können also von anderen Programmen besser erledigt werden. Die oben genannten Systeme fallen
unter den Oberbegriff Groupware. Das sind Systeme, die rechnergestützte Zusammenarbeit unterstützen. Für diesen Zweck gibt es zwar bereits kommerzielle Software, etwa
Lotus Notes oder Microsoft Exchange; besonders interessant, flexibel, sicher, robust und
kostenlos präsentieren sich aber Open-Source-Lösungen, für deren Klassifizierung, Auswahl und Installation diese Arbeit ein Leitfaden sein soll.
KAPITEL 1. EINLEITUNG
1.2
4
Themenbeschreibung
Die Notwendigkeit von rechnergestützter Gruppenarbeit ist keine neue Erkenntnis. Eigentlich ist in der Praxis meist klar, welche Funktionen für die Zusammenarbeit in Gruppen gewünscht sind, den Rückschluss auf die passende Groupware-Lösung und das Finden der entsprechenden Software schaffen aber die Wenigsten. Das liegt einerseits daran,
dass viele Software-Produkte in den letzten Jahren mit Groupware-Funktionalität geworben haben, die mehr versprachen als tatsächlich dahinter steckte. Andererseits haben sich
mit Microsoft Exchange und Lotus Notes proprietäre Groupware-Lösungen als Standard
etabliert, die viele Nachteile aufweisen. Der Stand der Dinge ist also, dass einerseits
der Begriff Groupware nicht klar ist und andererseits kein Überblick über tatsächlich
vorhandene Lösungen existiert. Für Universitäten und Unternehmen stellen sich zum
Thema Groupware viele Fragen, die diese Diplomarbeit praxisnah und auch für NichtSpezialisten beantworten soll.
Hauptziel der Arbeit ist es, eine Hilfestellung bei der Auswahl und Installation freier Groupware-Lösungen für Standardaufgaben zu geben.
Diese Diplomarbeit soll zuerst kurz in die Thematik von Groupware und das Themengebiet CSCW (Computer Supported Cooperative Work) einführen. Dabei soll zunächst ein
klarer Eindruck davon entstehen, was Groupware eigentlich ist. Aktuelle Beispiele und
Zahlen über den Einsatz von Groupware stellen den Bezug zur Praxis her.
Am Anfang soll eine allgemeine Kategorisierung und Strukturierung von GroupwareAnwendungen vorgenommen werden. Dazu werden klassische Einteilungen der CSCWForschung vorgestellt und herausgearbeitet, wo ihre Stärken und Schwächen liegen. Dabei ist es die Aufgabe eine geeignete Einteilung zu finden. Denkbar wäre ein klassischer
Ansatz, etwa eine funktionale Einteilung. Eine Kombination aus mehreren Sichtweisen,
also ein pragmatischer Ansatz, ist erstrebenswert. Es ist zu berücksichtigen, dass die Zielgruppe nicht aus Groupware-Spezialisten besteht, sondern konkrete Lösungswünsche für
die Praxis benötigt werden. Die Strukturierung soll eine Grundlage für die Ableitung von
weiteren Anforderungen an Groupware-Lösungen bilden. Außerdem sollen zusätzliche
Randbedingungen erarbeitet werden, aus denen sich Kriterien für zweckmäßige Lösungen ableiten lassen. Etwa bietet es sich aus Gründen der einfachen Bedienbarkeit, leichteren Wartung und Plattformunabhängigkeit an, ausschließlich Lösungen zu betrachten,
die Client-seitig über einen Web-Browser bedient werden können und keine zusätzliche Software-Installation erfordern. Außerdem soll die nötige Software frei verfügbar,
also kostenlos und wenn möglich erweiterbar sein; in der Aufgabenstellung sind die
Groupware-Systeme deshalb auf Open-Source-Programme eingeschränkt.
KAPITEL 1. EINLEITUNG
5
Nachdem die Anforderungen geklärt sind, soll der aktuelle Stand bei offenen und freien
Groupware-Plattformen erhoben werden. Die gefundenen Lösungen sollen auf ihre Tauglichkeit getestet und bewertet werden. Es soll die Frage beantwortet werden, welche Voraussetzungen erfüllt sein müssen: zum Beispiel ob ein vorinstallierter Web-Server zum
Betrieb der Groupware nötig ist, oder ob ein spezieller Interpreter eingerichtet sein muss.
Dabei ist anzumerken, dass es sich nicht um einen Vergleichstest von CSCW-Systemen
handelt, sondern jedes System einzeln und objektiv betrachtet wird. Die erhaltenen Resultate, also etwa Probleme bei der Installation oder besondere Anforderungen sollen dokumentiert werden. Wichtig ist die praktische Auseinandersetzung mit den vorhandenen
Lösungen. Die gefundenen Groupware-Programme sollen in die zuvor erarbeitete Kategorisierung eingeordnet werden.
Aus den gewonnenen Erkenntnissen sollen Vorschläge erarbeitet werden, welche Groupware-Lösungen für typische Standardaufgaben am besten geeignet sind. Diese sollen als
eine Art How-To verfügbar sein.
Die Arbeit wird mit einem Fazit abgeschlossen, in dem eine abschließende Bewertung,
Kritik und Ausblick über die behandelte Thematik enthalten ist.
Außer der üblichen Ausarbeitung soll zusätzlich eine Web-Dokumentation erstellt werden, die die Standardprobleme mit How-Tos für den Groupware-Einsatz enthält, um für
die Praxis einen kurzen Leitfaden an der Hand zu haben.
1.3
Begriffsbildung
Tippt man den Begriff Groupware“ in eine Internet-Suchmaschine ein, so wird man von
”
der Anzahl der gefundenen Web-Seiten förmlich erschlagen. Allein Google liefert auf Anhieb etwa 581.000 gefundene Beiträge zum Stichwort Groupware“. Die weite Verbrei”
tung des Begriffs liegt wohl daran, dass Ende der 90er Jahre Groupware ein Modewort der
Software-Branche war, ähnlich wie heute das Schlagwort Web-Dienste“ durch die Welt
”
geistert, ohne dass sich Software-Hersteller Gedanken über die eigentliche Bedeutung des
Begriffs machen, denn konkrete Definitionen gibt es sehr wohl dafür.
Um zu verstehen was Groupware eigentlich ist, sollte man auf die Ursprünge zurückgehen. Dabei trifft man automatisch auf den Begriff Computer Supported Cooperative
Work, kurz CSCW. Groupware und CSCW werden oft fälschlicherweise als Synonyme
gebraucht, dabei gibt es eindeutige Begriffsabgrenzungen. In [2] findet sich eine Auswahl anderer gebräuchlicher Begriffe für CSCW. Beispiele sind Workgroup Computing,
Collaborative Computing oder Computer-Mediated Communication.
Beide Begriffe, CSCW und Groupware, wurden in den frühen 80er Jahren geprägt. Ihnen
liegt der Begriff Gruppenarbeit“ zu Grunde. Nach [4] versteht man unter Gruppenar”
beit die Summe aller aufgabenbezogenen Tätigkeiten, welche von Gruppenmitgliedern
KAPITEL 1. EINLEITUNG
6
ausgeführt werden, um zielbezogene Aufgaben zu erfüllen und somit Gruppenziele zu
erreichen.
In dieser Arbeit wird CSCW im Sinne von Greif und Cashman verwendet. In [2] ist das
folgendermaßen formuliert:
CSCW bezeichnet die theoretischen Grundlagen bzw. die Methodologien
”
für Gruppenarbeit und deren Computerunterstützung“.
CSCW ist auch die Bezeichnung für ein Forschungsgebiet, im deutschsprachigen Raum
wird es oft Computerunterstützte Gruppenarbeit“ oder Rechnergestützte Gruppenar”
”
beit“ genannt. Computergestützte Gruppenarbeit ist disziplinübergreifend; es verschmilzt
”
Informatik, Kommunikationstechnik, Informationssysteme, Soziologie und Organisationstheorie“.
Um die Groupware-Definition vollständig zu verstehen, ist der in der Informatik übliche
Begriff eines Systems wichtig. Unter einem System versteht man nach [6] die Zusammenfassung mehrerer Komponenten zu einer als Ganzes aufzufassenden Einheit. Die Komponenten können von gleicher Art oder sehr unterschiedlich sein. Ein Computer-System
kann etwa die Zusammensetzung von einem Hard- und Software-System sein. Ein System
löst oder bearbeitet in der Regel ein wohldefiniertes Bündel von Aufgaben.
Im Unterschied zu CSCW bedeutet Groupware nach [2]:
Groupware bezeichnet Systeme, die Gruppenarbeit unterstützen; deren
”
Realisierung integriert die theoretischen Grundlagen spezifiziert im Rahmen von CSCW“.
Im Vordergrund stehen also die Aspekte einer gemeinsamen Aufgabe. Als Synonym für
Groupware kann CSCW-System verwendet werden. Zwar ist diese abstrakte Definition
für wissenschaftliches Arbeiten sehr gut geeignet, sie bringt aber auch Nachteile: Es sollte
unmittelbar einsichtig sein, dass unter die bisher vorgenommene Charakterisierung von
Groupware sehr viele Systeme unterschiedlichster Couleur fallen. Eine Herausforderung
an diese Arbeit ist deren Strukturierung in Abschnitt 2.3.
Einige zusätzliche Charakteristika sollen dabei helfen, den Begriff der CSCW-Systeme
zu festigen und einzuschränken: Nach Ellis gilt, dass CSCW-Systeme zusätzlich eine
Schnittstelle zu einer gemeinsamen Umgebung bereitstellen. Mit der oben eingeführten
Erkenntnis der gemeinsamen Aufgabe lässt sich ein erstes Spektrum abbilden.
KAPITEL 1. EINLEITUNG
7
Abbildung 1.2: Aufgaben-Umgebung-Spektrum
In Abbildung 1.21 ist ein Koordinatensystem zu sehen, das aus den Achsen gemeinsa”
me Aufgabe“ und gemeinsame Umgebung“ besteht. In das Koordinatensystem werden
”
bestehende Groupware-Produkte eingeordnet. Auf den ersten Blick sieht man, dass es
viele Systeme gibt, die alle der Groupware-Definition genügen. Trotzdem stellen sie sehr
unterschiedliche Funktionalitäten zur Verfügung.
Ein weiteres Merkmal von Groupware ist, dass Gruppenmitglieder nicht voneinander isoliert sind, sie werden sogar explizit über ihre gegenseitige Existenz informiert. In der Terminologie der CSCW-Systeme, etwa in [2] Abschnitt 2.6.5, wird dieses Merkmal auch als
Gruppenbewusstsein oder englisch Group Awareness“ bezeichnet.
”
In der Aufgabenstellung ist explizit von der Untersuchung von Open-Source-Groupware
die Rede. Der Begriff Open-Source“ wird in diesem Zusammenhang als Gegensatz zu
”
proprietärer Software verwendet. Dabei wird nicht, wie in der Praxis üblich, zwischen
Open-Source und freier Software unterschieden, wie es die Free Software Foundation2
fordert. Open-Source-Software ist in dieser Arbeit durch zwei Charakteristika gekennzeichnet:
Die Software ist frei im doppelten Sinn, einmal im Sinne von ”kostenlos
erhältlich” und und einmal im Sinne von ”der Quelltext ist einsehbar und
darf verändert werden”.
1 vgl.
2 Die
[2] Abschnitt 2.6.5
FSF ist eine Organisation, die hinter der Entwicklung des GNU Projekts steht
KAPITEL 1. EINLEITUNG
8
Mehr zu dieser Thematik findet sich bei Eric S. Raymond3 und in den Bestimmungen der
GNU General Public License.
1.4
Aktueller Bezug
Der Groupware-Markt ist für eine Software-Gattung noch ziemlich jung; der Begriff hat
sich erst Mitte der 80er gefestigt. Momentan dominieren klar die proprietären Systeme.
Nach einer Studie von IDC setzten Unternehmen im Jahr 2001 zu 45 Prozent auf Lotus Notes, 23 Prozent setzten Outlook und Exchange von Microsoft ein und weitere 11
Prozent setzten auf Novells Groupwise, alles proprietäre Plattformen. Die restlichen 21
Prozent verwendeten andere CSCW-Systeme, darunter auch Open-Source-Lösungen.
Die Marktforscher der Radiki Group4 verfolgen den Kampf auf dem kommerziellen Groupware-Markt durch die Anzahl der auf dem Markt befindlichen Lizenzen. Demnach gibt
es etwa 73 Millionen Exchange-Lizenzen, bei Notes kommen die Marktforscher auf weniger, 68 Millionen. Zählt man die noch ausstehenden Linzenzkäufe hinzu, das sind bei
Exchange rund 80 Millionen und bei Lotus etwa 70 Millionen Ende 2002, so hat sich im
vergangenen Jahr Microsoft auf Platz eins im Groupware-Markt festgesetzt.
Momentan kann man einen hohen Anstieg der Open-Source-Projekte im GroupwareMarkt erkennen. Es lassen sich derzeit (Stand Anfang 2003) etwa 100 verschiedene Programme finden, die die Groupware-Definition erfüllen. Etwa 60 Prozent davon wurden
seit 2000 gestartet.
Der Trend zu Open-Source-Software in der Industrie und in öffentlichen Verwaltungen
nimmt aus vielen Gründen zu, drei davon sollen besonders hervorgehoben werden: Zum
einen hilft das Open-Source-Modell Kosten zu senken, da keine Lizenzkosten im klassischen Sinn fällig werden. Zum anderen ist man beim Einsatz von Open-Source-Software
nicht abhängig von einem Hersteller und die Software lässt sich flexibel an die eigenen
Bedürfnisse anpassen.
Open-Source-Software ist zum Synonym geworden für Flexibilität und Kostenbewusstsein. Das Private Public Partnership des IT-Dienstleisters Materna GmbH und dem Marketing-Lehrstuhl der Uni Dortmund, IT-Surveys, hat die aktuelle Diskussion zum Anlass genommen und in einer qualitativen Befragung die Verbreitung von Open-Source-Software
untersucht und hinterfragt, wie IT-Entscheider den Einsatz von Open-Source-Lösungen
beurteilen. Die Ergebnisse der Kurzstudie zeigen deutlich, dass die Bedeutung von OpenSource-Software in den nächsten Jahren weiter zunehmen wird. Die Vorteile offener Systemwelten überwiegen, so die einhellige Meinung der befragten IT-Entscheider. Kosten,
Flexibilität, Unabhängigkeit sowie Sicherheit sprechen deutlich für die stärkere Nutzung
3 Sein
4 ein
Buch The Cathedral and the Bazaar“ gilt als Bibel der Open-Source-Bewegung
”
kalifornisches Forschungsinstitut
KAPITEL 1. EINLEITUNG
9
von OSS. Die vollständigen Ergebnisse können unter www.it-surveys.de nachgelesen
werden.
Mit Hilfe von qualitativen Leitfadeninterviews wurden 30 deutsche Anwenderunternehmen zu ihren OSS-Erfahrungen befragt. Es sollte herausgefunden werden, ob OSS sich
heute schon als eine echte Alternative zu herkömmlichen Systemwelten erweist. Die qualitative Studie dient einer ersten Einschätzung des Potenzials von Open-Source-Lösungen im Business-Bereich. Es stehen weniger generalisierbare Ergebnisse im Vordergrund,
sondern es soll ein vertiefender Einblick in den Problemkreis gegeben werden. Häufigster
Einsatzzweck waren bei den Befragten der Server-Bereich sowie Internet-Anwendungen
und -Dienste. Die Befragten gehen davon aus, dass in Zukunft sowohl die Verbreitung
als auch die Einsatzbereiche zunehmen werden. Damit bestätigt die qualitative Befragung die Online-Umfrage, die IT-Surveys im Herbst letzten Jahres zum gleichen Thema
durchgeführt hat.
Auch in der öffentlichen Verwaltung trifft der Einsatz von Open-Source-Software auf
breite Zustimmung. Beispielsweise entschied sich das Beschaffungsamt des Bundesinnenministeriums (BMI) für den Einsatz einer Groupware-Lösung auf Basis von Linux.
Kapitel 2
Allgemeine Strukturierung
In diesem Kapitel geht es um die allgemeine Strukturierung und Klassifizierung von
Groupware-Anwendungen. Das hat nicht nur theoretischen Nutzen, denn die Einteilung
dient auch als Orientierungshilfe für die Auswahl der richtigen Groupware-Applikation.
Dabei werden zuerst klassische Ansätze zur Strukturierung (2.1) vorgestellt, die sich in
der CSCW-Forschung etabliert haben. Anhand dieser Klassifizierungen sollen die Probleme einer umfassenden Strukturierung aufgezeigt werden, und Vor- und Nachteile der
bestehenden Ansätze herausgearbeitet werden (2.2). Als Grundlage dieser Arbeit dient
eine eigene funktionale Klassifizierung von CSWC-Systemen (2.3), die vor allem praxisrelevante Züge aufweist, und auch für Nicht-Informatiker leicht zu verstehen ist. In
Kapitel 5 werden die gefundenen Open-Source-Groupware-Systeme in die Klassifikation
eingeordnet. Zum Abschluss dieses Kapitels werden die Grenzen der funktionalen Einteilung diskutiert (2.4).
2.1
Klassische Ansätze
Eine gültige Klassifizierung von CSCW-Systemen zu finden, ist eine besondere Herausforderung: Die abstrakte Begriffs-Definition von ”Groupware” hat zur Folge, dass eine
Vielzahl von Anwendungen unterschiedlichster Natur als Groupware gelten und somit
zur Einteilung vorliegen. Dabei soll die Kategorisierung dieses weite Feld nicht nur abdecken, sondern auch möglichst redundanzfrei sein, dazu flexibel, also erweiterbar oder
reduzierbar. Im Idealfall ist die Strukturierung auch noch übersichtlich und bietet eine gute Hilfestellung bei der Suche nach einer bestimmten Groupware. Die eine, einzige und
vollständige Einteilung gibt es noch nicht. In der CSCW-Forschung existieren mehrere
mögliche Strukturierungen nebeneinander. Jeder Ansatz setzt unterschiedliche Schwerpunkte und ist je nach Anwendungsfall passender. Im Folgenden sollen die bedeutendsten
Klassifizierungen von CSCW-Systemen vorgestellt werden: Raum-Zeit-Matrix (2.1.1),
10
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
11
Anwendungsorientierte Funktionsklassen (2.1.2) und 3K-Modell (2.1.3).
2.1.1
Raum-Zeit-Matrix
Die Raum-Zeit-Matrix geht auf Robert Johansen zurück und ist eine zweidimensionale
Betrachtung von CSCW-Systemen: Einerseits wird davon ausgegangen, dass die Gruppenmitglieder, die ein Groupware-System einsetzen, räumlich verteilt arbeiten. Das heißt,
es kommt darauf an, ob sie benachbart oder entfernt arbeiten; das kann vom gleichen
Büro, über die gleiche Etage in einem Gebäude bis zu verschiedenen Kontinenten reichen.
Andererseits spielt auch die zeitliche Verteilung eine Rolle: Arbeiten die Benutzer eines
CSCW-Systems zur gleichen Zeit, oder zu verschiedenen Zeiten? So werden synchrone
und asynchrone Systeme unterschieden, was zu einer Vier-Felder-Matrix führt:
Abbildung 2.1: Die Raum-Zeit-Matrix nach Robert Johansen
In die Raum-Zeit-Matrix aus Abbildung 2.1 werden die CSCW-Systeme eingeordnet, was
zunächst eine gewisse Übersichtlichkeit schafft. Bei genauerer Betrachtung stellt man jedoch schnell fest, dass einige Systemkategorien nicht eindeutig in eines der vier Felder
eingeordnet werden können. Ein Beispiel hierfür sind die Gruppeneditoren, die es mit
synchroner Funktionalität gibt, so genannte Realzeiteditoren, und auch in asynchroner
Form, also Editoren mit Benachrichtigung. Darüber hinaus ist auch die räumliche Verteilung bei Gruppeneditoren nicht eindeutig, Gruppeneditoren stehen in der Regel geographisch benachbarten und entfernten Benutzern gleichermaßen zur Verfügung. Nach
12
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
[1] ist jedoch zu betonen, dass diese Klassifizierung nicht im Sinne einer Eingrenzung
”
und Abgrenzung angesehen werden darf. Die einzelnen Kategorien können bestenfalls
Systemkomponenten aufnehmen, da ein umfassendes CSCW-System den Anforderungen
aller vier Quadranten genügen muss“.
Jonathan Grudin, heute Mitarbeiter bei Microsoft, erweiterte die Vier-Felder-Matrix von
Johansen zu einer Neun-Felder-Matrix, indem er den zusätzlichen Parameter ”Vorhersehbarkeit” einführte. Daraus ergibt sich für die geographische Komponente folgende Aufteilung: ”Gleicher Ort”, ”verschiedener Ort vorhersehbar” und ”verschiedener Ort nicht
vorhersehbar”. Bei der zeitlichen Komponente unterschied er analog nach ”synchron”,
”asynchron vorhersehbar” und ”asynchron nicht vorhersehbar”. Damit ergibt sich folgende erweiterte Raum-Zeit-Matrix:
Raum/Zeit
gleiche Zeit
(synchron)
gleicher Ort
verschiedener Ort
vorhersehbar
face-to-faceSitzung
Videokonferenz
verschiedener Ort
nicht vorhersehbar
Mobilfunkkonferenz
verschiedene Zeit
(asynchron)
vorhersehbar
nicht vorhersehbar
schwarzes Brett“
Schichtarbeit
”
E-Mail
Nicht-RealzeitRechnerkonferenz
kollaboratives
Verfassen von
Dokumenten
Vorgangsbearbeitung
Tabelle 2.1: Erweiterte Raum-Zeit-Matrix nach Grudin.
Die in Tabelle 2.1 dargestellte erweiterte Raum-Zeit-Matrix ist zwar auch übersichtlich,
die angesprochenen Probleme, die Johansens Ansatz hat, sind aber auch hier zu sehen. Es
gibt Groupware-Systeme, die sich in mehr als eine Kategorie einordnen lassen. Also ist
auch die Grudin-Erweiterung nicht als Eingrenzung und Abgrenzung zu verstehen. Trotzdem ist die Raum-Zeit-Matrix das am häufigsten gebrauchte Klassifikationsschema, wenn
an Universitäten Vorlesungen über rechnergestützte Gruppenarbeit gehalten werden.
2.1.2
Anwendungsorientierte Funktionsklassen
Einen anderen Ansatz als die Raum-Zeit-Matrix verfolgen die so genannten anwendungsorientierten Funktionsklassen. Diese Art der Klassifizierung ist auch für die vorliegende
Arbeit interessant, denn ihr Hauptmerkmal ist, wie der Name bereits verrät, die Anwendungsorientierung. Deshalb passen die Funktionsklassen gut in das pragmatische Konzept, das diese Arbeit verfolgen soll. In [1] ist nachzulesen, dass Ellis et al. Anfang der
90er Jahre folgende Funktionsklassen unterschieden haben: Nachrichtensysteme, Grup-
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
13
peneditoren, elektronische Sitzungsräume, Konferenzsysteme, gemeinsame Informationsräume, Agentensysteme und Koordinationssysteme. Diese Einteilung bildet die oberste
Hierarchie und wird durch Unterkategorien konkretisiert. Etwa unterscheidet man bei den
Konferenzsystemen folgende vier Unter-Arten:
Nachrichtensysteme: Nachrichtensysteme sind für den asynchronen Nachrichtenaustausch zwischen Gruppenmitlgiedern verantwortlich. Das sind meist Textnachrichten, aber auch Grafiken, Töne und Videos können bei einigen Systemen zwischen
Sender und Empfänger ausgetauscht werden. Die Verwaltung von Nachrichten wird
durch Strukturinformationen geregelt, etwa mittels einer Betreffzeile beim E-MailVersand. Die Erweiterung der Funktionalität eines Nachrichtensystems kann empfängerspezifisch oder absenderspezifisch erfolgen. Empfängerspezifisch bedeutet,
dass der Empfänger bestimmte Regeln definiert, etwa eine Filterung nach Absenderadresse. Absenderspezifisch bedeutet, dass der Sender etwas spezifiziert und mit
der Nachricht verschickt, man spricht dabei von so genannten Skripten. Nachdem
der Empfänger die Nachricht erhalten hat, wird das Skript ausgeführt. Das könnte etwa eine Bestätigung über den Erhalt der Nachricht für den Absender sein, die
automatisch nach Öffnen der Mitteilung zurückgeschickt wird.
Gruppeneditoren: Gruppeneditoren werden dann eingesetzt, wenn mehrere Bearbeiter
an einem gemeinsamen Dokument arbeiten. Auch für die gemeinsame Entwicklung eines Software-Systems sind Gruppeneditoren nötig. Dabei ist der Editor in
der Lage, durch Benachrichtigungen die Benutzer auf dem aktuellen Stand der Bearbeitung zu halten. Die Benutzer werden also nicht voneinander isoliert. Bei den
Realzeiteditoren arbeiten aktuell mehrere Benutzer am selben Dokument, dabei hat
meist nur einer Schreibrechte, alle anderen Leserechte. Die asynchronen Editoren,
oder auch Editoren mit Benachrichtigung genannt, verfügen über einen eingebauten
Benachrichtigungsmechanismus, der über Änderungen informiert.
Elektronische Sitzungsräume: Elektronische Sitzungsräume sind Sitzungsräume für so
genannte face-to-face-Sitzungen, die mit Rechnern ausgestattet sind. Die Rechner
werden dabei als Group Support Systems (GSS) eingesetzt, das bedeutet, sie helfen
bei der Findung von Gruppenentscheidungen. Ein GSS fasst Meinungen, Zweifel
und Einschätzungen zusammen und befragt die ganze Gruppe dazu. So kommt es
iterativ zu einer gemeinsamen Entscheidung.
Konferenzsysteme: Konferenzsysteme gibt es in vielen verschiedenen Ausprägungen,
man unterscheidet Nicht-Realzeitrechnerkonferenz, Realzeitrechner-Konferenz, Telekonferenz und Desktopkonferenz. Bei der Nicht-Realzeitkonferenz erfolgt eine
asynchrone Kommunikation. Oftmals wird dafür E-Mail verwendet. Das Konferenzsystem bereitet dann die Nachrichten entsprechend auf. Eine synchrone Rechnerkonferenz oder auch Realzeitrechnerkonferenz genannt, bietet die Möglichkeit
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
14
des synchronen Datenaustausches, es besteht jedoch keine Audio- oder Video-Verbindung. Dies ist erst bei der Telekonferenz der Fall, wobei diese die Einschränkung
hat, dass eine gemeinsame Bearbeitung von Daten nicht vorgesehen ist. Erst die so
genannte Desktopkonferenz schafft die Verschmelzung von Realzeitrechnerkonferenz und Telekonferenz.
Gemeinsame Informationsräume: Gemeinsame Informationsräume haben die Aufgabe, den Informationsschatz der Gruppe zu speichern und zu verwalten. Es gibt
vier Kooperationsmodi, die bei der Bearbeitung gemeinsamer Informationen unterschieden werden: Jedes Mitglied bearbeitet einen Teil unabhängig von den anderen (getrennte Verantwortlichkeit); zu einem Zeitpunkt hat immer nur genau ein
Gruppenmitglied Vollzugriff (wechselseitig ausschließlicher Zugriff); jedes Mitglied entwickelt seine eigene Version der Dokumente (alternative Versionen); die
Mitglieder können gleichzeitig arbeiten und es stehen geeignete Mechanismen zur
konsistenten Datenhaltung zur Verfügung (synchroner Zugriff).
Agentensysteme: Ein Software-Agent ist ein Programm oder Programm-Modul, das im
Auftrag eines Benutzers bestimmte Aufgaben selbständig ausführen kann. In Bezug
auf Groupware sind Agenten Software-Komponenten, die als Teilnehmer menschliche Gruppenmitglieder ersetzen. Sie übernehmen dabei bestimmte Rollen, etwa die
Protokollierung einer Sitzung. Agenten agieren dabei normalerweise autonom, das
heißt sie können auch ohne direkte Kontrolle durch einen menschlichen Benutzer
agieren und kontrollieren ihren inneren Zustand selbst. Sie können außerdem mit
anderen Agenten oder auch Benutzern kommunizieren.
Koordinationssysteme: Koordinationssysteme oder auch Workflow-Management-Systeme werden zur Koordinierung von Arbeitsabläufen eingesetzt, dabei unterscheidet man vier Arten, abhängig von der modellierten Information: formularorientierte
Systeme, prozedurorientierte Systeme, konversationsorierntierte Systeme und kommunikationsorientierte Systeme.
• Formularorientierte Systeme lehnen sich an den guten alten Umlaufzettel
an, der mit dem Dokument von Bearbeitungsstelle zu Bearbeitungsstelle wandert. Nach Ausführen von bestimmten Tätigkeiten wird auf einem Formular
unterschrieben und das Dokument weitergegeben. Die Reihenfolge der Bearbeiter legt ein Ablaufplan fest.
• Prozedurorientierte Systeme umfassen mehrere Schritte, die zum Ziel führen.
Die kooperativen Tätigkeiten von Gruppenmitgliedern werden in einer Prozedurbeschreibung vorherbestimmt.
• Konversationsorientierte Systeme modellieren die Interaktionen zwischen
Gruppenmitgliedern. Die Kooperation basiert auf dem Austausch sprachlicher
Äußerungen, die auf elektronische Nachrichten abgebildet werden.
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
15
• Kommunikationsorientierte Systeme modellieren komplexe Kommunikationsstrukturen innerhalb einer Organisation. Diese Struktur drückt die Organisationsstruktur aus und beinhaltet Rollen.
2.1.3
3K-Modell
Als eine der wichtigsten Einteilungen von CSCW-Systemen gilt auch das 3K-Modell:
Hinter den drei K’s verbergen sich die Begriffe Kommunikation, Koordination und Kooperation. Jeder dieser Begriffe drückt einen Intensitätsgrad der Zusammenarbeit inner”
halb einer Gruppe“ aus. Die Begriffe sind nach [4] wie folgt definiert:
Kommunikation: ”Unter Kommunikation versteht man einen verlässlichen und hinreichend schnellen Austausch von Informationsobjekten.”
Koordination: ”Koordination erfordert noch kein gemeinsames Ziel, jedoch gemeinsame Interessen und/oder organisatorische Zusammengehörigkeit.”
Kooperation: ”Kooperation bedingt eine starke Übereinstimmung von Zielen; die Gruppe ist als Ganzes für das Ergebnis verantwortlich.”
Die Intensität von Zusammenarbeit und Integration nimmt ausgehend von Kommunikation über Koordination bis zu Kooperation hin zu. In dieser Richtung lässt hingegen das
aufgabenbezogene Wissen des Individuums nach. Nähere Ausführungen dazu finden sich
in [4], Abschnitt 1.2.2; Teufel et al. ordneten die Prozesse der Gruppenarbeit zur Veranschaulichung in einem Dreieck an. An den Eckpunkten befinden sich die Zentren von
Kommunikations-Unterstützung, Koordinations-Unterstützung und Kooperations-Unterstützung. Die Applikationstypen von CSCW-Systemen werden dann je nach Unterstütßzungsfunktion im Inneren des Dreiecks positioniert, dabei wird der Tatsache Rechnung
getragen, dass Groupware in der Regel verschiedene Funktionen integriert, also keinem
der drei K’s eindeutig zugeordnet werden kann.
Wie in Abbildung 2.2 zu sehen ist, werden dabei die CSCW-Systeme, die gewisse Ähnlichkeiten aufweisen, zu Systemklassen zusammengefasst. In der Abbildung sind das
entsprechend die benachbarten Groupware-Programme. Es bilden sich vier Klassen heraus, die sich gegeneitig überlappen: Kommunikation, gemeinsame Informationsräume,
Workflow-Management und Workgroup-Computing. Nach [4] haben sie folgende Merkmale:
Systemklasse Kommunikation: ”Kommunikationssysteme sind Systeme, deren Aufgabe darin besteht, den expliziten Informationsaustausch zwischen verschiedenen Kommunikationspartnern zu ermöglichen. Dabei werden in erster Linie Raum- und Zeitdifferenzen überbrückt. Typische Beispiele sind elektronische Post-Systeme und
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
16
Abbildung 2.2: Das 3K-Modell nach Teufel et al.
Videokonferenzen. Auch Bulletin Board Systeme können zu dieser Klasse gezählt
werden, wenn geschlossene Gruppen adressiert werden.”
Systemklasse gemeinsame Informationsräume: ”Diese Klasse stellt gemeinsame Informationsräume für eine Gruppe zur Verfügung, in denen Informationen längere
Zeit in geeigneter Form mit Hilfe geeigneter Zugriffsmechanismen gespeichert werden. Der Informationsaustausch ist implizit. In diese Klasse fallen verteilte Hyptertext Systeme und spezielle Datenbanken, deren Informationen gleichzeitig von verschiedenen Benutzern abgefragt werden können. Bulletin Board Systeme können
ebenfalls zu dieser Klasse gezählt werden.”
Systemklasse Workflow-Management: ”Ein Workflow ist eine endliche Folge von Aktivitäten, wobei die Folge von Ereignissen ausgelöst und beendet wird. Im allgemeinen sind Workflows organisationsweite, arbeitsteilige Prozesse, in die eine große
Anzahl von Akteuren einbezogen sind. Workflow-Management umfasst alle Aufgaben, die bei der Modellierung , der Simulation sowie bei der Ausführung und Steuerung von Workflows erfüllt werden müssen. Workflow-Management-Werkzeuge
unterstützen die Aufgaben des Workflow-Management durch die Ausführung von
Software. Deren Unterstützungsfunktion besteht primär darin, Workflows auszuführen und zu koordinieren. Dazu werden unter anderem Techniken aus dem Bereich
elektronischer Post-Systeme und spezielle Datenbanksysteme eingesetzt.”
Systemklasse Workgroup-Computing: ”Workgroup-Computing-Systeme unterstützen
die Kooperation von Personen, die in Gruppen oder Teams arbeiten und Aufga-
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
17
ben mit mittleren bis geringen Strukturierungsgraden und Wiederholungsfrequenzen zu lösen haben. Die Koordinationsfunktion bezieht sich hier auf die für die Problemstellung notwendigen Kooperationsbeziehungen innerhalb der Gruppe. In diese Klasse gehören Planungssysteme wie Terminverwaltungs- und -vereinbarungssysteme, Gruppeneditoren und Entscheidungs- und Sitzungsunterstützungssysteme.”
Das 3K-Modell bildet die Grundlage für die Ableitung der Systemklassen. Speziell diese Klassen sind für die zu findende Einteilung eine gute Grundlage. Zwar sollen auch
die Systemklassen nicht 1:1 übernommen werden, bei genauerer Betrachtung fällt aber
auf, dass man die Sicht auf die Systemklassen lediglich zu verfeinern braucht, um eine
Anwendungs-bezogene Einteilung zu finden.
Das 3K-Modell ist sehr übersichtlich gehalten. Außerdem decken die vier Systemklassen den gesamten Groupware-Bereich ab. Allerdings wird oftmals in der Praxis erst von
Groupware gesprochen, wenn ein System in mehr als eine Klasse eingeordnet werden
kann. Also ist auch diese Einteilung nicht frei von Redundanz.
2.2
Probleme bei der Klassifizierung
Ein wichtiger Teil dieser Arbeit ist es, eine geeignete Strukturierung für Open-SourceGroupware zu entwickeln, die bei der Auswahl von CSCW-Programmen möglichst schnell
zum Ziel führt. Dabei hat es sich angeboten, zuerst die bereits entwickelten Klassifizierungen zu untersuchen und gegebenenfalls zu verwenden. Leider passt keine der klas”
sischen Einteilungen“. Im Folgenden soll kurz diskutiert werden, warum sich weder die
Raum-Zeit-Matrix, noch anwendungsorientierte Funktionsklassen und 3K-Modell für den
Zweck dieser Diplomarbeit einfach übernehmen lassen. Dabei wird zuerst erläutert, welche Anforderungen an die Strukturierung durch die Aufgabenstellung gegeben sind und
dann aufgezeigt, in welchen Punkten die vorgestellten Modelle Probleme haben.
Wie in Abschnitt 1.2 betont, besteht der Hauptzweck der vorliegenden Diplomarbeit
darin, eine Hilfestellung bei der Auswahl und Installation freier Groupware-Lösungen für Standardaufgaben zu geben. Wer sich bereits näher mit Installationshinweisen
beschäftigt hat, der hat sich im Normalfall schon für eine Groupware-Lösung entschieden. Für die Klassifizierung ist also die oberste Maxime die Hilfe bei der Auswahl der
CSCW-Systeme. Trotzdem soll die Strukturierung von allgemeiner Natur sein, das spricht
gegen eine Auflistung von existierenden Produktkategorien. Zusätzlich ist es erforderlich,
dass die Einteilung einen pragmatischen Hintergrund hat, denn die eigentliche Zielgruppe sollen nicht Groupware-Spezialisten sein, sondern Fachfremde, die CSCW-Systeme
einsetzen wollen. Unnötiger theoretischer Ballast soll weggelassen werden.
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
18
Wichtig ist auch, dass die Strukturierungmerkmale und die Anforderungen, die an Groupware-Programme gestellt werden, in engem Zusammenhang stehen. Der Grund ist einfach, es wird davon ausgegangen, dass die Zielgruppe eine gewisse Erwartungshaltung
bereits mitbringt, also bereits Anforderungen an Groupware stellt. Normalerweise haben diese Anforderungen unterschiedliche Priorität. Die Strukturierung soll sich wenn
möglich an der Hauptanforderung der Auswählenden festmachen. Sie bildet die Grundlage für die Einteilung. Zusätzliche Anforderungen, die in Kapitel 3 herausgearbeitet werden, sollen als Rahmenbedingungen die Hauptanforderung sinnvoll ergänzen.
Probleme der Raum-Zeit-Matrix: In Abschnitt 2.1.1 wurde die Raum-Zeit-Matrix vorgestellt. Schwierigkeiten könnte es geben, wenn bei der Recherche nach der passenden Groupware die Fragen nach räumlicher und zeitlicher Verteilung nicht beantwortet werden können. Das ist meist dann der Fall, wenn die gesuchten Produkte nachweislich an den Schnittstellen der Matrixfelder liegen. Unglücklicherweise ist die Platzierung an den Schnittstellen auch ein signifikantes Merkmal von
Groupware-Produkten.
Auch bei der Erweiterung nach Grudin fehlt die eindeutige Hauptanforderung, nach
der die CSCW-Systeme klassifiziert sind. Der pragmatische Hintergrund ist bei diesem Modell nicht vorhanden. Die Raum-Zeit-Matrix wird deshalb in der selbstentwickelten Klassifizierung in Abschnitt 2.3 nicht berücksichtigt.
Probleme der anwendungsorientierten Funktionsklassen: Zweifellos hat eine anwendungsorientierte Sichtweise den Vorteil, dass auch Nicht-Informatiker sich schneller zurecht finden, die Darstellung insgesamt also leichter verständlich ist und auch
Nicht-Fachleute die Strukturierung eher als Auswahlhilfe nutzen können. Aber auch
dieser Ansatz zeigt Schwächen: So ist die Einteilung in Funktionsklassen nicht redundanzfrei, beispielsweise sind in asynchronen Konferenzsystemen meist Nach”
richtensysteme integriert, um eine asynchrone Kommunikation zwischen Gruppenteilnehmern zu ermöglichen“ 1 .
Ein weiterer Kritikpunkt an dieser Vorgehensweise ist eine begrenzte Aktualität.
Während etwa die Raum-Zeit-Matrix neue Systemklassen ohne Probleme neu einordnen kann oder bestehende entfernen kann, ist das mit der anwendungsorientieren Sicht nicht so einfach. Auch Verschiebungen der Funktionsklassen wirken sich
stärker aus. Wenn man diesen Ansatz verwendet, sollte man in kurzen Abständen
die gefundenen Klassen auf ihre Gültigkeit überprüfen.
Die anwendungsorientierten Funktionsklassen in 2.1.2 passen jedoch besser auf die
gestellten Anforderungen wie die Raum-Zeit-Matrix. Für diesen Ansatz spricht vor
allem der Praxisbezug. Auch die Gliederung anhand der Funktionalität passt gut,
denn das sollte die Hauptanforderung sein, die potentielle Groupware-Nutzer an
eine Lösung stellen. Die Bezeichnungen der Funktionsklassen sind aber nicht auf
1 vgl.
[1] Abschnitt 2.8.2
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
19
den ersten Blick verständlich. Unter der Klasse Agentensysteme werden sich viele
Nutzer zuerst nichts vorstellen können. Außerdem passen die Gruppeneditoren als
Produktgruppe nicht in die Klassenhierarchie.
Probleme des 3K-Modells: Das 3K-Modell, vorgestellt in 2.1.3, ist zwar sehr übersichtlich, die Unterscheidung in Kommunikation, Koordination und Kooperation ist aber
nicht intuitiv und praxisnah. Vielmehr müsste sich ein Laie erst in die begrifflichen
Abgrenzungen einarbeiten, bevor er dann erst im zweiten Schritt die vier Systemklassen kennenlernt. Das ist aber für den Einsatz von Groupware nicht notwendig. Besonders gelungen ist an den Funktionsklassen aber, dass sie den gesamten
Groupware-Bereich abdecken. Aus diesem Grund sind die vier Systemklassen eine
Art Grundlage für die neu abzuleitende Klassifizierung.
2.3
Funktionale Strukturierung
Für die in der Aufgabenstellung geforderte Klassifizierung eignet sich keine der bisher
vorgestellten Strategien zu 100 Prozent. Gute Ansätze zeigen aber die anwendungsorientierten Funktionsklassen (siehe dazu 2.1.2) und die Systemklassen des 3K-Modells (siehe dazu 2.1.3). Aus diesem Grund wird eine Art Hybridstrategie verwendet, in der das
Beste aus diesen zwei Modellen vereinigt und das Resultat geeignet ergänzt wird. Die
Idee einer Strukturierung, die von der Funktionalität bestimmt wird, drängt sich für den
Zweck dieser Arbeit auf, denn das ist die pragmatischste Lösung; die in der Praxis gesuchten Lösungen werden meist primär nach Funktionalität ausgewählt, Funktionalität
entspricht also der in Abschnitt 2.2 angesprochenen Hauptanforderung, die der Garant
für das schnelle Finden von Lösungen ist. Die entwickelte Strukturierung ist hierarchisch
gegliedert, das heißt, dass sich gefundene Funktionsklassen durch Unterklassen genauer
spezifizieren lassen. Das bringt entscheidende Vorteile:
Praxisorientierung: Der wichtigste Vorteil einer funktionalen Klassifizierung von CSCW-Systemen ist der Praxisbezug. Diese Arbeit soll explizit ein Leitfaden für NichtSpezialisten sein, also muss vor allem die Kategorisierung auch von einem NichtSpezialisten verstanden werden. Verstehen ist aber nicht die einzige Anforderung,
anhand der gewählten Strukturierung soll man sich auch gut orientieren können und
letztendlich eine passende Groupware-Lösung finden, die den vorhandenen Anforderungen genügt. Als Strukturierungsmittel dient die Funktionalität, weil sie die
Eigenschaft ist, die in der Praxis am meisten gebraucht wird.
Übersichtlichkeit: Die funktionale Einteilung ist übersichtlich, weil sie eindimensional
ist. Auf einen Blick kann man sich über die verschiedenen Kategorien informieren.
Die hierarchische Gliederung mit Unterkategorien erlaubt es, dort wo spezielles
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
20
Interesse besteht nachzusehen und tiefer in die Materie einzusteigen; andere Funktionen, die nicht gewünscht werden bleiben außen vor. So kann jeder Benutzer seine
eigene Sicht auf Groupware-Systeme gewinnen.
Schnelles Finden von Lösungen: Natürlich begünstigen die ersten zwei Vorteile auch
das schnelle Finden von Lösungen. Im Unterschied zu anderen Klassifizierungen
wurde dieses Schema auch mit dem expliziten Ziel entwickelt, Lösungen schnell
zugänglich zu machen. Die klassischen Ansätze stammen alle aus dem Forschungsbereich CSCW und ordnen dort die Groupware-Systeme ein, dieser Ansatz geht so
gesehen den Weg von der Praxis zurück zu CSCW.
Flexibilität: Mit Flexibilität ist gute Anpassbarkeit an den Groupware-Markt gemeint;
das heißt, falls eine neue Generation von Groupware-Systemen auf den Markt kommen wird, die vollkommen neue Funktionen bietet, so kann man die Klassifizierung
erweitern, ohne die bestehenden Klassen verändern zu müssen: Entweder es kommt
eine neue Hauptklasse hinzu, oder es werden Unterklassen ergänzt. Falls eine Funktionsklasse ausstirbt, kann das entweder eine Oberklasse betreffen oder Unterklassen. Diese werden dann entfernt, beeinflussen aber ihre Nachbarklassen nicht.
Folgende Strukturierung, wie sie auch in Abbildung 2.3 illustriert ist, ist für diese Arbeit
gewählt worden:
Abbildung 2.3: Funktionale Einteilung von CSCW-Systemen
Nachrichtenaustausch: Der Austausch von Nachrichten ist wohl die wichtigste Anforderung, die heute an Groupware-Systeme gestellt wird. Dabei geht es meist um
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
21
Textnachrichten, aber auch Audio- und Videobotschaften sind mit der richtigen
Hardware-Ausstattung kein Problem mehr. Der Bedarf an Kommunikation spiegelt sich etwa im steigenden E-Mail-Aufkommen wieder, denn E-Mail ist heute die
beliebteste Art des rechnergestützten Nachrichtenaustausches. Wichtig ist, dass es
sich beim Nachrichtenaustausch um eine Form der expliziten Kommunikation handelt, die meist direkt stattfindet: Der Sender überträgt die Nachricht speziell für den
Empfänger, bestimmt also explizit, an wen die Nachricht gehen soll. Im Bereich
Nachrichtenaustausch gibt es aber auch Formen der indirekten Kommunikation.
Dabei werden an gemeinsamen Informationsobjekten Änderungen vorgenommen.
Ein Empfänger erlangt Kenntnis von einer Aktion, ohne dass der Sender explizit
dafür sorgt. Ein Beispiel wäre ein Web-Forum, in dem Nachrichten implizit ausgetauscht werden.
Informations- und Dokumentenverarbeitung: Im Unterschied zum Nachrichtenaustausch versteht man unter Informationsverarbeitung stets eine Form der impliziten
Kommunikation. Ein wichtiges Kriterium der Informationsverarbeitung ist die gemeinsame Nutzung derselben Daten durch die Gruppenmitglieder; hier verschwimmt leider auch die Grenze zum Nachrichtenaustausch, denn die oben angesprochene
indirekte Kommunikation funktionert genau so. In der Praxis spricht man hierbei
oft von ”Shared Information”. Hier geht es neben dem Transfer von Wissen und
Tatsachen auch um das Festhalten von Ergebnissen der Gruppenarbeit. Vorstellbar
wäre etwa eine gemeinsame Datenbank, oder ein Hypertextsystem, das die Informationen untereinander sinnvoll verknüpft. Bei der gemeinsamen Verarbeitung von
Information trifft man in der Praxis sofort auf gemeinsame Dokumentenverarbeitung. Diese reicht von der Möglichkeit des gemeinsamen Zugriffs bis zur gemeinsamen Bearbeitung, etwa in einem Gruppeneditor.
Gruppen-Planung: Die dritte wichtige Säule der funktionalen Einteilung ist die GruppenPlanung. Dabei geht es zum einen um die Planung hochstrukturierter Abläufe, etwa
das Workflow-Management, zum anderen aber auch um semi-strukturierte Aufgaben, etwa die Terminplanung oder um unstrukturierte Planungen, etwa in ToDoListen.
2.3.1
Nachrichtenaustausch
Der Nachrichtenaustausch leitet sich aus der Systemklasse Kommunikation ab, die im
3K-Modell in Abschnitt 2.1.3 vorgestellt wurde. Genauer gesagt repräsentiert der Nachrichtenaustausch meist eine Form der expliziten Kommunikation, die Raum- und ZeitDifferenzen überbrückt. Einzige Ausnahme: Bulletin-Board-Systeme, die zwar auf implizite Kommunikations aufbauen, aber vornehmlich für den Nachrichtenaustausch eingesetzt werden. Dabei werden Nachrichten zwischen Sender(n) und Empfänger(n) ausgetauscht. Eine Nachricht besteht in der Regel aus Nachrichtenkopf und Nachrichtenin-
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
22
halt: Der Nachrichtenkopf wiederum enthält eine Spezifikation des Senders, NachrichtenIdentifikator, Nachrichtentyp und die Spezifikation des Empfängers. Der Nachrichteninhalt besteht aus einer Menge von Datenobjekten, die meist unstrukturiert oder semistrukturiert sind.
Für den Nachrichtenaustausch sind zwei Basisfunktionen unabdingbar: Die Sende-Funktion send und die Empfangen-Funktion receive. Dabei werden bei send die Parameter
Empfänger und Nachricht benötigt und bei receive die Parameter Sender und Pufferspeicher, in den die Nachricht übertragen wird.
Für die verfeinerte Betrachtung des Nachrichtenaustausches bieten sich klassische Kategorisierungen der Kommunikation an, wie sie im Folgenden kurz aufgezeigt werden:
Nach Synchronisation: Der Austausch von Textnachrichten erfolgt heute meist per EMail. Dabei handelt es sich um eine asynchrone Möglichkeit, Nachrichten auszutauschen. Die Nachricht wird vom Sender losgeschickt, dabei ist es egal was der
Empfänger gerade macht, ob er auch arbeitet oder schon Feierabend hat. Der Sender muss sich also auch keine Gedanken darüber machen, ob er den Empfänger im
Moment des Sendens erreicht. Die Nachricht kommt beim Sender an und wird dann
dort geeignet gespeichert, sodass der Empfänger die Nachricht vorfindet, wenn er
wieder arbeitet. Über den asynchronen Austausch hinaus wird oft vergessen, dass
rechnergestützte Kommunikation auch synchron funktionieren kann. Dabei müssen
Sender und Empfänger der Nachricht gleichzeitig willens sein, einen Nachrichtenaustausch zu führen. Am Rechner werden heute gerne so genannte Messenger verwendet, die synchrone Unterhaltungen über eine Textkonsole erlauben.
Nach Verbindungsart: Kommunikation lässt sich auch nach Verbindungsart einteilen,
dabei kommt es darauf an, ob ein Kollektiv, also mehrere kommunizieren, oder ob
die Kommunikation individuell geführt wird. Es lassen sich auf diese Weise 1 : 1-,
1 : n-, n : 1- und n : m-Kommunikation unterscheiden. Die Zahlen stehen dabei für
die Anzahl der beteiligten Sender und Empfänger.
Nach Serialisierungsmethode: Die Einteilung der Kommunikation nach Serialisierungsmethode der Nachrichten macht sich zunutze, dass eingehende Nachrichten auf
Empfängerseite entsprechend einer gewissen Reihenfolge empfangen und verarbeitet werden müssen. Falls mehrere Empfänger zu einer Gruppe gehören, können
sie aufgrund der unterschiedlichen Übertragungszeiten die Nachrichten in unterschiedlicher Reihenfolge erhalten. Dabei unterscheidet man, ob es einen oder mehrere Sender gibt. Bei nur einem Sender besteht die Möglichkeit, einfach nach Eintreffen der Nachrichten beim Empfänger zu sortieren. Eine andere Vorgehensweise
wäre, Sequenznummern zu vergeben. Natürlich steht es dem Empfänger frei, eine
Serialisierung nach seinen eigenen Ansprüchen zu machen. Bei mehreren Sendern
ist die Serialisierung normalerweise mit mehr Aufwand verbunden. Eine Synchronisierung nach loser globaler Zeit wäre eine Möglichkeit. Eine andere wäre, die
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
23
Reihenfolge von Nachrichten nach kausalen Abhängigkeiten zu bestimmen. Diese
Vorgehensweise nennt man virtuell. Am aufwändigsten wäre es, eine Serialisierung
mit Token und eine ausgezeichnete Teilkomponente zu verwenden, die im Nachhinein Sequenznummern mitteilt. Dabei muss der Sender vor dem Verschicken einer
Nachricht ein Token beantragen und erhalten
Nach Struktur: Bei der Einteilung nach Struktur geht es um die Beziehung der Teilkomponenten. Diese Einteilung ist sehr eng mit der CSCW-Forschung verwandt,
denn hier nutzt man aus, dass es zwischen den Teilnehmern der Kommunikation
eine Struktur gibt, die entweder gleichrangige Mitglieder umfasst, in Gruppen organisiert ist oder eine hierarchische Ordnung besitzt.
Nach Richtung des Informationsflusses: Bei der Unterscheidung nach Richtung des Informationsflusses kommt es darauf an, ob Antworten erlaubt sind oder nicht. Etwa
bedienen sich Radio und Fernsehen eines so genannten Broadcast, also einem unidirektionalen Senden an eine unbegrenzte Anzahl von Empfängern. Die Empfänger
der Nachrichten haben keine Möglichkeit ihrerseits die Radio- oder Fernsehstation
zu benachrichtigen. Beim bidirektionalen Informationsfluss kommt es zur echten
Interaktion zwischen den Gruppenteilnehmern.
Nach der Gruppengeschlossenheit: Die enge Verwandtschaft zu CSCW gilt auch für
die Einteilung nach Gruppengeschlossenheit. Man geht davon aus, dass die Teilnehmer an einer Kommunikation entweder zu einer geschlossenen Gruppe gehören,
oder die Gruppe offen ist.
Nach der Zuverlässigkeit: Eine weitere Unterscheidung teilt Kommunikation in eine
zuverlässige Komponente und eine unzuverlässige. Zuverlässige Kommunikation
bedeutet, dass der Sender eine Garantie für die Ankunft seiner Nachricht erhält,
entsprechend ist das bei unzuverlässiger Kommunikation nicht der Fall.
In dieser Arbeit wird die Einteilung von Nachrichtenaustausch nach Synchronisation verwendet, also nach asynchronem und synchronem Austausch unterschieden. Eine weitere
Ebene darunter wird nach Verbindungsart eingeteilt. Das bedeutet Eins-zu-Eins, Eins-zuViele, Viele-zu-Eins und Viele-zu-Viele. Der Grund: Diese Art der Einteilung ist praxisrelevant und leicht verständlich.
2.3.1.1
Synchroner Nachrichtenaustausch
Beim synchronen Nachrichtenaustausch verwenden Sender und Empfänger gleichermaßen blockierende Sende- und Empfangsoperationen. Dabei kann die Nachricht direkt
vom Senderadressraum in den Empfängeradressraum kopiert werden, die Nutzung eines Puffer-Speichers ist nicht nötig. Da Nachrichten auch verlorengehen können ist es
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
24
Abbildung 2.4: Untergliederung des Nachrichtenaustausches
auch möglich, dass der Empfänger eine Bestätigungsnachricht zurücksendet. Falls dann
der Sender in einem bestimmten Zeitintervall keine Bestätigung erhalten hat, sendet er
die ursprüngliche Nachricht noch einmal. Dabei gibt es eine Reihe von Problemen, die
vermieden bzw. gelöst werden müssen; etwa könnte eine Bestätigung verlorengehen. Folgende Verbindungsarten werden unterschieden:
1:1-Kommunikation: Die 1 : 1-Kommunikation gehört zu den individuellen Verbindungsarten und wird als Unicast bezeichnet. Diese Art der Kommunikation besteht
aus genau einem Sender und genau einem Empfänger. Ein Beispiel für einen Nachrichtenaustausch, der synchron und mit einer 1 : 1-Verbindung erfolgt wäre ein Chat
zwischen zwei Personen, der mit Hilfe eines Messenger-Clients stattfindet.
Abbildung 2.5: Unicast-Verbindung (1 : 1)
n:1-Kommunikation: Auch die n : 1-Kommunikation gehört zu den individuellen Verbindungsarten und wird auch als Concast bezeichnet. Dabei kann man sich vorstellen, dass n Verbindungen bestehen, die die Verbindunsart 1 : 1 nutzen, wobei der Empfänger aller Nachrichten eine Instanz ist. Auf diese Weise ist also
die 1 : 1-Verbindung ein Spezialfall der n : 1-Verbindung. Eine synchrone n : 1Kommunikation könnte etwa bei einer Video-Konferenz auftreten. Wichtig ist auch,
dass bei dieser Verbindungsart eine unidirektionale Kommunikation stattfindet.
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
25
Abbildung 2.6: Concast-Verbindung (n : 1)
1:n-Kommunikation: Die 1 : n-Kommunikation gehört zur Klasse der kollektiven Verbindungsarten, sie ist auch unter dem Namen Multicast bekannt. Dabei schickt ein
Sender an n Empfänger eine Nachricht. Das ist etwa bei einer Audio-Konferenz
der Fall. Wenn man die 1 − n-Verbindung betrachtet, kann man die n Empfänger
zu einer Gruppe zusammenzufassen. Dann wird die Nachricht also an eine Gruppe
mit n Mitgliedern geschickt und nicht an n verschiedene Empfänger. Die Fähigkeit einer Anwendung, eine einzige Nachricht abzuschicken, sodass sie an mehrere
Empfänger an eventuell verschiedenen Orten geliefert wird heißt Multicast. Eine
1 : n-Verbindung kann also als eine Multicast-Verbindung angesehen werden. Ob
der Sender selbst zur Gruppe gehört oder nicht, ist nicht unerheblich: der Sender
muss dann zur Gruppe gehören, wenn die Gruppenmitglieder nur Nachrichten von
Mitgliedern derselben Gruppe annehmen können, also wenn es sich um geschlossene Gruppen handelt. Den Gegensatz dazu bilden die offenen Gruppen, die auch
Nachrichten anderer Teilnehmer, die nicht zwangsläufig Mitglieder dieser Gruppe
sind, annehmen. Weiterhin spielt die Gruppenzugehörigkeit des Senders eine Rolle,
wenn die gesendete Nachricht auch an den Sender selbst, als Mitglied der Gruppe,
ausgeliefert werden soll.
n:m-Kommunikation: Auch die n : m-Verbindungen gehören zur Klasse der kollektiven Verbindungsarten, man bezeichnet dies auch als Multipeer-Kommunikation.
Dabei schicken n Sender an m Empfänger Nachrichten. Betrachtet man die 1 : nKommunikation, so fällt auf, dass die Übertragung unidirektional von einem Sender
zu n Empfängern stattfindet. Bei einer n : 1-Kommunkation senden n Sender unidirektional an einen Empfänger. Verschmilzt man diese beiden Fälle, lässt man also
bidirektionale Kommunikation zu, so kommt man zur n : m-Kommunikation. Ein
Beispiel für eine n : m-Kommunikation ist etwa eine Video-Konferenz.
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
26
Abbildung 2.7: Multicast-Verbindung (1 : n)
Abbildung 2.8: Multipeer-Verbindung (n : m)
2.3.1.2
Asynchroner Nachrichtenaustausch
Synchrones Senden und Empfangen reicht nicht für alle Kommunikationsaufgaben aus,
ein bekanntes Beispiel ist das Erzeuger-Verbraucher-Problem. Beim asynchronen Austausch von Nachrichten benutzt mindestens einer der Prozesse eine nicht-blockierende
Sende- oder Empfangsoperation. Dabei ist ein Pufferspeicher zwischengeschaltet, der
blockiert, so lange er voll ist. Für die Verbindungsarten gilt dasselbe wie beim synchronen
Nachrichtenaustausch, auch hier gibt es Unicast-, Concast-, Multicast- und MultipeerKommunikation.
Tabelle 2.2 fasst beispielhaft konkrete Groupware-Anwendungen zusammen, die in der
Klasse Nachrichtenaustausch existieren.
27
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
Verbindungsart
synchron
asynchron
1:1/Unicast
n:1/Concast
1:n/Multicast
n:m/Multipeer
Messaging
E-Mail
Gruppen-Chat
Online-Umfrage
Audio-Konferenz Newsletter
Video-Konferenz Web-Forum
Tabelle 2.2: Beispiele eingesetzter Nachrichtensysteme
2.3.2
Informations- und Dokumentenverarbeitung
Die Klasse Informations- und Dokumentenverarbeitung ist auch aus den Systemklassen
des 3K-Modell abgeleitet und bildet die zweite wichtige Säule neben dem Nachrichtenaustausch. Sie repräsentiert zu einem großen Teil die Klasse der gemeinsamen Informationsräume, die oft auch als ”Shared Information Space” oder schlicht ”Information
Sharing” bezeichnet werden. Diese Klasse stellt gemeinsame Informationsräume für eine
Gruppe zur Verfügung, in denen Informationen längere Zeit in geeigneter Form mit Hilfe
geeigneter Zugriffsmechanismen gespeichert werden. Der Informationsaustausch ist stets
implizit, das ist auch der größte Unterschied zur Klasse Nachrichtenaustausch. In diese
Kategorie fallen nach dem 3K-Modell verteilte Hyptertext-Systeme, also Bulletin-BoardSysteme2 , Web-Logs, Wikis und spezielle Datenbanken, deren Informationen gleichzeitig
von verschiedenen Benutzern abgefragt werden können.
Aber auch aus der Systemklasse Workgroup-Computing passen einige Eigenschaften in
die neue Klasse Informations- und Dokumentenverarbeitung, etwa die Gruppeneditoren,
die das gemeinsame Bearbeiten von Dokumenten erlauben. Der Dokumentenbegriff ist
heute gefestigt, nach Brockhaus gilt: ”Als Dokumente können alle Unterlagen betrachtet
werden, die Informationen beinhalten, also nicht nur publizieres Wissen, sondern auch
Briefe, Akten, Urkunden, Bildsammlungen, Filme u.v.a.”. Dokumente sind also Informationsträger, sie können editiert, formatiert, publiziert, gespeichert, verwaltet und zusammengefasst werden.
Nach der Funktion des Nachrichtenaustausches ist die gemeinsame Nutzung von Daten
die am häufigsten gebrauchte Funktion von CSCW-Systemen. Groupware muss also Informationen speichern, verwalten und verteilen können. Die Systeme für die rechnergestützte Gruppenarbeit sind also wichtig für den Wissenstransfer, aber auch um Ergebnisse und die Schritte dorthin festzuhalten. Dabei kann es bis zum Aufbau einer Informationsdatenbank für die Gruppe kommen. Gemeinsame Nutzung von Daten könnte wieder
nach Synchronisationsfunktion unterteilt werden, entweder erfolgen die Zugiffe synchron
oder asynchron.
CSCW-Systeme, die diesen Bereich abdecken, müssen also regeln, wer auf die gespei2 In
dieser Arbeit werden die BB-Systeme zur Kategorie Nachrichtenaustausch gezählt
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
28
cherten Informationen zugreifen darf. Dabei geht es darum, ob das die ganze Gruppe
oder nur ein augesuchter Teil der Gruppe darf. Darüberhinaus stellen sich Fragen nach
Rechteabstufungen; so könnte einem Teil der Gruppe auch nur ein Teil der Information
zugänglich sein und ein anderer Teil Vollzugriff erhalten.
Wenn geregelt ist, wer auf was zugreifen darf, stellt sich als nächstes die Frage, wie der
Zugriff geregelt wird. Das heißt, wie wird beim gleichzeitigen Zugriff mehrerer Teilnehmer auf eine gemeinsame Ressource verfahren. Es sollte klar sein, dass dieser Abschnitt, technisch gesehen, sehr viel mit Datenbankverwaltungssystemen zu tun hat. Viele Groupware-Systeme, auch im Open-Source-Bereich, arbeiten mit klassischen Datenbanken wie MySQL oder PostgreSQL zusammen und greifen auf deren Funktionalität
zurück.
Man könnte diesen Abschnitt auch nach der Darstellbarkeit der gespeicherten Information
unterteilen. Es ließe sich unterscheiden, ob die Information linear oder nicht-linear dargestellt ist. Ein normaler Text ist in der Regel linear, das bedeutet es macht eigentlich nur
Sinn, ihn von Anfang bis Ende zu lesen, nicht den Schluss zuerst, danach die Einleitung
und am Ende den Hauptteil. Bei nicht-linearer Darstellung wäre das Leseverhalten vorher
nicht festzustellen, der Leser entscheidet in welcher Reihenfolge die Information aufgenommen wird. Ein Beispiel hierfür wäre ein Hypertext, der mit Links zu anderen Texten
ausgestattet ist. Eine besonders interessante Ausprägung solcher Hypertext-Systeme sind
WikiWebs und auch das WWW selbst ist auf diese Weise verknüpft.
In dieser Arbeit werden die zu verarbeitenden Informationen und Dokumente nach dem
Grad ihrer Strukturiertheit unterschieden; das hat vor allem den Vorteil, dass schnell klar
wird, ob die Daten effizient weiterverarbeitet werden können oder nicht. Es gibt strukturierte Daten, semi-strukturierte Daten und unstrukturierte Daten.
Strukturierte Daten: Daten gelten als strukturiert, wenn sie in ein vorher wohldefiniertes Schema eingeordnet werden können. Ein Beispiel hierfür sind Datenbanken in
einem Datenbankschema. Strukturierte Dokumente zeichnen sich dadurch aus, dass
man explizit nach Inhalt und logischer Struktur unterscheiden kann. Der Vorteil
daran ist ein hohes Maß an Flexibilität, denn die Struktur erlaubt eine automatische
Verarbeitung nach den logischen Kriterien. Dieser Vorteil ist natürlich umso größer,
je größer der Dokumentenbestand ist. Ein Nachteil ist, dass die Änderung des Schemas normalerweise mit enormem Aufwand verbunden ist. Bei einem GroupwareSystem ist etwa eine Adressdatenbank denkbar, die mit Kontakten gefüllt werden
kann. Das Schema ist fest vorgegeben, über die Datenbank kann dann mittels einer
Suchfunktion jeder Eintrag mit bestimmten Merkmalen ausgewählt werden.
Semi-strukturierte Daten: Spätestens seit dem Aufkommen von XML spricht man auch
von semi-strukturierten Daten immer häufiger, denn die eXtensible Markup Language gilt als Garant für effektive Verarbeitung von Daten dieses Strukturierungsgrades. Was verbirgt sich dahinter? Semi-strukturierte Daten weisen eine gewisse
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
29
Struktur auf, können aber nicht in ein Datenbankschema eingeordnet werden. Das
hat den Vorteil, dass sich Informationen einerseits strukturieren lassen, andereseits
aber kein starres Schema eingehalten werden muss.
Unstrukturierte Daten: Unstrukturierte Daten folgen keinem Schema, außer natürlich,
dass auch sie durch eine Bitfolge repräsentiert werden. Ein Beispiel für ein unstrukturiertes Dokument wäre eine Textdatei. Sie kann nicht nach logischen Merkmalen
durchsucht werden, lediglich eine Volltextsuche wäre möglich.
2.3.3
Gruppenplanung
Die Kategorie Gruppenplanung setzt sich wieder aus einer Umverteilung der Systemklassen des 3K-Modells zusammen: Aus den Klassen Workgroup-Computing und WorkflowManagement. Aus ersterer sind die Entscheidungsunterstützungssysteme und Planungssysteme relevant, letztere liefert die typischen Werkzeuge des Workflow-Managements.
Betrachtet man das 3K-Modell, so bewegt sich die neue Klasse Gruppenplanung am
unteren Rand des Dreiecks zwischen Koordinationsunterstützung und Kooperationsunterstützung.
Nach [4] ist ein Workflow wie folgt definiert: ”Ein Workflow ist eine endliche Folge von
Aktivitäten, wobei die Folge durch Ereignisse ausgelöst und beendet wird”. Workflow
Management ”umfasst alle Aufgaben, die bei der Modellierung, der Simulation sowie bei
der Ausführung und Steuerung von Workflows erfüllt werden müssen”. Das zugehörige
”Workflow-Management-System ist ein aus mehreren Werkzeugen bestehendes System,
welches die Aufgaben des Workflow-Managements durch die Ausführung von Software
unterstützt”.
An ein Workflow-Management-System werden folgende Anforderungen gestellt: Modellierung, Simulation, Ausführung und Steuerung von Workflows. In den klassischen
Groupware-Werkzeugen sind meist nur rudimentäre Funktionen zum Workflow-Management integriert, der Strukturierungsgrad der gestellten Aufgaben ist hoch.
Workgroup-Computing unterstützt die Kooperation von Personen, die in Gruppen arbeiten. Meist sind deren Aufgaben semi-strukturiert oder unstrukturiert. Systeme, die in diesem Bereich eingesetzt werden, müssen also sehr flexibel sein. Dabei geht es etwa um
essentielle Groupware-Funktionen wie Termin-Planung.
Bei der weiteren Unterteilung der Klasse Gruppenplanung könnte man die Einteilungskriterien für Gruppen zu Rate ziehen. Zwar sind nicht alle Gruppeneinteilungen anwendbar, etwa ließe sich bei der Gruppenplanung eine Unterscheidung nach der Offenheit der
Gruppe nicht sinnvoll einsetzen, denn Gruppenplanung bedeutet einfach Planung für eine
bestehende Gruppe. Möglich wäre es, die Gruppendynamik zu untersuchen. Dabei geht
es darum, ob es sich um dynamische Gruppen handelt oder die Gruppe statisch ist.
30
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
Hier bietet sich die gleiche Art der Unterteilung an wie bei der Informations- und Dokumentenverarbeitung. Der Grad der Strukturiertheit ist feiner granuliert in strukturiert,
semi-strukturiert und unstrukturiert3 .
Aufgabe
Komplexität
Planbarkeit
Info-Bedarf
Beispiel
strukturiert
semi-strukturiert
unstrukturiert
niedrig
mittel
hoch
hoch
mittel
niedrig
bestimmt
Workflow-Plan
Problem-abhängig Termin-Plan
unbestimmt
ToDo-Liste
Tabelle 2.3: Typen von Aufgaben
In Tabelle 2.3 sind die anfallenden Aufgaben nach ihrem Strukturierungsgrad aufgeteilt.
Die Unterschiede bei ihrer Komplexität, Planbarkeit und ihrem Informationsbedarf stellen hohe Anforderungen an die eingsetzten CSCW-Systeme. Die meisten GroupwareSysteme decken nur den Bereich der unstrukturierten und semi-strukturierten Aufgaben
ab.
Abbildung 2.9: Funktionale Einteilung von CSCW-Systemen
2.4
Grenzen der funktionalen Strukturierung
Die im vorhergehenden Abschnitt beschriebene funktionale Einteilung hat praktische Vorteile: Die Dreiteilung in Nachrichtenaustausch, Informations- und Dokumentenverarbeitung und Gruppenplanung ist übersichtlich und ohne großes Wissen über CSCW verständlich. Die drei Säulen werden durch Unterteilungen weiter konkretisiert, ohne dabei schon
auf bestehende Produktkategorien zu verweisen. So behält die Einteilung eine gewisse
Portion Abstraktheit.
3 vgl.
http://z2.hyperwerk.ch/pulsememory/rech/rech/pdf/CSCW.pdf
KAPITEL 2. ALLGEMEINE STRUKTURIERUNG
31
Die Zuordnung der Open-Source-Groupware in Kapitel 5 führt dazu, dass man bei der
Suche nach dem passenden Programm einfach in der Einteilung die gewünschten Funktionalitäten sucht, und anhand dessen das konkrete Produkt findet. Somit sollte der erste
Teil dieser Diplomarbeit, die Hilfestellung bei der Auswahl freier Groupware-Lösungen
erfüllt sein.
Die entworfene Einteilung hat aber auch Nachteile: So ist die Beschränkung auf die Funktionalität eine eindimensionale Sichtweise, die das Themengebiet vielleicht sogar zu stark
vereinfacht. Aus diesem Grund werden in Abschnitt 3 Rahmenbedingungen für die Auswahl von CSCW-Systemen angegeben. Besser wäre es natürlich gewesen, wenn alle Kriterien in einem Modell vereinigt wären.
Auch die in den klassischen Einteilungen oft kritisierten Redundanzen finden sich in diesem funktionalen Entwurf. Es wird erwartet, dass die einzelnen Groupware-Lösungen in
allen Bereichen Funktionalitäten aufweisen können. Viele Systeme bieten in allen drei
Säulen Funktionalitäten an. Solche Programme können nicht eindeutig eingeordnet werden, sondern ihre Funktioanlitäten werden den einzelnen Säulen zugeordnet.
Kapitel 3
Rahmenbedingungen des
Groupware-Einsatzes
Im vorhergehenden Kapitel wurde die Strukturierung von CSCW-Systemen diskutiert.
Dabei ist in Abschnitt 2.3 eine eigene Klassifikation entwickelt worden. Das einzige Einteilungskriterium ist bei dieser Methode die Funktionalität, weil diese am bedeutendsten
für den praktischen Einsatz ist. Vom Gesichtspunkt eines Informatikers aus sollte aber
die Funktionalität allein nicht ausschlaggebend für die Auswahl der richtigen Groupware
sein. Ein einfaches Beispiel soll diese These untermauern: Angenommen eine kleine Firma entscheidet sich anhand der Funktionalität für eine Groupware X. Die Lösung X erfüllt
nicht nur die aktuellen Anforderungen des Unternehmens, sondern bietet darüberhinaus
auch noch weitere Funktionen, die in Zukunft interessant werden können. Die getroffene
Auswahl der Firma war, nach funktionalen Gesichtspunkten, absolut richtig. Was die Firma aber erst nach Installation und Umstellung auf die Groupware X bemerkt ist, dass das
CSCW-System für die Mitarbeiter absolut nicht zu bedienen ist. Der Punkt Bedienbarkeit
wurde bei der Auswahl völlig ignoriert und der Funktionalität untergeordnet. Letztendlich
will die Firma aber nicht ein Produkt, das nur theoretisch alle Funktionen bietet, sondern
das auch für die Mitarbeiter zu benutzen ist.
Dieses Kapitel setzt sich mit den so genannten Rahmenbedingungen des GroupwareEinsatzes auseinander. Diese zusätzlichen Anforderungen sollten neben dem Hauptkriterium Funktionalität“ bei der Auswahl der richtigen Groupware-Produkte berücksichtigt
”
werden, in Abbildung 2.3 sind diese zusätzlichen Bedingungen als Fundament des Groupware-Gebäudes illustriert. Dabei werden wieder praxisrelevante Kriterien diskutiert: Die
ausgewählten Rahmenbedingungen sind Aufwand, Bedienbarkeit, Erweiterbarkeit, Flexibilität, Integrierbarkeit, Kosten, Sicherheit und Skalierbarkeit. Sie werden in den
folgenden Abschnitten besprochen. Aus den Rahmenbedingungen leiten sich aber nicht
nur die zusätzlichen Anforderungen bei der Auswahl ab. Auch für die Bestandsaufnahme
der Open-Source-CSCW-Systeme im anschließenden Kapitel werden aus den Rahmenbe32
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
33
dingungen einige Charakteristika abgeleitet, die sie unbedingt erfüllen müssen. Das soll
helfen, die gefundenen Open-Source-Lösungen auf ein sinnvolles Maß zu beschränken
und eine Art Vorauswahl zu treffen.
Abbildung 3.1: Rahmenbedingungen des Groupware-Einsatzes
3.1
Aufwand
Als Synonym für den Begriff Aufwand“ wird oft Aufwendung“ verwendet. Was ist
”
”
darunter genau zu verstehen? Aus der Ökonomie bzw. ihrem Teilgebiet Rechnungswesen stammt folgende Definition: Unter Aufwendungen versteht man die Ausgaben einer
”
Unternehmung für die während einer Abrechnungsperiode verbrauchten Güter, Dienstleistungen und öffentlichen Abgaben, die in der Erfolgsrechnung den Erträgen gegenübergestellt werden“.
In der Informatik begegnet man dem Begriff Aufwand oft, wenn es um Komplexität geht.
Dabei wird Aufwand im Sinne von nötigen Ressourcen verstanden, etwa für Rechenzeit
oder Speicherplatzbedarf eines Algorithmus. In dieser Arbeit wird der Begriff Aufwand
im Sinne von Ressourcen verwendet, die für Einführung, Wartung und Betrieb von Groupware verbraucht werden. Das Ziel ist natürlich, die Aufwendungen möglichst gering zu
halten, also Ressourcen zu schonen.
In der Praxis soll natürlich der Aufwand, den ein Groupware-Produkt verursacht, vorher abgeschätzt werden. Um zu verstehen, was man dabei alles berücksichtigen muss,
kann man annehmen, es wurde bereits ein CSCW-System ausgewählt und bespricht den
Ressourcenverbrauch anhand dieser Situation. Wer die passende Groupware-Applikation
ausgewählt hat, der kann sofort mit der Einführungsphase beginnen. Dabei umfasst die
Einführung unbedingt auch einen Testbetrieb. Das ist normalerweise eine Testinstallation
auf Rechnern, die an keinen Arbeitsprozessen teilnehmen, eine Ad-hoc-Umstellung sollte
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
34
unter gar keinen Umständen vorgenommen werden. Da hinter den meisten Open-SourceLösungen keine Firmen stehen, ist es in diesem Bereich schwierig, Referenzinstallationen
zu begutachten. Solche Installationen können von Neukunden in Augenschein genommen
und getestet werden, sie werden oft vom Hersteller selbst gewartet.
3.1.1
Einführungs-Aufwand
Für den Zweck dieser Arbeit ist eine eigene Testinstallation wohl die geeignetste Lösung.
Voraussetzung ist meist nur ein Computer, der in einem Netzwerk betrieben wird und
den Part eines Groupware-Servers übernehmen kann. Er sollte sonst keine Aufgaben haben. Spezielle Hardware-Anforderungen stellen die meisten CSCW-Systeme nicht, jedoch sollte je nach Einsatzgebiet in einzelne Komponenten investiert werden, etwa sind
für umfangreichen Filesharing-Betrieb auch große und vor allem schnelle Festplatten
nötig.
Noch vor der ersten Testinstallation muss die Frage beantwortet werden, ob ein eigener
Server verwendet werden soll, oder ob nicht ein Miet-Server die bessere Wahl ist. Eine
eindeutige Antwort darauf hängt natürlich von einer Vielzahl von Faktoren ab und muss
immer von Fall zu Fall beantwortet werden.
Ein eigener Server hat den Vorteil, dass man ihn bis in die letzte Instanz unter Kontrolle
hat. Selbst Speicheraufrüstung und Mainboard-Tausch kann man selbst erledigen; auch
mit der Konsequenz, dass man die Auswahl aller Hardware-Komponenten selbst treffen
muss. Man ist also selbst für den Betrieb der Hardware verantwortlich, was bei Stromversorgung und Verkabelung anfängt und bei einem sicheren und nicht jedem zugänglichen
Standort endet. Jede dieser Betriebstätigkeiten bedeutet Aufwand an Arbeitszeit für einen
oder mehrere Administratoren.
Bei einem Miet-Server gibt man immer einen Teil der Verantwortung an den Vermieter
ab. Der Server ist dann in der Regel auch nicht vor Ort und alle Hardware-Arbeiten werden vom Vermieter erledigt. Dabei bieten Vermieter normalerweise Standard-RechnerKonfigurationen an, aus denen ausgewählt werden kann, Sonderwünsche werden meist
gegen Aufpreis auch erfüllt. Damit liegt also schon die Verantwortung für die Hardware
nicht mehr in der eigenen Firma, das ist vor allem für kleine Betriebe interessant, die sich
keine eigenen IT-Spezialisten leisten können.
Neben den Aufwendungen für die Hardware gibt es natürlich auch Aufwendungen für die
Software, zuerst einmal die Installation des Betriebssystems und der Anwendungsprogramme. Bei einem eigenen Server muss man natürlich das Betriebssystem selbst installieren, das wird im Fall eines Servers und mit dem Hintergedanken einer Open-SourceLösung in den meisten Fällen Linux sein. Linux-Distributionen haben sich vor allem in
den letzten drei Jahren den Ruf erworben, äußerst leicht installierbar zu sein, wenn es
um Standard-Hardware geht. Probleme treten meist dann auf, wenn Spezial-Hardware
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
35
unterstützt werden soll. Oftmals liefern die Hersteller nur Treiber für Windows-Systeme
und eine Linux-Lösung existiert noch nicht oder nur zum Teil. Das kann eine Menge
Zeit für Konfigurationen kosten. Man sollte sich also vorher erkundigen, ob die LinuxDistribution die eingesetzte Hardware unterstützt, bzw. ob es Linux-Treiber für alle wichtigen Hardware-Komponenten gibt und ob diese in einem stabilen Zustand sind.
Miet-Server werden mit vorinstalliertem Betriebssystem angeboten. Man kann also davon ausgehen, dass die gesamte Hardware unterstützt wird und das Betriebssystem richtig konfiguriert ist. Auch die nötigen Administrator-Rechte kriegt man. Aber auch hier
gilt, dass ein Miet-Server in der Regel Einschränkungen mit sich bringt, etwa erlauben es
einige Provider nicht, den Kernel neu zu kompilieren, oder es fehlt ein Support für PHPSkripte. Damit man nicht den falschen Server mietet sollte auch hier zuvor eine Anforderungsliste erstellt werden, also die Frage beantwortet werden, welche Voraussetzungen für
den Einsatz der Groupware erfüllt sein müssen. Die konkreten Angebote ändern sich fast
täglich. Es lohnt sich aber nach Angeboten für so genannte LAMP-Systeme zu schauen,
das sind Systeme die auf den Komponenten Linux-Betriebssystem, Apache-Web-Server,
MySQL-Datenbank und PHP-Skript-Unterstützung bauen. Solche dedizierten Server mit
allen Root-Rechten sind bereits ab etwa 40 Euro pro Monat erhältlich. Meist muss zuvor
noch eine Einrichtungsgebühr bezahlt werden.
Wie hoch ist der Aufwand bei einem System-Crash? Im Falle eines eigenen Servers muss
ein Techniker vor Ort sein, der den Schaden repariert. Bei einem Miet-Server kauft man
natürlich die Reaktionsschnelligkeit als Quality-of-Service-Merkmal mit ein. Das heißt
ein Provider wird eine gewisse Ausfallsicherheit garantieren, je höher die Garantie, desto
höher ist auch der Mietpreis. Genauso gibt es Garantieerklärungen für Backups, denn
es ist nicht immer gesagt, dass ein System-Crash die vorhandenen Daten ganz lässt. Je
nachdem wie sensibel die Daten sind, die auf dem Server lagern, ist es sinnvoll, eine
eigene Sicherheitsstrategie zu entwickeln.
3.1.2
Installations-Aufwand
Speziell für Groupware stellt sich jetzt die Frage nach dem Installationsaufwand für die
gewählte Anwendung: Dabei gibt es im Prinzip mehrere Ansätze, die zum Ziel führen. Eine Client/Server-Lösung oder eine Peer-to-Peer-Lösung. Bei einer Client/Server-Lösung
ist einmal eine Installation auf einem Server nötig, also das Aufsetzen des GroupwareServers und auch die Clients müssen mit dem Server kommunizieren können, auch auf
der Client-Seite ist also eine Software-Installation nötig.
Der Aufwand für die Server-Installation ist ein entscheidendes Kriterium auch für die in
dieser Diplomarbeit besprochenen Programme. Da im Open-Source-Bereich die Software
in der Regel sofort auch im Prototypen-Stadium für jeden zugänglich ist, kann der Aufwand für die Installation zwischen den einzelnen Lösungen stark variieren. Es könnte also
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
Aufwendungen
Eigener Server
Dedizierter Server
Virtueller Server
Kosten
einmalig ab
1500 Euro
ab 40 Euro/Monat
ab 10 Euro/Monat
selbst
Vermieter
Vermieter
selbst
Vermieter
Vermieter
selbst
selbst
selbst
ja
ja
ja
keine
je nach Angebot
Kernel-Kompilierung
Transfervolumen
Hardware-Inst.
und Wartung
BetriebssystemInstallation
GroupwareInstallation
AdministratorRechte
Einschränkungen
36
Tabelle 3.1: Eigener Server versus Miet-Server
sein, dass ein vielversprechendes Projekt einfach noch nicht Out-of-the-box lauffähig ist.
Gerade das sollte aber ein Kriterium bei der Entscheidung für oder gegen eine Lösung
sein. In dieser Diplomarbeit werden ausschließlich Lösungen betrachtet, die sich ohne
eigenen Entwicklungsaufwand sofort installieren und auch betreiben lassen.
Auch bei der Client-Installation soll der Aufwand so gering wie möglich gehalten werden. Aus diesem Grund sollen ausschließlich Lösungen betrachtet werden, die als Client
nur einen Web-Browser erfordern. Das hat natürlich auch den Vorteil, dass die Benutzung
plattformunabhängig möglich ist, da Standard-konforme Web-Browser auf allen wichtigen Betriebssystemen verfügbar sind.
Eine Peer-to-Peer-Lösung umfasst im Gegensatz zu Client/Server nur die Client-Installation. Das ist aber in den meisten Fällen ein Spezial-Client, der zusätzlich installiert werden muss. Auch die freie Verfügbarkeit ist in diesem Bereich so gut wie nicht vorhanden,
sodass es praktisch keine aktuellen Open-Source-Produkte gibt, die diesen Bereich abdecken.
3.1.3
Wartungs-Aufwand
Bei der Wartung kommt es meist darauf an, die Software auf dem aktuellsten Stand zu halten. Neuere Versionen enthalten Bug-Fixes und möglicherweise neue interessante Funktionen. Natürlich werden auch Sicherheitslücken früherer Versionen geschlossen. An dieser Stelle sollte man viel Zeit investieren, vor allem auch für den Betrieb eines sicheren
Web-Servers, der mit der Groupware zusammen arbeitet. Hier haben Groß-Projekte einen
klaren Vorteil, weil eine größere Nutzergemeinde und eine höhere Anzahl Entwickler
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
37
Fehler schneller entdecken und beseitigen können.
Für die Pflege des CSCW-Systems sollte mindestens ein Verantwortlicher existieren, der
die Administration übernimmt. Im Idealfall sollten aber mehrere Personen über das Produkt Bescheid wissen. Normalerweise ist der Betrieb von CSCW-Systemen ohne großen
Aufwand verbunden, jedoch müssen bei den meisten zumindest Benutzer-und GruppenAccounts, Software-Installationen und Daten-Backups von einem Administrator ausgeführt und verwaltet werden.
3.2
Kosten
Was unterscheidet Kosten und Aufwand? Unter Kosten versteht man denjenigen Werteverzehr an Gütern und Diensten in einer Abrechnungsperiode, der durch die rein betriebliche Tätigkeit bedingt ist. Beispiele für Kosten sind: Löhne, Gehälter, Mieten, Büromaterial, Reise- und Fahrtkosten. Kosten und Aufwendungen überschneiden sich teilweise,
der Begriff Kosten stammt auch aus einem anderen Teil der Ökonomie, nämlich aus der
Kostenrechnung.
Die eingesetzten Groupware-Lösungen sollen kostenlos erhältlich sein, das ist zwar nach
der genauen Definition bei Open-Source nicht der Fall, diese Diplomarbeit beschränkt
sich aber auf freie Software, die also auch kostenlos zur Verfügung steht. Das hat den
Vorteil, dass der Einsatz auch flexibler bleibt, weil etwa die Kosten bei mehr Gruppenmitgliedern nicht steigen, wie das bei den proprietären Lösungen der Fall ist.
Da auch die Diskussion, ob Open-Source wirklich Kosten spart, intensiv in der Öffentlichkeit geführt wird, gibt es zahlreiche Studien, die sich dem Thema angenommen haben.
Einerseits gibt es Studien, die sowohl dem Open-Source-Lager zusprechen und dieser Art
von Software günstigere Kosten bescheinigen, andererseits gibt es auch Untersuchungen,
die das Gegenteil herausgefunden haben wollen. Zwar sollte man immer darauf achten,
wer die Studien in Auftrag gegeben hat, grundsätzlich gilt aber, dass eine Bewertung der
Total Cost of Ownership (TCO), wie das meist der Fall ist, für Computersysteme nicht
allgemein gültig ist, sondern von der speziell betrachteten Situation abhängig ist. Der
Hauptgrund dafür ist, dass sich die Kosten für Hard- und Software nicht linear mit der
Benutzeranzahl entwickeln, sondern sprunghaft ändern.
Ein reiner TCO-Vergleich lässt außen vor, dass es bei einem Computer-System auch auf
die Verfügbarkeit ankommt. Der TCO-Ansatz betrachtet ausschließlich die Kosten der
EDV und die vorhandene Lösung. Die Verfügbarkeit hat auf der einen Seite einen starken
Einfluss auf die Kosten der EDV Lösung selbst, sie hat aber vor allem auf den Erfolg des
gesamten Unternehmens großen Einfluss: Steht etwa die Groupware-Lösung zur Kommunikation nicht zur Verfügung, so leidet das Unternehmen an entgangenen Gewinnen.
Gerade wenn es darum geht, eine gewisse Verfügbarkeit eines Systems zu garantieren,
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
38
können die Kosten stark nach oben oder nach unten gehen. So sind etwa die Gesamtkosten einer CSCW-Lösung mit einer garantierten Verfügbarkeit von 99,9 Prozent, was etwa
13 Minuten Systemausfall pro Monat bedeutet, weitaus höher als bei 95 Prozent, was immerhin fast elf Stunden Systemausfall im gleichen Zeitraum verheißt. Auch Faktoren wie
Reaktionszeit bei der Behandlung von Problemen haben bei den Kosten erheblichen Einfluss. Die TCO stellen somit nur einen Aspekt zur Beurteilung einer Computer-Lösung
dar.
In den meisten Studien werden die TCO von Linux und Windows verglichen. Linux steht
dabei als prominenter Open-Source-Vertreter auch für andere freie Projekte, insbesondere
auch für die in dieser Arbeit betrachteten freien Groupware-Systeme. Windows verkörpert
ein traditionell proprietäres System, das auch auf dem Groupware-Markt Entsprechungen
in Lotus Notes, Microsoft Exchange oder Novell Groupwise findet.
Eine sehr umfangreiche und auch aktuelle Zusammenstellung zur TCO-Problematik zwischen Open-Source und proprietärer Software gibt es auf den Web-Seiten von David A.
Wheeler1 . Er unterscheidet dabei zwischen Kosten für Anschaffung, Upgrade und Wartung, Lizenz-Management und Hardware.
Die Anschaffungskosten sind meist gleich Null bei Open-Source-Software, denn die Produkte können in der Regel kostenlos aus dem Internet geladen werden. Man könnte
natürlich jetzt anführen, dass dafür auch Kosten für den Rechnerbetrieb und die OnlineVerbindung anfallen. Da diese Kosten aber als äußerst gering einzuschätzen sind, können
sie vernachlässigt werden. Geringe Kosten fallen meist für CD-ROMs, gedruckte Dokumentation und Support an. Meist gibt es FAQ-Rubriken oder Online-Dokumentationen,
die eine Art kostenfreien Grundsupport darstellen.
Die Kosten für Upgrades und Wartung sollten normalerweise auch unterhalb dessen liegen, was für ein proprietäres Produkt fällig wird. Auf kurze Sicht sind zwar normalerweise auch bei nicht-freier Software die Updates kostenlos dabei, betrachtet man aber den
Betrieb über mehrere Jahre, so liegen die Preise für Aktualisierungen fast so hoch wie die
Neuanschaffungskosten.
Auch bei den Lizenzkosten ist die Sachlage eindeutig. Die proprietären Vertreter verdienen durch den Verkauf von Lizenzen ihr Geld, im Unternehmen muss darauf geachtet
werden, dass die Lizenzen immer auf dem aktuellen Stand sind und die Nutzungsrechte nicht verletzt werden. Alle Vorgänge rund um dieses Thema werden unter dem Begriff
Lizenz-Management zusammengefasst. Bei einem Open-Source-Produkt gibt es keine Lizenzen, die man verwalten müsste - also gibt es auch kein Lizenz-Management.
Die Hardware-Kosten spielen auch keine unerhebliche Rolle. Open-Source-Software ist
in der Regel genügsamer, was Hardware-Voraussetzungen für den Betrieb betrifft. Oftmals können alte Systeme, die schon ausgedient hatten, wieder verwendet werden.
1 http://www.dwheeler.com/oss
fs why.html#tco
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
39
Zusammenfassend kann man sagen, dass die Kostenseite klar für Open-Source-Software
spricht, auch das ist ein wichtiger Grund, warum in dieser Arbeit ausschließlich solche
Systeme behandelt werden.
Kosten
Open-Source-Software
Proprietäre Software
Anschaffungs-Kosten
Upgrade-Kosten
Lizenz-Kosten
Hardware-Kosten
keine
keine
keine
niedrig bis mittel
Grundpreis + Lizenzen
bis zu 80 Prozent des Neupreises
variabel
mittel bis hoch
Tabelle 3.2: Kostenvergleich: Open-Source versus proprietäre Software
3.3
Bedienbarkeit
Auch Bedienbarkeit ist ein Begriff, der häufig in der Informatik auftritt, speziell auch im
Software-Bereich. Ein Programm soll immer möglichst leicht oder intuitiv zu bedienen
sein. Aus diesem Grund ist auch die Bedienbarkeit ein wichtiger Punkt des SoftwareEngineering und zwar von der ersten Testphase an. Leider ist gute Bedienbarkeit“, oder
”
Benutzerfreundlichkeit, wie es oft auch genannt wird, nicht messbar, sondern ein subjektiver Eindruck. Programme, die für den einen einfach zu bedienen sind, können für den
anderen undurchschaubar sein. Unstrittig sollte aber sein, dass vor allem die Benutzung
von Computer-Programmen auf Erfahrungswerten beruht.
Ein kleines Beispiel soll dies verdeutlichen: Wenn man mit der Anwendung eines RechnerProgramms fertig ist, wird man zum Beenden sicher nach einem Menüpunkt Exit“,
”
Quit“, Beenden“ oder Verlassen“ suchen. Genau das Gegenteil hat sich aber durch
”
”
”
die Einführung von Microsoft Windows 95 und sämtlichen Nachfolgern in die Gedächtnisse der Windows-Nutzer eingebrannt: Wer Windows beenden will klickt zuerst auf den
Start-Knopf“ der so genannten Task-Leiste, erst dann gibt es einen Button für das Be”
enden der Sitzung. Zugegebenermaßen ist dieses Beispiel etwas überspitzt formuliert, jedoch zeigt es, dass bei der Anwendung von Software Erfahrungswerte gesammelt werden,
auch wenn die Bedienbarkeit kontraintuitiv ist.
Ein falscher Ansatz wäre es aber jetzt zu folgern, dass die Nutzer sich schon an die
Groupware-Bedienung gewöhnen werden. Im Gegenteil, es sollte versucht werden die
Benutzer in einer vertrauten Umgebung arbeiten zu lassen. Das kann auf zwei Arten
funktionieren: Entweder die Benutzer verwenden zur Bedienung ein Client-Programm,
dass sie bereits kennen, oder der neue Client wird an den Erfahrungsschatz der Nutzer
angepasst.
Es bietet sich an, für die intuitive Bedienung einer Groupware einen Web-Browser als Cli-
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
40
ent zu verwenden. Dabei wird vorausgesetzt, dass die Benutzer der Groupware Erfahrung
mit Browsern haben, also die Navigation beherrschen. Im Idealfall sollte die passende
Groupware in jedem Browser funktionieren, der sich an W3C-Standards hält. Alle in dieser Arbeit getesteten Programme können über einen Web-Browser bedient werden.
3.4
Erweiterbarkeit
Wenn man in Zusammenhang mit CSCW-Systemen von Erweiterbarkeit spricht, meint
man meist die Erweiterbarkeit um zusätzliche funktionale Gesichtspunkte, die Erweiterbarkeit in Hinblick auf größere Gruppen wird in Aschnitt 3.8 unter dem Begriff Skalierbarkeit besprochen. Dabei gibt es einige Grundannahmen: Etwa kann ein System,
das modular aufgebaut ist, in der Regel leichter erweitert werden, als eines mit monolithischer Struktur. Bei einem Modulsystem sollte man zusätzliche Bausteine einfach
hinzufügen können, wohingegen ein monolithisches System als Ganzes aktualisiert werden muss. Am interessantesten ist, welche Erweiterungsmöglichkeiten es denn überhaupt
gibt, existieren Zusatzmodule oder Ergänzungsprojekte? Es gibt zum Beispiel für das
Groupware-Projekt phpGroupware ein Ergänzungsprojekt, dass ein Modul für die Anbindung von Palm-Organizern an die Termindatenbank von phpGroupware realisiert. Wenn
also eine Firma etwa die Außenmitarbeiter mit Palm Pilots ausstatten will, dann sollte sie so etwas berücksichtigen. Hier haben große Projekte normalerweise einen Vorteil
gegenüber kleinen, denn je mehr Entwickler und Benutzer ein System hat, desto mehr
Erweiterungsmöglichkeiten gibt es meist.
Als nächstes ist es wichtig, ob die Erweiterungen mit vertretbarem Einsatz eingebaut
werden können, was natürlich auch wieder eine Frage des Aufwands ist. Vor allem im
Open-Source-Bereich ist es so, dass viele Erweiterungen erst noch in der Entwicklung
sind und es nicht sicher ist, wann sie fertiggestellt werden. Ein halbfertiges Modul ist
zwar besser als gar kein Modul, für den praktischen Einsatz ist es aber auch wertlos.
Der Entwickleraspekt soll nicht verschwiegen werden: Erweiterbarkeit ist auch immer
eng mit der Frage nach Standardisierung verknüpft. Die hier betrachteten Open-SourceSysteme setzen auf offene Standards, was die Erweiterbarkeit des CSCW-Systems fördert.
Man kann also im vorhinein Informationen einholen, ob das gewünschte Projekt auf gewisse Standards aufsetzt, die später für Erweiterungen interessant sein könnten, natürlich
erst recht vor dem Hintergrund eigener Erweiterungen.
Beispiele für solche Standards sind etwa die http-Protokoll-Erweiterung WebDAV und
der Verzeichnisdienst LDAP. WebDAV steht für ”Web-based Distributed Authoring and
Versioning”, und soll vor allem die Web-basierte Zusammenarbeit durch zusätzliche Features für http erleichtern. Die Protokollerweiterung stellt Locking-Mechanismen bereit,
außerdem ist eine Speichermöglichkeit für Metadaten eingebaut. Gearbeitet wird zur Zeit
an einer Funktion für Versionierung und Zugriffs-Kontrolle.
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
41
LDAP steht für Lightweight Directory Access Protocol und stellt eine Alternative zum
X.500 Verzeichnis-Dienst dar. Es basiert auf TCP/IP und ist von der Internet Engineering
Task Force standardisiert. Das Protokoll bietet einen einheitlichen Standard für DirectoryServices, also Verzeichnis-Dienste, ohne dabei einen Directory-Inhalt zu definieren und
hat ein weltweit eindeutiges Format, in dem alle Namen darstellbar sind.
3.5
Flexibilität
Flexibilität bedeutet wörtlich übersetzt Biegsamkeit oder Elastizität; unter Flexibilität von
CSCW-Systemen versteht man die Möglichkeit, sie an die eigenen Bedürfnisse anzupassen. Zur Flexibilität gehört eigentlich auch die eben besprochene Erweiterbarkeit.
Die Flexibilität in Bezug auf Anpassbarkeit bringt das Open-Source-Modell wieder in den
Blickpunkt. Bei dieser Art der Software-Verteilung besteht die Möglichkeit der Einsichtnahme in der Quelltext. Meist kann dieser dann auch selbst auf die eigenen Bedürfnisse
angepasst werden. Aus diesem Grund werden ausschließlich freie Lösungen in dieser Diplomarbeit betrachtet.
Auch die Einstellungsmöglichkeiten bei der Administration der Groupware sollten flexibel sein. Das ist in der Regel bei Open-Source-Software stärker der Fall als bei proprietären Lösungen. So sollte beispielsweise ein Groupware-System auch auf mehreren
Betriebssystemen laufen. So kann selbst bei einem Wechsel der Server-Plattform das
CSCW-System mitgenommen werden.
Auch müssen die Systeme flexibel zu benutzen sein. Wichtig ist, dass die Benutzung
unabhängig von einer bestimmten Plattform oder einem Betriebssystem sein muss. Ein
Beispiel, bei dem das nicht so ist, ist Outlook. Der Client ist nur für Windows-Systeme
verfügbar, zwar gibt es mit Evolution einen Clone aus der Linux-Welt, der kann aber zum
einen nicht alle Features des Groupware-Servers Exchange nutzen und zum anderen ist er
wieder nur eine Lösung für Unix und Linux.
Systeme die rein über einen Browser bedient werden können bieten den Vorteil, dass
sie auf Client-Seite Plattform- und Betriebssystem-unabhängig sind. Standard-konforme
Web-Browser existieren schließlich für alle gängigen Rechner. Die Flexibilität einer reinen Web-Lösung zeigt sich auch im Punkt Mobilität der Benutzung. Wer eine Groupware
nutzt, möchte sie entweder unterwegs dabei haben oder, was eleganter ist, von unterwegs
darauf zugreifen. Web-basierte Groupware-Systeme setzen nur einen Internetanschluss
voraus, der sollte sich in den meisten Fällen auch finden lassen. Ein Nachteil dieser
Online-abhängigen Lösunge ist aber, dass ohne Internet-Zugang auch der GroupwareZugang verschlossen bleibt - solche Schwierigkeiten kann man umgehen, indem man
etwa wichtige Dokumente lokal ablegt.
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
3.6
42
Integrierbarkeit
In den meisten Firmen, die an einer Groupware-Lösung interessiert sind, ist bereits ein
E-Mail-System im Einsatz oder es wird bereits ein Web-Server betrieben, den das CSCWSystem nutzen könnte. Wenn schon vorhandene Kompomenten bei der Einführung neuer
Groupware weiterverwendet werden wollen, dann stellt sich die Frage nach Integrierbarkeit.
Dabei sind vor allem die im Open-Source-Umfeld eingesetzten offenen Standards nützlich. Auch Protokolle für den Web-Zugriff sind offen standardisiert, etwa http, WebDAV,
LDAP, POP oder IMAP. Die meisten Open-Source-Groupware-Produkte greifen auf den
Apache Web-Server zurück, nutzen als Datenbank MySQL und immer häufiger auch die
Skript-Sprachen Perl und PHP. Meist setzen sie sogar voraus, dass ein eigener Mail-Server
bereits in Betrieb ist und bieten Zugriff auf den LDAP-Verzeichnisdienst.
Lösungen für kommerzielle Web-Server, etwa Microsofts Internet Information Server,
gibt es zwar, sie haben aber praktisch keine Bedeutung. Momentan lässt sich ein Trend erkennen, der die Programmierung von Open-Source-Clients umfasst, die mit dem GroupareServer Exchange von Microsoft zusammenarbeiten. Etwa entwickelt das Bundesamt für
Sicherheit in der Informationstechnik an einem entsprechenden Programm. So ließen sich
etwa Linux-Clients in eine Windows-Groupware integrieren.
Normalerweise lässt sich eine Open-Source-Software leichter integrieren als proprietäre
Programme, die oft alle Komponeten aus den Händen eines Herstellers voraussetzen.
Wichtig ist, dass man sich vorher über die Möglichkeiten der Groupware im Klaren ist,
denn auch bei freier Groupware lässt sich nicht alles mit jedem kombinieren, nur weil
darunter offene Standards liegen. Hersteller-Lösungen haben den Vorteil, dass die Interoperabilität besser gewährleistet ist.
3.7
Sicherheit
In dieser Arbeit ist die Sicht auf Groupware-Systeme beschränkt, die über einen Browser
bedient und meist auch administriert werden. Bevor das System in Betrieb geht, müssen
geeignete Sicherheitsrichtlinien erarbeitet werden und Sicherheitsmaßnahmen getroffen
werden. Wenn das System läuft, müssen die Richtlinien überwacht und gegebenenfalls
überarbeitet werden.
Zuerst muss sichergestellt sein, dass die Gruppenmitglieder sich auch als solche sicher
authentifizieren können. Grundlegende Voraussetzung dafür ist meist ein Schutz aus Zugangskennung und Passwort. Die richtige Kombination dieser beiden Parameter authentifiziert ein Gruppenmitglied als gültigen Benutzer. Sicherer funktionieren modernere Methoden der Authentifizierung, etwa die Benutzung von SmartCards. Eine Software, die
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
43
dafür eine Schnittstelle bietet, ist als potentiell sicherer einzustufen.
Sicherheit bei der Benutzung von Groupware kann etwa bedeuten, dass die Systeme über
eine https-Verbindung bedient werden. https ist eine Erweiterung des http-Protokolls, das
die gängigen Web-Server zur Verfügung stellen und eigentlich alle Browser auch unterstützen. Auch die meisten Web-basierten Groupware-Programme können diesen verschlüsselten Weg der Kommunikation nutzen.
Sicherheit in Bezug auf Groupware bedeutet auch, dass es eine Möglichkeit geben muss,
so genannte Gruppenrichtlinien festzulegen, also verschiedenen Gruppenmitgliedern unterschiedliche Rechte zu geben. Normalerweise sollte es eine Gruppe Admnistratoren geben, die erweiterte Rechte hat. Auch eine Gruppe für normale Benutzer“ sollte einge”
richtet sein, damit alltägliche Arbeiten nicht unnötig mit erweiterten Rechten ausgeführt
werden und so eine potentielle Sicherheitslücke darstellen.
Grundlegende Untersuchungen zur Sicherheit von Open-Source-Software haben gezeigt,
dass diese Systeme potentiell sicherer sind als proprietäre. Eine Zusammenstellung gibt
es auf den Web-Seiten von David A. Wheeler2 .
Auch die Integrität der gespeicherten Daten ist ein wichtiger Teil von Sicherheit. Es sollte
zum Beispiel sichergestellt werden, dass es eine Backup-Möglichkeit gibt, die wichtige
Daten in regelmäßigen Abständen sichert.
3.8
Skalierbarkeit
Skalierbarkeit bedeutet die Erweiterbarkeit eines CSCW-Systems bezüglich der Leistungsanforderungen. Etwa ist bei einer Groupware entscheidend, dass sie auch größere Gruppen unterstützt. Außerdem ist wichtig, dass die Skalierbarkeit möglichst einfach erreicht
wird, etwa dass sich die Gruppenstärke leicht erweitern lässt.
Einerseits muss es also leicht möglich sein, neue Gruppen oder Gruppenmitglieder hinzuzufügen. Andererseits muss auch der Groupware-Server für größere Auslastungen skaliert werden können, etwa wäre der Betrieb auf zwei physischen Rechner möglich. An ein
CSCW-System werden zwei Anforderungen für Skalierbarkeit gestellt:
• Skalierbarkeit für Gruppen
• Skalierbarkeit bezüglich der genutzten Server
2 http://www.dwheeler.com/oss
fs why.html#security
KAPITEL 3. RAHMENBEDINGUNGEN DES GROUPWARE-EINSATZES
3.9
44
Zusammenfassung
Die Vorstellung der Rahmenbedingungen in diesem Kapitel soll den Auswahlprozess
nicht verkomplizieren, im Gegenteil: Es geht darum, aufzuzeigen, dass ein Auswahlkriterium wie Funktionalität zwar als Hauptaspekt verwendet werden kann, es gibt aber noch
Zusatz-Bedingungen, die bei der Entscheidung berücksichtigt werden sollten.
In Abbildung 3.1 sind die besprochenen Rahmenbedingungen als Teile eines Puzzles illustriert, am Rand kann man sogar noch einige angrenzende Stücke erkennen, die nicht
beschriftet sind. Das ist durchaus gewollt, denn die Rahmenbedingungen sind von Fall
zu Fall anders zu bewerten. Jeder, der vor einer Entscheidung für die richtige Groupware
steht, muss seine eigenen Rahmenbedingungen definieren und vor allem auch priorisieren. Die in diesem Kapitel besprochenen Aspekte sollen dafür ein Leitfaden sein, der um
zusätzliche Kriterien ergänzt oder auch gekürzt werden kann.
Dabei ist es durchaus sinnvoll, mehr Zeit in die Auswahl zu investieren, denn wenn
man erst nach der Einführung merkt, dass die Groupware untauglich ist, steigen die Kosten überproportional. Um die passende Groupware-Applikation zu finden, sind nur drei
Schritte notwendig:
1. Passende Lösungen nach Funktionalität auswählen.
2. Rahmenbedingungen der ausgewählten Lösungen vergleichen.
3. Passende Groupware einführen.
Kapitel 4
Web-basierte Open-Source-Groupware
Der Open-Source-Groupware-Markt erlebte 2002 eine Flut neuer Projekte; in einschlägigen Foren wurde sogar von einer Groupware-Schwemme im Open-Source-Bereich geschrieben. Gute Übersichten zu aktuellen Open-Source-Projekten gibt es bei Grantbow1 ,
www.thinkofit.com und http://sourceforge.net. Durch die in Kapitel 3 erarbeiteten Anforderungen konnte die Anzahl der letztendlich betrachteten Lösungen auf zwölf
Open-Source-Projekte eingeschränkt werden; diese sind auf dem aktuellen Stand Mitte
April 2003. Dabei wurde nicht jedes geeignete Programm in die Bestandsaufnahme mit
aufgenommen, etwa gibt es bei den WikiWebs zahlreiche Implementierungen, die aber
alle dasselbe Prinzip verfolgen. Aus der Masse sind in so einem Fall immer geeignete
Beispiele ausgewählt worden. Eine weitere Klasse von Systemen, die vor allem im UnixBereich eine große Verbreitung hat, sind die Bulletin-Board-Systeme, oder auch WebConferencing-Systeme genannt. Auch aus diesem Bereich wird nur ein repräsentativer
Vertreter vorgestellt.
4.1
Auswahlkriterien
Die Auswahlkriterien für die getesteten CSCW-Systeme sind aus der Aufgabenstellung
und den ermittelten Rahmenbedingungen abgeleitet worden. Natürlich müssen alle Systeme der Definition von Groupware genügen. Zusammengefasst sind die wichtigsten
zusätzlichen Eigenschaften:
Open-Source-Produkte: Die gesichtete Software muss den Anforderungen an OpenSource-Programmen genügen. Für diese Arbeit wurde vereinfacht angenommen,
dass die Programme frei in doppeltem Sinn sind: Einmal im Sinne von ”kostenlos
1 Ein
Portal für OS-Groupware unter www.grantbow.com/groupware.html
45
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
46
erhältlich” und einmal im Sinne von ”der Quelltext ist einsehbar und darf verändert
werden”. Diese Einschränkung schließt offensichtlich nicht nur die proprietären
und kommerziellen Systeme aus: Bei der Bestandsaufnahme zeigte sich auch, dass
viele Angebote, etwa Messaging-Dienste oder Forum-Hosting zwar kostenlos ist,
die Software aber nicht im Quelltext verfügbar ist.
Web-Browser als Client: In dieser Arbeit werden nur die so genannten Web-basierten
Groupware-Systeme berücksichtigt. Das bedeutet, dass die betrachteten Lösungen
ausschließlich über einen Browser bedient werden können. Produkte mit eigener
Client-Software bleiben außen vor.
Out-of-the-Box lauffähig: Um den Aufwand für die Installation und Administration so
gering wie möglich zu halten, werden nur Lösungen betrachtet, die sich Out-ofthe-Box einrichten lassen und danach sofort lauffähig sind. Das schließt vor allem
Produkte in frühem Entwicklungsstadium aus, bei denen noch zu viele Bugs auftreten.
Out-of-the-Box benutzbar: Das gleiche Prinzip wie für Installation und Administration
soll auch für die Benutzung gelten, die Systeme sollen sofort ohne große Anpassungen einsetzbar sein.
4.2
Testschema
Die gefundenen Groupware-Lösungen wurden auf verschiedenen Betriebssystemen getestet: Auf einem virtuellen Red Hat 7.3 Server, auf Mandrake Linux 9.0/9.1, auf Red Hat
9.0 und SuSE 8.2. Schritt für Schritt sind die Anleitungen auf Red Hat 7.3 und Mandrake
9.0 und 9.1 lauffähig, die Installation auf den anderen Linux-Distributionen unterscheiden
sich dabei in einigen Punkten, etwa in der verwendeten Verzeichnisstruktur oder den eingebauten Compilern. Auch die benötigten Software-Pakete heißen von System zu System
anders. Die Beschreibung der Installation orientiert sich dabei an den gängigsten Methoden, Software unter Linux zu verteilen: Als fertiges Binär-Paket und als Quell-Paket - alle
beschriebenen Operationen funktionieren über die Kommandozeile.
Als Paketformat hat sich RPM des Linux-Distributors Red Hat weitgehend etabliert, das
Kürzel steht für Red Hat Package Manager. Wenn das Paket für das zugrundeliegende Betriebssystem erstellt worden ist, reicht normalerweise ein Befehl aus um es zu installieren.
Besonders gut ist, dass auch eine Deinstallation in der Regel nur einen Befehl erfordert.
RPM-Pakete werden entweder von den Projekten selbst angeboten oder Distributoren
oder auch Privatpersonen stellen maßgeschneiderte Pakete zur Verfügung. Bei der Suche nach RPM-Pakten helfen auch spezielle Suchmaschinen, etwa http://rpmseek.com
oder http://rpmfind.net.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
47
Bei Verwendung der Quelltexte muss der Anwender das Paket zuerst selbst übersetzen.
Das ist meist auch nicht schwer, trotzdem verlangt es tiefere Kenntnisse über das System
und eine Reihe passender Bibliotheken. Die Vogehensweise in dieser Arbeit sieht so aus,
dass immer die Installation des Quell-Pakets beschrieben wird. In der Praxis kann aber
ein Paketformat viel Zeit sparen. Falls also Pakete angeboten werden, können diese in der
Regel ohne Bedenken und mit weniger Aufwand installiert werden. Schlägt jedoch eine
Paketinstallation fehl, dann kann man immer noch auf die Quelltexte zurückgreifen.
Bei der Bestandsaufnahme der Groupware-Programme wird am Anfang kurz zur Entwicklung und der Vitalität der gefundenen Lösungen Stellung genommen; das soll einen
Eindruck vermitteln, wie oft mit Updates gerechnet werden kann,wie groß die Entwicklergemeinde ist und wie weit das Projekt schon entwickelt ist. Danach werden die Voraussetzungen für die Installation angegeben. Dann wird der Installationsprozess beschrieben,
und auftretende Probleme und Schwierigkeiten werden dargestellt. Außerdem gibt es eine Kurzeinführung in die ersten zu treffenden Maßnahmen nach der Inbetriebnahme des
Systems.
Anhand der Dokumentation wird die Funktionalität überprüft, das ist wichtig für die
spätere Einordnung in das Klassifikationsschema in Abschnitt 5. Außerdem werden die
Zusatz-Anforderungen überprüft, die bereits in Kapitel 3 als Ergänzung zur Funktionalität
herausgearbeitet wurden. Sie werden jeweils im Fazit der einzelnen Groupware-Lösung
besprochen. Wichtig ist, dass die aufgeführten Lösungen nicht in einem Vergleichstest
einen Sieger unter sich ausmachen müssen. Vielmehr soll dies eine Bestandsaufnahme
sein, in der die vorhandenen Lösungen mit ihren Stärken und Schwächen dargestellt werden sollen.
4.3
Backtalk
Das Backtalk-Projekt im Internet: www.unixpapa.com/backtalk
4.3.1
Entwicklung und Vitalität
Backtalk ist ein Open-Source-Conferencing-System, das seit 1996 ausschließlich in der
Programmiersprache C entwickelt wird. Es wird in dieser Arbeit stellvertretend für die
Bulletin-Board-Systeme vorgestellt. Das aktuelle Stable-Release trägt die Versionsnummer 1.1.15, die Entwicklerversion 1.3.2 ist aber auch bereits sehr stabil. Backtalk ist laut
seinen Machern ähnlich zu Systemen wie Picospan, Yapp, Caucus oder Motet zu sehen.
Backtalk ist kein Multimedia-System, denn es erlaubt nur textliche Kommunikation. Hintergrund der Entwicklung war der Bedarf eines Kommunikationssystems, das gleichermaßen in modernen Browsern und im Text-Browser Lynx funktioniert. Im Laufe der Zeit
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
48
haben sich einige Derivate von Backtalk entwickelt, etwa Booktalk, ein System, das speziell für Schulen ausgelegt ist.
4.3.2
Voraussetzungen
Backtalk lässt sich nur auf Unixsystemen und Derivaten, etwa Linux, installieren. Für
den Betrieb ist zusätzlich noch ein CGI-fähiger Web-Server notwendig. Eine Datenbank
wird nicht zwingend benötigt. Außerdem sollte man sich vor der Installation darüber im
klaren sein, wie sich die Benutzer später beim System authentifizieren sollen. Dabei gibt
es im Prinzip drei Möglichkeiten: Backtalk-Accounts, Unix-Accounts und DatenbankAccounts. Backtalk-Accounts haben den Vorteil, dass sie leichter einzurichten sind, man
braucht nur Zugriff auf das CGI-BIN-Verzeichnis. Unix-Accounts greifen dabei auf die
Datei /etc/passwd zurück, die in klassischen Unix-Systemen die Passwörter verwaltet.
Sie können auch dazu benutzt werden, Zugriff über das File Transfer Protocol oder Secure
Shell zu steuern. Will man ein bereits bestehendes Login-Verfahren, etwa gestützt auf
Datenbanken, nutzen, so ist das meist mit Mehraufwand verbunden, weil Backtalk erst
entsprechend konfiguriert werden muss. In diesem How-To werden Backtalk-Accounts
verwendet, das ist eigentlich die sinnvollste Methode, denn sie fügt sich in die Einfachheit
des Backtalk-Konzepts ein.
4.3.3
Installation
Die Installation von Backtalk ist ein klassischer Dreischritt, bestehend aus Konfiguration, Ausführen des Make-Files und Installation. Viele Systeme, die so installiert werden,
sind schon passend vorkonfiguriert, sodass nur noch die Befehle ./configure, make und
make install nötig sind. Bei Backtalk ist das leider nicht so, vor allem das Anpassen
des Konfigurationsskripts erfordert einigen Aufwand.
Backtalk kann von www.unixpapa.com/backtalk geladen werden, das Paket trägt den
Namen backtalk-1.1.15.tar.gz. Es kann in ein beliebiges Verzeichnis gespeichert
werden, etwa /usr/local/src.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
49
#Wechsel ins Root-Verzeichnis des Apache
cd /var/www/htdocs
#Root-Rechte bekommen
su
#Backtalk-Quellen nach /var/www/htdocs entpacken
tar xvzf /usr/local/src/backtalk-1.1.25.tar.gz
#Backtalk-Verzeichnis umbenennen
mv backtalk-1.1.25 backtalk
#Wechsel ins Backtalk-Verzeichnis
cd backtalk
Unter der Web-Adresse http://localhost/backtalk/doc/install.html findet sich
eine Beschreibung der Installation. Das ist deshalb wichtig, weil sich die verschiedenen Backtalk-Versionen untereinander in einigen Punkten unterscheiden. Das auf dem
Backtalk-Server zugängliche Manual ist beispielsweise noch für die Vorgängerversion geschrieben, also nicht ganz auf dem aktuellen Stand. Zuerst wird das Konfigurations-Skript
ohne Optionen aufgerufen. Daraufhin startet ein Dialog, in dem einige System-Parameter
festgelegt werden müssen.
#Aufruf des configure-Skripts
./configure
#Dokument-Root-Verzeichnis festlegen
/var/www/htdocs/backtalk
#URL von Backtalk festlegen
http://localhost/backtalk
#CGI-BIN-Verzeichnis festlegen
/var/www/cgi-bin/backtalk
#CGI-BIN-URL festlegen
http://localhost/cgi-bin/backtalk
#Apache-Owner festlegen
nobody
#Backtalk-Owner festlegen
nobody
Die Konfiguration von Backtalk ist abgeschlossen, es gibt zwar noch weitere Optionen,
die möglich wären, die Default-Werte funktionieren aber gut. Jetzt kann das Makefile aufgerufen werden, es kompiliert den Backtalk-Interpreter und Backtalk-Compiler.
Außerdem werden für die Backtalk-Accounts einige Administrator-Tools bereitgestellt:
makeacct, btpasswd, btvalid, btrmuser und btmkuser.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
50
#Makefile aufrufen
make
#Binaries installieren
make install-binaries
#Skripte installieren
make install-skripts
#BBS installieren
make install-bbs
#Benutzerverwaltung installieren
make install-users
Die Installations-Routine der Benutzerdatenbank fragt nach einem Passwort für den Administrator cfadm. Dieses wird später für den ersten Login benötigt. Bevor man die Konfiguration in einem letzten Schritt anpassen kann, muss der Apache geeignet eingerichtet
werden. Wenn er so wie in 6.1.3 beschrieben konfiguriert ist, muss man nur noch die Datei httpd.conf ergänzen. Diese öffnet man mit einem Editor und trägt folgende Zeilen
ein:
#Einträge in httpd.conf ergänzen
<Directory "/var/www/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>
Im Verzeichnis scripts liegt die Datei config.bt, in der Backtalk noch der letzte Schliff
verpasst werden muss. In dieser Datei kann etwa ein Logo definiert werden, oder das
Layout angepasst werden. Einige wichtige Einstellungen sind die folgenden:
#Skript-Rekompilierung einstellen
/auto recompile 1 def
#Rechte für Benutzer-Accounts
/newuseropen 2 defconstant
Die Installation von Backtalk ist jetzt abgeschlossen. Der nächste Abschnitt zeigt die
ersten Schritte zur Inbetriebnahme des Systems.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.3.4
51
Start und Administration
Über den URL http://localhost/cgi-bin/adm/backtalk/admin/begin kann man
sich als Administrator mit der Kennung cfadm und dem bei der Installation festgelegten
Passwort einloggen. Danach kann das System über das Web-Interfacke konfiguriert werden. Selbsterklärende Buttons stehen dafür zur Verfügung. Benutzer können sich selbst
Accounts anlegen, dafür muss einfach die Web-Seite http://localhost/backtalk aufgerufen werden.
4.3.5
Funktionalität
Ruft man sich das 3-Säulen-Modell aus Abschnitt 2.3 in Erinnerung, so wird schnell
klar, dass Backtalk lediglich Groupware-Funktionen der ersten Säule zur Verfügung stellt
- also rein Nachrichtenaustausch bietet. Das Ganze funktioniert asynchron und implizit, damit ist Backtalk einer der Ausnahmefälle, die wegen des vornehmlichen Nutzens
als Nachrichtenaustausch-Plattform nicht zu Informationsverarbeitung gezählt werden.
Trotzdem kann Backtalk auch für Informationsverarbeitung genutzt werden, dies ist aber
nur für unstrukturierte Daten möglich.
Der Gruppengedanke wird unterstützt, das heißt, Administratoren können explizit Gruppen anlegen. Dafür gibt es die Account-Tools. Entsprechend steht für das Anlegen neuer
Conferences ein Conference-Tool zur Verfügung.
Benutzer haben die Möglichkeit, sich immer die neuesten Einträge anzeigen zu lassen, außerdem gibt es eine Suchfunktion und die Möglichkeit, selbt verfasste Beiträge zu ändern.
4.3.6
Fazit
Backtalk ist ein klassisches Web-Conferencing-System. Es dient zum Austausch von
Nachrichten und nutzt CGI. Als implizites System bildet es einen Ausnahme-Fall beim
Nachrichtenaustausch.
Aufwand: Der Aufwand für die Installation ist, verglichen mit moderneren GroupwareProjekten, relativ hoch. Dafür sollten sich die Voraussetzungen ohne Probleme
schaffen lassen. Für das Einrichten sind nicht einmal Root-Rechte nötig, eine Datenbank wird auch nicht gebraucht. Der Administrations-Aufwand hält sich in Grenzen.
Kosten: Backtalk ist kostenlos und im Quell-Code frei verfügbar.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
52
Bedienbarkeit: Die Bedienbarkeit von Backtalk ist für die Benutzer intuitiv und leicht
zu verstehen, die Administration kann zusätzlich zum Web-Interface auch direkt in
den Konfigurationsdateien erfolgen.
Erweiterbarkeit: Backtalk lässt sich leider nicht um zusätzliche Funktionen erweitern,
es gibt lediglich ein Basis-Paket. Es stehen keine Zusatz-Module zur Verfügung,
die etwa Standards wie LDAP oder WebDAV nutzen könnten.
Flexibilität: Auch eine gewisse Flexibltiät wohnt dem System inne, das fängt beim Anpassen des Layouts an, und geht über die Möglichkeit, Benutzer-Accounts frei verwalten zu lassen bis zur Möglichkeit bestehende Authentifizierungs-Möglichkeiten zu nutzen. Als etwas betagtes System ist Backtalk auch auf vielen klassischen
Unix-Systemen lauffähig. Groupware-Funktionalität bietet die Software nur beim
asynchronen Nachrichtenaustausch und bei der Verarbeitung unstrukturierter Informationen.
Integrierbarkeit: Backtalk lässt sich mit bestehenden Web-Server, vorzugsweise Apache, verwenden. Außerdem können bestehende Authentifikations-Systeme genutzt
werden, etwa eine SQL-Datenbank. Bestehende Mail-Server und Daten aus anderen
Groupware-Applikationen können nicht weiterverwendet werden.
Sicherheit: Backtalk bietet alle Stärken und Schwächen eines CGI-basierten Systems,
es kann natürlich über eine https-Verbindung betrieben werden. Füt die Benutzerverwaltung stehen Zugangs-Kontroll-Listen zur Verfügung und die BenutzerAuthentifizierung kann auch Datenbank-gestützt ablaufen. Die Datenintegrität kann
durch eine eingebaute Backup-Möglichkeit gewährleistet werden.
Skalierbarkeit: Gute Skalierbarkeit ist auf jeden Fall gegeben: Die Benutzeranzahl ist
unbegrenzt und auch die Anzahl der Conferences ist nicht limitiert.
Anmerkung: Eine Inkompatibilität neuerer Linux-Versionen in Bezug auf reguläre Ausdrücke macht eine Installation von Backtalk momentan zur Tortur. Nähre Informationen gibt es unter www.unixpapa.com.
4.4
Discus
Das Discus-Projekt im Internet: www.discusware.com/discus4/index.php
4.4.1
Entwicklung und Vitalität
Discus ist eine kostenlos erhältliche Discussion-Board-Software, die CGI als Kerntechnik
nutzt. Das Programm wird seit 1997 entwickelt und unter einer eigenen Lizenz vertrieben;
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
53
trotzdem darf der Source-Code frei verteilt werden. Zusätzlich zum Open-Source-Paket
existiert eine kommerzielle Pro-Version, die etwas erweiterten Funktionsumfang besitzt
und für die die Firma Discus auch Support übernimmt. Hier wird ausschließlich die OpenSource-Variante besprochen.
4.4.2
Voraussetzungen
Discus benötigt für den Betrieb einen Web-Server, der CGI-Skripts unterstützt. Außerdem ist ein aktueller Perl-Interpreter nötig. Die in Abschnitt 6.1.3 besprochene ApacheInstallation ist dafür sehr gut geeignet.
4.4.3
Installation
Eine Discus-Version kann von der Web-Seite www.discusware.com/discus4/index.php
geladen werden. Die aktuelle Quelldatei für Linux-Systeme und mit Support für westeuropäische Sprachen trägt den Namen discus4 00 3-w european-free.tar.gz. Sie
kann in ein beliebiges Verzeichnis gespeichert werden, etwa in /usr/local/src.
#Ins Verzeichnis /usr/local/src wechseln
cd /usr/local/src
#Root-Rechte annehmen
su
#Quelldatei entpacken
tar xvzf discus4 00 3-w european-free.tar.gz
#In das Discus-Verzeichnis wechseln
cd discus4 00
#Intallationsskript aufrufen
perl 1st install.pl
Das Installations-Skript fragt einige Systemspezifika ab, etwa wo der Perl-Interpreter
liegt und welche CGI-Extensions der Web-Server verwendet. Danach wird die Datei
dconfig.cgi erstellt, sie muss ins CGI-BIN-Verzeichnis des Apache kopiert werden.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
54
#Verzeichnis des Perl-Interpreters bestätigen
/usr/bin/perl
#CGI-Extension auswählen
.cgi
#Setup-Skript in den Hintergrund schicken
CTRL-Z
#Skript dconfig.cgi ins CGI-BIN-Verzeichnis kopieren
cp -p dconfig.cgi /var/www/cgi-bin
#Setup-Skript in den Vordergrund holen
fg
An dieser Stelle kann das Setup über den Web-Browser forgesetzt werden. Über den URL
http://localhost/cgi-bin/dconfig.cgi erhält man Zugriff auf ein Formular, das
schon gut mit Default-Werten ausgestattet ist. Trotzdem sollten die Einstellungen kontrolliert werden. Wichtig ist vor allem, dass das Administrations-Verzeichnis nicht über
das Web zugänglich ist. Um das zu verhindern bietet Discus zwei Möglichkeiten: Man
verschiebt das Admin-Verzeichnis, oder man generiert einen komplexen Namen, der das
Erraten schwierig macht. Die zweite Variante ist dann nötig, wenn das Verzeichnis mangels anderer Zugriffsmöglichkeiten über einen Browser erreicht werden soll.
Als letztes muss noch der Name für das Board festgelegt werden, außerdem lässt sich
eine E-Mail-Adresse angeben, an die Probleme mit Discus berichtet werden sollen. Die
Spracheinstellungen können in dem Formular auch auf den Eintrag ”German” umgestellt
werden. Das Formular kann jetzt abgeschickt werden, eine Erfolgsmeldung sollte daraufhin angezeigt werden.
Jetzt geht es zurück zum Installations-Skript, es müsste jetzt eine Datei mit dem Namen
discus.conf vorliegen und vom Skript gefunden werden. Die Installation ist hiermit
abgeschlossen.
4.4.4
Start und Administration
Über die Web-Adresse http://localhost/cgi-bin/discus/discus.cgi kann man
auf das Board zugreifen. Als erstes sollte man den Link ”Admin” aufrufen, Username
ist ”admin”, Passwort bleibt leer. Im Admin-Menü sollte man ein Passwort vergeben.
In einem letzten Schritt muss Discus registriert werden, optional kann man noch einer
Mailing-Liste beitreten, die über Produkt-Updates informiert.
Über den Admin-Link kann man sich erstmal mit dem neuen Passwort einloggen. Administratoren landen als erstes im so genannten Page Manager. Ein Administrator-Account
bietet die Menüpunkte ”Navigation”, ”Moderator Tools”, ”Administrator Tools”, ”Board
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
55
Controls” und ”Documentation”. Beim ersten Login wird außerdem angezeigt, dass es
noch keine Diskussions-Themen gibt. Der Page Manager ist ein Untermenü der Moderator Tools.
Navigation: Die Navigation bietet die Möglichkeit, zum Board zurückzukehren, außerdem kann sich der Administrator damit ein- und ausloggen.
Moderator Tools: Die Moderator Tools verwalten bestehende Benutzer und Diskussionen, außerdem können über sie die Zugriffe gesteuert werden.
Administrator Tools: Mit diesen Werkzeugen lassen sich neue Themen erstellen, Moderatoren-Accounts vergeben und Gruppen anlegen.
Board Controls: Diese Programme kontrollieren das Aussehen des Boards und sind für
die Verwaltung der Daten zuständig. Hier lässt sich etwa im Database Manager eine
Datenbankanbindung einrichten.
Documentation: Enthält Administrations-Handbuch und Hinweise zur Formatierung.
Die ersten Schritte sollten sein: Ein neues Thema anlegen, Benutzer anlegen, Gruppe
anlegen und Moderatoren bestimmen.
Thema anlegen: Um ein neues Diskussions-Thema anzulegen, ruft man den Topic Manager im Menü Administrator Tools auf. Man muss einen Namen für das neue Thema angeben, optional ist eine kurze Beschreibung. Außerdem kann man festlegen,
wer Beitrage schreiben darf. Dabei gibt es die Option public, die auch nicht registrierten Nutzern Schreibrechte gibt.
Gruppe anlegen: Für die Gruppen-Verwaltung gibt es den Group Manager. Er zeigt alle
vorhandenen Gruppen an und bietet auch die Möglichkeit, neue anzulegen. Dazu
verwendet man einfach den Button ”Add Group”. Der Gruppenname darf nicht
länger als 15 Zeichen sein; das ist zunächst alles, was man spezifizieren muss.
In der Gruppenübersicht taucht dann sofort die neue Gruppe auf, die als DefaultModerator denjenigen zugeteilt kriegt, der sie angelegt hat.
Moderator festlegen: Über den Moderator Manager kann man neue Moderatoren hinzufügen, dazu müssen nur Username und Passwort angegeben werden, eine E-MailAdresse ist optional. Hat man Moderatoren angelegt, so kann man Ihnen Gruppen
zuordnen, für die sie die Betreuung übernehmen.
Benutzer anlegen: Nur Moderatoren und Admin dürfen neue Benutzer anlegen. Die Moderatoren haben dabei die Einschränkung auf die ihnen zugeordneten Gruppen.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.4.5
56
Funktionalität
Discus hat primär die Aufgabe den Nachrichtenausstausch zu unterstützen, das funktioniert nur asynchron. Zusätzlich kann Discus auch im Bereich der Informationsverarbeitung gesehen werden, dort vor allem bei unstrukturierten Informationen.
4.4.6
Fazit
Aufwand: Die Systemvoraussetzungen sind überschaubar, man braucht nur einen CGIfähigen Web-Server und einen Perl-Interpreter. Der Aufwand für die Installation
ist sehr gering, das gut konstruierte Installations-Skript führt einen Dialog mit dem
Benutzer und erkennt viele System-Einstellungen selbständig. Für die Wartung von
Gruppen und Benutzern ist auch nicht viel Zeit nötig.
Kosten: Discus ist kostenlos und im Quell-Code frei verfügbar, besitzt aber eine eigene
Lizenz, die restriktiver als die GPL ist.
Bedienbarkeit: Die Bedienbarkeit ist intiutiv klar. Jeder, der schon mal ein Web-Formular
ausgefüllt hat, kann Discus benutzen. Das gilt auch für die Administration, auch das
kann intuitiv geschehen.
Erweiterbarkeit: Discus lässt sich um eine Datenbank erweitern. Bestehende E-MailServer oder Authenitifizierungs-Mechanismen kann das System jedoch nicht integrieren. Auch Zusatz-Module gibt es nicht, die auf Standards wie LDAP oder
WebDAV zurückgreifen.
Flexibilität: Discus kann nur bedingt an eigene Bedürfnisse angepasst werden, das ist
bei einem Diskussions-Board aber auch nicht nötig. Vor allem asynchroner Nachrichtenaustausch steht im Vordergrund. Für unstrukturierte Informationsverarbeitung kann Discus auch eingesetzt werden. Die Software gibt es für Linux, diverse
Unix-Systeme und Windows.
Integrierbarkeit: Ein vorhandener Apache-Web-Server kann weiterverwendet werden,
dasselbe gilt für eine MySQL-Datenbank. E-Mail-Server oder Adressdatenbanken
lassen sich nicht integrieren.
Sicherheit: Das System kann über eine https-Verbindung betrieben werden. Eine BackupFunktion bleibt aber der kostenpflichtigen Version Disus Pro vorbehalten.
Skalierbarkeit: Die Anzahl der Gruppen und Benutzer ist theoretisch unbegrenzt.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.5
57
Extropia
Extropia im Internet: www.extropia.com
4.5.1
Entwicklung und Vitalität
Extropia ist eine Firma, die auch kommerzielle Produkte vertreibt, einige GroupwareApplikationen aber auch unter der GPL verteilt. Dazu gehört auch das Programm WebDB,
eine Datenbank-Management-Software. Die Anwendung basiert auf Perl und zielt darauf
ab, dass möglichst viele Entwickler Module dafür schreiben, die sinnvolle Funktionalität bringen. Einige Beispiel-Module stellt Extropia selbst zur Verfügung, etwa NewsVerwaltung oder Adressbuch. Ein Bundle bestehend aus Basispaket und allen Modulen
kann von www.extropia.com geladen werden.
4.5.2
Voraussetzungen
Als Voraussetzungen braucht man einen lauffähigen Apache, wie er in Abschnitt 6.1.3
installiert wird, CGI-Support und einen Perl-Interpreter.
4.5.3
Installation
Zuerst muss man das Extropia-Komplettpaket runterladen. Momentan ist Version 8.2
verfügbar, das Quell-Paket hat den Namen everything-8.2.noarch.tar.gz. Es kann
in ein beliebiges Verzeichnis gespeichert werden, etwa in /usr/local/src.
#Ins CBI-BIN-Verzeichnis wechseln
cd /var/www/cgi-bin
#Root-Rechte annehmen
su
#Quelldatei entpacken
tar xvzf /usr/local/src/everything-8.2.noarch.tar.gz
#In das Extropia-Verzeichnis wechseln
cd everything
#Zugriffsrechte für Verzeichnis ändern
chown nobody .
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
58
Damit die Bilder auf den Extropia-Seiten korrekt angezeigt werden, muss der Unterordner
Images ins Document-Root-Verzeichnis des Apache verschoben werden. Das macht der
Befehl mv -R Images /var/www/htdocs.
4.5.4
Start und Administration
Die einzelnen Module können über einen Web-Browser gestartet werden. Etwa erreicht
man das Adressbuch unter dem URL http://localhost/cgi-bin/everything/address book.cgi. Das Problem ist, dass es keine Oberfläche gibt, unter der die gesamten
Module zentral verwaltet und bedient werden können.
4.5.5
Funktionalität
In puncto Funktionalität bietet Extropia viel; überschaubar wird das Ganze durch die
Moduliarisierung der Software. Folgende Module umfasst das Paket:
• Adress-Buch - einfache Adressverwaltung
• Bulletin-Board-System - Diskussions-Board für asynchronen Nachrichtenaustausch
• Bug-Tracker - Bug-Tracking-System für Software-Projekte
• Kommentar-Formular - Formular für Anmerkungen
• Dokumenten-Manager - Einfache Verwaltung von Dokumenten
• Ausgaben-Manager - Tool für die Verwaltung von Ausgaben
• Ausgaben - Übersicht über alle Ausgaben
• FAQ-Liste - Informationsseite mit häufig gestellten Fragen
• FAQ-Manager - Verwaltung für die häufig gestellten Fragen
• Gästebuch - klassische Gästebuchfunktion
• Mailing-Listen-Manager - Verwalter von Mailing-Listen
• News - Nachrichten-Übersicht
• News-Manager - Verwaltung der News-Seite
• Projekt-Verwalten - Projekt-Verwaltung
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
59
• Quiz-Admin - Quiz-Verwaltung
• Quiz - Quiz-Seite
• Umfrage-Tool - Umfrage-Programm
• Todo-Liste - Aufgabenliste
• Kalender - Kalenderfunktion
Nachrichtenaustausch: Nachrichtenaustausch ist bei den derzeit verfügbaren Modulen
nur asynchron möglich, etwa über das Bulletin-Board-System, die Mailing-Listen
oder die News-Seite. Auch das Gästebuch unterstützt diese Art der Kommunikation.
Informations- und Dokumentenverarbeitung: Für die Verarbeitung von Dokumenten
gibt es den Dokumenten-Manager; mit diesem Modul lassen sich persönliche und
geschäftliche Dokumente verwalten. Das Adressbuch ist eine Funktionalität, die der
Informationsverarbeitung zuzurechnen ist, ebenso der Bug-Tracker, der AusgabenManager und das Umfrage-Tool. Dabei werden das Spektrum von unstrukturierten
bis strukturierten Anforderungen gut abgedeckt.
Gruppenplanung: Im Bereich der Gruppenplanung gibt es Projekt-Verwaltung, Kalender und ToDo-Liste. Hier deckt Extropia die wenig- bis halb-strukturierten Aufgaben ab, hochstrukturierte Planungen, etwa für den Workflow, sind nicht verfügbar.
4.5.6
Fazit
Extropia bietet viele Module, die leider nicht zentral verwaltet werden können. Im Prinzip
ist jedes Modul eigenständig, das bringt auch das Problem mit sich, dass man für jedes
Modul einen gesonderten Benutzer-Account braucht. Zwar lässt sich der Code anpassen,
eine komfortable Administrations-Schnittstelle fehlt aber. Das trübt den Eindruck der
funktional hochwertigen Software. Leider wird der Gruppengedanke bei Extropia nicht
konsequent vertreten, im Prinzip bilden alle, die auf die Module Zugriff haben eine Gruppe, Untergruppen lassen sich nicht definieren.
Aufwand: Der Aufwand für die Installation ist gering, ein Web-Server mit CGI-Unterstützung ist das einzig Nötige. Die Extropia-Pakete müssen nur ins richtige Verzeichnis entpackt werden. Auf anderen Systemen muss eventuell noch der Pfad zum
Perl-Interpreter angepasst werden. Der Aufwand für die Administration ist dagegen
recht hoch, weil man keine graphische Konfigurations-Möglichkeit hat. Die Module
sind voneinander unabhängig organisiert, was zusätzlichen Aufwand bedeutet.
Kosten: Die Module sind alle kostenlos verfügbar.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
60
Bedienbarkeit: Die Bedienung der Software ist intuitiv möglich, befremdend wirkt nur,
dass man bei jedem Modul einen gesonderten Zugang benötigt und keine zentrale
Übersichtsseite existiert. Hier macht sich das Fehlen einer Datenbank bemerkbar.
Entsprechend aufwändig ist sind die Arbeiten für den Administrator.
Erweiterbarkeit: Die Software ist leicht um zusätzliche Module erweiterbar. Natürlich
können auch nicht benötigte Module einfach weggelassen werden, eine individuelle
Zusammenstellung ist kein Problem. Das System kann über eine Java-Schnittstelle
erweitert werden.
Flexibilität: Extropia ist auch flexibel einsetzbar, so gibt es Module aus den drei Kernbereichen Nachrichtenaustausch, Informations- und Dokumentenverarbeitung und
Gruppenplanung, die fast das ganze Groupware-Spektrum abdecken. Versionen für
Unix und Windows sind über die Web-Seite verfügbar.
Integrierbarkeit: Ein bestehender Web-Server lässt sich nutzen, vorzugsweise sollte
das ein Apache 1.3.x sein. Vorhandene Mail-Server und vorhandene GroupwareApplikationen lassen sich nicht einbinden.
Sicherheit: Die Software kann über eine https-Verbindung betrieben werden. ZusatzModule für die Authentifizierung von Benutzern, etwa mittels SmartCards, gibt es
nicht. Das Daten-Backup muss der Administrator händisch erledigen.
Skalierbarkeit: Extropia hat keine Beschränkung der Benutzeranzahl.
4.6
IntranetSuite
Das IntranetSuite-Projekt im Internet: http://www.intranetsuite.org
4.6.1
Entwicklung und Vitalität
IntranetSuite ist ein Kollaborations-Server, der drei Module besitzt:
• E-Mail
• Organizer
• Dokumenten-Manager
Mit diesen drei Modulen will IntranetSuite jeden wichtigen Groupware-Bereich abdecken:
E-Mail ist das Werkzeug für den Nachrichtenaustausch, der Organizer übernimmt die
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
61
Gruppenplanung und der Dokumenten-Manager soll die gemeinsamen Daten verwalten.
Der Versionsstand 1.0 wurde vor etwa einem halben Jahr erreicht, momentan ist IntranetSuite 1.0.3 aktuell.
4.6.2
Voraussetzungen
Als Voraussetzung benötigt man ein LAMP-System, wie es in Kapitel 6.1 beschrieben
wird. Also einen Apache Web-Server der Versionsfamilie 1.3.x, eine MySQL-Datenbank,
PHP-Support und das ganze auf einem Linux-System installiert.
4.6.3
Installation
Die Quelldatei kann von www.intranetsuite.org geladen werden, die aktuelle Version
ist 1.0.3 und trägt den Namen intranetsuite-1.03.tar.gz. Sie kann in ein beliebiges
Server-Verzeichnis gespeichert werden, etwa in /usr/local/src/intranetsuite.
#Ins Verzeichnis /usr/local/src wechseln
cd /usr/local/src
#Root-Rechte annehmen
su
#Quelldatei entpacken
tar xvzf intranetsuite/intranetsuite-1.03.tar.gz
#In das Intranetsuite-Verzeichnis wechseln
cd intranetsuite-1.03
#Konfigurations-Skript mit Parametern aufrufen
./configure --with-apache documents root=/var/www/htdocs
--with-apache user=nobody --with-apache group=nogroup
--with-storage dir=/var/www/intranetsuite
--with-db name=intranetsuite
--with-db user=isuite
--with-db pass=secret
Dem Konfigurations-Skript wurde nur der Name des Apache-Document-Root-Verzeichnisses übergeben, außerdem wurden die Default-Einstellungen nobody für Apache-Besitzer und Gruppe nogroup angegeben. Zum Schluss wurde noch eine Datenbank namens
intranetsuite angegeben und der Benutzer isuite mit Passwort secret. Jetzt muss man noch
das Installations-Skript ausführen und die Datenbank anlegen.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
62
#Installations-Skript aufrufen
./install.sh
#Nötige Datenbank anlegen lassen
mysql -u root -p < createdb.sql
Die Installation ist abgeschlossen. Unter http://localhost/main.php kann man sich
erstmals mit Kennung ”admin” und leerem Passwort einloggen.
4.6.4
Start und Administration
Nach dem ersten Login findet der Administrator eine schlichte Oberfläche vor. Drei Menüpunkte stehen zur Auswahl: Messages, Tasks, Documents. Rechts auf dem Bildschirm
befindet sich eine Kalenderübersicht des aktuellen Monats, außerdem gibt es noch zwei
Buttons, User-Administration und Group-Administration.
Als erstes sollte man admin ein Passwort verpassen, das funktioniert über die UserAdministration. Dort ist admin als einziger Benutzer verzeichnet. Ein Klick auf den Button ”Modify User” macht ein neues Fenster auf, in dem ein Passwort für admin ausgewählt und gespeichert werden kann. Im Folgenden wird kurz erklärt, wie man Benutzer
und Gruppen anlegen kann:
Benutzer anlegen: Benutzer können über den User-Manager angelegt werden, ein PlusZeichen markiert den Button Add-User. Dann muss man einen Namen, Alias und
Passwort festlegen. Den Namen kann man nachträglich, auch als admin, nicht mehr
ändern.
Gruppen anlegen: Im Gruppen-Manager werden zuerst alle vorhandenen Gruppen, nach
dem Start sind das admins und all, und alle Benutzer angezeigt. Neue Gruppen lassen sich über den Button Add Group anlegen. Schwieriger ist es, einen Benutzer
einer Gruppe zuzuordnen: Dazu wählt man die Gruppe aus und lässt sich alle Benutzer auflisten. Dann kann man die Gruppenmitglieder einzeln auswählen.
4.6.5
Funktionalität
Die IntranetSuite bietet drei Funktionen: Nachrichtenaustausch, Aufgabenplanung und
Dokumenten-Management.
Nachrichtenaustausch: Der Nachrichtenaustausch funktioniert nur asynchron, wie das
bei E-Mail üblich ist. Das funktioniert aber komplett ohne eigenen E-Mail-Server.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
63
Dabei sind alle Kommunikationsformen möglich, 1 : 1, n : 1, 1 : n und n : m. Leider ist die Zusammenstellung etwas mühsam, weil immer explizit jeder Benutzer
ausgewählt werden muss, Gruppen können nicht in einem Schritt als Empfänger
ausgewählt werden.
Dokumenten-Management: Das Dokumenten-Management ist eng mit dem Nachrichtenaustausch verknüpft, denn die Dokumente können nur als Anhang an die Nachrichten getauscht werden. Es ist deshalb nur die Verarbeitung von unstruktuierten
Daten möglich.
Aufgabenplanung: Die Aufgabenplanung ist der dritten Säule ”Gruppenplanung” zuzuordnen. Mit IntranetSuite kann man neue Aufgaben definieren, für Gruppen und für
einzelne Benutzer. Eine Schwäche ist aber, dass man einmal angelegte Aufgaben
nicht nachbearbeiten kann. Sie lassen sich lediglich löschen. Die Aufgabenplanung
selbst ist dabei unstrukturiert bis semi-strukturiert, neben freiem Text zur Aufgabenbeschreibung ist eine gewisse Strukturierung durch feste Zeitangaben möglich.
4.6.6
Fazit
Die IntranetSuite ist ein übersichtliches und leicht zu installierendes Programm. Leider
zeigten sich bei intensiverer Benutzung Schwächen, vor allem bei der Nachbearbeitung
von Einträgen. Die Funktionalität verteilt sich auf alle drei ausgemachten GroupwareGebiete: Nachrichtenaustausch, Dokumentenverwaltung und Gruppenplanung. Nachrichten können nur asynchron ausgetauscht werden, dabei kommt ein Web-Mailer zum Einsatz. Die Dokumentenverarbeitung ist nur für unstrukturierte Dokumente geeignet und
auch die Aufgabenplanung ist für Tasks von unstrukturiert bis semi-strukturiert geeignet.
Aufwand: Der Aufwand für die Installation von IntranetSuite ist gering, rechnet man das
vorausgesetzte LAMP-System mit ein, so kann man als Gesamtergebnis festhalten,
dass der Installationsaufwand durchschnittlich für Web-basierte Groupware ist. Die
Administration ist weniger aufwändig: Lediglich Benutzer und Gruppen müssen
vom Administrator angelegt werden.
Kosten: IntranetSuite ist kostenlos erhältlich.
Bedienbarkeit: Die Bedienbarkeit ist teilweise gewöhnungsbedürftig, teilweise aber auch
einfach wie Web-basierte Systeme meist sind. Probleme gab es etwa bei der Aufgabenplanung einer ganzen Gruppe, die Auswahl der betroffenen Gruppe funktionierte nicht per Mausklick aus der Liste, sondern nur per manueller Eingabe des
Gruppennamens.
Erweiterbarkeit: Zusätzliche Funktionen gibt es für die IntranetSuite nicht, lediglich
Nachrichtenaustausch, Dokumentenverarbeitung und Aufgabenplaner sind integriert.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
64
Flexibilität: Besonders flexibel ist die IntranetSuite nicht, abgesehen davon, dass man
selbst den Quell-Code anpassen kann. Es lassen sich keine Layout-Änderungen
vornehmen und auch die System-Voraussetzungen können nicht verändert werden.
Trotzdem bietet das Programm in allen drei Funktionsbereichen Funktionalitäten
an.
Integrierbarkeit: Die IntranetSuite nutzt ein bestehendes LAMP-System. Vorhandene
E-Mail-Server oder Authentifizierungs-Mechanismen lassen sich nicht nutzen.
Sicherheit: Die IntranetSuite kann über eine https-Verbindung betrieben werden. Der
Zugangsschutz aus Kennung und Passwort ist für jeden Benutzer Pflicht. Für die
Datenintegrität gibt es kein Backup-Modul, hier muss der Administrator auf die
Funktionen der MySQL-Datenbank zurückgreifen.
Skalierbarkeit: Es gibt keine Beschränkung für die Anzahl der Benutzer oder Gruppen.
4.7
Moregroupware
Das Moregroupware-Projekt im Internet: www.moregroupware.org
4.7.1
Entwicklung und Vitalität
Das Moregroupware-Manual startet mit einer schlichten, aber treffenden Beschreibung:
Moregroupware ist eine Web-basierte Groupware-Applikation, und das Beste ist, sie
”
ist kostenlos“. Die Entwicklung wurde bei der Morelogs GmbH in Deutschland gestartet, damals noch ohne den Hintergrund ein Open-Source-Projekt zu schaffen. Eine gute
Möglichkeit Moregroupware ohne großen Aufwand zu testen ist eine speziell angepasste Knoppix-Version, die Moregroupware integriert hat. Das ist eine von CD lauffähige Debian-Linux-Version, die ohne Festplatteninstallatioin auskommt. So kann man die
Groupware ohne Installationsaufwand ausprobieren.
4.7.2
Voraussetzungen
Um Moregroupware installieren zu können ist ein funktionierendes LAMP-System nötig.
Details für die Installation sind in Abschnitt 6.1 zu finden. Apache 2.0.x wird ausdrücklich
nicht unterstützt.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.7.3
65
Installation
Die Quellpakete von Moregroupware können von der Web-Seite www.moregroupware.org geladen werden. Das aktuelle Quellpaket trägt den Namen moregroupware-0.6.6.tar.gz.
Es kann in ein beliebiges Verzeichnis gespeichert werden, etwa /usr/local/src. Wichtig ist, dass es in das richtige Verzeichnis entpackt wird, und zwar in das Document-RootVerzeichnis des Web-Servers. Bei der in Abschnitt 6.1 beschriebenen Installation ist es
das Verzeichnis /var/www/htdocs, bestehende Apache-Installationen verwenden aber
auch oft /var/www/html.
#Wechsel ins Document-Root-Verzeichnis
cd /var/www/htdocs
#Root-Rechte bekommen
su
#Moregroupware-Quellen nach /var/www/htdocs entpacken
tar xvzf /usr/local/src/moregroupware-0.6.6.tar.gz
#Besitz-Rechte für das Moregroupware-Verzeichnis anpassen
chown -R nobody moregroupware
#Wechsel ins Moregroupware-Verzeichnis
cd moregroupware
Bevor die eigentliche Installation beginnen kann, sind noch kleine Arbeiten an der Datenbank nötig.
#Datenbank namens moregroupware anlegen
mysqladmin -u root -p create moregroupware
#Datenbank-Nutzer namens moregw mit Passwort moregw00 anlegen
mysql -u root -p
grant all on moregroupware.* to moregw@localhost identified by
"moregw00";
exit;
Über die Web-Seite http://localhost/moregroupware/setup sollte jetzt das Setup
zugänglich sein; zuerst muss nur die Sprache ausgewählt werden und man wird automatisch zu einem Web-Formular weitergeleitet. In dem Formular sind einige Angaben zu machen: Die Datenbank IP lautet localhost, Datenbankbenutzer ist moregw, das Passwort
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
66
moregw00 und der Datenbankname moregroupware. Der Systempfad zum Moregroupware-Verzeichnis sollte bereits korrekt sein. Angaben zur LDAP-Authentifizierung sind nicht
notwendig. Nach Absenden des Formulars kommt man schon zur Auswahl der einzelnen
Applikationen.
Dabei wird zwischen Basis- und User-Modulen unterschieden. Als Basis-Module sind dabei: Admin, Kalender, Kontakte, Übersicht, Projekte, Einstellungen, ToDo und Web-Mail.
Die unterschiedlichen Versionsnummer zeigen dabei den Entwicklungsstand. Die BasisModule sollten auf jeden Fall installiert werden, aus diesem Grund sind sie bereits in
der Voreinstellung ausgewählt. Die User-Module umfassen Dateien, Forum, W3Channels,
News, Notizen, Outboard, PartProg und Trouble-Ticket-System kurz TTS. Sie können je
nach Anforderung ausgewählt werden. Hier empfiehlt sich, zuerst mehrere Module auszuwählen, sie können dann getestet und bei Nicht-Gefallen wieder deinstalliert werden.
Auf der nächsten Seite sollte die erfolgreiche Modulinstallation bestätigt werden. Im
Moregroupware-Verzeichnis sollten sich jetzt die Dateien INSTALL, config.inc.php und
index.php befinden, die Installation ist damit abgeschlossen. Aus Sicherheitsgründen sollten die Verzeichnisrechte des Moregroupware-Verzeichnisses wieder so definiert werden, dass nicht alle dort schreiben oder ausführen dürfen, sondern nur der Web-ServerBenutzer.
#Benutzerrechte für Moregroupware-Verzeichnis ändern
chmod 744 ../moregroupware
Moregroupware ist somit fertig installiert.
4.7.4
Start und Administration
Moregroupware muss nicht mehr explizit gestartet werden, es läuft bereits. Unter der
Web-Adresse http://localhost/moregroupware kann man sich als Benutzer mit Kennung ”admin” und Passwort ”admin” einloggen. Moregroupware zeigt jetzt alle installierten Module als Reiter im oberen Teil der Web-Seite an, am unteren Rand sieht man
zusätzlich die aktuelle Versionsnummer von Moregroupware und den Namen des aktuellen Benutzers. Daneben befindet sich der Logout-Button.
Wichtig ist zuerst das Admin-Modul: Es enthält die vier Unterkategorien Benutzermanager, Rechtemanager, Gruppenmanager und Modulmanager. Der erste Weg sollte in den
Benutzermanager führen, dort sollte das Passwort für den Admin-Account geändert werden - es muss mindestens acht Stellen umfassen. Im Benutzermanager sieht man auch,
dass neben dem normalen Admin auch ein Foren-Admin, ein Forum-Moderator und ein
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
67
Beispiel-Nutzer angelegt sind. Auch diese Zugänge sollten angepasst werden, also zumindest neue Passworte erhalten. Neue Benutzer gehören Standard-mäßig zur Gruppe
Default, es ist aber auch möglich sie anderen Gruppen zuzuordnen, am Anfang existieren
auch noch Admin, Forum-Admin und Forum-Moderator.
4.7.5
Funktionalität
Nachrichtenaustausch: Moregroupware liefert ein E-Mail-Modul mit, das aus Webmail
verwaltet wird. Das Modul greift auf eine bestehende Sendmail-Installation zurück.
Leider lässt sich das Modul nicht ohne vorherige Handarbeit über den Browser
konfigurieren, denn es fehlen einige Verzeichnisse für den Start des KonfigurationsMenüs. Die Verzeichnisse mit Namen attachments, img, readmessage und sendmail müssen zuerst im Moregroupware-Verzeichnis unter /modules/webmail2/cache angelegt werden. Danach funktioniert auch der Reiter Webmail und die eigentlichen Einstellungen können vorgenommen werden. Jedoch traten auch beim
weiteren Betrieb Probleme mit E-Mails auf: Hinweise auf fehlende Verzeichnisse sind auf fehlerhafte Installations-Skripte zurückzuführen. Außerem gibt es ein
Web-Forum, das auch für den Austausch von Nachrichten genutzt werden kann.
Möglichkeiten für synchronen Nachrichtenaustausch gibt es nicht.
Informations- und Dokumentenverarbeitung: Leider funktionierte das Dateien-Modul
auf keiner des Testinstallationen reibungslos. Verantwortlich dafür ist ein SoftwareBug, der nach Angaben der Entwickler bereits in der nächsten Version, 0.6.7, behoben sein soll. Ab Mitte April 2003 soll es das neue Release geben. Die Kategorie
News dient als eine Art Nachrichten-Ticker, der von ausgewählten Personen gefüllt
werden kann. Diese News-Funktion dient als Informationsdrehscheibe. Außerdem
gibt es die Möglichkeit, sich W3-Channels einzurichten, das funktioniert mit allen Web-Seiten, die Inhalte in RSS- oder MCF-Format anbieten. Zudem können
noch Notizen verwaltet werden, der Gruppenaspekt ist auch dabei berücksichtigt,
denn die Notizen können auch anderen Gruppenteilnehmern zugänglich gemacht
werden.
Gruppenplanung: Als Planungs-Ressourcen bietet Moregroupware Kalender, Kontakte, Projekte, ToDos, Trouble-Ticket-System, Outboard und PartProg. Der Kalender
bietet umfangreiche Funktionen für die Terminplanung, etwa Wiederholungen. Alle Teilnehmner, sie können leider nur einzeln ausgewählt werden, bekommen den
Termin in ihrem Kalender angezeigt. Die Kontakt- und Projektverwaltung deckt
den Bereich der strukturierten Planung ab, bei beiden Modulen gibt es auch eine implementierte Suchfunktion. Das Outboard erfasst die Anwesenheitszeiten der
Mitarbeiter und das PartProg zeigt eine Übersicht von Partner-Programmen.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.7.6
68
Fazit
Bei Moregroupware ist der Name Programm: Dieses Programm bietet wirklich mehr
Funktionen als die meisten Groupware-Produkte auf dem Markt. Das Bild wird von dem
fehlerhaften Dateien-Modul getrübt, das die Entwickler im nächsten Release gefixt haben
wollen.
Aufwand: Der Aufwand für die Installation ist weder besonders hoch noch niedrig. Die
hohe Funktionalität setzt ein funktionierendes LAMP-System voraus, Moregroupware selbst einzurichten, erfordert nicht allzu viele Schritte. Auch der Aufwand für
die Administration ist in etwa durchschnittlich, zwar sind Benutzer und Gruppen
schnell eingerichtet, die Fülle an Programm-Modulen bringt aber auch Konfigurationsarbeit mit sich.
Kosten: Moregroupware ist kostenlos erhältlich.
Bedienbarkeit: Moregroupware lässt sich intuitiv bedienen, die Seitenstruktur ist sehr
übersichtlich und die wichtigsten Funktionen sind klar erkennbar, das gilt auch für
alle Tätigkeiten, die der Administrator ausführen muss.
Erweiterbarkeit: Moregroupware basiert auf einem Modulkonzept, das bedeutet dass
zusätzliche Funktionalitäten leicht nachgerüstet werden können, ohne dass das Programm neu gestartet werden muss. Interessanterweise wird an der Integration des
SyncML-Standards gearbeitet, was den Datenabgleich mit kompatiblen Geräten
wie PDAs und Mobiltelefonen ermöglichen soll.
Flexibilität: Moregroupware bietet asynchronen Nachrichtenaustausch, Informations- und
Dokumentenverarbeitung und Gruppenplanung für Aufgaben jedes Strukturierungsgrades. Die Software ist sehr flexibel einsetzbar.
Integrierbarkeit: Auch die Integration in bestehende Systeme ist gegeben. So lassen
sich vorhandene LDAP-Verzeichnisse, Web-Server und E-Mail-Server nutzen. Problematisch ist lediglich der Import von Daten aus anderen Groupware-Programmen.
Sicherheit: Moregroupware unterstützt verschlüsselte Verbindungen über https. Zugang
ist nur für registrierte Benutzer durch Kennung und Passwort möglich. Module für
SmartCards gibt es nicht.
Skalierbarkeit: Moregroupware gibt keine Beschränkungen für die maximale Anzahl
von Benutzern und Gruppen vor.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.8
69
phpCollab
Das phpCollab-Projekt im Internet: www.phpcollab.com/phpbb/index.php
4.8.1
Entwicklung und Vitalität
phpCollab ist ein sehr aktives Projekt, das von zwölf Entwicklern betreut wird. An der
Software wird schon seit gut zwei Jahren entwickelt, freigegeben wurde aber erstmals
eine Version Ende 2002.
Die aktuelle Version ist 2.4, die Entwicklerversion 2.5 soll ausdrücklich nur von Programmierern benutzt werden, hier sind zahlreiche neue Funktionen zu erwarten.
4.8.2
Voraussetzungen
Die Groupware-Applikation setzt ein LAMP-System voraus, wie es in Kapitel 6.1 beschrieben wird. Neben MySQL unterstützt phpCollab auch den Datenbank-Server PostgreSQL.
4.8.3
Installation
Von der Web-Seite www.phpcollab.com kann das Quell-Paket kostenlos geladen werden. Es trägt den Namen phpcollab-2.4.tar.gz und kann in ein beliebiges Verzeichnis
gespeichert werden, etwa in /usr/local/src.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
70
#Wechsel ins Dokument-Root-Verzeichnis
cd /var/www/htdocs
#Root-Rechte bekommen
su
#phpCollab-Quellen nach /var/www/htdocs entpacken
tar xvzf /usr/local/src/phpcollab-2.4.tar.gz
#Wechsel ins phpCollab-Verzeichnis
cd phpcollab
#Einstellungs-Skript umbenennen
mv includes/settings blank.php includes/settings.php
#Besitzer und Gruppen von settings.php ändern
chown nobody.nogroup includes/settings.php
#Volle Schreib- und Leserechte setzen
chmod -R 777 files/
chmod -R 777 logos clients/
chmod 777 includes/settings.php
Bevor die eigentliche Installation beginnen kann, sind noch kleine Arbeiten an der Datenbank nötig.
#Datenbank namens phpcollab anlegen
mysqladmin -u root -p create phpcollab
#Datenbank-Nutzer namens phpcoll mit Passwort phpcoll00 anlegen
mysql -u root -p
grant all on phpcollab.* to phpcoll@localhost identified by
"phpcoll00";
exit;
Über den URL http://localhost/phpcollab/installation/setup.php kann man
die restliche Konfiguration im Browser vornehmen. Nach dem Setup sollte die Datei
setup.php gelöscht werden. Im Wesentlichen sind folgende Einträge wichtig: Der Installationstyp sollte normalerweise ”offline” sein. Der Datenbank-Server heißt localhost,
Login ist phpcoll, Passwort lautet phpcoll00 und der Datenbankname ist phpcollab.
Neue Ordner werden mit PHP angelegt und das Root-Verzeichnis sollte bereits richtig auf
http://localhost/phpcollab gesetzt sein. Zuletzt muss noch ein Admin-Passwort
festgelegt werden.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.8.4
71
Start und Administration
Über die Web-Adresse http://localhost/phpcollab ist die Groupware-Applikation
jetzt zugänglich. Die ersten Schritte sollten sein:
• Neue Benutzer anlegen: Das funktioniert über die Kategorie Benutzerverwaltung.
• Projekte hinzufügen: Dafür gibt es das Modul Projekt-Manager.
• Kunden hinzufügen: Kunden lassen sich über ein eigenes Modul verwalten.
4.8.5
Funktionalität
Bei phpCollab ist eine besondere Sichtweise in die Bedienung des Programms eingeflossen, die es von anderen Groupware-Applikationen unterscheidet: Es wird eine so genannte
Projekt-Sicht verwendet, das bedeutet alle Tätigkeiten werden Projekt-bezogen verwaltet.
Die Projekt-Verwaltung zeigt als Unterkategorien eines Projekts folgende Punkte an: Detaillierte Projekt-Beschreibung, Support-Anfragen, Aufgabenplanung, Diskussionsforum,
Team-Mitglieder, Dokumente und Notizen. Aber es gibt auch Module, die nicht Projektbezogen sind. Folgende Module sind übergeordnet: Kundenverwaltung, Berichte, Suchfunktion, Kalender und Lesezeichen. Jedes Gruppenmitglied hat dabei die Sicht auf die
eigenen Projekte, also auf die Projekte, an denen es mitarbeitet.
Nachrichtenaustausch: phpCollab unterstützt durch das Diskussionsforum asynchrone
Kommunikation zwischen den Benutzern.
Information- und Dokumentenverwaltung: Notizen werden bei phpCollab stets Projekt-bezogen verfasst und auch abgespeichert. Sie müssen explizit auf der ProjektSeite veröffentlicht werden, damit andere Teilnehmer sie lesen könnne. Die KundenVerwaltung ist eine Datenbank, die Kunden-bezogene Informationen verwaltet. Berichte dienen dazu, Arbeitsergebnisse, das können Zwischenergebnisse oder Endergebnisse sein, festzuhalten. Ein Bericht wird dabei automatisch aus den Projektbezogenen Daten generiert; dazu können einzelne Aufgaben nach Status und Priorität abgefragt werden. Die verknüpften Projekt-Inhalte sind nichts anderes als ein
System zum Verwalten von Dokumenten, natürlich wieder in der speziellen Projektsicht. Das funktioniert sehr gut, es gibt sogar die Möglichkeit einer Vorschau, lokale
Speicherung und auch eine Versionenierung von Dokumenten. Damit das auch wie
gewünscht funktioniert müssen die Parameter der maximalen Projekt-Größe und
die maximale Upload-Größe für Dateien in phpCollab groß genug gesetzt werden.
Die Lesezeichen-Verwaltung listet gemeinsame Web-Adressen auf.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
72
Gruppenplanung: Auch Aufgaben- und Team-Verwaltung laufen Projekt-bezogen, das
bedeutet es gibt die Sicht auf Projekt-Aufgaben und eine Übersicht über die am
Projekt beteiligten Personen. Die Aufgabenplanung kann unstrukturierte bis strukturierte Vorgänge verwalten. Der Kalender ist aus der Projekt-Sicht ausgegliedert.
Was zuerst wie ein Bruch des logischen Konzepts aussieht, wird verständlich wenn
man annimmt, dass es Personen gibt, die in mehreren Projekten gleichzeitig vertreten sind. Eine umfassende Lösung mit dem Ein- und Ausblenden von bestimmten
Projekt-Terminen wäre zwar auch möglich, aber von Implementierungsaufwand her
wesentlich größer.
4.8.6
Fazit
phpCollab bringt durch die erzeugte Projekt-Sicht einen zusätzlichen Gruppenaspekt mit
ein, der sich auf die Zusammenarbeit positiv auswirkt. Das Arbeiten mit dieser Software
macht Spaß, sie ist Ressourcen-schonend, übersichtlich, funktional hochwertig und komfortabel zugleich.
Aufwand: Der Installations-Aufwand für phpCollab selbst ist gering, jedoch ist zum Betrieb ein LAMP-System nötig, was den Gesamtaufwand durchschnittlich macht.
Für die Administration ist der Aufwand höher, das spiegelt sich aber in der Funktionalität wieder. Grundsätzlich gilt, je mehr Projekte vorhanden sind, desto höher
wird der Aufwand für die Administration.
Kosten: phpCollab ist kostenlos erhältlich.
Bedienbarkeit: Die Bedienbarkeit ist sehr intuitiv und funktioniert in den gängigen Browsern. Das einzig unkonventionelle ist das strikte Denken in Projekten, was sich aber
nach einer gewissen Einarbeitungszeit als sehr nützlich erweist. Auch die Administration erfordert keinen großen Lernaufwand.
Erweiterbarkeit: phpCollab kommt als Rund-um-Paket und ist funktional nicht ohne
Komplett-Update erweiterbar.
Flexibilität: phpCollab kann vollständig über den Browser bedient und administriert
werden. Zudem ist es schnell und stabil. Unterstützung für andere Datenbanken als
MySQL ist vorhanden, etwa für PostgreSQL. Die drei Bereiche Nachrichtenaustausch, Informationsverarbeitung und Gruppenplanung deckt phpCollab größtenteils ab.
Integrierbarkeit: phpCollab nutzt außer dem LAMP-System keine vorhandenen Komponenten. Bestehende Mail-Server und Daten aus bereits verwendeten GroupwareProgrammen können nicht integriert werden.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
73
Sicherheit: phpCollab kann über eine https-Verbindung betrieben werden. Für ein Backup
muss der Administrator auf die Funktionen der Datenbank zurückgreifen.
Skalierbarkeit: Es gibt keine Beschränkung für die Anzahl der Benutzer oder Gruppen
bzw. Projekte.
4.9
phpGroupware
Das phpGroupware-Projekt im Internet: www.phpgroupware.org
4.9.1
Entwicklung und Vitalität
phpGroupware bezeichnet sich selbst als Multi-User Groupware-Suite. Wie schon der Name vermuten lässt ist phpGroupware in PHP geschrieben, das Projekt hat seine Ergebnisse
unter der GPL veröffentlicht.
Momentan ist Version 0.9.14.002 aktuell. Das Projekt gehört zu den aktivsten OpenSource-Entwicklungen überhaupt. Laut einer Statistik ist phpGroupwara das drittaktivste
Projekt, das bei Sourceforge gehostet wird.
Es gibt auch eine deutsche phpGroupware-Community, die sehr aktiv ist. Sie ist unter
www.phpgw.de zu finden.
4.9.2
Voraussetzungen
Um phpGroupware installieren zu können ist ein funktionierendes LAMP-System nötig2 .
Details für die Installation sind in Abschnitt 6.1 zu finden.
4.9.3
Installation
Für die Installation sind natürlich die Quellpakete von phpGroupware nötig, sie können
unter www.phpgroupware.org geladen werden. Das Quellpaket hat den Namen phpGroupWare.0.9.14.002.tar.gz.
Es kann in ein beliebiges Verzeichnis gespeichert werden, etwa in /usr/local/src.
Wichtig ist, dass es in das richtige Verzeichnis entpackt wird, und zwar in das DocumentRoot-Verzeichnis des Web-Servers. Bei der in Abschnitt 6.1 beschriebenen Installation
2 phpGroupware
unterstützt auch PostgreSQL
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
74
ist es das Verzeichnis /var/www/htdocs, bestehende Apache-Installationen verwenden
aber auch oft /var/www/html.
#Wechsel ins Dokument-Root-Verzeichnis
cd /var/www/htdocs
#Root-Rechte bekommen
su
#phpGroupware-Quellen nach /var/www/htdocs entpacken
tar xvzf /usr/local/src/phpGroupWare-0.9.14.002.tar.gz
#Wechsel ins phpGroupware-Verzeichnis
cd phpgroupware
Die aktuelle phpGroupware-Version wurde zwar erst im März 2003 veröffentlicht, wegen
der rasanten Entwicklung ist die Software aber nicht mehr auf dem ganz aktuellen Stand.
Ein Update über CVS aktualisiert die Pakete und spielt die letzten Patches ein.
#CVS-Update starten
cvs -z6 update -dP > cvs.log
Bevor die eigentliche Installation beginnen kann, sind noch kleine Arbeiten an der Datenbank nötig.
#Datenbank namens phpgroupware anlegen
mysqladmin -u root -p create phpgroupware
#Datenbank-Nutzer namens phpgw mit Passwort phpgw00 anlegen
mysql -u root -p
grant all on phpgroupware.* to phpgw@localhost identified by
"phpgw00";
exit;
Die Setup-Routine von phpGroupware läuft über einen Web-Browser, aus diesem Grund
müssen die Setup-Dateien über den Web-Server zugreifbar sein. Dabei gibt es die Methode, für kurze Zeit das phpGroupware-Verzeichnis für jeden zugänglich zu machen, danach
das Setup auszuführen und anschließend die Rechte wieder zurückzusetzen. Das ist die
einfachste Methode.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
75
#phpGroupware-Verzeichnis zugreifbar machen
chmod a+w ../phpgroupware
Im phpGroupware-Verzeichnis gibt es für jede Anwendung wieder ein Unterverzeichnis. Besonders wichtig ist das Unterverzeichnis files. Dort werden Gruppen und Benutzer nebst Ihren Dateien verwaltet, das ist für das Dokumenten-Management entscheidend. Wie oben angesprochen soll das phpGroupware-Verzeichnis nach dem Setup nicht
mehr für alle zugreifbar sein; aus diesem Grund wird das Verzeichnis files an einen
anderen Ort ausgelagert, der vom Sicherheitsaspekt her nicht so kritisch ist, wie das
phpGroupware-Verzeichnis. Gut geeignet ist etwa ein Unterverzeichnis eines lokalen Benutzers. Das Home-Verzeichnis des Beispielbenutzers joerg befindet sich in /home/joerg.
#Unterverzeichnis phpgwadmin in /home/joerg anlegen
mkdir /home/joerg/phpgwadmin
#Verzeichnis files nach /home/joerg/phpgwadmin verschieben
mv ./files/ /home/joerg/phpgwadmin
#Rechte für files und Unterverzeichnisse anpassen
chmod -R a+w /home/joerg/phpgwadmin/files
Über den URL http://localhost/phpgroupware/setup/ kann die Konfiguration mittels eines Web-Browsers beginnen. Wichtig ist nach Aufruf der Adresse, dass sich das System meldet und die angebundene Datenbank erkennt. Normalerweise lautet diese Meldung You appear to have MySQL support enabled“. Auf der aktuellen Seite wird die Da”
tei header.inc.php konfiguriert. Wichtig sind die Einstellungen Server Root, das ist der
Pfad zur phpGroupware-Installation, im vorliegenden Beispiel /var/www/htdocs/phpgroupware. Das Feld Include Root wird mit dem gleichen Pfad verknüpft.
Jetzt gilt es noch, ein Admin-Passwort für dieses Konfigurationsskript zu wählen. Der
Datenbank-Host ist localhost, alternativ kann hier auch die IP-Adresse des Servers angegeben werden. Der DB Name ist phpgroupware, der Benutzer phpgw mit dem angelegten Passwort phpgw00.
Der Typ der verwendeten Datenbank ist mysql, ein Konfigurationspasswort kann frei
gewählt werden. Die restlichen Einstellungen sind in Ordnung, mit dem Knopf write
config können die Einstellungen gespeichert werden. Danach geht es weiter mit continue. Die Datei header.inc.php ist geschrieben und die Installation ist abgeschlossen.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.9.4
76
Start und Administration
phpGroupware muss nicht mehr explizit gestartet werden, es läuft bereits. Unter der WebAdresse http://localhost/phpgroupware kann man sich als Benutzer mit Kennung
und Passwort einloggen. Auch der Administrator benutzt diese Seite als Login, die Sprache kann dabei schon auf Deutsch umgestellt werden.
Es sind vier Schritte zu durchlaufen:
Einfache Applikations-Verwaltung: Mit der Applikations-Verwaltung lassen sich die
einzelnen Programm-Module installieren. Das geht einfach durch das Abhaken einer Checkbox. Das phpGroupware-Paket bringt alle 44 Module mit, einige lassen
sich nicht beim ersten Mal installieren, weil sie auf anderen Modulen aufsetzen.
Geht man ein zweites Mal in die Applikations-Verwaltung, so kann man diese Pakete nachinstallieren.
Konfiguration: Unter diesem Menüpunkt wird die aktuell vorhandene Konfiguration bearbeitet. Wichtig ist der richtige Pfad zu den Benutzer-Verzeichnissen, sonst kann
man sich später nicht einloggen: er lautet /home/joerg/phpgwadmin/files. Der
URL zur phpGroupware-Installation lautet http://localhost/phpgroupware.
Alle anderen Einstellungen sind momentan noch nicht von Belang, etwa kann man
in diesem Menü den Pfad zu einem E-Mail-Server angeben oder einen LDAPDienst integrieren. Hier können auch schon ein Admin-Account und Demo-Accounts
angelegt werden.
Sprach-Verwaltung: Die Sprach-Verwaltung muss eigentlich nicht aufgerufen werden,
Deutsch ist gleich zu Anfang mitinstalliert.
Erweiterte Applikations-Verwaltung: Die erweiterte Applikations-Verwaltung ist für
das eigentliche Installieren und Entfernen der Module zuständig.
Sollte nachträglich etwas an der Datei header.inc geändert werden müssen, so gibt
es zwei Wege: Entweder das phpGroupware-Verzeichnis wird für jedermann geöffnet
und der Admin führt die Konfiguration über http://localhost/phpgroupwre/setup
durch, oder er loggt sich per ssh auf dem Server ein und editiert das Skript von Hand.
Wenn man die erste Methode wählt, sollte man die Rechte nach Beendigung des Setups
wieder zurücksetzen.
4.9.5
Funktionalität
phpGroupware ist ein sehr ehrgeiziges Projekt. Seit kurzem ist es sogar Teil eines speziellen Förderprojekts in Niedersachsen, was erstens einige Umbauarbeiten beim Design
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
77
mit sich brachte und zweitens den Funktionsumfang um zahlreiche Neuheiten erweitert
hat. Aktuell umfasst phpGroupware 44 installierbare Applikationen, wobei deren Versionsstatus von 0.0.0.2 bis zu 0.9.14 reicht3 .
Nachrichtenaustausch: phpGroupware ist vielseitig bestückt, wenn es um Nachrichtenaustausch geht. Natürlich ist eine Anbindung an ein E-Mail-System integriert.
phpGroupware selbst bringt keinen E-Mail-Server mit, stattdessen arbeitet es mit
bestehenden Servern auf Anhieb zusammen, etwa mit Sendmail. Stimmen der Benutzername von phpGroupware und der Account-Name des Mail-Servers überein,
so lässt sich E-Mail von jedem Nutzer selbst einstellen. Nötig sind nur MailserverAdresse und Passwort. Stimmen die Namen nicht überein, so muss der Administrator für die geeigneten E-Mail-Einstellungen sorgen, das geht über die Benutzerverwaltung. Eine Chat-Funktion ist auch integriert, sie funktioniert basierend auf
Gruppen oder auch mit auswählbaren Gesprächspartnern. Auch ein Forum kann
den einzelnen Gruppen zur Verfügung gestellt werden, die Überwachung von externen Newsgroups übernimmt ein gesondertes Tool.
Informations- und Dokumentenverarbeitung: Bei der Verarbeitung von Informationen und Dokumenten bietet phpGroupware einiges: Ein Adress-Buch übernimmt
die Verwaltung von Kontaktdaten, ein Content-Manager ist für das Publizieren von
Online-Inhalten zuständig und über das Umfrage-Tool kann man eine Abstimmung
innerhalb der Gruppenmitglieder steuern. Für unstrukturierte Informationen gibt es
eine Notiz-Möglichkeit und eine To-Do-Liste. Mit den Headlines können aktuelle Informationen als eine Art Ticker verbreitet werden, und die Bookmarks bilden
einen gemeinsamen Fundus für nützliche Web-Adressen.
Gruppenplanung: Auch bei der Gruppenplanung deckt phpGroupware das gesamte Spektrum der Strukturierung ab. Der Kalender kann unstrukturierte bis semi-strukturierte
Einträge verwalten. Dagegen ist das TimeTrack-Modul durchgängig strukturiert
und achtet auf die Anwesenheit der Gruppenmitglieder. Das lässt sich für eine
Workflow-Planung nutzen. Die Projektverwaltung bietet auch semi-strukturierte
Funktionalität an, wobei die Tendenz hierbei schon zur strukturierten Projektplanung geht.
4.9.6
Fazit
phpGroupware hat auf jeden Fall das Zeug dazu, proprietären Lösungen das Wasser zu
reichen. Funktionsumfang und Administrierbarkeit sind auf jeden Fall sehr gut gelungen. Zwar wird phpGroupware auch in der Praxis schon oft eingesetzt, im Zuge des
3 0.9.14.002
ist der aktuelle Versionsstand von phpGroupware
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
78
Re-Designs wurden aber einige Applikationen, etwa die Dokumentenverwaltung neu geschrieben. Besonders dieses Modul, das momentan erst in Version 0.0.0.2 zur Verfügung
steht, wird wohl in Zukunft noch mehr Funktionen erhalten, die beim Einsatz in der Praxis
sehr nützlich sind.
Aufwand: Der Aufwand für die Installation von phpGroupware ist relativ hoch im Vergleich zu anderen Open-Source-Groupware-Lösungen. Setzt man aber die erhaltene
Funktionalität dazu in Relation, so relativiert sich dies sofort. Wichtig ist am Anfang, dass man sich darüber im klaren ist, welche Funktionen man braucht und
welche nicht. Als Voraussetzung wird ein LAMP-System benötigt. Auch die Administration ist aufwändiger als bei der Konkurrenz, das liegt aber an der großen
Menge von Einstellungsmöglichkeiten, die phpGroupware bietet.
Kosten: phpGroupware ist kostenlos erhältlich.
Bedienbarkeit: Die Bedienung ist sehr intuitiv. Bei der Installation aller Module sind die
verwendeten Icons aber meist nicht sehr hilfreich. Administratoren sollten demnach
auch ohne Probleme mit der Software zurecht kommen.
Erweiterbarkeit: phpGroupware dürfte eines der mächtigsten Groupware-Systeme überhaupt sein, es existieren diverse Projekte, die Ergänzungen zu phpGroupware entwickeln. Der modulare Aufbau der Software unterstützt die Integration von ZusatzFunktionen. phpGroupware war das einzige Projekt, das eine Synchronisation mit
einem PalmOS-Client zu Stande brachte und einige Firmen setzen es bereits in Zusammenarbeit mit Microsofts Client Outlook ein.
Flexibilität: phpGroupware ist sehr flexibel. Aus dem reichhaltigen Angebot an Modulen kann man sich genau die erforderliche Groupware zusammenstellen - man sollte aber nur die Module installieren, die man wirklich braucht, sonst wird es leicht
unübersichtlich.
Integrierbarkeit: phpGroupware nutzt bestehende E-Mail-Server, außerdem werden LDAP-Verzeichnisse unterstützt.
Sicherheit: Eine Verbindung über https kann ohne Probleme eingerichtet werden. Für
die Datensicherung aus phpGroupware heraus gibt es ein gesondertes Modul.
Skalierbarkeit: Es gibt keine Begrenzung für die Anzahl von Benutzern oder Gruppen.
4.10
PHPNuke
Das PHPNuke-Projekt im Internet: www.phpnuke.org
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.10.1
79
Entwicklung und Vitalität
PHPNuke bezeichnet sich selbst nicht als Groupware-Applikation, vielmehr soll es ein
Web-Portal-System sein, und wird auch gerne als Redaktionssystem oder wie es neuerdings heißt Content-Management-System, eingesetzt.
Trotzdem erfüllt das Programm wichtige Anforderungen an Groupware-Systeme und ist
gleichzeitig auch weit verbreitet. Vor allem bei der Verarbeitung von Informationen kann
PHPNuke punkten.
Das Projekt ist sehr aktiv, das merkt man auch daran, dass einige Hacks existieren, also
Programm-Ergänzungen, die bestimmte Funktionen zur Verfügung stellen: Etwa gibt es
einen File-Manager, der über die Kommandozeile bedient wird und Dateien in einem
Download-Verzeichnis verwaltet.
4.10.2
Voraussetzungen
Um PHPNuke installieren zu können ist ein funktionierendes LAMP-System nötig. Details für die Installation sind in Abschnitt 6.1 zu finden. Zwar wird MySQL als Datenbank
empfohlen, aber auch mSQL, PostgreSQL, PostgreSQL local, ODBC, ODBC Adabas,
Interbase und Sybase funktionieren.
4.10.3
Installation
Die aktuelle Progammversion von PHPNuke kann bei www.phpnuke.org geladen werden. Momentan ist die Version 6.5 aktuell, die Entwicklerversion befindet sich bei 6.5
Beta 2. Das aktuelle Quellarchiv hat den Namen PHP-Nuke-6.5.tar.gz und kann nach
/usr/local/src/phpnuke gespeichert werden.
Jetzt kann man das Quellarchiv auspacken und in das Document-Root-Verzeichnis des
Apache verschieben.
#Ins Verzeichnis /usr/local/src/phpnuke wechseln
cd /usr/local/src/phpnuke
#Archiv auspacken
tar xvzf PHP-Nuke-6.5.tar.gz
#Verzeichnis phpnuke ins Document-Root-Verzeichnis verschieben
mv ../phpnuke/ /var/www/htdocs
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
80
Im nächsten Schritt muss eine Tabelle in der Datenbank angelegt werden, zusätzlich ein
Nutzer, der auf diese neue Tabelle vollen Zugriff hat.
#Datenbank namens phpnuke anlegen
mysqladmin -u root -p create phpnuke
#Datenbank-Nutzer namens phpnk mit Passwort phpnk00 anlegen
mysql -u root -p
grant all on phpnuke.* to phpnk@localhost identified by
"phpnk00";
exit;
Im nächsten Schritt wird ins PHPNuke-Verzeichnis gewechselt, dort liegen im Unterordner html alle Konfigurationsdateien. In der Datei config.php müssen noch einige
Einstellungen getätigt werden:
#In Unterordner html wechseln
cd /var/www/htdocs/phpnuke/html
#Datenbank-Host setzen
$dbhost = "localhost";
#Datenbankbenutzer bestimmen
$dbuname = "phpnk";
#Passwort des Datenbankbenutzers bestimmen
$dbpass = "phpnk00";
#Tabellenname eintragen
$dbname = "phpnuke";
Die Zeilen mit den Variablen $prefix und $user prefix sollten auf den Werten nuke
gelassen werden, sonst kommt es beim Anlegen der Datenbanken zu Komplikationen.
Ein Problem gibt es nur, wenn mehrere Nuke-Server auf einen Datenbestand zugreifen.
Dann müssen die Prefixe angepasst werden, für einen Server nicht. Um alle Tabellen
zu erstellen, die für den Betrieb von PHPNuke gebraucht werden, liegt im Verzeichnis
phpnuke/sql die Datei nuke.sql.
#In SQL-Verzeichnis von PHPNuke wechseln
cd /var/www/htdocs/phpnuke/sql
#nuke.sql laden
mysql -u root -p phpnuke < nuke.sql
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
81
Die Installation ist jetzt abgeschlossen, PHPNuke kann über einen Browser konfiguriert
werden.
4.10.4
Start und Administration
Über den URL http://localhost/phpnuke/html/admin.php kann die Konfiguration
von PHPNuke begonnen werden. Zuerst muss ein Login und Passwort für den Administrator festgelegt werden. Die ersten Schritte sollten sein: Benutzer anlegen und Module
konfigurieren; die entsprechenden Module sind selbsterklärend.
4.10.5
Funktionalität
Nachrichtenaustausch: Für den asynchronen Nachrichtenaustausch steht ein Messenger zur Verfügung, der eine Web-basierte E-Mail-Funktion zur Verfügung stellt.
Ein Newsletter kann an ausgewählte Gruppenmitglieder versendet werden. Eine
weitere Möglichkeit bietet das angegliederte Forum, ein typisches BBS.
Informations- und Dokumentenverarbeitung: Wie bereits erwähnt ist phpNuke eher
als Content-Management-System zu bezeichnen als als Groupware. Es gibt daher
die Möglichkeit, bestimmte Themenbereiche, so genannte Topics, anzulegen. Diese können dann mit Artikeln zum jeweiligen Thema befüllt werden. Gemeinsame
Ressourcen verwalten Web-Link, das ist eine Bookmark-Sammlung, und die Enzyklopädie.
Gruppenplanung: Besondere Tools zur Gruppenplanung stellt phpNuke nicht bereit.
4.10.6
Fazit
phpNuke ist vom Ansatz her keine waschechte Groupware und erhebt auch nicht den Anspruch eine solche zu sein. Die Funktionen für die Gruppenplanung, etwa ein Kalender
oder ein Projekt-Planer, fehlen gänzlich. Dagegen bieten sich vor allem einige Funktionen zum asynchronen Nachrichtenaustausch an. Seine Stärken hat phpNuke aber bei der
Informations- und Dokumentenverarbeitung: Hier steht der Content-Manager im Vordergrund, der es erlaubt Artikel zu bestimmten Themenbereichen zu publizieren.
Aufwand: Der Aufwand für die eigentliche Installation ist nicht besonders hoch. Zusammen mit der Einrichtung des LAMP-Systems befindet sich phpNuke im Mittelfeld
der evaluierten Groupware-Lösungen. Auch der Aufwand für die Administration ist
nicht besonders hoch, obwohl es über 20 Software-Module gibt.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
82
Kosten: phpNuke ist als Open-Source-Projekt kostenlos erhältlich.
Bedienbarkeit: Leider ist der Groupware-Gedanke bei phpNuke nicht verwirklicht, im
Vordergrund steht, wie bei CM-Systemen üblich, die Publikation von Erzeugung,
Verarbeitung und Distribuierung von Inhalten. Trotzdem ist das Programm recht
einfach zu bedienen und übersichtlich aufgebaut.
Erweiterbarkeit: Durch den modularen Aufbau ist die Software leicht erweiterbar, bei
Updates werden auch nur die überarbeiteten Module eingespielt.
Flexibilität: phpNuke gefällt als Programm zwischen reinen CM-Systemen und Groupware. Wer aus beiden Welten Funktionalitäten braucht, für den kann phpNuke interessant sein. phpNuke ist auch als Groupware-Programm gut einsetzbar, wenn man
auf die Planungstools verzichten kann.
Integrierbarkeit: phpNuke arbeitet auf Apache und kann sonst keine vorhandene Software nutzen.
Sicherheit: phpNuke kann über eine https-Verbindung betrieben werden, andere Authentifizierungs-Mechanismen nutzt es nicht. Für ein Backup der Datenbank ist ein eigenes Modul vorgesehen.
Skalierbarkeit: phpNuke kennt keine Beschränkung für die Anzahl der Nutzer oder Module.
4.11
PHProjekt
Das PHProjekt im Internet: www.phprojekt.com
4.11.1
Entwicklung und Vitalität
Das PHProjekt bezeichnet sich selbst als Open-Source-Groupware-Suite, die sich auf
Information-Sharing und Dokumenten-Management spezialisiert hat. Die aktuelle Version ist 4.0. Die Software ist in 28 Sprachen verfügbar und unterstützt die Zusammenarbeit
mit unterschiedlichen Datenbanken, etwa mit PostgreSQL.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.11.2
83
Voraussetzungen
Das PHProjekt setzt Server-seitig einen Web-Server mit PHP-Parser voraus, der Zugriff
auf eine SQL-Datenbank hat. Eine typische Umgebung ist ein LAMP-4 oder WAMPSystem. Der Nutzer muss als Client einen framefähigen Browser haben und Javascript
sollte aktiviert sein.
4.11.3
Installation
Die aktuelle Progammversion von PHProjekt kann bei www.phprojekt.com geladen
werden. Das aktuelle Quellarchiv hat den Namen phprojekt.tar.gz und kann nach
/usr/local/src gespeichert werden.
Jetzt kann man das Quellarchiv auspacken und in das Document-Root-Verzeichnis des
Apache-Servers verschieben.
#Archiv auspacken
tar xvzf phprojekt.tar.gz
#Verzeichnis phprojekt ins Document-Root-Verzeichnis verschieben
mv ../phprojekt-4.0/ /var/www/htdocs
Jetzt muss noch eine leere Datenbank angelegt werden, die PHProjekt nutzen kann. Das
ist in wenigen Schritten erledigt:
#Datenbank namens phprojekt anlegen
mysqladmin -u root -p create phprojekt
#Datenbank-Nutzer namens phpr mit Passwort phpr00 anlegen
mysql -u root -p
grant all on phprojekt.* to phpr@localhost identified by
"phpr00";
exit;
Bevor die eigentliche Konfiguration beginnen kann, muss der Nutzer, unter dessen ID der
Apache läuft, Schreibrechte bekommen.
4 Zur
Einrichtung siehe 6.1
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
84
#Besitzverhältnisse des PHProjekt-Verzeichnisses rekursiv ändern
chown -R nobody phprojekt-4.0
Das PHProjekt ist fertig installiert und kann über einen Web-Browser konfiguriert werden.
4.11.4
Start und Administration
Im Web-Browser kann man über den URL http://localhost/phprojekt-4.0/setup.php das Konfigurationsmenü aufrufen. Dabei gibt es drei Login-Möglichkeiten: Erstinstallation, Update und Konfiguration. Logischerweise sollte jetzt Erstinstallation ausgewählt werden. Auch die Sprache kann sofort festgelegt werden, Deutsch ist auch dabei.
Auf der nächsten Seite sind noch einmal alle Voraussetzungen aufgelistet, eine leere Datenbank und Schreibrechte für den Web-Server. Jetzt müssen Datenbanktyp, Hostname,
Nutzername, Passwort und der Name der Datenbank gewählt werden.
db typ = mysql
Hostname = localhost
Nutzername = phpr
Passwort = phpr00
Name der existierenden Datenbank = phprojekt
Jetzt sollte eine Meldung erscheinen, dass die Datenbankanbindung funktioniert. Der
nächste Schritt umfasst bereits die Auswahl der Applikationen. Die vorhandenen Groupware-Module stehen dabei in einer Liste zur Auswahl. In einem Eingabefeld neben dem
beschriebenen Modul kann eine ”1” für ”Installieren” oder eine ”0” für ”Nicht Installieren” ausgewählt werden. Bei einigen Modulen zeigt sich bereits jetzt die Projekt-Orientierung von PHProjekt. Etwa lässt sich bei der Zeiterfassung festlegen, ob Kommen/Gehen
als Arbeitszeit oder Pause gerechnet werden sollen - bereits hier sollte eine Absprache
zwischen Technikabteilung und Geschäftsführung solche Kriterien festgelegt haben, das
spart später viel Konfigurationsarbeit.
Jetzt muss noch ein Admin-Passwort gewählt werden, die Default-Einstellung ”root” sollte nicht beibehalten werden. Außerdem lässt sich ein LDAP-Server eintragen und angeben, ob Passworte verschlüsselt werden sollen. Zum Abschluss können noch lokale Parameter wie Uhrzeit und Währungssymbol und das Seiten-Layout eingerichtet werden.
Nach Absenden des Formulars erfährt man sofort, ob die Einrichtung funktioniert hat. Das
ist in der Regel der Fall, weil nur die Schreibrechte in die Datenbank von Bedeutung sind.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
85
Jetzt ist die Datei config.inc.php neu geschrieben worden. Aus Sicherheitsgründen
sollte man davon eine Kopie anlegen. Außer dem Adminı́strator, er trägt die Kennung
root, wird noch ein Benutzer mit Kennung test angelegt, der der Gruppe default angehört.
Über die Web-Adresse http://localhost/phprojekt-4.0/index.php kann man sich
jetzt einloggen.
4.11.5
Funktionalität
PHProjekt ist eine gut gelungene Software, die durch einige Besonderheiten auffällt. So
springt beim Einloggen ein Pop-Up-Fenster auf, das die aktuellen Termine anzeigt. Das
Programm deckt das ganze Spektrum von Groupware-Funktionalitäten ab.
Nachrichtenaustausch: Das PHProjekt unterstützt sowohl synchronen als auch asynchronen Nachrichtenaustausch. Für den synchronen Part gibt es den ”Chat”, in dem
sich die Gruppenmitglieder über ein Textfeld unterhalten können. Für den asynchronen Teil gibt es ein Forum und ein E-Mail-Modul.
Informations- und Dokumentenverarbeitung: Die Dokumentenverarbeitung wird von
dem Programm-Modul ”Dateien”erledigt. Dabei können die Zugriffsmechanismen
für einzelne Teilnehmer eingestellt werden, zusätzlich gibt es eine Möglichkeit für
Versions-Management, so können Dateien aktualisiert werden. Leider funktionierten die Zugriffsrechte nicht immer wie gewünscht, das könnte in der Praxis viel
Arbeit für den Administrator bedeuten. Die gemeinsame Nutzung von Informationsobjekten realisieren Kontakte, Notizen und Helpdesk für den Bereich der unstrukturierten bis semi-strukturierten Daten. Das Zeitkartensystem dokumentiert
den Arbeitsaufwand der Mitarbeiter für die einzelnen Projekte.
Gruppenplanung: Kalender und Projekte bieten Planungsmöglichkeiten für die Arbeitsgruppen an, dabei reicht das Spektrum von unstrukturierten Aufgaben bis zu strukturierten Projekt-Beschreibungen.
4.11.6
Fazit
Besonders gut gefällt an PHProjekt, dass alle Anwendungen sofort ohne großen Aufwand
funktioniert haben. Das Funktionsspektrum ist breit gefächert aber nicht unübersichtlich.
Auch der Team-Gedanke ist gut in der Software umgesetzt.
Aufwand: Der Installationsaufwand für PHProjekt ist durchschnittlich, weil ein betriebsfertiges LAMP-oder WAMP-System vorausgesetzt wird. Der Aufwand für die Ad-
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
86
ministration hält sich in Grenzen, bei Problemen mit der Dokumentenversionierung
muss der Administrator aber häufig eingreifen.
Kosten: PHProjekt ist kostenlos erhältlich.
Bedienbarkeit: Die Bedienung ist intuitiv und die Anordung der einzelnen Funktionen
als Register verleiht dem System eine gewisse Dynamik.
Erweiterbarkeit: Eine gewisse Erweiterbarkeit ist durch den modularen Aufbau gegeben, bei zu vielen Modulen geht aber das übersichtliche Gesamtkonzept verloren.
Die Bestandteile von PHProjekt bilden ein sinnvolles Ganzes, was vor allem das
Weglassen von Modulen überflüssig macht.
Flexibilität: Die Software ist flexibel einsetzbar, sie bietet aus allen drei GroupwareBereichen Funktionalitäten an.
Integrierbarkeit: Vor allem bei den Datenbanken ist PHProjekt nicht wählerisch, sechs
verschiedene Server werden unterstützt. Die Verwendung mit einem bestehenden
Apache 1.3.x ist auch kein Problem.
Sicherheit: Eine https-Verbindung kann von PHProjekt genutzt werden. Dokumente können mit Passwort verschlüsselt werden und außerdem existieren erweiterte Benutzerrechte, die der Administrator vergeben kann.
Skalierbarkeit: PHProjekt gibt keine Begrenzungen für Mitglieder oder Gruppen an.
4.12
TUTOS
Das TUTOS-Projekt im Internet: www.tutos.org/homepage/index.html
4.12.1
Entwicklung und Vitalität
TUTOS ist ein Akronym und steht für The Ultimate Team Organisation Software. Die
Software funktioniert natürlich auch Web-basiert; die Entwicklung wurde Mitte 2000 gestartet, Verion 1.0 wurde vor kurzem erreicht.
Ziel des Projekts ist es, die Verwaltung und Organisation von kleinen Gruppen oder Teams
zu übernehmen. TUTOS ist im März 2003 als Projekt des Monats bei Sourceforge ausgezeichnet worden, was Rückschlüsse auf eine aktive Entwicklergemeinde zulässt.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.12.2
87
Voraussetzungen
Für die Installation von TUTOS braucht man einen Apache Web-Server und PHP4. Zusätzlich ist eine der Datenbanken MySQL, PostgreSQL, Oracle oder Borland Interbase 5
nötig. Ein LAMP-System, wie es in Abschnitt 6.1 aufgesetzt wird, eignet sich also sehr
gut zum Betrieb von TUTOS. Aktuell ist die Version 1.0, die bei den TUTOS-Paketen
immer um das genaue Release-Datum ergänzt wird. Hier wird Version 1.0.20030205 betrachtet, die demnach um 5. Februar 2003 veröffentlicht wurde.
4.12.3
Installation
Die aktuelle Programm-Version von TUTOS kann von www.tutos.org geladen werden; das Quellarchiv umfasst nur 2,83 MB. Die gepackte Quell-Datei trägt den Namen
tutos-php-1.0.20030205.tar.bz2. Sie kann in einem beliebigen Verzeichnis gespeichert werden, etwa in /usr/local/src. Sie sollte in das Dokument-Root-Verzeichnis
des Apache entpackt werden, bei der in 6.1 beschriebenen Installation ist das /var/www/htdocs.
#In das Document-Root-Verzeichnis des Apache wechseln
cd /var/www/htdocs
#TUTOS-Quellarchiv auspacken
tar xvjf /usr/local/src/tutos-php-1.0.20030205.tar.bz2
#In das TUTOS-Verzeichnis wechseln
cd tutos
Jetzt muss noch eine leere Datenbank angelegt werden, die TUTOS nutzen kann. Das ist
in wenigen Schritten erledigt:
#Datenbank namens tutos anlegen
mysqladmin -u root -p create tutos
#Datenbank-Nutzer namens tuto mit Passwort tuto00 anlegen
mysql -u root -p
grant all on tutos.* to tuto@localhost identified by "tuto00";
exit;
Jetzt müssen in die Datei php/config default.pinc die Datenbankeinstellungen eingetragen werden.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
88
#Datenbank-Namen auf tutos setzen
$tutos[dbname][0] = "tutos";
#Datenbank-Host setzen
$tutos[dbhost][0] = "localhost";
#Datenbank-Port auf MySQL setzen
$tutos[dbport][0] = 3306;
#Datenbank-Benutzer setzen
$tutos[dbuser][0] = "tuto";
#Passwort für Datenbank-Nutzer setzen
$tutos[dbpasswd][0] = "tuto00";
#Datenbank-Typ setzen
$tutos[dbtype][0] = 2;
#Datenbank-Alias setzen
$tutos[dbalias][0] = "MySQL database";
Jetzt müssen noch einige wichtige Tabellen angelegt werden, die TUTOS zum Betrieb
braucht. Das geht über ein Konfigurationsskript, das im Browser unter der Web-Adresse
http://localhost/tutos/php/scheme.php aufgerufen werden kann. Drei Schritte
sind dabei zu durchlaufen. Fehlermeldungen in roter Signalfarbe sind dabei normal: wenn
man genau hinsieht, dann bemerkt man, dass es sich hierbei nur um Meldungen handelt,
dass bestimmte Tabellen noch nicht existieren. Diese werden dann angelegt. Die Installation ist damit abgeschlossen.
• Dabenbank-Infos bestätigen
• Nötige Tabellen anlegen lassen
• Angaben bestätigen
#Schema-Skript schützen
chmod 700 php/scheme.php
#Update-Skript schützen
chmod 700 php/update.php
#Konfigurations-Skript verstecken
chmod 600 php/config default.pinc
#Besitzverhältnisse für TUTOS anpassen
chown -R nobody ../tutos
TUTOS ist jetzt fertig installiert.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.12.4
89
Start und Administration
Über den URL http://localhost/tutos/php/mytutos.php kann man sich mit Kennung ”superuser” und Passwort ”tutos” einloggen. Die ersten Schritte sollten sein:
• Superuser-Passwort ändern
• Programm-Module konfigurieren
• Benutzer anlegen
Diese drei Schritte können über den Reiter ”Einstellungen” vorgenommen werden. Neue
Gruppe lassen sich über im Menü Gruppenübersicht anlegen, dort kann man auch die
Benutzer zu einer oder mehreren Gruppen zuteilen.
4.12.5
Funktionalität
Als Programm-Module gibt es Kalender, Adressen, Fehlermanagement, Projekte und Gruppenübersicht. Optionen für das aktive Fenster stehen oben links, so kann man bei der
Kalenderansicht Einträge suchen oder neu anlegen. Kern der Software ist die ProjektVerwaltung. Zu jedem Projekt lassen sich Dokumente erzeugen, Änderungen vornehmen,
Notizen anlegen, Rechnungen erstellen und Aufgaben definieren.
Nachrichtenaustausch: Mit TUTOS ist nur asynchrone Kommunikation über eine MailFunktion möglich. In der verwendeten Version ist das Mail-Modul aber nicht enthalten, es muss also ein externer E-Mail-Zugang existieren, um die eingebundenen
Funktionen zu nutzen, etwa eine Nachricht an eine Gruppe zu schicken.
Informations- und Dokumentenverarbeitung: Die Dokumentenverarbeitung funktioniert bei TUTOS Projekt-bezogen, das heißt für jedes Projekt gibt es die zugehörigen Dokumente. Diese lassen sich versionieren und vom Besitzer sperren. Die
Adress-Datenbank verwaltet die Kontakte, also semi-stukturierte bis strukturierte
Daten.
Gruppenplanung: Das Planungsspektrum reicht von unstrukturierten Aufgaben bis zu
strukturierten Aufgaben. Vorhandene Tools sind der Kalender und der Projekt-Manager.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.12.6
90
Fazit
TUTOS wird zwar momentan von vielen Seiten mit Lob überschüttet, im Gegensatz zu
vielen anderen Web-basierten Groupware-Systemen ist es aber nicht besonders intuitiv zu
bedienen. An vielen Stellen fehlt eine klare Navigation, wichtige Features fehlen manchmal sogar ganz. Etwa kann man sich keine Übersicht über alle Benutzer anzeigen lassen.
Aufwand: Der Aufwand für die Installation von TUTOS ist hoch. Vorausgesetzt wird
ein LAMP-System, dann kommen noch einge zusätzliche Konfigurationsschritte
hinzu. Auch der Aufwand für die Administration ist überdurchschnittlich, das liegt
aber auch daran, dass TUTOS einfach viele Einstellungsmöglichkeiten bietet.
Kosten: TUTOS ist kostenlos erhältlich.
Bedienbarkeit: Die Bedienbarkeit ist im Vergleich zu den anderen gefundenen Lösungen gewöhnungsbedürftig. Meist muss man sich durch drei oder mehr Untermenüs
hangeln, bis man die gewünschte Funktion gefunden hat. Das Hinzufügen neuer
Benutzer ist zum Beispiel sehr kompliziert.
Erweiterbarkeit: TUTOS ist über den Administrator-Account flexibel um neue Module
erweiterbar.
Flexibilität: Das Programm ist flexibel für Informationsverarbeitung und Gruppenplanung einsetzbar. Im Besonderen beim Dokumenten-Management zeigt TUTOS seine Stärken durch Versionierung. Im Kommunikationsbereich hingegen enttäuscht
die Software.
Integrierbarkeit: TUTOS lässt sich auf einem bestehenden Apache-System betreiben.
Was den Datenbank-Server betrifft, kann TUTOS auch mit PostgreSQL zusammenarbeiten. Bestehende Mail-Server lassen sich auch integrieren.
Sicherheit: TUTOS kann über eine https-Verbindung betrieben werden und verwendet
als Zugangsschutz eine Kombination aus Kennung und Passwort. Eine BackupMöglichkeit für die Datenbank besteht.
Skalierbarkeit: TUTOS gibt keine Begrenzung für Gruppen oder Mitglieder vor.
4.13
WikiWeb - Beispiel phpWiki
Der Ausdruck Wiki stammt aus dem hawaiianischen und bedeutet soviel wie ”schnell”.
Normalerweise spricht man von WikiWeb oder auch WikiWiki, was in etwa dem deutschen Ausdruck ”Hopp Hopp” gleichkommt. Dahinter steckt eine Web-basierte Form
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
91
der Zusammenarbeit, die für eine Web-Seite jedem Benutzer volle Gestaltungsmöglichkeiten gibt und auch einfache Formatierungsbefehle zur Verfügung stellt.
Zu einem Wiki gehört, dass Hyperlinks nicht einfach auf eine Seite verweisen, sondern
auf ein Thema, ein Topic. Das Klicken auf einen Hyperlink führt zu einer Seite mit Informationen zu dem entsprechenden Thema. Die Seiten eines Wiki bilden ein inhaltliches
Netz.
Wikis entstanden als Wissensmanagement-Tool im Umfeld der Design Pattern-Theoretiker.
Das erste WikiWeb wurde vom amerikanischen Software-Guru Ward Cunningham konzipiert und entwickelt. Anfangs zweifelt wohl jeder an, dass ein WikiWeb funktioniert;
Tatsache ist aber, es funktioniert wirklich. Die Beliebtheit der Wiki-Idee hat zahlreiche
verschiedene Implementierungen entstehen lassen.
Das phpWiki-Projekt im Internet: http://phpwiki.sourceforge.net/phpwiki
4.13.1
Entwicklung und Vitalität
phpWiki ist ein WikiWeb, das in PHP programmiert wurde. Momentan ist die Version
1.2.2 aktuell.
4.13.2
Voraussetzungen
Unabdingbare Voraussetzungen für den Betrieb von phpWiki sind der Web-Server Apache
und die Skriptsprache PHP. Da der intensive Betrieb erst mit einer Datenbank Sinn macht,
ist ein LAMP-System zu empfehlen, wie es in Abschnitt 6.1 eingerichtet wird. phpWiki
unterstützt aber auch andere Datenbanken, etwa mSQL oder PostgreSQL.
4.13.3
Installation
Die aktuelle Version von phpWiki kann von http://phpwiki.sourceforge.net geladen werden, die Quelldatei hat den Namen phpwiki-1.2.2.tar.gz. Die Datei kann in
einem beliebigen Verzeichnis gespeichert werden, etwa in /usr/local/src. Sie sollte
ins Document-Root-Verzeichnis des Apache entpackt werden. Wenn der Apache wie in
Abschnitt 6.1.3 beschrieben installiert wird, dann ist das /var/www/htdocs.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
92
#Ins Verzeichnis /var/www/htdocs wechseln
cd /var/www/htdocs
#Quelldatei entpacken
tar xvzf /usr/local/src/phpwiki-1.2.2.tar.gz
#Das phpWiki-Verzeichnis umbenennen
mv phpwiki-1.2.2/ phpwiki/
#Besitzrechte für phpWiki-Verzeichnis ändern
chown -R nobody phpwiki
#Ins phpWiki-Verzeichnis wechseln
cd phpwiki
Empfehlenswert ist aber die Verwendung einer MySQL-Datenbank. Wie die Datenbank
konfiguriert wird, steht in Abschnitt 6.1.2. Für das Zusammenspiel von phpWiki und MySQL sind noch ein paar Schritte nötig:
#Datenbank namens phpwiki anlegen
mysqladmin -u root -p create phpwiki
#Datenbank-Nutzer namens phpwiki mit Passwort phpwiki00 anlegen
mysql -u root -p
grant all on phpwiki.* to phpwiki@localhost identified by
"phpwiki00";
exit;
Jetzt muss nur noch die Datei lib/config.php bearbeitet werden.
#Sprache festlegen
$LANG = "de";
#Datenbanktyp auf MySQL setzen
$WhichDatabase = ’mysql’;
#Datenbank-Host setzen
$mysql server = ’localhost’;
#Datenbank-Benutzer setzen
$mysql user = ’phpwiki’;
#Datenbank-Passwort setzen
$mysql pwd = ’phpwiki00’;
#Datenbank-Name setzen
$mysql db = ’phpwiki’;
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
93
#Verzeichnis /var/www/htdocs/phpwiki/pages anlegen
mkdir /var/www/htdocs/phpwiki/pages
#DB-Dateien verschieben
mv /tmp/*db /var/www/htdocs/phpwiki/pages/
#Verzeichnisrechte ändern
chown 500.500 /var/www/htdocs/phpwiki/pages
#Ins phpWiki-Verzeichnis wechseln
cd phpwiki
#Datenbank-Schema anlegen
mysql -u root -p phpwiki < schemas/schema.mysql
Die Installation von phpWiki ist abgeschlossen, unter dem URL http://localhost/phpwiki/ sollte jetzt die Index-Seite erscheinen.
4.13.4
Start und Administration
Um in den Admin-Bereich zu gelangen muss zuerst in der Datei admin.php eine Kennung nebst Passwort festgelegt werden. Danach ist die Web-Seite http://localhost/phpwiki/admin.php zugänglich. Den Administrator-Account braucht man eigentlich nur,
um Seiten zu löschen oder zu sperren. Ansonsten reguliert sich ein gut besuchtes WikiWeb durch die aktiven Nutzer selbst, eine explizite Benutzerverwaltung gibt es nicht.
4.13.5
Funktionalität
Das Haupteinsatz-Gebiet von phpWiki ist Informationsverarbeitung. Durch die einfache
Art und Weise, verknüpfte Seiten zu erstellen bietet es weitreichende Möglichkeiten, die
in der Praxis oft für die Erstellung von Dokumentationen, Lexika oder spezielle Interessenseiten genutzt werden.
Nachrichtenaustausch: Obwohl man es meist nicht vermutet, kann phpWiki auch zum
Zweck des Nachrichtenaustauschs verwendet werden. Man kann sich zum Beispiel
eine eigene Unterseite für das Hinterlassen von Nachrichten anlegen, eine Form
der asynchronen Kommunikation. Jeder der eine Nachricht posten will, kann die
entsprechende Seite editieren.
Informations- und Dokumentenverarbeitung: Die eigentliche Kernfunktionalität von
Wikis an sich ist die Informationsverarbeitung, also die Erstellung von untereinander verknüpften Inhaltsseiten. Ein WikiWeb ist ein klassisches Beispiel für ein
Hypertext-System.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
94
Gruppenplanung: Planungs-Tools für phpWiki gibt es nicht.
4.13.6
Fazit
phpWiki ist ein mächtiges Werkzeug, das in der Praxis häufig eingesetzt wird. So verwendet es etwa die Technik-Abteilung der New York Times um damit Dokumentationen zu
schreiben. Vom Standpunkt des Groupware-Einsatzes muss erwähnt werden, dass phpWiki keine Gruppen kennt, lediglich die Benutzer, die alle Vollzugriff haben. Trotzdem gibt
es einen Administrator, dessen Hauptaufgabe das Backup der Seiten ist.
Aufwand: Der Aufwand für die Installation ist durchschnittlich; für den sinnvollen Betrieb ist ein LAMP-System nötig. Dagegen ist der Aufwand für die Administration
verschwindend, das Ziel eines Wikis ist es, sich selbst zu regulieren.
Kosten: phpWiki ist kostenlos erhältlich.
Bedienbarkeit: phpWiki ist intuitiv zu bedienen. Wenige Spezialregelen erleichtern die
Strukturierung des Textes und die Verknüpfung der Seiten untereinander.
Erweiterbarkeit: phpWiki ist funktional nicht durch zusätzliche Komponenten erweiterbar. Der Phantasie der Benutzer ist aber keine Grenze gesetzt, so setzen einige WikiSites das System auch für den asynchronen Nachrichtenaustausch ein.
Flexibilität: phpWiki ist flexibel einsetzbar, hat seine besondere Stärke aber bei der Informationsverarbeitung. Features zur Gruppenplanung gibt es nicht.
Integrierbarkeit: phpWiki lässt sich mit einem bestehenden LAMP-System nutzen, auch
andere Datenbanken lassen sich verwenden.
Sicherheit: Da phpWiki auf die Eigenverantwortung jedes Lesers setzt, der zugleich
auch Schreiber ist, gibt es keine Authentifikations-Mechanismen. Der Administrator hat natürlich eine Backup-Möglichkeit für die Datenbank. Das Wiki kann auch
über eine https-Verbindung betrieben werden.
Skalierbarkeit: phpWiki gibt keine Begrenzung für Benutzer vor.
4.14
Zope
Das Zope-Projekt im Internet: www.zope.org
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
4.14.1
95
Entwicklung und Vitalität
Zope ist ein Web-Application-Server, genauer gesagt ein Framework für das Erstellen von
Web-Applikationen, also Programme, die über einen Browser bedient werden können.
Das Akronym Zope steht für Z Object Publishing Environment“. Das bringt gleich ein
”
grundlegendes Konzept von Zope zum Ausdruck: Web-Seiten bestehen aus Objekten, das
können Ordner oder auch Dokumente sein.
Außerdem gibt es Objekt-Hierarchien, etwa einen Ordner, in dem Dokumente als UnterObjekte liegen, die als Unter-Objekte wieder Bilder enthalten. Das Zope-Projekt wurde
1996 von Jim Fulton gestartet und die Programmierer sind sehr aktiv. Ein Großteil des
Zope-Codes wurde und wird in Python geschrieben. Momentan ist die Version 2.6.1 aktuell.
Zope wird heute auch gerne für Content Management eingesetzt. Das sollte vor allem für
Benutzer interessant sein, die neben der Groupware-Funktionalität auch an einem CMS
interessiert sind - Zope kann für beides eingesetzt werden.
4.14.2
Voraussetzungen
Zope ist für folgende Plattformen verfügbar: Windows, Linux und Solaris. Die angebotenen Quellen sollen aber auch auf den meisten anderen Unix-Systemen laufen. Für Zope
ist eine installierte Python-Version nötig, alles andere bringt das Toolkit selbst mit.
4.14.3
Installation
Besprochen wird die momentan stabile Version 2.6.1, die aktuelle Entwickler-Version
ist 2.6.1b2. Das Zope-Team rät dazu, mindestens die Version 2.2.0 einzusetzen, erst in
dieser Version sind einige wichtige Sicherheits-Updates verfügbar. Für Neuinstallationen
empfiehlt sich die hier besprochene Version.
Im Download-Bereich der Zope-Web-Seite gibt es Links auf die Stable- und DeveloperVersion. Wie oben besprochen ist für den produktiven Einsatz die Stable-Version vorzuziehen. Zope wird hier nicht als RPM-Paket angeboten, erste Wahl ist das Quellpaket für
Linux namens Zope-2.6.1-linux2-x86.tgz; es ist immerhin fast sieben MByte groß.
Es wurde im Februar 2003 veröffentlicht. Gesonderte RPM-Seiten bieten Jeff Rush und
Adam Manock an, in RPM-Suchmaschinen findet man aber meist aktuellere Pakete. Zu
beachten ist, dass dieses Paket für die x86-Plattform gemacht ist und auf anderen Plattformen nicht verwendet werden kann. Falls eine andere Rechnerarchitektur verwendet wird,
sollte das Paket Zope-2.6.1-src.tgz verwendet werden. Ausschließlich für Updates
sind Pakete mit der Namensgebung Zope-2.x.x-to-2.y.y-platform.tgz zuständig.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
96
#Ins Verzeichnis /usr/local wechseln
cd /usr/local
#Zope-Paket entpacken
tar xvzf src/Zope-2.6.1-linux2-x86.tgz
#Verzeichnis umbenennen
mv Zope-2.6.1-linux2-x86 zope
#Ins Zope-Verzeichnis wechseln
cd zope
Bevor das Intallationsskript ausgeführt wird gibt es eine wichtige Frage zu beantworten: Soll ein eigener Web-Server mit Zope verwendet werden oder wird der mitgelieferte
ZServer verwendet? Viele Anwender werden wahrscheinlich Apache verwenden und damit auch Apache in Zusammenarbeit mit Zope bevorzugen. Wer noch keinen Web-Server
einsetzt kann getrost auf ZServer zurückgreifen, er ist schnell und stabil. Jetzt kann das
Installationsskript ausgeführt werden.
#Installations-Skript ausführen
./install
#Besitzverhältnisse des Zope-Verzeichnisses ändern
chown -R nobody.nobody ../zope
#Besitzverhältnisse des Unterverzeichnisses var anpassen
chown root.root var
#Sticky-Bit setzen
chmod o+t var
Die Installationsroutine läuft automatisch ab und generiert zum Abschluss einen Usernamen nebst Passwort. Diese müssen unbedingt notiert werden. Beide Parameter können
über ein spezielles Skript namens zpasswd.py im Nachhinein geändert werden.
4.14.4
Start und Administration
Zope lässt sich per Web-Browser einrichten, zum Starten reicht das Kommando ./start
&. Falls Zope als Root-Prozess oder unter der ID eines anderen Users laufen soll, ist das
Kommando ./start -u user & nötig. Zope startet aber nur, wenn auch der eingerichtete Web-Server läuft. Zugriff gibt es Standard-mäßig über den Port 8080. Bei dieser
Beispiel-Installation ist Zope unter http://localhost:8080 erreichbar.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
97
Die Administration erfolgt ebenso über den Web-Browser, die Web-Adresse lautet http://localhost:8080/manage. Um sich hier einzuloggen ist das generierte Paar aus Username und Passwort nötig, das am Ende der Installation vom Install-Skript generiert worden ist. Für das Zurücksetzen des Passwortes gibt es ein Python-Skript, das sich im ZopeVerzeichnis befindet, es trägt den Namen zpasswd.py. Es ist eine Notlösung, falls das
automatisch generierte Passwort nicht greifbar ist.
#Variable PYTHONPATH anlegen
PYTHONPATH=/usr/local/zope/lib/python:
/usr/local/zope/lib/python2.1/
#Variable exportieren
export PYTHONPATH
#Admin-Account mit Passwort ”geheim” anlegen
bin/python ./zpasswd.py -u admin -p geheim inituser
Zope ist jetzt fertig installiert. Die eigentliche Groupware müsste aber als Applikation erst
noch installiert werden, Zope stellt nur die Grundlage dafür. Allein auf der Zope-Webseite
findet man über 700 ergänzende Applikationen zu Zope. Speziell für Groupware-Funktionen gibt es etwa das Projekt Worldpilot, das leider im Alpha-Stadium eingeschlafen zu sein
scheint, denn es ist unter der aktuellen Zope-Version gar nicht lauffähig. Andere Projekte
sind Amphora und das WikiWeb ZWiki, erwähnenswert ist auf jeden Fall auch Proiektor,
eine Groupware-Lösung, die sich vor allem dem Projekt-Management widmet.
Hier soll kurz auf ein interessantes Groupware-Modul namens Nuxeo eingegangen werden, es kann kostenlos von www.nuxeo.org geladen werden. Die aktuelle Version 0.8 kann
etwa unter /usr/local/src gespeichert werden. Die Installation ist denkbar einfach:
#Ins Zope-Verzeichnis wechseln
cd /usr/local/zope
#Nuxeo-Paket entpacken
tar xvzf /usr/local/src/gwsuite-0.8beta.tgz
#Zope neu starten
./start -u root
Einige Groupware-Funktionen bietet Zope trotzdem, diese sind teilweise als BeispielSzenarien schon vorkonfiguriert: Datei-Verwaltung, Gästebuch oder Benutzerverwaltung.
Über die Benutzerverwaltung, im Menü als acl users bezeichnet, kann man einen Manager-Account anlegen, der für die Einrichtung von Zope zuständig ist.
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
98
Die Ordner-Hierarchie im Management-Verzeichnis ist einfach strukturiert, der RootFolder ist unter dem URL http://localhost:8080/ zu erreichen, jeder angelegte Unterordner wird dann entsprechend unter http://localhost:8080/Unterordner gefunden. Ein neuer Ordner lässt sich einfach über das Pull-Down-Menü hinzufügen.
4.14.5
Funktionalität
Zope kann, ergänzt durch Groupware-Module, den gesamten Groupware-Bereich abdecken. Das Basismodul ist mit Dokumentenverwaltung und Mail-Funktion ausgestattet,
fügt man noch, wie oben beschrieben Nuxeo oder ein anderes Groupware-Modul hinzu,
kann man das komplette Groupware-Spektrum abdecken.
Nachrichtenaustausch: Zope erlaubt die Integration von bestehenden Mail-Servern. Auch Foren-Software gibt es. Damit liegen die Stärken vor allem bei der asynchronen
Kommunikation.
Informations- und Dokumentenverarbeitung: Die Informationsverarbeitung kann etwa ZWiki übernehmen, ein WikiWeb, das für Zope geschrieben wurde. Zope bringt
aber auch schon im Basismodul umfangreiche Funktionen für das Publishing mit,
etwa die Möglichkeit, Templates zu erstellen. Beim Dokumenten-Management bietet Zope mehr als die meisten anderen Groupware-Applikationen. Zugriff über WebDAV ist möglich. Dateien können sogar online editiert und somit versioniert werden.
Gruppenplanung: Die Planungs-Funktionen reichen von unstrukturierten über semistrukturierte bis zu hochstrukturierten Aufgaben.
4.14.6
Fazit
Zope ist keine Groupware-Lösung sondern ein Web-Applikation-Server, der als Groupware-Lösung verwendet werden kann. Das Problem bei Zope ist, dass die vorhandenen Module, momentan sind das allein auf der Zope-Webseite über 700, fast schon eine Wissenschaft für sich bilden. Beispiele aus der Praxis zeigen, dass Zope gerne als RundumLösung eingesetzt wird. So verwendet die politische Wochenzeitung ”Die Zeit” in ihrer
Online-Ausgabe ein Zope-basiertes System für das Content-Management.
Aufwand: Das Basissystem für Zope lässt sich einfach installieren, vor allem wenn man
den beiliegenden Web-Server nutzt. Schwierig ist nur, das richtige Programm-Modul
für den spezifischen Einsatz zu finden; hat man sich für ein Modul entschieden,
dann ist das Einspielen auch ohne viel Aufwand erledigt. Für den bloßen Einsatz
KAPITEL 4. WEB-BASIERTE OPEN-SOURCE-GROUPWARE
99
als Groupware ist Zope fast schon überdimensioniert, als Rundum-Lösung, also
auch für Content-Management gibt es nichts Vergleichbares.
Kosten: Die Software ist kostenlos erhältlich.
Bedienbarkeit: Zope lässt sich intuitiv bedienen. Der Administrator sollte aber vorher
ein umfassendes Konzept entwerfen, weil die hohe Anzahl der KonfigurationsMöglichkeiten leicht überfordern kann.
Erweiterbarkeit: Über Module lässt sich Zope beliebig erweitern. Allein die Zope-Webseite listet über 700 Zuatzmodule unterschiedlichster Couleur auf. So gut wie alle
offenen Standards, die es im Groupware-Bereich gibt, werden unterstützt: WebDAV, LDAP oder XML sind nur drei Beispiele.
Flexibilität: Das Gleiche gilt für die Flexibilität; Zope ist flexibel einsetzbar, es gibt
allein auf der Zope-Webseite über 700 Zusatz-Module, die den Web-ApplicationServer beliebig aufrüsten. Nützlich sind vor allem auch reine Praxislösungen; etwa
gibt es ein Modul, das Dokumente aus dem freien Office-Paket OpenOffice.org
einliest und verwaltet. Zope kann den gesamten Groupware-Bereich abdecken.
Integrierbarkeit: Zope kann mit bestehenden Web-Servern, E-Mail-Servern, LDAPVerzeichnissen und vielen anderen bestehenden Systemen genutzt werden.
Sicherheit: Zope nutzt einen Zugangsschutz bestehend aus Kennung und Passwort, aber
auch andere Möglichkeiten bieten die zusätzlichen Zope-Module: Mit RPC Auth
kann man sich über einen XML-Remote-Procedure-Call anmelden.
Skalierbarkeit: Zope kann beliebig viele Objekte verwalten.
Kapitel 5
Einsortierung der
Open-Source-Groupware
Dieses Kapitel schlägt die Brücke zwischen der pragmatischen Klassifizierung aus Kapitel 2.3 und der Bestandsaufnahme aus Kapitel 4. Die gefundenen Groupware-Lösungen
werden jetzt in die Klassifizierung eingeordnet, besser gesagt, die Funktionalitäten der
einzelnen Groupware-Produkte werden in die Funktionsklassen eingeordnet.
Die Einordnung wird mittels einer Tabelle illustriert. Dort sind in den Zeilen die OpenSource-Produkte aufgelistet und in den Spalten die drei Kategorien Nachrichtenaustausch,
Informations- und Dokumentenverarbeitung und Gruppenplanung. Auch die Unterkategorien sind mit eingetragen.
Die Tabelle erfüllt zwei Funktionen:
Produktfinder: In der Praxis wird meist eine bestimmte Funktionalität gesucht, nicht
ein bestimmtes Produkt. Das heißt, es geht darum, ein Produkt zu finden, das eine
bestimmte Aufgabe erfüllen kann. Mittels Tabelle 5 kann man über die Funktionalitäten nachsehen,welche Produkte eine bestimmte Aufgabe erfüllen können.
Funktionalitätenfinder: Eine zweite Möglichkeit ist es, ausgehend von einem bestimmten Produkt nach seinen Funktionaliäten zu suchen, das ist insbesondere dann der
Fall, wenn noch mehrere Produkte zur Auswahl stehen und man sich nicht im klaren darüber ist, welche Lösung die geeignetste ist. Dann kann man einfach, nach
Produkten sortiert, deren zusätzliche Funktionalität anhand der Tabelle überprüfen.
100
Informations -und
Gruppenplanung
Dokumentenverarbeitung
str. semi-str.
unstr.
str. semi-str. unstr.
Backtalk
X
X
X
X
X
Discus
X
X
X
X
X
Extropia
X
X
X
X
IntranetSuite
X
X
X
X
Moregroupware
X
X
X
X
X
X
X
phpCollab
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
TUTOS
X
X
X
X
WikiWeb - phpWiki
X
X
X
X
X
X
X
X
phpGroupware
X
X
X
X
PHPNuke
PHProjekt
Zope mit Modulen
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
101
Tabelle 5.1: Funktionen von Open-Source-Groupware
KAPITEL 5. EINSORTIERUNG DER OPEN-SOURCE-GROUPWARE
1:1
Nachrichtenaustausch
synchron
asynchron
n:1 1:n n:m 1:1 n:1 1:n n:m
Kapitel 6
How-Tos für Standard-Probleme
Das aktuelle Kapitel bietet How-Tos für Standard-Probleme an, wie sie in Arbeitsgruppen heute auftreten. Die Beispiel-Szenarien sollen jeweils ein konkretes Problem kurz
beschreiben und dann aufzeigen, wie mit Hilfe der Kategorisierung von CSCW-Systemen
und den Installationshinweisen eine schnelle Einführung von Groupware-Applikationen
geschehen kann.
Die drei Standardszenarien sehen folgendermaßen aus:
Szenario 1: Dieses Praxis-Szenario beschreibt das Finden und Installieren einer Webbasierten Open-Source-Groupware-Lösung für eine kleine Arbeitsgruppe. Als zusätzliche Merkmale kommen hinzu, dass diese Arbeitsgruppe am gleichen Ort tätig
ist und im wesentlichen die gemeinsame Nutzung von Dokumenten im Vordergrund
steht.
Szenario 2: Einen in der Praxis immer häufiger auftretenden Fall beschreibt dieses Szenario: Es betrifft kleine bis mittlere Arbeitsgruppen, deren Mitglieder sich an unterschiedlichen Orten befinden. Deshalb ist ein wichtiger Faktor auch die Gruppenkommunikation und das Gruppenbewusstsein. Außerdem nutzen die Gruppenmitglieder einen gemeinsamen Dokumentenvorrat.
Szenario 3: Dieses dritte Szenario lenkt den Focus weg von klassischen Arbeitsgruppen und betrachtet eine Community of Practice, auch Interessengruppe genannt.
Die Gruppenmitglieder sind also nicht durch eine gemeinsame Aufgabe verbunden,
sondern durch ein gemeinsames Interesse. Das Hauptmerkmal ist, dass die Interessengruppe den Austausch von Informationen, also die Informationsverarbeitung in
der Vordergrund stellt.
Aufgrund der Tatsache, dass viele Open-Source-Groupware-Systeme auf das Betriebssystem Linux zurückgreifen und außerdem den Web-Server Apache nebst einer MySQL102
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
103
Datenbank und PHP verwenden, gibt es zuerst ein How-To, wie man ein so genanntes
LAMP-System einrichtet; es dient dann als Grundlage für die Installation der GroupwareServer, wie sie in Kapitel 4 beschrieben sind.
6.1
Einrichtung eines LAMP-Systems
LAMP ist ein Akronym, die Buchstaben stehen dabei für das Betriebssystem Linux, den
Web-Server Apache, die Datenbank MySQL und die Skriptsprache PHP. Diese Komponenten gelten als Aushängeschilder der Open-Source-Bewegung, denn sie werden nicht
nur privat, sondern auch weitläufig in Unternehmen eingesetzt und zeigen, zu welchen
Dingen freie Software fähig ist.
Da diese Diplomarbeit auf Open-Source-Groupware beschränkt ist, macht es auch Sinn,
sich ein LAMP-System einzurichten; gespartes Geld für Lizenzen kann man in leistungsfähige Hardware investieren. Für Windows gibt es auch eine ähnliche Konfiguration, solche
Systeme werden dann als WAMPs bezeichnet, sie sind jedoch weit weniger verbreitet.
6.1.1
Linux-Installation
Eine Beschreibung für eine konkrete Linux-Installation macht eigentlich keinen Sinn. Erstens gibt es sehr viele verschiedene Linux-Systeme. Diese so genannten Distributionen
werden von Firmen oder Projekten zusammengestellt, mit Installationsroutinen, PaketManagern und jeder Menge Zusatz-Tools kombiniert und dann entweder verkauft oder
zum kostenlosen Download angeboten. Leider nehmen immer mehr Distributoren Anpassungen an Linux-Komponenten vor, die nicht Standard-konform sind, oftmals sind Teile
sogar nicht mehr frei zugänglich, sondern proprietär.
Wer heute ein Linux-System installieren will, hat die Möglichkeit entweder einen Satz
CDs oder DVDs zu kaufen, der Kaufpreis liegt meist unter 100 Euro, oder ein kostenloses
Linux-System aus dem Netz zu laden, bei dem dann meist die kommerziellen Komponenten fehlen. Besonders der zweite Weg ist interessant. Etwa gibt es auf der Web-Seite
www.linuxiso.org Linux-Distributionen zum kostenlosen Download. Diese können dann
auf CD gebrannt werden und die Installation kann beginnen.
Welche Distribution man wählt ist Geschmackssache, eine klare Nummer eins gibt es
nicht. Als besonders robust, auch im Unternehmenseinsatz hat sich Red Hat Linux gezeigt. Auf diese Distribution bauen auch andere Hersteller auf, etwa Mandrake. Von obiger Adresse kann man sich kostenlos die aktuellen Distributionen laden, als Beispiel soll
Mandrake 9.1 dienen.
Zwar basiert Mandrake auf Red Hat, besonders bei der am 31. März 2003 veröffent-
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
104
lichten Version Red Hat 9.0 kommen aber einige Unterschiede zum Tragen. Tatsache ist
aber, dass die beschriebenen Schritte ausgeführt werden müssen. Kleine Anpassungen
sind dennoch nötig.
Die Installation läuft in einem grafischen Modus ab, wichtig ist für das Aufsetzen eines
LAMP-Systems, dass die richtigen Pakete installiert werden: Vor allem die EntwicklerTools nebst Bibliotheken sind sehr wichtig und sollten gleich zu Anfang installiert werden. Außerdem noch die Pakete flex, bison, gd-library, glibc-devel, db1, db2-devel und
libpng. Leider heißen bei anderen Linux-Distributionen die Pakete anders. Die jeweiligen
Paket-Manager sollten aber nach einer Stichwortsuche die richtigen Pakete parat haben.
Für die Downloads sollte man ein eigenes Verzeichnis anlegen. In dieser Beschreibung
wird beispielsweise /usr/local/src/lamp/dl verwendet. Administrator-Rechte sind
zwar nicht für alle Schritte der Installation nötig, aus Gründen der Einfachheit lohnt es
sich aber, am Anfang durch das Kommando su Root-Rechte zu erlangen.
6.1.2
MySQL-Installation
MySQL ist immer noch die am weitesten verbreitete Open-Source-Datenbank, auch wenn
in letzter Zeit große Konkurrenz aus dem eigenen Lager kommt. Sehr interessant unter den
alternativen Lösungen ist PostgreSQL; bei einigen Groupware-Lösungen wird bereits an
der Unterstützung gearbeitet. Trotzdem ist man momentan mit MySQL auf der sicheren
Seite, besonders wenn es um Dokumentation und Integration geht.
MySQL kann kostenlos von der Web-Seite www.mysql.com geladen werden, in diesem How-To wird die Version 3.23.56 verwendet. Es ist darauf zu achten, das richtige Quellpaket auszuwählen. In diesem Fall ist das mysql-3.23.56.tar.gz, das in
/usr/local/src/lamp/dl abgespeichert wird. Um einen Download in diesem Verzeichnis zu speichern muss es schreibbar sein. Der Befehl chmod 777 /usr/local/src/lamp/dl macht das Unterverzeichnis dl für jeden schreibbar.
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
105
#Ins LAMP-Verzeichnis wechseln
cd /usr/local/src/lamp
#MySQL-Quellen entpacken
tar xvzf dl/mysql-3.23.56.tar.gz
#Verzeichniswechsel
cd mysql-3.23.56
#Eine Gruppe mit Namen mysql nebst Mitglied mysql anlegen
groupadd mysql
adduser -g mysql mysql
#Ausführen des Konfigurations-Skripts mit Installations- und Datenverzeichnis
./configure --prefix=/usr/local/mysql/3.23.56
--localstatedir=/var/mysql/data
Das Konfigurations-Skript hat ein Make-File erstellt, das im nächsten Schritt ausgeführt
wird. Anschließend kann MySQL installiert werden.
#Ausführen des erstellten Make-Files
make
#Installation
make install
#Symbolischer Link auf das Verzeichnis current
ln -s /usr/local/mysql/3.23.56 /usr/local/mysql/current
#Anlegen des Datenverzeichnisses
mkdir /var/mysql
mkdir /var/mysql/data
#Datenbanken anlegen
scripts/mysql install db
#Besitzrechte des MySQL-Verzeichnisses auf root setzen
chown -R root /usr/local/mysql
#Besitzrechte des Datenverzeichnisses auf mysql setzen
chown -R mysql /var/mysql/data
#Gruppe des MySQL-Verzeichnisses auf mysql setzen
chgrp -R mysql /usr/local/mysql
MySQL ist fertig installiert und kann gestartet werden.
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
106
#Starten des MySQL-Servers
/usr/local/mysql/current/bin/safe mysqld &
#Festlegung eines MySQL-Admin-Passworts
/usr/local/mysql/current/bin/mysqladmin -u root password
’passwort’
#MySQL sollte jetzt laufen, Kontrolle durch:
ps aux | grep mysql
6.1.3
Apache-Installation
Der Apache-Web-Server ist mit einem Marktanteil von etwa 60 Prozent mit Abstand
Marktführer und ein Aushängeschild der Open-Source-Gemeinde. Entwickelt wird er seit
1995 und seit April 2002 existieren zwei Versionen parallel: Apache 1.3.x und Apache
2.0.x. Normalerweise wird bei Software die Ausgabe mit höherer Versionsnummer bevorzugt eingesetzt; auch beim Apache vollzieht sich ein schleichender Umstieg. Das Problem ist lediglich, dass Apache 1.3.x auf etwa 10 Millionen Web-Servern läuft, und die
neuere Version nur auf etwa 100.000. Auch viele Groupware-Projekte unterstützen ausschließlich Apache 1.3.x. In diesem How-To wird Apache in Version 1.3.27 besprochen.
Unter der Web-Adresse httpd.apache.org können die Quellen geladen werden. Die
Datei apache 1.3.27.tar.gz sollte in das Verzeichnis /usr/local/src/lamp/dl gespeichert werden. Im Unterschied zu Apache 2.0.x: Die neueren Web-Server sind alle
nach dem Schema httpd Version.tar.gz benannt.
Das Entpacken vom Verzeichnis /usr/local/src/lamp aus erfolgt durch das Kommando tar xvzf dl/apache 1.3.27.tar.gz. Dieser Befehl legt im LAMP-Verzeichnis
das Unterverzeichnis apache 1.3.27 an.
#Verzeichniswechsel
cd apache 1.3.27
#Ausführen des Konfigurations-Skripts mit Installations- und Datenverzeichnis
./configure --prefix=/usr/local/apache/1.3.27
--datadir=/var/www
--enable-module=most
--enable-shared=max
#Ausführen des erstellten Make-Files
make
#Installation
make install
#Symbolischer Link auf das Verzeichnis current
ln -s /usr/local/apache/1.3.27 /usr/local/apache/current
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
107
Der Apache wird erst nach der PHP-Installation gestartet, ist jetzt aber fertig installiert.
6.1.4
PHP-Installation
Viele, und vor allem die am weitesten fortgeschrittenen Open-Source-Groupware-Projekte
nutzen die Skriptsprache PHP. Deswegen muss für den reibungslosen Betrieb PHP installiert sein. In diesem How-To wird PHP in Version 4.3.1 verwendet. Unter der WebAdresse www.php.net gibt’s den Source-Code zum Download. Die Datei php-4.3.1.tar.gz sollte wieder in das Verzeichnis /usr/local/src/lamp/dl gespeichert werden.
Das Entpacken vom Verzeichnis /usr/local/src/lamp aus erfolgt durch den Befehl
tar xvzf dl/php-4.3.1.tar.gz. Er legt das Unterverzeichnis /usr/local/src/lamp/php-4.3.1 an.
#Verzeichniswechsel
cd php-4.3.1
#Ausführen des Konfigurations-Skripts mit Optionen für Apache und MySQL
./configure --prefix=/usr/local/php/4.3.1
--with-apxs=/usr/local/apache/current/bin/apxs
--with-mysql=/usr/local/mysql/current
--with-ftp
--enable-versioning
--enable-track-vars=yes
--enable-url-includes
--enable-sysvshm=yes
--enable-sysvsem=yes
--with-config-file-path=/etc
#Ausführen des erstellten Make-Files
make
#Installation
make install
#Kopieren der php.ini in den Konfigurationspfad
cp /usr/local/src/lamp/php-4.3.1/php.ini-dist /etc/php.ini
Wer Dateien über http auf den Web-Server laden will, muss in der Datei php.ini noch
Einstellungen vornehmen. Besonders bei der maximalen Dateigröße für den Upload gilt
besondere Vorsicht, normalerweise beträgt die Grenze 2 MByte, das ist für DokumentenSharing viel zu wenig.
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
108
#Register-Globals einschalten
register globals = On
#File-Upload erlauben
file uploads = On
#Maximale Upload-Dateigröße auf 200 MB setzen
upload max filesize = 200M
#Maximale POST-Größe
post max size = 250M
#Speicher-Limit
memory limit = 300M
Zuletzt muss noch die Konfigurationsdatei des Apache angepasst werden. Dazu öffnet
man in einem Editor die Datei /usr/local/apache/current/conf/httpd.conf. Jetzt
müssen zuerst alle Vorkommnisse der Apache Versionsnummer auf current gesetzt werden. Dann muss die Zeile
AddType application/x-httpd-php .php .phtml .php3 .html .htm
eingefügt werden.
Die Default-Index-Seite sollte um PHP ergänzt werden, folgende Zeile sollte die Datei
httpd.conf enthalten:
DirectoryIndex index.html index.php index.htm
Mit dem Befehl /usr/local/apache/current/bin/apachectl start kann man jetzt
den Apache starten. Wenn alles geklappt hat, dann sieht man im Browser unter dem URL
http://localhost jetzt die Apache-Startseite.
6.2
Szenario 1 - Die benachbarte Gruppe
Dieses Praxis-Szenario beschreibt das Finden und Installieren einer Web-basierten OpenSource-Groupware-Lösung für eine kleine Arbeitsgruppe. Als zusätzliche Merkmale kommen hinzu, dass diese Arbeitsgruppe am gleichen Ort tätig ist und im wesentlichen die
gemeinsame Nutzung von Dokumenten im Vordergrund steht.
Folgende Merkmale sind also gegeben:
• Kleine Arbeitsgruppe
• Gleicher Ort
• Gemeinsame Nutzung von Dokumenten
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
109
Ein Beispiel für so eine Arbeitsgruppe könnte ein Lehrstuhl sein oder ein kleines bis mittelständisches Unternehmen. Für verschiedene Forschungsprojekte oder Aufträge werden
kleine Teams gebildet, die auch über längere Zeiträume zusammen eine Aufgabe zu erledigen haben. Da die Gruppe räumlich benachbart organisiert ist, sind die Anforderungen
an den Nachrichtenaustausch nicht allzu groß, denn schließlich haben die Gruppenmitglieder gleiche Arbeitszeiten und kurze Wege zu Besprechungen. Eine Möglichkeit zur
asynchronen Kommunikatin, etwa E-Mail, ist völlig ausreichend.
Auch die Planungs-Tools stehen nicht allzu sehr im Vordergrund. Erstens sind die ProjektTeams auch in der Planung einer höheren Instanz, also etwa des Lehrstuhls oder einer
Abteilung in einer Firma eingebunden und zweitens ist Gruppenplanung in einem kleinen Team nicht allzu anspruchsvoll. Die wichtigste Anforderung, die diese Gruppe an
Groupware-Systeme stellt, ist das gemeinsame Nutzen von Dokumenten.
6.2.1
Die Auswahl
Die Einordnung der gefundenen Groupware-Lösungen nach Funktionalität kann in Tabelle 5 101 betrachtet werden. Am wichtigsten ist für die beschriebene Arbeitsgruppe
das Dokumenten-Management. In Frage kommen also nur Groupware-Programme, die
im Bereich Informations- und Dokumentenverarbeitung möglichst das gesamte Spektrum
abdecken.
Geeignete Lösungen sind Moregroupware, phpCollab, phpGroupware, phpNuke, TUTOS
und Zope. Jetzt kommt es darauf an, die spezifischen Anforderungen zu berücksichtigen, nicht nur funktionale Aspekte, sondern vor allem auch die Rahmenbedingungen des
Groupware-Einsatzes.
Wer wirklich keinerlei Zusatz-Features braucht, kann aufgrund der einfachen Installation
und der Stärke beim Dokumenten-Management auf Zope zurückgreifen, siehe dazu Abschnitt 4.14. Sollten zusätzlich noch Funktionen für die Gruppenplanung benötigt werden,
dann ist phpCollab die beste Lösung. Eine detaillierte Beschreibung gibt es in Abschnitt
4.8.
6.3
Szenario 2 - Die verteilte Gruppe
Einen in der Praxis immer häufiger auftretenden Fall beschreibt dieses Szenario: Es betrifft kleine bis mittlere Arbeitsgruppen, deren Mitglieder sich an unterschiedlichen Orten befinden. Deshalb ist ein wichtiger Faktor auch die Gruppenkommunikation und das
Gruppenbewusstsein. Außerdem nutzen die Gruppenmitglieder einen gemeinsamen Dokumentenvorrat.
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
110
Folgende Merkmale sind also gegeben:
• Kleine bis mittlere Arbeitsgruppe
• Unterschiedlicher Ort
• Gruppenkommunikation
• Awareness
• Gemeinsame Nutzung von Dokumenten
Beispiele für diese Art der Zusammenarbeit gibt es auch sowohl aus dem universitären
Umfeld, als auch aus der Wirtschaft. Etwa ein Forschungsprojekt, bei dem mehrere Universitäten zusammenarbeiten, oder ein Firmen-übergreifendes Projekt. In der Regel sind
auch das heutzutage kleine bis mittlere Arbeitsgruppen, die aber normalerweise an unterschiedlichen Orten und auch zu unterschiedlichen Zeiten an dem Projekt arbeiten.
Ungleich höher als bei Szenario 1 ist also das Bedürfniss nach Kommunikationsmitteln.
Am besten sollte synchrone und asynchrone Kommunikationi gleichermaßen funktionieren. Die gemeinsame Nutzung von Dokumenten ist ebenso wichtig, genauso wie die
Group-Awareness im Vordergrund steht.
6.3.1
Die Auswahl
Diese Zielgruppe sucht eine umfassende Lösung, die alle Funktionalitäten von Groupware bietet. Aus Tabelle 5 sollten also nur Programme in die nähere Auswahl genommen
werden, die möglichst alle drei Groupware-Bereiche gleichermaßen abdecken.
Geeignete Lösungen sind phpGroupware, PHProjekt und Zope mit Zusatzmodulen. Da
die Zope-Module speziell für Gruppenplanung und Kommunikation noch nicht ausgereift
sind, stehen nur noch zwei Lösungen für eine allumfassende Groupware zur Auswahl.
Wägt man die Rahmenbedingungen ab, so wird man in der Regel auf das fortschrittlichste Groupware-Programm im Open-Source-Bereich zurückgreifen, phpGroupware. Eine
genaue Installationsanleitung gibt es in Abschnitt 4.9.
6.4
Szenario 3 - Die Interessengruppe
Dieses dritte Szenario lenkt den Focus weg von klassischen Arbeitsgruppen und betrachtet eine Community of Practice, auch Interessengruppe genannt. Die Gruppenmitglieder
KAPITEL 6. HOW-TOS FÜR STANDARD-PROBLEME
111
sind also nicht durch eine gemeinsame Aufgabe verbunden, sondern durch ein gemeinsames Interesse. Das Hauptmerkmal ist, dass die Interessengruppe den Austausch von
Informationen, also die Informationsverarbeitung in der Vordergrund stellt.
Folgende Merkmale sind also gegeben:
• Interessengruppe
• Informationsaustausch
Ein Beispiel wäre eine Gruppe von System-Administratoren, die alle ein Unix-Netz zu
betreuen haben. Sie sind natürlich daran interessiert, Erfahrungen untereinander auszutauschen, etwa über Sicherheitsthemen oder Installationsfragen. So eine Gruppe zeichnet
sich auch dadurch aus, dass sie einen gemeinsamen Wortschatz verwendet, eine Fachsprache, und auch hohes Know-How mitbringt.
Dieser Interessengruppe geht es nicht um die Planung von Terminen oder Veranstaltungen, und auch das explizite Kommuikationsbedürfnis ist nicht besonders hoch. Vielmehr
ist für diese Art von Gruppe die Informations-Verarbeitung wichtig. Implizite Kommunikations steht im Vordergrund.
6.4.1
Die Auswahl
Wichtig ist für die Interessengruppe vor allem der Bereich Informationsverarbeitung. Aus
Tabelle 5 ist zu entnehmen, dass eigentlich alle Programme in diesem Bereich Funktionen zur Verfügung stellen. Die Interessengruppe wird normalerweise unstrukturierte bis
höchstens semi-strukturierte Informationen in Anspruch nehmen.
Wichtig ist außerdem, dass die Interessengruppe keinen Wert auf großen zusätzlichen
Funktionsumfang legt, weil das in der Regel auch zusätzlichen Administrationsaufwand
bedingt. Auch die Sicherheits-Features spielen keine Rolle, Zugangskontrolle und LoginMechanismen schränken in diesem Fall nur ein.
Der Aufwand für Installation und Administration soll minimal sein. Das schränkt die
möglichen Lösungen schon etwas stärker ein, beim Blick in die Rahmenbedingungen
der einzelnen Lösungen kristallisieren sich die Systeme Discus, PHPNuke und phpWiki
heraus.
Am besten geeignet scheint das WikiWeb phpWiki, weil es die geringsten Anforderungen an die Pflege der Seite stellt und trotzdem flexibel und dynamisch ist. Eine genaue
Installationsanleitung findet sich in Abschnitt 4.13.
Kapitel 7
Fazit
Dieses Kapitel beinhaltet ein abschließendes Resümee. In Abschnitt 7.1 wird das Thema
dieser Diplomarbeit, dessen Bearbeitung und Ergebnis bewertet. Im Abschnitt 7.2 werden
Alternativen zu den betrachteten Open-Source-Lösungen vorgestellt und bewertet. Den
Abschluss in 7.3 bildet ein Ausblick auf zukünftige Entwicklungen im Bereich der OpenSource-Groupware.
7.1
Abschließende Bewertung
Der Themenbereich ”Open-Source-Groupware” ist gerade top-aktuell. In vielen Fachpublikationen wird darüber berichtet1 , viele Firmen und Behörden denken über den Einsatz
nach. Trotzdem herrscht noch viel Unklarheit bei Unternehmen: Etwa ist meist nicht klar,
welche Groupware-Lösungen bereits existieren, ob diese einsatzbereit sind, wieviel Administrationsaufwand sie bedürfen oder wie sicher sie sind. Genau diese Unklarheiten
haben das Thema der vorliegenden Arbeit geliefert.
Diese Diplomarbeit soll Licht in das Dunkel bringen, und zumindest für eine kurze Zeitspanne den akteullen Stand der Dinge im Bereich Web-basierter Open-Source-Groupware
beleuchten. Denn klar ist, die Situation kann in einem Jahr bereits anders aussehen. Es gibt
etwa noch 20 Projekte, die in dieser Arbeit wegen ihrem jungen Entwicklungsstadium
nicht berücksichtigt wurden - wie sie sich entwickeln kann jetzt noch nicht abgeschätzt
werden.
Es hat sich gezeigt, dass vom funktionalen Standpunkt aus gesehen, einige Open-SourceProjekte dabei sind, die kommerzielle Lösungen zu übertrumpfen. Auch hat sich gezeigt,
dass es Lösungen gibt, die kostengünstiger sind und mit weniger Aufwand installiert und
1 Titelgeschichten
im Linux-Magazin März/2003 und IX April/2003
112
KAPITEL 7. FAZIT
113
administriert werden können.
Fakt ist, dass man die gefundenen Lösungen in zwei Klassen einteilen kann, je nachdem
wie sie technisch aufgebaut sind. Die eine Klasse ist meist Perl-basiert und nutzt CGISkripte, die andere Klasse nutzt ein LAMP-System. Grundsätzlich gilt, dass die CGISysteme meist älter, langsamer und weniger gut ausgestattet sind. Die Zukunft bei modernen Groupware-Anwendungen spricht für die LAMP-basierten Systeme.
Ein Kritikpunkt an den Open-Source-Lösungen ist, dass oftmals geeignete Dokumentationen fehlen. Professioneller Support ist natürlich nicht kostenlos möglich, doch oft kann
auch eine FAQ oder ein Forum weiter helfen. Aber auch die unterschiedlichen LinuxDistributionen erschweren die Installation. Hat man eine funktionierende Anleitung für
ein System entwickelt, so kann es passieren, dass unter einer anderen Linux-Distribution
die Installation fehlschlägt. Das war sogar bei den verwandten Distributionen Mandrake
und Red Hat der Fall.
Nachdem anfäglich etwa 50 Groupware-Kandidaten in der engeren Auswahl waren, wurden etwa 30 auf den ersten Blick ausgewählt, denn allem Anschein nach erfüllten sie alle
Kriterien. Im Laufe der Arbeit musste aber die Zahl der Lösungen nochmals reduziert
werden, letztendlich blieben zwölf Lösungen, von denen eine2 auf den aktuellsten LinuxDistributionen Probleme macht, wie Tests kurz vor Fertigstellung dieser Arbeit zeigten.
Gründe für das Kürzen des Groupware-Feldes waren abenteuerliche Änderungen, die etwa am Web-Server vorgenommen werden mussten, oder großer Konfigurationsaufwand,
der vom letztendlichen Funktionsumfang nicht gerechtfertigt werden konnte. Einige Beispiel-Systeme, die sich als ungeeignet erwiesen haben:
• COW
• DarkBoard
• eThreads
• Slash
Stand der Dinge ist heute, dass Web-basierte Groupware nur dann sinnvoll eingesetzt
werden kann, wenn ein breitbandiger Internet-Anschluss zur Verfügung steht. Der Traum
vom mobilen Büro, bei dem man auch auf die Web-Groupware über eine schmalbandige Online-Verbindung über Notebook und Handy zugreift ist noch nicht erfüllt. Hierzu
sollte angemerkt werden, dass sich nur zwei3 der getesteten Systeme dazu eignen, etwa
mit einem PDA darauf zuzugreifen, ein Computer mit schneller Internet-Verbindung ist
Grundvoraussetzung.
2 Backtalk,
vergleiche Abschnitt 4.3
und phpGroupware
3 Moregroupware
KAPITEL 7. FAZIT
114
Auffallend ist, dass sich die Funktionalitäten Web-basierter Open-Source-Groupware auf
bestimmte Bereiche konzentrieren. So gibt es sehr viele Systeme, die asynchronen Nachrichtenaustausch unterstützen, auf der synchronen Seite jedoch wird die Anzahl der Systeme rar. Vor allem gibt es de facto keine klassischen Video- oder Audio-Konferenzsysteme,
die nicht einen zusätzlichen Client erfordern.
Bei der Informations- und Dokumentenverarbeitung, sowie bei der Gruppenplanung fällt
auf, dass im strukturierten Bereich weniger Systeme Funktionen bieten, bei unstrukturierten bis semi-strukturierten Aufgaben ist das Angebot an Open-Source-Software wieder
größer.
7.2
Alternativen
Als Alternative zu den Web-basierten Systemen stehen auch noch Lösungen bereit, die
einen zusätzlichen Client verwenden. Ein Beispiel ist etwa Evolution von Ximian, der die
Kommunikation mit Exchange-Servern erlaubt und auch in heterogenen Umgebungen
enigesetzt werden kann.
Eine andere Möglichkeit wären Peer-to-Peer-Systeme (P2P), die aber mittlerweile alle
aus dem Open-Source-Feld verschwunden sind. Ein Beispiel ist etwa Groove, eine P2PLösung von Groove Networks, die in den Entstehungsjahren frei verfügbar war und viele
Anhänger hatte.
Auch die Linux-Firmen steigen langsam in den Groupware-Markt ein: So ist der Nürnberger Linux-Distributor SuSE Ende letzten Jahres auch mit einem Web-basierten GroupwareProdukt an den Start gegangen. Der Openexchange-Server ist eine auf Unternehmen zugeschnittene Lösung. SuSE bietet dazu den von vielen Unternehmen gewünschten Support. Speziell für Schulen soll es in Zukunft auch ein Produkt von SuSE geben, das auf
phpGroupware basiert und spziell angepasst werden soll.
7.3
Ausblick
Open-Source-Groupware ist momentan eines der Zugpferde der freien Software-Entwicklung. Nach Linux, Apache und MySQL gibt es jetzt auch ernstzunehmende Konkurrenz
für proprietäre Groupware-Lösungen wie Outlook/Exchange und Lotus Notes.
Wie forsch das Thema Open-Source-Groupware vor allem von den Entwicklern vorangetrieben wird kann man auch daran erkennen, dass bei einigen Projekten zwischen Oktober
2002 und April 2003 bis zu vier neue Releases herausgebracht wurden - Patches gibt es
normalerweise täglich.
KAPITEL 7. FAZIT
115
Es kann damit gerechnet werden, dass sich wenige Projekte durchsetzen und die anderen mehr oder weniger in der Versenkung verschwinden werden. Vor allem die LAMPbasierten Systeme haben das Zeug dazu, zu Zugpferden zu werden.
Klassische Bulletin-Boards wird es sicherlich weiterhin geben, sie werden aber auch heute
meist nicht mehr als Groupware-System verstanden, sondern oft auf privaten Web-Seiten
eingesetzt.
Ein Trend zu Web-basierten Systemen ist auf jeden Fall erkennbar. Ein Verschwinden der
Systeme, die einen gesonderten Client erfordern ist zwar nicht abzusehen, aber im Hinblick darauf, dass in Zukunft die verschiedensten Geräte auf Groupware-Applikationen
zugreifen werden, ist die Browser-Lösung die effizienteste.
Ein weiterer Trend geht dazu, Open-Source-Software einzusetzen, weil viele Firmen maßgeschneiderte Lösungen wollen. Oft ist es dann billiger, die Software selbst anzupassen,
als sich mit Kompromiss-Lösungen von kommerziellen Herstellern zu begnügen.
Abbildungsverzeichnis
1.1
IDC-Studie täglich verschickter E-Mails . . . . . . . . . . . . . . . . . .
3
1.2
Aufgaben-Umgebung-Spektrum . . . . . . . . . . . . . . . . . . . . . .
7
2.1
Die Raum-Zeit-Matrix nach Robert Johansen . . . . . . . . . . . . . . .
11
2.2
Das 3K-Modell nach Teufel et al. . . . . . . . . . . . . . . . . . . . . . .
16
2.3
Funktionale Einteilung von CSCW-Systemen . . . . . . . . . . . . . . .
20
2.4
Untergliederung des Nachrichtenaustausches . . . . . . . . . . . . . . .
24
2.5
Unicast-Verbindung (1 : 1) . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.6
Concast-Verbindung (n : 1) . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.7
Multicast-Verbindung (1 : n) . . . . . . . . . . . . . . . . . . . . . . . .
26
2.8
Multipeer-Verbindung (n : m) . . . . . . . . . . . . . . . . . . . . . . . .
26
2.9
Funktionale Einteilung von CSCW-Systemen . . . . . . . . . . . . . . .
30
3.1
Rahmenbedingungen des Groupware-Einsatzes . . . . . . . . . . . . . .
33
116
Tabellenverzeichnis
2.1
Erweiterte Raum-Zeit-Matrix nach Grudin. . . . . . . . . . . . . . . . .
12
2.2
Beispiele eingesetzter Nachrichtensysteme . . . . . . . . . . . . . . . . .
27
2.3
Typen von Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.1
Eigener Server versus Miet-Server . . . . . . . . . . . . . . . . . . . . .
36
3.2
Kostenvergleich: Open-Source versus proprietäre Software . . . . . . . .
39
5.1
Funktionen von Open-Source-Groupware . . . . . . . . . . . . . . . . . 101
117
Literaturverzeichnis
[1] U. Borghoff, J. Schlichter (1998). Rechnergestützte Gruppenarbeit. Springer, Berlin.
[2] J. Schlichter (2001). Skript zur Vorlesung Computergestützte Gruppenarbeit. Technische Universität
München, München.
[3] J. Schlichter (1997). Skript zur Vorlesung CSCW Systeme. Technische Universität München,
München.
[4] S. Teufel, C. Sauter, T. Mühlherr, K. Bauknecht (1995). Computerunterstützung für die Gruppenarbeit. Addison-Wesley, Bonn.
[5] J. Udell (1999). Practical Internet Groupware. O’Reilly Verlag, Köln.
[6] Meyers Lexikonredaktion (2001). Duden Informatik. Dudenverlag, Mannheim.
[7] Cora Burger (1997). Groupware. dpunkt-Verlag, Heidelberg.
[8] Alexander Schill (1996). Rechnergestützte Gruppenarbeit in verteilten Systemen. Prentice Hall,
München.
118