DOC - Das IICM - Graz University of Technology

Werbung
Innovative Content Management Systeme im
Betrachtungsfeld von Java 2 Enterprise Edition
Diplomarbeit
an der
Technischen Universität Graz
vorgelegt von
Peter Glantschnig
Institut für Informationssysteme und Computer Medien (IICM)
Technische Universität Graz
A-8010 Graz, Österreich
9. Jänner 2004
© Copyright 2004, Peter Glantschnig
Diese Arbeit ist in deutscher Sprache verfasst.
Begutachter: o.Univ-Prof. Dr. Dr.h.c.mult. Hermann Maurer
Betreuer:
Dipl.-Ing. Dr.techn. Christian Gütl
Innovative Content Management Systems within the
scope of Java 2 Enterprise Edition
Master’s Thesis
at
Graz University of Technology
submitted by
Peter Glantschnig
Institute for Information Systems and Computer Media (IICM)
Graz University of Technology
A-8010 Graz, Austria
9. January 2004
© Copyright 2004 by Peter Glantschnig
This thesis is written in German language.
Advisor:
Supervisor:
o.Univ-Prof. Dr. Dr.h.c.mult. Hermann Maurer
Dipl.-Ing. Dr.techn. Christian Gütl
Kurzfassung
Das enorme Informationsaufkommen sowie die zunehmende Wichtigkeit von
Informationen bzw. das damit verbundene Wissen als Produktionsfaktor im heutigen
Wirtschaftsleben verlangen eine effiziente Verwaltung von Inhalten. Content Management Systeme (CMS) sollen die systematische Verwaltung sämtlicher Informationen,
wie Texte, Bilder, Grafiken, Video- oder Audiosequenzen – einfach gesagt den
gesamtem Content – ermöglichen und zugleich eine optimierte, bedarfsgerechte Publikation für unterschiedliche Distributionskanäle (z.B. Website, Printmedien, CD-ROM,
WAP-Device usw.) gewährleisten. Das Identifizieren sämtlicher Funktionen eines
CMS, um den Anforderungen der modernen Informationsgesellschaft gerecht zu
werden, sowie Aspekte der Implementierung dieser Funktionen bilden den Schwerpunkt
der nachfolgenden Arbeit.
Im Untersuchungsbereich werden in zwei Schritten die Funktionen eines CMS
erarbeitet. Zunächst sind notwendige Kernfunktionen zu erörtern, welche ein
innovatives CMS in jedem Fall implementieren sollte. Danach folgt eine Darstellung
möglicher Erweiterungen für ein CMS (Digital Right Management, Digital Asset
Management, barrierefreier Informationszugang usw.), welche eine zweckmäßige
Bereicherung für den Funktionsumfang eines CMS implizieren. Auf Basis der
identifizierten Funktionen bzw. Anforderungen erfolgt eine Darstellung der
Entwicklungsumgebung Java 2 Platform, Enterprise Edition (J2EE) und deren Eignung
zur Implementierung eines innovativen CMS. Den Abschluss des Untersuchungsbereiches bildet ein Überblick über existierende, J2EE-basierte CMS Lösung aus dem
kommerziellen sowie Open Source Bereich, welche ebenfalls anhand der zuvor
aufgezeigten Funktionen evaluiert werden.
Aufgrund der im Untersuchungsbereich gewonnenen Erkenntnisse wird im Gestaltungsbereich auf konzeptioneller Ebene eine mögliche Architektur eines innovativen CMS
modelliert, welche sämtliche identifizierten Anforderungen erfüllt. Ausgewählte
Aspekte der aufgezeigten Architektur aus den Bereichen Content Syndication sowie
Import und Export wurden vom Autor implementiert und deren Realisierung ebenfalls
im Gestaltungsbereich erläutert. Die Implementierungen erfolgten aufbauend auf dem
Open Source Projekt OpenCms, welches sich aufgrund der detaillierten Evaluierung als
besonders vorteilhaft für diesen Zweck erwiesen hat.
Abstract
The enormous rise in the amount of information, as well as the increasing business
value of the knowledge associated to it, has led into new requirements around efficient
information management. Content Management Systems (CMS) allow on one hand
systematic management of information, like text, pictures, diagrams, video or audio
sequences and on the other hand they distribute this information through different
distribution channels (e.g. website, printed media, CD-ROM, WAP-device).
Identification of necessary functions of a CMS, in order to cope with the requirements
of the modern information society, as well as aspects of the development of functions to
fulfil these requirements with Java technology form the emphasis of this work.
This work consists of a theoretical and a practical section. The theoretical section
presents the functional requirements of a CMS in two steps. First the core functions of
an innovative CMS are discussed. Secondly possible extensions for a CMS, (e.g. Digital
Right Management, Digital Asset Management, barrier-free information access) which
imply an appropriate enrichment for the core functional range of a CMS, are presented.
On basis of the identified functional requirements in these two sections, the
development environment Java 2 Platform, Enterprise Edition (J2EE), and its
applicability for the development of an innovative CMS will be examined. In the last
part of the theoretical section an overview of existing J2EE based CMS solutions from
the commercial as well as open source range is presented, and these solutions will be
evaluated on the basis of the functional requirements discussed before.
The results of the theoretical section will be used in the practical one to model a
possible architecture for an innovative CMS on a conceptional level. Selected aspects of
the presented architecture concerning content syndication as well as import and export
were developed by the author and their realisation is depicted in the practical section.
The development took place on basis of the open source project OpenCms, which
proved due to the detailed evaluation as particularly favourable for the development of a
comprehensive CMS.
Ich versichere hiermit, diese Arbeit selbständig verfasst, andere als die angegebenen
Quellen und Hilfsmittel nicht benutzt und mich auch sonst keiner unerlaubten
Hilfsmittel bedient zu haben.
I hereby certify that the work presented in this thesis is my own and that work
performed by others is appropriately cited.
Danksagung
An dieser Stelle möchte ich mich bei all jenen bedanken, die mir beim Erstellen dieser
Arbeit mit Rat und Tat zur Seite standen. Dies waren vor allem die Mitarbeiter des
IICM um Professor Hermann Maurer, insbesondere mein Betreuer Dr. Christian Gütl,
welcher mir stets durch gewissenhaftes Korrekturlesen und mit zahlreichen Anregungen
beim Erstellen dieser Diplomarbeit behilflich war.
Ein besonderes Anliegen ist es mir, mich auch bei meinen Eltern, Hartmann und
Marianne Glantschnig zu bedanken, die mir meine Ausbildung ermöglicht und mich
beim Erreichen meiner Ziele immer unterstützt haben. Ich danke aber auch meinen
beiden Geschwistern Elisabeth und Georg, welche mir im Laufe meines Studiums
immer mit Rat zur Seite standen und mich auch bei der Korrektur dieser Diplomarbeit
unterstützt haben.
Ein herzliches Dankeschön auch an meine Freundin Eva für die liebevolle
Unterstützung und die vielen Aufmunterungen während meines Studiums.
Peter Glantschnig
Graz, Jänner 2004
Inhaltsverzeichnis
1
Einleitung................................................................................................................. 1
1.1
Motivation und Ausgangssituation ................................................................... 1
1.2
Strukturierung der Arbeit .................................................................................. 2
TEIL I Untersuchungsbereich
2
Grundkonzepte........................................................................................................ 7
2.1
Bedarf an Content Management ....................................................................... 7
2.1.1
Informationsüberladene Welt ................................................................... 7
2.1.2
Entwicklung des Publikationsprozesses ................................................... 9
2.2
Begriffsbestimmung........................................................................................ 10
2.2.1
Content .................................................................................................... 11
2.2.2
Content Management .............................................................................. 13
2.2.3
Content Management Systeme ............................................................... 14
2.3
Charakteristische Aspekte von Content Management Systemen ................... 18
2.3.1
Anatomie des Content ............................................................................. 18
2.3.2
Content Life Cycle .................................................................................. 20
2.3.3
Ziele von Content Management Systemen ............................................. 21
2.3.4
Grenzen von Content Management Systemen ........................................ 22
2.4
3
Schlussbemerkung .......................................................................................... 23
Funktionen von Content Management Systemen .............................................. 25
3.1
Allgemeines .................................................................................................... 25
3.2
Kernfunktionen ............................................................................................... 29
3.2.1
Content Organisation .............................................................................. 29
3.2.2
Erzeugung ............................................................................................... 32
3.2.3
Publikation .............................................................................................. 33
3.2.4
Content Kontrolle ................................................................................... 34
3.2.5
Information Retrieval .............................................................................. 37
3.2.6
Collaboration .......................................................................................... 38
3.2.7
Integration ............................................................................................... 40
3.2.8
Administration ........................................................................................ 42
3.2.9
Internationalisierung ............................................................................... 43
4
3.3
Anforderungsprofil Kernfunktionen ............................................................... 43
3.4
Schlussbemerkung .......................................................................................... 44
Zweckmäßige Erweiterungen von Content Management Systemen ............... 46
4.1
Unterstützende Funktionen ............................................................................. 46
4.1.1
Extensible Markup Language ................................................................. 47
4.1.2
Barrierefreier Informationszugang ......................................................... 50
4.2
Funktionale Erweiterungen ............................................................................. 53
4.2.1
Digital Right Management...................................................................... 53
4.2.2
Portal-Funktionalität ............................................................................... 55
4.2.3
Digital Asset Management...................................................................... 57
5
4.3
Anforderungsprofil ......................................................................................... 59
4.4
Schlussbemerkung .......................................................................................... 60
Java 2 Platform Enterprise Edition .................................................................... 62
5.1
Grundlagen...................................................................................................... 62
5.1.1
Allgemeines ............................................................................................ 63
5.1.2
Mehrschichtige Architektur .................................................................... 64
5.1.3
Container und Komponenten .................................................................. 66
5.1.4
Rollen und deren Aufgabenverteilung .................................................... 68
6
5.2
Web Services .................................................................................................. 70
5.3
Relevante Technologien ................................................................................. 72
5.4
Schlussbemerkung .......................................................................................... 74
Implementierungen von Content Management Systemen ................................ 77
6.1
Kommerzielle CMS Lösungen ....................................................................... 77
6.1.1
VIP Enterprise 8...................................................................................... 78
6.1.2
Vignette V7 ............................................................................................. 80
6.1.3
DB2 Content Manager 8.2 ...................................................................... 81
6.1.4
FileNet P8 ............................................................................................... 82
6.1.5
Zusammenfassung .................................................................................. 83
6.2
Open Source CMS Lösungen ......................................................................... 85
6.2.1
OpenCms 5.0 .......................................................................................... 85
6.2.2
Jahia 4.0 .................................................................................................. 88
6.2.3
Ion 0.8 ..................................................................................................... 90
6.2.4
Red Hat CMS 5.0 .................................................................................... 92
6.2.5
Zusammenfassung .................................................................................. 94
6.3
Funktionsumfang ............................................................................................ 95
6.4
Schlussbemerkung .......................................................................................... 98
TEIL II Gestaltungsbereich
7
Gestaltungsmodell ............................................................................................... 100
7.1
Allgemeines .................................................................................................. 100
7.1.1
Funktionaler Umfang ............................................................................ 100
7.1.2
Basisarchitektur .................................................................................... 102
7.2
Architektur Layer .......................................................................................... 103
7.2.1
Abstraktion............................................................................................ 104
7.2.2
Daten ..................................................................................................... 105
7.2.3
Funktionalität ........................................................................................ 106
7.2.4
Front-End .............................................................................................. 110
8
7.3
Gesamtarchitektur ......................................................................................... 112
7.4
Praxisorientierte Anwendung ....................................................................... 113
7.5
Schlussbemerkung ........................................................................................ 114
Implementierung ausgewählter Aspekte eines
innovativen Content Management Systems ..................................................... 116
8.1
OpenCms im Kontext des Gestaltungsmodells ............................................ 117
8.1.1
Allgemeines .......................................................................................... 117
8.1.2
Gegenüberstellung mit der Architektur eines innovativen CMS .......... 118
8.2
Content Syndication und Providing .............................................................. 121
8.2.1
Integration von externem Content ........................................................ 121
8.2.2
Bereitstellen von strukturiertem Content .............................................. 125
9
8.3
Import und Export im Kontext von XML ..................................................... 130
8.4
Schlussbemerkung ........................................................................................ 135
Zusammenfassung und Ausblick ....................................................................... 137
Abbildungsverzeichnis................................................................................................ 141
Tabellenverzeichnis .................................................................................................... 143
Literaturverzeichnis ................................................................................................... 144
1
Einleitung
1.1
Motivation und Ausgangssituation
Content Management ist ein modernes Schlagwort der heutigen Zeit, zugleich ist es
jedoch nur ein weiterer Begriff, um ein uraltes Thema zu umschreiben. Unsere Kultur
und Gesellschaft basiert auf der Übermittlung von Erfahrung und Wissen. Dies begann
bereits vor tausenden von Jahren mit der mündlichen Überlieferung von Informationen.
Mit der Erfindung von Symbolen und Zeichen wurde es möglich, Informationen
aufzuzeichnen und dies führte in weiterer Folge zu Dokumenten. Das Dokument
ermöglichte es nicht nur sich leichter an Informationen zu erinnern, sondern erlaubte es,
aufgezeichnete Informationen auch an Dritte weiterzugeben, womit die Informationsübermittlung nicht mehr an die direkte mündliche Kommunikation gekoppelt war. Doch
mit dem Aufkommen zahlreicher Dokumente entstand zugleich das Bedürfnis,
Dokumente systematisch zu verwalten. Auch wenn es sich bei frühen Ordnungssystematiken vor 5000 Jahren um Tontafelarchive mit Keilschriftdokumenten gehandelt
hat, so hat sich die Notwendigkeit der systematischen Aufbewahrung von Dokumenten
bis heute nicht geändert. Die rasante technologische Entwicklung der letzten Jahre und
der damit verbundene Übergang physisch greifbarere Dokumente in eine virtuelle
elektronische Welt hat zwar die Möglichkeiten der Verwaltung drastisch verändert, aber
der Grundgedanke ist im Wesentlichen derselbe geblieben. [Kampffmeyer 2003b]
Bis vor wenigen Jahren wurde für die angesprochene Problematik in erster Linie der
Begriff Dokumenten Management verwendet, um die Technologien und Produkte zu
umschreiben, welche eine systematische Verwaltung von Dokumenten ermöglichen
sollen. In der jüngsten Zeit spricht man jedoch zunehmend von Content anstatt von
Dokument und dementsprechend von Content Management anstatt von Dokumenten
Management. Das Aufkommen des Begriffes Content Management geht einher mit der
Entstehung einer Vielzahl an weiteren Begriffen, welche alle in einem gewissen Bezug
zu Content Management stehen. Beispielhaft seien die Begriffe Web Content
Management (WCM), Enterprise Content Management (ECM), Digital Asset
Management (DAM) oder Digital Right Management (DRM) genannt. Es ist ein
wesentliches Ziel der vorliegenden Arbeit, die unterschiedlichen Schwerpunktsetzungen
Einleitung
2
dieser zuletzt genannten Begriffe und ihre Funktion bzw. Notwendigkeit im Kontext
von Content Management aufzuzeigen.
Hinter dem Content-Begriff verbirgt sich jedoch weit mehr als nur eine Namensänderung, auch wenn aus marktstrategischen Überlegungen viele Hersteller den Begriff
falsch verwenden. Durch die Einführung des Content-Begriffes geht in erster Linie der
geschlossene Charakter von Dokumenten verloren. Content wird nicht mehr mit einer
bestimmten Darstellung bzw. Präsentation assoziiert, sondern passt sich idealerweise
den spezifischen Anforderungen unterschiedlicher Publikationskanäle an ohne dabei
redundante Informationen zu speichern. Dazu notwendige Aspekte, wie die getrennte
Erfassung von Struktur, Inhalt und Darstellung sowie die unter anderem in diesem
Zusammenhang oft genannte Extensible Markup Language (XML), sind weitere
Schwerpunkte in der vorliegenden Arbeit.
In der gleichen Weise, wie die rasante technologische Entwicklung der letzten Jahre
neue Wege für eine effiziente Verwaltung von Informationen ermöglicht hat, haben sich
auch die Möglichkeiten der Informationserstellungen bzw. der Informationsverbreitung
noch mehr vereinfacht und damit die Informationsflut der heutigen Zeit ausgelöst. Es ist
daher wichtiger denn je, sinnvolle Wege der Informationstechnologie zu identifizieren,
um die riesigen Informationsmengen für den Menschen noch überschaubar zu machen.
Darüber hinaus stellen Informationen bzw. das damit verbundene Wissen einen
wesentlichen Produktionsfaktor im heutigen Wirtschaftsleben dar, welcher zumindest
den gleichen Stellenwert wie die klassischen Produktionsfaktoren Arbeit, Boden und
Kapital einnimmt. [Rollett 2000]
Wege und Möglichkeiten eines effizienten Umgangs mit sämtlichen Informationen in
einer Unternehmung sind daher in der heutigen Informationsgesellschaft ein wettbewerbsentscheidender Faktor. Content Management Systeme sollen für die aufgezeigte
Problematik eine Lösung bieten, indem sie in einem ganzheitlichen Ansatz die
Erfassung, Verwaltung und Publikation sämtlicher relevanter Informationen in einem
kohärenten System ermöglichen. Der Schwerpunkt der vorliegenden Arbeit liegt dabei
in erster Linie auf dem Identifizieren sämtlicher Funktionen eines Content Management
Systems, um den heutigen Anforderungen der Informationsgesellschaft gerecht zu
werden und nicht auf dem Aufzeigen notwendiger Prozesse für ein effizientes Umgehen
mit der Ressource Information bzw. Wissen. Letzteres ist unter anderem der
Schwerpunkt von Wissensmanagement.
1.2
Strukturierung der Arbeit
Die vorliegende Arbeit unterteilt sich in zwei Bereiche, den Untersuchungsbereich
sowie den Gestaltungsbereich. Im Untersuchungsbereich werden aufbauend auf einer
Darstellung der Grundkonzepte von Content Management Systemen (CMS), sämtliche
notwendige bzw. mögliche Funktionen eines CMS erörtert. Des Weiteren wird eine
interessante Auswahl an bereits existierenden Implementierungen von Content Manage-
Einleitung
3
ment Systemen aus dem kommerziellen sowie Open Source1 Bereich dargestellt. Um
die große Auswahl an möglichen Implementierungen etwas einzugrenzen, wurde im
Rahmen der vorliegenden Arbeit hinsichtlich der Programmierumgebung eine Einschränkung auf die Java 2 Platform, Enterprise Edition (J2EE) vorgenommen. Aus
diesem Grund werden kurz die wesentlichen Konzepte von J2EE sowie deren Eignung
für eine Implementierung eines CMS ebenfalls im Untersuchungsbereich behandelt. Im
Gestaltungsbereich wird aufgrund der Erkenntnisse aus dem Untersuchungsbereich auf
konzeptioneller Ebene eine mögliche Architektur eines innovativen CMS modelliert,
welche sämtliche im Untersuchungsbereich identifizierte Funktionen vereint. Interessante Aspekte der aufgezeigten Architektur wurden vom Autor der vorliegenden
Arbeit implementiert und werden ebenfalls im Gestaltungsbereich präsentiert.
In Kapitel 2 wird die theoretische Grundlage geschaffen, um eine sinnvolle Diskussion
der Funktionen eines Content Management Systems zu ermöglichen. Am Beispiel
aktueller Problemfelder wird die Notwendigkeit für den Einsatz von Content Management Systemen dargestellt. Des Weiteren werden der Begriff Content Management
System sowie damit im Zusammenhang stehende Begriffe einer ausführlichen Diskussion unterzogen. Abschließend werden charakteristische Aspekte aufgezeigt, welche
für sämtliche Content Management Systeme gleichermaßen zutreffen.
Kapitel 3 beschreibt die Kernfunktionen eines Content Management Systems, welche
der Autor der vorliegenden Arbeit für einen effektiven Einsatz eines CMS als notwendig erachtet. Zu diesem Zweck wird zunächst eine Systematik identifiziert, um
sämtliche notwendige Funktionen eines CMS durch aussagekräftige Überbegriffe zu
erfassen und zugleich die Grundlage für eine strukturierte Diskussion der Kernfunktion
zu schaffen. Sämtliche identifizierten Anforderungen werden im Anschluss in einem
Anforderungsprofil, zur übersichtlichen Weiterverwendung in den nachfolgenden
Kapiteln, zusammengefasst.
Die Darstellungen aus dem vorherigen Abschnitt werden in Kapitel 4 fortgeführt, indem
neben den notwendigen Kernfunktionen noch weitere Aspekte erläutert werden, welche
zweckmäßige funktionale Erweiterungen für ein CMS darstellen bzw. eine effiziente
Implementierung geforderter Funktionen unterstützen. Aus diesem Grund werden zum
einen die XML Technologie sowie Aspekte eines barrierefreien Informationszugangs
erläutert, deren Berücksichtigung die Effizienz bzw. Qualität des CMS deutlich
verbessern kann. Zum anderen werden Funktionen erörtert, welche aufgrund ihrer
Komplexität bereits eigenständige Disziplinen der Informationstechnologie darstellen,
deren Integration in das CMS jedoch eine sinnvolle funktionale Erweiterung des CMS
aufzeigt. Hierzu zählen unter anderem das Digital Right Management, das Digital Asset
Management sowie die Portale. Im Anschluss werden, wie im vorherigen Kapitel, die
identifizierten Anforderungen in einem Anforderungsprofil zusammengefasst.
1
Unter Open Source werden Implementierungen verstanden, deren Programm-Code im Gegensatz zu den
meisten kommerziellen Produkten offen vorliegt. Open Source Produkte entstehen zumeist in einer
öffentlichen Zusammenarbeit und können ohne Lizenzgebühren benutzt werden. [Open Source 2003]
Einleitung
4
Die in Kapitel 3 und 4 erstellten Anforderungsprofile werden im weiteren Verlauf der
vorliegenden Arbeit dazu verwendet, existierende Implementierungen von Content
Management Systemen hinsichtlich der Erfüllung der identifizierten Funktionen zu
evaluieren. Wie bereits erwähnt wurde, wird in der vorliegenden Arbeit der Schwerpunkt bei der Implementierung eines CMS auf die Programmierumgebung Java 2
Platform, Enterprise Edition gelegt. Aus diesem Grund werden in Kapitel 5 die
wesentlichen Konzepte und Technologien von J2EE erläutert und deren Eignung zur
Realisierung eines CMS ebenfalls anhand der zuvor identifizierten Anforderungsprofile
evaluiert. Die Darstellungen in Kapitel 5 sind bewusst sehr einfach gehalten, da eine
detaillierte Darstellung von J2EE den Rahmen der vorliegenden Arbeit sprengen würde.
Es sollen aber auf konzeptioneller Ebene die Vorzüge von J2EE aufgezeigt werden.
In Kapitel 6 wird ein Überblick über Implementierungen von Content Management
Systemen, einerseits im kommerziellen und andererseits im Open Source Bereich,
gegeben. Sämtliche erörterten Systeme basieren dabei auf der Programmierumgebung
J2EE. Die Darstellungen einer Auswahl an konkreten CMS Lösungen soll aufzeigen,
welchen Funktionsumfang existierende Systeme bieten und inwiefern die bisher in der
vorliegenden Arbeit identifizierten Anforderungen eines Content Management Systems
Berücksichtigung finden. Zu diesem Zweck werden sämtliche erörterten Systeme zum
Abschluss des Kapitels den in Kapitel 3 und 4 erstellten Anforderungsprofilen
gegenübergestellt, um die Systeme auf die Erfüllung bzw. Nichterfüllung der diversen
Funktionen zu evaluieren.
Aufgrund der in den bisherigen Kapiteln des Untersuchungsbereiches gewonnenen
Erkenntnissen soll in Kapitel 7 die Architektur eines innovativen Content Management
Systems modelliert werden, welche sämtliche, in den vorhergehenden Kapiteln
erörterten Aspekte bzw. Funktionen eines CMS systematisch in die aufgezeigte
Architektur integriert. Im ersten Schritt wird eine vereinfachte Basisarchitektur
modelliert, wodurch verschiedene Layer identifiziert werden, welche als Grundlage der
weiteren Diskussionen in diesem Kapitel dienen sollen. Sämtliche Darstellungen
werden zum Abschluss des Kapitels in einer Gesamtarchitektur zusammengeführt.
Die im vorherigen Kapitel modellierte Architektur eines innovativen CMS soll die
Idealvorstellung eines CMS aufzeigen, deren vollständige Implementierung jedoch ein
äußerst komplexes und umfangreiches Projekt darstellen würde. Es wurde daher vom
Autor der vorliegenden Arbeit nur eine interessante Auswahl an Funktionen der
identifizierten Architektur des innovativen CMS implementiert. In diesem Zusammenhang hat es sich angeboten, das Open Source System OpenCms als Ausgangsbasis
für die Implementierungen zu nutzen. OpenCms ist aufgrund einer bereits mehrjährigen
Entwicklung und einer sehr aktiven Community ein durchaus professionelles Open
Source Projekt und zeigt in den Grundzügen eine gute Übereinstimmung mit der in
Kapitel 7 aufgezeigten Architektur. Diese Übereinstimmung sowie die vom Autor der
vorliegenden Arbeit erstellten Funktionalitäten werden in Kapitel 8 ausführlich dargestellt. Schlussendlich werden in Kapitel 9 die wesentlichen Aspekte der vorliegenden
Einleitung
5
Arbeit nochmals zusammengefasst und ein Ausblick auf mögliche weitere Entwicklungen gegeben.
TEIL I
Untersuchungsbereich
2
Grundkonzepte
Mit diesem Kapitel soll die Grundlage geschaffen werden, um in den folgenden
Kapiteln eine sinnvolle Diskussion über die Funktionalitäten von Content Management
Systemen zu ermöglichen und in weiterer Folge die Entwicklungsumgebung Java 2
Platform, Enterprise Edition im Hinblick auf ihre Eignung zur Implementierung eines
Content Management Systems zu untersuchen. Zu diesem Zweck wird in diesem
Kapitel zunächst die Notwendigkeit für den Einsatz von Content Management
Systemen am Beispiel aktueller Problemfelder dargestellt. Im Anschluss wird eine
ausführliche Diskussion zur Begriffsbestimmung sowie Abgrenzung rund um den
Begriff Content Management System aufgezeigt. Den Abschluss des Kapitels bildet
eine detaillierte Betrachtung relevanter Aspekte von Content Management Systemen.
2.1
Bedarf an Content Management
Ziel dieses Abschnittes ist es, auf Entwicklungen einzugehen, aus denen sich der
Handlungsbedarf für Content Management identifizieren lässt. Zu diesem Zweck
werden die Veränderungen der Publiziermechanismen im Zeitalter der Informationstechnologie sowie die sich daraus ergebenden Auswirkungen der Informationsflut in der
heutigen Zeit dargestellt.
2.1.1
Informationsüberladene Welt
Unzählige Zahlen und Fakten, welche die Informationsflut der heutigen Welt
dokumentieren und die damit einhergehende Informationsüberladenheit belegen, sind in
der Literatur verschiedenster Wissenschaftsdisziplinen zu finden. Davon soll in diesem
Abschnitt eine Auswahl an interessanten Aspekten erörtert werden. Grundsätzlich wird
unter Informationsüberladenheit das Unvermögen verstanden, aus einer immensen
Menge an Informationen das benötigte Wissen zu extrahieren. Konkret kann dies bei
einer Person auftreten, wenn sie [Nelson 2001]:

sich von der aufzunehmenden Informationsmenge überwältigt fühlt.

nicht weiß, wo man die Information findet.

nicht weiß, ob eine bestimmte Information existiert.
Grundkonzepte

8
die vorhandene Information nicht versteht.
Die Autoren McGovern et al. erläutern in ihrer Arbeit folgende Beispiele, um auf den
rasanten Anstiege der Informationsmengen hinzuweisen [McGovern et al. 2001]:

Jede Ausgabe der New York Times beinhaltet mehr Information als ein Mensch
im 17. Jahrhundert in seinem gesamten Leben gelesen hätte.

In den letzten 30 Jahren wurden mehr Informationen produziert als in den
letzten 5000 Jahren.

Die Menge an niedergeschriebenem wissenschaftlichem Wissen verdoppelt sich
im Allgemeinen alle 15 bis 20 Jahre.

Über 1000 Bücher werden täglich auf der ganzen Welt publiziert.
Bemerkenswert in diesem Zusammenhang ist das Ergebnis einer Studie der University
of California, Berkeley, welches besagt, dass nur 0.003 Prozent der jährlich publizierten
Inhalte auf Papier gedruckt werden. Dieses Ergebnis lässt die Schlussfolgerung zu, dass
für jede gedruckte Zeile 30.000 Zeilen am Computer publiziert werden, was in
Anbetracht der bereits großen Mengen an Büchern und Zeitschriften auf die noch
größere – kaum mehr erfassbare – Menge an digitalen Informationen schließen lässt.
[McGovern et al. 2001]
Der rasante Anstieg an Informationen geht einher mit fast grenzenlosen Möglichkeiten
der Verbreitung digitaler Daten – einerseits können digitale Daten beliebig oft
vervielfältig werden, andererseits ermöglicht die schnell steigende Verbreitung des
Internets, jeden Menschen direkt für Informationen empfänglich zu machen. Der Autor
Gütl erläutert in seiner Arbeit die Entwicklung des Internets und weist auf ein
annähernd exponentielles Wachstum des Internet hin, was beispielsweise anhand der
weltweiten Entwicklung von Hosts belegt werden kann. Aussagekräftig ist die
Erkenntnis, dass das Internet innerhalb dieses Jahrhunderts von nahezu allen Menschen
– das sind einige Milliarden – genutzt werden wird. [Gütl 2002]
In der Arbeit von Lesk finden sich interessante Aspekte, wie man die gesamten in der
Welt vorhandenen Informationen in Bezug auf das Speichervermögen elektronischer
Speichermedien abbilden kann. Zu diesem Zweck trifft der Autor die Annahme, man
digitalisiert alles was in unserer Welt an Information anfällt – Bücher, Bilder, Filme,
TV Sendungen oder Telefongespräche. Man würde dadurch auf tausende von Petabytes1
an Daten kommen. Betrachtet man allerdings die Verkaufszahlen von elektronischen
Speichermedien, multipliziert diese mit der entsprechenden Speicherkapazität und
schließt daraus auf das theoretisch vorhandene weltweite Speichervolumen, so kommt
Lesk zur Feststellung, dass ab dem Jahr 2000 die oben beschriebene Datenmenge auf
Computern abgelegt werden könnte. [Lesk 1997]
1
1 Gigabyte (GByte) = 1.000 Megabytes = 109 Bytes
1 Terabyte (TByte) = 1.000 Gigabytes
1 Petabyte (PByte) = 1.000 Terabytes
Grundkonzepte
9
Die theoretische Schlussfolgerung daraus ist, dass es somit heutzutage möglich ist,
sämtliche Informationen zu speichern – keine Information müsste mehr verworfen
werden. Lesk stellt auch einen interessanten Bezug zwischen dem Gehirn als
„menschlichen Speicher“ und elektronischen Speichermedien her. Ausgehend von
Erkenntnissen nach Tom Landauer kann das menschliche Gehirn eine Informationsmenge von 200 Megabytes aufnehmen. Bei einer Weltbevölkerung von 6 Milliarden
Menschen erhält man als Speichervermögen aller menschlichen Gedächtnisse 1.200
Petabytes, eine Größendimension, die es theoretisch möglich macht, das gesamte
menschliche Wissen digital zu speichern. [Lesk 1997]
Der enorme Anstieg an Informationen, die fast unbegrenzten Möglichkeiten, sämtliche
Informationen zu speichern und die Möglichkeiten der rasanten Informationsverbreitung mittels des Internets haben sich in einer Informationsflut niedergeschlagen.
In der Arbeit des Autors Krcmar wird darauf hingewiesen, dass der Mensch in etwa nur
300 Worte pro Minute lesend verarbeiten kann und der sich daraus ergebende Engpass
der menschlichen Informationsverarbeitungskapazität riesige Informationsberge nur
schwer bezwingbar macht [Krcmar 2000]. Der Autor der vorliegenden Arbeit stimmt
daher mit Krcmar überein, dass es die zentrale Aufgabe der Informationstechnologie ist,
riesige Informationsmengen für den Menschen zugänglich zu machen.
2.1.2
Entwicklung des Publikationsprozesses
Unter Publizieren wird im Allgemeinen das Erfassen und Recherchieren von
Informationen durch Redakteure, die professionelle grafische Aufbereitung der
Informationen durch Layouter und danach der Druck auf Papier in Form eines Buches
verstanden. Diesem Schema entsprechende Vorgehensweisen kann man als klassisches
oder traditionelles Publizieren bezeichnen, jedoch zeichnen sich in diesem Umfeld
drastische Veränderung ab, welche einerseits durch den Innovationsdruck neuer
Technologien, andererseits durch die im obigen Abschnitt beschriebene Informationsflut hervorgerufen werden. Typisch für das traditionelle Publizieren ist, dass der
gesamte Prozess auf das Endprodukt hin optimiert wird, welches ausschließlich für den
Menschen bestimmt ist. Dementsprechend steht die Gestaltung und grafische
Aufbereitung der Publikation an erster Stelle, was zumeist auf Kosten von strukturellen
oder inhaltlichen Auszeichnungen geht. Die Folge ist ein Endprodukt, welches zwar für
den Menschen einen professionellen Eindruck macht, aber in keiner Weise maschinell
erfassbar oder weiterverarbeitbar ist. [Rothfuss et al. 2001]
Das neue, moderne Publizieren muss mit zahlreichen neuen Anforderungen umgehen.
Publizieren wird nicht mehr einzig und alleine mit dem Druck auf Papier assoziiert,
vielmehr müssen nun eine breite Palette von Zielmedien bedient werden, wie das
Internet oder CD-ROM. Bisher galten Verlage oder Werbeagenturen als typische
Akteure des Publizierens, nun kommen beispielsweise Unternehmen hinzu, die große
Mengen an Informationen publizieren, sei es für ihre Kunden, Partner oder Mitarbeiter.
Viele Informationen, welche besonders im Internet publiziert werden, sind nicht mehr
Grundkonzepte
10
von Hand gestaltet, sondern werden dynamisch aus Datenbankinhalten generiert und
automatisiert aufbereitet. Die automatisierte Gestaltung von Inhalten sowie das
Publizieren für unterschiedliche Medien machen es notwendig, Inhalte strukturiert zu
erfassen und die Generierung von Halbfertigprodukten zu erlauben, welche an
verschiedene Umgebungen angepasst werden können. [Rothfuss et al. 2001]
Schlussendlich muss das Publikationsergebnis gar nicht mehr – zumindest nicht
ausschließlich – für den menschlichen Gebrauch bestimmt sein, sondern kann Teil einer
maschinellen Verarbeitung sein. Beispielhaft seien an dieser Stelle die Visionen des
Semantic Web genannt, die Weiterentwicklung des heutigen Web, wobei allerdings
sämtliche Inhalte mit Strukturelementen versehen werden, die auch für den Computer in
einen semantischen Zusammenhang gebracht werden können und damit ein besseres
Zusammenarbeiten von Computer und Menschen ermöglichen. [Berners-Lee 2001]
Die Autoren McGovern et al. beschreiben modernes Publizieren als die Bereitstellung
der richtigen Inhalte, für die richtige Person, zum richtigen Zeitpunkt [McGovern et al.
2001]. Die Autoren weisen damit auf den wirtschaftlichen Faktor des Publizierens – im
Blickwinkel der Informationsflut – hin. Um Informationen möglichst gut kommerziell
nutzen zu können, ist es bei einem Überangebot von Informationen entscheidend,
möglichst schnell aktuelle Inhalte anbieten zu können und infolgedessen muss der
Publikationsprozess entsprechend effizient ablaufen. Ebenfalls im Sinne einer besseren
Vermarktung von Inhalten wird es immer mehr von Bedeutung, die Publikationsergebnisse speziell auf die zu erreichenden Zielgruppen inhaltlich abzustimmen, um so
bereits im Vorhinein für potentielle Kunden eine Selektion der relevanten
Informationen vorzunehmen und damit dem Gefühl der Informationsüberladenheit
entgegenzuwirken. [McGovern et al. 2001]
Diese Vorteile für den Kunden wirken natürlich auch auf die Reputation des
Informationsanbieters und stärken die Beziehung zwischen Kunden und Anbietern.
Damit unterstützt ein moderner Publikationsprozess ein effektives Customer
Relationship Management (CRM), welches in Zeiten zunehmender Markttransparenz,
enger werdender Märkte und abnehmender Kundenloyalität immer mehr an Bedeutung
gewinnt. Zugleich impliziert aber diese Notwendigkeit für CRM die Adaption des
Publikationsprozesses an die Anforderungen der heutigen Zeit. [Scholz 2003]
Die in diesem Abschnitt beschriebene Entwicklung des Publizierens und der damit
verbundenen Anforderungen im Umfeld einer informationsüberladenen Welt verlangen
nach einer praktischen Lösung. Die im nachfolgenden Teil der vorliegenden Arbeit
dargestellten Content Management Systeme verdeutlichen einen möglichen Lösungsansatz der Informationstechnologie, um auf die erörterten Anforderungen zu reagieren.
2.2
Begriffsbestimmung
Um sich dem Thema Content Management Systeme zu nähern, werden in diesem
Abschnitt die im Zusammenhang stehenden Begriffe erörtert. In einer hierarchischen
Grundkonzepte
11
Vorgehensweise wird der zentrale Begriff der vorliegenden Arbeit – Content
Management Systeme – über die zugrunde liegenden Begriffe Content und Content
Management erarbeitet. Des Weiteren werden die oben genannten Begriffe von
ähnlichen oder im Zusammenhang verwendeten Begriffen abgegrenzt.
2.2.1
Content
Ziel dieses Abschnittes ist es, jenen Begriff detailliert zu betrachten, welcher die
Grundlage für alle weiteren Ausführungen in der vorliegenden Arbeit bildet. Der
Begriff Content wird hierfür zuerst über die Begriffe Daten, Information und Wissen
erklärt und von selbigen abgegrenzt und anschließend im Kontext von Content
Management näher erörtert. Den Abschluss dieser Ausführungen bildet eine kurze
Gegenüberstellung bzw. Abgrenzung der Begriffe Content und Dokument.
Die Autoren Koop et al. verwenden die in der Literatur häufig anzutreffende
Konzeption der Begriffe Daten, Information und Wissen, um den Content-Begriff zu
definieren. Unter Daten wird eine Kette von elementaren Symbolen, die einer
bestimmten, vereinbarten Syntax folgen, verstanden. Wird durch Daten eine
Zustandsänderung in einem Empfängersystem (Computer, Mensch, usw.) hervorgerufen, so spricht man von Informationen. Als wichtige, mit dieser Definition
verbundene Eigenschaft, sei die Kontextabhängigkeit erwähnt – was für eine Person
Information darstellt, muss noch lange nicht für eine andere Person gelten. Mit dem
Begriff Wissen wird die in einem System (Computer, Mensch, Bibliothek, usw.)
gespeicherte Information verstanden. Wissen wird allgemein für wahr gehalten – wenn
es jedoch durch falsche oder irreführende Informationen entstanden ist, kann Wissen
auch falsch sein oder Widersprüche enthalten. Weitere Definitionen erklären den
Begriff Wissen als interpretierte Information oder Information mit Bedeutung. [Koop et
al. 2001] [Reif 2000] [Rollett 2000]
Ausgehend von der im obigen Absatz beschriebenen hierarchischen Konzeption lässt
sich der Begriff Content zwischen Information und Wissen einordnen. In diesem
Zusammenhang versteht man unter Content eine Information als Austauschgegenstand.
Content lässt sich als ein Informationspaket beschreiben, dass man mittels eines
Mediums (Papier, elektronisch, usw.) weitergeben kann und für andere nutzbar ist.
Demzufolge kann man beispielsweise Texte, Bilder, Grafiken, Video- oder
Audiosequenzen als Content auffassen. Es sei noch erwähnt, dass diese Definition von
Content keine Aussage über den tatsächlichen Nutzwert des Content darstellt – der Wert
eines Content ist geprägt durch die subjektiven Merkmale bzw. Interessen eines
potentiellen Nutzers und nicht durch den Content an sich. Der Begriff Asset knüpft an
diese Charakteristik von Content an und beschreibt jenen Content, welcher für einen
gewissen Nutzer einen Nutzwert darstellt, für den er gegebenenfalls bereit ist,
finanzielle Mittel zu dessen Beschaffung aufzuwenden. [Koop et al. 2001]
In der Arbeit von Ashenden et. al wird eine der im obigen Absatz ähnliche Definition
von Content dargestellt, welche jedoch bereits auf eine Verknüpfung zu Content
Grundkonzepte
12
Management hinweist. Demzufolge entspricht Content all dem „[…] was elektronisch
verwaltet werden kann oder auf Papier ausgedruckt werden kann.2“ [Ashenden et. al
2002a] Diese Definition beschreibt wie jene im obigen Absatz, dass Content auf einem
Medium existieren muss und drückt durch die beschriebene Tätigkeit des Verwaltens
bereits einen Bezug zu Content Management aus.
Als Beispiele für Content nennen die zuletzt genannten Autoren eine zweizeilige
Kurzmeldung mit einer Lebensdauer von zwei Stunden, oder ein kompletter Satz von
Anleitungen, wie man eine Boing 777 baut, welcher ständig aktualisiert werden muss
und eine Lebensdauer von mehreren Jahrzehnten haben kann. Diese beiden Beispiele
verdeutlichen aussagekräftig, welche Größenunterschiede in Bezug auf Umfang oder
Aktualität sich hinter dem Begriff Content verbergen können. Als weiteres Merkmal
von Content beschreiben die Autoren Ashenden et. al eine gewisse Dynamik von
Content, welche sich beispielsweise dadurch äußert, dass ein und derselbe Content
verschieden visualisiert werden kann, z.B. auf einem WAP (Wireless Application
Protocol) Handy oder einem Computerbildschirm. Content kann auch entstehen, indem
mehrere Komponenten verlinkt werden, wobei sich diese Komponenten nach dem
Zusammenstellen ändern können (z.B. ein Echtzeit Aktienkurs), womit der Content bei
jeder neuen Betrachtung anders aussieht. [Ashenden et. al 2002a]
Es sei darauf verwiesen, dass diese Aspekte der Verlinkung von Content und der damit
möglichen mehrmaligen Verwendung eines Content-Objekts, nicht erstmals im Umfeld
einer Diskussion rund um den Begriff Content erwähnt wurden, sondern bereits seit
langem in der Literatur zu finden sind. In diesem Zusammenhang sei das Konzept der
Transclusions – erstmals 1960 von Ted Nelson dargestellt – erwähnt. Transclusions
sollen es ermöglichen, in einem neu erstellten Dokument einen genau definierten
Bereich eines anderen Dokuments zu referenzieren. Die innovativen Gedanken hinter
diesem Konzept sind, dass einerseits nicht das ganze Dokument referenziert werden
muss, sonder auch nur Teile davon und andererseits sollen die Referenzen bidirektional
sein, sodass auch der Besitzer des referenzierten Objekts weiß, wo Teile seines
Dokuments wieder verwendet werden. [Krottmaier 2002]
Die zuletzt erörterten Aspekte der Dynamik von Content sind ein wesentliches
Differenzierungsmerkmal zwischen dem Begriff Content und Dokument. Die Autoren
Rothfuss et al. beschreiben ein Dokument als eine geschlossene Inhaltsmenge – es hat
einen Anfang, eine Reihenfolge und ein Ende und ist in dieser Form dauerhaft
vorhanden [Rothfuss et al. 2001]. Dieser statische Charakter grenzt ein Dokument
deutlich von Content ab, welcher aufgrund von Aktualisierungen oder Anpassungen
sich ständig ändern kann. Koop et. al definieren den Begriff Dokument überhaupt nur
als hinsichtlich des Medienformats spezifizierte Informationen, was durch
Bezeichnungen wie „Word-Dokument“ oder „HTML-Dokument“ belegt wird. [Koop et
al. 2001]
„[…] anything that can be managed electronically or printed on a piece of paper.” [Ashenden et. al
2002a]
2
Grundkonzepte
2.2.2
13
Content Management
Bei der Darstellung des Begriffes Content im vorherigen Abschnitt wurde bereits eine
Definition von Content Management, als das Verwalten von Content, aufgezeigt.
Ausgehend von dieser doch sehr knappen und kaum aussagekräftigen Darstellung soll
in diesem Abschnitt der Begriff Content Management (CM) detailliert betrachtet
werden.
Die Autoren Rothfuss et. al geben in ihrer Arbeit eine sehr umfassend und allgemein
gehaltene Definition von Content Management: „Unter Content Management verstehen
wir die systematische und strukturierte Beschaffung, Erzeugung, Aufbereitung,
Verwaltung, Präsentation, Verarbeitung, Publikation und Wiederverwendung von
Inhalten. 3 “ [Rothfuss et al. 2001] Man sieht aus dieser Definition, dass es sich bei
Content Management um weit mehr als nur die Verwaltung von Content handelt und
erkennt, dass Content Management einen Vorgang darstellt, welcher aus einer Kette von
intentionalen Handlungen besteht und damit den Prozesscharakter von Content
Management verdeutlicht.
Rothfuss et al. weisen darauf hin, dass die beschriebenen Vorgänge in dieser Definition
an sich nicht die Verwendung von elektronischen Hilfsmitteln voraussetzen und nennen
als ein Beispiel dafür einen traditionellen karteibasierten Schlagwortkatalog der
wissenschaftlichen Bibliotheken. Diese Überlegungen sind allerdings eher theoretischer
Natur, da heutzutage professionelles Content Management im Sinne eines flexiblen und
ökonomischen Umgangs mit Content ohne Softwareunterstützung nicht mehr denkbar
wäre. Dennoch sei darauf hingewiesen, dass der Erfolg eines solch komplexen
Prozesses, welcher von der Beschaffung von Content bis hin zu dessen Publikation oder
Wiederverwendung reicht, wesentlich durch Faktoren wie Planung, Implementation
sowie Qualitätskontrolle bestimmt wird und daher der Software zwar eine wichtige
operative Rolle zukommt, aber letztendlich nur das Mittel zum Zweck darstellt.
[Rothfuss et al. 2001]
Der Autor Wilhelm liefert eine Definition von Content Management, welche spezieller
auf die Aufgaben von professionellem Content Management eingeht: „Content
Management ist Handling digitaler Informationen in allen Prozessen bzw.
Prozessschritten von der Entstehung bis zur Distribution und Verwendung. Planung,
Steuerung und Produktion von digitalen Inhalten und Inhaltselementen erfolgt dabei in
der Form, dass eine bedarfs- und benutzergerechte Aufbereitung von Informationen aus
unterschiedlichen Quellen für unterschiedliche Medien erfolgen kann.“ [Wilhelm 2001]
Diese Begriffsbestimmung weist unmissverständlich auf eine Softwareunterstützung
von Content Management hin, indem von digitaler Information gesprochen wird und
hebt wiederum den Prozesscharakter von Content Management hervor. Zusätzlich
betont diese Definition als Anforderung von Content Management einerseits möglichst
viele unterschiedliche Quellen bei der Content-Erfassung zu berücksichtigen und
3
Der Begriff „Inhalte“ kann in dieser Definition gleichbedeutend als Content verstanden werden.
Grundkonzepte
14
andererseits Möglichkeiten zur Publikation von Content auf unterschiedlichsten Medien
bereitzustellen, und dies unter der Prämisse, Content entsprechend den Benutzeranforderungen aufzubereiten. Nach dieser Darstellung präsentiert sich Content
Management als eine Lösung für die am Anfang dieses Kapitels identifizierten
Problemfelder (siehe Kapitel 2.1). Die Publikation für unterschiedliche Medien
entspricht der zentralen Anforderung eines modernen Publikationsprozesses und die
bedarfs- und benutzergerechte Aufbereitung des Content zeigt eine Vorgehensweise
auf, welche es dem Informationssuchenden erleichtern soll, aus großen Mengen an
Informationen das Wesentliche herauszufiltern.
Der Prozesscharakter von Content Management erfordert eine Unterstützung durch alle
Beteiligenten am Gesamtprozess, welche in keiner Weise als selbstverständlich erachtet
werden kann. Um zum Beispiel die Distribution von Content auf unterschiedlichen
Medien zu gewährleisten, ist eine strukturierte Beschaffung von Content notwendig,
welche sich durchaus in einem Mehraufwand in der Erstellung, verglichen zu
herkömmlichen Vorgehensweisen, niederschlagen kann. Prozessorientiertes Vorgehen
verlangt jedoch eine Einhaltungen aller Zielsetzungen jedes einzelnen Prozessschrittes
sowie ein Grundverständnis der Zusammenhänge aller Schritte, um den Erfolg des
Gesamtprozesses zu garantieren. [Rothfuss et al. 2001] [Wilhelm 2001]
Es ist daher von Bedeutung, nicht nur die technischen Aspekte von Content
Management zu betrachten, sondern auch die beteiligten Menschen als wesentliches
Kriterium für eine erfolgreiche Umsetzung von Content Management zu sehen. Die
beteiligten Menschen, als das ausführende Organ der Prozesskette, müssen mögliche
Änderungen durch die Implementation von Content Management verstehen, vom
eventuell entstehenden Mehraufwand überzeugt sein, sowie die Ergebnisse der
einzelnen Schritte gutheißen, um den Gesamtprozess zum Erfolg zu führen. [Rothfuss et
al. 2001] [Wilhelm 2001]
2.2.3
Content Management Systeme
In diesem Abschnitt wird der im Zusammenhang der vorliegenden Arbeit wichtigste
Begriff Content Management System (CMS) erörtert. Im Anschluss an die Begriffsbestimmung erfolgt eine Darstellung einiger im Kontext von Content Management
Systemen häufig genannter Begriffe.
Im vorherigen Abschnitt wurde auf die Wichtigkeit, Content Management als
menschenzentrierten Prozess zu sehen, hingewiesen. Um jedoch das Vorhaben von
Content Management ökonomisch sinnvoll umzusetzen, ist eine Software Unterstützung
nicht wegzudenken (siehe Kapitel 2.2.2). An dieser Stelle wird der Begriff Content
Management System relevant. Die Autoren Koop et. al definieren den Begriff wie folgt:
„Ein Content Management System ist ein IT-basiertes System zur Organisation,
Verwaltung und Durchführung des Content Managements, letztendlich also nichts
anderes als ein (elektronisches) Tool für Content Management.“ [Koop et al. 2001]
Durch die Implementierung eines Content Management Systems soll die Einhaltung der
Grundkonzepte
15
Zielsetzungen von Content Management sowie deren effiziente Umsetzung
gewährleistet werden. Die logische Konsequenz aus diesen Anforderungen ist, dass der
Aufwand für Content Management durch die Unterstützungen eines Content
Management Systems im Vergleich zur Realisierung ohne Content Management System
nachhaltig – nach eventuellen hohen Anfangsaufwendungen der Einführungsphase –
gesenkt wird. [Koop et al. 2001]
Die Autoren Rothfuss et. al bekräftigen in ihrer Arbeit, den Begriff Content
Management System nicht mit Content Management zu verwechseln. CMS definieren
die Autoren Rothfuss et al. als „[…] ein fertiges Stück Software, das die abstrakte
Content Management Aufgabe in einer ganz bestimmten Weise mit
programmtechnischen Mitteln zu lösen hilft.“ [Rothfuss et al. 2001] Ein Content
Management System läuft in der Regel auf einem oder mehreren definierten
Betriebssystemen, es hat eine Methodik, ein Leistungsspektrum und einen Zielmarkt.
Da die abstrakte Content Management Aufgabe enorm viele Freiheitsgrade hat, sind
Content Management Systeme für spezialisierte Aufgaben meist grundverschieden und
da sich viele Parameter nicht gleichzeitig optimieren lassen, ist es kaum möglich, ein
allumfassendes Universal-CMS zu finden. Ein Beispiel für Parameter, die nicht
gleichzeitig optimiert werden können, sind einfache Erlernbarkeit versus hohe
Leistungsfähigkeit. Häufig besteht ein CMS Gesamtsystem aus einer Reihe von
optimierten Einzelprodukten, die gut zusammenarbeiten. [Rothfuss et al. 2001]
Aufgrund der unterschiedlichen Ausprägungen von Content Management Systemen
nehmen die Autoren Ashenden et al. eine funktionale Unterteilung in zwei Gruppen von
Systemen vor, in Front-Office und Back-Office Systeme. Von einem Back-Office
System spricht man, wenn der zu verwaltende Content innerhalb einer Organisation4
erzeugt wird und auch nur für diese eine Organisation relevant ist. Der Schwerpunkt
solcher Systeme liegt auf einem einfachen transparenten Zugang zum Content, auf einer
effektiven Content-Ablage und auf umfangreichen und leistungsfähigen Suchmöglichkeiten, um so die täglichen Arbeiten in der Organisation zu unterstützen und effizienter
zu gestalten. [Ashenden et. al 2002a]
Front-Office Systeme sind dagegen auf die professionelle Distribution des Content
außerhalb der Organisation spezialisiert. Solche Systeme umfassen natürlich auch die
systematische Verwaltung von Content innerhalb der Organisation, jedoch liegt der
Schwerpunk am Publizieren des Content, um so ein möglichst großes Publikum
außerhalb der Organisation anzusprechen. Beispielhafte Schwerpunktsetzungen wären
das effektive Managen professioneller Websites zu ermöglichen oder eine Aufbereitung
des Content für verschiedene Endgeräte zu gewährleisten. Diese Zweiteilung der
Aufgabenschwerpunkte von Content Management Systemen lässt sich auf die am
Anfang dieses Kapitels (siehe Kapitel 2.1) dargestellten Problembereiche abbilden. So
wirken Back-Office Systeme in erster Linie der Informationsflut in Organisationen
4
Organisation steht hier allgemein für eine geschlossene Einheit, sei es eine Unternehmung, eine Gruppe
oder eine Arbeitsgemeinschaft.
Grundkonzepte
16
entgegen, indem sie Content verwalten und wiederauffindbar machen und Front-Office
Systeme präsentieren sich als Lösung auf die Anforderungen eines modernen
Publikationsprozesses. Ein ideales Content Management System sollte sowohl den
Back-Office als auch den Front-Office Bereich abdecken. [Ashenden et. al 2002a]
Die Recherchen zur vorliegenden Arbeit haben gezeigt, dass gewisse Begriffe immer
wieder im Zusammenhang mit Content Management Systemen genannt werden, wobei
oftmals die Abgrenzungen der einzelnen Begriffe nicht eindeutig zu erkennen sind. Um
hier für Klarheit zu sorgen, werden im folgenden Abschnitt einige dieser Begriffe
aufgelistet und im Kontext von Content Management Systemen erörtert. Es sei
allerdings erwähnt, dass insbesondere die ersten drei Begriffe, noch in mehreren
Abschnitten der vorliegenden Arbeit, im Kontext der Diskussion des Funktionsumfangs
eines CMS, erörtert werden (siehe auch 6.4 oder 7.1.1).
Dokument Management Systeme
Bei Dokument Management Systemen (DMS) handelt es sich trivial ausgedrückt um die
Vorläufer von Content Management Systemen. DMS sind bereits seit Jahrzehnten am
Markt und erfüllen die Aufgabe, Dokumente zentral zu verwalten und zugänglich zu
machen und sind grundsätzlich dem Back-Office Bereich zuzuordnen. Viele Content
Management Systeme haben sich aus Dokument Management Systemen entwickelt,
welche im Laufe der Zeit in ihrer Funktionalität gewachsen sind und auch bedingt durch
aktuelle Marketingstrategien eine Namensänderungen von Dokument zu Content
erfahren haben. Das Charakteristische am klassischen Dokument Management ist, dass
die zu verwaltenden Dokumente im Wesentlichen als Black Box behandelt werden. Das
DMS hat keinen Einfluss auf die innere Struktur oder Formatierung der Dokumente und
nimmt auch keinerlei Einfluss auf die einzelnen im Dokument vorkommenden Inhalte
(siehe Kapitel 2.2.1). Zu den wichtigen Aufgaben des klassischen Dokument
Managements gehören auch das Erfassen von in Papierform vorliegenden Dokumenten
und deren Langzeitarchivierung auf elektronischen Speichermedien. [Pelz-Sharp et. al
2002a] [Gulbins et al. 1999] [Krüger et al. 2002]
Web Content Management Systeme
Systeme, welche sich auf das professionelle Publizieren von Content auf Websites
spezialisiert haben, werden auch als Web Content Management Systeme (WCMS)
bezeichnet und sind demzufolge dem Front-Office Bereich zuzuordnen. Unachtsamkeit,
aber zum Teil auch bewusst gesteuerte Marketinginitiativen sorgen im Umfeld dieses
Begriffes oftmals für Missverständnisse. An Stellen, wo der Begriff Web Content
Management System angebracht wäre, wird häufig nur mehr von Content Management
Systemen gesprochen. Damit geht allerdings der deutliche Hinweis auf den
Aufgabenschwerpunkt dieser Systeme verloren und man würde durchaus mehr Funktionalität von dem System erwarten, als es tatsächlich zu bieten hat.
Es sei grundsätzlich darauf verwiesen, dass der Begriff Content Management System
für sich alleine aufgrund der Komplexität des dahinter stehenden Prozesses kaum
Grundkonzepte
17
Aufschluss auf den zu erwartenden Funktionalitätsumfang erlaubt, er sollte daher immer
genauer erläutert werden. Allerdings sei auch erwähnt, dass gerade der Begriff Web
Content Management System aufgrund des großen Internethypes und beeinflusst von
Marketingüberlegungen, oftmals verwendet wird, um beispielsweise einem relativ
simplen System ein professionelles Image zu geben. Ein System, welches kaum mehr
als simple HTML Editiermöglichkeiten bietet, kann vielleicht dem Web-Bereich
zugeordnet werden, aber bestimmt nicht als Web Content Management System
bezeichnet werden. [Gersdorf 2000] [Krüger et al. 2002] [Rothfuss et al. 2001]
Enterprise Content Management Systeme
Als Enterprise Content Management Systeme (ECMS) werden Systeme bezeichnet,
welche in großen Organisationen bzw. Großunternehmen imstande sind, sämtliche
Anforderungen von Content Management zu erfüllen. Ein ECMS hat praktisch keinen
spezifischen Schwerpunkt mehr, sondern bietet Lösungen im Back-Office sowie im
Front-Office Bereich. Enterprise Content Management Systeme sollen den gesamten in
einer Organisation vorhandenen Content erfassen und damit umgehen können, womit
solchen Systemen in der Praxis ein wesentlicher Aspekt der Integration zukommt.
Das Erschließen sämtlicher Content-Quellen verlangt oft die Kommunikation mit
bereits bestehenden Altsystemen unterschiedlicher Hersteller, womit Enterprise CMS in
erster Linie auf offene Standards und Plattformunabhängigkeit achten sollten. Wie auch
schon beim vorherigen Begriff Web Content Management Systeme erwähnt, soll
wiederum auf die mögliche ungerechtfertige Verwendung des Begriffes ECMS
aufgrund von Marketingstrategien hingewiesen werden. Gerade diese sehr allgemeine
Definition von ECMS, welche im Grunde besagt, dass ein solches System einfach alles
kann oder können sollte, gibt in der Praxis sehr viele Freiheitsgrade und grenzt in keiner
Weise den zu erwartenden Funktionsumfang ein. [Pelz-Sharp et. al 2002a] [Zschau
2001]
Wissensmanagement
Alle bisher im Kontext der Begriffsbestimmung von Content Management Systemen
genannten Begriffe befinden sich mehr oder weniger auf einer Ebene. Sie sind alle der
Informationstechnologie zuzuordnen und verfolgen Lösungsansätze zur Eindämmung
der Informationsflut oder zur Effizienzsteigerung des Publizierens. Unter Wissensmanagement wird jedoch jene Disziplin verstanden, welche als primäres Ziel versucht,
Wissen zugänglich und wieder verwendbar zu machen und bedient sich zu diesem
Zweck auch der Informationstechnologie. [Rollett 2000]
Der Autor Rollett weist jedoch in seiner Arbeit darauf hin, dass es bei
Wissensmanagement nicht primär um Technologie geht. Ein Grund liegt darin, dass
ohne entsprechende organisatorische Rahmenbedingungen, etwa dem Vorhandensein
von einer Kultur des Zusammenarbeitens und von Prozessen des Wissenstransfers, jeder
noch so aufwendige Technologieeinsatz erfolglos bleiben wird. Folglich besteht die
Aufgabe von Wissensmanagement vor allem darin, eine Organisation für das Thema
Grundkonzepte
18
Wissen zu sensibilisieren. Das soll natürlich nicht bedeuten, dass Technologie keine
Rolle spielt. Die neuen Informations- und Kommunikationstechnologien haben
Wissensmanagement in seiner heutigen Form erst möglich gemacht und ihr Potenzial ist
noch nicht annähernd ausgeschöpft. [Rollett 2000]
Wissensmanagement ist aber auch keine neue Disziplin, welche erst durch die
Informationstechnologie möglich wurde. Wissen wurde schon immer in Organisationen
weitergegeben, beispielsweise durch Ausbildungs- und Fortbildungsprogramme,
Geschäftsroutinen, Berichte oder Handbücher. [Rollett 2000] Allerdings würde ein
Wissensmanagement, das nur auf diesen oder ähnlichen Kommunikationswegen basiert,
schnell ineffizient werden. Es kann festgehalten werden, dass die Informationstechnologie respektive die entsprechenden Techniken gleichzeitig Basis als auch Tool
für Wissensmanagement sind.
Eine mangelnde Systematik und Nichtbeachtung der Ziele von Wissensmanagement
kann jedoch nicht durch eine IT-Unterstützung kompensiert werden, genauso wie eine
schlechte IT-Unterstützung das Konzept eines guten Wissensmanagement-Ansatzes
zum Scheitern bringt, erläutert der Autor Wildemann. Weniger auf Konzept- sondern
auf Anwendungsebene erscheinen durch den Einsatz von Informationstechnologie zur
Unterstützung des Wissensmanagement auch manche Problemfelder. Der Einsatz von
IT-Systemen erleichtert die Produktion von Datenmüll, also nicht mehr genutzten
Daten, oder den Aufbau von Redundanzen. Insbesondere die heutzutage zur Verfügung
stehenden hohen Speicherkapazitäten (siehe Kapitel 2.1.1) erscheinen den Mitarbeitern
einer Organisation unendlich groß und werden daher oft verschwendet. [Wildemann
2003]
2.3
Charakteristische Aspekte von Content Management
Systemen
Um die grundlegenden Betrachtungen in diesem Kapitel um das Thema Content
Management Systeme abzuschließen, soll es das Ziel dieses Abschnittes sein,
charakteristische Aspekte, wie Ziele, Grenzen oder die Anatomie des Content
aufzuzeigen, welche für sämtliche Content Management Systeme gleichermaßen
zutreffen.
2.3.1
Anatomie des Content
Ein innovatives Content Management System behandelt Content als Summe von
wesentlichen Einzelinformationen. Diese sind Struktur, Darstellungsform und Inhalt.
Die bisher erörterten Anforderungen an Content Management wie Content auf
unterschiedlichen Medien zu publizieren, Content benutzer- und bedarfsgerecht
aufzubereiten oder Content für eine automatisierte Weiterverarbeitung zugänglich zu
machen, erzwingen praktisch eine Zerlegung und getrennte Verwaltung dieser drei
wesentlichen Bestandteile. Grundsätzlich weist jeder Content diese Dreiteilung auf, eine
Grundkonzepte
19
Analyse dieser Anatomie des Content ist jedoch in vielen Fällen nur mit dem Auge des
Betrachters möglich. Dies trifft beispielsweise genau dann zu, wenn Inhalte und Layoutanweisungen in einer Art und Weise vermischt werden, in der sie maschinell nicht mehr
trennbar sind. [Schuster et al. 2000] Eine Trennung der drei Bestandteile von Content in
einer Art wie sie auch maschinell nachvollzogen werden kann, gilt jedoch als
Grundkonzept eines Content Management Systems und macht sinnvolles Content
Management erst möglich. [Jablonski et. al 2002]
Struktur
Darstellung
Dokument
Templates,
Typ
Stylesheets
Definitionen
Rohdaten
Inhalt
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Trennung von Struktur, Inhalt und Darstellung [Schuster et al. 2000]
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 soll die Trennung von Struktur, Inhalt und Darstellung veranschaulichen. Die Struktur ist eine inhaltliche Definition der Einzelinformationen und
ihrer Abfolge bzw. Verschachtelung. Eine Presseinformation besteht z.B. aus einer
Überschrift, einem Publikationsdatum, einem Fließtext und einem Autor. Die
Information Autor kann dabei wieder eine Struktur darstellen, die zum Beispiel aus
Vor- und Nachnamen und Email Adresse besteht. Der Inhalt füllt die einzelnen
Datenelemente der Strukturdefinition. Die Darstellung schließlich ist eine formale
Beschreibung, mit deren Hilfe die Repräsentation auf einem Ausgabemedium realisiert
wird. [Schuster et al. 2000] Ist diese Dreiteilung in maschinenlesbarer Form von
Content gegeben, so ist es einfach möglich, die Darstellungskomponente zu ersetzen,
um so verschiedene Visualisierungen des Content zu erhalten. Aufgrund des genauen
Wissens über die Struktur des Inhalts ist es möglich, bei verschiedenen
Visualisierungen nur eine bestimmte Teilmenge des Inhalts zu berücksichtigen5.
Diese Überlegungen zur Trennung von Darstellung und Inhalt sind jedoch keine neuen
Ansätze der Informationstechnologie. So wird bereits in der Arbeit von [Gamma et al.
5
Es sei an dieser Stelle u.a. auf Techniken wie XML und XSLT verwiese (siehe auch Kapitel 4.1.1).
Grundkonzepte
20
1995] das in Smalltalk-80 verwendete Model-View-Controller-Paradigma zur
Konstruktion von Benutzerschnittstellen beschrieben, welches ebenfalls auf den in
diesem Abschnitt aufgezeigten Überlegungen basiert. Bei diesem Paradigma werden die
eigentlichen Applikationsdaten in einem Model-Objekt gehalten und mehrere ViewObjekte übernehmen die Aufgabe, ein und dieselben Daten unterschiedliche zu
präsentieren. Das Controller-Objekt übernimmt in diesem Zusammenhang die Funktion,
den Benutzerdialog zu steuern.
2.3.2
Content Life Cycle
Ein Content Management System verwaltet den Content idealerweise von der
Generierung bis hin zu dessen Archivierung oder Entfernung aus dem System. In dieser
Zeit durchläuft der Content in der Regel unzählige Arbeitsschritte, er wird erstellt,
überarbeitet, kontrolliert oder publiziert [Ashenden et. al 2002a]. Zur übersichtlichen
Darstellung dieser prozessorientierten Sachverhalte haben sich im Rahmen von Content
Management Systemen Life Cycle Modelle etabliert, welche die einzelnen Arbeitsschritte in einem Content Management System verdeutlichen. Abbildung Error! Use
the Home tab to apply Überschrift 1 to the text that you want to appear here..2
zeigt einen möglichen Content Life Cycle. Der Content wird von einem Autor bzw.
Redakteur recherchiert und erstellt. Vor der Freigabe des Content bedarf es der
Kontrolle durch andere Mitarbeiter, die sich über mehrere Stufen erstrecken kann. Ist
die Kontrolle positive verlaufen, kann die Freigabe erfolgen und der Content zur
Publikation weitergeleitet werden. Ist der Content nicht mehr aktuell, wird er zur
Archivierung übermittelt. [Jablonski et. al 2002]
Archivierung
Recherche
Publikation
Erstellung
Freigabe
Kontrolle
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
Content Life Cycle [Jablonski et. al 2002]
Diese Darstellung eines Content Life Cycle lässt bereits Benutzerrollen, wie Content
Autor oder Content Begutachter erkennen, welche ein Content Management System im
Sinne einer effektiven Implementierung eines Content Life Cycle unterscheiden und
berücksichtigen soll. In diesem Zusammenhang wird im Whitepaper [Red Hat 2003]
Grundkonzepte
21
eine grundsätzliche Unterscheidung in drei Gruppen von Benutzerrollen dargestellt. Die
nicht-technischen Benutzer, dafür verantwortlich den Content einzugeben und qualitativ
zu überprüfen, die technischen Benutzer, verantwortlich für die richtige Präsentation
des Content ohne sich inhaltliche Gedanken machen zu müssen und die Manager oder
Administratoren, deren wesentliche Aufgabe es ist, das CMS im Betrieb zu halten bzw.
unternehmensspezifische Anpassungen vorzunehmen. Ein innovatives Content
Management System sollte es ermöglichen, dass alle Benutzer ungestört am System
arbeiten und die ihnen zugewiesenen Aufgaben erledigen können und dabei die
Transparenz des Gesamtprozesses erhalten bleibt.
2.3.3
Ziele von Content Management Systemen
Grundsätzlich lassen sich bereits aus den Erkenntnissen der vorangegangenen
Abschnitte dieses Kapitels erste Zielsetzungen formulieren. Als Grundziel sollte jedes
CMS die Anforderungen des Content Management erfüllen (siehe Kapitel 2.2.2), um so
riesige Contentmengen übersichtlich zu organisieren sowie eine effektive Distribution
bzw. Publikation von Content zu ermöglichen. Viele in der Literatur zu findenden
Zielsetzungen beruhen auf diesem Grundziel, doch werden diese meistens noch durch
ökonomische Überlegungen sowie Qualitätsaspekte erweitert.
Ökonomische Zielsetzungen werden in der Arbeit von [Koop et al. 2001] dargestellt.
Das heutige Wirtschaftsleben erfordert Geschwindigkeit in den diversen Abläufen und
zugreifbare, nutzbare Information als Rohstoff. Letzteres ist davon abhängig, wie
umfassend und integrativ in einer Organisation Content behandelt wird. Ziel einer
Organisation ist es, Produktionsvorteile durch einen effizienten Umgang mit Content zu
erzielen. Content Management ist die Basis für ein effektives Arbeiten mit
Ausprägungen und Repräsentationen von Informationen bzw. Wissenszusammenhängen, und genau diese sind die Quelle jeder Entwicklung und damit jedes Umsatzes.
Man möchte aber auch direkten Nutzen aus dem Content ziehen. Content kann
vermarktet werden, er kann einen Preis haben. Der Preis könnte sich aus Faktoren wie
Aktualität, Nutzwert, Relevanz oder der Reputation des Herausgebers ableiten. Um den
Wert dieser Assets (siehe Kapitel 2.2.1) bestmöglich auszuschöpfen, sollte die
Distribution der Assets möglichst schnell und zielgerichtet erfolgen, um für Aktualität
und Relevanz zu sorgen. Die digitale Distribution, wie sie durch Content Management
Systeme ermöglicht wird, ist daher ideal, da sie kostengünstiger und schneller ist als
physische Logistik. [Koop et al. 2001]
Die Autoren Jablonski et. al beschreiben die Ziele von Content Management Systemen
als Optimierung des Publikationsprozesses sowie einer Effizienzsteigerung bei der
Verwaltung von Content und stimmen somit im Wesentlichen mit dem am Anfang
dieses Abschnittes formulierten Grundziels überein. Darüber hinaus verweisen selbige
Autoren auf die Qualitätssicherung bzw. Qualitätssteigerung von Content,
beispielsweise durch das strikte Einhalten des Content Life Cycle (siehe Kapitel 2.3.2)
Grundkonzepte
22
und darüber hinaus soll natürlich durch die Realisierung sämtlicher Ziele eine
Kosteneinsparung verwirklicht werden. [Jablonski et. al 2002]
Im Whitepaper [Red Hat 2003] wird ein Beispiel dargestellt, wie durch ein CMS eine
Verbesserung des Publikationsprozesses erreicht wird und so Kosten gesenkt werden
können. Mittels eines CMS können verschiedene Content-Bearbeiter effizienter
miteinander arbeiten und dies zumeist unabhängig von Ort und Zeit. Idealerweise hat
jeder Beteiligte am CMS einen eigenen Rechner mit Netzwerkanschluss und bekommt
die für ihn relevanten Aufgaben und Abgabetermine direkt zugewiesen. Durch diese
übersichtliche Aufgabenverteilung soll den Beteiligten wertvolle Zeit eingespart
werden.
Die Autoren Ashenden et. al erörtern in ihrer Arbeit ebenfalls als wichtiges Ziel durch
den Einsatz eines CMS die Kostenreduktion, betonen jedoch als weiteres wichtiges Ziel
die Risikominimierung. Ein Content Management System soll Content nicht nur
verwalten sondern auch Schutz vor unautorisiertem Zugriff oder Datenverlust bieten.
Eine Einhaltung des Content Life Cycle soll sich nicht nur in einer Qualitätssteigerung
bemerkbar machen, sondern auch garantieren, dass immer mit dem aktuellsten Content
gearbeitet wird, sowie kein fehlerhafter, unvollständiger oder veralteter Content
publiziert wird, wodurch möglicherweise Fehlentscheidungen initiiert werden können.
[Ashenden et. al 2002a]
Ein nicht unbedeutendes Ziel beim Einsatz von Content Management Systemen im
Front-Office Bereich (siehe Kapitel 2.2.3) ist eine einheitliche und professionelle
Visualisierung des Content. Wird der Content einer Organisation auf einer Website
nach außen hin angeboten, so entsteht bereits durch die optische Aufbereitung der
Website eine Kommunikationswirkung. Im Rahmen von Unternehmungen spricht man
in diesem Zusammenhang von der Corporate Identity6. Viele Unternehmungen haben
klare Vorgaben über die Corporate Identity, welche natürlich durch den Einsatz eines
Content Management Systems gleich miterfüllt werden soll. Der Außenwirkung durch
den Einsatz eines Content Management Systems kann im Unternehmensbereich eine
durchaus bedeutende Rolle zukommen. Kunden, Lieferanten und Geschäftspartner
erkennen die Vorteile, wenn ein Unternehmen einen umfassenden Ansatz im Umgang
mit Content betreibt. Diverse Abläufe beschleunigen sich, Rückfragen werden seltener,
die Geschäftsprozesse werden einfacher und effizienter. Die gewonnene Zuverlässigkeit
und Kompetenz wird honoriert und äußert sich in einer verbesserten Wettbewerbsfähigkeit der Unternehmung. [Koop et al. 2001]
2.3.4
Grenzen von Content Management Systemen
Wenn eine Organisation ein Content Management System einführen will, geht sie
natürlich davon aus, dass sich dadurch mittel- oder langfristig neue Potenziale und
6
Kann sinngemäß übersetzt werden als "Identität eines Unternehmens", Unternehmenskultur oder
Erscheinungsbild
Grundkonzepte
23
Chancen ergeben. Man sollte aber immer kritisch hinterfragen, welche dieser neuen
Potenziale und Chancen die Organisation wirklich nutzen kann bzw. welche Risiken
entstehen können. Schlussendlich wirkt sich die Einführung eines Content Management
Systems auf sämtliche Bereich einer Organisation aus. [Koop et al. 2001]
Die Einführung eines Content Management Systems kann schnell sein Ziel verfehlen,
wenn es beispielsweise so unflexibel ist, dass es nicht auf die Organisation oder seine
spezifischen Anforderungen passt. Bringt ein CMS nur noch eine weitere Insellösung
oder ein zusätzliches Organisationssystem mit sich, oder sprengt es den kostenmäßigen
Rahmen, wird sich die Lösung auf Dauer nicht halten. Ein grundsätzliches Problem
beim Einsatz von Content Management Systemen stellt die monetäre Bewertung des
Erfolges durch den Einsatz des Systems dar, um etwa die Investition in diesem Bereich
zu rechtfertigen. So lässt sich zum Beispiel eine Effizienzsteigerung durch verbesserte
Suchmöglichkeiten schwer durch monetäre Größen abbilden. [Koop et al. 2001]
Content Management Systeme bedeuten grundsätzlich keine sofortige Einsparung von
monetären Mitteln. Gerade in der Anfangsphase können die Kosten für die Anschaffung
von Software, Server und mögliche Anpassungen sehr hoch ausfallen. Man sollte ein
Content Management System nie einzig und alleine unter dem Gesichtspunkt der
sofortigen Kostenersparnis bewerten, schlagen die Autoren in [Krüger et al. 2002] vor7.
Die Autoren Krüger et al. betonen in ihrer Arbeit ebenfalls, ein CMS nicht als die
Universallösung sämtlicher Probleme anzusehen. Eine halbherzige Umsetzung eines
CMS kann sich durch schlechte Akzeptanz und Performanceprobleme eher negative
auswirken.
Der Einsatz eines Content Management Systems bedeutet auch nicht, dass der Content
jetzt automatisch aktuell ist und die Bedürfnisse der Benutzer genau trifft. Es bleibt
letzten Endes immer die Aufgabe von Menschen, für Aktualität zu sorgen. So kann
beispielsweise die Qualität eines Webauftritts technisch betrachtet durch ein CMS sehr
wohl verbessert werden – ändert sich aber wochenlang kein Inhalt, kommt es zu
Irritationen bei den Interessenten. Es kann durchaus vorteilhaft sein, eine strukturierte
und aufwendig gestaltete Website zu betreiben, aber Erfolg ergibt sich in erster Linie
aus aktuellen und interessanten Informationen kombiniert mit schnellem Zugriff.
Content Management Systeme schaffen die Grundlage, sämtlichen Content erfolgreich
zu managen und durch Automatisierungsfunktionen erheblich Personalkosten im
technischen Bereich einzusparen. Diese Einsparung sollte man aber nutzen, um mehr
Ressourcen für die inhaltliche Gestaltung einzusetzen, was den Erfolg des
Gesamtsystems nur unterstützen kann. [Krüger et al. 2002]
7
Längerfristig muss sich natürlich eine Kostenersparnis ergeben, welche sich durch effizientere und
kostengünstigere Arbeitsabläufe ergeben sollte.
Grundkonzepte
2.4
24
Schlussbemerkung
Ausgehend von einer Bedarfsanalyse für Content Management wurden in diesem
Kapitel Content Management Systeme als eine informationstechnologische Möglichkeit
identifiziert, mit der Informationsflut der modernen Welt umzugehen. Content
Management Systeme kommen überall dort zum Einsatz, wo Content erzeugt, verwaltet
oder publiziert wird, wobei in den bisherigen Darstellungen zumeist die Organisation
als Einsatzort genannt wurde. Der Autor der vorliegenden Arbeit hat bewusst den
Begriff Organisation gewählt um nicht, wie es meistens in der Literatur vorzufinden ist,
Content Management Systeme sofort im Umfeld von Unternehmen zu platzieren.
Vielmehr soll darauf hingewiesen werden, dass ein CMS überall dort, wo digitale
Informationen organisiert werden müssen, zum Einsatz kommen kann, sei es eine
Interessensgemeinschaft, ein Verein oder überhaupt nur zum Zwecke der persönlichen
Datenorganisation.
In den nachfolgenden Betrachtungen werden Content Management Systeme jedoch auf
den Kontext von Unternehmungen eingeschränkt. Content Management Systeme im
Unternehmensbereich haben nicht nur komplexe Anforderungen zu bewältigen, sondern
auch entscheidenden Einfluss auf den Erfolg und die Konkurrenzfähigkeit der Unternehmung. Innovative Content Management Systeme sind keine Garant aber eine
wichtige Grundlage für erfolgreiches Wissensmanagement und ermöglichen so den
Unternehmungen, den für die Zukunft entscheidenden Produktionsfaktor Information
bzw. Wissen effizient und zielgerichtet zu nutzen (siehe Kapitel 2.2.3). Mit welchen
Anforderungen Content Management Systeme im Unternehmensbereich konfrontiert
werden, verdeutlichen folgende Beispiele [Wildemann 2003] [Rothfuss et al. 2001]
[Ashenden et. al 2002a]:

Der Datenbestand eines Großunternehmens würde ohne Bereinigung täglich um
etwa 3% steigen. Content Management Systeme müssen eine Trennung von
wichtigen und unwichtigen Daten vornehmen.

Unstrukturierte Inhalte machen bis zu 90% der Unternehmensdokumente aus.

Unternehmungen verdoppeln fast alle zwei Jahre die Anzahl an produziertem
Content. Dabei handelt es sich nicht nur um Rechnungen und Bestellungen
sondern auch Emails, Handbücher, Marketingunterlagen, Datenblätter, Bilder,
Internet- oder Intranet-Content.
3
Funktionen von Content Management
Systemen
Die Darstellungen im vorherigen Kapitel sind teilweise zu abstrakt, um Rückschlüsse
auf die benötigten Funktionen für Content Management Systeme zu ziehen. Sie sind
dennoch aus systematischen Gründen ausgesprochen nützlich, um die Funktionen von
Content Management Systemen nicht nur auf technischer Ebene, sondern auch die
Hintergründe zu verstehen, warum diese Funktionen zur Anwendung kommen. Ziel
dieses Kapitels ist es, die oben genannten Funktionen von Content Management
Systemen zu erörtern. Dabei soll der Schwerpunkt in diesem Kapitel auf die
Kernfunktionen gelegt werden, ohne die ein sinnvoller Einsatz von Content
Management Systemen nicht möglich wäre. Nach einer Identifikation und einer
detaillierten Diskussion der Kernfunktionen wird ein Anforderungsprofil erstellt, um die
wesentlichen Aspekte der einzelnen Kernfunktionen in einer kompakten Form zu veranschaulichen. Dieses Anforderungsprofil wird im Kapitel 5 der vorliegenden Arbeit
dazu verwendet, die Entwicklungsumgebung Java 2 Platform, Enterprise Edition
hinsichtlich der Möglichkeiten einer Umsetzung des identifizierten Anforderungsprofils
zu erörtern sowie konkrete Implementierungen eines CMS basierend auf Java 2
Platform, Enterprise Edition zu evaluieren.
3.1
Allgemeines
Zunächst ist es notwendig, eine Systematik zu identifizieren, welche die wesentlichen
Funktionen eines CMS darstellt und als Basis einer Diskussion selbiger Funktionen
verwendet werden kann. Zu diesem Zweck werden in diesem Abschnitt Erörterungen
unterschiedlicher Autoren über die Funktionen eines CMS aufgezeigt. Eine detaillierte
Auflistung aller möglichen Einzelfunktionen ist dabei nicht das Ziel, es sollen vielmehr
die Hauptfunktionen durch Überbegriffe erfasst werden, welche die Menge der
möglichen Funktionalitäten eines CMS in kompakter Form veranschaulichen.
In der Arbeit von [Schuster et al. 2000] werden die wesentlichen Kernfunktionen, die
ein CMS unterstützen sollte, in folgender Systematik erfasst:

Erstellung von neuem Content (Definition der inhaltlichen Struktur des Content)
Funktionen von Content Management Systemen
26

Editieren von bestehendem Content

Entwicklung von Templates (unterschiedliche Visualisierung des Content)

Benutzerverwaltung

Qualitätssicherung und Freigabe (Workflow zwischen den einzelnen Berechtigungsgruppen)

Steuerung (Release- und Verfallsdatenüberwachung inkl. Versionierung und
eventueller Archivierung)
Diese Darstellung lässt sich mit den im vorherigen Kapitel erarbeiteten Erkenntnissen in
Verbindung bringen. Die drei zuerst dargestellten Funktionen, das Erstellen, das
Editieren sowie die Möglichkeiten einer vielfältigen Distribution des Content durch das
Entwickeln verschiedener Templates, verdeutlichen die einzelnen Prozessschritte des
Content Management (siehe Kapitel 2.2.2). Die drei folgenden Funktionen,
Benutzerverwaltungen, Qualitätssicherung und Steuerung realisieren die Einhaltung und
Durchführung des Content Life Cycle (siehe Kapitel 2.3.2).
Ähnlich ist auch die in der Arbeit [Pelz-Sharp et. al 2002b] dargestellte Gliederung der
Funktionen eines CMS zu bewerten, wobei sich die folgende Systematik nicht nur auf
essentielle Funktionen im Kontext von Content Management beschränkt, sondern auch
notwendige Supportfunktionen mit einbezieht. Die Kernfunktionen eines CMS nach
[Pelz-Sharp et. al 2002b] sind:

Content Organisation (fundamentale Funktionen der Content-Ablage, um den
weiteren Funktionen ein effektives Arbeiten mit dem Content zu ermöglichen)

Content Erzeugung

Content Publikation

Content Kontrolle (Einhaltung des Content Life Cycle, Versionierung, Bearbeitungskonflikte, Zugriffssteuerung)

Knowledge Management (Collaboration, Workflow, Suchmöglichkeiten)

Integration (Anpassung an die Einsatzumgebung und Integration in bestehende
Systeme)

Administration

Internationalisierung
Die erste Funktion aus obiger Darstellung, Content Organisation, ist in der Darstellung
der Arbeit [Schuster et al. 2000] nicht zu finden. Dies lässt sich dadurch begründen,
dass diese Funktion nicht direkt für den Endbenutzer bestimmt ist, sondern
fundamentale Anforderungen beschreibt, die in Hinblick auf die Funktionsweise des
Content Management Systems relevant sind, um die effektive Implementierung der
restlichen Funktionen zu gewährleisten. Die folgenden vier Hauptfunktionen von PelzSharp et. al umfassen im Wesentlichen die Funktionen aus der Sichtweise in [Schuster
et al. 2000], wobei die ersten zwei Hauptfunktionen von Pelz-Sharp et. al, Content
Erzeugung und Publikation, die ersten drei Funktionen von Schuster et al.
Funktionen von Content Management Systemen
27
zusammenfassen und die letzten zwei Hauptfunktionen, Content Kontrolle und
Knowledge Management, die letzten drei Funktionen der Sichtweise von Schuster et al.
darstellen. Die letzten drei Hauptfunktionen der oben dargestellten Systematik aus der
Arbeit [Pelz-Sharp et. al 2002b], Integration, Administration und Internationalisierung,
sind wiederum in dieser Form nicht in der Darstellung von Schuster et al. zu finden.
Dies lässt sich dadurch erklären, dass auf die Notwendigkeit dieser Funktionen nicht
direkt aus der Definition von Content Management geschlossen werden kann, sondern
der Einsatz eines CMS in einer großen internationalen Unternehmung eine
Schwerpunktsetzung auf die drei zuletzt erläuterten Funktionen notwendig macht. Im
Rahmen der vorliegenden Arbeit sollen auch diese Funktionen den Kernfunktionen
zugeordnet werden.
Mehrplatzfähigkeit
Check-In
Check-Out
Bearbeitung
Verifikation
Anfragefunktionen
Protokollfunktionen
Verarbeitung
Verwaltung
strukturierte Speicherung
von typisiertem Inhalt
Metainformationen
Zugangskontrolle
Workflow
Fremdformate
Datensicherung
Rollback
Mehrsprachigkeit
Massenoperationen
Aggregierung
Beziehungen
Gestaltung
Versionsverwaltung
Aufzeichnung
atomarer
Änderungen
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Funktion von Content Management [Rothfuss et al. 2001]
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 stellt die Funktionen eines CMS aus der Arbeit [Rothfuss et al.
2001] dar. Diese Sichtweise der Autoren folgt dabei nicht dem Weg, die Funktionen in
einer kompakten Form zu gruppieren, sondern verdeutlicht sämtliche Einzelfunktionen,
welche alle auf einer strukturierten Speicherung von typisiertem Inhalt aufbauen. Diese
strukturierte Speicherung ist vergleichbar mit der postulierten Funktion Content
Organisation aus der Sichtweise von Pelz-Sharp et. al, womit auf die Notwendigkeit
verwiesen wird, fundamentale Funktionen für eine strukturierte Speicherung zur
Verfügung zu stellen. Das Modell von Rothfuss et. al betont zugleich einen wichtigen
Aspekt im Kontext einer strukturierten Speicherung, nämlich die zusätzliche
Anreicherung des Content mit Metainformationen. Eine detaillierte Diskussion der dar-
Funktionen von Content Management Systemen
28
gestellten Funktionen der Autoren Rothfuss et. al ist Schwerpunkt des nachfolgenden
Abschnittes (siehe Kapitel 3.2) und soll daher an dieser Stelle unterlassen werden. Der
detaillierte Überblick, den dieses Modell über den Funktionsumfang eines CMS gibt,
dient jedoch als Basis für die nachfolgende Darstellung.
Aufgrund der in diesem Abschnitt dargestellten Sichtweisen soll eine Systematik
aufgezeigt werden, um sämtliche Funktionen eines CMS einer strukturierten Diskussion
zu unterziehen. Tabelle Error! Use the Home tab to apply Überschrift 1 to the text
that you want to appear here..1 veranschaulicht diese Systematik und zeigt die
identifizierten Kernfunktionen eines CMS. Diese identifizierten Kernfunktionen
beruhen in erster Linie auf der Sichtweise der Autoren Pelz-Sharp et al., welche der
Autor der vorliegenden Arbeit als äußerst kompakt und umfangreich erachtet. Nur die
Funktion Knowledge Management soll in zwei Funktionen aufgespaltet werden,
Information Retrieval und Collaboration, um eine mögliche Verwechslung mit der
eigentlichen Bedeutung des Begriffs Knowledge Management (siehe Kapitel 2.2.3)
vorzubeugen. Mit Information Retrieval soll das effiziente Suchen in Content
berücksichtigt werden und mit Collaboration sollen Aspekte des gemeinsamen
Arbeitens erfasst werden. Die Autoren Pelz-Sharp et al. verwenden den Begriff
Knowledge Management in ihrer Systematik nur, um gewisse Funktionen eines CMS zu
gruppieren, welche unter anderem im Hinblick auf ein effektives Knowledge
Management relevant sein können.
Kernfunktion
[Schuster et al. 2000]
Content Organisation
Erzeugung
Publikation
Content Kontrolle
 Erstellung von neuem Content
 Editieren von bestehendem
Content
 Entwicklung von Templates
Internationalisierung
Aggregierung und Beziehungen
Verwaltung
Bearbeitung und Verifikation
Verarbeitung
 Gestaltung
 Versionsverwaltung
 Aufzeichnung atomarer
Änderungen
 Datensicherung und Rollback
 Check-In und Check-Out
 Zugangskontrolle
 Anfragefunktionen
 Qualitätssicherung und Freigabe
 Workflow
 Mehrplatzfähigkeit
 Fremdformate
 Benutzerverwaltung
 Massenoperationen
 Protokollfunktionen
 Mehrsprachigkeit
Integration
Administration




 Steuerung
Information Retrieval
Collaboration
[Rothfuss et al. 2001]
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Kernfunktionen eines CMS
Funktionen von Content Management Systemen
29
Die Darstellungen in den Arbeiten [Schuster et al. 2000] sowie [Rothfuss et al. 2001]
lassen sich auf die identifizierten Kernfunktionen abbilden, womit die Vollständigkeit
der erarbeiteten Systematik belegt werden soll. Die Gegenüberstellung der Funktionen
der Modelle und eine geeignete Zuordnung wird ebenfalls in Tabelle Error! Use the
Home tab to apply Überschrift 1 to the text that you want to appear here..1
dargestellt. Die Funktionen des Modells in [Rothfuss et al. 2001] lassen sich auf alle
Kernfunktionen übertragen, während die Systematik von [Schuster et al. 2000] nicht
sämtliche Kernfunktionen abdeckt (siehe auch die oben geführte Diskussion zwischen
der Systematik von Schuster et al. und Pelz-Sharp et. al).
3.2
Kernfunktionen
Das Ziel dieses Abschnittes ist es, die in Tabelle Error! Use the Home tab to apply
Überschrift 1 to the text that you want to appear here..1 dargestellten
Kernfunktionen im Detail zu erörtern, um so die Identifikation des nachfolgenden
Anforderungsprofils zu ermöglichen.
3.2.1
Content Organisation
Mit Content Organisation werden sämtliche Funktionen der Content-Speicherung
umfasst, die es den restlichen Funktionen eines Content Management Systems
ermöglichen sollen, effektiv und zielgerichtet mit dem Content arbeiten zu können.
Zunächst wird jene Funktion erörtert, deren Wichtigkeit bereits in der Erläuterung der
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 zum Ausdruck kam (siehe Kapitel 3.1), die Verknüpfung des
Content mit zusätzlichen Attributen bzw. Metadaten. Im Anschluss werden noch
Aspekte der Verlinkung von Content-Komponenten diskutiert, sowie Grundlagen der
Datenhaltung erörtert.
Attribute
Eine der wesentlichsten Merkmale eines CMS ist seine Fähigkeit zur Anreicherung der
verwalteten Content-Objekte mit zusätzlicher Information. Diese Information wird
Attribut bzw. Metainformation genannt, weil sie Information über Informationen
repräsentiert. [Rothfuss et al. 2001] Die Verwendungen von Content-Attributen lassen
sich in drei Kategorien einteilen [Pelz-Sharp et. al 2002b]:

Content effektiver durchsuchen zu können

Den Content mit Regeln zu versehen im Sinn einer Kontrolle über den Content,
z.B. Zugriffsrechte

Den Content mit Status-Informationen zu versehen
Attribute finden sich grundsätzlich in jedem innovativen Content Management System,
es gibt jedoch entscheidende Unterschiede in der Erweiterbarkeit und Flexibilität, mit
der Attribute vom CMS behandelt werden. Grundsätzlich wird zwischen zwei Arten
Funktionen von Content Management Systemen
30
von Metainformationen unterschieden, vordefinierte Metainformationen, die schon vom
Hersteller in das CMS eingebaut sind und benutzerdefinierte Metainformationen, die
der Benutzer des Systems wahlfrei nach seinen Bedürfnissen einrichten kann. [Rothfuss
et al. 2001]
Vordefinierte Attribute stellen sich in zwei großen Gruppen, nämlich in Klassifizierungsinformationen und in Verwaltungsinformationen, dar. Zu den Klassifizierungsinformationen zählen unter anderem Objekttypen, Thema, Zweck oder zugehörige
Schlagwörter. Verwaltungsinformationen sind beispielsweise Bearbeiter, Eigner, Tag
der letzten Änderung oder Status und sind meistens durch eine starke Verknüpfung mit
dem Content Life Cycle charakterisiert, wodurch sie im Regelfall untrennbar in die
Funktionsweise des CMS integriert sind. Die benutzerdefinierten Attribute können
hingegen eine so vielfältige Struktur bzw. Funktion haben, dass man keine generellen
Aussagen über sie treffen kann. Ein leistungsfähiges CMS sollte möglichst flexibel in
der Gestaltung benutzerdefinierter Attribute sein, indem beispielsweise der
Wertebereich eines Attributs eingeschränkt werden kann oder das Vorhandensein eines
Attributes als optional oder verpflichtend definiert werden kann. [Pelz-Sharp et. al
2002b]
Innovative CMS erlauben auch die Definition von Typen, womit ein ganzer Satz von
Attributen verstanden wird, welcher auf Content-Objekte eines bestimmten Typs
angewendet werden kann. Man kann wiederum eine Unterscheidung in vom System
vorgegebene Typen und vom Benutzer selbst spezifizierte Typen vornehmen, wobei
leistungsstarke CMS zusätzlich noch die Möglichkeit bieten, Typen hierarchisch zu
verwalten, womit Vererbungskonzepte, wie sie aus der objektorientierten Programmierung bekannt sind, umgesetzt werden. [Pelz-Sharp et. al 2002b]
Komponenten und Linkmanagement
In der Begriffsbestimmung von Content (siehe Kapitel 2.2.1) wurde bereits jene
Charakteristik erläutert, dass Content aus mehreren Einzelinformationen bzw.
Komponenten zusammengesetzt sein kann. Dieses Konzept lässt sich beispielsweise
anhand einer HTML-Seite verdeutlichen. Die HTML-Seite kann als eine zusammengesetzte Komponente aufgefasst werden und beinhaltet im nichttrivialen Fall mehrere
Bilder, Tabellen, eine Anzahl von Textblöcken oder ein Java-Applet, welche man
wiederum als einzelne Content-Komponenten bezeichnen kann. Eine zusammengesetzte
Komponente, wie die HTML-Seite aus dem eben dargestellten Beispiel, wird auch als
ein Container Objekt bezeichnet. Bei Content-Komponenten hingegen, welche vom
CMS nicht mehr weiter aufgespaltet werden können und daher als Black Box behandelt
werden, spricht man von Inhaltsatomen. [Pelz-Sharp et. al 2002b] [Rothfuss et al. 2001]
Funktionen von Content Management Systemen
31
Folgende Charakteristiken beschreiben das Komponenten-Konzept innerhalb eines
CMS [Rothfuss et al. 2001]:

Ein Container Objekt kann aus Inhaltsatomen, aber auch aus weiteren
Containern zusammengesetzt sein. Komponenten können daher rekursiv ineinander verschachtelt sein.

Ihre Bestandteile speichert die ideale Komponente nicht in sich selbst, vielmehr
verwaltet sie nur Referenzen auf die eigentlichen Objekte.

Die Unterscheidung zwischen Container Objekt und Inhaltsatom ist rein
funktional. Strukturelle Informationen einer Komponente, welche für das CMS
unmittelbar nicht zugänglich sind, können durchaus von einer externen
Applikation verstanden und interpretiert werden.
Die Effektivität dieses Konzepts ist maßgebend von der Leistungsfähigkeit der
Formulierung von Beziehungen zwischen den Komponenten determiniert. Hyperlinks,
wie sie auf HTML-Seiten zum Einsatz kommen, sind das klassische Beispiel zur
Formulierung solcher Beziehungen und verdeutlichen, wie zusammengesetzte
Komponenten entstehen. Hyperlinks an sich sind jedoch sehr unflexibel in ihrer
Anwendungen, da das Konzept der Hyperlinks beispielsweise beim Löschen eines
Objekts ein Aktualisieren entsprechender Links auf dieses Objekt nicht vorsieht, mit der
Konsequenz, dass Hyperlinks auf nicht mehr existierende Objekte verweisen können.
Es ist jedoch die Aufgabe eines innovativen CMS, ein effektives Linkmanagement zu
implementieren, welches auch beim Verschieben und Löschen von Content-Objekten
die Konsistenz der Links bzw. Beziehungen gewährleistet. [Pelz-Sharp et. al 2002b]
[Rothfuss et al. 2001]
Ein vollständiges und konsequentes Linkmanagement ist natürlich nur dann möglich,
wenn das CMS die Kontrolle über den Content hat und ist daher nur innerhalb des
Systems durchgängig realisierbar. Referenzen zu externen Quellen können jedoch durch
regelmäßige automatisierte Überprüfungen auf Gültigkeit getestet werden und helfen so
den Administratoren des Systems, für die Aktualität sämtlicher Links zu sorgen. [PelzSharp et. al 2002b]
Datenhaltung
Die Datenhaltung bei Content Management Systemen kann zum Teil sehr komplexe
Formen annehmen, um die in diesem Abschnitt diskutierten Konzepte wie Attribute und
Komponenten zu implementieren. Aufgrund dieser Komplexität und aus Gründen einer
sicheren und dauerhaften Datenablage ist die Verwendung eines Datenbankmanagement-Systems (DBMS 1 ) anzuraten. Konzepte wie Systemsicherheit, Datensicherheit
oder Skalierbarkeit sind in solchen Systemen zumeist integriert und fallen so nicht in
den Aufgabenbereich von CMS. Beim Einsatz der Datenbank hat der Entwickler die
Wahl, entweder auf größtmögliche Flexibilität und Unabhängigkeit zu setzten oder aber
1
Database Management System
Funktionen von Content Management Systemen
32
eine spezielle Plattform zu bevorzugen und möglichst viele ihrer Funktionen
auszunutzen. Es ist jedoch ratsam, bei der Anbindung eines CMS an eine Datenbank auf
die Verwendung offener Standards zu achten, um so die Programmierung und den
Einsatz des CMS möglichst unabhängig von dem schlussendlich verwendeten DBMS
zu gestalten. Das Ausnutzen spezifischer Funktionen der DBMS kann zwar
Performance Vorteile mit sich bringen, Unabhängigkeit und offene Standards
erleichtern jedoch die Integration des Systems an den unterschiedlichen Einsatzorten.
[Krüger et al. 2002]
Die meisten Systeme legen den Content in relationalen Datenbanken ab, vereinzelt
kommen auch objektorientierte Datenbanken zum Einsatz. Letztere leiden noch immer
unter dem entscheidenden Nachteil der Performance, haben aber den Vorteil, dass sich
der Gedanke der Objektorientierung auch in der Datenbank fortsetzt, was bei der
Programmierung von Content Management Systemen ein Vorteil sein kann. Diese
Aspekte sind jedoch hauptsächlich für die Entwickler bzw. Administratoren des CMS
von Bedeutung und bleiben dem Endwender zumeist verborgen. [Krüger et al. 2002]
[Jablonski et. al 2002] In diesem Zusammenhang sei auch auf die Entwicklung neuer
XML Datenbanken verwiesen, deren Bedeutung durch die innovativen Möglichkeiten
beim Einsatz von XML im Kontext von Content Management Systemen immer
wichtiger wird (siehe Kapitel 4.1.1).
Problematisch, insbesondere bei Datenbankmanagement-Systemen, erweist sich das
Ablegen von großen Objekten, wie Bilder, Töne und Videos. Deswegen haben sich
auch Hybridformen etabliert, welche aus einer Kombination von Datenbank und dateisystembasierten externen Dateien bestehen. Die Datenbank kontrolliert dabei den
Zugriff auf die zumeist multimedialen externen Dateien. Es sei jedoch darauf
verwiesen, dass durch diese Vorgehensweise die zu Anfang dieses Abschnittes bereits
erläuterten Vorteile eines DBMS, wie Datensicherheit oder Skalierbarkeit, durch das
Einbeziehen externer Dateien zum Teil verloren gehen. Das Ablegen sämtlicher Daten
in einem Datenbankmanagement-System ist daher vorzuziehen, was von modernen
DBMS bereits unterstützt wird, wobei allerdings mit einem deutlich höheren
Ressourcenbedarf zu rechnen ist. [Rothfuss et al. 2001]
3.2.2
Erzeugung
Ein Content Management System soll den Anwendern komfortable Möglichkeiten
bieten, neuen Content in das System einzubringen bzw. Content zu bearbeiten, wobei
das CMS zwangsläufig die Anatomie des Content (siehe Kapitel 2.3.1) berücksichtigen
sollte. Neuer Content soll in einer Form in das System eingebrachte werden, in der ein
maschinelles Unterscheiden der drei wesentlichen Einzelinformation von Content –
Struktur, Darstellungsform und Inhalt – möglich ist. Die Struktur liegt beispielsweise in
Form einer Document Type Definition oder eines Datenbankschemas vor und ein
Editiertool greift darauf zu, um ein entsprechendes Formular aufzubauen und so das
Ändern, Neuerstellen und Löschen von Content zu ermöglichen. [Jablonski et. al 2002]
Funktionen von Content Management Systemen
33
Die Publikation von Content erfolgt idealerweise über Templates, welche die
anwendungsspezifische Visualisierung des Content ermöglichen, sofern die maschinelle
Erfassbarkeit der Anatomie des Content gegeben ist. In der Arbeit von [Gruhn et al.
2000] wird jedoch darauf hingewiesen, dass durch Templates leider allzu oft eine
Vermischung von Struktur und Darstellung erfolgt. Dies äußert sich meist dadurch, dass
der Content in derselben Darstellungsform eingebracht und gepflegt wird, wie er auch
publiziert wird. Eine fortschrittliche Form der Contentpflege bedeutet allerdings, dass
die Inhalte völlig unabhängig von ihrem Layout verändert werden können. Das
Template soll nur für ein gewisses Ausgabemedium festlegen, welche Informationen
dargestellt werden sollen und wie sie formatiert werden. Diese klaren Grenzen werden
jedoch nicht von allen Content Management Systemen eingehalten und äußern sich
dadurch, indem man um strukturelle Änderungen vorzunehmen, ein Template
modifizieren muss. [Gruhn et al. 2000]
Es lassen sich zwei Klassen von Werkzeugen zum Editieren des Content unterscheiden,
nämlich browserbasierte und anwendungsspezifische Clients. Ersteres ist zu
bevorzugen, da es die Administrationskosten für die Clientrechner senkt und den
Zugriff von beliebigen Rechnern mit Internetanbindung ermöglicht. [Jablonski et. al
2002] Grundsätzlich kann ein CMS zur Bearbeitung von Content auch ein externes
Bearbeitungsprogramm integrieren. Dabei verliert aber meistens das CMS die Kontrolle
über die Bearbeitungsschritte und Funktionalitäten wie Protokollierung oder Roll Back
gehen verloren. Die Alternative ist die Implementierung eines eigenen Editors, was
allerdings bei einer Unterstützung mehrere Datenformate nicht immer zielführend ist.
Als Brücke zwischen den Applikationen wird häufig ein gemeinsames Datenformat
benutzt, beispielsweise XML, RTF oder PDF. Das CMS übergibt bei dieser
Vorgehensweise die Inhalte an den externen Editor und erhält sie nach Bearbeitung
wieder zurück. Anschließend analysiert es die Änderungen und sorgt für die Konsistenz
innerhalb des CMS. [Rothfuss et al. 2001]
3.2.3
Publikation
Für die Publikation eines Content Management Systems ist es wichtig, ein und
denselben Content in möglichst unterschiedlichen Formen für unterschiedliche Medien
aufzubereiten. Dies geschieht in der Regel durch die Definition verschiedener
Templates, die den Content je nach Anforderung unterschiedlich visualisieren (siehe
auch Kapitel 3.2.2). In der heutigen Zeit überwiegen die elektronischen Medien, wobei
die Publikation im Internet bzw. Intranet eine sehr bedeutende Rolle einnimmt. Die
Bedienung des Mediums Papier ist aber immer noch von Relevanz und verlangt eine
Aufbereitung des Content, sodass er auch für den Druck geeignet ist [Pelz-Sharp et. al
2002b]. Die Anforderungen an eine Publikation auf Websites sind durch eine
zunehmend individualisierte Darstellung für die Benutzer charakterisiert, wodurch sich
die Notwendigkeit ergibt, dies durch eine eigene Personalisierungsfunktion innerhalb
des CMS zu berücksichtigen.
Funktionen von Content Management Systemen
34
Eine Personalisierung auf Websites ist insbesondere im Front-Office Bereich von
Bedeutung, um den präsentierten Content den Präferenzen der Benutzer anzupassen.
Der Vorgang der Personalisierung kann in die drei Bestandteile „Profiling und
Tracking“, „Matchmaking“ und „Channeling“ unterteilt werden. Unter Profiling
versteht man das Sammeln von Nutzerdaten, wobei eine Identifikation des Benutzers
gegeben sein muss. Interessante Nutzerdaten wären zum Beispiel, welche Bereiche der
Website besonders oft betrachtet wurden oder nach welchen Begriffen innerhalb der
Site gesucht wurde. Die so gesammelten Daten bilden das Profil des Benutzers und
werden anschließend mit dem vorhandenen Content verglichen („Matchmaking“).
Schließlich kann dem Benutzer passender Content präsentiert werden, sofern der
Benutzer vom System authentifiziert ist. Idealerweise biete ein CMS auch
Möglichkeiten zur manuellen Pflege und Betreuung der identifizierten Nutzerprofile.
[Jablonski et. al 2002] [Gruhn et al. 2000]
3.2.4
Content Kontrolle
Um beispielsweise Workflow oder Collaboration zu ermöglichen, bedarf es Funktionen,
die es erlauben, Content kontrolliert zu behandeln. Diese benötigten Funktionen sollen
im folgenden Abschnitt erörtert werden.
Zugriffskontrolle
Durch eine Zugriffskontrolle soll der Content innerhalb des CMS einerseits vor einem
unerlaubten Zugriff geschützt und andererseits soll für registrierte Benutzer des Systems
geregelt werden, wer mit dem Content was machen darf. Die Zugriffskontrolle
innerhalb eines Content Management Systems ist zumeist wesentlich feiner, als sie
beispielsweise durch ein Betriebssystem gegeben ist. Dies begründet sich wie folgt
[Pelz-Sharp et. al 2002b]:

Ein innovatives CMS vergibt auch Rechte auf Funktionen, wie zum Beispiel
Versionierung oder Check-Out.

Das Rechtesystem unterscheidet zumeist auch zwischen Attributen und dem
eigentlichen Content.

Zusammengesetzte Content-Komponenten können durch verschiedene Zugriffsrechte der einzelnen Komponenten charakterisiert sein.
Die Implementierung einer Zugriffskontrolle setzt natürlich eine Benutzerverwaltung
voraus, um die Benutzerrollen (z.B. Ersteller), Benutzergruppen und Benutzer
anzulegen und mit den entsprechenden Rechten zu assoziieren. Das CMS sollte, um
seine Benutzer nicht mit unnötigen Informationen zu konfrontieren, einem Benutzer
immer nur jenen Content und Funktionen anbieten, die mit den bestehenden
Benutzerrechten tatsächlich zugänglich sind. Content Management Systeme sollten
grundsätzlich möglichst intuitiv und flexibel in der Vergabe der Rechte sein. Die Rechte
sollten zum einen in jeder möglichen Kombination anwendbar sein, aber es macht
beispielsweise auch keinen Sinn, einen Content löschen zu dürfen, wenn man ihn nicht
Funktionen von Content Management Systemen
35
einmal ansehen darf. Das Rechtesystem eines CMS sollte aber nicht in einer
Komplexität ausarten, in der die Nachvollziehbarkeit für den Anwender zur
Herausforderung wird. [Pelz-Sharp et. al 2002b] [Rothfuss et al. 2001]
Die Zugriffskontrolle eines CMS ist natürlich immer nur so gut wie die Authentifikation
der Benutzer gegenüber dem System, womit sich die Notwendigkeit für entsprechend
sichere Mechanismen der Authentifikation ergibt. Innovative CMS sollten auch weitere
Sicherheitsaspekte, wie Möglichkeiten zur verschlüsselten Übertragung oder eine
Einschränkung des Benutzerkreises anhand von zulässigen IP Adressen implementieren.
Innerhalb einer Unternehmung müssen sich die Mitarbeiter neben dem CMS zumeist an
weiteren Systemen anmelden. Um unnötige doppelte Anmeldungen zu vermeiden und
somit ein „Single Sign-on“ zu ermöglichen, sollte es eine Unterstützung für Directory
Services gegeben. Das Lightweight Directory Access Protocol (LDAP) ist in diesem
Zusammenhang ein verbreiteter Standard und sollte von innovativen CMS unterstützt
werden. [Jablonski et. al 2002]
Check-In und Check-Out
Unter dem Aspekt der Mehrplatzfähigkeit sind Mechanismen nötig, welche den Content
vor einer gleichzeitigen Bearbeitung von mehreren Personen schützen. Dazu ist ein
Check-In und Check-Out Mechanismus notwendig, der es erlaubt, einen bestimmten
Content zur Bearbeitung zu reservieren. Der Content wird durch ein Check-Out
markiert und kann weiterhin von jedem Benutzer, mit den entsprechenden Rechten,
betrachtet werden, er ist jedoch vor jeder Modifikation geschützt, außer durch jenen
Benutzer, welcher den Check-Out initiiert hat. Ist der Benutzer mit seinen Veränderungen fertig, wird der Content durch ein Check-In wieder freigegeben. [Jablonski et. al
2002]
Alternativ dazu könnte ein bestimmter Content auch temporär gesperrt werden. Der
Vorteil von Check-In und Check-Out ist allerdings die Asynchronität des Verfahrens.
Ein ausgecheckter Content kann unabhängig vom CMS bearbeitet werden. Dagegen ist
Sperren ein synchroner Prozess, der Benutzer muss also während der Dauer des
Bearbeitens am System angemeldet sein. [Rothfuss et al. 2001] Manche Content
Management Systeme erlauben auch ein mehrfaches Check-Out, was jedoch mehrfache
Veränderungen unterschiedlicher Autoren an ein und demselben Content zur Folge
haben kann. In diesem Fall muss das System umfangreiche Vergleichs- und
Vereinigungsfunktionen bereitstellen, um mit eventuellen parallelen Veränderungen
richtig umgehen zu können. [Pelz-Sharp et. al 2002b]
Versionierung
Wie im Rahmen der Diskussion des Content Life Cycle (siehe Kapitel 2.3.2) gezeigt
wurde, durchlaufen die Inhalte eine Entwicklung bei der sie veraltern, überarbeitet und
schließlich archiviert werden. Ein CMS muss daher Content in verschiedenen Versionen
verwalten können, wobei das Anlegen einer neuen Version zumeist mit einem CheckIn verbunden ist. Content Management Systeme unterscheiden sich jedoch in der
Funktionen von Content Management Systemen
36
Strenge mit der Versionen angelegt werden. In der striktesten Variante gibt es kein
Überschreiben bestehender Versionen, jede Änderung impliziert eine neue Version. Es
soll auch die Möglichkeit einer Roll-Back Funktion geben – ein Zurückschalten auf
vorausgegangenen Content. Ein Rollback kann dabei mehr oder weniger granular
implementiert sein, vom globalen Zurückdrehen aller Änderungen zu einem bestimmten
Zeitpunkt der Bearbeitung bis hin zu atomaren Änderungen an genau bestimmten
Teilobjekten. Die Granularität ist aber höchstens so groß wie die verfügbaren
Protokolldaten. Im Extremfall müsste eine Protokollierung jeder atomaren Interaktion
mit der Datenhaltung, zusammen mit Datum, Zeit und Benutzer, erfolgen. [Rothfuss et
al. 2001] [Jablonski et. al 2002]
Verschiedene Funktionalitäten haben sich im Bereich der Versionierung bereits
etabliert, welche sich in einem CMS sinnvoll einsetzen lassen. Dies wäre zum Beispiel
der im vorherigen Abschnitt bereits erläuterte Check-In und Check-Out Mechanismus,
welcher für die Arbeit im Team nahezu unerlässlich ist. Ein weiteres Konzept wären
Labels, worunter eine logische Gruppierung verstanden wird, die Versionsstände
unterschiedlicher Dateien zusammenführen soll. Dies ist beispielsweise von Relevanz,
wenn nicht immer die aktuellsten Versionen des Content publiziert werden sollen,
sondern auch alternative Varianten angeboten werden sollen, welche sich aus ContentKomponenten unterschiedlicher, teilweise bereits überarbeiteter Versionen,
zusammensetzten.[Pelz-Sharp et. al 2002b]
Hilfreich kann auch das Branching sein, worunter die Möglichkeit verstanden wird, aus
einer Ursprungsversion mehrere unterschiedliche Entwicklungszweige zu eröffnen.
Dementsprechend macht das Branching auch Mechanismen zum Zusammenführen der
in den einzelnen Zweigen erstellten Änderungen notwendig. Sinnvoll wäre auch eine
Schnittstelle der Versionisierungskomponente nach außen hin. In diesem
Zusammenhang sei beispielsweise das Web-based Distributed Authoring and
Versioning2 (WebDAV) Protokoll erwähnt, eine standardisierte Erweiterung des HTTP
Protokoll, mit dem Ziel, das gemeinschaftliche Editieren und Verwalten von
Dokumenten auf einem Web Server zu ermöglichen. [Voigt 2001]
Archivierung
Im Rahmen der Diskussion des Content Life Cycle (siehe Kapitel 2.3.2) sowie der
Versionierung im obigen Abschnitt, wurde bereits der Begriff Archivierung erwähnt.
Die Anforderungen an eine effektive digitale Archivierung sind jedoch weitaus
komplexer, als das man Archivierung als Teilfunktion einer Versionierungskomponente
abhandeln könnte. Grundsätzlich dient die digitale Archivierung der langfristigen,
sicheren und authentischen Speicherung von Daten, Informationen, Dokumenten oder
Content. Unter langfristig versteht man in diesem Zusammenhang zumindest einen
Zeitraum von 10 Jahren. Der wesentliche Aspekt am Archivieren ist, das wichtiger
Content in einer Form abgelegt wird, in der es sichergestellt ist, dass der langfristige
2
Siehe http://www.webdav.org/
Funktionen von Content Management Systemen
37
Zugriff auch in Zeiten ständiger Technologiewechsel und Weiterentwicklungen
gewährleistet ist. [Prenn et al. 2002] [Kampffmeyer 2003]
Diese Anforderungen bedeutet weit mehr, als nur eine weitere Version eines Content
innerhalb des CMS anzulegen. Archivierter Content liegt idealerweise in einer Form
vor, in der ein langfristiger Zugriff auf den originalgetreuen Inhalt und dessen
Formatierung, auch ohne den Einsatz eines speziellen CMS möglich ist. Eine
Archivierung muss eine möglichst gute Interoperabilität aufweisen, um mit
existierenden und zukünftigen Technologien möglichst gut zusammenarbeiten zu
können. [Prenn et al. 2002] [Kampffmeyer 2003]
Bedingt wird eine anspruchsvolle Archivierung nicht nur durch ökonomische
Überlegungen, um Content, welcher zum Teil mit erheblichen Kostenaufwand erstellt
wurde, für die Unternehmung in einer sichern Art und Weise abzulegen, sondern auch
immer mehr durch gesetzliche Verpflichtungen. Das Archivieren und Bereitstellen
steuerrelevanter Informationen beispielsweise, wird in Deutschland durch die
„Grundsätze zum Datenzugriff und zur Prüfbarkeit digitaler Unterlagen 3 “ (GDPdU)
geregelt [Prenn et al. 2002]. Die Implementierungstiefe einer Archivierungsfunktion
innerhalb des CMS kann unterschiedlich gestaltet sein, beispielsweise in der Frage, ob
archivierter Content überhaupt noch durch das CMS zugänglich bzw. auffindbar ist oder
komplett getrennt vom CMS archiviert wird. Aufgrund der Komplexität dieser Funktion
könnte es auch zweckmäßig sein, diese Funktion in eine eigene Komponente
auszulagern oder sogar durch die Integration eines zusätzlichen externen Systems
abzudecken.
3.2.5
Information Retrieval
Entscheidend für die Effizienz eines Content Management Systems ist nicht nur, in
welchem Umfang das CMS seinen Content strukturieren und kontrollieren kann,
sondern in welchem Ausmaß der verwaltete Content auch wieder auffindbar ist.
Innovative CMS sollen effektive Suchalgorithmen auf der Basis des Content, seiner
Attribute und Struktur bieten und dabei dem Endanwender eine möglichst große
Flexibilität anbieten [Koop et al. 2001] [Pelz-Sharp et. al 2002b]. Die Betrachtungen in
diesem Abschnitt konzentrieren sich ausschließlich auf textuelle Suchen. Heutige CMS
müssen jedoch in immer größerem Umfang mit multimedialen Content umgehen,
wodurch sich auch weitaus umfassendere Ansprüche an die Suchalgorithmen ergeben
(siehe Kapitel 4.2.3).
Bereits eine reine Textsuche kann zu durchaus komplexen Problemstellungen führen.
So sind beispielsweise Inhalte in verschiedenen Sprachen oder das Problem der
Mehrdeutigkeit vieler Begriffe oft der Grund, warum ein passender Content nicht
gefunden wird. Ein sogenannter Stemmer kann für die genannte Problemstellung einen
Lösungsansatz bieten, indem für eine Sprache jede deklinierte oder konjugierte
3
Siehe http://www.bundesfinanzministerium.de/Anlage8440/BMF-Schreiben-vom-16.07.01.pdf
Funktionen von Content Management Systemen
38
Wortform auf ihren Ursprung zurückgeführt wird (aus „gefeuert“ würde z.B. „feuern“).
Für Englisch gibt es gut funktionierende Stemmer Algorithmen, für Deutsch und viele
andere Sprachen ist jedoch aufgrund der teilweise sehr komplexen Grammatik der
einzelnen Sprachen ein einwandfreies Umsetzen dieser Problemstellung nicht leicht
möglich. [Koop et al. 2001] [Pelz-Sharp et. al 2002b]
Hingegen könnte man ein Synonymverzeichnis für jede Sprache anlegen um so
beispielsweise Wörter zu definieren, welche in einem bestimmten Zusammenhang die
gleiche Bedeutung haben. Eine Suche könnte dadurch auf gewisse Wörter ausgeweitet
werden (z.B. „senkrecht“ – „vertikal“ oder „Fahrstuhl“ – „Lift“). Ein Übersetzungsverzeichnis für zwei oder mehrere Sprachen kann auch sinnvoll sein, um zum Beispiel
festzulegen, dass „Kanada“ und „Canada“ dasselbe bedeuten. Bei Textsuchen kommen
auch öfters Stop-Listen zum Einsatz, also Wörter, die übergangen werden, weil sie in
der Regel nur wenig brauchbare Informationen beinhalten. Im Deutschen sind das
Wörter wie „der, die, das, als, aber, eben, war, nicht“. Es ist allerdings wichtig, diese
Listen für jede Sprache getrennt zu erstellen, sonst gibt es zum Beispiel im englischen
Text keinen Krieg mehr („war“). Kommen in einem CMS eine oder mehrere der eben
genannten Methoden zum Einsatz, so sollte darauf geachtet werden, dass die zugrunde
liegenden Listen bzw. Verzeichnisse im Nachhinein vom Endanwender modifiziert
bzw. erweitert werden können. [Koop et al. 2001] [Pelz-Sharp et. al 2002b]
Erfolgreiches Suchen hat auch viel mit den Erwartungen und Erfahrungen des
Benutzers zu tun und dies sollte sich im Suchformular des Systems widerspiegeln. Es ist
daher oftmals zielführend, dem Endanwender eine einfache und eine erweiterte Suche
anzubieten. Letzteres ist zumeist dadurch charakterisiert, dass die Möglichkeit von
booleschen Verknüpfungen geboten wird oder ein gezieltes Suchen in Attributen
unterstützt wird. Die Präsentation der Suchergebnisse sollte sich ebenfalls an den
Erwartungen des Benutzers richten. Gerade bei einer strukturierten ContentSpeicherung könnte man die gefundenen Inhalte mittels Attribute gleich besser
auszeichnen oder Filtermöglichkeiten zur Verfügung stellen, um das gefundene Resultat
nach weiteren Kriterien einzuschränken. [Rosenfeld et al. 1998] Die Zugriffskontrolle
eines CMS soll natürlich auch von der Suche berücksichtigt werden und daher keinen
Content als Suchergebnis liefern, den der Benutzer nach dem vorliegenden
Rechteschema nicht einmal betrachten darf. [Pelz-Sharp et. al 2002b]
3.2.6
Collaboration
Die einzelnen Prozessschritte des Content Management verlangen ein Zusammenarbeiten unterschiedlicher Personen in unterschiedlichen Rollen. Um eine zielgerichtete
Ausführung der Prozessschritte zu gewährleisten, kann die Planung sowie Kontrolle der
Prozesse durch eine Workflow Komponente als essentielle Funktion eines Content
Management Systems angesehen werden. Möglichkeiten der Kommunikation zwischen
den beteiligten Anwendern des CMS erleichtern zudem das gemeinsame Arbeiten.
Funktionen von Content Management Systemen
39
Diese beiden Aspekte, Workflow und Kommunikation, sollen im folgenden Abschnitt
erörtert werden.
Workflow
Die Workflow Komponente unterstützt die Abwicklung der Anwendungsprozesse und
damit die Einhaltung des Content Life Cycle, welche dem Content Management zu
Grunde liegen. Aus Sicht des Workflow Management lassen sich keine neuen Ansätze
gewinnen, es bedarf eher einer konsequenten Umsetzung vorhandener Workflow
Konzepte innerhalb des CMS. Idealerweise bildet eine vollständige Abbildung der
Organisationstruktur innerhalb einer Unternehmung die Basis für eine vernünftige und
effektive Steuerung der Prozesse durch eine Workflow Komponente. Der einfachste
Ansatz wäre, alle Mitarbeiter mit ihren Aufgaben und Rechten einzeln zu erfassen. Bei
größeren Projekten würde dies allerdings zu einem unüberschaubaren Datenverwaltungsaufwand führen, weshalb in der Praxis die Konzepte Gruppe und Rolle zum
Einsatz kommen, welche abstrakte Aufgabenträger darstellen. Unter einer
Rollenbasierung wird die funktionale Beschreibung des Profils durch Angabe von
Aufgaben verstanden, Gruppen dienen der Zusammenfassung von Benutzern mit
ähnlichem Profil. [Jablonski et. al 2002]
Die identifizierten Anwendungsprozesse müssen in Workflow Schemata überführt
werden, welche von der Workflow Komponente des CMS ausgeführt werden können.
Die Definition von Workflow Schemata äußert sich bei verschiedenen CMS mit
unterschiedlicher Flexibilität. Die einfachste Möglichkeit ist ein starres Schema,
welches direkt in die Applikation integriert ist. Solch ein Workflow Management, wenn
man es überhaupt als solches bezeichnen kann, äußert sich zumeist nur in einer
Zustandsänderung des Content durch eine vorgegebene Manipulation entsprechender
Attribute. [Jablonski et. al 2002] Gibt es keine Möglichkeit, Workflows zu
manipulieren, geschieht eher eine Anpassung der Geschäftsprozesse an das System,
wovon jedoch in der Arbeit [Koop et al. 2001] entschieden abgeraten wird, da so nur
das kreative Potenzial innerhalb der Unternehmung brach liegt.
Wesentlich sinnvoller ist es, wenn die Möglichkeit besteht, mit einfachen grafischen
Werkzeugen neue Workflows zu definieren. Am Monitor modelliert man, wer den
Content produziert und wer den Content in welcher Aufbereitung benötigt. Die
Workflow Komponente innerhalb des CMS gewährleistet, dass der richtige Content
beim richtigen Anwender auch zur richtigen Zeit verfügbar ist. Die Synchronisation
aller Teilnehmer im gesamten Prozess ermöglicht zielgerichtetes und autonomes
Handeln. [Dreyer 2000] Ein Beispiel, welches den Bedarf an flexiblen Modellierungswerkzeugen gut verdeutlicht, wären unterschiedliche Freigabeverfahren. Kontroll- und
Freigabeverfahren beeinflussen die Qualität des Content und so sollten sich je nach
angestrebtem Qualitätslevel unterschiedliche Vorgehensweisen modellieren lassen.
In der Arbeit [Krüger et al. 2002] wird ein lineares und ein paralleles Freigabeverfahren
erläutert. Bei einer linearen Freigabe wird eine Kette von Personen befragt, ob ein
Funktionen von Content Management Systemen
40
Content freigegeben werden kann, beim parallelen Verfahren werden zwei oder mehrere
Begutachter definiert, wobei zur Freigabe die Bestätigung beispielsweise eines
Begutachters ausreichen kann. Bei der Modellierung von Prozessen sollte man auch
festlegen können, welche Aktivitäten gleich automatisch vom System erledigt werden,
zum Beispiel eine Versionierung nach der Freigabe oder eine Archivierung nach einer
Veröffentlichung. [Koop et al. 2001]
Kommunikation
Content Management Systeme, welche sämtliche in diesem Kapitel identifizierten
Kernfunktionen erfüllen, bieten zugleich eine Grundlage für gemeinschaftliches
Arbeiten. Dies wird beispielsweise ermöglicht durch eine durchgängige Content
Kontrolle mittels Check-In und Check-Out oder Versionisierungsmechanismen.
Interessant für ein effektives Zusammenarbeiten bzw. die Bewältigung prozessorientierter, arbeitsteiliger Aufgaben sind jedoch auch Möglichkeiten des Informationsaustausches bzw. der Kommunikation aller Beteiligten, zu welchem Zweck sich bereits
mehrere Konzepte etabliert haben, wie Diskussionsforen, Chat, Email oder FAQ
(Frequently Asked Questions). Diese komplexeren Ansätze, ein Umfeld für das
Zusammenarbeiten zu schaffen, werden jedoch eher den Portal-Lösungen zugeschrieben
(siehe Kapitel 4.2.2), sollten aber auch von innovativen Content Management Systemen
unterstützt werden.
Eine Integration von Email Systemen in das CMS sei jedoch an dieser Stelle als
besonders zweckmäßig hervorgehoben. Das CMS kann die Emails als weitere ContentObjekte in einem Ausmaß verwalten und archivieren, wie es Standard Email Clients
zumeist nicht unterstützen. Bedingt durch die zunehmende Bedeutung von Emails, nicht
nur als Kommunikationsmittel zwischen Arbeitskollegen sondern auch zwischen
Kunden oder Geschäftspartner, wird es immer bedeutsamer, die zum Teil äußerst
wichtigen und verbindlichen Inhalte der gesendeten und empfangenen Emails auf
längere Zeit zu archivieren. Des Weiteren kann das CMS das Email System nutzen, um
Beteiligte von anstehenden Aufgaben, wie sie sich beispielsweise aus dem Workflow
ableiten lassen, zu informieren. Sinnvollerweise geben solche Emails nicht nur einen
Hinweis auf eine anstehende Arbeit, sondern beinhalten zugleich einen Link, um den
Benutzer direkt zum betroffenen Content innerhalb des CMS zu verweisen. [Pelz-Sharp
et. al 2002b]
3.2.7
Integration
Kaum ein CMS kann „Out-of-the-box“ an seinem Einsatzort installiert und verwendet
werden. Um den komplexen Ansprüchen der Unternehmungen gerecht zu werden, sind
zumeist spezifische Anpassungen notwendig, wobei zwischen zwei Aspekten
unterschieden werden kann. Einerseits können Anpassungen direkt am Content
Management System notwendig sein, andererseits muss das CMS in bestehende
Systeme integriert oder an Datenquellen angepasst werden.
Funktionen von Content Management Systemen
41
Der erste Aspekt, Anpassungen am CMS selbst, kann in Umfang und Implementierungstiefe durchaus variieren, wobei natürlich eine größtmögliche Flexibilität
wünschenswert wäre. Allerdings sei darauf verwiesen, dass umfangreiche Anpassungsmöglichkeiten zumeist mit einer entsprechenden Komplexität verbunden sind, welche
sich in einer kosten- und zeitintensiveren Einführungsphase auswirken können.
Grundsätzlich sollte es immer möglich sein, die Benutzeroberfläche des Systems
individuell zu gestalten, um so beispielsweise das Vokabular der Dialoge an den
Sprachgebrauch der Unternehmung anzupassen. Innovative CMS sollten bereits
dokumentierte Entwicklungsrichtlinien anbieten, die es Administratoren bzw.
Programmierern erlauben, die Funktionalität des CMS der spezifischen Umgebung
anzupassen bzw. zu erweitern. Idealerweise stellt der Hersteller des CMS auch
Application Programming Interfaces (APIs) zur Verfügung, welche Routinen und
Objekte bereitstellen, die durch unterschiedliche Programmiersprachen genutzt werden
können und es ermöglichen, sämtliche Funktionen des CMS zu nutzen, wie sie auch
über alternative Wege nutzbar wären. [Rothfuss et al. 2001] [Jablonski et. al 2002]
Entscheidet sich eine Unternehmung für den Einsatz eines Content Management
Systems, so existieren häufig schon große Mengen an Daten, welche in das neue System
importiert oder integriert werden sollen. Im Falle eines Imports sollen die Daten
vollständig in die Kontrolle des CMS übergeben werden und nur mehr vom CMS
verwaltet werden. Die Leistungsfähigkeit eines Imports ist in erster Linie davon
abhängig, ob sich in den Importdaten eine klare Trennung von Struktur, Inhalt und
Darstellung erkennen lässt und diese Trennung vom CMS übernommen werden kann 4.
Da kein CMS mit allen Datenformaten umgehen kann, muss auch eine Fremdformatwandlung möglich sein. Der Import erfolgt dann mittels eines sogenannten Parser,
welcher das Fremdformat in eine Form umwandelt, wie sie vom CMS bestmöglich
interpretiert werden kann. [Rothfuss et al. 2001] [Jablonski et. al 2002]
Ein CMS soll natürlich auch Exportmöglichkeiten zur Verfügung stellen, zu welchem
Zweck zumeist Transformationssprachen verwendet werden, welche eine relativ
flexible Umwandlung von Content in eine Auszeichnungssprache ermöglichen.
Entscheidend für die Leistungsfähigkeit eines Imports bzw. Exports ist, ob die
Zielsprache alle Eigenheiten der Quellsprache wiedergeben kann. Im Falle des Imports
muss also das interne Format des CMS die Eigenheiten des Importformats wiedergeben
können, im Falle des Exports das Exportformat die Eigenheiten des CMS. [Rothfuss et
al. 2001] [Jablonski et. al 2002]
Bei der Installation von Content Management Systemen müssen diese oft in bestehende
IT Umgebungen integriert werden. Nicht immer ist es möglich, alte Datenbestände
einfach in das CMS zu importieren und die alten Systeme durch das CMS zu ersetzten.
Vorliegende Anforderungen verlangen auch oft einen Parallelbetrieb zwischen Altsystemen und dem Content Management System. Existierende Altsysteme müssen
4
An dieser Stelle sei auf XML und dessen gute Eignung als Import und Export Format verwiesen (siehe
Kapitel 4.1.1).
Funktionen von Content Management Systemen
42
zumeist über Schnittstellen in das CMS integriert bzw. angebunden werden. Solche
Schnittstellen können in der Regel sehr komplex werden und verlangen fast immer eine
individuelle Anpassung an die Gegebenheiten im Einsatzbereich. [Koop et al. 2001]
Um aktuellen Content anbieten zu können, sind neben den manuellen Importmöglichkeiten Verfahren gefragt, die einen automatisierten Austausch von Content
erlauben. Dieser Prozess der Mehrfachverwendung von Inhalten wird als Content
Syndication bezeichnet. Ziel dabei ist die Verwendung von Inhalten, die vom
Herausgeber nicht selbst redaktionell erarbeitet, sondern zugekauft werden. [Jablonski
et. al 2002] Information Content Exchange 5 (ICE) ist ein Protokoll, das den
kontrollierten Austausch und das Management elektronischer Assets zwischen
vernetzten Partner erleichtert. Möchte man mit dem CMS Content Providing oder
Content Syndication betreiben, so sollte das CMS mit ICE umgehen könne, betonen die
Autoren in [Koop et al. 2001]. Die Wichtigkeit dieses Themas wird auch durch
zahlreiche Entwicklungen weiterer Standards verdeutlicht, wie beispielsweise Open
Content Syndication6 (OCS), RDF Site Summary7 (RSS) oder Internet Open Trading
Protocol8 (IOTP). [Leisi 2000]
3.2.8
Administration
Die Produktivität eines CMS wird auch entscheidend durch seine Möglichkeiten der
Administration bzw. Wartung beeinflusst. Eine umfangreiche und komfortable
Administration sollte folgende Funktionen bieten [Krüger et al. 2002] [Pelz-Sharp et. al
2002b] [Rothfuss et al. 2001] [Jablonski et. al 2002]:

Backup: Ein entscheidender Faktor von Content Management Systemen ist den
Content gegen Datenverlust zu schützen. Methoden für ein effektives Backup
sind daher essentiell. Ein Backup soll den gesamten Content mitsamt allen
Attributen in einem konsistenten Zustand sichern, wobei viele Systeme während
des Vorgangs des Sicherns Offline gehen müssen, um die Konsistenz zu
gewährleisten. Gerade bei Content Management Systemen, welche im intensiven
Einsatz sind, soll ein Backup auch während des Online Betriebs möglich sein.
Bei sehr komplexen Systemen wäre es auch vorteilhaft, die Möglichkeit zu
haben, nicht immer den gesamten Bestand sichern zu müssen, sondern nur
ausgewählte Bereiche.

Verteilte Administration: Bei sehr umfangreichen Content Management
Systemen mit vielen Benutzern sollte es die Möglichkeit der Subadministration
geben, sodass die Wartung einzelner Bereiche aufgeteilt werden kann und diese
nicht mehr von einem Administrator alleine abhängig sind.
5
Siehe http://www.icestandard.org/
6
Siehe http://internetalchemy.org/ocs/
7
Siehe http://web.resource.org/rss/1.0/
8
Siehe http://www.ietf.org/html.charters/trade-charter.html
Funktionen von Content Management Systemen
43

Protokollierung: Das Mitprotokollieren sämtlicher Interaktionen mit dem
System kann bedeutsam sein, um zum Beispiel mögliche Problemstellen im
System zu identifizieren aber auch als Grundlage für Analysen der Nutzung des
Systems dienen. Gerade bei einer Publikation auf Websites kann eine Analyse
der Zugriffshäufigkeit auf den angebotenen Content durchaus von Interesse sein.

Automatische Benachrichtigung bei kritischen Situation: Das CMS sollte
selbstständig kritische Situationen, wie Speicherfehler oder ausgehender
Speicherplatz, erkennen und die Administratoren benachrichtigen.

Benutzer Verwaltung: Sämtliche Benutzer, Gruppen und Rollen müssen vom
Administrator angelegt und verwaltet werden können. Viele Benutzernamen
existieren allerdings auch außerhalb des CMS und daher soll es auch
Möglichkeiten einer Synchronisation mit Directory Services geben.
Ein reibungsloser Betrieb eines CMS ist allerdings nicht ausschließlich durch
umfangreiche Möglichkeiten der Administration gegeben. Besonders die Performance
des Systems stellt öfters ein Problem im Betrieb des CMS dar, worauf ein innovatives
CMS mit Möglichkeiten der Skalierung reagieren sollte. Die Skalierungsaspekte eines
CMS betreffen:

eine große Anzahl an Clients, die zugleich am System arbeiten.

eine große Anzahl von Benutzern, die vom System verwaltet werden.

große Mengen an Content, die ein CMS effektiv verwalten soll.
Neben dem trivialen Ansatz einer Performance Verbesserung bei Skalierungsproblemen
durch einen Umstieg auf leistungsfähigere Hardware soll ein CMS innovativere Ansätze
bieten, wie beispielsweise verteilte Serverkonzepte, wodurch die Last untereinander
ausbalanciert wird oder Caching Mechanismen, um durch Zwischenspeicherung von
häufig angefragten Content die Performance zu erhöhen. [Pelz-Sharp et. al 2002b]
[Jablonski et. al 2002]:
3.2.9
Internationalisierung
Ein innovatives CMS sollte mehrsprachenfähig sein, um so das parallele Verwalten
desselben Content in mehr als einer Sprache zu ermöglichen. Man kann dabei zwischen
verschiedenen Implementierungstiefen unterscheiden. Es könnte beispielsweise möglich
sein, verschiedene Sprachversionen eines Inhalts verschieden zu strukturieren oder den
Übersetzungsvorgang in Statusverwaltung und Workflow einzubinden. Gerade der
zuletzt dargestellte Aspekt ist selten in Content Management Systemen realisiert, ist
aber bei einer Notwendigkeit für mehrsprachigen Content durchaus wünschenswert.
Schließlich soll ein leistungsfähiges CMS Unicode9 unterstützen, damit zum Beispiel
auch fernöstliche Sprachen, wie Chinesisch oder Japanisch, aufgrund der großen
9
Siehe http://www.unicode.org/
Funktionen von Content Management Systemen
44
Zeichenvielfalt mit vernünftigem Aufwand unterstützt werden können. [Rothfuss et al.
2001] [Pelz-Sharp et. al 2002b]
3.3
Anforderungsprofil Kernfunktionen
Die Erörterungen der Kernfunktionen aus Kapitel 3.2 werden in diesem Abschnitt in
einem Anforderungsprofil zusammengefasst, welches in Tabelle Error! Use the Home
tab to apply Überschrift 1 to the text that you want to appear here..2 dargestellt ist.
Das Anforderungsprofil dient im weiteren Verlauf der vorliegenden Arbeit als
Grundlage der Evaluierung der Entwicklungsumgebung Java 2 Platform, Enterprise
Edition und darauf basierter Implementation eines CMS sowie dem in Kapitel 7
aufgezeigten Gestaltungsmodell. Das in diesem Abschnitt dargestellte Profil ist
allerdings noch unvollständig und wird im folgenden Kapitel um über die
Kernfunktionen hinausgehende Aspekt erweitert.
Funktionen von Content Management Systemen
Kernfunktion
Content Organisation
Erzeugung
Publikation
Content Kontrolle
Information Retrieval
Collaboration
Integration
Administration
Internationalisierung
45
Anforderungen













Anlegen von benutzerdefinierten Attributen
Link Management
Unterstützung unterschiedlicher DBMS
Einhaltung der Anatomie des Content
Browserbasierte Content-Eingabe
Integration externer Applikationen zur Content-Bearbeitung
Unterschiedliche Visualisierungen von Content
Personalisierung des Content auf Websites
Zugriffskontrolle
Check-In und Check-Out Mechanismus
Versionierung
Archivierung
Suchmöglichkeiten














Workflow
Integration von Email
Unterstützung für Collaboration (Diskussionsforen, FAQ oder Chat)
Systemspezifische Anpassungsmöglichkeiten des CMS
Import und Export von Content
Integrationsmöglichkeiten mit Datenbeständen anderer Systeme
Content Syndication und Providing
Backup Möglichkeiten
Protokollierungs- und Analyse-Funktionen
Automatisches Erkennen kritischer Situationen
Benutzerverwaltung
Synchronisation der Benutzerverwaltung mit Directory Services
Skalierbarkeit
Paralleles verwalten mehrere Sprachen
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
Anforderungsprofil der Kernfunktionen
3.4
Schlussbemerkung
Die Darstellung der Kernfunktionen eines Content Management Systems zeigt in vielen
Bereichen Funktionen, welche bereits vor dem Aufkommen des Begriffes Content
Management im Bereich der Informationstechnologie bekannt waren. Ein CMS stellt
schließlich nach Meinung des Autors der vorliegenden Arbeit keine Neuerfindung dar,
sondern eine Weiterentwicklung etablierter Technologien (siehe Kapitel 2.2.3
Dokument Management Systeme). Charakteristisch für ein Content Management
System ist jedoch eine strukturierte Erfassung von Content, um so die deutliche
Trennung der Anatomie des Content maschinell erfassbar zu machen und eine
bedarfsgerechte Publikation des Content zu ermöglichen.
Die Effizienz eines CMS wird wesentlich durch die Funktionen Information Retrieval
und Collaboration determiniert, welche maßgeblich Einfluss darauf nehmen, wie
Funktionen von Content Management Systemen
46
erfolgreich gespeicherter Content wieder gefunden werden kann bzw. wie effektiv ein
CMS einen anwendungsspezifischen Content Life Cycle umsetzen kann. Diese
erwähnten Funktionen sind bereits seit Jahren aus anderen Systemen der
Informationstechnologie bekannt, womit ein CMS durch das Einbeziehen jahrelanger
Erfahrungen nur profitieren kann. Wesentlich für die Akzeptanz eines Content
Management Systems sind administrative Funktionen, wie Backup Möglichkeiten,
Skalierbarkeit, Benutzerverwaltung oder Integrationsmöglichkeiten mit Altsystemen,
wobei es sich wiederum um keine ausschließlich CMS-spezifischen Funktionen handelt,
deren effektive Umsetzung dafür aber umso wichtiger ist.
Im nächsten Kapitel wird das in Tabelle Error! Use the Home tab to apply
Überschrift 1 to the text that you want to appear here..2 identifizierte
Anforderungsprofil um einige Aspekte erweitert. Zu diesem Zweck werden Funktionen,
die nicht direkt dem Content Management zuzurechnen sind, aber eine sinnvolle
Ergänzung darstellen oder so komplex sind, dass sie bereits eine eigene Kategorie von
Softwaresystemen implizieren, welche jedoch in sinnvoller Art und Weise mit Content
Management Systemen verknüpft werden können, betrachtet. Nach dieser
Vervollständigung des Anforderungsprofils erfolgt eine Evaluierung der
Entwicklungsumgebung Java 2 Platform, Enterprise Edition hinsichtlich der
Realisierungsmöglichkeiten der identifizierten Anforderungen.
4
Zweckmäßige Erweiterungen von Content
Management Systemen
In diesem Kapitel werden die Darstellungen aus dem vorherigen Kapitel, über die
Funktionen eines Content Management Systems, fortgeführt. Während im vorherigen
Kapitel der Schwerpunkt auf den Kernfunktionen eines CMS lag, sollen in diesem
Kapitel Aspekte betrachtet werden, welche für die Funktionalität eines CMS geeignete
Erweiterungen darstellen bzw. eine effiziente Implementierung geforderter Funktionen
unterstützen. Die erörterten Aspekte repräsentieren keine Kriterien, welche notwendigerweise von einem CMS erfüllt werden müssen, um von einer vollständigen
Implementierung eines CMS zu sprechen. In dieser Einschränkung liegt der wesentliche
Unterschied zum vorherigen Kapitel, welches sich ausschließlich auf essentielle
Funktionen eines Content Management Systems konzentriert.
Gerade im Hinblick auf die Akzeptanz oder die Einsatzfähigkeit eines CMS erweist sich
jedoch ein Berücksichtigen der diskutierten Aspekte in diesem Kapitel als
zweckdienlich. Es können sich dadurch nicht nur Vorteile für den Endanwender
sondern auch entscheidende strategische Vorteile für den Anbieter des CMS ergeben.
Als Abschluss dieses Kapitels werden die aus den dargestellten Aspekten identifizierten
Anforderungen, in gleicher Weise wie im vorherigen Kapitel, in einem Anforderungsprofil zusammengefasst.
4.1
Unterstützende Funktionen
Die folgenden zwei Abschnitte betrachten Aspekte, welche grundsätzlich keine neuen
Funktionen für ein CMS darstellen, jedoch die Effizienz bzw. Qualität des CMS
beeinflussen können. Zuerst wird die XML Technologie betrachtet, um auf die sehr
zweckmäßigen Einsatzmöglichkeiten dieser Technologie, im Kontext einer effizienten
Implementierung der Grundkonzepte eines Content Management Systems, hinzuweisen.
Danach folgt eine Darstellung von Initiativen im Bereich des barrierefreien
Informationszugangs, welche auch für Content Management Systeme Konsequenzen
haben und eventuell ein Überdenken der Publikationskomponente nötig machen.
Zweckmäßige Erweiterungen von Content Management Systemen
4.1.1
48
Extensible Markup Language
Es gibt kaum einen anderen Standard, welcher in der Literatur so oft im Kontext von
Content Management Systemen genannt wird, wie die Extensible Markup Language
(XML). Dabei bedeutet die Verwendung von XML grundsätzlich keine Erweiterung der
Funktionen eines Content Management Systems, sondern eine sehr effektive und
zielführende Umsetzung der Anforderungen bzw. Funktionen eines CMS. Es ist das
Ziel dieses Abschnittes aufzuzeigen, inwiefern das Konzept von XML mit den
Grundkonzepten eines CMS konform geht und worin die Vorteile beim Einsatz von
XML liegen. Grundsätzlich kommt XML im Kontext eines CMS in zwei Bereichen
zum Einsatz. Auf der einen Seite beim Import bzw. Export von Content und auf der
anderen Seite als Format zur Content-Speicherung und Publikation in verschiedenen
Ausgabeformaten. [Jablonski et. al 2002]
XML gehört in die Familie der Auszeichnungssprachen, wobei XML den
generalisierten Auszeichnungssprachen zugeordnet wird, weil es nicht wie beispielsweise HTML aus einem feststehenden Satz von vordefinierten Tags besteht1, sondern
erlaubt, die Grammatik der Sprache anwendungsspezifisch zu gestalten. Abgeleitet
wurde XML von SGML (Standard Generalized Markup Language), wobei XML
wesentlich schlanker und modularer als die sehr umfassende SGML gestaltet wurde 2.
[Rothfuss et al. 2001]
Der XML Standard umfasst eine Reihe weiterer Standards, welche bei der
Implementierung eines CMS angewendet werden bzw. von Interesse sein können. Es
würde bei weitem den Rahmen dieses Abschnittes sprengen, auf sämtliche Standards
und deren Vorteile sowie Anwendungen einzugehen. Um jedoch einen Überblick zu
geben, sollen die wesentlichen Standards und deren Verwendungsbereich für Content
Management Systeme kurz aufgelistet werden [Rothfuss et al. 2001]:
1

XML und XML Namespaces, um die Inhalte zu speichern.

XQL (XML Query Language) als Anfragesprache für den Datenbestand.

XML Schema3 oder DTD (Document Type Definition) für die Struktur und eine
leistungsfähige Typisierung.

XSLT (Extensible Style Language Transformations) für die unterschiedliche
Gestaltung der Inhalte.

XPOINTER, XPATH und XLINK für Hypermedia.
HTML wird demnach als einfache Auszeichnungssprache bezeichnet.
2
Für eine detaillierte Darstellung der Unterschiede von XML und SGML siehe http://www.w3.
org/TR/NOTE-sgml-xml-971215.
3
XML Schema ersetzt die DTD und beinhaltet umfangreiche Erweiterungen im Vergleich zu einer DTD.
So bietet XML Schema bereits die Möglichkeiten Wertebereiche oder Datentypen zu definieren. Wenn
im folgenden Abschnitt von einer DTD die Rede ist, könnte an dieser Stelle ebenso gut XML Schema
genannt werden bzw. zum Einsatz kommen.
Zweckmäßige Erweiterungen von Content Management Systemen

49
DOM (Document Object Model) bzw. SAX (Simple API for XML) für eine
standardisierte Programmierschnittstelle, um auf die XML Inhalte zuzugreifen,
in ihnen zu navigieren und sie zu verändern.
Die zentralen Vorteile von XML im Einsatz für Content Management Systeme werden
in der Arbeit [Gruhn et al. 2000] wie folgt erläutert:

Natürliche Trennung von Layout, Struktur und Inhalt: Das für ein CMS
grundlegende Paradigma der Trennung von Struktur, Darstellungsform und
Inhalt (siehe auch Kapitel 2.3.1) ist integraler Bestandteil von XML. Die
Speicherung der Inhalte geschieht innerhalb der XML Dateien, die Struktur wird
in der DTD abgelegt und die Darstellungsinformationen befinden sich innerhalb
von XSLT Styles.

Einfache Erweiterbarkeit: Da Strukturinformationen leicht zugänglich und klar
abgegrenzt in der DTD vorliegen, bedürfen strukturelle Anpassungen lediglich
einer Modifikation der DTD und verlangen grundsätzlich keine Interaktion mit
dem CMS selbst.

Einfacher Datenaustausch: Ein CMS speichert seinen Content zumeist in einer
DBMS (siehe Kapitel 3.2.1). Das Problem bei Datenbankmanagement-Systemen
liegt jedoch darin, dass die Struktur der Daten normalerweise in einem
proprietären Datenbankschema vorliegt und daher zumeist nur im Kontext einer
entsprechenden DBMS interpretiert werden kann. Um die Inhalte der Datenbank
zu exportieren, müssen sie daher in ein Format konvertiert werden, welches die
strukturellen Informationen des Datenbankschemas wiedergeben kann, damit die
exportierten Inhalte bei einem eventuellen Import richtig interpretiert werden
können. XML Dateien (XML-, DTD-, und XSLT Dateien) tragen jedoch
sämtliche, für den Export relevanten Information (Struktur und Inhalte) in sich
selbst und sind daher ohne zusätzlichen Konvertierungsschritt bereits für einen
Export geeignet.

Unterstützung mehrerer Präsentationskanäle: Durch die inhärente Trennung
von Darstellung und Inhalt ist es ohne weiteres möglich, über die Erstellung
verschiedener XSLT Style Sheets unterschiedliche Präsentationskanäle zu bedienen. Dieser Vorteil wird sich noch einmal deutlich verstärken, wenn die Endgeräte selbst XML-fähig werden und der zurzeit noch notwendige Transformationsschritt (z.B. nach HTML für Websites) damit entfällt.
Theoretisch könnten XML Dateien das zur Datenhaltung notwendige DBMS eines
Content Management Systems ersetzen. XML Schema bietet bereits anspruchsvolle
Möglichkeiten der Datenstrukturierung und mit Hilfe von XQL lassen sich Anfragen
über die Inhalte in den XML Datenbeständen durchführen 4 . Aufgrund der hohen
Akzeptanz, Stabilität und Performance ist aber auf den Verzicht eines DBMS abzuraten.
4
Vergleichbar mit SQL für relationale Datenbanken.
Zweckmäßige Erweiterungen von Content Management Systemen
50
Es haben sich jedoch bereits Konzepte entwickelt, wie beispielsweise XML Daten in
den häufig anzutreffenden relationalen Datenbanken abgelegt werden können.
Zum einem gibt es die elementbasierte Speicherung, bei der die Elemente und Attribute
der XML Datei entsprechenden Attributen einer Datenbanktabelle zugeordnet werden.
Je nach Verschachtelung der XML Daten sind eventuell mehrere Tabellen notwendig,
um den gesamten Inhalt in der Datenbank abzulegen. Der Vorteil dieser Methode liegt
darin, dass sämtliche Elemente der XML Datei über eine Datenbankabfragesprache
(z.B. SQL) zugänglich sind und die Struktur der Daten durch die Abbildung auf das
Datenbankschema im Wesentlichen erhalten bleibt. Die Daten sind daher grundsätzlich
für eine flexible Weiterverwendung gut geeignet. Zugleich entsteht aber durch die
Verteilung der Daten über mehrere Tabellen ein erhöhter Aufwand und damit eventuell
einhergehende Performanceverluste. [Jablonski et. al 2002] [Lochbrunner 2002]
Aufgrund dieser Nachteile hat sich ein zweites Konzept entwickelt, welches weit
weniger differenziert vorgeht, die dokumentbasierte Speicherung. Bei diesem Ansatz
wird das komplette XML Dokument in einem Attribut einer Datenbanktabelle abgelegt.
Diese sehr einfache und effiziente Vorgehensweise erweist sich jedoch in der Regel als
eine zu starke Vereinfachung komplexer Sachverhalte, womit als Konsequenz ein
hybrider Ansatz denkbar wäre, welcher die Vorteile der zwei zuletzt erwähnten Aspekte
zu vereinigen versucht. Bei einem hybriden Ansatz könnten beispielsweise Attribute,
nach denen eine Suche oder Sortierung erfolgen soll, elementbasiert abgelegt werden,
ansonsten erfolgt eine dokumentorientierte Speicherung. [Jablonski et. al 2002]
[Lochbrunner 2002]
Die dargestellten Aspekte in diesem Abschnitt zeigen, dass XML eine innovative
Möglichkeit aufzeigt, Content im Hinblick auf die Anforderungen eines CMS effizient
zu speichern. Der tatsächliche Einsatz von XML als Format zur Content-Speicherung
wird wesentlich davon determiniert, wie gut die zugrunde liegende DBMS die
Verwendung von XML unterstützt. Die im vorherigen Absatz erörterten Aspekte der
Speicherung von XML Daten in relationalen Datenbanken werden bereits durch diverse
Mapping-Tools weitestgehend automatisiert und ermöglichen ein komfortables
Speichern von XML Objekten in bewährten relationalen Datenbanksystemen.
Nachteilig wirkt sich jedoch die Tatsache aus, dass es zwischen den flachen relationalen
und den hierarchischen XML-Strukturen keine eindeutige Abbildung gibt und es
notwendig macht, Mapping Informationen manuell festzulegen. Mapping-Tools sind
dann am besten geeignet, wenn eine Applikation hauptsächlich nur mit einer
beschränkten Menge bereits im Vorhinein festgelegter XML Strukturen umgehen muss.
[Lochbrunner 2002] [Mittermeier 2003]
Aufgrund dieser immer wichtiger werdenden Anforderung an Datenbanken mit XML
umgehen zu können, entwickelt sich bereits eine neue Generation von XML
Datenbanken (XDBMS), welche XML nicht mehr in ein anderes Format umwandeln,
sondern gleich nativ abspeichern. Solche Datenbanken ermöglichen es, XML
Dokumente beliebiger Struktur effizient zu speichern und komplexe Suchoperationen
Zweckmäßige Erweiterungen von Content Management Systemen
51
darauf auszuführen. Es sei allerdings darauf verwiesen, dass es bei XML Datenbanken
aufgrund der Neuartigkeit dieser Systeme sowie der damit verbundenen Standards
momentan noch an jahrelangen praktischen Erfahrungen mangelt. Aufgrund der
Wichtigkeit dieser Komponente, wird zurzeit noch eher auf etablierte relationale
Datenbanken zurückgegriffen. [Lochbrunner 2002] [Mittermeier 2003]
Aufgrund der Vorteile von XML sollte dennoch der Einsatz im Bereich von Content
Management Systemen forciert werden. XML basierte Protokolle haben hingegen im
Bereich der Integration von Content bereits eine hohe Bedeutung. Beispielhaft sei das
bereits im vorherigen Kapitel genannte Information Content Exchange Protokoll (siehe
Kapitel 3.2.7) erwähnt oder die Protokolle der Web Service Technologie (siehe Kapitel
5.2), welche aufgrund ihrer Flexibilität vermehrt in Integrationsvorhaben von
Unternehmungen Anwendung finden [Orf 2003]. Ein innovatives Content Management
System sollte daher auf jeden Fall XML Technologien im Integrationsbereich
berücksichtigen.
4.1.2
Barrierefreier Informationszugang
„Der Erfolg des Internets liegt in der Universalität. Zugriff für jeden
unabhängig von körperlichen Einschränkungen ist ein essentieller Aspekt. 5“
[Berners-Lee 2003]
Mit der Entwicklung des Internets wurden sämtliche Kommunikationsbarrieren, die sich
aus Inkompatibilitäten unterschiedlicher Computer Systeme ergeben, überwunden. Die
Lösung dieser technischen Barriere hat allerdings in keinster Weise dazu beigetragen,
die Probleme der Mensch zu Mensch Kommunikation, welche sich aus körperlichen
und geistigen Einschränkungen ergeben, zu lösen. Schätzungen zu Folg sind 90 % aller
Websites für behinderte Menschen nicht zugänglich. [Boldyreff 2002] Websites sind ein
wesentlicher Publikationskanal, welcher von Content Management Systemen entsprechend berücksichtigt werden muss. Die Publikationskomponente eines CMS ist
daher in die dargestellte Problematik unzureichend zugänglicher Websites involviert. In
diesem Abschnitt soll zum einen die Web Accessibility Initiative 6 (WAI) des W3C
erörtert werden, welche im Bereich der barrierefreien Webgestaltung sehr engagiert ist,
und zum anderen sollen die sich ergebenden Konsequenzen für Content Management
Systeme aufgezeigt werden.
Die Web Accessibility Initiative erläutert verschiedene Richtlinien, Checklisten,
Techniken usw., wie der im Web publiziert Content für behinderte Menschen
zugänglich gemacht werden kann. Jene Richtlinien, welche besonders im Kontext von
Content Management Systemen interessant sind, sind die Authoring Tool Accessibility
„The power of the Web is in its universality. Access by everyone regardless of disability is an essential
aspect.“ [Berners-Lee 2003]
5
6
Siehe http://www.w3.org/WAI/
Zweckmäßige Erweiterungen von Content Management Systemen
52
Guidelines 7 . Diese Guidelines beziehen sich auf alle Werkzeuge, die Web-Inhalte
produzieren oder in der Lage sind, Inhalte im Webformat zu speichern oder zu
transformieren. Diese Begriffsbestimmung umfasst natürlich auch die Content
Management Systeme. Konkret werden durch diese Richtlinien drei Zielsetzungen
verfolgt [Abel et. al 2002]:

standardmäßig barrierefreie Inhalte zu generieren

die Erstellung von barrierefreien Inhalten zu unterstützen und zu fördern

den Content-Autoren einen barrierefreien Zugang zum Publikations-Werkzeug
zu bieten
Die zuletzt genannte Zielsetzung verdeutlicht den Umfang der oben erwähnten
Richtlinien. Nicht nur die Distribution des Content soll für jeden zugänglich sein,
sondern auch die dazu notwendigen Systeme, wie beispielsweise das CMS, sollen für
jeden zugänglich bzw. bedienbar sein.
Eine detaillierte Darstellung der Möglichkeiten einen barrierefreien Zugang für
Websites zu realisieren, wird in den Web Content Accessibility Guidelines8, ebenfalls
Teil der WAI, verdeutlicht. Es wäre nicht zielführend an dieser Stelle einen Überblick
über sämtliche Richtlinien zu geben, jedoch soll beispielhaft die erste Richtlinie kurz
erläutert werden. Demzufolge sollen äquivalente Alternativen für Audioinhalte und
visuelle Inhalte bereitgestellt werden. Ein Beispiel dafür ist die Verwendung eines TextÄquivalents, welches die Bedeutung oder den Zweck eines Bildes beschreibt. Dieser
Text kann dem Benutzer als synthetisierte Sprache, Blindenschrift oder visuell
aufbereitet dargestellt werden. Jeder dieser Mechanismen verwendet einen anderen
Sinn, Ohren für synthetisierte Sprache, Tastsinn für Blindenschrift sowie Augen für
visuell dargestellten Text. Auf diese Weise wird die Information zugänglich für
Gruppen, die eine breite Palette von sensorischen und anderen Behinderungen
repräsentieren. [Chrisholm et. al 2002]
Ein wichtiger Aspekt im Kontext dieser dargestellten Richtlinien ist jedoch, dass
Content-Autoren nicht entmutigt werden sollen, multimedialen Content, wie Bilder,
Video, usw. einzusetzen. Durch das Einhalten dieser Richtlinien soll vielmehr erläutert
werden, wie multimedialer Content besser für ein breites Publikum zugänglich gemacht
werden kann, wobei sich Verbesserungen für alle Benutzer des Webs ergeben sollten.
Aus diesem Grund berücksichtigt die WAI auch Situationen, wie das Fehlen einer
Tastatur oder einer Maus, die Verwendung eines Textbildschirms oder eines kleinen
Bildschirms oder eine langsame Internetverbindung. Auf diese Weise erfasst man nicht
nur spezielle Anforderungen behinderter Menschen, sondern auch jene Anforderungen,
welche beispielsweise durch den Einsatz gewisser Endgeräte impliziert werden.
[Chrisholm et. al 2002] [Abel et. al 2002]
7
Siehe http://www.w3.org/TR/ATAG10/
8
Siehe http://www.w3.org/TR/WCAG10/
Zweckmäßige Erweiterungen von Content Management Systemen
53
Ein anschauliches Beispiel sind mobile Endgeräte, welche zurzeit über meist kleine
textbasierte Displays, unhandliche Tastaturen und eine eher langsame Internetverbindung verfügen. Ein weiteres Beispiel für die breite Wirkung durch die Einhaltung
der WAI Richtlinien wäre eine Verbesserung der Suchmöglichkeiten von Web-Inhalten.
Sinnvolle Text-Äquivalente von multimedialem Content sind zumeist besser für eine
effiziente Suche, als der multimediale Content selbst, geeignet. Dieser Vorteil kommt
allen Web-Nutzern zu gute. [Chrisholm et. al 2002] [Abel et. al 2002]
Eine sinnvolle und vollständige Umsetzung der Richtlinien der WAI durch ein Content
Management System wäre am ehesten dadurch gegeben, wenn bei der Erstellung von
Templates bzw. bei der Content-Eingabe durch die Autoren die WAI Richtlinien derart
in das System integriert sind, dass eine WAI konforme Ausgabe, ohne detailliertes WAI
Wissen der beteiligten Benutzer, erreicht wird. Dies würde den Aufwand zur Erstellung
barrierefreier Seiten mindern und so die Verbreitung dieser Standards beschleunigen.
Vorteilhaft wäre auch eine Integration von Validatoren, welche den Benutzern des CMS
eine automatisierte Prüfung auf WAI Konformität erlaubt. [Abel et. al 2002]
Es existieren bereits Implementierungen der zuletzt erwähnten Validatoren, welche
teilweise auch schon die Möglichkeit bieten, Websites automatisch im Hinblick auf
WAI Richtlinien zu korrigieren. In der Arbeit von [Kirchner 2002] wird ein Überblick
über vorhandene Validatoren aufgezeigt, wobei jedoch die Untersuchung der einzelnen
Validatoren gezeigt hat, dass die Resultate bei ein und derselben Website recht
unterschiedlich ausfallen. Dieses Ergebnis lässt den Rückschluss zu, dass diese
Technologien noch eher in der Entwicklungsphase stehen und noch nicht zur Gänze
zum produktiven Einsatz geeignet sind. Es wird aber auch darauf verwiesen, dass die
Möglichkeiten einer automatischen Umsetzung der WAI Regeln grundsätzlich
beschränkt sind. Die Sinnhaftigkeit einer alternativen textuellen Beschreibung eines
Bildes kann maschinell schwer überprüft werden und eine fehlende textuelle
Beschreibung kann kaum automatisiert hinzugefügt werden, da eine semantisch
äquivalente Beschreibung zumeist nur durch den Autor selbst erstellt werden kann. Es
liegt daher zum Grossteil an den Autoren selbst, wirklich barrierefreie Seiten zu
gestalten. [Kirchner 2002]
Neben Gründen der sozialen Verantwortung wird die Anwendung der WAI Richtlinien
auch immer mehr durch rechtliche Aspekte bestimmt. In Deutschland wurde bereits ein
Gesetz erlassen, welches öffentliche Einrichtungen verpflichtet, neu erstellte Websites
barrierefrei zu gestalten und bereits bestehende Internetseiten entsprechend zu ändern
(„Bundesgleichstellungsgesetz für Behinderte“). Es handelt sich dabei um das erste
Gesetz dieser Art in Europa, andere Länder wie beispielsweise die Schweiz und
Frankreich arbeiten allerdings bereits an ähnlichen Regelungen. [Mattick 2002]
Eine Berücksichtigung der WAI Richtlinien bei Content Management Systemen
bedeutet grundsätzlich keine weitere Funktion eines CMS. Es müssen vielmehr bereits
vorhandene Funktionen auf WAI Konformität geprüft und eventuell erweitert werden.
Innovative CMS sollten einen barrierefreien Informationszugang bieten, um damit einer
Zweckmäßige Erweiterungen von Content Management Systemen
54
sozialen Verantwortung Ausdruck zu verleihen, aber auch von qualitativen Vorteilen zu
profitieren, welche sich durch ein konsequentes Umsetzen barrierefreier Richtlinien
einstellen. Ideal wäre eine Integration der Richtlinien in die Prozessschritte des Content
Management, sodass eine barrierefreie Distribution ohne bewusstes Einwirken der
beteiligten Anwender des CMS erreicht wird. Zumindest sollte eine Integration von
WAI Validatoren möglich sein, um so weit es möglich ist, ein automatisiertes
Überprüfen auf Konformität zu bieten.
4.2
Funktionale Erweiterungen
Die drei folgenden Abschnitte erörtern Funktionen, welche aufgrund ihrer Komplexität
bereits eigenständige Disziplinen der Informationstechnologie darstellen, deren
Integration in das CMS jedoch eine sinnvolle funktionale Erweiterung des CMS
aufzeigt. Als erstes wird das Digital Right Management dargestellt und aufgezeigt, wie
mittels solcher Systeme der eventuelle Wert des Content auch nach der Distribution
durch das CMS geschützt werden kann. Im Anschluss folgen Erläuterungen zu PortalSystemen und welche Konsequenzen sich daraus für Content Management Systeme
ergeben. Im letzten Abschnitt wird die Disziplin des Digital Asset Management erörtert,
welche sich hauptsächlich mit den komplexen Anforderungen von multimedialem
Content auseinandersetzt.
4.2.1
Digital Right Management
Bei der Begriffsbestimmung von Content wurde bereits erläutert, dass Content einen
Nutzwert haben kann (siehe Kapitel 2.2.1) und als ein Ziel von Content Management
Systemen wurde aufgezeigt, diese ökonomische Komponente von Content bestmöglich
mittels zielgerichteter und schneller Distribution (siehe Kapitel 2.3.3) zu unterstützen
bzw. auszuschöpfen. Diese Zielsetzung eines CMS ist allerdings beschränkt auf die
Prozessschritte im Verantwortungsbereich des CMS. Es liegt jedoch besonders im
Interesse der Content-Autoren, den Wert der Assets auch nach der Distribution durch
das CMS zu bewahren, indem der Content nur für jene Benutzer zugänglich ist, welche
den Content auf legalem Weg erworben haben. Eine Bereitstellung von Funktionen,
welche es ermöglichen, den Wert der Assets auch außerhalb des Content Management
Systems zu schützen bzw. zu gewährleisten, stellen daher eine sinnvolle Ergänzung für
innovative Content Management Systeme dar. Es ist das Ziel dieses Abschnittes, jene
Disziplin zu erörtern, welche mit den dargestellten Anforderungen verknüpft wird, das
Digital Right Management (DRM).
Im Whitepaper [Sun 2002] wird Digital Right Management als der entscheidende
Faktor bei der Verbreitung von digitalem Content bezeichnet. DRM soll in erster Linie
die Rechte der Autoren schützen und Möglichkeiten der illegalen Verbreitung von
digitalem Content unterdrücken. Der Schutz von Autorenrechten ist seit jeher ein
relevantes Thema. Ursprüngliche Schutzmechanismen profitierten jedoch von gewissen
Charakteristiken physikalischer Objekte. Als Content bzw. Informationen noch
Zweckmäßige Erweiterungen von Content Management Systemen
55
ausschließlich in Form von Büchern oder auch CDs verbreitet wurde, war die illegale
Vervielfältigung noch mit einem gewissen Aufwand verbunden, welcher zugleich einen
Schutzmechanismus implizierte.
Die heutige digitale Zeit ist allerdings geprägt durch eine rasante Verbreitung des
Internet, die Entwicklung effizienter Kompressionsverfahren sowie nahezu
unbegrenzter Möglichkeiten der Datenspeicherung (siehe Kapitel 2.1.1). Das Kopieren,
Speichern oder Modifizieren von digitalem Content ist daher nicht mehr begrenzt durch
die Einschränkungen der physikalischen Welt und damit stehen illegalen Vorgehensweisen eine Vielfalt von Möglichkeiten offen. Eine Benutzerauthentifizierung alleine
reicht nicht aus, um die unerlaubte Vervielfältigung von digitalem Content zu
unterdrücken. Ein DRM muss weitaus effizientere Kontrollmechanismen
implementieren, um die Rechte der Autoren zu schützen und den, mit dem Content
assoziierten Wert, zu bewahren. [Sun 2002] [Serrão et. al 2002]
Im Wesentlichen kann man Digital Right Management in drei Bereich gliedern: AssetErstellung, -Management und -Verwendung. Bei der Asset-Erstellung wird der Content
mit Rechten verknüpft, womit die Möglichkeiten der Nutzung des Content für
unterschiedliche Benutzer geregelt wird. Der mit den Rechten angereicherte Content
wird danach verschlüsselt, um ein illegales Verändern der Zugriffsrechte zu verhindern.
Das Asset-Management soll das Handeln mit den Assets ermöglichen. Dafür ist es
notwendig, Lizenzen zu generieren und bereitzustellen, mit denen der Käufer der Assets
die Rechte erhält, auf die Assets, in seiner registrierten Umgebung, zuzugreifen. Die
Lizenzen enthalten den Code, um die Assets zu entschlüsseln und den eigentlichen
Content, basierend auf den erworbenen Rechten, zugänglich zu machen. Die Assets und
die Lizenzen werden grundsätzlich getrennt erworben, womit es dem Käufer freisteht,
die Assets weiterzugeben, da sie ohne entsprechende Lizenz nicht nutzbar sind.
[Iannella 2001] [Sun 2002]
Der letzte Bereich, die Asset-Verwendung, umfasst die Möglichkeiten, die gehandelten
Assets für den Käufer zugänglich zu machen. Zu diesem Zweck muss eine gesicherte
Umgebung geschaffen werden, welche die Einhaltung der verknüpften Rechte
gewährleistet. Konkret handelt es sich dabei um eine Software in der Client Umgebung,
welche die Entschlüsselung und den Zugriff auf den Content kontrolliert und
gegebenenfalls mit einem Lizenz-Server Verbindung aufnimmt, um für den Käufer die
nötigen Rechte zu erwerben. Abschließend sei noch auf die Wichtigkeit der
Verwendung von offenen Standards im Bereich des Digital Asset Management
verwiesen, um die Interoperabilität der Assets zwischen DRM Systemen unterschiedlicher Anbieter zu gewährleisten. [Iannella 2001] [Sun 2002]
Der Autor der vorliegenden Arbeit erachtet Digital Right Management als keine
Kernfunktion von Content Management Systemen, da sich die Notwendigkeit dieser
Funktion nicht unmittelbar aus der Begriffbestimmung von Content Management
ableiten lässt. Die Verknüpfung von DRM und CMS ist aber durchaus sinnvoll, da die
Aspekte des Digital Right Management auf einer strukturierten Content-Ablage
Zweckmäßige Erweiterungen von Content Management Systemen
56
basieren [Sun 2002]. Ein innovatives CMS sollte daher um eine DRM Komponente
erweiterbar sein, zumal dem DRM Markt für die nächsten Jahre ein starkes Wachstum
prognostiziert wird. Digital Right Management wird ein zentraler Bestandteil
kommender Applikation werden und sich neben bereits existierenden Software
Lösungen, immer mehr durch eine Integration in Hardware Komponenten bemerkbar
machen. [Duhl et. al 2001]
4.2.2
Portal-Funktionalität
In diesem Abschnitt soll der Begriff Portal im Kontext von Content Management
Systemen erörtert werden. Es werden zuerst die Grundprinzipien eines Portals
dargestellt und in weiterer Folge die Einflüsse des Portal-Konzepts auf Content
Management Systeme aufgezeigt.
Von den Autoren Ashenden et. al wird ein Portal wie folgt definiert: „Ein Portal bietet
einen personalisierten Zugang zu einer adäquaten Menge an Informationen für einen
gewissen Zweck. 9 “ [Ashenden et. al 2002b] Portale, wie sie dieser Definition
entsprechen, wurden erstmals mit dem aufkommen bekannter Websites wie Yahoo!,
Excite oder Infoseek bekannt und der Begriff Portal wurde zum Schlagwort. Diese
Websites bieten dem Web-Benutzer einen einfachen Zugriff auf eine große Menge an
Informationen im Internet durch Bereitstellen von Suchmöglichkeiten oder einer
Kategorisierung bekannter Websites. Vervollständigt wird dieses Angebot noch durch
diverse Serviceleistungen wie Diskussionsforen, Wetterberichte oder aktuelle
Schlagzeilen und Möglichkeiten einer einfachen Personalisierung. Portale solcher Art
fanden eine schnelle Verbreitung, nicht nur durch die umfangreichen Serviceleistungen,
welche sie den Benutzern bieten, sondern auch durch die Möglichkeiten der
kommerziellen Nutzung durch die Betreiber, beispielsweise durch Werbeeinblendungen. [Dewan et. al 1999]
Der große Erfolg solcher Portale im Internet hat dazu angeregt, die Idee eines Portals
auch in Unternehmungen zu etablieren, um in gleicher Weise Ordnung in die großen
Informationsmengen einer Unternehmung zu bringen. Diese Portale, von den Autoren
Ashenden et. al als Enterprise Portale bezeichnet, sollen innerhalb einer Unternehmung
den Mitarbeitern einen zentralen und kohärenten Zugriff auf alle unternehmensrelevanten Daten geben, um so die Mitarbeiter mit sämtlichen Informationen zu
versorgen, welche benötigt werden, um die Arbeit effizient erledigen zu können
[Ashenden et. al 2002b]. Die wesentlichen Kriterien eines solchen Portals sind
[Ashenden et. al 2002b]:

Usability: Einfache Verwendbarkeit sowie Möglichkeiten der Personalisierung.
„A portal provides personalised access to an appropriate range of information for a particular
purpose.” [Ashenden et. al 2002b]
9
Zweckmäßige Erweiterungen von Content Management Systemen
57

Workplace: Das Bereitstellen verschiedener Möglichkeiten, um effizient mit
Arbeitskollegen zusammenarbeiten zu können, z.B. Diskussionsforen, Filesharing oder Email.

Information Access: Ein Portal sollte den Zugriff auf alle benötigten
Informationen ermöglichen.

Integration: Das Portal sollte sämtliche Informationsquellen integrieren und
dabei noch Verbindungen zwischen den integrierten Quellen herstellen können.

Management: Die Möglichkeit das Portal anzupassen, neue Informationsquellen
hinzuzufügen oder administrative Tätigkeiten durchzuführen.
Die Autoren Ashenden et. al weisen darauf hin, dass die Technologien hinter einem
Portal, wie Personalisierung, Integration oder Suche, nicht neu sind und der Erfolg
dieses Begriffes eher durch die Erwartungshaltungen der Endanwender, als durch
technische Innovationen angetrieben wurde. Die vielen Erwartungen, welche mit dem
Begriff Portal assoziiert werden, haben dazu geführt, dass aufgrund von Marketingüberlegung der Begriff Portal ungerechtfertig angewendet wird, um beispielsweise ein
simples Web-Interface zu einer Applikation zu beschreiben. Auch der Begriff
Integration wird im Kontext von Portalen oft missinterpretiert, indem Integration
oftmals mit Aggregation verwechselt wird. Aggregation bedeutet, dass unterschiedliche
Informationsquellen in einem gemeinsamen Portal zwar zugänglich sind, jedoch jede
Informationsquelle nur isoliert abgefragt werden kann. Integration bedeutet hingegen,
dass es beispielsweise möglich ist, durch die Eingabe einer Kundennummer sämtliche
kundenrelevanten Informationen präsentiert zu bekommen, unabhängig von der
Distribution der angeforderten Informationen über mehrere Informationsquellen.
[Ashenden et. al 2002b]
Die bisher dargestellten Aspekte von Portalen zeigen, dass es sich hier um Funktionen
handelt, welche zum Großteil auch in das Spektrum von Content Management
Systemen fallen. Der grundsätzliche konzeptionelle Unterschied liegt darin, dass Portale
in erster Linie existierende Daten integrieren und zentral zugänglich machen, Content
Management System hingegen den gesamten Prozess von der Beschaffung bis zur
Distribution des Content abdecken [FatWire 2002].
Jedoch lassen sich bei beiden Lösungen gemeinsame Funktionen erkennen, wie die
Integration, effizienter Informationszugriff oder Personalisierung. Es sei allerdings
erwähnt, dass diese Funktionen im Vergleich zwischen einem Portal und einem CMS
unterschiedlich effizient realisiert sein können, da ein CMS grundsätzlich eine
wesentlich bessere Kontrolle über seinen Content zulässt als ein Portal. So kann das
CMS beispielsweise den Content mit weiteren Metadaten versehen, um im Hinblick auf
eine Personalisierung den Content noch besser auszuzeichnen. Lediglich im Bereich der
Collaboration – dem Ermöglichen gemeinsamen Arbeitens – bieten Portale Funktionen,
welche generell nicht den Kernfunktionen eines CMS zugerechnet werden. Diese
Funktionen für Collaboration, wie beispielsweise Diskussionsforen, FAQ, Chat oder
Email, bedeuten jedoch eine sinnvolle Ergänzung für ein CMS (siehe Kapitel 3.2.6) und
Zweckmäßige Erweiterungen von Content Management Systemen
58
dies verdeutlicht die für die Zukunft erwartete Vereinigung von CMS und PortalSystemen. [Ashenden 2003]
Zurzeit existieren allerdings noch einige Portal-Systeme, welche in Unternehmungen
zum Einsatz kommen, um einen zentralen Einstieg in die Informationsbestände der
Unternehmung zu bieten. Aus diesem Grund erweist sich eine leichte Integrationsmöglichkeit von Content Management Systemen in bekannte Portal-Lösungen als
durchaus sinnvoll und erhöht die Akzeptanz des CMS. [Ashenden 2003] [FatWire
2002] Ungeachtet dessen, sollten jedoch innovative CMS vermehrt die Grundkonzepte
erfolgreicher Portale eigenständig realisieren bzw. unterstützen.
4.2.3
Digital Asset Management
Sämtliche Betrachtungen über Content Management Systeme wurden bisher in der
vorliegenden Arbeit zumeist auf der Basis von textbasiertem Content dargestellt.
Konzepte wie die Anatomie des Content (siehe Kapitel 2.3.1) lassen sich auch nur
vernünftig auf textbasierten Content anwenden, da beispielsweise ein Video kaum eine
Trennung von Struktur, Inhalt und Darstellung ermöglicht. Dieses Beispiel verdeutlicht
einen gewissen konzeptionellen Unterschied zwischen einerseits textbasiertem Content
und andererseits multimedialem Content, wie Bilder, Audio oder Video. In der
Definition von Content wurde jedoch keine Einschränkung hinsichtlich multimedialem
Content getroffen, jedoch sind Content Management Systeme per se nicht die ideale
Lösung zum Verwalten von multimedialem Content.
Jene Technologie, welche auf die komplexen Anforderungen des Verwaltens von
multimedialem Content spezialisiert ist, ist das Digital Asset Management (DAM). In
diesem Abschnitt soll das Digital Asset Management kurz erörtert werden und der
Bezug zu Content Management Systemen aufgezeigt werden. Des Weiteren soll im
Speziellen die Suchfunktionalität als eine wesentliche Funktion eins CMS im Hinblick
unterschiedlicher Anforderungen verschiedener Content-Typen untersucht werden.
Ein CMS behandelt multimedialen Content zumeist als ein Inhaltsatom (siehe Kapitel
3.2.1). Das bedeutet, ein CMS kann zwar multimedialen Content verwalten und auch
mit Metadaten zur besseren Auszeichnung versehen, jedoch nimmt das CMS keinen
direkten Einfluss auf den Inhalt des multimedialen Content. Diese Einschränkungen
gelten jedoch nicht für das Digital Asset Management. Unter dem Begriff DAM
versteht man die Prozesse und Technologien der Digitalisierung, Speicherung,
Verwaltung und Distribution von multimedialem Content über verschiedene
Distributionskanäle. Ein DAM System sollte [Pelz-Sharp 2002] [Landers 2002]

mit den zumeist sehr großen Datenmengen an multimedialen Content effizient
umgehen.

multimedialen Content in verschiedenen Qualitätsstufen und Auflösungen
wiedergeben können.

Streaming Video oder Audio bereitstellen.
Zweckmäßige Erweiterungen von Content Management Systemen

59
innovative Suchmöglichkeiten, welche an die Charakteristiken von multimedialen Content angepasst sind, anbieten.
Besonders der zuletzt dargestellte Aspekt des Suchens zeigt die weitaus komplexeren
Anforderungen von multimedialem Content. Es gibt grundsätzlich zwei Vorgehensweisen beim Suchen. Einerseits kann man im Content direkt suchen, andererseits kann
man Content über Metadaten auszeichnen und dadurch den Content kategorisieren und
auffindbar machen. Direktes Suchen ist meistens ein automatisierter Prozess, die Suche
über Metadaten hingegen verlangt im ersten Schritt eine Metadatenanreicherung,
welche zumeist manuell erfolgen muss, um die Sinnhaftigkeit der Metadaten zu
gewährleisten. Direktes Suchen ist daher aufgrund der Automatisierung wesentlich
effizienter in der Implementierung als eine Metadaten Suche. [Pelz-Sharp 2002]
Für textbasierten Content existieren bereits sehr ausgereifte Suchalgorithmen, um direkt
in den textuellen Daten erfolgreich relevante Informationen zu finden, ohne auf
Metadaten angewiesen zu sein. Ein direktes Suchen in multimedialen Daten ist jedoch
weitaus diffiziler, weshalb ein CMS diesen Content fast ausschließlich über Metadaten
auszeichnet und auffindbar macht. Dies verlangt jedoch aufwendige manuelle Eingriffe
und begründet einen Bedarf an effektiven Suchmöglichkeiten für multimedialen
Content. [Pelz-Sharp 2002]
Die Problematik beim direkten Suchen in multimedialem Content liegt in der
Schwierigkeit, automatisiert Semantik zu extrahieren. Haas et al. beschreiben in diesem
Zusammenhang drei Levels von Charakteristiken, um beispielsweise in Bildern zu
suchen [Haas et. al 2001]:

Level 1 Primitive Merkmale: Es handelt sich hier um Charakteristiken, welche
direkt aus dem Bild abgeleitet werden können, ohne sich auf externes Wissen
beziehen zu müssen. Beispiele wären Farben, Oberflächenstruktur oder Umrisse
identifizierbarer Objekte.

Level 2 Abgeleitete Merkmale: Identifizierbare Objekte können über ihren
Namen gesucht werden, zum Beispiel „Eifelturm“. Zu diesem Zweck ist
externes Wissen notwendig, um die Objekte entsprechend auszuweisen, jedoch
ist die Zuordnung noch verhältnismäßig objektiv.

Level 3 Abstrakte Merkmale: Es ist möglich, nach Bedeutungen oder Zweck des
zugrunde liegenden Bildes zu suchen. Ein möglicher Suchbegriff wäre „Freude“,
womit die Subjektivität diese Levels verdeutlicht sein sollte.
Level 2 und 3 werden als semantische Abfragen bezeichnet, womit ein semantischer
Spalt10 zwischen Level 1 und 2 einhergeht. Die Autoren Haas et. al stellen fest, dass
beinahe alle Suchverfahren für Bilder, sei es im kommerziellen Einsatz oder zu
experimentellen Forschungszwecken, nur am Level 1 operieren [Haas et. al 2001]. Die
derzeitigen Suchmöglichkeiten zeigen daher noch ein deutliches Verbesserungs-
10
Im englischen als „semantic gap“ bezeichnet.
Zweckmäßige Erweiterungen von Content Management Systemen
60
potenzial, da Suchanfragen auf Level 2 und 3 deutlich näher dem menschlichen
Bedürfnissen für zielführendes Suchen in Bildern kommen. Dieses Defizit wird zurzeit
durch die bereits in diesem Abschnitt erwähnte Metadatenanreicherung kompensiert,
jedoch mit der Konsequenz aufwendiger manueller Bearbeitungen. Es sei allerdings
erwähnt, dass sich durchaus hilfreiche Metadaten zum Teil auch automatisiert dem
multimedialen Content hinzufügen lassen, beispielsweise Beschaffungsattribute wie
Autor oder Erstellungszeitpunkt. Es sind jedoch sehr rege Forschungsaktivitäten in
diesem Bereich zu beobachten, welche bemüht sind, den beschriebenen Spalt zwischen
Level 1 und 2 zu schließen, um Suchanfragen auf einem sehr hohen semantischen
Niveau zu ermöglichen. Die in diesem Abschnitt aufgezeigte Problematik lässt sich
auch auf Videos übertragen, da Videos im Grunde nur aneinander gereihte Bilder sind,
jedoch noch eine Stufe komplexer, da sich Semantik nicht nur im Bild, sondern auch im
Ton oder Bewegungsabläufen widerspiegelt. [Haas et. al 2001] [Lew et. al 2002]
Die in diesem Abschnitt aufgezeigten Aspekte verdeutlichen, dass multimedialer und
textbasierter Content unterschiedlich zu behandeln sind. Multimedialer Content stellt
jedoch im Kontext eines CMS prinzipiell ähnliche Anforderungen wie textbasierter
Content. Bilder oder Videos sollen effizient verwaltet, in unterschiedlicher Form –
bezüglich Qualität oder Auflösung – publiziert werden und effizient widerauffindbar
sein. Die dahinter stehenden Technologien sind jedoch oft grundverschieden im
Vergleich zur Realisierung selbiger Funktionalität für textbasierten Content. Da jedoch
innovative Content Management Systeme alle Content-Typen gleich effizient behandeln
sollten, wäre eine Integration von DAM Technologien in das CMS durchaus sinnvoll.
Zumindest der Aspekt des Suchens in einem CMS sollte grundsätzlich sämtliche
Charakteristiken unterschiedlicher Content-Typen – von Text bis hin zu Videos –
berücksichtigen. Denkbar wäre auch die Kapselung leistungsstarker Suchalgorithmen
für multimedialen Content in eine eigene Komponente, um die das CMS im Bedarfsfall
erweitert werden kann und womit zugleich die Möglichkeit verbunden ist, die
geforderte Funktionalität durch unterschiedliche Implementierungen zu ersetzen.
4.3
Anforderungsprofil
In gleicher Weise wie im vorherigen Kapitel (siehe Kapitel 3.3) sollen die aus den
Darstellungen in diesem Kapitel identifizierten Anforderungen in einem Anforderungsprofil erfasst werden. Tabelle Error! Use the Home tab to apply Überschrift 1 to the
text that you want to appear here..1 stellt für jeden in diesem Kapitel diskutierten
Bereich die wichtigsten Anforderungen aufgelistet dar.
Zweckmäßige Erweiterungen von Content Management Systemen
Bereich
XML
Barrierefreier
Informationszugang
Digital Right
Management
Portal-Funktionalität
Digital Asset
Management
61
Anforderungen







Anwendung der XML Technologie (XML Schema, XSLT, …)
XML basierter Import und Export
XML basierte Content Austausch Protokolle
Berücksichtigung der Richtlinien der Web Accessibility Initiative (WAI)
Integration der WAI Richtlinien in die Prozessschritte des CMS
Automatisiertes Überprüfen auf WAI Konformität (Validatoren)
Bereitstellen von DRM Funktionalitäten oder Integration mit DRM
Systemen
 Einfache Integrationsmöglichkeiten in Portal-Systeme
 Bereitstellen eigenständiger Portal-Funktionalitäten (z.B. Collaboration)
 Bereitstellen von DAM Funktionalitäten oder Integration mit DAM
Systemen
 Innovative Suchmöglichkeiten auch für multimedialen Content
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Anforderungsprofil für zweckmäßige Erweiterungen eines CMS
4.4
Schlussbemerkung
Die in diesem Kapitel erörterten Aspekte zeigen die Vielfalt an möglichen
Erweiterungen für Content Management Systeme. Idealerweise sollte ein innovatives
Content Management System alle dargestellten Aspekte berücksichtigen bzw.
implementieren, wobei allerdings zu hinterfragen ist, ob ein derart umfangreiches
System in der Praxis überhaupt gefordert ist. Schlussendlich ist es für eine Unternehmung nicht relevant, wie viele Funktionen ein CMS anbieten kann, sondern ob es
jene Funktionen bietet, die gefordert sind. Zusätzliche Funktionen, welche über das
Anforderungsprofil einer Unternehmung hinausgehen, stellen nur eine zusätzliche
finanzielle Belastung dar. [Silver 2003]
Es wäre daher zweckmäßig, sämtliche in diesem Kapitel diskutierten Funktionalitäten,
wie WAI Validatoren, Collaboration Tools, multimediale Suchalgorithmen oder ein
Digital Right Management in verschiedenen Komponenten zu kapseln, welche in
beliebiger Kombination genutzt werden können. So sollte es möglich sein, dem
Endanwender ein CMS zu bieten, welches in seinem Funktionsumfang möglichst genau
den spezifischen Anforderungen angepasst werden kann und nicht entweder alles oder
gar nichts bietet.
Der Autor der vorliegenden Arbeit erachtet diese Möglichkeit einer Konfiguration der
Funktionen, gerade bei derart vielfältigen Möglichkeiten zweckmäßiger Erweiterungen,
als äußerst wichtig. Darüber hinaus würde eine funktionale Trennung in Komponenten,
welche sich in einer einfachen Art und Weise kombinieren lassen, grundsätzlich die
Möglichkeit bieten, dass unterschiedliche Komponenten auch von unterschiedlichen
Anbietern implementiert werden. Dies würde den Anbietern von Content Management
Systemen den Vorteil bieten, sich auf gewisse Kernkompetenzen zu konzentrieren und
Zweckmäßige Erweiterungen von Content Management Systemen
62
es den Endanwendern erlauben, die Komponenten bei unterschiedlichen Anbietern
einzukaufen. Des Weiteren ergibt sich auch die Möglichkeit, ein Content Management
System im Nachhinein um notwendige Funktionen zu erweitern.
Im weiteren Verlauf der vorliegenden Arbeit sollen konkrete Implementierungen von
Content Management Systemen erörtert werden (siehe Kapitel 6) und hinsichtlich der
Erfüllung der bisher identifizierten Anforderungen (siehe Tabelle Error! Use the
Home tab to apply Überschrift 1 to the text that you want to appear here..2 bzw.
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to
appear here..1) untersucht werden. Um die Auswahl möglicher CMS
Implementierungen einzuschränken, soll im Rahmen der vorliegenden Arbeit als ein
Auswahlkriterium die Entwicklungsumgebung für das CMS vorgegeben werden, zu
welchem Zweck die Java 2 Platform, Enterprise Edition gewählt wurde. Im
nachfolgenden Kapitel soll eine kurze Einführung in die wesentlichen Konzepte und
Technologien der Java 2 Platform, Enterprise Edition gegeben werden und zugleich die
Eignung zur Implementierung von Content Management Systemen untersucht werden.
5
Java 2 Platform Enterprise Edition
Nach der detaillierten Erörterung sämtlicher Funktionen eines Content Management
Systems in Kapitel 3 und 4 sollen im weiteren Verlauf der vorliegenden Arbeit konkrete
Implementierungen eines CMS hinsichtlich der Erfüllung der identifizierten Anforderungen evaluiert werden. Um die große Anzahl an CMS Implementierungen
einzuschränken, soll im Rahmen der vorliegenden Arbeit die Auswahl relevanter
Implementierungen hinsichtlich der verwendeten Programmierumgebung eingegrenzt
werden, zu welchem Zweck die Java 2 Platform, Enterprise Edition (J2EE) gewählt
wurde. Bevor allerdings in Kapitel 6 konkrete CMS Implementierung erörtert werden,
soll in diesem Kapitel ein kurzer Überblick über die Konzepte und Technologien der
J2EE Plattform gegeben werden. Zugleich werden die erläuterten Aspekte in diesem
Kapitel hinsichtlich ihrer Eignung zur Realisierung eines CMS diskutiert.
Die dargestellten Aspekte sind bewusst sehr einfach gehalten, da es im Rahmen der
vorliegenden Arbeit nicht möglich ist, aufgrund des Umfangs der zahlreichen
Dokumentationen, Spezifikationen oder Handbücher der J2EE Plattform tiefer ins
Detail zu gehen. Es ist allerdings auch nicht das Ziel dieses Kapitels, eine konkrete
Programmieranleitung zu geben, sondern auf konzeptioneller Ebene die Eignung der
J2EE Plattform hinsichtlich der Entwicklung eines CMS zu untersuchen. Die
Darstellungen in diesem Kapitel basieren auf J2EE in der Version 1.4. Für detaillierte
Informationen über die J2EE Plattform sowie sämtliche unterstützte Technologien sei
auf die Homepage von Sun verwiesen [Sun 2003]. Das vorliegende Kapitel beginnt
zunächst mit einer Darstellung der Grundlagen der J2EE Plattform. Im Anschluss
erfolgt eine Erörterung von Web Services sowie weiterer relevanter Technologien der
J2EE Plattform, welche im Kontext von Content Management Systemen interessant
sind.
5.1
Grundlagen
In diesem Abschnitt soll eine kurze Einführung über die Java 2 Platform, Enterprise
Edition gegeben werden und zugleich sollen die erörterten Aspekte auf ihre Relevanz
im Hinblick auf die Implementierung eines Content Management Systems diskutiert
werden. Zu diesem Zweck soll zunächst eine grundsätzliche Motivation für die Ent-
Java 2 Platform Enterprise Edition
64
wicklung der Java 2 Platform, Enterprise Edition, durch eine Erörterung unternehmensspezifischer Anforderungen an Softwareanwendungen gegeben werden. Anschließend
folgt eine Darstellung des Lösungsansatzes der J2EE Plattform auf die identifizierten
Anforderungen durch eine komponentenorientierte mehrschichtige Architektur. Abschließend wird noch das Rollenkonzept der J2EE Plattform erläutert, um die klar
definierte Arbeitsteilung im Rahmen des Entwicklungsprozesses von J2EE Applikationen zu verdeutlichen.
5.1.1
Allgemeines
Softwareanwendungen im Unternehmensbereich müssen heutzutage, unabhängig von
ihren spezifischen Anwendungsgebieten, eine Reihe an Anforderungen bewältigen. Die
gebotenen Funktionen sollen Kosten optimieren, Abläufe verbessern und dabei für die
Endanwender, seien es Kunden, Lieferanten oder Mitarbeiter, einfach und anwenderfreundlich in ihrer Verwendung sein. Darüber hinaus sind folgende Aspekte von
Bedeutung [Sun 1999]:

Hohe Verfügbarkeit: Die gebotenen Funktionen sollen immer verfügbar sein.

Sicherheit: Sensible Daten vor unberechtigten Zugriff schützen sowie die
Integrität der Daten sicherstellen.

Verlässlichkeit: Die Konsistenz der Daten muss gewährleistet sein.

Skalierbarkeit: Mit steigender Benutzeranzahl darf die Performance nicht sinken.
Während die zuletzt dargestellten Anforderungen sich eher auf die Nutzung von
Unternehmensanwendungen beziehen, stellen solche Anwendungen auch Anforderungen bezüglich der Entwicklung [Ide 2002]:

Eine Wiederverwendung von vorhandenen Komponenten.

Die Unterstützung einer parallelen Entwicklung durch mehrere Entwickler,
durch klare Schnittstellendefinitionen.

Eine Trennung zwischen der eigentlichen Applikationslogik und allgemein
erforderlichen Systemdiensten (Benutzer Authentifizierung, TransaktionsKontrolle usw.), welche idealerweise bereits durch ein Framework bereitgestellt
werden.

Einfache Kommunikationsmöglichkeiten mit unterschiedlichen Systemen.
Mit der Java 2 Platform, Enterprise Edition wird von Sun eine Entwicklungsumgebung
bereitgestellt, welche sämtliche in diesem Abschnitt erläuterten Anforderungen
berücksichtigt. J2EE unterstützt die Implementierung mehrschichtiger Unternehmensanwendungen, basierend auf einer Komponententechnologie und einem Bereitstellen
diverser Systemdienste für diese Komponenten, wodurch die Komplexität der
Entwicklung verteilter Anwendungen weitestgehend automatisiert wird und es dem
Entwickler ermöglicht wird, sich auf die eigentliche Anwendungslogik zu
konzentrieren. [Sun 2003]
Java 2 Platform Enterprise Edition
5.1.2
65
Mehrschichtige Architektur
Anwendungen basierend auf J2EE werden grundsätzlich in einer mehrschichtigen
Architektur implementiert. Das bedeutet, die Applikationslogik wird nach funktionalen
Kriterien in unterschiedliche Komponenten aufgeteilt und diese Komponenten werden
auf unterschiedlichen Rechnern bzw. Servern, je nach dem, welcher Schicht sie
angehören, ausgeführt. Im Kontext einer mehrschichtigen Architektur unterscheidet
man grundsätzlich zwischen vier Schichten [Pawlan 2001] [Ide 2002]:

Client Layer1: Bildet das User Interface zum Endanwender.

Web Layer: Bereitstellen dynamischer HTML-Seiten für Web-basierte
Anwendung.

Business Layer: Beinhaltet die spezifische Applikationslogik.

Data Layer2: Repräsentiert sämtliche Datenspeicher bzw. Informationssysteme.
J2EE
Applikation 1
J2EE
Applikation 2
ApplikationsClient
Dynamische
HTML Seiten
Client Layer
JSP Seiten
Web Layer
Enterprise
Beans
Enterprise
Beans
Business Layer
Datenbank
Datenbank
Data Layer
Client
Rechner
J2EE
Server
Datenbanken
Server
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Mehrschichtige Architektur [Pawlan 2001]
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 veranschaulicht die zuletzt genannten Schichten und zeigt zwei
typische J2EE Applikationen und die Zuordnung ihrer Komponenten zu den vier
Schichten. J2EE Anwendungen können Web-basiert oder nicht Web-basiert sein. J2EE
Applikation 1 verdeutlicht eine nicht Web-basierte Applikation. In diesem Fall wird
eine Client Applikation direkt am Client Rechner ausgeführt, welche zumeist direkt mit
den Komponenten des Business Layer kommuniziert. Die Applikation ist daher nur auf
drei Schichten verteilt, da der Web Layer übergangen wurde. Ein Beispiel für eine Web1
Aufgrund der Häufigkeit dieser Begriffe sollen die englischen Bezeichnungen übernommen werden.
2
Oder auch als Enterprise Information System (EIS) Layer bezeichnet.
Java 2 Platform Enterprise Edition
66
basierte Applikation ist J2EE Applikation 2. Dem Client werden nur mehr dynamisch
generierte HTML-Seiten gesendet, welche am Client zumeist in einem Internet Browser
visualisiert werden. Die HTML-Seiten werden im Web Layer generiert, beispielsweise
mittels JavaServer Pages (JSP) Technologie. Im Web Layer wird allerdings keine
Applikationslogik implementiert, diese befindet sich im Business Layer. Bei beiden in
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 veranschaulichten Beispielen kommunizieren im letzten Schritt
die Komponenten des Business Layer mit den unterschiedlichen Informationssystemen
im Data Layer. [Sun 1999] [Pawlan 2001]
Die beiden in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text
that you want to appear here..1 gezeigten Beispiele verdeutlichen einmal eine dreiund einmal eine vierschichtige Architektur. Mehrschichtige Architekturen werden
jedoch im Kontext von J2EE grundsätzlich als dreischichtig bezeichnet, da ihre
Komponenten auf drei Systeme verteilt sind. Diese sind, wie ebenfalls in Abbildung
Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear
here..1 dargestellt, der Client Rechner, der J2EE Server und der Datenbank-Server.
Diese Konstruktion verdeutlicht die Erweiterung gegenüber der klassischen
zweischichtigen Client und Server Architektur, welche im Wesentlichen dadurch
charakterisiert ist, dass die Applikationslogik nicht auf einen eigenen Server ausgeführt
wird, sondern auch am Client Rechner. Die dreischichtige J2EE Architektur erweitert
diese zweischichtige Architektur um eine dritte Mittelschicht, welche die
Applikationslogik kapselt und diese auf die Serverseite verlagert. [Sun 1999] [Pawlan
2001]
Die Client Komponenten dieser mehrschichtigen Architektur werden ganz allgemein als
Thin 3 Clients bezeichnet, da sie nur mehr als Interface zur eigentlichen Applikation
dienen. Der Vorteil dieser Vorgehensweise liegt darin, dass die Applikationslogik nicht
mehr auf viele Client Rechner verteilt ist und gewartet werden muss, sondern auf einem
zentralen Server zu finden ist. Dadurch vereinfacht sich die Administration der
gesamten Anwendungen und darüber hinaus hat man den Vorteil, dass man sich beim
Ausführen der Applikationslogik auf einen stabilen, schnellen und sicheren Server
verlassen kann. [Sun 1999] [Pawlan 2001]
Die dargestellte, dreischichtige Architektur einer J2EE Applikation erweist sich als
durchaus zweckmäßig zur Implementierung eines CMS. Das Modell einer Webbasierten Applikation ist ideal für den Einsatz eines CMS in einer Unternehmung. So
können sämtliche Endanwender, seien es Content-Autoren oder Content-Nutzer, über
jeden Rechner mit Internetzugang auf das CMS zugreifen. Die Trennung zwischen
J2EE Server und Datenbankserver ist ebenfalls vorteilhaft, um grundsätzlich die
Applikationslogik von dem Datenbankmanagement-System zu trennen und in dieser
Weise eine Unterstützung unterschiedlicher DBMS zu gewährleisten.
3
engl. „dünn“
Java 2 Platform Enterprise Edition
67
Durch den Einsatz von Thin Clients werden einfache anwendungsspezifische
Anpassungen des User Interface ermöglicht, da diese Änderungen unabhängig von der
eigentlichen Applikationslogik durchgeführt werden können. Damit werden
systemspezifische Anpassungen des CMS unterstützt. Schlussendlich bedeutet eine
dreischichtige Architektur, wie im vorherigen Absatz bereits erwähnt, eine Reduzierung
des Administrationsaufwands, was im Hinblick auf eine durchaus große Anzahl an zu
erwartenden Clients eines CMS, die Effizienz des Gesamtsystems merklich verbessern
kann.
5.1.3
Container und Komponenten
Im vorherigen Abschnitt wurde bereits öfters der Begriff Komponente verwendet. Da
dieser Begriff und die damit zusammenhängenden Container ebenfalls ein wesentlicher
Aspekt der J2EE Plattform sind, sollen diese Begriffe kurz erläutert werden. Unter einer
J2EE Komponente wird eine funktionale Software-Einheit verstanden, welche aus
verschiedenen Java Klassen und zugehörigen Dateien besteht. Eine J2EE Komponente
ist Teil einer J2EE Applikation und kommuniziert innerhalb dieser Applikation mit
anderen Komponenten. Man unterscheidet im Wesentlichen zwischen drei Typen von
Komponenten [Pawlan 2001] [Singh et al. 2002]:

Client Komponenten: Werden im Gegensatz zu den zwei verbleibenden
Komponenten Typen direkt am Client Rechner ausgeführt.

Web Komponenten: Basierend auf Java Servlet 4 oder JavaServer Pages 5 (JSP)
Technologie dienen Web Komponenten dazu, das User Interface für Webbasierte J2EE Anwendungen zu generieren.

Business Komponenten: Die eigentliche Funktionalität, welche die
anwendungsspezifische Problemstellungen lösen soll, ist in den Business
Komponenten gekapselt. Diese Komponenten basieren auf Enterprise
JavaBeans6 (EJB) Technologie.
Web und Business Komponenten werden dementsprechend serverseitig am J2EE Server
ausgeführt. Das Anwenden serverseitiger Technologien macht allerdings das Berücksichtigen vieler komplexer Details notwendig, wie Ressourcen Pooling oder Multithreading, welche jedoch bereits vom J2EE Server implementiert werden und in der
Form eines Containers für die Komponenten zur Verfügung stehen. Ein Container kann
praktisch als Interface zwischen den Komponenten und den systemspezifischen Details
einer verteilten mehrschichtigen Architektur aufgefasst werden. Ein Container bietet
seine Komponenten Services an, welche die gesamte Komplexität der verteilten
Anwendung verstecken und es ermöglichen, sich bei der Entwicklung der Komponenten
rein auf die Applikationslogik zu konzentrieren. Komponenten können im Kontext einer
4
Siehe http://java.sun.com/products/servlet/
5
Siehe http://java.sun.com/products/jsp/
6
Siehe http://java.sun.com/products/ejb/
Java 2 Platform Enterprise Edition
68
J2EE Applikation überhaupt nur dann angewendet werden, wenn sie zuvor in dem
entsprechenden Container installiert7 wurden. [Pawlan 2001]
Die angebotenen Services eines Containers, wie Transaktionskontrolle oder
Sicherheitsaspekte, können teilweise für jede einzelne Komponente unterschiedlich
konfiguriert werden. Jede J2EE Komponente enthält einen sogenannten Deployment
Descriptor, welcher die komponentenspezifischen Eigenschaften definiert, welche bei
der Installation der Komponente in einen Container übernommen werden sollen. Das
Verhalten einer Komponente kann daher in vielen Aspekten durch seinen Deployment
Descriptor bestimmt werden, ohne in den Programmcode selbst eingreifen zu müssen.
[Pawlan 2001]
Browser
ApplikationsClient
ApplikationsClient
Container
Client
Rechner
Servlet
JSP
Seite
Web Container
Datenbank
Enterprise
Bean
Enterprise
Bean
EJB Container
J2EE Server
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
J2EE Server und Containers [Pawlan 2001]
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..2 verdeutlicht das Container Konzept von J2EE. Es zeigt die
unterschiedlichen Komponenten und ihre Zuordnung zu den entsprechenden
Containern. Die Abbildung Error! Use the Home tab to apply Überschrift 1 to the
text that you want to appear here..2 veranschaulicht wiederum die Dreischichtigkeit
einer J2EE Applikation, wobei der J2EE Server den Web und Business Layer abbildet.
Am Client Rechner sind zwei unterschiedliche Client Typen angedeutet. Einerseits der
Web-basierte-Client, wobei dynamische HTML-Seiten in einem Browser visualisiert
werden und andererseits ein Applikations-Client, welcher als Komponente ebenfalls in
In der englischen Literatur wird zumeist der Ausdruck „deployed“ verwendet, welcher nicht unbedingt
mit „installiert“ zu übersetzen ist. Sinngemäß wäre „zum Einsatz bringen“ eine bessere Übersetzung, der
Einfachheit halber soll allerdings „installiert“ verwendet werden.
7
Java 2 Platform Enterprise Edition
69
einem Container läuft und je nach Anwendung entweder über den Web Container
kommuniziert oder direkt mit dem EJB Container (siehe Kapitel 5.1.2).
Das Container Konzept bietet einen sehr innovativen Ansatz zur Implementierung von
Content Management Systemen, da die Applikation innerhalb des Containers ohne
größeren Aufwand skalierbar wird. Da ein CMS auch in großen Unternehmen mit
tausenden Mitarbeitern eine akzeptable Performance bieten muss, ist die Skalierbarkeit
ein wesentlicher Faktor. Viele Aspekte, welche auf die Performance des Systems
Einfluss nehmen, wie Transaktionskontrolle, Datenbankverbindungen oder Life Cycle
Management werden den Komponenten durch den Container zur Verfügung gestellt,
welcher die Skalierbarkeit in diesen Bereichen gewährleistet. Es können auch mehrere
Container auf mehreren Rechnern parallel laufen, womit es möglich ist, dass
beispielsweise Clientanfragen auf mehrere Web Container verteilt werden, um eine
gleichmäßige Verteilung der Last zu erzielen.
Des Weiteren werden durch die Container auch gewisse Sicherheitsaspekte
implementiert und den Komponenten zur Verfügung gestellt. Die Web Container der
J2EE Plattform unterstützen beispielsweise eine User Authentifizierung und
implementieren das Secure Socket Layer (SSL) Protokoll, um die Kommunikation über
das Internet zu sichern. Da bei einem CMS viele Client-Zugriffe über das Internet zu
erwarten sind und der verwaltete Content für eine Unternehmung durchaus wertvoll sein
kann, ist die Unterstützung diverser Sicherheitsmassnahmen der J2EE Plattform sehr
vorteilhaft. [Singh et al. 2002]
Die komponentenorientierte Softwareentwicklung, wie sie durch die J2EE Plattform
unterstützt wird, kann ebenfalls zur Implementierung eines CMS sehr zweckdienlich
sein. Die Darstellungen der Kernfunktionen sowie zweckmäßiger Erweiterungen eines
CMS haben gezeigt, dass ein CMS unter Umständen sehr umfangreiche
Funktionalitäten bieten kann. Die Möglichkeit, hier nach funktionalen Kriterien eine
Trennung in Komponenten vorzunehmen, kann die Implementierung des CMS
wesentlich erleichtern. Es ist dadurch möglich, eine sinnvolle Arbeitsteilung
vorzunehmen und sich voll und ganz auf die Entwicklung gewisser Komponenten zu
konzentrieren. Des Weiteren müssen sämtliche Komponenten gar nicht selbst
entwickelt werden, sondern könnten auch zugekauft werden. Schlussendlich wird die
gesamte Applikation leichter wartbar bzw. erweiterbar, da neue Funktionalität durch
weitere Komponenten hinzugefügt werden kann bzw. einzelne Komponenten gezielt
durch verbesserte Versionen ausgetauscht werden können. [Singh et al. 2002]
5.1.4
Rollen und deren Aufgabenverteilung
Die J2EE Plattform spezifiziert detailliert die Schnittstellen der komponentenorientierten mehrschichtigen Entwicklung von Applikationen. Darunter fallen beispielsweise die angebotenen Services der Container, der Umfang der zu unterstützenden
APIs oder die Struktur der unterschiedlichen Komponenten. Aufgrund dieser genauen
Richtlinien lassen sich unterschiedliche Rollen ableiten, welche eine sinnvolle
Java 2 Platform Enterprise Edition
70
Arbeitsteilung im gesamten Entwicklungsprozess einer J2EE Applikation ermöglichen.
Jede Rolle definiert bestimmte Arbeitsschritte, welche unabhängig von den anderen
beteiligten Rollen ausgeführt werden können. Folgende Rollen werden von der J2EE
Plattform unter anderem definiert [Singh et al. 2002] [Pawlan 2001]:

J2EE Produkt Anbieter: Implementiert die J2EE Plattform nach den Richtlinien
der J2EE Spezifikationen. Der J2EE Produkt Anbieter stellt die Container bereit,
die APIs sowie sämtliche Features der J2EE Platform.

Applikations-Komponenten Anbieter: Implementiert die einzelnen Komponenten, welche als Bausteine einer J2EE Applikation dienen. Die Expertise der
Applikations-Komponenten Anbieter liegt dabei in erster Linie auf dem
anwendungsspezifischen Wissen zur Lösung der geforderten Applikationslogik.

Applikations-Assembler: Fügt eine Menge an Komponenten, welche vom
Applikations-Komponenten Anbieter implementiert wurden, zu einer J2EE
Applikation zusammen, um für einen anwendungsspezifischen Zweck eine
Lösung zu bieten. Der Applikations-Assembler nimmt in der Regel keinen
Einfluss mehr auf den Programmcode der Komponenten, sondern nimmt alle
notwendigen Konfigurationen anhand des Deployment Descriptor (siehe 5.1.3)
vor und erstellt des Weiteren genaue Richtlinien, wie die Applikation zu
konfigurieren ist.

Deployer: Der Deployer ist dafür verantwortlich, eine J2EE Applikation auf
einer J2EE Plattform zu installieren bzw. verfügbar zu machen. Er folgt dabei
den genauen Angaben des Applikations-Assemblers, um sämtliche Konfigurationen richtig vorzunehmen. Typische Aufgaben in dieser Rolle wären das
Konfigurieren der Sicherheitsrichtlinien oder unterschiedlicher Datenbankanbindungen. In weiterer Folge übernimmt der Deployer die Rolle des
Administrators und überwacht und kontrolliert die Ausführung der J2EE
Applikation.

Tool Anbieter: Während sämtliche bisher dargestellten Rollen in ihrer Reihenfolge in etwa dem tatsächlichen Verlauf des Entwicklungsprozesses einer J2EE
Applikation entsprechen, ist die Rolle des Tool Anbieters eher außerhalb des
Entwicklungsprozesses zu sehen und dafür verantwortlich, Tools zu liefern,
welche für die bisher erörterten Rollen eine Hilfestellung bieten. Ein mögliches
Tool wäre beispielsweise eine grafische Unterstützung bei der Erstellung des
Deployment Descriptor.
Ein sehr wesentlicher Aspekt der J2EE Plattform ist die klare Trennung zwischen den
J2EE Produkt Anbietern und den Applikations-Komponenten Anbietern. Dadurch kann
der Entwicklungsaufwand für mehrschichtige, verteilte Applikationen klar in zwei
große Aufgabengebiete aufgeteilt werden. Einerseits in das Bereitstellen einer
Infrastruktur für verteilte Applikationen und andererseits in die Implementierung der
eigentlichen Applikationslogik. Dies verdeutlicht den Vorteil einer Implementierung
eines CMS basierend auf J2EE, da man sich hauptsächlich auf die eigentliche
Java 2 Platform Enterprise Edition
71
Applikationslogik konzentrieren kann und von diversen angebotenen Services der J2EE
Plattform profitieren kann.
Des Weiteren impliziert die klar definierte Rollenverteilung, dass verschiedene Rollen
von verschiedenen Anbietern erfüllt werden können. So kann beispielsweise die J2EE
Plattform von verschiedenen J2EE Produkt Anbietern implementiert werden und damit
können die Komponenten-Entwickler zwischen verschiedenen Implementierungen
wählen. Zugleich ist dadurch gewährleistet, dass bei Ausfall eines Anbieters dieser
Aufgabenbereich durch einen gleichwertigen Anbieter ersetzt werden kann und man
dadurch in keine technologische Abhängigkeit durch einen bestimmten Anbieter gerät.
Da Unternehmungsanwendungen, wie eben beispielsweise ein CMS, zumeist große
Investitionen darstellen, ist der zuletzt dargestellte Aspekt durchaus von Bedeutung.
5.2
Web Services
Web Services sind eine relativ neue Technologie zur Kopplung verteilter Applikationen
über das Internet, unabhängig von Plattform oder Programmiersprache und werden von
der J2EE Plattform durch diverse APIs unterstützt. Aufgrund der Relevanz von Web
Services innerhalb der J2EE Plattform sowie zahlreicher möglicher Anwendungen für
Content Management Systeme sollen Web Services in diesem Abschnitt etwas
detaillierter erörtert werden.
Der Einsatz von verteilten Applikationen mit Clients, welche mit der Darstellung von
HTML-Seiten nur ein Minimum an eigener Logik implementieren (siehe Kapitel 5.1.2),
hat sich spätestens nach der schnellen Ausbreitung des WWW als besonders
zweckmäßig erwiesen, unabhängig von der Entwicklung von J2EE. Die Möglichkeiten
der Darstellung von HTML-Seiten im Browser des Endanwenders sind durchaus
ausreichend, um anspruchsvolle User Interfaces bereitzustellen, jedoch bietet HTML
nicht genügend strukturierte Informationen, um es als sinnvolle Kopplung von
Rechnersystemen nutzen zu können. Angebotene Dienste oder Serviceleistungen über
das Internet sind daher in erster Linie nur für den Menschen nutzbar und sind zur
automatisierten Nutzung durch Applikationen nur bedingt zugänglich. [Hein et. al 2003]
Diese Einschränkung soll allerdings durch Web Services aufgehoben werden. Web
Services verwenden grundsätzlich die gleiche Technologie wie sie auch die WWW
Entwicklung mit sich gebracht hat, nur ist das XML basierte Austauschformat so
strukturiert und mit den notwendigen Informationen über die übertragenen Daten
angereichert, dass Applikationen damit effizient umgehen können. Das Besondere an
diesem Szenario ist, dass Web Services plattformunabhängig sind und grundsätzlich
sämtliche Applikationen, unabhängig davon in welcher Programmiersprache sie
implementiert wurden, miteinander kommunizieren können. Dieser Ansatz ist natürlich
nicht neu, beispielsweise sei auf die Common Object Request Broker Architecture 8
8
Siehe http://www.corba.org/
Java 2 Platform Enterprise Edition
72
(CORBA) verwiesen, welche im Grunde dieselben Zielsetzungen wie Web Services
verfolgt, aber nie wirklich eine breite Anwendung gefunden hat. [Hein et. al 2003]
Web Services bieten jedoch entscheidende Vorteile gegenüber ähnlichen Technologien,
wodurch sich eine schnelle Verbreitung der Web Service Technologie einstellen könnte.
Web Services basieren auf bereits eingesetzten und bewährten Technologien wie XML
oder HTTP und erleichtern daher das Anwenden sowie das Erlernen von Web Services.
Durch den Einsatz eines textbasierten Austauschprotokolls mittels XML wird die
gesamte Kommunikation transparent und kann einfacher implementiert bzw. auf
mögliche Fehler durchsucht werden. [Hein et. al 2003]
Web Services setzen sich im Wesentlichen aus drei Standards zusammen, welche alle
auf XML basieren. Diese sind [Wolter 2001]:

Simple Object Access Protocol 9 (SOAP): SOAP ist das KommunikationsProtokoll von Web Services. Es definiert wie Nachrichten im XML Format
zwischen kommunizierenden Applikationen aussehen sollen.

Web Service Description Language10 (WSDL): Mit WSDL wird das Interface zu
einem Web Service festgelegt. Der Anbieter eines Web Service definiert damit,
wie ein Client der das Web Service nützen möchte, es auch richtig ansprechen
kann.

Universal Description, Discovery and Integration11 (UDDI): UDDI beschreibt
eine Infrastruktur, die es ermöglicht, Web Services zu registrieren und damit für
eine Vielzahl von Interessenten leicht auffindbar zu machen. Um ein Web
Service anzubieten, muss es grundsätzlich nicht mit UDDI registriert werden,
wenn jedoch eine breite Anwendung des Web Service angestrebt wird, sollte
eine Registrierung auf jeden Fall vorgenommen werden.
Die J2EE Plattform bietet eine sehr umfangreiche Unterstützung zur Implementierung
von Web Services. Neben einer Unterstützung durch entsprechende APIs sind Aspekte
wie Skalierbarkeit, Sicherheit und Performance ebenso für einen effektiven Einsatz von
Web Services relevant. Diese Anforderungen werden jedoch aufgrund der Architektur
der J2EE Plattform berücksichtigt. Folgende Technologien bzw. APIs der J2EE
Plattform kommen im Kontext von Web Services zum Einsatz [Armstrong et al. 2003]:
9

Java API for XML Processing12 (JAXP): Zum effizienten Bearbeiten von XML
Daten innerhalb einer Java Applikation (siehe Kapitel 5.3).

SOAP with Attachments API for Java 13 (SAAJ): Bietet die Möglichkeit XML
Dokumente in Form von SOAP Nachrichten zu verschicken.
Siehe http://www.w3.org/TR/SOAP/
10
Siehe http://www.w3.org/TR/wsdl/
11
Siehe http://www.uddi.org/
12
Siehe http://java.sun.com/xml/jaxp/
13
Siehe http://java.sun.com/xml/saaj/
Java 2 Platform Enterprise Edition
73

Java API for XML-based RPC 14 (JAX-RPC): Diese Technologie bietet eine
Infrastruktur um Remote Procedure Calls15 (RPC) sehr einfach durchzuführen.
Diese Technologie basiert auf SOAP und WSDL, um die Kommunikation
durchzuführen sowie sämtliche benötigten Klassen 16 zu generieren. Sehr
vereinfacht ausgedrückt würde es genügen, eine Java Klasse nach den
Richtlinien von JAX-RPC zu erstellen, diese in Form einer Komponenten im
Web Container zu installieren und damit wären die Methoden der Klasse als
Web Service zugänglich.

Java API for XML Registries17 (JAXR): Bietet eine komfortable Möglichkeit auf
Web Service Register basierend auf UDDI zuzugreifen.
Web Services bieten für die Implementierung von Content Management Systemen sehr
innovative Verwendungsmöglichkeiten. Aufgrund der möglichen Kopplung von
unterschiedlichsten Applikationen ergeben sich Anwendungsmöglichkeiten in der
Integration. Web Services könnten beispielsweise als Schnittstelle benutzt werden, um
Content aus unterschiedlichen Altsystemen in einer Unternehmung zu integrieren. Mit
Web Services könnte aber auch ein Content Syndication betrieben werden, indem
Content einerseits über ein Web Service angeboten wird und andererseits relevanter
Content von einem externen Anbieter in das CMS einbezogen wird. Des Weiteren
ergibt sich durch Remote Procedure Calls die Möglichkeit, das CMS um Funktionen zu
erweitern, welche im Kontext von CMS interessant sind. Wird zum Beispiel ein WAI
Validator als Web Service angeboten, könnte ein CMS diese Funktion integrieren.
Denkbar wäre auch ein Web Service, welches aus Bildern automatisiert eine semantisch
äquivalente textuelle Beschreibung extrahieren kann. Ein CMS könnte dieses Service
nutzen, um beim Einfügen eines neuen Bildes in das CMS das Bild mit sinnvollen
Metainformationen zu versehen, womit es leichter auffindbar wird. Grundsätzlich
können durch Web Services sämtliche denkbaren Funktionalitäten in ein CMS
einbezogen werden. Der große Vorteil ist, dass Funktionalitäten von Applikationen
genutzt werden können, welche nicht ausschließlich auf Java Technologien basieren.
Der Nachteil ist, dass Funktionalitäten, welche man integrieren möchte, natürlich als
Web Services zur Verfügung stehen müssen.
5.3
Relevante Technologien
Die J2EE Plattform bietet noch weitere Technologien bzw. APIs, welche im Bezug auf
die Implementierung eines CMS durchaus vorteilhaft sein können. In diesem Abschnitt
14
Siehe http://java.sun.com/xml/jaxrpc/
15
Ein RPC ist der Aufruf einer Funktion auf einem entfernten Rechner.
16
Man spricht zumeist von stubs und ties.
17
Siehe http://java.sun.com/xml/jaxr/
Java 2 Platform Enterprise Edition
74
soll eine Auswahl an relevanten Technologien aufgezeigt werden und deren Bezug zu
Content Management Systemen erläutert werden.
Die J2EE Plattform ist besonders durch sehr umfassende Möglichkeiten der Integration
unterschiedlicher Systeme gekennzeichnet, wie beispielsweise die bereits erörterte Web
Service Technologie (siehe Kapitel 5.2). Eine weitere in diesem Kontext interessante
Technologie ist die J2EE Connector Architecture18. Durch diese Technologie berücksichtigt die J2EE Plattform das Integrieren unterschiedlichster bereits existierender
Informationssysteme innerhalb einer Unternehmung, wie beispielsweise Enterprise
Resource Planning (ERP) oder Customer Relationship Management (CRM). [Rodoni
2001] Weitere Technologien, welche J2EE Applikationen zur Verfügung stehen und
Integrationsaspekte berücksichtigen, sind [Singh et al. 2002]:

Java Database Connectivity (JDBC) API 19 : Die JDBC API bietet eine
datenbank-unabhängige Verbindung zwischen der J2EE Plattform und einer
Vielzahl relationaler Datenquellen.

Java Transaction API 20 (JTA): Ermöglicht eine Transaktionskontrolle über
mehrere in eine J2EE Applikation integrierte, heterogene Informationssysteme.

Java Interface Definition Language (IDL) 21 : Unterstützt die Integration von
CORBA Services.
Die Integration sämtlicher Datenbestände innerhalb einer Unternehmung in das CMS ist
ein wichtiger Aspekt für den erfolgreichen Einsatz eines CMS. Aufgrund der Vielfalt an
Integrationstechnologien erweist sich die J2EE Plattform als sehr gut geeignet für die
Implementierung sämtlicher Integrationsvorhaben eines CMS. Es sei aber auch darauf
verwiesen, dass natürlich die Effizienz bzw. Einfachheit der Integration auch dadurch
determiniert wird, inwieweit die vorgegebenen Standards eingehalten bzw. unterstützt
werden, wie beispielsweise bei der J2EE Connector Architecture.
Weitere relevante Technologien, welche durch die J2EE Plattform angeboten werden,
sind [Armstrong et al. 2003] [Singh et al. 2002]:

Java API for XML Processing (JAXP): Durch diese Technologie wird ein
komfortabler Umgang mit XML Daten innerhalb einer Java Applikation
gewährleistet. JAXP unterstützt die Parser Standards SAX und DOM um XML
Daten als eine Folge von Events einzulesen oder sie in einer Baumstruktur
abzubilden. Weiters bietet JAXP eine Unterstützung für XML Schema sowie für
XSLT, um beliebige XML Transformationen durchzuführen (siehe Kapitel
4.1.1). Des Weiteren wurde JAXP derart konzipiert, dass die eigentliche
Implementierung der XML Verarbeitung ausgetauscht werden kann, um nach
18
Siehe http://java.sun.com/j2ee/connector/
19
Siehe http://java.sun.com/products/jdbc/
20
Siehe http://java.sun.com/products/jta/
21
Siehe http://java.sun.com/products/jdk/idl/
Java 2 Platform Enterprise Edition
75
unterschiedlichen Kriterien (z.B. Performance oder Speicherbedarf) die
geeignete Implementierung zu wählen. JAXP zeigt eine Unterstützung der
wesentlichen Standards im Bereich von XML und bietet daher komfortable
Möglichkeiten, XML Daten innerhalb einer CMS Applikation effizient einzubeziehen.

Java Naming and Directory Interface22 (JNDI): Mit JNDI wird unter anderem
ein Zugriff auf Directory Services geboten, womit beispielsweise eine
Unterstützung für Standards wie LDAP gegeben wird (siehe Kapitel 3.2.4
Zugriffskontrolle). Für die Implementierung eines CMS wird damit die
Möglichkeit geboten, auf bereits existierende Benutzerdaten innerhalb einer
Unternehmung zuzugreifen.

JavaMail API23: Mit dieser Technologie wird das Versenden von Emails aus
einer Java Applikation unterstützt. Die möglichen Verwendungen von Emails
innerhalb eines CMS wurden bereits erörtert (siehe 3.2.6), womit sich die
JavaMail API als durchaus vorteilhaft zur Implementierung eines CMS erweist.

Java Internationalisation APIs: Durch verschiedene APIs wird die
Internationalisierung einer J2EE Applikation unterstützt. Aspekte wie das
Auslagern sprachabhängiger Texte aus dem eigentlichen Programmcode oder
die richtige Formatierung von Zahlen-, Währungs-, Datums- und Zeitangaben
werden damit berücksichtigt. Die Java Programmierumgebung codiert Texte
intern als Unicode, womit die Java Plattform grundsätzlich mit sämtlichen
existierenden Sprachen umgehen kann. Die Internationalisierung eines CMS ist
ein wichtiger Aspekt, womit eine Unterstützung in diesem Bereich bei der
Implementierung sehr wichtig ist. Es sei allerdings erwähnt, dass die genannten
Java APIs eher auf die Internationalisierung der Applikation bzw. des User
Interfaces ausgerichtet sind und nicht automatisch Internationalisierungsaspekte
des Content innerhalb des CMS berücksichtigen.
5.4
Schlussbemerkung
Die in diesem Kapitel dargestellten Konzepte und Technologien zeigen, dass sich die
J2EE Plattform sehr gut als Basis zur Implementierung eines Content Management
Systems eignet. Grundsätzlich lassen sich keine APIs bzw. Technologien der J2EE
Plattform identifizieren, welche eine direkte Unterstützung für die Funktionen eines
CMS darstellen, jedoch bietet die J2EE Plattform viele Services, welche eine effiziente
und komfortable Implementierung eines CMS ermöglichen. Die wesentlichsten in
diesem Kapitel diskutierten Vorteile der J2EE Plattform sind in Tabelle Error! Use the
Home tab to apply Überschrift 1 to the text that you want to appear here..1
zusammengefasst. Um eine grobe Gliederung der J2EE Konzepte bzw. Technologien
22
Siehe http://java.sun.com/products/jndi/
23
Siehe http://java.sun.com/products/javamail
Java 2 Platform Enterprise Edition
76
vorzunehmen, werden diese in Tabelle Error! Use the Home tab to apply Überschrift
1 to the text that you want to appear here..1 den erörterten Funktionen eines CMS
aus Kapitel 3 und 4 zugeordnet. Es sei allerdings darauf verwiesen, dass diese
Zuordnung nicht bedeutet, dass dadurch gewisse Funktionen eines CMS vollständig
realisiert werden können. Die Zuordnung verdeutlicht mehr eine mögliche
Unterstützung bei der Implementierung dieser Funktionen des CMS.
CMS Funktion
Architektur
(Kap. 5.1.2)
Content
Organisation
Trennung zwischen
Data und Business
Layer
Erzeugung
Web-basierte
Architektur
Container
Konzept
(Kap. 5.1.3)
Komponenten
Konzept
(Kap. 5.1.3)
Web
Services
(Kap. 5.2)
Weitere
Technologien
(Kap. 5.3)
Publikation
User Authentifizierung sowie
gesicherte Kommunikation mittels
SSL
Content
Kontrolle
Information
Retrieval
JavaMail API
Collaboration
Integration
Administration
J2EE Connector
Architecture
Thin Clients
erleichtern systemspezifische
Anpassungen
Erleichterung der
Administration
aufgrund
serverseitiger
Applikationslogik
Unterstützung der
Skalierbarkeit
Erleichterung der
Implementierung
sämtlicher Funktionalitäten eines CMS durch
die Komponentenorientierung
Möglichkeit der
Integration von
Content sowie
sämtlicher
Funktionalitäten
unterschiedlichster
Systeme,
unabhängig von
Plattform und
Programmiersprache
JDBC API
Java Transaction
API
Java IDL
Java Naming and
Directory Interface
Internationalisierung
Java
Internationalisation
APIs
XML
Java API for XML
Processing
Barrierefreier
Informationszugang
Digital Right
Management
PortalFunktionalität
Digital Asset
Management
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Vorteile der J2EE Plattform für ein CMS
Java 2 Platform Enterprise Edition
77
Ein wesentlicher Vorteil der J2EE Plattform im Hinblick auf die Umsetzung eines
Content Management Systems ist die einfache Skalierbarkeit von J2EE Applikationen.
Aufgrund des Container Konzepts wird die Komplexität verteilter Anwendung versteckt
und man kann sich bei der Implementierung voll und ganz auf die eigentliche
Problemstellung der Applikation konzentrieren. Ein zweiter wesentlicher Aspekt ist die
Berücksichtigung vieler Integrationsmöglichkeiten der J2EE Platform. Durch eine
Vielzahl an Technologien wird eine Kommunikation bzw. Integration mit anderen
Systemen unterstützt. Integrationsmöglichkeiten mit bestehenden Informationssystemen
innerhalb einer Unternehmung sind im Kontext eines CMS sehr wichtig, um sämtlichen
in der Unternehmung existierenden Content zu verwalten.
Sehr vorteilhaft für die Implementierung eines CMS sind auch die diversen
Möglichkeiten der J2EE Plattform, funktionale Erweiterungen vorzunehmen. Dies ist
einerseits durch das Komponenten-Konzept möglich, wobei man allerdings auf die
J2EE Plattform beschränkt ist oder andererseits durch Web Services, welche eine Programmiersprachen unabhängige Kommunikation zwischen Applikationen ermöglichen.
Die zu erwartende Bedeutung von Web Services in der Zukunft wird in der J2EE
Plattform durch eine umfangreiche Unterstützung dieser Technologie verdeutlicht. Die
Unterstützung einer mehrschichtigen Web-basierten Architektur sowie weitere relevante
Technologien für die Umsetzung eines CMS vervollständigen die Vorzüge der J2EE
Plattform und machen sie zu einer gut geeigneten Entwicklungsumgebung für effiziente
und zielführende Content Management Systeme. Nach dieser grundsätzlichen
Evaluierung der J2EE Plattform werden nun im nächsten Kapitel konkrete
Implementierungen von Content Management Systemen basierend auf J2EE untersucht.
6
Implementierungen von Content
Management Systemen
In diesem Kapitel soll ein Überblick über Implementierungen von Content Management
Systemen gegeben werden. Die folgenden Darstellungen unterteilen sich zu diesem
Zweck in zwei Bereiche, einerseits CMS Lösungen im kommerziellen Bereich und
andererseits im Open Source Bereich. Sämtliche erörterten Systeme basieren dabei auf
der im vorherigen Kapitel erläuterten Entwicklungsumgebung Java 2 Platform,
Enterprise Edition. Die Darstellung einer Auswahl an konkreten CMS Lösungen soll
aufzeigen, welchen Funktionsumfang existierende Systeme bieten und inwiefern die
bisher in der vorliegenden Arbeit identifizierten Anforderungen eines Content
Management Systems (siehe Kapitel 3 und 4) Berücksichtigung finden. Zu diesem
Zweck werden die gewonnenen Erkenntnisse aus den Erörterungen der kommerziellen
sowie Open Source Lösungen jeweils im Anschluss an die Darstellungen der konkreten
Systeme kurz zusammengefasst. Als Abschluss des Kapitels werden sämtliche in den
Kapiteln 3 und 4 identifizierten Anforderungen eines CMS den aus diesem Kapitel
vorgestellten CMS Implementierungen gegenübergestellt, um auf eine Erfüllung bzw.
Nichterfüllung der Anforderungen zu schließen.
6.1
Kommerzielle CMS Lösungen
Es ist das Ziel dieses Abschnittes, einen Überblick über kommerzielle CMS
Implementierungen mit einer Unterstützung für J2EE Technologien zu geben. Es ist im
Rahmen der vorliegenden Arbeit nicht möglich, den gesamten CMS Markt zu
berücksichtigen, da es weltweit bereits unzählige Anbieter gibt. In der Produktdatenbank einer bekannten deutschen Website rund um das Thema Content
Management findet man derzeit beispielsweise 299 Einträge im Bereich Enterprise
Content Management1 [CMS Produktfinder 2003]. Der Autor der vorliegenden Arbeit
möchte mit den folgenden Erörterungen einen Überblick über Produkte führender
Anbieter geben, um damit einen Eindruck zu vermitteln, welcher Funktionalitätsumfang
im kommerziellen Bereich zu erwarten ist. Die Auswahl dieser Produkte erfolgt anhand
1
Diese Zahl berücksichtigt nicht eine Unterstützung von J2EE.
Implementierungen von Content Management Systemen
79
von Auflistungen bekannter bzw. führender CMS Implementierungen bei namhaften
Analysten wie Ovum2 oder Forrester Research3.
Sämtliche dargestellten Produkte ordnen sich selbst dem Enterprise Content
Management zu und bieten dementsprechend anspruchsvolle Lösungen, um sämtlichen
Anforderungen an Content Management in großen Unternehmungen nachzukommen.
Es würde den Rahmen der vorliegenden Arbeit bei weitem sprengen, eine genaue
Evaluierung sämtlicher Funktionen vorzunehmen, deswegen beschränken sich die
Darstellungen auf einen groben Überblick. Es erweist sich auch oft sehr mühselig, aus
den Produktbeschreibungen der einzelnen, kommerziellen Anbieter ein objektives Bild
der gebotenen Funktionen der einzelnen Systeme zu extrahieren. Es sei jedoch noch
darauf verwiesen, dass es bereits eine Vielzahl an professionellen Analysten gibt,
welche zum Teil sehr detaillierte Evaluierungen von bekannten Content Management
Systemen anbieten, wie beispielsweise Forrester Research, Contentmanager.de 4 ,
NewMediaSales.com 5 oder Ovum. Leider sind qualitativ hochwertige Informationen
zumeist kostenpflichtig. Die folgenden Darstellungen beziehen sich fast ausschließlich
auf die Produktbeschreibungen der einzelnen Anbieter auf ihren Websites.
6.1.1
VIP Enterprise 8
Die Gauss Interprise AG 6 bietet mit ihrem Produkt VIP Enterprise 8 ein Enterprise
Content Management System für große, verteilte Unternehmungen. VIP Enterprise
setzt sich aus unterschiedlichen Softwaremodulen zusammen, welche aufbauend auf
einem gemeinsamen Content Repository die Erstellung, Verwaltung, Personalisierung,
Optimierung und Bereitstellung unternehmensweiter Inhalte und Geschäftsprozesse
ermöglichen sollen. Die wesentlichen Softwaremodule sind:

VIP ContentManager: Ermöglicht das effiziente Erstellen, Verwalten und
Ausliefern von Inhalten jedweder Art, sowie die Verwaltung von Websites.

VIP PortalManager: Bietet einen personalisierten Zugang auf den Content der
gesamten Unternehmung.

VIP DocManager: Unterstützt klassisches Dokument Management, d. h. Erfassen und Verwalten auch von papierbasierten Dokumenten.

VIP WorkflowManager: Ermöglicht die Organisation, Automatisierung und
Optimierung von Geschäftsprozessen.
Darüber hinaus definiert VIP Enterprise Objects einen integralen Layer, welcher für
sämtliche kommunikative Aufgaben sowohl innerhalb als auch außerhalb VIP
2
Siehe http://www.ovum.com/
3
Siehe http://www.forrester.com/
4
Siehe http://www.contentmanager.de/
5
Siehe http://www.newmediasales.com/
6
Siehe http://www.gaussvip.com/
Implementierungen von Content Management Systemen
80
Enterprise 8 verantwortlich ist und somit als Bindeglied zwischen den einzelnen VIP
Komponenten fungiert. Die wesentlichen Elemente und deren Aufgaben der VIP
Enterprise Objects sind:

VIP Connectors: Ermöglichen beispielsweise die Integration diverser ERP,
CRM oder Datenbanken namhafter Hersteller.

VIP WebServices: Bieten eine Unterstützung der Web Service Technologie, um
Dienste von VIP Enterprise bereitzustellen, Content Syndication zu ermöglichen
oder externe Applikationen und Dienstleistungen einzubeziehen.

VIP APIs: Programmierschnittstellen zur Implementierung unternehmensspezifischer Anpassungen.
In Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 werden die bisher erläuterten Module und deren Beziehung
zueinander grafisch dargestellt. Aufgrund des modularen Aufbaus von VIP Enterprise
kann es Schritt für Schritt erweitert werden, um so den Anforderungen einer Unternehmung gerecht zu werden. Es stehen noch eine Vielzahl weiterer Module zur
Auswahl, wie zum Beispiel der VIP ContentMiner zur Integration innovativer
Suchmöglichkeiten. Der VIP ContentMiner findet die semantischen Zusammenhänge
einzelner Worte und führt darauf basierend eine intelligente Suche aus. [VIP Enterprise
2003]
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Architektur von VIP Enterprise 8
VIP Enterprise 8 präsentiert sich als ein sehr umfassender Ansatz für ein effektives
Content Management und unterstützt klassisches Dokument Management ebenso wie
die Erfassung von strukturiertem Content für eine optimierte Darstellung des Content
auf unterschiedlichen Kanälen. Damit soll es möglich sein, sämtliche Content-Typen
Implementierungen von Content Management Systemen
81
gleich effizient in einem kohärenten System zu verwalten. Das Content Management
Modul ist Web-basiert und zeigt im Wesentlichen eine volle Abdeckung sämtlicher
Kernfunktionen und bietet durch die VIP Enterprise Objects sehr gute Integrationsmöglichkeiten.
6.1.2
Vignette V7
Die Plattform Vignette V7 der gleichnamigen Firma Vignette 7 stellt einen Lösungsansatz für die Bereiche Content Management sowie Portale dar. Vignette V7 steht für
eine Vielzahl an Einzelprodukten, welche je nach den Anforderungen der Unternehmungen individuell zusammengestellt werden können. Mit dem Einzelprodukt
Vignette Content Management wird das effiziente Erzeugen, Verwalten und Publizieren
von Content unterstützt, wobei der Schwerpunkt beim Publikationsmedium am Web
liegt.
Der Zugriff auf den Content sowie sämtliche Managementaufgaben können über ein
einheitliches Web Interface vorgenommen werden, welches im Kontext von Vignette
V7 als Command Center bezeichnet wird. Das Command Center greift über ein so
genanntes Virtual Repository auf den zu verwaltenden Content zu. Dieses Virtual
Repository soll sämtlichen in einer Unternehmung vorhandenen Content von
strukturierten XML Dateien bis hin zu unstrukturierten multimedialen Content über eine
einheitliche Schnittstelle verfügbar machen, um so den gesamten Content für Web Sites
bzw. Portale zu nutzen. Existierender Content innerhalb der Unternehmung kann dabei
in den entsprechenden bereits vorhandenen Informationssystemen liegen bleiben und
wird über das Virtual Repository einfach integriert. Diese Integration wird ermöglicht
durch Vignette Business Integration Studio. Das zuletzt genannte Tool bietet eine
grafische Oberfläche zur Erstellung von Content-Adaptern zwischen existierenden
Systemen und der Vignette V7 Plattform. Natürlich werden bereits Adapter zu
bekannten ERP oder CRM Systemen angeboten.
Für die Bearbeitung des von Vignette verwalteten Content werden diverse Eingabewerkzeuge unterstützt, wie zum Beispiel Microsoft Office, Web Browser oder XML
Erstellungswerkzeuge, um den Content-Autoren weiterhin ein Arbeiten mit bereits im
Einsatz befindlichen Tools zu erlauben. Die Vignette Content Management Applikation
bietet allerdings auch einen so genannten Content Type Modeller, um neue ContentTypen zu definieren und zu verwalten wie News, Artikel oder Produktbeschreibungen.
Weitere interessante Produkte der Vignette V7 Plattform sind:
7

Vignette Analysis & Reporting: Ermöglicht es, die Zugriffe auf eine Website zu
messen, analysieren und darzustellen.

Vignette Process Workflow Modeler: Unterstützt die grafische Modellierung von
Workflows.
Siehe http://www.vignette.com/
Implementierungen von Content Management Systemen

82
Vignette Application Portal: Bietet die Möglichkeit eines personalisierten
Zugangs auf den gesamten Content der Unternehmung und unterstützt durch
mitgelieferte und einsatzfertige Portlets, Services wie Collaboration, Terminplanung, News oder Email.
Vignette V7 unterstützt XML sowie Web Services um basierend auf bekannten
Standards einfache Integrationsmöglichkeiten zu bieten sowie den verwalteten Content
auch außerhalb der Vignette Plattform zugreifbar zu machen. [Vignette 2003] Die
einzelnen Produkte der Vignette V7 Plattform verdeutlichen einen sehr umfassenden
und professionellen Ansatz für Content Management, stellen jedoch auch eine sehr
große Investition dar. Der durchschnittliche Verkaufspreis bei Vignette liegt bei US$
321.000. [TechRankings 2003]
6.1.3
DB2 Content Manager 8.2
Mit DB2 Content Management bezeichnet IBM8 ihre gesamte Plattform für Lösungen
im Bereich Enterprise Content Management, um ein effizientes Verwalten von
digitalem Content in jeder Form zu ermöglichen. Der IBM DB2 Content Manager ist
das Kernprodukt der gesamten Plattform, welcher in erster Linie den gesamten Content
von einfachen Text Dateien bis hin zu komplexen multimedialem Content organisieren
soll. Interessant ist der Aspekt, dass die Architektur des DB2 Content Managers eine
Trennung zwischen der Speicherung des eigentlichen Content und der Speicherung
sämtlicher organisatorischer Informationen vorsieht. Die Architektur besteht im
Wesentlichen aus den folgenden fünf Elementen [IBM DB2 2003a]:
8

Library Server: Der Library Server ist die zentrale Stelle, um die Metadaten des
verwalteten Content zu speichern. Aufgaben wie Zugriffskontrolle oder das
lokalisieren des tatsächlichen Speicherorts des Content werden hier behandelt.

Resource Manager: Bei dem Resource Manager handelt
spezialisierten Content-Speicher, welcher den eigentlichen
Während es grundsätzlich nur einen Library Server gibt,
mehrere Resource Manager in einer typischen DB2
Architektur.

Mid-tier Server: Stellt die Verbindung zwischen Library Server und den Webbasierten Clients dar.

eClient: Ein Web-basierter Client, welcher ein einheitliches Interface zur
gesamten Content Management Applikation darstellt. Content-Anfragen des
Client gehen über den Mid-tier Server an den Library Server und werden dort
behandelt. Darf der Client den entsprechenden Content abrufen, so läuft dies im
Wesentlichen über eine direkte Verbindung mit dem entsprechenden Resource
Manager.
Siehe http://www.ibm.com/
es sich um einen
Content speichert.
existieren zumeist
Content Manager
Implementierungen von Content Management Systemen

83
Client for Windows: Ein Desktop Client für Windows Systeme, welcher
funktional mit dem eClient vergleichbar ist.
Mit dieser Architektur begründet IBM eine skalierbare und leicht erweiterbare Plattform
für ein effektives Content Management. Mit den diversen Erweiterungen der IBM
Content Management Plattform ist es beispielsweise möglich, große multimediale
Dateien effizient zu verwalten sowie Streaming Video oder Audio zur Verfügung zu
stellen. Es gibt aber auch Komponenten für das Verwalten von papierbasierten
Dokumenten in digitalisierter Form. Des Weiteren gibt es eine eigene Komponente, um
Digital Right Management Funktionalitäten zur Verfügung zu stellen. Die Aufbereitung
und Publikation des gesamten von DB2 Content Manager verwalteten Content für
Websites wird ebenfalls in einer eigenen Web Content Management Komponente
angeboten. Integrationsaspekte werden ebenfalls entsprechend berücksichtigt und
erlauben es, diverse bereits vorhandene Content-Speicher in einer Art und Weise zu
integrieren, als ob sie Teil von IBM Content Manager wären. Mit den zahlreichen
Komponenten des IBM Content Manager umfasst IBM Dokument-, Web Content-,
Asset- sowie Right Management und begründet damit einen effektiven Ansatz,
sämtlichen Content einer Unternehmung zu verwalten. [IBM DB2 2003]
IBM Content Management stellt den wohl umfassendsten Ansatz von den in diesem
Abschnitt vorgestellten kommerziellen CMS Lösungen dar. Es sei allerdings nochmals
erwähnt, dass es im Rahmen der Recherchearbeiten für dieses Produkt aufgrund der
Vielzahl an unterschiedlichen IBM Lösungen sowie Dokumentationen, welche eher auf
einem abstrakten Niveau die Hauptmerkmale der IBM Produkte beschreiben, ein
tatsächlicher Einblick in den Funktionsumfang von IBM Content Manager relativ
schwer fällt. Aufgrund der Komplexität der IBM Produkte muss man auch mit
entsprechend hohen Kosten rechnen, wobei der durchschnittliche Verkaufspreis bei
IBM Content Manager bei US$ 350.000 liegt. [TechRankings 2003]
6.1.4
FileNet P8
Mit FileNet P8 bietet die gleichnamige Firma FileNet9 eine Vielzahl an Produkten für
Enterprise Content Management, welche sich wiederum in beliebiger Kombination
zusammenstellen lassen. Die wesentlichen Komponenten sind:
9

FileNet Content Manager: Ermöglicht das Organisieren und Verwalten von
Content von der Erzeugung bis hin zur Archivierung.

FileNet Web Content Manager: Dient zum Erstellen und Verwalten von
komplexen Websites in unterschiedlichen Sprachen. Unterstützt die Aufbereitung von Content zur Darstellung in unterschiedlichen Formaten.

FileNet Image Manager: Unterstützt die Speicherung und Verwaltung von
papierbasierten Dokumenten in digitalisierter Form.
Siehe http://www.filenet.com/
Implementierungen von Content Management Systemen

84
FileNet Business Process Manager: Dient zur Erstellung und Verwaltung
komplexer Geschäftsprozesse innerhalb einer Unternehmung.
FileNet P8 bietet eine Reihe weiterer Module bzw. Adapter, welche eine Integration
von Datenquellen namhafter Hersteller erlauben. Sämtliche Komponenten der FileNet
P8 Plattform greifen wiederum über eine einheitliche Schnittstelle auf den Content zu,
unabhängig ob sich der Content in einem von FileNet verwalteten oder externen
Datenspeicher befindet. FileNet P8 setzt bei Integrationsaspekten ebenfalls auf offene
Standards wie XML und Web Services, um in diesem Bereich möglichst flexibel zu
sein. Portal-Funktionalitäten werden von FileNet P8 kaum berücksichtigt, dafür gibt es
jedoch eine Unterstützung einer leichten Integration in Portal-Lösungen namhafter
Anbieter.
Erwähnenswert ist der Aspekt, dass FileNet einen barrierefreien Informationszugang
unterstützt und sich derzeit im Prozess der Evaluierung sämtlicher FileNet Produkte
hinsichtlich eines barrierefreien Zugangs befindet. FileNet P8 präsentiert sich als eine
sehr umfangreiche Plattform, um einerseits klassischem Dokument Management
nachzukommen und andererseits die Erzeugung von hochstrukturiertem Content zu
ermöglichen sowie eine professionelle Gestaltung von Websites zu gewährleisten.
[FileNet 2003] Die Investitionskosten in ein derartiges System sind allerdings wiederum
erheblich, der durchschnittliche Verkaufspreis bei FileNet liegt bei US$ 125.000.
[TechRankings 2003]
6.1.5
Zusammenfassung
Aus den Darstellungen einiger CMS Implementierungen führender Anbieter lassen sich
einige interessante Aspekte ableiten. Beispielsweise zeigen alle Systeme eine sehr
modulare Architektur. Einzelne Funktionen werden in unterschiedlichen Modulen
angeboten und lassen sich individuell kombinieren. Dies entspricht der identifizierten
Konsequenz aus den zahlreichen erörterten Erweiterungen eines CMS in Kapitel 4
(siehe Kapitel 4.4). Es zeigt sich auch, dass manche Aspekte aus Kapitel 4 durchaus
Berücksichtigung in anspruchsvollen Enterprise CMS Lösungen finden. Hinsichtlich
der Ausführungen aus Kapitel 3 lässt sich bei sämtlichen Produkten grundsätzlich eine
breite Abdeckung der identifizierten Anforderungen erkennen. Interessant ist, dass die
meisten Systeme Wert darauf legen, bei der Content-Erzeugung eine Unterstützung für
häufig verwendete Autoren Werkzeuge, wie beispielsweise Microsoft Word, zu bieten.
Autoren soll es ermöglicht werden, weiterhin in ihrer gewohnten Umgebung zu arbeiten
und das CMS übernimmt im Hintergrund sämtliche Managementaufgaben.
Des Weiteren fällt auf, dass die Integration mit bestehenden Datenquellen innerhalb der
Unternehmung ein wichtiger und oft betonter Punkt bei CMS Anbietern ist. In diesem
Zusammenhang lässt sich bei den meisten Systemen ein Layer erkennen, welcher auf
der einen Seite durch diverse Adapter unterschiedliche Datenquellen integriert und auf
der anderen Seite eine Plattform darstellt, auf der die unterschiedlichen Module eines
Anbieters aufbauen um über eine einheitliche Schnittstelle Zugriff auf sämtlichen
Implementierungen von Content Management Systemen
85
Content zu haben, unabhängig wo sich der Content tatsächlich befindet. Die meisten
CMS Anbieter unterstützen bereits die Integration von Informationssystemen namhafter
Hersteller durch eine Vielzahl von Adaptern. Allerdings lässt sich hier kein einheitlicher
Ansatz erkennen, sodass jeder CMS Anbieter seine nativen Adapter für gewisse zu
integrierende Systeme anbietet. Zu bemerken wäre noch, dass im Kontext der
Integration externer Content-Quellen fast bei allen Systemen Web Services (siehe
Kapitel 5.2) sowie XML (siehe Kapitel 4.1.1) eine bedeutende Rolle zukommt.
Sämtliche betrachteten Systeme stellen Lösungen für ein Enterprise Content
Management System dar und man erkennt deutlich das Bestreben der diversen Anbieter,
auf die Möglichkeiten der Verwaltung sämtlicher in einer Unternehmung vorkommender Content-Typen hinzuweisen. Die dargestellten Systeme machen jedoch eher
den Eindruck einer Dokument Management Lösung, da schwerpunktmäßig die
Erfassung von sämtlichem in der Unternehmung vorhandenen Content in zumeist
unstrukturierter Form im Vordergrund steht, und nicht ein durchgängiges Einhalten der
Anatomie des Content (siehe Kapitel 2.3.1).
Nach Meinung des Autors der vorliegenden Arbeit erkennt man dadurch, dass sich
anspruchsvolle Content Management Systeme aus bewährten Dokument Management
Systemen entwickelt haben und die Verwendung bzw. Einführung des ContentBegriffes auch aus Marketinggründen stattgefunden hat, um auf die Innovativität des
entsprechenden Produkts hinzuweisen (siehe Kapitel 2.2.3). Allerdings muss man auch
festhalten, dass Content Management grundsätzlich sämtlichen Content effizient
verwalten soll (siehe Kapitel 2.2.2). Da in einer Unternehmung zumeist Unmengen an
unstrukturiertem Content bereits existieren – wie z.B. multimediale Dateien oder
Dokumente in proprietären Formaten – kann nicht zu einem bestimmten Zeitpunkt
verlangt werden, dass für ein CMS die Anatomie sämtlichen Contents vollständig offen
liegt.
Der Autor der vorliegenden Arbeit stimmt mit der Meinung der Autoren Wilkoff et. al
überein, welche die Entwicklung eines ECMS als eine Vermischung diverser
Technologien sehen, nämlich Web Content-, Dokument- und Asset Management (siehe
Kapitel 2.2.3 sowie 4.2.3). Während in den vergangenen Jahren für diese drei Bereiche
zumeist drei getrennte Management Systeme implementiert wurden, entwickeln sich
heute so genannte Enterprise Content Management Systeme, welche eine kohärente
Lösung für die drei zuvor erwähnten Einzeldisziplinen darstellen. [Wilkoff et. al 2001]
Das Bestreben, Content strukturiert zu erfassen und eine getrennte Speicherung von
Struktur, Inhalt und Darstellungsform zu gewährleisten wird dabei am ehesten für Web
Content realisiert. Die verbleibenden Content-Typen wie Dokumente oder multimediale
Dateien werden im Wesentlichen weiterhin in ihrer ursprünglichen Form in spezialisierten Komponenten einer einheitlichen ECMS Lösung verwaltet. Wobei für die
zuletzt genannten Content-Typen Aspekte wie Versionierung, Zugriffskontrolle oder
Suchmöglichkeiten im Kontext der erörterten Systeme eher im Vordergrund stehen als
eine durchgängige maschinelle Erfassbarkeit der Anatomie des Content.
Implementierungen von Content Management Systemen
6.2
86
Open Source CMS Lösungen
Im folgenden Abschnitt sollen CMS Implementierungen aus dem Open Source Bereich
erörtert werden. Nimmt man keine Einschränkungen vor, so findet sich schnell eine
große Anzahl an Open Source Projekten, welche sich der Kategorie Content
Management Systeme zuordnen lassen10. Es existiert auch eine internationale Organisation namens OSCOM11 mit dem Ziel, ein Netzwerk aufzubauen, um einen möglichst
schnellen und effektiven Gedankenaustausch unter den diversen Open Source Entwicklern zu ermöglichen. Einzelne Open Source Projekte habe auch bereits ein sehr
professionelles Niveau erreicht und entwickeln sich in Zeiten von gekürzten IT Budgets
als eine interessante Alternative zu den teilweise sehr großen Investitionen, welche im
kommerziellen Bereich verlangt werden. [McGrath 2002]
In diesem Abschnitt soll eine Auswahl an J2EE-basierten Open Source Content
Management Systemen dargestellt werden. Ausgewählt wurden in erster Linie
Produkte, welche aufgrund von Bekanntheit, guter Dokumentation oder innovativen
Ideen einen professionellen Eindruck vermitteln. OpenCms bzw. das Red Hat CMS
werden beispielsweise bei [McGrath 2002] als interessante Alternativen zu kommerziellen Produkten genannte und werden auch regelmäßige bei OSCOM Konferenzen
vorgestellt. Die folgenden Ausführungen basieren nicht ausschließlich auf Literaturrecherche der Produkt-Dokumentationen, sondern, da es sich ja um frei erhältliche
Systeme handelt, auch auf praktischen Eindrücken.
In diesem Zusammenhang seien die ersten drei nachfolgenden Systeme besonders
hervorgehoben, da sie alle eine leicht zu installierende Demo Version bieten, welche es
ermöglicht, in kurzer Zeit eine Eindruck über die gebotenen Funktionalitäten zu
erhalten. Die folgenden Darstellungen sollen kurz die Funktionsweise der einzelnen
Systeme erörtern. Abschließend erfolgt wiederum eine kurze Zusammenfassung
interessanter Aspekte, welche sich aus den Open Source CMS Darstellungen
extrahieren lassen.
6.2.1
OpenCms 5.0
OpenCms ist ein Content Management System, dessen Schwerpunkt auf einer einfachen
und effizienten Umsetzung sowie Verwaltung komplexer Websites liegt. Die Idee und
Entwicklung dieses Systems begann bereits 1994. Als Open Source Projekt wurde es
jedoch erst im Jahr 2000 veröffentlich und seit 2002 obliegt die offizielle Koordination
weiterer Entwicklungen von OpenCms der Firma Alkacon Software12. Da es sich bei
OpenCms um ein echtes Open Source Projekt handelt, sind keinerlei Lizenzgebühren zu
10
Für Auflistungen diverser Open Source CMS Implementierungen sei man beispielsweise auf
http://www.opensourcecms.com/ bzw. http://www.la-grange.net/cms verwiesen.
11
Siehe http://www.oscom.org/
12
Siehe http://www.alkacon.com/
Implementierungen von Content Management Systemen
87
zahlen. Die Verwendung der OpenCms Software unterliegt den Bestimmungen der
GNU Lesser General Public License13.
OpenCms ist eine Web-basierte Applikation und verlangt daher vom Client Rechner nur
einen Web Browser und eine Internet Verbindung. Sämtliche Interaktion mit dem
Content Management System erfolgt über den sogenannten OpenCms Workplace.
Nachdem sich der Benutzer authentifiziert hat, zeigt der Workplace in einem Explorer
View den Content der Website, wie es in Abbildung Error! Use the Home tab to
apply Überschrift 1 to the text that you want to appear here..2 veranschaulicht ist.
Die Visualisierung ähnelt der bekannter Datei Manager – links befindet sich eine
hierarchische Darstellung von Ordnern und rechts sieht man den Inhalt des
ausgewählten Ordners. Sämtlicher dargestellter Content befindet sich allerdings nicht
im Dateisystem, sondern in einem, im Kontext von OpenCms bezeichneten Virtual File
System (VFS). Dieses VFS implementiert sein eigenes Rechtesystem und speichert
sämtliche Daten in einer Datenbank, womit der Einsatz des VFS unabhängig vom
verwendeten Betriebssystem erfolgt.
Im VFS sind grundsätzlich alle benötigten Komponenten für ein Website Projekt
zugänglich wie beispielsweise Templates, HTML-Seiten, Bilder oder binäre Daten,
wobei allerdings je nach dem aktuellen Benutzer unterschiedliche Zugriffsrechte
definiert sein können. Das Layout von Websites wird in OpenCms grundsätzlich über
Templates festgelegt und der eigentliche Content kann beispielsweise mittels eines
komfortablen WYSIWYG (What You See Is What You Get) Editor eingegeben werden,
wodurch allerdings unstrukturierter HTML Code produziert wird. Der WYSIWYG
Editor bietet jedoch die Möglichkeit Bilder sowie binäre Dateien, welche in OpenCms
in eigenen Ordnern übersichtlich verwaltet werden, einfach per Drag & Drop in der
gerade bearbeiteten Seite zu platzieren. Damit ist ein sehr einfaches und effizientes
Erstellen von Web Seiten möglich, ohne jegliche HTML Kenntnisse zu besitzen.
Es wird allerdings in OpenCms auch die Möglichkeit unterstützt, strukturierten Content
zu erfassen. Durch die Definition von Content-Items ist es möglich, strukturierten
Content, wie z.B. News oder Job Angebote, zu definieren. Dieser strukturierte Content
kann in einer eigenen Ordner-Struktur organisiert werden und über komfortable
Formulare editiert und erstellt werden. Aufgrund der Struktur ist es möglich, diese
Content-Items in unterschiedlicher Detaillierung auf verschiedenen Seiten darzustellen14.
13
14
Siehe http://www.gnu.org/licenses/lgpl.html
Diese Aspekte der strukturierten Content Erfassung in OpenCms werden im nachfolgenden Kapitel
noch detaillierter erörtert (siehe Kapitel 8.2.2).
Implementierungen von Content Management Systemen
88
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
Explorer View von OpenCms
Der gesamte Inhalt einer Website kann in OpenCms in mehrere Projekte unterteilt
werden, um so für verschiedene Bereiche einer Website unterschiedliche Verantwortlichkeiten für Autoren zu vergeben. Grundsätzlich erfolgen sämtliche ContentÄnderungen Offline. Das bedeutet, der Content der tatsächlich auf der Website nach
außen hin publiziert wird, bleibt unverändert. Dadurch können diverse Änderungen
vorgenommen und betrachtet werden, ohne dabei Einfluss auf die aktuelle Online
Version der Website zu nehmen. Nachdem die Änderungen von einer verantwortlichen
Person begutachtet worden sind, können sie publiziert werden und sind damit auch nach
außen hin sichtbar. OpenCms erlaubt es, auch in einer Workflow Komponente
verschiedene Aufgaben, wie z.B. das Ändern einer gewissen Seite zu definieren und
einer gewissen Person zuzuweisen. Eine Benachrichtigung über anstehende Aufgaben
sowie deren Erledigung per Email ist ebenfalls vorgesehen.
OpenCms implementiert eine eigene Benutzerverwaltung, bietet aber derzeit noch keine
Synchronisation mit eventuell bereits in einer Unternehmung vorhandenen Benutzerdaten. Durch die Benutzerverwaltung und entsprechende Zugriffsrechte ist es auch
möglich, bestimmte Bereiche der publizierten Website nur für gewisse Benutzer
zugänglich zu machen. Zu diesem Zweck erlaubt OpenCms die Definition eigener Web
User, welche sich auf einer von OpenCms verwalteten Website einloggen können und
darauf hin aufgrund ihrer Rechte Zugriff auf gewisse Bereiche der Website erhalten.
Web User können sich jedoch nicht in den OpenCms Workplace einloggen, um gewisse
Verwaltungstätigkeiten auszuüben. [OpenCms 2003]
Implementierungen von Content Management Systemen
6.2.2
89
Jahia 4.0
Jahia stellt eine Content Management sowie Portal-Lösung dar und ist ein Produkt der
Firma Jahia Ltd15. Bei Jahia handelt es sich um kein Open Source Projekt im eigentlichen Sinn, das bedeutet, der Programmcode ist zwar frei zugänglich und darf für Test
und Entwicklungszwecke beliebig verwendet werden, für eine kommerzielle Benutzung
des Produkts muss allerdings eine Lizenzgebühr gezahlt werden. Bei der Verwendung
eines Jahia Servers mit unlimitierter Benutzeranzahl wäre zurzeit eine Lizenz von €
30.000 zu zahlen. Es steht allerdings jedem frei, selbst an diesem Software Projekt
mitzuwirken, wodurch die geforderten Lizenzgebühren verringert bzw. vollständig
erlassen werden können. Die Verwendung der Jahia Software unterliegt den
Bestimmungen der Jahia Collaborative Source License16, welche die zuvor erwähnten
Aspekte der Benutzung detailliert erörtert.
Bei Jahia handelt es sich wiederum um eine vollständig Web-basierte Applikation,
deren Schwerpunkt das Managen komplexer Websites ist. Des Weiteren unterstützt
Jahia so genannte Portlets, um zugleich Portal-Funktionalitäten zu bieten. Mit Portlets
wird eine Schnittstelle definiert, durch die in einer einfachen Weise das Integrieren von
Funktionalitäten oder externen Content in einer von Jahia verwalteten Website möglich
ist. So kann beispielsweise jedem Benutzer des Systems eine eigene Portalseite
zugeordnet werden, welche individuell vom jeweiligen Benutzer gestaltet werden kann.
In einer einfachen Vorgehensweise kann die Auswahl unterschiedlicher Portlets sowie
das Layout bzw. die Anordnung der Portlets konfiguriert werden, da sämtliche
Änderungen direkt in der endgültigen Ansicht der Website vorgenommen werden
(siehe auch unten). Jahia stellt zugleich eine Vielzahl an fertigen Portlets zur
Verfügung, um diverse Funktionalitäten, wie z.B. FAQ, Diskussionsforen oder To-Do
Listen sofort nutzen zu können.
Grundsätzlich werden bei Jahia die Content-Struktur und die Darstellung für ein
Ausgabemedium in einem gemeinsamen Template definiert. Nach Meinung des Autors
der vorliegenden Arbeit entspricht diese Vorgehensweise nicht unbedingt der Theorie
über Content Management, weil dadurch dir klare Trennung zwischen Struktur und
Darstellung verloren geht. Eine Seite auf einer von Jahia verwalteten Website besteht
daher aus einem Template, gefüllt mit in einer Datenbank verwalteten Content. Jahia
definiert gewisse Grundtypen, wie z.B. Text, Datum oder Zahl und erlaubt es, innerhalb
eines Templates diese Typen unterschiedlich zu gruppieren um dadurch strukturierten
Content zu erzeugen.
Das Erzeugen und Editieren von Content gestaltet sich sehr komfortable und erfolgt
direkt auf der entsprechenden Seite der Website. Um Änderungen am Content
vorzunehmen, muss man sich zuerst einloggen und vorausgesetzt man hat die richtigen
Rechte, kann man die gewünschte Seite der Website in einen Editiermodus schalten. Im
15
Siehe http://www.jahia.com/
16
Siehe http://www.jahia.org/download/documentation/jcsl.pdf
Implementierungen von Content Management Systemen
90
Editiermodus ist das Layout der Website im Grunde gleich, nur erscheinen an den
diversen Elementen der Website Icons, um Text hinzuzufügen bzw. zu editieren, neue
Seiten anzulegen oder Portlets hinzuzufügen. Diese Ansicht ist in Abbildung Error!
Use the Home tab to apply Überschrift 1 to the text that you want to appear here..3
veranschaulicht. Es gibt auch eine Unterstützung für mehrsprachigen Content, indem
man im Editiermodus einfach die Sprache der Website umstellen kann, um so an den
gleichen Stellen den Content in unterschiedlichen Sprachen einzugeben.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..3:
Editiermodus von Jahia
Werden Änderungen vorgenommen, so werden diese nicht sofort auf der für alle
zugänglichen Website publiziert. Vielmehr stehen nun zwei neue Ansichten zur
Verfügung, um einerseits eine Voransicht der Veränderungen zu sehen (ohne die
notwendigen Icons für das Verwalten des Content) und andererseits grafisch aufbereitet
die Änderungen im Vergleich zur aktuell publizierten Website anzuzeigen (siehe
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..3 links oben). Um die Änderungen tatsächlich zu übernehmen,
muss ein vorgegebener Workflow durchlaufen werden. Content-Autoren markieren
zuerst die modifizierten Seiten, um sie für eine Validierung freizugeben. Ein Manager
mit den entsprechenden Rechten kann danach die Änderungen akzeptieren, womit die
Implementierungen von Content Management Systemen
91
Seite tatsächlich publiziert wird oder gegebenenfalls zurückgewiesen wird. Jede Aktion
bezieht sich dabei auf eine Seite in einer bestimmten Sprache und kann des Weiteren
mit einem Kommentar zur Dokumentierung versehen werden.
Jahia zeigt auch umfangreiche Möglichkeiten im Bereich der Administration bzw.
Integration. So erlaubt beispielsweise ein Virtual Site Management das Definieren
mehrerer voneinander unabhängiger Websites, um auf einem Jahia Server verschiedene
Websites zu managen. Des Weiteren können einzelne Websites vollständig gesichert
werden oder auch in einem XML konformen Format exportiert werden. Dem
Administrator wird auch die Möglichkeit geboten, sich über aufgetretene Probleme
beim Betrieb des Jahia Server per Email informieren zu lassen.
Jahia implementiert natürlich auch eine eigene Benutzerverwaltung sowie ein eigenes
Rechtesystem und unterstützt den LDAP Standard, um bestehende Benutzer Accounts
zu integrieren. Das Rechtesystem erlaubt es auch, bestimmte Bereiche der publizierten
Website nur für gewisse Benutzer zugänglich zu machen. Aufgrund der Rechte eines
angemeldeten Benutzers auf einer von Jahia verwalteten Website wird der Zugriff auf
die einzelnen Bereiche der Website geregelt und sofern der aktuelle Benutzer gewisse
Ressourcen auch bearbeiten darf, wird ihm an den entsprechenden Stellen das
Umschalten in den Editiermodus angeboten. Das Anlegen von speziellen Web Usern,
wie beispielsweise beim OpenCms (siehe Kapitel 6.2.1), ist bei Jahia nicht vorgesehen.
Schlussendlich können von Jahia verwaltete binäre Daten, welche über die Website
herunter geladen werden können, über eine WebDAV Schnittstelle von externen
Applikationen angesprochen werden (siehe Kapitel 3.2.4). [Jahia 2003]
6.2.3
Ion 0.8
Bei Ion handelt es sich um ein bei SourceForge.net 17 registriertes Open Source
Projekt 18 . Ion ist ein Content Management System mit dem Schwerpunkt auf der
Verwaltung von Websites. Die Versionsnummer 0.8 deutet bereits an, dass es sich bei
Ion noch um keine stabile Endversion handelt, allerdings gibt es bereits eine
funktionierende Demo Version, welche konsequent die XML Technologie zur
Speicherung und Visualisierung von Content nutzt und damit die Vorteilhaftigkeit
dieser Technologie im Kontext von Content Management Systemen verdeutlicht. Das
Ion Projekt unterliegt den Bestimmungen der GNU General Public License19.
Ion ist ein Web-basiertes CMS und bietet im Wesentlichen zwei verschiedene Bereiche,
um sämtliche Funktionalitäten des CMS zu nutzen. Einerseits das Ion Backoffice, um
Content zu erzeugen und zu verwalten und andererseits die Ion Admin Application, um
diverse administrative Tätigkeiten vorzunehmen. Im Ion Backoffice wird der Content in
einer hierarchischen Ordnerstruktur, ähnlich wie bei OpenCms (siehe Kapitel 6.2.1),
17
Siehe http://sourceforge.net/
18
Siehe http://sourceforge.net/projects/ion-cms
19
Siehe http://www.gnu.org/licenses/gpl.html
Implementierungen von Content Management Systemen
92
verwaltet. Die durch diese Ordnerstruktur verwalteten Content-Objekte haben jedoch
alle gewisse Eigenschaften gemeinsam. Ein Content-Objekt, im Kontext von Ion,
basiert auf einem gewissen Typ, womit eine in XML definierte Struktur des Content
verstanden wird20. Die Content-Eingabe erfolgt durch Formulare, um die strukturierte
Content-Erfassung zu ermöglichen. Gespeichert wird der eingegebene Content
wiederum in einem XML konformen Format. Basierend auf XSLT können für jeden
Content-Typ unterschiedliche Darstellungen definiert werden, welche in weiterer Folge
den verwalteten Content in der gewünschten Form visualisieren.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..4:
Formular zur strukturierten Content-Eingabe bei Ion
Das Anlegen und Verwalten dieser zuletzt erläuterten Content-Typen erfolgt in der Ion
Admin Application und im Ion Back Office wird der eigentliche Content, unter
Berücksichtigung der Struktur verschiedener definierter Content-Typen, eingegeben.
Die Darstellung der Formulare zur Content-Bearbeitung im Back Office Bereich ist
ebenfalls durch eine XSLT Transformation definiert, womit anwendungsspezifische
Anpassungen sehr leicht möglich sind. Abbildung Error! Use the Home tab to apply
20
Diese Strukturdefinition des Content basiert allerdings nicht auf XML Schema oder einer DTD sondern
auf einer für Ion spezifischen XML Struktur.
Implementierungen von Content Management Systemen
93
Überschrift 1 to the text that you want to appear here..4 zeigt ein Formular zur
Content-Eingabe in Ion. Für die Publikation des verwalteten Content auf Websites
werden eigene Templates definiert, welche das Layout der Website definieren. Das
definierte Layout wird mit Content angereichert, indem der XML basierte Content aus
dem Ion Back Office mit einer, für den entsprechenden Content-Typen definierten
Transformation, aufbereitet wird.
Negativ anzumerken ist, dass zurzeit relativ wenig Dokumentation über das Ion Projekt
zur Verfügung steht, um einen umfassenden Überblick über die Funktionalitäten und
Bedienung dieses Content Management Systems zu erhalten. Ion zeigt jedoch sämtliche
Kernfunktionen, welche ein innovatives CMS berücksichtigen sollte. Die Eingabe von
mehrsprachigen Content wird berücksichtigt, es gibt gute Suchmöglichkeiten, eine
Workflow Unterstützung und auch eine Benutzerverwaltung, welche allerdings noch
nicht die Integration von externen Benutzer Accounts vorsieht. Des Weiteren gibt es
auch die Möglichkeit, von Ion generierten Websites einen statischen Export zu
erzeugen, um so die Website auch auf einem einfachen Web Server, ohne Unterstützung
für eine dynamische Seitengenerierungen, zu installieren. Natürlich wird durch diese
Vorgehensweise auch die Performance der Website erhöht, da nichts mehr dynamisch
generiert werden muss, allerdings gehen auch Funktionen, wie ein Suchen auf der
Website verloren. [Ion 2003] [Ion 2003a]
6.2.4
Red Hat CMS 5.0
Die Firma Red Hat Inc.21, auch bekannt durch ihr Open Source Betriebssystem Red Hat
Linux, bietet mit Red Hat Applications innovative Open Source Lösungen für
Unternehmungen. Die zwei wesentlichen Produkte sind das Red Hat Content
Management System sowie Red Hat Portal Server. Interessant ist, dass die zwei zuletzt
genannten Produkte auf einem einheitlichen Framework basieren, dem Red Hat Web
Application Framework, welches häufig verwendete Funktionalitäten für die
Entwicklung von Web Applikationen kapselt. Abbildung Error! Use the Home tab to
apply Überschrift 1 to the text that you want to appear here..5 zeigt die Architektur
der Red Hat Applications. Es ist grundsätzlich möglich, die gesamte Architektur auf
Basis von Open Source Komponenten zu realisieren, wobei idealerweise als
Betriebssystem das Red Hat Enterprise Linux zum Einsatz kommen sollte. Das Red Hat
CMS unterliegt der Content and Collaboration Management Public License22.
21
Siehe http://www.redhat.com/
22
Siehe http://www.redhat.com/licenses/ccmpl.html
Implementierungen von Content Management Systemen
94
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..5:
Architektur der Red Hat Applications
Red Hat CMS dient in erster Linie zur Erstellung und Verwaltung von Websites und
erlaubt dementsprechend eine strukturierte Erfassung von Content für eine möglichst
flexible Publikation auf Web Sites. Ein Web-basierter Workplace erlaubt sämtliche
Interaktionen mit dem System. Sämtlicher Content wird in der Form von Content-Items
erfasst, wobei allen Content-Items gewisse Charakteristiken gemeinsam sind:

Jeder Content-Item ist einem gewissen Typ zugeordnet, wodurch die Struktur
des Items definiert wird.

Jeder Content-Item kann mit unterschiedlichen Templates assoziiert werden, für
eine bedarfsgerechte Publikation.

Die Erstellung eines jeden Content-Item kann durch einen eigenen Workflow
gesteuert werden.

Content-Items können durch Kategorien hierarchisch geordnet werden.
Das Definieren eines neuen Content-Typs erweist sich nicht unbedingt als eine triviale
Aufgabe und bedarf der Erstellung einiger Java Klassen. Man ist dadurch allerdings
relativ flexibel und kann beispielsweise für jeden Content-Typ einen spezifischen
Eingabedialog zur Content-Erfassung definieren. Die Generierung der Templates basiert
auf der XSLT Technologie (siehe Kapitel 4.1.1). Da die Speicherung der Content-Items
in einem proprietären Datenbank Schema erfolgt, werden bei der Publikation die
Content-Items zuerst in ein XML konformes Format konvertiert und danach einer
XSLT Transformation unterzogen, worauf sie zumeist in HTML auf einer Website
dargestellt werden.
Wie schon zu Begin dieses Abschnittes angedeutet, besteht das Red Hat CMS im
Grunde aus zwei getrennten Komponenten. Das Red Hat Web Application Framework,
welches bereits fundamentale Funktionen wie Benutzerverwaltung, Zugriffskontrolle
oder Workflow implementiert und das eigentliche Red Hat Content Management
System, welches im Wesentlichen nur mehr das Interface implementiert, um sämtliche
Managementaufgaben durchzuführen. Ideal ergänzt werden kann das Red Hat CMS
Implementierungen von Content Management Systemen
95
durch den Red Hat Portal Server. Damit ergeben sich verbesserte Möglichkeiten der
Collaboration sowie ein personalisierter Zugang auf den gesamten verwalteten Content.
Das Red Hat CMS bietet des Weiteren eine Unterstützung für LDAP und unterstützt
auch Content Syndication durch den RSS Standard (siehe Kapitel 3.2.7). Das Red Hat
System zeigt sich mit allen seinen Funktionen als eine sehr flexible und professionelle
Open Source CMS Lösung. [Red Hat CMS 2003] [Red Hat CMS 2003a]
6.2.5
Zusammenfassung
Interessant ist der Aspekt, dass sämtliche dargestellten Open Source Content
Management Systeme den Schwerpunkt auf die Verwaltung und Publikation von
Content für Websites legen. Allerdings sei erwähnt, dass eine strukturierte ContentErfassung ein essentieller Aspekt ist und dadurch der Content zumeist in seinen drei
wesentlichen Bestandteilen, Struktur, Darstellungsform und Inhalt verwaltet wird. Die
Möglichkeiten einer unterschiedlichen Publikation des Content werden zwar zumeist
berücksichtigt, allerdings, wie bereits angedeutet, steht die Publikation für Websites im
Vordergrund. Die getrennte Erfassung der Anatomie des Content wird dennoch zumeist
als wichtiger Punkt betont, um leicht Änderungen des Layouts von Websites vornehmen
zu können sowie eine effektive Arbeitsteilung, beispielsweise zwischen ContentAutoren und Web Designer, zu gewährleisten.
Die erörterten Systeme zeigen jedoch alle Schwächen bei der Integration von externem
Content. Während fast alle kommerziellen Systeme auf Integrationsmöglichkeiten von
Datenquellen namhafter Hersteller hinweisen, bleiben diese Aspekte bei Open Source
Produkten weitestgehend unberücksichtigt. Die Open Source CMS Lösungen präsentieren sich daher eher als spezialisierte Lösung, um Content strukturiert zu erfassen und
die Publikation sowie Verwaltung von Websites ideal zu unterstützen und nicht als ein
ganzheitlicher Ansatz den gesamten in einer Unternehmung vorhandenen Content in
einem kohärenten und skalierbaren System zu erfassen. Jedoch zeigt sich auch die
Kombination von CMS sowie Portal-Lösungen im Open Source Bereich, wodurch es
zumeist möglich ist, über Portlets externen Content in einem einheitlichen Interface
darzustellen. Allerdings wird dadurch eher nur eine Aggregation von Content-Quellen
im User Interface erreicht und keine Integration des Content in die eigentliche Datenbasis des CMS, um so den integrierten Content für sämtliche Funktionalitäten des CMS
zugänglich zu machen.
Allgemein ist es bei Open Source Lösung natürlich vorteilhaft, dass aufgrund des
Vorliegens eines Source Codes systemspezifische Anpassungen von jedem Programmierer grundsätzlich durchgeführt werden können. Des Weiteren entfallen
normalerweise bei Open Source Applikationen die Lizenzgebühren für die Software.
Allerdings handelt es sich bei den erörterten CMS Implementierungen bereits um relativ
komplexe Systeme, welche auch eine Anpassung sowie eine Einführungsphase in die
Unternehmung notwendig machen. Zu diesem Zweck stehen hinter den einzelnen Open
Source CMS Lösungen zumeist verschiedene Firmen, welche entsprechendes Know-
Implementierungen von Content Management Systemen
96
how, natürlich nicht unentgeltlich, anzubieten haben. Eine zielgerichtete und effiziente
Anwendung von Open Source Content Management Lösungen ist daher selten ohne
Investitionskosten realisierbar.
6.3
Funktionsumfang
Nach den Darstellungen verschiedener CMS Implementierungen sollen abschließend
sämtliche dargestellten Systeme, anhand der in den vorhergehenden Kapiteln identifizierten Funktionen bzw. Anforderungen eines innovativen CMS, evaluiert werden. Es
würde den Rahmen der vorliegenden Arbeit sprengen, jedes CMS einer detaillierten
Diskussion über die Erfüllung bzw. Nichterfüllung jeder einzelnen Anforderung zu
unterziehen. Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that
you want to appear here..1 zeigt alle in Kapitel 3 und 4 identifizierten Anforderungen
(siehe Kapitel 3.3 sowie 4.3) und sämtliche erörterten Content Management Systeme.
Die Erfüllung bzw. Nichterfüllung der Anforderungen wird durch folgende Symbole
verdeutlicht. Mit einem vollem Punkt (●) wird eine gute, mit einem Minus (−) eine
nicht zufrieden stellende Umsetzung symbolisiert. Ein Kreis (○) soll eine nicht
vollständig zufrieden stellende Realisierung ausdrücken bzw. auch andeuten, dass das
Nachvollziehen der Erfüllung der entsprechenden Anforderung nicht gänzlich
gewährleistet war. Es sei darauf verwiesen, dass die vorliegende Tabelle Error! Use
the Home tab to apply Überschrift 1 to the text that you want to appear here..1 im
Wesentlichen auf diversen Dokumentationen und Beschreibungen der einzelnen
Produkte basiert und diese besonders im kommerziellen Bereich nicht immer detailliert
über die gewünschten Informationen Auskunft geben. Das vorliegende Ergebnis soll
daher als ein qualitativer Überblick erachtet werden und nicht als eine Entscheidungsgrundlage für eine mögliche Systemauswahl.
Die Ergebnisse in Tabelle Error! Use the Home tab to apply Überschrift 1 to the
text that you want to appear here..1 verdeutlichen eine sehr gute Abdeckung der
Kernfunktionen, im kommerziellen wie auch im Open Source Bereich. Bei den Open
Source Systemen mangelt es teilweise an Integrationsaspekten, beispielsweise die
Integration von externen Applikationen zur Content-Bearbeitung oder Integrationsmöglichkeiten mit Datenbeständen anderer Systeme. Content Syndication wird bei den
Open Source Systemen auch selten berücksichtigt, jedoch umso mehr im kommerziellen
Bereich, wobei hier eine zunehmende Anwendung der Web Service Technologie (siehe
Kapitel 5.2) zu erkennen ist.
Etwas schwierig gestaltet sich die Evaluierung der Archivierungsfunktion, da es
teilweise aufgrund mangelnder Dokumentation schwer nachvollziehbar ist, inwiefern
Aspekte einer langjährigen, authentischen Archivierung berücksichtigt werden. Die
Evaluierung der Administrationsfunktion gestaltete sich ebenfalls etwas diffizil, da
oftmals nur die Features der einzelnen Systeme dokumentiert sind und notwendige
Supportfunktionen wie Administrationsaspekte nicht in derselben Detaillierung
Implementierungen von Content Management Systemen
97
ausgeführt sind. Auffallend im Kontext der Administration ist jedoch, dass die
Unterstützung des LDAP Standards zur Integration von Benutzerdaten im
kommerziellen Bereich immer gegeben ist, im Open Source Bereich jedoch nur
teilweise zu finden ist.
Bei den zweckmäßigen Erweiterungen ist die Erfüllung der identifizierten
Anforderungen weitaus spärlicher. Die Nutzung der XML Technologie ist jedoch bei
allen System zu erkennen. Aspekte eines barrierefreien Informationszugangs werden
hingegen fast nie berücksichtigt oder zumindest nicht erwähnt. Das Bereitstellen eigener
Portal-Funktionen ist jedoch bei mehreren Systemen zu erkennen, was auf die zu
erwartende Vereinigung von Portal und Content Management Lösungen schließen lässt
(siehe auch Kapitel 4.2.2).
Implementierungen von Content Management Systemen
98
Vignette V7
IBM DB2 CM 8.2
FileNet P8
OpenCms 5.0
Jahia 4.0
Ion 0.8
Red Hat CMS 5.0
●
●
●
○
●
○
●
●
●
●
●
●
●
○
●
●
●
−
●
○
●
○
●
○
●
○
●
●
●
−
●
○
●
●
●
−
●
●
●
●
●
○
●
●
●
●
●
●
●
●
○
○
○
●
●
●
●
●
●
●
−
●
●
●
●
●
○
●
●
●
●
●
●
●
●
○
●
○
●
●
●
●
●
●
●
−
○
○
●
●
●
○
●
●
●
○
●
○
●
○
○
○
○
●
●
●
○
●
○
○
−
●
○
●
●
●
○
●
●
●
○
●
○
●
●
○
●
○
●
●
●
●
●
○
●
●
○
○
●
●
●
○
●
○
●
−
○
●
−
−
●
○
−
●
−
●
○
●
●
−
−
○
●
●
●
●
○
●
○
●
●
●
●
○
−
●
○
●
●
●
●
●
●
●
−
−
●
○
○
●
●
○
●
○
○
−
●
○
−
−
○
−
−
●
−
○
●
●
●
−
−
●
○
●
●
●
○
●
●
●
●
●
○
○
●
○
−
−
●
●
●
●
●
○
●
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
−
Bereitstellen von DRM Funktionalitäten
oder Integration mit DRM Systemen
−
−
●
−
−
−
−
−
Einfache Integrationsmöglichkeiten in
Portal- Systeme
Bereitstellen eigenständiger PortalFunktionalitäten
Bereitstellen von DAM Funktionalitäten
oder Integration mit DAM Systemen
Innovative Suchmöglichkeiten auch für
multimedialen Content
−
−
−
●
−
−
−
−
●
●
○
−
−
●
−
●
−
−
●
−
−
−
−
−
−
−
−
−
−
−
−
−
Content Organisation
Anlegen von benutzerdefinierten Attributen
Link Management
Unterstützung unterschiedlicher DBMS
Einhaltung der Anatomie des Content
Browserbasierte Content-Eingabe
Integration externer Applikationen zur
Content-Bearbeitung
Unterschiedliche Visualisierungen des
Content
Personalisierung des Content auf Websites
Zugriffskontrolle
Check-In und Check-Out Mechanismus
Versionierung
Archivierung
Content Kontrolle
Kernfunktionen
●
○
●
●
●
●
Anforderungen
Publikation
Information Retrieval
Collaboration
Integration
Administration
Internationalisierung
XML
Zweckmäßige Erweiterungen
●
●
●
●
●
●
Funktionen
Erzeugung
Barrierefreier
Informationszugang
Digital Right
Management
Portal-Funktionalität
Digital Asset
Management
Open Source
VIP Enterprise 8
Kommerziell
Suchmöglichkeiten
Workflow
Integration von Email
Unterstützung für Collaboration
Systemspezifische Anpassungsmöglichkeiten des CMS
Import und Export von Content
Integrationsmöglichkeiten mit
Datenbeständen anderer Systeme
Content Syndication und Providing
Backup Möglichkeiten
Protokollierung und Analyse
Auto. Erkennen kritischer Situationen
Benutzerverwaltung
Synchronisation mit Directory Services
Skalierbarkeit
Paralleles verwalten mehrerer Sprachen
Anwendung der XML Technologie
XML basierter Import und Export
XML basierte Content Austausch Protokolle
Berücksichtigung eines barrierefreien
Informationszugangs
Integration der WAI Richtlinien in die
Prozessschritte des CMS
Automatisiertes Überprüfen auf WAI
Konformität
Implementierungen von Content Management Systemen
99
Tabelle Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Funktionelle Evaluierung der erörterten CMS Lösungen
6.4
Schlussbemerkung
In diesem Kapitel wurde eine Auswahl an interessanten Systemen aus einer großen
Menge existierender CMS Implementierungen im kommerziellen sowie Open Source
Bereich erläutert und hinsichtlich ihrer Erfüllung sämtlicher bisher identifizierten
Anforderungen eines CMS untersucht. Interessant ist es jedoch im Kontext der in
diesem Kapitel gewonnenen praxisbezogenen Erkenntnisse die Definition des Begriffes
Content Management System erneut zu erläutern (siehe Kapitel 2.2.3). Als
charakteristischer Aspekt eines CMS wurde die maschinelle Erfassbarkeit der Anatomie
des verwalteten Content festgehalten (siehe Kapitel 2.3.1). Allerdings zeigen
kommerzielle Systeme auch Dokument Management Funktionalitäten und erfassen
Content auch als in sich geschlossene Dokumente. Die kommerziellen Systeme
bezeichnen sich jedoch auch als Enterprise Content Management Systeme. Der Autor
der vorliegenden Arbeit vertritt jedoch die Meinung, dass dieser zuletzt genannte
Begriff keine Differenzierung zu Content Management System darstellen sollte. Ein
CMS sollte grundsätzlich jeden Content verwalten können, auch wenn dies keine
durchgängige Berücksichtigung der Anatomie des Content ermöglicht. Jedoch sollte ein
CMS auf jedem Fall neuen Content strukturiert erfassen und speichern können.
Open Source CMS Implementierungen bieten zumeist eine gute Berücksichtigung einer
strukturierten Content-Erfassung, zeigen jedoch Schwächen im Einsatz als System zur
vollständigen Erfassung sämtlichen Contents in einer Unternehmung. Die Open Source
Lösungen präsentieren sich jedoch als eine effiziente Lösung zur Verwaltung und
Publikation von Web Sites. Die erörterten Open Source System könnte man damit eher
den Web Content Management Systemen zurechnen (siehe Kapitel 2.2.3). Nach
Meinung des Autors der vorliegenden Arbeit sollte aber ein CMS dennoch den
gesamten Content einer Unternehmung erfassen können, auch wenn die Publikationskomponente auf das Web spezialisiert ist. Aufgrund sämtlicher bisher in der
vorliegenden Arbeit gewonnenen Erkenntnisse soll im folgenden Kapitel versucht
werden in einem Gestaltungsmodell auf konzeptioneller Ebene eine ideale Realisierung
eines Content Management Systems zu modellieren.
TEIL II
Gestaltungsbereich
7
Gestaltungsmodell
Auf Grundlage sämtlicher, in den bisherigen Kapiteln gewonnenen Erkenntnissen, soll
in diesem Kapitel die Architektur eines innovativen Content Management Systems
modelliert werden, welche die diversen erörterten Anforderungen an ein CMS
berücksichtigt. Zu Beginn dieses Kapitels werden die Erwartungen an ein innovatives
CMS nochmals kurz erläutert, um darauf aufbauend eine vereinfachte Basisarchitektur
zu identifizieren. Im weiteren Verlauf des Kapitels werden auf Grundlage der
aufgezeigten Basisarchitektur die verschiedenen identifizierten Layer einer detaillierten
Diskussion unterzogen, um im Anschluss die Gesamtarchitektur des in diesem Kapitel
modellierten innovativen CMS zu veranschaulichen. Die detaillierten Erörterungen der
Gesamtarchitektur sollen nicht nur die Zuweisung sämtlicher Funktionen auf die
unterschiedlichen Komponenten der CMS Architektur verdeutlichen, sondern auch in
den Grundzügen die Funktionsweise des modellierten CMS aufzeigen. Zum Abschluss
des Kapitels soll der Einsatz des CMS anhand eines fiktiven praxisorientierten Beispiels
erläutert werden, um ein besseres Verständnis der Funktionsweise zu geben und
zugleich auch den praktischen Nutzen des dargestellten CMS aufzuzeigen.
7.1
Allgemeines
Bevor in diesem Kapitel die detaillierte Architektur eines innovativen CMS dargestellt
wird, sollen zuerst noch die grundsätzlichen funktionalen Erwartungen an das CMS
diskutiert werden. Zu diesem Zweck soll die Begriffsmehrdeutigkeit rund um das
Thema Content Management Systeme nochmals kurz erläutert werden, um im
Anschluss die wesentlichen Zielsetzungen des in diesem Kapitel zu modellierenden
CMS festzuhalten. Darauf aufbauend soll eine Basisarchitektur und deren wesentlichen
Anforderungen identifiziert werden, welche die Diskussionsbasis für den verbleibenden
Teil des Kapitels darstellt.
7.1.1
Funktionaler Umfang
Wie bereits aus der Schlussbemerkung des vorhergehenden Kapitels zu erkennen war
(siehe Kapitel 6.4), ist es schwierig, den Begriff Content Management System eindeutig
mit einem gewissen Spektrum an Funktionen zu assoziieren. Mehrere Faktoren
Gestaltungsmodell
102
erschweren die eindeutige Identifizierung einer funktionalen Abgrenzung von Content
Management Systemen. Dies ist einerseits die sehr allgemeine Auffassung des Begriffs
Content (siehe Kapitel 2.2.1), welche im Grunde keinerlei Einschränkung auf die zu
verwaltende Content-Menge des CMS determiniert. Des Weiteren wird der Begriff
CMS sowie davon abgeleitete Begriffe wie Enterprise oder Web Content Management
immer wieder dazu verwendet, bekannte Technologien durch eine Namensänderung neu
am Markt zu positionieren, und nicht um entscheidende technologische Änderungen
aufzuzeigen (siehe Kapitel 6.4). Schlussendlich zeigen auch die Vielzahl an
Kernfunktionen sowie zweckmäßige Erweiterungen eines CMS (siehe Kapitel 3 und 4),
dass der grundsätzliche Funktionsumfang sehr groß ist und dementsprechend auch
spezialisierte Lösungen zulässt, welche durchaus in der Praxis ihren Zweck erfüllen.
In [Fritsch 2002] wird bezüglich des oben zuletzt erläuterten Aspekt zum einen von
Best-of-Breed Lösungen gesprochen, bei denen die Anwender für Spezialzwecke die
jeweils geeignetsten Produkte auswählen und zum anderen von All-in-One Systemen,
bei denen ausschließlich die umfassende Palette eines Komplettanbieters genutzt wird.
Diese beiden Extreme bilden die theoretischen Endpunkte einer Skala, wobei sich
allerdings die meisten Strategien bzw. Projekte von Unternehmungen in der Mitte dieser
Skala positionieren.
Ebenfalls in [Fritsch 2002] wird auch der Aspekt erörtert, dass im Grunde ein
einheitliches und durchgängiges Softwaresystem, aufgrund der vermehrten
Dezentralisierung der IT-Landschaften sowie dem Aufkommen von standardisierten
Technologien wie XML zur Kommunikation verteilter Systeme, gar nicht mehr
notwendig ist. Allerdings gibt es schon eine Präferenz zu einheitlichen Lösungen,
jedoch müssen diese auch wirklich greifbare Vorteile bieten. Nach Meinung des Autors
der vorliegenden Arbeit postuliert dies die Anforderung an ein innovatives CMS
idealerweise ein All-in-One System darzustellen, aber dennoch eine modulare
Architektur zu bieten, welche die leichte Integration diverser spezialisierter
Fremdsysteme gewährleistet.
Der Autor Kampffmeyer spricht in seiner Arbeit von verschiedenen Strömungen
innerhalb des Content Management und verwendet in diesem Zusammenhang den
Begriff Enterprise Content Management, um deutlich zu machen, dass es dabei nicht
nur um die Web-orientierte Außenwirkung geht, sondern um die Erschließung aller
strukturierten und unstrukturierten Informationen im Unternehmen. Dies entspricht im
Wesentlichen der Meinung des Autors der vorliegenden Arbeit, welcher jedoch dieses
Aufgabenfeld ganz allgemein einem innovativen Content Management System
zuordnet. Der Autor Kampffmeyer reduziert in diesem Zusammenhang die Ansprüche
an Enterprise Content Management (ECM) auf drei wesentliche Ideen [Kampffmeyer
2003a]:

ECM als integrative Middleware: ECM soll die Restriktionen bisheriger
vertikaler Anwendungen und Inselarchitekturen überwinden.
Gestaltungsmodell
103

ECM Komponenten als unabhängige Dienste: ECM soll Informationen
unabhängig von der Quelle und unabhängig von der benötigten Nutzung
verwalten.

ECM als einheitliches Repository: ECM soll alle Typen von
Unternehmensinformationen in einem einheitlich strukturierten Informationspool zusammenführen.
Diese drei Punkte möchte der Autor der vorliegenden Arbeit als die grundsätzlichen
Zielsetzungen für das in diesem Kapitel zu modellierenden CMS festhalten.
7.1.2
Basisarchitektur
In diesem Abschnitt soll als erster Schritt eine grobe Architektur eines innovativen
CMS identifiziert werden, welche als Basis einer detaillierten Diskussion der einzelnen
Komponenten der Architektur genutzt werden kann. Auf der Grundlage von den im
vorherigen Abschnitt erläuterten Erwartungen an ein innovatives CMS zeigt Abbildung
Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear
here..1 eine mögliche Architektur.
Eingabe
Publikation
Funktionalität
Content Management
Abstraktion
Content-Objekte
Intern
Front-End
Extern
Daten
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Basisarchitektur eines innovativen CMS
Der entscheidende Aspekt ist die grundsätzliche Unterteilung in vier Layer mit den
folgenden Zielsetzungen:

Daten: Im Daten Layer sollen sämtliche Content-Quellen erfasst werden. Dazu
gehören einerseits interne Datenspeicher, welche Teil des eigentlichen CMS
sind, sowie externe Datenspeicher, die Teil von beliebigen Fremdsystemen
innerhalb der Unternehmung sein können, welche durch das CMS zugänglich
gemacht werden sollen.
Gestaltungsmodell
104

Abstraktion: Der Abstraktions Layer soll für die darauf aufbauenden Content
Management Funktionalitäten eine Schnittstelle darstellen, die es erlaubt, mit
einheitlichen Content-Objekten zu arbeiten, unabhängig davon in welchem
Datenspeicher sich der Content tatsächlich befindet.

Funktionalität: Sämtliche Content Management Funktionalitäten werden in
diesem Layer implementiert. Der Content Zugriff erfolgt dabei über den
einheitlichen Abstraktions Layer. Die gebotenen Funktionen sollen in einzelne
Komponenten unterteilt werden, welche sich auf Basis einer gewissen Grundfunktionalität beliebig zusammenstellen lassen.

Front-End: Das Front-End soll einen einheitlichen Zugang zum CMS bieten und
je nach den vorhandenen Komponenten im Funktionalitäten Layer die Ausführung der entsprechenden Funktionen ermöglichen. Im Wesentlichen soll das
Front-End die Interaktion mit dem CMS, die Content-Eingabe sowie die
Publikation auf unterschiedlichen Distributionskanälen erlauben.
Auf Basis der in Abbildung Error! Use the Home tab to apply Überschrift 1 to the
text that you want to appear here..1 verdeutlichten Architektur soll es möglich sein,
sämtliche Datenspeicher in einem einheitlichen System zu integrieren und dabei die
Implementierung der eigentlichen Content Management Funktionalitäten unabhängig
von der Herkunft des Content zu gestalten. Diese Idee des dazu notwendigen
Abstraktions Layer ist im Wesentlichen auch bei den im vorherigen Kapitel erörterten
kommerziellen CMS Implementierungen zu erkennen (siehe Kapitel 6.1.5). Ein Kapseln
von Funktionalitäten in mehrere kombinierbare Komponenten soll es ermöglichen, je
nach den spezifischen Einsatzbedingungen des CMS nur die notwendigen Funktionen
bereit zu stellen und darüber hinaus die Option einer jederzeitigen funktionalen
Erweiterung bieten.
Um den Anforderungen moderner Unternehmensanwendungen gerecht zu werden,
sollen sämtliche Layer der Architektur serverseitig implementiert werden und
clientseitig nur mehr ein Web-basiertes User Interface zum Einsatz kommen (siehe
Kapitel 5.1.2). XML und Web Services sollen aufgrund der guten Eignung sowie
Akzeptanz im Kontext von Content Management Systemen und der bereits zu
erkennenden häufigen Verwendung bei konkreten CMS Implementierungen (siehe
Kapitel 6.3) als grundlegende Technologien für das in diesem Kapitel modellierte CMS
Anwendung finden.
7.2
Architektur Layer
Im folgenden Abschnitt sollen die zuvor identifizierten Layer detaillierter erörtert
werden. Dabei sollen nacheinander die Funktionalitäten bzw. die Architektur der
einzelnen Layer diskutiert werden, um so ein Verständnis für die Gesamtarchitektur zu
vermitteln. Die Darstellungen der einzelnen Layer erfolgt dabei in einer Reihenfolge,
Gestaltungsmodell
105
wie sie dem Autor der vorliegenden Arbeit für ein gutes Verständnis als sinnvoll erscheint.
7.2.1
Abstraktion
Der Abstraktions Layer bildet eine sehr wichtige und zentrale Schnittstelle in der
Gesamtarchitektur des in diesem Kapitel modellierten CMS. Der gesamte Content aus
dem darunter liegenden Daten Layer soll im Abstraktions Layer in der Form von
einheitlichen Content-Objekten zugänglich gemacht werden. Unter einem ContentObjekt soll ein beliebiger Content angereichert mit Metainformation verstanden werden.
Es ist dabei nicht zwingend notwendig, dass sich ein bestimmter Content und die
dazugehörigen Metainformationen in demselben Datenspeicher des darunter liegenden
Daten Layer befinden. Es soll beispielsweise auch möglich sein, dass Content aus einer
externen Quelle mit weiteren Metainformationen angereichert wird, welche im internen
Datenspeicher abgelegt sind.
Es soll grundsätzlich zwischen zwei Typen von Content-Objekten unterschieden
werden, strukturierte und unstrukturierte Content-Objekte. Unstrukturierte ContentObjekte sind jene Objekte, deren Content entweder in multimedialer Form oder in
einem proprietären Format vorliegt, sodass für das CMS selber strukturelle Informationen nur schwer zu extrahieren sind. Bei strukturierten Content-Objekten handelt
es sich um Objekte, deren Content ausschließlich auf XML basierten Standards beruht.
Strukturierte Content-Objekte bilden die Basis zur Erfassung von strukturierten Inhalten
durch das CMS und berücksichtigen dabei die Anatomie des Content.
Auf Basis von XML können die drei wesentlichen Elemente der Anatomie des Content
leicht erfasst werden (siehe Kapitel 4.1.1). Idealerweise bietet sich ein XML Schema
zur Strukturdefinition an, XML zur Erfassung der eigentlichen Inhalte und XSLT zur
Definition unterschiedlicher bedarfsgerechter Transformationen der Inhalte. Die drei
zuletzt erwähnten Komponenten werden dabei getrennt in verschiedenen ContentObjekte abgelegt und ihre Beziehung zu einander kann idealerweise über die
Metainformationen festgelegt werden. Mit Hilfe der Content-Objekte soll es möglich
sein, jeglichen Content in einer Unternehmung zu erfassen, seien es Dokumente in
proprietären Formaten, multimediale Dateien oder hochstrukturierte Inhalte (siehe dazu
auch das folgende Kapitel 7.2.2).
Über den Abstraktions Layer sollen allerdings nicht nur bereits vorhandene lokale
Datenquellen in der Unternehmung integriert werden. Zweckmäßig wäre das Integrieren
von Content spezialisierter Fremdanbietern über eine Content Syndication Schnittstelle
(siehe Kapitel 3.2.7). Es wäre auch denkbar, gerade bei sehr großen verteilten
Unternehmen, dass an verschiedenen Standorten mehrere Instanzen des CMS in Betrieb
sind. Idealerweise sollte es auch für diesen Fall spezielle Schnittstellen geben um
mehrere verteilte Instanzen des Systems ideal zu koppeln, sodass jedem System
grundsätzlich der Zugang zu dem gesamten verwalteten Content einer Unternehmung
möglich ist. Abbildung Error! Use the Home tab to apply Überschrift 1 to the text
Gestaltungsmodell
106
Content-Objekte
Metainformationen
Content
Content
Syndication
Interner
Konnektor
that you want to appear here..2 verdeutlicht den Abstraktions Layer mit den in diesem
Abschnitt diskutierten Aspekten.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
Abstraktions Layer
7.2.2
Daten
Dem Daten Layer kommt im Wesentlichen die Aufgabe zu, einen internen
Datenspeicher für sämtlichen vom CMS erfassten Content zu bieten sowie diverse
externe Informationsquellen zu integrieren. Bezüglich des internen Datenspeichers
sollen Aspekte der Archivierung miteinbezogen werden und eine grundsätzlich getrennte Datenablage von archiviertem und aktuellem Content vorgesehen werden, um
die speziellen Anforderungen der Archivierung zu berücksichtigen (siehe Kapitel 3.2.4).
Für den aktuellen Content innerhalb des internen Datenspeichers soll eine möglichst
effiziente Speicherung der strukturierten sowie unstrukturierten Content-Objekte
gewährleistet sein.
Während bei den unstrukturierten Content-Objekten in erster Linie Aspekte der
effektiven Speicherung von zum Teil sehr großen Datenmengen zu beachten sind,
müssen bei strukturierten Content-Objekten Aspekte einer möglichst flexiblen und
effizienten Ablage von unterschiedlich strukturierten Daten berücksichtigt werden. Wie
bereits im vorherigen Abschnitt erwähnt wurde (siehe Kapitel 7.2.1), sollen strukturierte
Content-Objekte auf XML Standards zurückgreifen. Je nach Wahl des tatsächlichen
Datenbankmanagement-Systems muss daher eventuell ein effektives Mapping des XML
basierten Content auf ein relationales Datenbankschema erfolgen oder man verwendet
idealerweise gleich eine native XML Datenbank.
Die diversen externen Informationsquellen sollen über spezifische Adapter an den
darüber liegenden Layer angebunden werden, welche die externen Informationen für
den einheitlichen Zugang über Content-Objekte aufbereiten. Grundsätzlich wäre es
denkbar, dass man diverse Dokumente bzw. multimediale Objekte in das CMS
integriert, welche am besten in Form von unstrukturierten Content-Objekten behandelt
werden. Fremdsysteme könnten aber auch sehr strukturierten Content bieten, wie
beispielsweise Inhalte aus einer relationalen Datenbank. Im Sinne eines möglichst
einheitlichen Content-Zugangs für das CMS sollen diese strukturierten Informationen
durch den entsprechenden Adapter in XML konvertiert werden und danach als
strukturierte Content Objekte im Abstraktions Layer zur Verfügung stehen.
Gestaltungsmodell
107
In Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..3 werden wiederum die in diesem Abschnitt diskutierten Aspekte
verdeutlicht. Der zuletzt genannte Aspekt der Konvertierung von strukturiertem Content
in XML soll natürlich auch bei der Anbindung von Content durch Fremdanbieter im
Abstraktions Layer Berücksichtigung finden (siehe Kapitel 7.2.1), sofern kein XML
basiertes Content Syndication Protokoll verwendet wird. Idealerweise würde sich für
sämtliche Integrationskomponenten die Web Service Technologie anbieten (siehe
Kapitel 5.2) um Barrieren, wie sie durch unterschiedliche Plattformen oder
Programmiersprachen entstehen, zu überwinden.
Intern
Archivierter
Content
Strukturierter
Content
Unstrukturierter
Content
Adapter
…
Extern
…
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..3:
Daten Layer
7.2.3
Funktionalität
In diesem Layer befindet sich die wesentliche Funktionalität des CMS. Grundsätzlich
sollten sämtliche in den Kapitel 3 und 4 erörterten Aspekte an dieser Stelle
berücksichtigt werden. Die zentrale Anforderung in diesem Layer ist es, möglichst
modular zu sein, um die Funktionalitäten anwendungsspezifisch gruppieren zu können.
Man kann dabei die möglichen Komponenten in drei Bereiche einteilen:

Grundlegende Funktionalitäten: Repräsentieren jene Funktionalitäten, welche
die Basis für ein zielgerichtetes Content Management bilden und ein effektives
Arbeiten mit den Content-Objekten ermöglichen. Dazu zählen im Wesentlichen
die Funktionen der Content Kontrolle, Internationalisierung sowie
Administration.

Erweiterte Funktionalitäten: Sämtliche Funktionen, welche eine sinnvolle und
zweckdienliche Erweiterung zu den grundlegenden Funktionalitäten darstellen.

Schnittstellen: Diverse Schnittstellen zwischen den grundlegenden Funktionalitäten und externen Ressourcen.
Diese drei Bereiche sollen im folgenden Teil dieses Abschnittes detaillierter erörtert und
danach in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text
that you want to appear here..4 veranschaulicht werden. Bezüglich der grundlegenden
Funktionalitäten lassen sich an dieser Stelle keine neuen Aspekte identifizieren, die
nicht schon im Kapitel 3 diskutiert worden sind. Die notwendigen Funktionen sollen
daher nur mit einem Hinweis auf die entsprechende Stelle in Kapitel 3 aufgelistet
Gestaltungsmodell
108
werden. Es sei darauf verwiesen, dass die grundlegenden Funktionalitäten nicht
unbedingt das Minimum darstellen, um eine Basis für Content Management zu
schaffen. Allerdings erachtet der Autor der vorliegenden Arbeit die folgenden Funktionen als wesentliche Grundfunktionalitäten, welche ein innovatives CMS auf jeden
Fall bieten sollte. Diese Funktionen sind:

Zugriffskontrolle (siehe Kapitel 3.2.4)

Versionierung (siehe Kapitel 3.2.4)

Check-In und Check-Out (siehe Kapitel 3.2.4)

Link Management (siehe Kapitel 3.2.1)

Archivierung (siehe Kapitel 3.2.4)

Internationalisierung (siehe Kapitel 3.2.9)

Import und Export (siehe Kapitel 3.2.7)

Backup (siehe Kapitel 3.2.8)

Benutzerverwaltung (siehe Kapitel 3.2.8)
Aufbauend auf den grundlegenden Funktionalitäten soll es möglich sein, diverse
Komponenten hinzuzufügen, um den Funktionsumfang des CMS zu erweitern. In der
folgenden Auflistung werden die entsprechenden verbleibenden Funktionen, welche
bereits im Kapitel 3 und 4 erörtert wurden, kurz im Kontext der Gesamtarchitektur
erläutert:

Workflow: Flexible Möglichkeiten verschiedene Workflows zu definieren, um
beispielsweise festzulegen, wer bestimmte Content-Objekte bearbeiten muss
oder welche Qualitätskontrollen Content-Objekte durchlaufen müssen (siehe
Kapitel 3.2.6).

Information Retrieval: Innovative Suchmöglichkeiten sind ein sehr wichtiger
Aspekt für ein CMS, um den gesamten verwalteten Content möglichst effizient
wiederauffindbar zu machen. Gute Suchalgorithmen sollten in einer eigenen
Komponente gekapselt sein, um diese leicht, gegen eventuell verbesserte
Algorithmen, austauschen zu können (siehe Kapitel 3.2.5).

Portal: Durch Portal-Funktionalitäten soll es möglich sein, einen personalisierten Zugang zu dem gesamten verwalteten Content durch das CMS zu
bieten. Des Weiteren soll eine Integration von weiterer Funktionalität in das
Portal möglich sein, wie z.B. FAQ, Diskussionsforen oder Chat, um eine
Collaboration zu unterstützen (siehe Kapitel 4.2.2).

Barrierefreier Informationszugang: So weit es möglich ist, soll durch diese
Komponente eine möglichst gute Unterstützung für einen barrierefreien
Informationszugang gewährleistet werden, beispielsweise durch das
Bereitstellen von Validatoren für HTML-Seiten (siehe Kapitel 4.1.2).

Website Erstellung: Das Erstellen und Verwalten von Websites ist oftmals ein
zentraler Schwerpunkt von Content Management Systemen (siehe Kapitel
Gestaltungsmodell
109
6.2.5). Durch das Kapseln der dazu notwendigen Funktionalität in einer eigenen
Komponente soll deutlich gemacht werden, dass der Schwerpunkt dieses CMS
nicht auf der Website Verwaltung liegt, sondern dies nur eine erweiterte
Funktionalität darstellt. Grundsätzlich soll durch diese Komponente das
Erstellen von Templates unterstützt werden, welche das Layout einer Website
vorgeben und in weiterer Folge mit dem Content der strukturierten sowie
unstrukturierten Content-Objekte gefüllt werden können.

Monitoring: Mit dieser Komponente soll eine automatisierte Überwachung des
Systemzustands des CMS ermöglicht werden. Dadurch soll den Administratoren
beispielsweise ein Überblick über den aktuellen Speicherverbrauch oder die
Netzwerkauslastung gegeben werden. Zugleich soll auch eine automatische
Benachrichtigung beim Auftreten von kritischen Situationen erfolgen, wie z.B.
ein Speicherfehler oder ausgehender Speicherplatz (siehe Kapitel 3.2.8).

Analyse und Protokollierung: Durch diese Funktionalität soll es ermöglicht
werden, detaillierte Analysen über die Zugriffshäufigkeit auf gewisse ContentBereiche zum Zweck statistischer Auswertungen durchzuführen (siehe Kapitel
3.2.8).

Digital Asset Management: Durch diese Komponente sollen erweiterte
Verarbeitungsmöglichkeiten für unstrukturierte Content-Objekte, welche multimediale Daten beinhalten, geboten werden. Dazu zählen unter anderem
Streaming Video oder Audio, die Möglichkeit der Umwandlung von
multimedialen Daten in verschiedene Qualitätsstufen bzw. Auflösungen oder
entsprechende Suchalgorithmen, welche an die Charakteristiken von multimedialen Daten angepasst sind (siehe Kapitel 4.2.3).

Digital Right Management: Diese Komponente soll Schutzmechanismen für die
ökonomische Komponente von Content bieten, indem Content mit entsprechenden Nutzungsrechten assoziiert und verschlüsselt wird (siehe Kapitel
4.2.1).
Während sämtliche bisher erörterten Funktionen im Wesentlichen die Basis für den
darüber liegenden Layer innerhalb der Gesamtarchitektur des CMS darstellen,
verbleiben noch einige Komponenten, welche Schnittellen zwischen den grundlegenden
Funktionalitäten des CMS und eventuell benötigten externen Ressourcen darstellen. Die
folgenden Schnittstellen sollen idealerweise existieren:

Application Programming Interfaces (API): Das Bereitstellen von APIs, um mit
unterschiedlichen Programmiersprachen sämtliche Funktionen des CMS zu
nutzen, wie sie auch über alternative Wege nutzbar wären (siehe Kapitel 3.2.7).

Externe Applikationen: Es soll eine leichte Integration von häufig verwendeten
Autoren Werkzeugen gewährleistet sein. Besonders für unstrukturierte ContentObjekte, welche Content in einem proprietären Format beinhalten, sollte es für
das entsprechende Bearbeitungsprogramm komfortable Möglichkeiten geben,
auf den Content zuzugreifen. Content-Autoren soll es dadurch ermöglicht
Gestaltungsmodell
110
werden, weiterhin mit bereits im Einsatz befindlichen Werkzeugen zu arbeiten
und sämtliche Verwaltungstätigkeiten, wie beispielsweise Versionierung oder
Zugriffskontrolle, werden im Hintergrund vom CMS ausgeführt (siehe Kapitel
3.2.2).

Directory Services: Diese Komponente soll eine Synchronisation mit bestehenden Benutzerdaten in Directory Services bieten, um Benutzerdaten nicht
doppelt verwalten zu müssen (siehe Kapitel 3.2.8).

Email: Die Integration des CMS mit einem Email System soll es ermöglichen,
die einzelnen Benutzer des CMS über wichtige Ereignisse zu informieren sowie
eine Verwaltung und Archivierung relevanter Email Inhalte zu gewährleisten
(siehe Kapitel 3.2.6).

Content Providing: Der verwaltete Content innerhalb des CMS soll über diese
Komponente auch für externe Interessenten zugreifbar sein. Ideal in diesem
Bereich wäre eine Unterstützung bekannter Content Exchange Protokolle wie
ICE oder RSS (siehe Kapitel 3.2.7), aber auch die Web Service Technologie
wäre zu diesen Zweck gut geeignet (siehe Kapitel 5.2).
Digital Right
Management
Digital Asset
Management
Analyse
Protokollierung
Monitoring
Website Erstellung
Barrierefeier
Informationszugang
Portal
Information
Retrieval
Workflow
Erweiterte Funktionalitäten
Content Management
Schnittstellen
API
Externe Applikationen
Zugriffskontrolle
Versionierung
Check-In Check-Out
Directory Services
Link Management
Archivierung
Internationalisierung
Email
Import Export
Backup
Benutzerverwaltung
Content Providing
Grundlegende Funktionalitäten
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..4:
Funktionalitäten Layer
In Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..4 werden die in diesem Abschnitt diskutierten Funktionen und
Komponenten entsprechend ihrer Zuordnung zu den drei am Anfang dieses Abschnittes
erörterten grundlegenden Bereichen dargestellt. Es sei darauf verwiesen, dass die
Gestaltungsmodell
111
dargestellten Funktionalitäten in erster Linie auf den in den vorhergehenden Kapiteln
gewonnenen Erkenntnissen beruhen. Der Autor der vorliegenden Arbeit möchte daher
keinen Anspruch auf die vollständige Berücksichtigung aller möglichen Aspekte eines
CMS erheben, sieht aber dennoch in den Erörterungen dieses Abschnittes eine sehr
breite Abdeckung zurzeit relevanter Anforderungen. Spezielle Unterstützungen zur
optimalen Bedienung bestimmter Distributionskanäle bzw. zukünftige Entwicklungen
können aber durchaus funktionale Erweiterungen, besonders bei den erweiterten
Funktionalitäten und bei den Schnittstellen, notwendig machen. Im nächsten Abschnitt
wird der letzte verbleibende Layer diskutiert, welcher auf Basis der vorhandenen
Komponenten im Funktionalitäten Layer über ein einheitliches Interface die entsprechenden Funktionen für den Endanwender aufbereiten soll.
7.2.4
Front-End
Der Front-End Layer bildet die wesentliche Schnittstelle für die Interaktionen der
Endanwender mit dem CMS. Man kann die Komponenten in diesem Layer
grundsätzlich zwei Bereichen zuordnen, der Content-Verwaltung und der ContentBereitstellung. Die Content-Verwaltung soll es ermöglichen, sämtliche notwendigen
Tätigkeiten im Rahmen eines effektiven Content Managements durchzuführen und die
Content-Bereitstellung soll die Publikation des Content auf unterschiedlichen
Distributionskanälen unterstützen. Für die Content-Bereitstellung ist daher die Berücksichtigung der Eigenschaften unterschiedlicher Clients ein essentieller Bestandteil,
allerdings sollen diese Aspekte auch für die Content-Verwaltung gelten, sodass den
Endanwendern des CMS der Zugang zum System über verschiedene Client Typen
ermöglicht wird. Denkbar wäre eine Unterstützung von Web Browsern, mobilen
Endgeräten oder proprietären Clients.
Es sei allerdings erwähnt, dass natürlich im Bereich der Content-Verwaltung in erster
Linie ein Zugang über Web Browser zu unterstützen ist, um die Systemanforderungen
sowie notwendigen Installationen für die diversen Benutzer des CMS so gering wie
möglich zu halten. Eine breite Unterstützung diverser Clients im Bereich der ContentBereitstellung soll allerdings durchaus gewährleistet sein. Die Content-Verwaltung wird
im Wesentlichen durch zwei Komponenten repräsentiert, welche in jedem Fall für den
Einsatz des CMS notwendig sind:

Administration: Diese Komponente soll einen speziellen Zugang zum CMS für
Administratoren bieten, um sämtliche administrativen Tätigkeiten auszuführen.
Den Administratoren soll es hier im Wesentlichen ermöglicht werden, die
Benutzer zu verwalten, einen Import, Export oder Backup von Content
durchzuführen sowie die diversen Schnittstellen des CMS hin zu externen
Ressourcen zu konfigurieren.

Workplace: Der Workplace repräsentiert die zentrale Komponente, um den
Benutzern des Systems das Ausführen sämtlicher für ein effektives Content
Management notwendiger Tätigkeiten zu ermöglichen. Der Workplace soll
Gestaltungsmodell
112
dabei je nach den im darunter liegenden Funktionalitäten Layer vorhandenen
Komponenten den Benutzern die entsprechenden Funktionen anbieten.
Sämtliche Content-Objekte sollen über den Workplace in einer hierarchischen
Form, je nach den Rechten des aktuellen Benutzers, dargestellt werden.
Typische Tätigkeiten innerhalb des Workplace wären die strukturierte ContentErfassung in komfortablen Formularen, Workflows zu definieren und zu
instanzieren oder Templates für einen bestimmten Publikationskanal zu
erstellen. Die Funktionen des Workplace werden auch in der nachfolgenden
praxisorientierten Anwendung, des in diesem Kapitel modellierten CMS,
erläutert (siehe Kapitel 7.4).
Der zweite Bereich, die Content-Bereitstellung, beinhaltet Komponenten, um Client
Anfragen über gewisse Publikationskanäle zu bearbeiten. Besonders wichtig sind in
erster Linie folgende Komponenten:

Website: Damit soll die Publikation von entsprechendem Content auf einer
Website ermöglicht werden. Es soll in erster Linie möglich sein, in einer
anspruchsvoll aufbereiteten Website, nach klaren Layout Vorgaben der
Template Designer, relevanten Content für externe Interessenten an der Unternehmung zu präsentieren.

Portal: Sofern die notwendigen Funktionalitäten im darunter liegenden Layer
gegeben sind, soll diese Komponente den personalisierten Portalzugang
ermöglichen, um den entsprechenden Benutzern grundsätzlich die Recherche
über den gesamten verwalteten Content des CMS zu ermöglichen. Denkbar wäre
auch eine mögliche Integration des Workplace in das Portal, um beispielsweise
Content-Autoren eine einheitliche und komfortable Schnittstelle zum CMS zu
bieten. Diese Portale wären sowohl innerhalb als auch außerhalb der
Unternehmung von Bedeutung, um einerseits den Mitarbeitern einen Zugang zu
sämtlichen relevanten Informationen innerhalb der Unternehmung zu bieten und
andererseits beispielsweise externen Geschäftspartnern eine Zugang zu
notwendigen Daten zu gewähren.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..5 veranschaulicht die in diesem Abschnitt erörterten Aspekte des
Front-End Layer. Es sei erwähnt, dass im Bereich der Content-Bereitstellung durchaus
Erweiterungen für andere zu berücksichtigende Distributionskanäle bzw. Clients
denkbar wären, sofern im darunter liegenden Layer eine funktionale Unterstützung
gegeben ist (siehe Kapitel 7.2.3). Beispielhaft seien an dieser Stelle als mögliche
Erweiterungen WAP oder CD-ROM genannt.
Gestaltungsmodell
113
Client
Web
Browser
Mobile
Engeräte
Proprietäre
Clients
…
Content-Verwaltung
Content-Bereitstellung
Administration
Website
Workplace
Portal
…
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..5:
Front-End Layer
7.3
Gesamtarchitektur
Zum Zweck einer besseren Veranschaulichung der im vorherigen Abschnitt (siehe
Kapitel 7.2) geführten Diskussion der einzelnen Layer sollen die diversen Abbildungen
der jeweiligen Layer zu einer Abbildung zusammengeführt werden.
Gestaltungsmodell
114
Client
…
Digital Right
Management
Portal
Analyse
Protokollierung
Website
Website Erstellung
Barrierefeier
Informationszugang
Portal
Information
Retrieval
Workplace
API
Content Management
Externe Applikationen
Zugriffskontrolle
Versionierung
Check-In Check-Out
Directory Services
Link Management
Archivierung
Internationalisierung
Email
Import Export
Backup
Benutzerverwaltung
Intern
Archivierter
Content
Strukturierter
Content
Unstrukturierter
Content
Adapter
…
Extern
…
Abstraktion
Content
Daten
Content-Objekte
Metainformationen
Content Providing
Content
Syndication
Interner
Konnektor
Funktionalität
Workflow
Administration
…
Content-Bereitstellung
Digital Asset
Management
Content-Verwaltung
Proprietäre
Clients
Front-End
Mobile
Engeräte
Monitoring
Web
Browser
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..6:
Die vier Layer der Gesamtarchitektur eines innovativen CMS
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..6 zeigt die Gesamtarchitektur des in diesem Kapitel erörterten
innovativen Content Management Systems. Da Abbildung Error! Use the Home tab to
apply Überschrift 1 to the text that you want to appear here..6 in erster Linie einer
übersichtlichen Darstellung der vier Layer der Gesamtarchitektur dient und sämtliche
relevanten Aspekte der einzelnen Layer bereits ausführlich diskutiert wurden (siehe
Gestaltungsmodell
115
Kapitel 7.2), sollen in diesem Abschnitt die Funktionen der einzelnen Komponenten
nicht mehr näher erläutert werden.
7.4
Praxisorientierte Anwendung
Um die Funktionsweise und auch den praktischen Nutzen des in diesem Kapitel
beschriebenen CMS besser zu verdeutlichen, sollen in diesem Abschnitt, anhand eines
einfachen, fiktiven aber dennoch praxisorientierten Beispiels, die Möglichkeiten des
CMS dargestellt werden. Es ist aufgrund der Komplexität des Gesamtsystems nicht
möglich, in dem in diesem Abschnitt erörterten Beispiel, sämtliche Funktionalitäten des
CMS einzubeziehen. In erster Linie soll beispielhaft das Management von unterschiedlichen Content-Typen verdeutlicht werden.
Als Beispiel stelle man sich einen Autokonzern vor, welcher Informationen über die
diversen Automodelle sowie Händlerinformationen im Internet veröffentlichen möchte.
Folgende Anforderungen sollen gelten:

Die einzelnen Modelle sollen auf der Website kurz beschrieben werden.

Detaillierte Informationen, wie technische Daten oder Ausstattungsmöglichkeiten, sollen als Dokumente zum Download bereitstehen.

Eventuell soll es zu den einzelnen Modellen Bilder sowie kurze Videos geben.

Aktuelle Presse Nachrichten bezüglich des Konzerns oder über die einzelnen
Modelle sollen über die Website veröffentlicht werden.

Die Händlerinformationen sollen von den einzelnen Händlern selber eingegeben
werden können.
In einer vereinfachten und idealisierten Form sollen nachfolgend die einzelnen Schritte
beschrieben werden, welche notwendig sind, um die Anforderungen mit Hilfe des CMS
zu realisieren. Sämtliche Tätigkeiten können von den unterschiedlichen Mitarbeitern
über den Workplace durchgeführt werden. Als erster Schritt werden von den Designern
die Templates für das Layout der Website erstellt. Jedes Template wird als ein ContentObjekt im CMS verwaltet. Danach werden für die strukturierten Informationen von den
Content-Managern Strukturdefinitionen erstellt, welche basierend auf XML Schema
wiederum als einzelne Content-Objekte abgelegt werden. Strukturdefinitionen werden
erstellt für die Modellbeschreibungen auf der Website sowie für die Händlerinformationen.
Die detaillierten Modellinformationen werden schon seit längerem in einem bestimmten
Textverarbeitungsprogramm erfasst und diese Vorgehensweise soll beibehalten werden.
Es existiert eine Schnittelle zwischen dem Textverarbeitungsprogramm und dem CMS,
die es den Content-Autoren dieser detaillierten Modellinformationen erlaubt, weiterhin
mit ihrer gewohnten Applikation zu arbeiten und die Dokumente in ihrem proprietären
Format als Content-Objekte direkt im CMS abzuspeichern. Die erstellten Bilder und
Videos über die diversen Automodelle werden direkt über den Workplace im CMS
Gestaltungsmodell
116
erfasst und ebenfalls in einzelnen Content-Objekten gespeichert. Die multimedialen
Daten werden in hohen Qualitätsstufen im CMS erfasst, weil es die vorhandenen Digital
Asset Management Funktionalitäten erlauben, die Daten in für das Web geeignete
Qualitätsstufen zu konvertieren.
Zur Eingabe der strukturierten Informationen werden den Content-Autoren im
Workplace komfortable Formulare angeboten. Content-Autoren, welche direkt in der
Zentrale des Autokonzerns arbeiten, geben die strukturierten Beschreibungen der
Modelle für die Website ein. Die Händlerinformationen können ebenfalls über ein
Formular im Workplace eingegeben werden. Da der Workplace über Web Browser
dargestellt wird, brauchen die einzelnen Händler, welche geografisch weit verteilt sind,
nur jeweils einen Computer mit Internetanschluss, um die notwendigen Informationen,
wie Adresse, Telefonnummer oder Öffnungszeiten in das zentrale CMS einzupflegen.
Der erfasste strukturierte Content wird basierend auf XML in mehreren ContentObjekten im CMS abgelegt.
Die aktuellen Pressenachrichten bezüglich des Autokonzerns werden von einer externen
Presseagentur recherchiert und über die Content Syndication Schnittstelle automatisiert
in das CMS eingebunden. Jede Pressenachricht liegt in XML als ein Content-Objekt
vor. Als letzten Schritt müssen die Designer noch XSLT Transformationen definieren,
um die strukturierten Content-Objekte entsprechend für die Website aufzubereiten.
Der gesamte, in Form von Content-Objekten erfasste Content, kann nun über die
Website betrachtet, gespeichert oder durchsucht werden. Der strukturierte Content wird
bedarfsgerecht für die Website transformiert, die Dokumente mit den detaillierten
Informationen werden zum Download angeboten, die Bilder können in verschiedenen
Auflösungen betrachtet werden und die Videos stehen in einem Streaming Format zur
Verfügung. Sämtliche erörterten Schritte lassen sich auch in entsprechenden Workflows
abbilden, um die diversen Tätigkeiten automatisch den verantwortlichen Personen
zuzuweisen. Neu erfasster Content wird von den verantwortlichen Content-Managern
zuerst qualitativ überprüft, bevor er tatsächlich über die Website publiziert wird.
7.5
Schlussbemerkung
Das im vorherigen Abschnitt erläuterte Beispiel verdeutlicht im Wesentlichen die zu
Beginn dieses Kapitels aufgezeigten grundsätzlichen Zielsetzungen des zu modellierenden CMS (siehe Kapitel 7.1.1). Die Erfassung von Content aus unterschiedlichen
Quellen, sei es der Workplace, externe Applikationen oder die Content Syndication
Schnittelle, verdeutlicht die integrative Wirkung des in diesem Kapitel erörterten CMS.
Verschiedene Content-Typen, seien es hoch strukturierte Informationen, Dokumente in
proprietären Formaten oder multimediale Daten werden dadurch über ein einheitliches
Content Repository zugänglich und können für eine bedarfsgerechte Publikation genutzt
werden. Das CMS erfüllt damit nach Meinung des Autors der vorliegenden Arbeit eine
Gestaltungsmodell
117
sehr wichtige Bedingung im Kontext eines effizienten Content Management, nämlich
die Erfassung sämtlichen Contents in einem einheitlichen System.
Die Publikation des im vorherigen Abschnitt erläuterten Beispiels ist ausschließlich auf
eine Website ausgerichtet, allerdings wäre auch eine Bedienung anderer Distributionskanäle denkbar. Die Möglichkeiten einer bedarfsgerechten Aufbereitung unterscheiden
sich jedoch bei strukturiertem oder unstrukturiertem Content (siehe Kapitel 7.2.1).
Strukturierte Content-Objekte zeigen eine sehr gute Flexibilität und können im
Wesentlichen aufgrund der strikten Einhaltung der Anatomie des Content beliebig
transformiert werden. Im Gegensatz dazu sind die Möglichkeiten bei unstrukturierten
Content-Objekten weitaus eingeschränkter, da strukturelle Informationen nur bedingt
vorliegen. Der Content der unstrukturierten Objekte kann nur durch eine Konvertierung
an die Anforderungen unterschiedlicher Publikationskanäle angepasst werden.
Das in diesem Kapitel aufgezeigte CMS nutzt konsequent die XML Technologie zur
Verwaltung und Integration von strukturiertem Content. Dies hat zum einen den Vorteil
der guten Erfassbarkeit der Anatomie des Content, da die deutliche Trennung von
Struktur, Inhalt und Darstellung integraler Bestandteil von XML ist und zum anderen
erhöht die Verwendung bekannter Standards zumeist die Akzeptanz und somit die
Effizienz des Gesamtsystems. Zugleich sei aber auch erwähnt, dass zum Teil überhaupt
keine XML Kenntnisse notwendig sind, um mit dem modellierten CMS zu arbeiten.
Content-Autoren beispielsweise geben den Content über leicht zu bedienende
Formulare ein und müssen sich über die zugrunde liegende Datenbasis keine weiteren
Gedanken machen.
Ein wesentlicher Vorteil bei der Verwendung von XML als Format zur Bearbeitung von
strukturiertem Content liegt jedoch darin, dass der XML basierte Content ohne weitere
Konvertierung für Funktionen wie Import bzw. Export oder Content Syndication
geeignet ist und man dadurch immer mit einem einheitlichen Content-Format arbeiten
kann. Die gute Eignung von XML im Kontext eines innovativen CMS soll im folgenden
Kapitel anhand praktischer Erfahrungen, in den zwei soeben erwähnten Bereichen
Import bzw. Export und Content Syndication, noch besser veranschaulicht werden.
8
Implementierung ausgewählter Aspekte
eines innovativen Content Management
Systems
Es würde den Rahmen der vorliegenden Arbeit sprengen, eine eigenständige
Implementierung des innovativen CMS, wie es im vorhergehenden Kapitel modelliert
wurde, zu erstellen. Die Umsetzung der diversen Anforderungen und die damit
verbundene Komplexität benötigt um ein vielfaches mehr an Zeit und Ressourcen, wie
sie der Autor, im Rahmen der vorliegenden Arbeit, alleine nicht aufbringen kann, um
ein System zu implementieren, welches mit den zahlreichen bestehenden Implementationen konkurrieren kann. Es ist allerdings auch nicht notwendig bei der
Implementierung eines innovativen CMS gänzlich von Neuem zu beginnen, da bereits
sehr interessante Open Source Implementierungen existieren (siehe Kapitel 6.2), welche
schon aufgrund einer mehrjährigen Entwicklung sehr viel Erfahrung und Know-how
mitbringen und dadurch eine sehr gute Ausgangsbasis darstellen können. Zur
Implementierung interessanter Aspekte der im vorherigen Kapitel modellierten Architektur eines innovativen CMS soll daher ein geeignetes Open Source Projekt als
Grundlage für weiterführende Implementierungen genutzt werden, zu welchem Zweck
das OpenCms Projekt ausgewählt wurde (siehe Kapitel 6.2.1).
Es ist einerseits das Ziel dieses Kapitels, auf theoretischer Ebene detaillierter auf die
Funktionalitäten von OpenCms einzugehen, als es bereits in Kapitel 6.2.1 geschehen ist,
um die gute Eignung von OpenCms als Grundlage für die Implementierung eines
innovativen CMS zu begründen. Andererseits soll auf praktischer Ebene durch die
Implementierungen einer interessanten Auswahl an – im Hinblick auf ein innovatives
CMS – ergänzenden Funktionalitäten für OpenCms, die Vorteilhaftigkeit sowie die
erweiterten Möglichkeiten für das ausgewählte Open Source Projekt aufgezeigt werden.
Der Schwerpunkt bei den implementierten Aspekten aus den Bereichen Content
Syndication sowie Import und Export liegt allerdings in der Darstellung der innovativen
Möglichkeiten der XML Technologien im Kontext von Content Management, womit
die aufgezeigten Aspekte nicht nur für OpenCms, sondern grundsätzlich für jedes
innovative CMS relevant sind.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
8.1
119
OpenCms im Kontext des Gestaltungsmodells
Das OpenCms System existiert bereits seit mehreren Jahren und präsentiert sich im
Hinblick auf das, im vorherigen Kapitel erarbeitete Gestaltungsmodell, als ein sehr
innovativer Ansatz einer CMS Implementierung. Aus diesem Grund soll im nachfolgenden Abschnitt das OpenCms System nochmals etwas detaillierter erörtert werden
und anhand des erarbeiteten Gestaltungsmodells, bezüglich der Erfüllung bzw.
Nichterfüllung der unterschiedlichen Komponenten, evaluiert werden.
8.1.1
Allgemeines
Sämtliche nachfolgenden Darstellungen der OpenCms Funktionalitäten beruhen auf den
zahlreichen Dokumentation, welche auf der OpenCms Website [OpenCms 2003] zu
finden sind, insbesondere [OpenCms 2003a] bzw. aus den praktischen Erfahrungen,
welche der Autor der vorliegenden Arbeit bei der Implementierung von zusätzlichen
Funktionen für OpenCms gewonnen hat. Es sei an dieser Stelle erwähnt, dass das
OpenCms Projekt einen durchaus professionellen Eindruck vermittelt, aber dennoch zu
erkennen ist, dass die Programmiertätigkeiten an diesem Projekt schneller vorangehen
als das Bereitstellen entsprechender Dokumentation. Für aktuelle und teilweise auch
sehr hilfreiche Hinweise sei daher auf den dokumentierten Source Code1 sowie auf das
Archiv der Mailing List für OpenCms Entwickler2 verwiesen.
Wie bereits bei der vorhergehenden Darstellung des OpenCms Systems (siehe Kapitel
6.2.1) erläutert wurde, speichert OpenCms sämtlichen Content in einem Virtual File
System (VFS) und erlaubt über den OpenCms Workplace den Zugriff auf den gesamten
Content (siehe Abbildung Error! Use the Home tab to apply Überschrift 1 to the
text that you want to appear here..2). Jedes File bzw. Objekt in diesem VFS wird im
Kontext von OpenCms als eine Ressource bezeichnet. Eine Ressource setzt sich
grundsätzlich aus dem eigentlichen Content sowie dazugehörigen Metainformationen
zusammen und entspricht damit dem Konzept von Content-Objekten aus dem im
vorherigen Kapitel aufgezeigten Gestaltungsmodell. Man unterscheidet zwischen
unterschiedlichen Typen von Ressourcen, je nach dem Typ des eigentlichen Content,
wie beispielsweise binäre Daten, Templates oder Grafiken. Es gibt nur eine ganz
spezielle Ressource, welche keinen Content beinhaltet und mit dem Typ Folder
bezeichnet wird. Sie dient der hierarchischen Verwaltung der zahlreichen Ressourcen in
beliebig verschachtelten Ordnern.
Auf der Programmierebene erfolgt der Zugriff auf sämtliche Ressourcen innerhalb des
VFS über eine zentrale Schnittstelle, welche als CmsObject bezeichnet wird. Dieses
Konzept der einheitlichen Ressourcen sowie dem einheitlichen Zugriff über das
CmsObject verdeutlicht den wesentlichen Grundgedanken eines einheitlichen Content
Zugriffs des im Gestaltungsmodell aufgezeigten Abstraktions Layer (siehe Kapitel
1
Die Source Code Dokumentation entspricht dem Javadoc Standard.
2
Siehe http://www.opencms.org/opencms/en/development/mailinglist-archive.html
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
120
7.2.1). Da der Abstraktions Layer ein zentrales Element in der Gesamtarchitektur des im
vorherigen Kapitel modellierten CMS darstellt, verdeutlicht diese Übereinstimmung die
gute Eignung von OpenCms als eine Ausgangsbasis für die Implementierung eines
innovativen CMS. Im folgenden Abschnitt sollen die Funktionen von OpenCms der
identifizierten Architektur eines innovativen CMS gegenübergestellt werden, um
eventuell zweckmäßige funktionale Erweiterungen für das OpenCms zu ermitteln.
8.1.2
Gegenüberstellung mit der Architektur eines innovativen CMS
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..1 zeigt nochmals die im vorherigen Kapitel identifizierte Gesamtarchitektur eines innovativen CMS (siehe Kapitel 7.3), wobei jedoch sämtliche
Komponenten hervorgehoben sind, welche der Autor der vorliegenden Arbeit bei
OpenCms im Wesentlichen erfüllt sieht. Die Abbildung zeigt sehr deutlich die
Schwerpunktsetzung von OpenCms, das Verwalten und Erstellen von Websites. Um
diese zu verdeutlichen, sollen die einzelnen Layer kurz im Bezug auf OpenCms
diskutiert werden.
Der Daten Layer berücksichtig grundsätzlich nur die Speicherung von strukturierten
und unstrukturierten Ressourcen in der, im Kontext von OpenCms, internen Datenbank.
Spezielle Aspekte einer Langzeit-Archivierung sowie spezielle Adapter zu Fremdsystemen werden nicht berücksichtigt. Die wesentliche Eigenschaft des Abstraktions
Layer wird allerdings implementiert, indem der Zugriff auf sämtliche Ressourcen über
eine einheitliche Schnittstelle ermöglicht wird (siehe Kapitel 8.1.1). Allerdings gibt es
keine Unterstützung für die Integration von Content Syndication Protokollen.
Die grundlegenden Funktionalitäten im darauf folgenden Layer werden sehr gut erfüllt.
Nur Aspekte der Archivierung, wie bereits beim Daten Layer erwähnt, sowie die
Internationalisierung werden etwas vernachlässigt. Es gibt zwar einfache
Möglichkeiten, das User Interface der Content-Verwaltung im Front-End Layer in
mehreren Sprachen verfügbar zu machen, doch die Möglichkeiten der Erstellung
mehrsprachiger Websites zeigen Verbesserungsmöglichkeiten. Mehrsprachigkeit wird
zumeist durch ein paralleles Anlegen von identischen Websites in unterschiedlichen
Sprachen erreicht. Aber es gibt keine Möglichkeiten, bei der Content-Eingabe einfach
die aktuelle Sprache zu wechseln, um nacheinander verschiedene Sprachen einzugeben
oder die Möglichkeit, notwendige Übersetzungsprozesse in Workflows zu erfassen.
Auch beim Import bzw. Export sei erwähnt, dass hier grundsätzlich nur ein Import von
im OpenCms selber exportierten Content effizient unterstützt wird. Möglichkeiten eines
Imports von großen Mengen an beliebig strukturiertem Content sind jedoch nicht zu
erkennen.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
121
Client
…
Digital Right
Management
Analyse
Protokollierung
Monitoring
Digital Asset
Management
Portal
Website
Website Erstellung
Barrierefeier
Informationszugang
Workplace
Portal
Information
Retrieval
Workflow
API
Content Management
Externe Applikationen
Zugriffskontrolle
Versionierung
Check-In Check-Out
Directory Services
Link Management
Archivierung
Internationalisierung
Email
Import Export
Backup
Benutzerverwaltung
Intern
Archivierter
Content
Strukturierter
Content
Unstrukturierter
Content
Adapter
…
Extern
…
Abstraktion
Content
Daten
Content-Objekte
Metainformationen
Content Providing
Content
Syndication
Funktionalität
Interner
Konnektor
…
Content-Bereitstellung
Content-Verwaltung
Administration
Proprietäre
Clients
Front-End
Mobile
Engeräte
Web
Browser
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..1:
Implementierte Komponenten der identifizierten Gesamtarchitektur aus Kapitel 7
im Hinblick auf OpenCms
Bei den Schnittstellen im Funktionalitäten Layer ist auch das Fehlen einiger wichtiger
Komponenten zu bemerken. Es fehlen zurzeit Möglichkeiten einer einfachen Integration
von externen Applikationen zur Content-Bearbeitung, eine Integration von externen
Benutzerdaten sowie das Bereitstellen von verwaltetem Content über standardisierte
Syndication Protokolle für externe Interessenten. Ein Blick auf die verbleibenden,
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
122
erweiterten Funktionalitäten im selbigen Layer zeigt deutlich die Schwerpunktsetzung
von OpenCms. Wirklich effizient wird nur die Website Erstellung unterstützt sowie
Möglichkeiten einer Integration unterschiedlicher Information Retrieval Komponenten.
Die Unterstützung eines einfachen vorgegebenen Workflow ist zwar zu erkennen,
jedoch gibt es noch keine Möglichkeiten, flexible, komplexe Workflows in einer
komfortablen Vorgehensweise zu modellieren.
Schlussendlich verbleibt noch der Front-End Layer, welcher wiederum die Spezialisierung auf das Web aufzeigt. Im Rahmen der Content-Verwaltung bietet OpenCms zwei
unterschiedliche User Interfaces, welche einerseits das Durchführen von administrativen
Tätigkeiten erlauben und andererseits die Verwaltung des Content ermöglichen. Die
Content-Bereitstellung unterstützt in erster Linie die Publikation von Websites. Da der
Zugang für die Content-Verwaltung ausschließlich über den Web Browser ermöglicht
wird, stellt dieser sowohl für die Content-Verwaltung als auch für die ContentBereitstellung den bevorzugten Client dar.
Die Gegenüberstellung von OpenCms mit der identifizierten Architektur eines
innovativen CMS zeigt noch sehr viele unberücksichtigte Aspekte bei OpenCms im
Hinblick auf die funktionale Erfüllung sämtlicher aufgezeigten Komponenten. Es sei
allerdings darauf verwiesen, dass das im Rahmen des Gestaltungsmodells aufgezeigte
innovative CMS die Idealvorstellung eines CMS beschreibt, deren vollständige
Implementierung ein äußerst komplexes und umfangreiches Projekt darstellt. Im
Rahmen der vorliegenden Arbeit wurden zwei, im Kontext der Architektur eines
innovativen CMS, fehlende Funktionalitäten bei OpenCms ausgewählt, deren
Implementierung nicht nur eine sehr zweckdienliche Erweiterung für OpenCms
darstellt, sondern auch sehr innovative Anwendungsmöglichkeiten für die XML
Technologie ermöglicht. Zu diesem Zweck wurden funktionale Erweiterungen in den
Bereichen Content Syndication und Import bzw. Export implementiert, deren
Anwendung sowie Nutzen im verbleibenden Teil dieses Kapitels erläutert werden
sollen.
An dieser Stelle sei erwähnt, dass OpenCms einen sehr effizienten Ansatz bietet,
funktionale Erweiterungen vorzunehmen. OpenCms bietet einen Modul-Mechanismus,
der es erlaubt, sämtliche für eine funktionale Erweiterung benötigte Ressourcen, seien
es Java Klassen, Templates oder diverse binäre Dateien in einem Modul zusammenzufassen. Module werden über den OpenCms Workplace erstellt und können in das
lokale Dateisystem exportiert werden. Ein exportiertes Modul kann bei einem anderen
OpenCms System wieder importiert werden, wodurch, auch bei einem bereits im
Einsatz befindlichen System, sehr leicht funktionale Erweiterungen hinzugefügt werden
können. Bei der Implementierung der nachfolgenden Funktionalitäten wurde vom Autor
der vorliegenden Arbeit dieser Modul-Mechanismus verwendet3.
3
Die in Kapitel 8.2 aufgezeigten Funktionalitäten wurden vom Autor der vorliegenden Arbeit als ein
Modul über die OpenCms Website der OpenCms Community zur Verfügung gestellt. Siehe
http://www.opencms.org/opencms/en/download/sandbox.html
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
8.2
123
Content Syndication und Providing
OpenCms wurde dahingehend erweitert, um zum einen externen Content in einer Form
zu integrieren, dass eine bedarfsgerechte Publikation ermöglicht wird und zum anderen
erfasster, strukturierter Content in OpenCms über ein Standardprotokoll für externe
Interessenten zur Verfügung steht. Als Protokoll für Content Syndication sowie
Providing wurde der RDF Site Summary (RSS) Standard verwendet. RSS ist ein bereits
sehr weit verbreiteter XML basierter Standard, für das Austauschen von Informationen
über das Web, welche sich grundsätzlich auf die Elemente Schlagzeile, weiterführender
Link und Kurzbeschreibung reduzieren lassen.
Die typischen Informationen, die über RSS angeboten werden sind Schlagzeilen oder
Kurzfassungen von aktuellen Artikeln. Der Sinn von RSS liegt nicht in dem Austausch
großer Content-Mengen, sondern nur in der strukturierten Übermittlung der wichtigsten
Daten, um so beispielsweise aktuelle Schlagzeilen auf einer beliebigen Website zu
integrieren. Möchte man zu einer Schlagzeile mehr Information haben, so wird ein
entsprechender Link angeboten, welcher auf die entsprechende Stelle der Website des
Autors der Schlagzeilen führt. [Lewin 2000]
8.2.1
Integration von externem Content
Eine automatisierte Integration von externem Content für eine einfache bedarfsgerechte
Publikation bietet eine einfache Möglichkeit, um beispielsweise den Content auf einer
Website ohne größeren Aufwand aktuell zu halten. Zur Realisierung dieses Vorhabens
wurde OpenCms mit einer Funktion erweitert, die es erlaubt, über das HTTP Protokoll
ein auf dem RSS Standard basiertes XML Dokument von beliebigen externen ContentAnbietern in das VFS von OpenCms zu übertragen. Jedes übertragene XML Dokument
wird als eigene Ressource im VFS gespeichert. Da es sich um den XML Standard
handelt, bietet sich idealerweise für eine bedarfsgerechte Publikation eine XSLT
Transformation an. Das entsprechenden XSLT Dokument wird über den OpenCms
Workplace erstellt und ebenfalls als eine eigene Ressource im VFS gespeichert. Für die
tatsächliche Publikation des externen Content bedient man sich grundsätzlich der
JavaServer Pages (JSP), eine bekannte und etablierte Technologie, welche auch ein
fixer Bestandteil der J2EE Entwicklungsplattform ist (siehe auch Kapitel 5.1.3). JSP
Seiten können über den OpenCms Workplace erstellt und bearbeitet werden und sind
ebenfalls als ein spezieller Typ von Ressourcen im VFS gespeichert.
Mittels der JSP Technologie ist es sehr leicht möglich, basierend auf der Java
Programmiersprache, dynamische Elemente auf einer Website zu realisieren. JSP Seiten
werden zumeist von einem Designer erstellt, dessen Aufgabenschwerpunkt in der
Erstellung eines professionellen Designs und nicht in der Programmierung liegen soll
und daher ist es von Bedeutung, die notwendigen Tätigkeiten für den Designer kurz und
einfach zu halten. In diesem Sinne beschränken sich die für den Website Designer
durchzuführenden Tätigkeiten auf das Einfügen eines bestimmten Funktionsaufrufes in
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
124
die betreffende JSP Seite und das Definieren notwendiger Parameter über die Metainformationen.
Wie zuvor erwähnt wurde, werden JSP Seiten als eine Ressource gespeichert und
Ressourcen in OpenCms können standardmäßig mit Metainformationen angereichert
werden. In dieser speziellen Anwendung müssen zwei Metainformationen definiert
werden, zum einen die Referenz auf den externen Content und zum anderen die XSLT
Ressource, um den Content für die Publikation auf der Website entsprechend zu
transformieren. Durch den von dem Designer erstellten Funktionsaufruf in der JSP Seite
wird der Content, von den über die Metainformationen definierten Ressourcen
ausgelesen, die XSLT Transformation durchgeführt und der in diesem Fall generierte
HTML Code auf der Website publiziert.
Die XSLT Ressourcen sind grundsätzlich immer im VFS von OpenCms gespeichert.
Eine einmal erstellte XSLT Ressource kann natürlich mehrfach wieder verwendet
werden, solange der XML basierte, externe Content den Richtlinien des RSS Standard
folgt. Der externe Content selbst muss gar nicht im VFS gespeichert sein. Es ist auch
möglich, immer wenn eine JSP Seite angefordert wird, welche eine externe ContentQuelle integriert, den entsprechenden RSS basierten Content direkt vom externen
Anbieter anzufordern. Dies hat natürlich den Vorteil, dass der integrierte Content immer
ganz aktuell ist, aber leider auch den entscheidenden Nachteil, dass diese Vorgehensweise natürlich bei einer stark frequentierten Website unnötig viel Datentransfer
verursacht und auch Performance kostet. Zumal man meistens davon ausgehen kann,
dass sich ein über den RSS Standard angebotener Content maximal stündlich oder auch
nur täglich ändert. Es ist daher durchaus effizienter, den externen Content am lokalen
Server zwischenzuspeichern und bei der Publikation auf der Website auf diesen lokal
gespeicherten Content zuzugreifen.
Im Kontext von OpenCms bietet sich idealerweise folgende Lösung an, welche auch
implementiert wurde. OpenCms erlaubt die Definition von sogenannten Scheduled
Tasks, welche über das Administrations-Interface von OpenCms definiert und verwaltet
werden können. Damit ist es möglich, eine gewisse implementierte Funktion,
automatisch, nach einem bestimmten Zeitschema, zu starten. Dadurch erreicht man,
dass beispielsweise stündlich externer Content von diversen Anbietern angefordert wird
und dieser in Form von Ressourcen im VFS von OpenCms gespeichert wird.
Konfiguriert wird der dazu notwendige Scheduled Task mit einer Liste von URLs,
welche die einzelnen RSS Content-Quellen spezifizieren. Diese Liste, welche als
einfache Text Ressourcen ebenfalls im VFS vorliegt, kann dementsprechend über den
OpenCms Workplace bearbeitet werden und wird in regelmäßigen Abständen vom
entsprechenden Scheduled Task abgearbeitet. Beim Aufruf der entsprechenden JSP
Seite werden daher nur mehr Ressourcen aus dem VFS aufgerufen. Die bisherigen
Darstellungen in diesem Abschnitt sollen nun anhand einiger beispielhaften Screenshots
verdeutlicht werden.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
125
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..2:
Aktuelle Weltnachrichten von Yahoo! News
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..2 zeigt Schlagzeilen vom aktuellen Weltgeschehen, welche auf
der Yahoo! Website angeboten werden 4 . Die dargestellten Schlagzeilen werden von
Yahoo! auch mittels RSS angeboten5, um die leichte Integration dieser Schlagzeilen auf
beliebigen Websites zu ermöglichen. In Abbildung Error! Use the Home tab to apply
Überschrift 1 to the text that you want to appear here..3 sind dieselben Schlagzeilen
wie in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that
you want to appear here..2 zu sehen. Allerdings handelt es sich nun um eine von
OpenCms verwaltete Website. Die Publikation dieser Schlagzeilen erfolgte über jenen
Mechanismus, wie er am Anfang dieses Abschnittes aufgezeigt wurde. Im Wesentlichen
wurden die Yahoo! Schlagzeilen als ein XML basiertes RSS Dokument übertragen und
mittels einer XSLT Transformation entsprechend aufbereitet. Der angeführte Link bei
4
Siehe http://news.yahoo.com/
5
Siehe http://news.yahoo.com/rss
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
126
jeder Schlagzeile in Abbildung Error! Use the Home tab to apply Überschrift 1 to
the text that you want to appear here..3 führt direkt zum entsprechenden Artikel auf
der Yahoo! Website. Abschließend zeigt Abbildung Error! Use the Home tab to apply
Überschrift 1 to the text that you want to appear here..4 noch den Code der XSLT
Ressource, welche benutzt wurde, um die Darstellung in Abbildung Error! Use the
Home tab to apply Überschrift 1 to the text that you want to appear here..3 zu
erreichen.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..3:
Integrierte Weltnachrichten in einer von OpenCms verwalteten Website
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
127
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..4:
Die XSLT Transformation im Bearbeitungsmodus des OpenCms Workplace
Die Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..4 zeigt zugleich den OpenCms Workplace im Bearbeitungsmodus des Content einer Ressource. Dies verdeutlicht den, nach Meinung des Autors
der vorliegenden Arbeit, innovativen Ansatz von OpenCms, dass sämtliche benötigten
Objekte für ein effektives Content Management bzw. eine bedarfsgerechte Publikation
in der Form von einheitlichen Ressourcen gespeichert werden und über ein zentrales
Web-basiertes Interface zugänglich sind. So können beispielsweise bei der in diesem
Abschnitt dargestellten Funktion sämtliche relevanten Objekte, wie die zwischengespeicherten XML Daten, die JSP Seiten oder die XSLT Transformationen über einen
Web Browser erstellt und bearbeitet werden.
Es sei allerdings auch erwähnt, dass diese Web-basierten Editiermöglichkeiten, wie sie
in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..4 aufgezeigt werden, relativ einfach gehalten sind. OpenCms
bietet nur für HTML-Seiten einen sehr komfortablen WYSIWYG Editor. Allerdings
können beispielsweise auch XSLT Transformationen durchaus komplexe Strukturen
annehmen und unterstützende Bearbeitungsfunktionen, wie ein Highlighting oder eine
automatische Vervollständigung, können sehr hilfreich sein. Zurzeit sind jedoch
sämtliche Möglichkeiten innerhalb des OpenCms Workplace, außer für HTML-Seiten,
vergleichbar mit denen eines simplen Text Editors. Interessant wäre in diesem
Zusammenhang auch eine Schnittstelle für externe Bearbeitungsprogramme, sodass die
XSLT Ressource im Verwaltungsbereich von OpenCms bleibt, man aber ein
spezialisiertes XSLT Bearbeitungstool zum Editieren verwenden kann.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
8.2.2
128
Bereitstellen von strukturiertem Content
Wie es bereits in der Darstellung von OpenCms in Kapitel 6 beschrieben wurde (siehe
Kapitel 6.2.1), unterstützt OpenCms die Erfassung von strukturiertem Content. Diese
Möglichkeit ist beispielsweise dazu geeignet, um aktuelle Informationen, wie News
oder Job Angebote strukturiert zu erfassen und bedarfsgerecht in einer Übersichtsseite
oder einer detaillierten Darstellung zu publizieren. Natürlich bietet sich auch die
Möglichkeit an, den erfassten Content für externe Interessenten anzubieten. Zu diesem
Zweck wurde OpenCms im Rahmen der vorliegenden Arbeit dahingehend erweitert,
dass strukturierter Content, basierend auf dem RSS Standard, für externe Interessenten
verfügbar gemacht werden kann. Konkret wurde diese Funktion für eine News
Anwendung implementiert. News Beiträge können in einem komfortablen Formular
über den OpenCms Workplace erfasst werden und die aktuellsten Beiträge werden
automatisiert mittels RSS über HTTP angeboten.
Der vorgesehene Mechanismus in OpenCms für eine strukturierte Content-Erfassung
sieht grundsätzlich keine Nutzung von XML Technologien vor. Es wird eher ein
proprietärer Ansatz verfolgt, wobei der Zugriff auf die einzelnen Informationen des
strukturierten Content, welche in einer eigens erstellten Datenbank-Tabelle gespeichert
werden, über eine speziell implementierte Java Klasse erfolgt. Die Definition eines
neuen, strukturierten Content-Items bedarf daher immer der Programmierung einiger
bestimmter Java Klassen. Das Einhalten gewisser Richtlinien ermöglicht allerdings eine
leichte Integration der für eine Bearbeitung der Content-Items notwendigen Formulare
in den OpenCms Workplace.
Für unterschiedliche Publikationen der strukturierten Content-Items bedient man sich
wiederum der JSP Seiten, welche einen Java basierten Zugriff auf die strukturierten
Informationen erlauben, um eine bedarfsgerechte Darstellung auf der Website zu
erzielen. Es sei darauf verwiesen, dass XML Technologien in diesem Zusammenhang
eine interessante Alternative wären, strukturierten Content zu definieren ohne Java
Programmcode zu erstellen (siehe auch Kapitel 8.3). Diese Möglichkeit liegt jedoch
nicht im Betrachtungsbereich der in diesem Abschnitt aufgezeigten Funktion und daher
wurde vorerst der Ansatz von OpenCms zur strukturierten Content-Erfassung
übernommen.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
129
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..5:
Das Bearbeiten eines Content-Item im OpenCms Workplace
Ein strukturierter Content, im Kontext von OpenCms auch als Content-Item bezeichnet,
wird grundsätzlich einem Channel zugeordnet. Dadurch kann Content, welcher auf
derselben Strukturdefinition basiert, nach inhaltlichen Kriterien getrennt werden. Im
Rahmen der in diesem Abschnitt aufgezeigten Anwendung wurde eine Strukturdefinition verwendet, welche im Wesentlichen aus den Elementen Überschrift, Kurzbeschreibung, Datum, Autor, Link und Langbeschreibung besteht. Diese Struktur kann
beispielsweise für aktuelle Änderungen an einer bestimmten Website oder auch für Job
Angebote genutzt werden, wodurch in diesem Fall zwei unterschiedliche Channels
notwendig wären.
Die implementierte RSS Funktionalität erzeugt für jeden definierten Channel ein
eigenes RSS basiertes XML Dokument, welches als eine Ressource im VFS von
OpenCms gespeichert wird. Zur Generierung der RSS Ressourcen wurde wiederum ein
Scheduled Task definiert (siehe Kapitel 8.2.1), wodurch die Generierung automatisiert
nach einem gewissen Zeitschema vorgenommen wird, um die Aktualität des
angebotenen Content zu gewährleisten. Die so erstellten RSS Ressourcen beinhalten
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
130
jeweils die neuesten Beiträge eines Channels und sind auf der publizierten Website über
eine bestimmte URL für externe Interessenten zugänglich.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..5 zeigt ein Formular zur Erfassung und Bearbeitung von ContentItems im OpenCms Workplace. Das dargestellte Formular dient in erster Linie den
Content-Autoren als ein komfortables Interface, um eine einfache Content-Eingabe zu
ermöglichen und zugleich die strukturierte Content-Erfassung zu gewährleisten. Die
beiden folgenden Abbildungen sollen die Vorteilhaftigkeit einer strukturierten
Erfassung und Speicherung verdeutlichen, indem ein und derselbe Content unterschiedlich aufbereitet dargestellt werden kann.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..6:
Eine Überblicksseite über aktuelle Beiträge eines Channels
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
131
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..7:
Die Detailansicht eines Content-Items
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..6 sowie Abbildung Error! Use the Home tab to apply
Überschrift 1 to the text that you want to appear here..7 zeigen zwei mögliche
Darstellungen der im Workplace erfassten Content-Items auf einer von OpenCms
verwalteten Website. An dieser Stelle sei darauf verwiesen, dass sämtlicher zu
erkennender Inhalt bei den diversen in diesem Kapitel aufgezeigten Abbildungen fiktiv
ist und vom Autor der vorliegenden Arbeit frei gewählt wurden, im Sinne einer
möglichst realitätsbezogenen Anwendung.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..6 zeigt eine Überblicksseite der neuesten Beiträge eines
Channels, welcher in diesem Beispiel aktuelle Neuigkeiten rund um das OpenCms
Projekt beinhaltet. Jeder einzelne Content-Item wird durch seine Überschrift und
Kurzbeschreibung dargestellt. Die Überschriften der einzelnen Items repräsentieren
zugleich einen Link auf eine detaillierte Ansicht des entsprechenden Content-Items,
welche beispielhaft in Abbildung Error! Use the Home tab to apply Überschrift 1 to
the text that you want to appear here..7 zu sehen ist. Der in dieser Abbildung zu
erkennende Beitrag ist jener, welcher in dem in Abbildung Error! Use the Home tab
to apply Überschrift 1 to the text that you want to appear here..5 dargestellten
Formular eingegeben wurde. Dies zeigt auch sehr anschaulich die Vorteilhaftigkeit der
getrennten Erfassung von Struktur, Inhalt und Darstellung. Der Content kann von
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
132
Autoren über komfortable Formulare eingegeben werden und unabhängig davon können
Designer die bedarfsgerechte Publikation auf einer Website festlegen. Negativ
anzumerken ist nur, dass hier im Kontext von OpenCms, Struktur sowie
Darstellungsinformation mit Java Code vermischt werden.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..8:
Darstellung der in OpenCms erfassten Content-Items in einem beliebigen RSS
Reader
Schlussendlich werden die neuesten Content-Items eines jeden Channels, wie zu
Anfang dieses Abschnittes beschrieben, mittels RSS angeboten. Für externe
Interessenten ist es damit leicht möglich, kurze Informationen über die neuesten in
OpenCms erfassten Beiträge für ihre eigene Anwendung zu nutzen. Beispielhaft sei auf
diverse RSS Reader verwiesen, welche eine Aggregation diverser RSS Quellen erlauben
und es so dem Anwender ermöglichen, sich in einer übersichtlichen Art und Weise über
aktuelle Schlagzeilen, Artikel oder sonstige Beiträge von diversen Content-Anbietern zu
informieren.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..8 zeigt das Web-basierte Interface von MyBlogroll6, ein zum
Zweck der Demonstration beispielhaft ausgewählter RSS Reader. Aufgrund der
Einhaltung des RSS Standard genügt es im RSS Reader die URL der entsprechenden
RSS Quelle anzugeben und der übermittelte Content kann in beliebiger Form aufbereitet
werden. In Abbildung Error! Use the Home tab to apply Überschrift 1 to the text
that you want to appear here..8 erkennt man dieselben vier Überschriften wie sie auch
6
Siehe http://www.myblogroll.com/
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
133
in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..6 dargestellt sind. Jeder dargestellt Beitrag in dem RSS Reader
MyBlogroll ist mit einem Link versehen, welcher den Endanwender direkt zur
detaillierten Ansicht des entsprechenden Beitrags auf der von OpenCms verwalteten
Website führt.
8.3
Import und Export im Kontext von XML
Im vorherigen Abschnitt wurde unter anderem auf die Möglichkeiten der strukturierten
Content-Erfassung in OpenCms eingegangen. OpenCms verfolgt dabei zurzeit einen
eher proprietären Ansatz und vermischt strukturelle Informationen mit Java Programmcode. In diesem Zusammenhang wurde bereits XML als eine interessante Alternative
vorgeschlagen (siehe Kapitel 8.2.2). Es ist das Ziel dieses Abschnittes, die Möglichkeiten der XML Technologien zur Strukturdefinition zu erörtern und die Eignung als
ein Import- bzw. Exportformat für ein Content Management System, wie beispielsweise
OpenCms, aufzuzeigen.
Die Überlegungen und Implementierungsansätze in diesem Abschnitt sollen anhand
eines praxisorientierten, fiktiven Beispiels, mit der Zielsetzung eines Imports von
externem, strukturiertem Content in das OpenCms System, motiviert werden. Folgende
Anforderungen sollen gelten:

Externe Informationsbestände sollen in einer strukturierten Form erfasst werden.

Die strukturierte Erfassung soll unabhängig von OpenCms und eventuell damit
verbundenen proprietären Eigenschaften sein.

Strukturelle Vorgaben sollen in einem offenen Format festgelegt werden,
welches von OpenCms und dem Bereitsteller von externen Informationen
eindeutig interpretiert werden kann.

Der erfasste strukturierte Content kann ohne weiteren Aufwand in OpenCms
importiert und auf die Einhaltung der strukturellen Vorgaben validiert werden
und steht danach sämtlichen Funktionen des Content Management Systems zur
Verfügung.
Als Beispiele für die externen Informationsbestände sollen Metainformationen von
vorhandenen Beständen an diversen Publikationen in einer Unternehmung angenommen
werden. Beispiele für diese Metainformationen wären Titel, Untertitel, Autor, Verlag,
Erscheinungsjahr usw. Des Weiteren gehört jede Publikation zu einer gewissen
Abteilung innerhalb der Unternehmung. Dieser Zusammenhang soll ebenfalls
strukturiert erfasst werden, indem zum einem die Abteilungen mit einer verantwortlichen Kontaktperson und zum anderen die Zuordnung der Publikationen zu den
Abteilungen erfasst wird. Allerdings soll jederzeit sichergestellt sein, dass eine
Publikation nur Abteilungen zugeordnet werden kann, welche bereits erfasst worden
sind.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
134
Da die oben erläuterten Anforderungen die strukturelle Erfassung in einem offenen
Format verlangen, bietet sich die Nutzung der standardisierten XML Technologien an.
Zurzeit bieten sich zwei Standards aus dem XML Bereich an, um Strukturdefinitionen
festzulegen, DTD und XML Schema, wobei zur Realisierung des in diesem Abschnitt
erörterten Beispiel XML Schema aufgrund der zahlreichen Verbesserungen gegenüber
dem älteren Standard DTD (siehe auch Kapitel 4.1.1) gewählt wurde. Ein wesentlicher
Nachteil bei einer DTD liegt darin, dass zwar relativ problemlos strukturelle
Definitionen vorgenommen werden können, aber es nicht möglich ist, Vorgaben
bezüglich der Syntax des zu erfassenden Content festzulegen.
XML Schema hingegen bietet in diesem Bereich zahlreiche Möglichkeiten. So werden
bereits von XML Schema selbst gewisse Datentypen vordefiniert, welche den einzelnen
Elementen der Strukturdefinition zugewiesen werden können. Diese vordefinierten
Datentypen, wie String, Integer, Date oder Boolean und deren Bedeutung sind im
Wesentlichen von diversen Programmiersprachen bekannt und sollten an dieser Stelle
keine weitere Erläuterung benötigen. Diese Erweiterung gegenüber der DTD ist jedoch
sehr wesentlich, um bei einer automatisierten Validierung von erfassten, strukturierten
Content gewisse Grundvoraussetzungen einfach zu überprüfen. Beispielsweise soll bei
einem Strukturelement, welches nur Zahlen als sinnvollen Content zulässt, dies auch
entsprechend definiert werden können. Zugleich verhindert das Verwenden von gewissen Datentypen auch Missverständnisse. Zum Beispiel legt der Datentype Date bei
XML Schema genau fest, wie ein Datum erfasst werden muss und lässt daher keinen
Spielraum bei der Interpretation von Tag, Monat und Jahr zu. Bei einer DTD zum
Beispiel könnte nur ein Strukturelement Date definiert werde, welches jedoch im
Grunde jeden beliebigen Inhalt haben könnte. [DTD 2003] [XML Schema 2003]
XML Schema bietet allerdings noch weit mehr als eine begrenzte Anzahl vordefinierter
Typen. Datentypen können neu definiert werden und durch gewisse Einschränkungen
an bestimmte Anforderungen angepasst werden. So kann beispielsweise ein Integer Typ
mit einem erlaubten minimalen und maximalen Wert versehen werden oder die
erlaubten Inhalte eines gewissen Datentyps können auf eine begrenzte Menge erlaubter
Inhalte beschränkt werden. Sehr hilfreich ist auch die Möglichkeit der Definition
bestimmter Muster, um zum Beispiel festzulegen, dass der Inhalt eines gewissen
Elements nur aus zusammenhängenden Wörtern getrennt durch einen Beistrich bestehen
darf. XML Schema zeigt sich aber auch sehr flexibel beim Festlegen der Reihenfolge
von Strukturelementen sowie beim Definieren von verpflichtenden oder optionalen
Elementen. Schlussendlich sei noch darauf verwiesen, dass XML Schema den XML
Richtlinien folgt und daher ein gültiges XML Schema auch ein gültiges XML
Dokument ist. XML Schema können aus diesem Grund wie jedes beliebige XML
Dokument über die Programmierschnittstelle DOM angesprochen werden oder auch
einer XSLT Transformation unterzogen werden. [DTD 2003] [XML Schema 2003]
Aufgrund der zahlreichen Möglichkeiten von XML Schema präsentiert sich diese
Technologie als ein bereits sehr gut entwickelter, offener Standard für eine
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
135
anspruchsvolle Definition von beliebigen Content-Strukturen. Für das Erfassen der
externen Informationsbestände aus dem zu Anfang dieses Abschnittes erörterten
Beispiels werden zwei XML Schema Dokumente erstellt, eine für das Festlegen der
Struktur der Publikationen und eine für die Abteilungen. Besonders bei den zu
erfassenden Metainformationen der Publikationen lassen sich die Vorzüge von XML
Schema sehr gut anwenden und dies soll anhand einiger denkbarer Metainformationen
verdeutlicht werden:

Autoren: Im Sinne einer einheitlichen Erfassung von Autorennamen ist es
sinnvoll, wenn dies nach gewissen formalen Kriterien geschieht, welche sich
durch Muster in XML Schema sehr flexibel gestalten lassen.

Erscheinungsjahr: Erwartet man eine Jahreszahl, so muss diese beispielsweise
eine vierstellige Zahl sein. Durch entsprechende Einschränkungen lässt sich dies
in XML Schema leicht realisieren.

Kategorie: Eine Publikation kann einer gewissen Kategorie zugeordnet sein, wie
zum Beispiel „Wirtschaft“, „Informatik“ oder „Recht“. Man kann davon
ausgehen, dass es nur eine begrenzte Anzahl an Kategorien gibt, welche als
erlaubte Werte für dieses Element definiert werden können.
Etwas schwieriger gestaltet sich das Abbilden der Verknüpfung zwischen den
Publikationen und den Abteilungen. Es ist grundsätzlich kein Problem, bei der XML
Schema Definition der Publikation ein Element festzulegen, welches eine Referenz auf
eine bestimmte Abteilung darstellen soll. Es ist allerdings etwas problematisch, wenn
man von einer parallelen Erfassung der Metainformationen der Publikationen und den
Abteilungen, mit den verantwortlichen Personen, ausgeht. Es kann dadurch nicht im
Vorhinein festgestellt werden, welche Abteilungen es gibt, um so für die Abteilungsreferenz der Publikation den erlaubten Wertebereich vorzugeben.
Es müsste an dieser Stelle möglich sein, eine dynamische Beziehung zwischen den
erfassten Abteilungen in einem XML Dokument und der XML Schema Definition der
Publikationen herzustellen. Konkret müsste es in der XML Schema Definition der
Publikationen möglich sein, die erlaubten Inhalte für ein gewisses Strukturelement auf
bereits erfasste Inhalte in einem speziellen XML Dokument einzuschränken. Diese
Verknüpfung ist allerdings nicht direkt möglich, jedoch wurde vom Autor der
vorliegenden Arbeit ein möglicher, auf XML Technologie basierter Lösungsvorschlag
erarbeitet.
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
Publikationen
Abteilungen
XSLT
referenziert
XML
Schema
Datentyp
Struktur
Definition
XML
Dokument
Struktur
Definition
XML
Dokument
XML
Schema
Dokument
136
XML
Schema
Dokument
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..9:
Lösungsvorschlag für eine dynamische Sicherstellung der Verknüpfung
Publikation und Abteilung
Dieser Lösungsvorschlag basiert im Wesentlichen auf der Eigenschaft von XML
Schema Dokumenten, da sie der XML Syntax folgen und es damit möglich ist, durch
eine XSLT Transformation aus einem XML Dokument ein XML Schema Dokument zu
erzeugen. Es wurde daher eine XSLT Transformation erstellt, welche aus den erfassten
Abteilungen in einem XML Dokument ein gültiges XML Schema Dokument erstellt,
welches einen speziellen Datentyp definiert, der als mögliche Inhalte lediglich die
Kurzbezeichnungen der bereits erfassten Abteilungen zulässt. Für die eigentliche
Strukturdefinition der Publikationen gibt es ein eigenes XML Schema Dokument,
welches im Wesentlichen sämtliche statischen Elemente definiert und den durch die
XSLT Transformation generierten Datentyp referenziert. In Abbildung Error! Use the
Home tab to apply Überschrift 1 to the text that you want to appear here..9 werden
die soeben erläuterten Aspekte grafisch verdeutlicht.
Der in Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that
you want to appear here..9 dargestellte Ansatz setzt voraus, dass nach jeder Änderung
im XML Dokument die XSLT Transformation durchgeführt wird. Dadurch ist es
gewährleistet, dass das XML Dokument für die Publikationen jederzeit auf eine gültige
Struktur überprüft werden kann. Es sei allerdings auch erwähnt, dass dieser Ansatz
gewisse Schwachstellen aufzeigt. Würde zum Beispiel eine Abteilung wieder entfernt
oder deren Kurzbezeichnung verändert, so würde dies grundsätzlich keine automatische
Korrektur bei den bereits erfassten Publikationen bewirken, sofern die betroffene
Abteilung bereits referenziert wurde.
Allerdings zeigt dieser Ansatz, wie man basiert auf XML Technologien bereits sehr
komplexe Zusammenhänge abbilden kann. Der wesentliche Vorteil besteht nun darin,
dass die Strukturdefinitionen in einem offenen Format vorliegen, welche dem
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
137
Bereitsteller von externen Informationen übermittelt werden können. Dieser kann nun
mittels standardisierter Tools die Aufbereitung der externen Informationsbestände
vornehmen, welche grundsätzlich aufgrund der deutlichen Vorgaben ohne weiteren
Aufwand für einen Import effektiv verwendet werden können. Unter einem
standardisierten Tool versteht man beispielsweise ein beliebiges XML
Bearbeitungstool, welches aufgrund einer XML Schema Definition einfache
Eingabemöglichkeiten von XML basierten Content erlaubt. Zum Zweck der
Demonstration wurde beispielhaft das XML Bearbeitungstool XmlSpy7 evaluiert.
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..10 zeigt beispielhaft die komfortable Bearbeitungsmöglichkeit
eines XML Dokuments mit XmlSpy. Aufgrund der genauen XML Schema Definition
können sehr leicht Formulare erstellt werden, welche eine einfache Content-Eingabe
erlauben, wobei jedoch im Hintergrund entsprechende XML Dokumente erzeugt
werden. XmlSpy bietet auch die Möglichkeit, für Strukturelemente, welche nur eine
gewisse Menge an Inhalten zulassen, diese in einer Combo Box anzubieten. Der in
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..9 gezeigte Lösungsvorschlag bringt hier einen weiteren Vorteil,
da durch die dynamische Generierung des Datentyps für die Kurzbezeichnungen der
Abteilungen dieser ebenfalls über eine Combo Box dargestellt werden kann (ist in der
Mitte der Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that
you want to appear here..10 zu erkennen). Die notwendige XSLT Transformation
lässt sich ebenfalls mit XmlSpy ausführen.
7
XmlSpy ist ein kommerzielles Produkt der Firma Altova und kann von der Produkt Website für eine
kostenlose Evaluation bezogen werden. Siehe http://www.xmlspy.com/
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
138
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you want to appear here..10:
Bearbeitung eines XML Dokuments mit XmlSpy
Dieses Beispiel verdeutlicht sehr gut den Vorteil der Unabhängigkeit von XML
Technologien. Da XML Standards offen sind, gibt es bereits diverse Tools, welche eine
leichte Erstellung von XML Daten unterstützen und der Bereitsteller von externen
Informationen kann selbst entscheiden, wie er die Informationen erfassen oder erstellen
möchte. Man ist dabei völlig unabhängig von der späteren Verwendung der
strukturierten Informationen, wie eben in diesem Fall ein Import in OpenCms. Die in
Abbildung Error! Use the Home tab to apply Überschrift 1 to the text that you
want to appear here..10 gezeigte Anwendung berücksichtigt den Fall, dass sämtliche
externe Informationen erst manuell erfasst werden müssen. Allerdings könnten die
externen Informationen bereits in einer anderen Form elektronisch existieren. XML
Schema gibt aber auch für diesen Fall eine klare, standardisierte Strukturdefinition vor,
wie externe Informationen transformiert werden müssen, sodass sie für einen
automatisierten Import problemlos zur Verfügung stehen.
Sind die externen Informationsbestände in Form von XML Dokumenten erfasst und
genügen sie den XML Schema Definitionen, so sollen sie in einer einfachen Weise,
beispielsweise in OpenCms, importiert werden können. Die derzeitigen Funktionen von
OpenCms nutzen zwar bereits XML Technologien, um die Metainformationen der
Ressourcen in OpenCms bei einem Export zu beschreiben, aber ein flexibler Import von
beliebigen XML Dokumenten wird noch nicht gewährleistet. Der Autor der
vorliegenden Arbeit sieht einen möglichen Verbesserungsansatz darin, grundsätzlich
Strukturdefinitionen im Kontext von OpenCms mittels XML Schema vorzunehmen und
nicht durch Java Programmcode (siehe Kapitel 8.2.2). Ein XML Schema Dokument
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
139
könnte als ein spezieller Typ von Ressourcen im VFS gespeichert werden und dadurch
die Struktur eines gewissen Content-Item vorgeben. Eine flexible Importfunktion sollte
es daraufhin ermöglichen, aufgrund der Struktur eines beliebigen Content-Item
entsprechende XML Dokumente zu importieren und diese im VFS zu speichern.
Aufgrund der genauen Strukturdefinition mittels XML Schema können die importierten
Informationen genau geprüft werden, wodurch die Konsistenz des Content
gewährleistet ist.
Der importierte XML Content ist im Wesentlichen sofort für eine bedarfsgerechte
Publikation mittels XSLT geeignet. Man erkennt den praktischen Nutzen von XML
Schema, indem es einerseits in einem CMS genutzt werden kann, um strukturierten
Content zu definieren und andererseits direkt an Bereitsteller von externen
Informationen weitergegeben werden kann, um deutliche Vorgaben für das gewünschte
Importformat zu machen. Dementsprechend ergibt sich auch ein Nutzen für die
Exportfunktion eines CMS, da das XML Schema Dokument und der entsprechende
XML basierte Content grundsätzlich in ihrer unveränderten Form für den Export bereit
sind und aufgrund der Standardisierung und bereits weiten Verbreitung von XML
Technologien sofort mittels diverser Tools bearbeitet werden können.
8.4
Schlussbemerkung
OpenCms hat sich als ein sehr gut geeignetes Open Source Projekt zur Verdeutlichung
einiger interessanter Aspekte des im Gestaltungsmodell aufgezeigten innovativen CMS
erwiesen. Der wesentliche Vorteil von OpenCms ist der einheitliche Zugriff auf
sämtliche gespeicherten Ressourcen, womit im Wesentlichen die Idee der ContentObjekte im Abstraktions Layer des Gestaltungsmodells implementiert wird. Aufbauend
auf den existierenden Funktionen von OpenCms wurden ergänzende Funktionalitäten in
den Bereichen Content Syndication sowie Import und Export implementiert und deren
praktische Anwendung anhand anschaulicher Beispiele in diesem Kapitel aufgezeigt.
XML Technologien kamen bei sämtlichen erörterten Funktionen eine bedeutende Rolle
zu. Der wesentliche Vorteil von XML, die klare Trennung von Inhalt, Struktur und
Darstellung auf Basis eines relativ einfachen, standardisierten Formats, wird durch die
in diesem Kapitel aufgezeigten Funktionen deutlich hervorgehoben. Im Content
Syndication Bereich erlaubt der Austausch der Inhaltskomponente von Content in Form
eines XML Dokuments auf Basis einer definierten Struktur die bedarfsgerechte
Publikation durch das Erstellen einer spezifischen Darstellungskomponente in Form
eines XSLT Dokument (siehe Kapitel 8.2).
Des Weiteren wurden die Möglichkeiten der Strukturdefinition mittels XML Schema
detaillierter erörtert. Aufgrund bereits durchaus komplexer Möglichkeiten bietet XML
Schema eine gute Eignung, um die Struktur von Content festzulegen. Der wesentliche
Vorteil dieser Möglichkeit liegt darin, dass aufgrund der Standardisierung von XML
Schema es ideal für Import- bzw. Export-Zwecke geeignet ist. Ein erstelltes XML
Implementierung ausgewählter Aspekte eines innovativen Content Management Systems
140
Schema Dokument kann beispielsweise ohne weitere Aufbereitung einem externen
Informationsbereitsteller weitergegeben werden, welcher das XML Schema genau
interpretieren kann (siehe Kapitel 8.3). Die Nutzung von XML Technologien
ermöglicht daher eine effektive Realisierung diverser Content Management Aufgaben
und ermöglicht dabei das durchgängige Arbeiten mit einer einheitlichen, offenen und
standardisierten Technologie.
Im nachfolgenden, letzten Kapitel werden die wesentlichen Erkenntnisse des
Untersuchungs- und Gestaltungsbereichs zusammengefasst und ein Ausblick auf
zukünftige Entwicklungen im Kontext des in der vorliegenden Arbeit behandelten
Themas gegeben.
9
Zusammenfassung und Ausblick
Jedes Unternehmen muss sich in der heutigen Zeit mit der Problematik der
Informationsflut und entsprechenden Möglichkeiten zur Bewältigung der riesigen
Informationsmengen auseinandersetzen. Der systematische Umgang mit Content wird
zum wettbewerbsentscheidenden Faktor im heutigen Wirtschaftsleben. In den letzten
Jahren sind in diesem Umfeld eine Vielzahl an neuen Begriffen und Akronymen
entstanden, welche dem Endanwender die Lösungen für einen effizienten Umgang mit
sämtlichem Content innerhalb der Unternehmung aufzeigen sollen. Auch wenn viele
Begriffe in erster Linie aus dem Grunde entstanden sind, um bekannte Technologien mit
einem neuen innovativen Schlagwort wieder besser am Markt zu positionieren, so ist
die Notwendigkeit für die Lösungen, welche die diversen Akronyme versprechen,
definitiv gegeben.
Content Management ist zurzeit einer der aktuellsten Begriffe, welcher mit der
systematischen Verwaltung sämtlicher Informationen assoziiert wird. Durch den Einsatz
eines Content Management Systems soll es ermöglicht werden, den Content entlang des
gesamten Content Life Cycle, im Sinn einer möglichst effizienten Nutzung, zu
kontrollieren. Die Verwaltung des Content sollte dabei beliebige Quellen integrieren
und unabhängig von der späteren Verwendung erfolgen. Die strukturierte ContentErfassung ist ein wesentlicher Aspekt eines CMS, um Content möglichst flexibel an
diverse Publikationskanäle anzupassen. Eine strukturierte Erfassung muss die Anatomie
des Content berücksichtigen und eine getrennte Speicherung der wesentlichen
Komponenten von Content – Struktur, Inhalt und Darstellung – erlauben.
Eine durchgängige Berücksichtung der Anatomie des Content innerhalb eines CMS
kann jedoch nicht für sämtlichen, vom CMS verwalteten Content verlangt werden.
Aufgrund der essenziellen Aufgabe des CMS, den gesamten vorhandenen Content in
einer Unternehmung in einem zentralen System zu organisieren, müssen auch diverse
Bestände an unstrukturiertem Content möglichst effizient in das CMS integriert werden.
Zu unstrukturiertem Content zählen in erster Linie multimediale Daten, welche per se
nicht die Nachvollziehbarkeit der Anatomie des Content erlauben sowie diverse
Dokumente in proprietären Formaten, wodurch strukturelle Informationen nur
ungenügend dem CMS zur Verfügung stehen.
Zusammenfassung und Ausblick
142
In der vorliegenden Arbeit wurden sämtliche Funktionen eines CMS identifiziert. Es
wurden einerseits Kernfunktionen erarbeitet, welche nach Meinung des Autors der
vorliegenden Arbeit für den effektiven Einsatz eines CMS unbedingt notwendig sind. In
diesem Zusammenhang kommt dem Information Retrieval eine besondere Rolle zu, da
natürlich der Nutzen eines CMS wesentlich dadurch determiniert wird, wie effizient der
verwaltete Content wiederauffindbar ist. Aber auch die Workflow Komponente ist von
großer Bedeutung, um anwendungsspezifische Content Life Cycle in einer flexiblen Art
und Weise abzubilden. Die Workflow Komponente eines CMS soll es ermöglichen,
dass unterschiedliche Personen den Content in den verschiedenen Phasen des Content
Life Cycle bearbeiten können und dabei die Transparenz des Gesamtprozesses jederzeit
gewahrt bleibt. Sofern die Anatomie des Content gegeben ist, sollen die einzelnen
Komponenten des Content ebenfalls von unterschiedlichen Personen zu verschiedenen
Zeitpunkten bearbeitet werden können.
Den Integrationsmöglichkeiten von bereits existierenden Content innerhalb der
Unternehmung kommt ebenfalls eine entscheidende Rolle zu, da ein CMS in keinem
Fall ein weiteres System darstellen soll, welches im Parallelbetrieb zu anderen
Systemen nur einen Teil des vorhandenen Content unter seiner Kontrolle hat.
Schlussendlich ist auch die Berücksichtigung von Aspekten einer Langzeit
Archivierung von großer Bedeutung, um wertvollen Content auch in Zeiten ständiger
Technologiewechsel in einer Form zu archivieren, sodass ein authentischer Zugriff auch
nach Jahrzehnten noch gewährleistet ist.
Des Weiteren wurden Funktionen erläutert, welche sehr zweckmäßige Erweiterungen
für ein Content Management System darstellen. Darunter fallen beispielsweise das
Digital Right Management, womit es ermöglicht werden soll, dass der mögliche Wert
von Content auch nach einer Publikation durch das CMS bewahrt bleibt, indem der
Content durch eine Verschlüsselung vor einer illegalen Weiterverwendung oder Vervielfältigung geschützt wird. Die komplexen Anforderungen der Verwaltung von
multimedialen Content werden bisher zumeist dem Digital Asset Management
zugeordnet. Da multimedialer Content aber auch in den Verwaltungsbereich eines CMS
fällt, ist hier eine Vereinigung dieser zwei Management Disziplinen durchaus
anstrebenswert. Schlussendlich werden im Bereich der Informationsbereitstellung auch
Aspekte eines barrierefreien Informationszugangs immer mehr betont. Da ein CMS im
Wesentlichen auch nur ein Tool ist, um Informationen zu verwalten und in einer
entsprechenden Form aufzubereiten, sollen auch hier Aspekte berücksichtigt werden,
welche den Informationszugang unabhängig von körperlichen Einschränkungen
ermöglichen. Zumal sich durch die Berücksichtigung dieser Aspekte eine qualitative
Verbesserung für sämtliche Anwender des CMS einstellen sollte.
Aufgrund sämtlicher identifizierten Funktionen wurde im Gestaltungsbereich der
vorliegenden Arbeit die idealisierte Architektur eines innovativen CMS modelliert.
Zuvor wurden allerdings bereits existierende Implementierungen von Content
Management Systemen, aus dem kommerziellen sowie Open Source Bereich, evaluiert.
Zusammenfassung und Ausblick
143
Die Vielzahl an existierenden CMS Implementierungen wurde hinsichtlich der Programmierumgebung Java 2 Platform, Enterprise Edition eingeschränkt. J2EE unterstützt
eine effiziente Entwicklung von serverseitigen, verteilten Anwendungen und präsentiert
sich als eine gute Möglichkeit zur Implementierung von stabilen und skalierbaren
Content Management Systemen. Darüber hinaus unterstützt die J2EE Plattform durch
eine Vielzahl an APIs diverse Integrationsmöglichkeiten mit bereits bestehenden
Informationssystemen. J2EE bietet auch eine gute Unterstützung zur Nutzung der Web
Services und XML Technologie, womit unter anderem Aspekte einer programmiersprachen- sowie plattformunabhängigen Kommunikation unterschiedlicher Applikationen berücksichtigt werden.
Im Gestaltungsbereich wurde aufgrund sämtlicher, aus dem Untersuchungsbereich
gewonnenen Erkenntnissen, auf konzeptioneller Ebene die Architektur eines
innovativen CMS aufgezeigt. Das dargestellte innovative CMS vereint sämtliche
Funktionen und Anforderungen, welche im Rahmen der vorliegenden Arbeit
identifiziert wurden. Die Erfassung von strukturiertem Content basiert in erster Linie
auf der XML Technologie, welche sich aufgrund der Standardisierung und strikten
Einhaltung der Anatomie des Content für diesen Zweck anbietet. Eine Implementierung
der vorgestellten Architektur ist aufgrund der Komplexität und des Umfangs der
diversern Funktionalitäten im Rahmen der vorliegenden Arbeit nicht möglich und
deshalb wurden einige interessante Aspekte des aufgezeigten innovativen CMS für eine
Implementierung ausgewählt.
Das, im Untersuchungsbereich bereits evaluierte Open Source Projekt OpenCms, hat
sich in diesem Zusammenhang als Ausgangsbasis angeboten, um für dieses System
ergänzende Funktionalitäten in den Bereichen Content Syndication sowie Import und
Export zu implementieren. Eine genauere Evaluierung von OpenCms zeigte in den
wesentlichen Grundkonzepten eine Übereinstimmung mit der zuvor identifizierten
Architektur eines innovativen CMS. OpenCms ist daher sehr gut geeignet, um den
praktischen Nutzen einiger Aspekte des modellierten, innovativen CMS anschaulich zu
verdeutlichen. Die in diesem Zusammenhang aufgezeigten Anwendungen im
Gestaltungsbereich demonstrieren zugleich, unabhängig von OpenCms, die sehr gute
Eignung der XML Technologie im Kontext eines CMS.
Neben den Möglichkeiten der Integration sämtlichen Contents in ein CMS sieht der
Autor der vorliegenden Arbeit eine sehr wesentliche Anforderung an ein CMS in einem
modularen Aufbau sämtlicher Funktionen. Die Erkenntnisse aus der vorliegenden
Arbeit haben gezeigt, dass sich einerseits sehr viele Kernfunktionen und andererseits
diverse zweckmäßige funktionale Erweiterungen mit einem CMS in Verbindung
bringen lassen. Entscheidend für den Endanwender ist jedoch immer die Frage,
inwieweit die gebotenen Funktionalitäten wirklich gebraucht werden. Die Erörterungen
von kommerziellen Content Management Systemen haben gezeigt, dass professionelle
und etablierte Systeme zum Teil mit sehr hohen Kosten verbunden sind. In Zeiten
ständig gekürzter IT Budgets wird es für die Endanwender zunehmend wichtiger, für
Zusammenfassung und Ausblick
144
ihre Investition genau jene Funktionalität zu bekommen, welche für die spezifische
Anwendung tatsächlich benötigt wird.
Der Autor der vorliegenden Arbeit vertritt daher die Meinung, dass sich in der Zukunft
jene CMS Produkte durchsetzen werden, welche dem Endanwender genau die
benötigten Funktionen zu adäquaten Kosten anbieten können und dabei noch die Option
für eine jederzeitige, einfache funktionale Erweiterung bieten. Idealerweise sollten die
Schnittstellen zwischen den einzelnen funktionalen Komponenten eines CMS auf
offenen Standards basieren, sodass die Endanwender gegebenenfalls zwischen
Komponenten unterschiedlicher Anbieter wählen können. Verständlicherweise wird
dies allerdings nicht unbedingt im Interesse sämtlicher CMS Anbieter liegen.
Im Hinblick auf eine sinkende Investitionsbereitschaft im IT Bereich werden auch Open
Source Systeme immer interessanter, da hier zumeist die Lizenzgebühren entfallen.
Open Source Projekte habe auch den Vorteil, dass anwendungsspezifische Integrationsvorhaben zumeist durch das Vorliegen des Source Code erleichtert werden. Das im
Gestaltungsbereich dargestellte Open Source System OpenCms bietet sich in diesem
Zusammenhang als eine sehr interessante Alternative an. OpenCms bedarf allerdings für
die Zukunft noch einiger funktionaler Erweiterungen, um wirklich sämtlichen
Anforderungen an ein durchgängiges Content Management nachzukommen. Notwendig
wären in erster Linie verbesserte Möglichkeiten der Integration von bereits
existierenden, externen Content innerhalb einer Unternehmung sowie eine direkte
Unterstützung für Content Syndication Protokolle in den Kernfunktionalitäten von
OpenCms. Des Weiteren wäre die Integration von bestehenden Benutzerdaten sowie
von externen Applikationen zur Content-Bearbeitung durchaus vorteilhaft. Schlussendlich müssten noch einige erweiterte Funktionalitäten berücksichtigt werden, wie die
einfache Erstellung flexibler Workflows, ein Portalzugang, Digital Right Management
oder Digital Asset Management.
Man darf allerdings nicht der irrigen Annahme verfallen, das Open Source Lösungen
grundsätzlich mit geringeren Kosten verbunden sind. Kundenspezifische Anpassungen
an Open Source Systemen sind ebenso mit einem entsprechenden Know-how
verbunden, welches in den seltensten Fällen kostenlos angeboten wird. Grundsätzlich
muss im Kontext von Content Management Systemen festgehalten werden, dass ein
effektiver Einsatz des Systems zumeist eine entsprechende Einführungsphase in die
Unternehmung voraussetzt, um die richtige Nutzung diverser Funktionen sowie deren
effiziente Integration in zumeist bestehende Anwendungsprozesse zu gewährleisten. Die
Gesamtkosten für ein CMS Projekt dürfen daher nur in den seltensten Fällen an den
reinen Lizenzgebühren bemessen werden.
Abbildungsverzeichnis
Abbildung 2.1:
Trennung von Struktur, Inhalt und Darstellung
[Schuster et al. 2000] ...................................................................... 19
Abbildung 2.2:
Content Life Cycle [Jablonski et. al 2002] ..................................... 20
Abbildung 3.1:
Funktion von Content Management [Rothfuss et al. 2001] ............ 27
Abbildung 5.1:
Mehrschichtige Architektur [Pawlan 2001].................................... 64
Abbildung 5.2:
J2EE Server und Containers [Pawlan 2001] ................................... 67
Abbildung 6.1:
Architektur von VIP Enterprise 8 ................................................... 79
Abbildung 6.2:
Explorer View von OpenCms ......................................................... 87
Abbildung 6.3:
Editiermodus von Jahia................................................................... 89
Abbildung 6.4:
Formular zur strukturierten Content-Eingabe bei Ion .................... 91
Abbildung 6.5:
Architektur der Red Hat Applications ............................................ 93
Abbildung 7.1:
Basisarchitektur eines innovativen CMS ...................................... 102
Abbildung 7.2:
Abstraktions Layer........................................................................ 105
Abbildung 7.3:
Daten Layer .................................................................................. 106
Abbildung 7.4:
Funktionalitäten Layer .................................................................. 109
Abbildung 7.5:
Front-End Layer............................................................................ 111
Abbildung 7.6:
Die vier Layer der Gesamtarchitektur eines innovativen CMS .... 112
Abbildung 8.1:
Implementierte Komponenten der identifizierten
Gesamtarchitektur aus Kapitel 7 im Hinblick auf OpenCms ....... 119
Abbildung 8.2:
Aktuelle Weltnachrichten von Yahoo! News ............................... 123
Abbildung 8.3:
Integrierte Weltnachrichten in einer von OpenCms
verwalteten Website...................................................................... 124
Abbildung 8.4:
Die XSLT Transformation im Bearbeitungsmodus
des OpenCms Workplace ............................................................. 124
Abbildung 8.5:
Das Bearbeiten eines Content-Item im OpenCms Workplace ..... 126
Abbildung 8.6:
Eine Überblicksseite über aktuelle Beiträge eines Channels ........ 127
Abbildungsverzeichnis
146
Abbildung 8.7:
Die Detailansicht eines Content-Items ......................................... 128
Abbildung 8.8:
Darstellung der in OpenCms erfassten Content-Items
in einem beliebigen RSS Reader .................................................. 129
Abbildung 8.9:
Lösungsvorschlag für eine dynamische Sicherstellung der
Verknüpfung Publikation und Abteilung...................................... 133
Abbildung 8.10:
Bearbeitung eines XML Dokuments mit XmlSpy........................ 134
Tabellenverzeichnis
Tabelle 3.1:
Kernfunktionen eines CMS ............................................................ 28
Tabelle 3.2:
Anforderungsprofil der Kernfunktionen ......................................... 44
Tabelle 4.1:
Anforderungsprofil für zweckmäßige Erweiterungen
eines CMS ....................................................................................... 60
Tabelle 5.1:
Vorteile der J2EE Plattform für ein CMS....................................... 75
Tabelle 6.1:
Funktionelle Evaluierung der erörterten CMS Lösungen ............... 97
Literaturverzeichnis
[Abel et. al 2002]
Abel H., Voigt I.; Barrierefreies Webdesign – Teil 3: Content Management Systeme;
Contentmanager.de, 2002; Last Visit: 2004-01-09,
URL http://www.contentmanager.de/magazin/artikel_180_web_accessibility_initiative_wai_content.html
[Armstrong et al. 2003]
Armstrong E., Ball J., Bodoff S., Carson D.B., Fisher M., Fordin S., Green D., Haase
K., Jendrock E.; The Jave Web Services Tutorial; Sun Microsystems, Inc. 2003; Last
Visit: 2004-01-05,
URL http://java.sun.com/webservices/docs/1.2/tutorial/doc/JavaWSTutorial.pdf
[Ashenden 2003]
Ashenden A.; Portal Software Market Forecast; Ovum, 2003; Last Visit: 2004-01-09,
URL http://www.ovum.com/
[Ashenden et. al 2002a]
Ashenden A., Harris-Jones C.; What is content management?; Ovum, 2002; Last Visit:
2004-01-09,
URL http://www.ovum.com/
[Ashenden et. al 2002b]
Ashenden A., Harris-Jones C.; What is a Portal?; Ovum, 2002; Last Visit: 2004-01-09,
URL http://www.ovum.com/
[Berners-Lee 2001]
Berners-Lee T., Hendler J., Lassila O.; The Semantic Web; Scientific America, 2001;
Last Visit: 2004-01-09,
URL http://www.sciam.com/article.cfm?articleID=00048144-10D2-1C70-84A9809EC588EF21
[Berners-Lee 2003]
Berners-Lee T.; Web Accessibility Initiative Home Page; Last Visit: 2004-01-09,
URL http://www.w3.org/WAI/
[Boldyreff 2002]
Boldyreff C.; Determination and Evalution of Web Accessibility; Proceedings of the
11th IEEE International Workshop on Enabling Technologies: Infrastructure for
Collaborative Enterprises, Pittsburgh, Pennsylvania, USA, IEEE, 2002
Literaturverzeichnis
149
[Chrisholm et. al 2002]
Chrisholm W., Vanderheiden G., Jacobs J.; Web Content Accessibility Guidelines 1.0:
W3C Recommendation 5-May-1999; W3C, 1999; Last Visit: 2004-01-09,
URL http://www.w3.org/TR/WCAG10/
[CMS Produktfinder 2003]
Produkfinder; Contentmanager.de, 2003; Last Visit: 2004-01-09,
URL http://www.contentmanager.de/itguide/produktfinder.html
[Dewan et. al 1999]
Dewan R., Freimer M., Seidmann A.; Portal Kombat. The Battle between Web Pages to
become the Point of Entry to the World Wide Web; Proceedings of the 32nd Hawaii
International Conference on System Sciences, Maui, Hawaii, IEEE, 1999
[Dreyer 2000]
Dreyer R.; Das Content Management fusioniert mit dem Workflow; Deutscher Drucker
Nr.15-16, 2000; Last Visit: 2004-01-09,
URL http://www.publish.de/data/hefte/pdf/DD_00/DD0015w054f.pdf
[DTD 2003]
XML DTD Tutorial; W3Schools, 2003; Last Visit: 2004-01-09,
URL http://www.w3schools.com/dtd/default.asp
[Duhl et. al 2001]
Duhl J., Kevorikan S.; Understanding DRM Systems. An IDC White Paper;
IDC/InterTrust, 2001; Last Visit: 2004-01-09,
URL http://www.intertrust.com/main/research/whitepapers/IDCUnderstandingDRMSystems.pdf
[FatWire 2002]
Whitepaper: Spark pCM Overview. Enhancing the Sun ONE Portal Server with
Integrated Content Management; FatWire Corporation, 2002; Last Visit: 2004-01-09,
URL http://www.fatwire.com/products/white_papers.html
[FileNet 2003]
FileNet P8; FileNet, 2003; Last Visit: 2004-01-09,
URL http://www.filenet.com/English/Products/index.asp
[Fritsch 2002]
Fritsch W.; Content-Management: Alle Informationen in einem System?; Information
Week, Ausgabe 16/17, 2002; Last Visit: 2004-01-09,
URL http://www.informationweek.de/index.php3?/channels/channel03/021724.htm
[Gamma et al. 1995]
Gamma E., Helm R., Johnson R., Vlissides J.; Design Patterns. Elements of Reusable
Object-Oriented Software; Addison-Wesley, 1995; ISBN 0-201-63361-2
Literaturverzeichnis
[Gersdorf 2000]
Gersdorf R.; Content Management ist mehr
Contentmanager.de, 2000; Last Visit: 2004-01-09,
150
als
Web-Site-Verwaltung;
URL http://www.contentmanager.de/magazin/artikel_13_content_management_ist_mehr_als.html
[Gruhn et al. 2000]
Gruhn V., Heymann D., Kleine M.; Eine Architektur für Content-Management-Systeme
auf Basis von XML; Universität Leipzig, 2000; Last Visit: 2004-01-09,
URL http://ebus.informatik.uni-leipzig.de/www/media/publications/xml00.pdf
[Gulbins et al. 1999]
Gulbins J., Seyfried M., Strack-Zimmermann H.; Dokumenten-Management. Vom
Imaging zum Business-Dokument. 2. Auflage, Springer, 1999; ISBN 3-540-61595-4
[Gütl 2002]
Gütl C.; Eine Annäherung an das Information Gathering and Organizing System xFIND
(Extended Framework for INformation Discovery); Dissertation am Institut für
Informationsverarbeitung und Computergestützte neue Medien, Technische Universität
Graz, Austria, 2000; Last Visit: 2004-01-09,
URL http://www2.iicm.edu/cguetl/diss/cguetl_diss.pdf
[Haas et. al 2001]
Haas W., Mayer H.; MPEG and its Relevance for Content-based Multimedia Retrieval;
Journal of Universal Computer Science, vol. 7, no. 6., P.p. 530-547; Springer Pub. Co.,
2001; Last Visit: 2004-01-09,
URL http://www.jucs.org/jucs_7_6/mpeg_and_its_relevance
[Hein et. al 2003]
Hein M., Zeller H.; Java Web Services: Entwicklung plattformübergreifender Dienste
mit J2EE, XML und SOAP; Addison-Wesley, 2003; ISBN 3-8273-2071-2
[Iannella 2001]
Iannella R.; Digital Rights Management (DRM) Architectures; D-Lib Magazine,
Volume 7, Number 6, 2001; Last Visit: 2004-01-09,
URL http://www.dlib.org/dlib/june01/iannella/06iannella.html
[IBM DB2 2003]
IBM DB2 Content Manager Family; IBM, 2003; Last Visit: 2004-01-09,
URL http://www-3.ibm.com/software/data/cm/cmgr/
[IBM DB2 2003a]
Whitepaper: Manage your digital content effectively; IBM, 2003;
Last Visit: 2004-01-09,
URL http://www-3.ibm.com/software/data/cm/attach/cmtechwp.pdf
Literaturverzeichnis
151
[Ide 2002]
Ide M.; J2EE-Programmierhandbuch: Einführung in die Java 2 Enterprise Edition;
Software & Support Verlag, 2002; ISBN 3-935042-20-5
[Ion 2003]
Project Home Page; SourceForge, 2003, Last Visit: 2004-01-09,
URL http://ion-cms.sourceforge.net/
[Ion 2003a]
Ion-cms. java open source content management; 2003; Last Visit: 2004-01-09,
URL http://www.blauton.de/ion/de/home/home.html
[Jablonski et. al 2002]
Jablonski S., Meiler C.; Web-Content-Managementsysteme; Informatik Spektrum
Volume 25 Issue 2, 2002; Last Visit: 2004-01-09,
URL http://link.springer.de/link/service/journals/00287/bibs/2025002/20250101.htm
[Jahia 2003]
Jahia 4.0; Jahia Ltd., 2003; Last Visit: 2004-01-09,
URL http://www.jahia.org/
[Kampffmeyer 2003]
Kampffmeyer U.; Revisionssichere Archivierung im Licht neuer rechtlicher
Anforderungen I; Contentmanager.de, 2003; Last Visit: 2004-01-09,
URL http://www.contentmanager.de/magazin/artikel_373-75_revisionssichere_archivierung_teil_1.html
[Kampffmeyer 2003a]
Kampffmeyer U.; Enterprise und Web Content Management: Ansätze und Tools für das
effiziente Erschließen und Bereitstellen von Unternehmensinhalten; Wissensmanagement, Ausgabe 6, 2003; Last Visit: 2004-01-09,
URL http://www.wissensmanagement.net/print/archiv/2003/wissensmanagement-06.shtml
[Kampffmeyer 2003b]
Kampffmeyer U.; Enterprise Content Management - Zwischen Vision und Realität;
Contentmanager.de, 2003; Last Visit: 2004-01-09,
URL http://www.contentmanager.de/magazin/artikel_398_ecm_zwischen_vision_und_realitaet.html
[Kirchner 2002]
Kirchner M.; Evaluation, Repair, and Transformation of Web Pages for Web Content
Accessibility. Review of Some Available Tools; Proceedings of the 4th International
Workshop on Web Site Evolution, Montréal, Canada, IEEE, 2002
[Koop et al. 2001]
Koop H. J., Jäckel K. K., Offern A. L. van; Erfolgsfaktor Content Management. Vom
Web Content bis zum Knowledge Management; Vieweg, 2001; ISBN 3-528-05769-6
Literaturverzeichnis
152
[Krcmar 2000]
Krcmar H.; Informationsmanagement. 2. Auflage; Springer, 2000; ISBN 3-540-66359-2
[Krottmaier 2002]
Krottmaier H.; Aspects of Modern Electronic Publishing Systems; Dissertation am
Institut für Informationsverarbeitung und Computergestützte neue Medien, Technische
Universität Graz, 2002; Last Visit: 2004-01-09,
URL http://www.iicm.edu/thesis/hkrott_diss.pdf
[Krüger et al. 2002]
Krüger J. D., Koop M.; Web Content managen. Professioneller Einsatz von ContentManagement-Systemen; Markt+Technik Verlag, 2002; ISBN 3-8272-6002-7
[Landers 2002]
Landers G.; Digital Asset Management Technology Heats Up; Gartner, 2002; Last
Visit: 2004-01-09,
URL http://www.gartner.com/
[Leisi 2000]
Leisi M.; Elektronische Märkte. Anwendungsdesign und Einbindung in Umsysteme;
Diplomarbeit am Wirtschaftswissenschaftlichen Zentrum der Universität Basel, 2000;
Last Visit: 2004-01-09,
URL http://www.astrum.ch/uni/wi/diplom/diplom-leisi-em.pdf
[Lesk 1997]
Lesk M.; How much information is there in the World?; 1997; Last Visit: 2004-01-09,
URL http://lesk.com/mlesk/ksg97/ksg.html
[Lew et. al 2002]
Lew S. M., Sebe N., Eakins P. J.; Image and Video Retrieval. International Conference,
CIVR 2002, London, UK, July 2002, Proceedings; Springer,2002; ISBN 3-540-43899-8
[Lewin 2000]
Lewin J.; An introduction to RSS news feed. Using open formats for content
syndication; IBM developerWorks, 2000; Last Visit: 2004-01-09,
URL http://www-106.ibm.com/developerworks/library/w-rss.html
[Lochbrunner 2002]
Lochbrunner M.; Technologien und Anwendungsmöglichkeiten von XML als Mittler
im Web Content Management; Diplomarbeit an der Fachhochschule Augsburg am
Fachbereich Informatik, 2002
[Mattick 2002]
Mattick V.; Design for All as a Challenge for Hypermedia Engineering; Journal of
Universal Computer Science, vol.8, no.10, 2002; Last Visit: 2004-01-09,
URL http://www.jucs.org/jucs_8_10/design_for_all_as
Literaturverzeichnis
153
[McGovern et al. 2001]
Mcgovern G., Norton R.; Content Critical; Financial Times Prentice Hall, 2001
[McGrath 2002]
McGrath J.; Open-source CMS: On the rise, TechUpdate, ZDNet; CNET Networks,
Inc., 2002; Last Visit: 2004-01-09,
URL http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2897730,00.html
[Mittermeier 2003]
Mittermeier L.; XML und Datenbanken. Naiv nativ; iX – Magazin für professionelle
Informationstechnik, Seite 42, 08/2003
[Nelson 2001]
Nelson M.; We Have the Information You Want, But Getting It Will Cost You. Being
Held Hostage by Information Overload; ACM, 2001; Last Visit: 2004-01-09,
URL http://www.acm.org/crossroads/xrds1-1/mnelson.html
[Open Source 2003]
SearchEnterpriseLinux.com Definitions: Open Source; WhatIs.com, 2003; Last Visit:
2004-01-09,
URL http://searchenterpriselinux.techtarget.com/sDefinition/0,,sid39_gci212709,00.html
[OpenCms 2003]
OpenCms 5.0; Alkacon Software, 2003; Last Visit: 2004-01-09,
URL http://www.opencms.org/
[OpenCms 2003a]
OpenCms Documentation 5.0; Alkacon Software, 2003; Last Visit: 2004-01-09,
URL http://www.opencms.org/export/download/opencms/opencms_5.0_doc_full.zip
[Orf 2003]
ORF Online Futurezone: Große Zukunft für Web-Services erwartet; ORF, 2003; Last
Visit: 2004-01-09,
URL http://futurezone.orf.at/futurezone.orf?read=detail&id=176809&tmp=37332
[Pawlan 2001]
Pawlan M.; Introduction to the J2EE Platform; Java 2 Enterprise Edition Technology
Center, 2001; Last Visit: 2004-01-09,
URL http://developer.java.sun.com/developer/technicalArticles/J2EE/Intro/
[Pelz-Sharp 2002]
Pelz-Sharp A.; Digital asset management – exploiting the value of rich media; Ovum,
2002; Last Visit: 2004-01-09,
URL http://www.ovum.com/
Literaturverzeichnis
154
[Pelz-Sharp et. al 2002a]
Pelz-Sharp A., Ashenden A., Harris-Jones C.; Content management – setting the scene;
Ovum, 2002; Last Visit: 2004-01-09,
URL http://www.ovum.com/
[Pelz-Sharp et. al 2002b]
Pelz-Sharp A., Ashenden A., Harris-Jones C.; How Content Management Systems
work; Ovum, 2002; Last Visit: 2004-01-09,
URL http://www.ovum.com/
[Prenn et al. 2002]
Prenn C., Wrede M.; Aspekte digitaler Archivierung; Contentmanager.de, 2002; Last
Visit: 2004-01-09,
URL http://www.contentmanager.de/magazin/artikel_264_aspekte_digitaler_archivierung.html
[Red Hat 2003]
Whitepaper: Collaboration and Flexibility. Critical for Efficient Content Management;
Red Hat, Inc, 2003; Last Visit: 2004-01-09,
URL http://www.redhat.com/software/ccm/cms/cmsWhite.html
[Red Hat CMS 2003]
Red Hat Content Management System; Red Hat Inc., 2003; Last Visit: 2004-01-09,
URL http://www.redhat.com/software/rha/cms/
[Red Hat CMS 2003a]
Red Hat CMS Dokumentation; Red Hat Inc., 2003; Last Visit: 2004-01-09,
URL http://rhea.redhat.com/documentation/core-platform/5.0/cms/content-section/doc/
[Reif 2000]
Reif G.; Moderne Aspekte der Wissensverarbeitung. Ein interaktiver Lernbeheld für das
Web Based Training; Diplomarbeit am Institut für Informationsverarbeitung und
Computergestützte neue Medien, Technische Universität Graz, 2000;
Last Visit: 2004-01-09,
URL http://www.iicm.edu/thesis/greif
[Rodoni 2001]
Rodoni J.; The Java 2, Enterprise Edition (J2EE) Connector Architecture's Resource
Adapter; Sun Microsystems, Inc., 2001; Last Visit: 2004-01-09,
URL
http://developer.java.sun.com/developer/technicalArticles/J2EE/connectorclient/resourceadapter.
html
[Rollett 2000]
Rollett H.; Aspekte des Wissensmanagement; Diplomarbeit am Institut für
Informationsverarbeitung und Computergestützte neue Medien, Technische Universität
Graz, 2000; Last Visit: 2004-01-09,
URL http://www.iicm.edu/herwig/thesis
Literaturverzeichnis
155
[Rosenfeld et al. 1998]
Rosenfeld L., Morville P.; Information Architecture for the World Wide Web; O’Reilly,
1998; ISBN 1-56592-282-4
[Rothfuss et al. 2001]
Rothfuss G., Ried C.; Content Management mit XML; Springer, 2001; ISBN 3-54066594-3
[Scholz 2003]
Scholz M.; Customer-Relation-Management (CRM)-Basics; Phisch.info, 2003; Last
Visit: 2004-01-09,
URL http://www.content-syndication-broker.de/wcms-crm-artikel-grund39.html
[Schuster et al. 2000]
Schuster E., Wilhelm S.; Content Management; Informatik Spektrum, Volume 23, Issue
6, 2000; Last Visit: 2004-01-09,
URL http://link.springer.de/link/service/journals/00287/bibs/0023006/00230373.htm
[Serrão et. al 2002]
Serrão C., Marques J., Balestri M., Kudumakis P. Baker T.; Protecting Digital Music
Delivery and Consumption using the OCCAMM Project Framework; Proceedings of
the Second International Conference on WEB Delivering of Music, Darmstadt,
Germany, IEEE, 2002
[Silver 2003]
Silver B.; Business Rules: Enterprise Content Management Revisited; Transform
Magazine, 2003; Last Visit: 2004-01-09,
URL http://www.transformmag.com/db_area/archs/2003/01/tfm0301br.shtml?/contentmanagement
[Singh et al. 2002]
Singh I., Stearns B., Johnson M.; Designing Enterprise Applications: with the J2EE
Platform, Second Edition; Addison-Wesley, 2002; ISBN 0-201-78790-3
[Sun 1999]
Simplified Guide to the Java 2 Platform, Enterprise Edition; Sun Microsystems, Inc.
1999; Last Visit: 2004-01-09,
URL http://java.sun.com/j2ee/j2ee_guide.pdf
[Sun 2002]
Whitepaper: Digital Rights Management. Managing the Digital Distribution Value
Chain; Sun Microsystems, Inc. 2002; Last Visit: 2004-01-09,
URL http://www.sun.com/products-n-solutions/media-entertainment/docs/drm_wp_r7final2.pdf
[Sun 2003]
Java 2 Platform, Enterprise Edition Homepage, 2003; Last Visit: 2004-01-09,
URL http://java.sun.com/j2ee/
Literaturverzeichnis
156
[TechRankings 2003]
Forrester TechRankings; Forrester Research, 2003; Last Visit: 2004-01-09,
URL http://www.forrester.com/TechRankings
[Vignette 2003]
Vignette V7; Vignette, 2003; Last Visit: 2004-01-09,
URL http://www.vignette.com/contentmanagement/0,2097,1-1-1928-4149-1968-4160,00.html
[VIP Enterprise 2003]
VIP Enterprise 8; Gauss, 2003; Last Visit: 2004-01-09,
URL
http://www.gauss.de/gaussvip_p/gaussvip/EMEA/DE/PRODUKTE/VIPEnterprise/Uebersicht/
index.jsp
[Voigt 2001]
Voigt I.; Aspekte der Versionskontrolle in Content Management Systemen;
Contentmanager.de, 2001; Last Visit: 2004-01-09,
URL http://www.contentmanager.de/magazin/artikel_85_aspekte_der_versionskontrolle_in_content.html
[Wildemann 2003]
Wildemann H.; Wissensmanagement. Ein neuer Erfolgsfaktor für Unternehmen; TCW
Transfer-Centrum-Verlag, 2003; ISBN 3-931511-45-6
[Wilhelm 2001]
Wilhelm S.; Content Management in der deutschen Wirtschaft; Contentmanager.de,
2001; Last Visit: 2004-01-09,
URL
http://www.contentmanager.de/magazin/artikel_77_content_management_in_der_deutschen_wirt
schaft.html
[Wilkoff et. al 2001]
Wilkoff N., Walker J., Root N., Dalton J.; What's Next For Content Management?;
Forrester Research, 2001; Last Visit: 2004-01-09,
URL http://www.forrester.com/
[Wolter 2001]
Wolter R.; XML Web Services Basics; Microsoft Corporation, 2001;
Last Visit: 2004-01-09,
URL http://msdn.microsoft.com/webservices/understanding/webservicebasics/default.aspx?pull=/library/
en-us/dnwebsrv/html/webservbasics.asp
[XML Schema 2003]
XML Schema Tutorial; W3Schools, 2003; Last Visit: 2004-01-09,
URL http://www.w3schools.com/schema/default.asp
[Zschau 2001]
Zschau O., Traub D., Zahradka R.; Web Content Management. Websites professionell
planen und betreiben; Galileo Press, 2001; ISBN 3898421570
Herunterladen