31.12.2012 Aufrufe

Migrationsleitfaden Version 3.0

Migrationsleitfaden Version 3.0

Migrationsleitfaden Version 3.0

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Leitfaden für die<br />

Migration von Software<br />

Publikation des Bundesministerium des Innern<br />

April 2008<br />

<strong>Migrationsleitfaden</strong><br />

<strong>Version</strong> <strong>3.0</strong>


Publikation des Bundesministerium des Innern<br />

Nachdruck, auch auszugsweise, ist genehmigungspflichtig<br />

Interessenten erhalten die derzeit lieferbaren Veröffentlichungen<br />

des Bundesministerium des Innern<br />

und weiterführende Informationen zu den Dokumenten beim<br />

Bundesministerium des Innern<br />

Referat IT 2<br />

11014 Berlin<br />

Homepage: http://www.kbst.bund.de/<br />

E-Mail: IT2@bmi.bund.de


<strong>Migrationsleitfaden</strong><br />

<strong>Version</strong> <strong>3.0</strong><br />

Leitfaden für die<br />

Migration von Software<br />

1. Auflage<br />

Berlin, April 2008<br />

Herausgegeben vom<br />

Bundesministerium des Innern


Vorwort zur dritten <strong>Version</strong> des <strong>Migrationsleitfaden</strong>s<br />

Der <strong>Migrationsleitfaden</strong> hat sich als praxisrelevantes, konkret anwendbares Werkzeug zu<br />

vielschichtigen Migrationsfragestellungen etabliert und ist in der Bundesverwaltung und<br />

darüber hinaus akzeptiert und hoch geschätzt. Das Dokument bietet IT-Entscheidern<br />

neben reichhaltigen technischen Informationen zu proprietärer und Open Source Software<br />

eine praktische Hilfe für die Planung und Durchführung von Softwaremigrationen in<br />

verschiedenste Richtungen.<br />

Aufgrund der immer kürzer werdenden Innovationszyklen der Technik wird nun mit dem<br />

<strong>Migrationsleitfaden</strong> <strong>3.0</strong> eine inhaltlich aktuelle Fassung bezüglich der derzeit und in den<br />

kommenden Jahren in Migrationsprojekten anzutreffenden Technologien vorgelegt. Bewährte<br />

Elemente der Vorgängerversionen, wie beispielsweise den praktischen Hinweisen<br />

zum Vorgehen bei Wirtschaftlichkeitsbetrachtungen und den rechtlichen Rahmenbedingungen,<br />

in denen sich Softwaremigrationsprojekte bewegen, werden in der <strong>Version</strong><br />

<strong>3.0</strong> in aktualisierter Form fortgeführt.<br />

Die wesentliche Neuerung des <strong>Migrationsleitfaden</strong> <strong>3.0</strong> gegenüber seinen Vorgängerversionen<br />

besteht in Form eines komplett überarbeiteten Strukturkonzeptes mit stärker ausgeprägter<br />

Modularisierung. Der Nutzwert des Dokumentes wird insbesondere durch dieses<br />

Element gesteigert, da es die Zuordnung der Fragestellungen der Leserinnen und<br />

Leser zu den Dokumenteninhalten vereinfacht.<br />

Die modularisierte Dokumentenstruktur bildet auch die Basis für eine einfachere Aktualisierung<br />

der einzelnen Dokumenteninhalte. Kürzere Veröffentlichungszyklen werden zukünftig<br />

einfacher umsetzbar. Zudem markiert die Einführung der neuen Dokumentenstruktur<br />

einen wichtigen Meilenstein auf dem Weg zu einer neuen Publikationsform des<br />

<strong>Migrationsleitfaden</strong>s als interaktives Web-Angebot.<br />

Die Autoren wünschen den Leserinnen und Lesern des <strong>Migrationsleitfaden</strong>s eine anregende<br />

und gewinnbringende Lektüre sowie die gewinnbringende Anwendung der skizzierten<br />

Lösungsszenarien in der täglichen Arbeitspraxis.<br />

Seite 4


Aufbau und Inhalt des <strong>Migrationsleitfaden</strong>s<br />

Behörden und Organisationen stehen wiederholt vor der Entscheidung, wie sie ihre IT-<br />

Systemlandschaften zukünftig entwickeln wollen. Die Gründe dafür sind vielfältig:<br />

� Auslaufender Hersteller-Support für wesentliche Produkte<br />

� Erweiterte technische Anforderungen<br />

� Konsolidierung der bestehenden Systemlandschaften<br />

� Strategische Ziele, wie beispielsweise verstärkte Herstellerunabhängigkeit und<br />

erhöhte Interoperabilität.<br />

Ihnen stellt sich somit aktuell die Frage, welche Systeme und Komponenten zukünftig<br />

die Basis ihrer IT-Struktur bilden sollen. Der <strong>Migrationsleitfaden</strong> will ihnen dabei durch<br />

seinen strukturellen und modularen Aufbau sowie durch seine Inhalte eine Hilfestellung<br />

geben.<br />

Änderungen gegenüber der <strong>Version</strong> 2.0<br />

Die erste Fassung des <strong>Migrationsleitfaden</strong>s wurde in der <strong>Version</strong> 1.0 im Jahr 2003 veröffentlicht.<br />

Dieses Dokument wurde über 100.000 Mal aus dem Netz herunter geladen und<br />

in mehrere Sprachen übersetzt.<br />

Im Jahr 2005 wurde die <strong>Version</strong> 1.0 durch eine Fortschreibung des Dokumentes auf die<br />

<strong>Version</strong> 2.0 aktualisiert. Die auf diesem Dokument aufbauende, zuletzt veröffentlichte<br />

<strong>Version</strong> 2.1 beinhaltete gegenüber ihrer Vorgängerversion bereits Ausführungen und<br />

praktische Tipps zu Wirtschaftlichkeitsbetrachtungen und rechtlichen Aspekten geplanter<br />

Software-Migrationen.<br />

Mit dem <strong>Migrationsleitfaden</strong> <strong>3.0</strong> legt die KBSt nun eine komplett überarbeitete und aktualisierte<br />

Fassung mit stärker ausgeprägter Modularisierung der technischen Themen vor.<br />

Darüber hinaus wurden vor allem weitere Produkte und Technologien aufgenommen,<br />

zum Beispiel der Themenbereich Teaming- und Workgroupsoftware (Collaborationsoftware)<br />

mit den Produkten „Microsoft Office SharePoint Server―, „O3Spaces Work-place<br />

2―, „Novell Teaming + Conferencing―, „Lotus Quickr 8.0― und die Open Source Software<br />

„Mindquarry―.<br />

Aufbau des <strong>Migrationsleitfaden</strong>s<br />

Eingebettet in ein Rahmenkapitel enthält der <strong>Migrationsleitfaden</strong> <strong>3.0</strong> die drei Kernmodule<br />

Querschnittsthemen, Infrastrukturen und Anwendungen. Diese Module markieren in der<br />

Arbeitspraxis klar voneinander abgrenzbare Themengebiete mit spezifischen Aufgabenstellungen.<br />

Um den Leserinnen und Lesern eine klare Orientierung im Dokument zu ermöglichen,<br />

werden die drei Kernmodule mit einer einheitlichen Untergliederung ausgestattet. Diese<br />

enthält die fünf Ebenen:<br />

� Modul,<br />

� Themen,<br />

Seite 5


� Produkte,<br />

� Migrationspfade und<br />

� Bezüge.<br />

Entlang dieser Untergliederung entsteht ein einheitlicher Strukturrahmen für alle Kernmodule,<br />

der es den Leserinnen und Lesern ermöglicht, Problemstellungen auf stets<br />

gleich bleibenden Pfaden zu lösen. Diese Struktur ist in der nachfolgenden Grafik dargestellt.<br />

Nutzung durch<br />

Anwender<br />

• In welchem<br />

Umfeld habe<br />

ich ein<br />

Problem?<br />

• Zu welchem<br />

Thema gehört<br />

mein Problem?<br />

• Welche<br />

Produkte sind<br />

betroffen?<br />

• Welcher<br />

Migrationspfad<br />

hilft mir?<br />

• Was muss ich<br />

sonst noch<br />

beachten?<br />

Modul<br />

Themen<br />

Produkte /<br />

Technologien<br />

Migrationspfade<br />

Bezüge<br />

Abbildung 1: Struktur des <strong>Migrationsleitfaden</strong><br />

Seite 6<br />

Beispiel:<br />

Migration DBMS<br />

• Infrastruktur<br />

• Datenbanken<br />

• MySQL<br />

• PostgreSQL<br />

• SQL-Server<br />

• z.B. SQL-Server<br />

nach<br />

PostgreSQL<br />

• z.B. Datenquellen<br />

in<br />

Office-Anwendungen<br />

In der Grafik sind die Fragen des sich orientierenden Lesers den Bezugspunkten des<br />

Dokumentes auf dessen inhaltlichen Ebenen zugeordnet. So wird ein Leser, der beispielsweise<br />

die Migration eines Datenbankmanagementsystems plant, die Problemlösung<br />

auf dem in der Grafik skizzierten Pfad durch die Dokumentenstruktur finden. Sucht<br />

derselbe Leser nach einer anderen Problemlösung, beispielsweise in einem Thema des<br />

Moduls Anwendungen, so wird er zu dieser unter Verwendung desselben strukturellen<br />

Pfades durch das Dokument gelangen.<br />

Das Modul Querschnittsthemen weicht von dieser vorgegebenen Struktur ab, da hier<br />

innerhalb des Moduls nur noch eine Unterteilung nach Themen erfolgt.<br />

Inhalt des <strong>Migrationsleitfaden</strong>s<br />

Der <strong>Migrationsleitfaden</strong> beschäftigt sich inhaltlich mit der Migration von Software. Nach<br />

wie vor liegt bei den technischen Betrachtungen aktuell der Fokus auf den Basissoftwarekomponenten<br />

von IT-Infrastrukturen. Der <strong>Migrationsleitfaden</strong> hat aber den Anspruch,<br />

zukünftig alle für die Verwaltung relevanten Softwarekomponenten in seine Betrachtungen<br />

einzubeziehen. Diese Zielsetzung wird durch die oben beschriebene neue


Struktur und stärkere Modularisierung unterstützt, sie ermöglicht eine effiziente Erweiterung<br />

beziehungsweise Anpassung der Inhalte des Leitfadens an die Bedürfnisse der<br />

öffentlichen Verwaltung.<br />

Innerhalb der Kernmodule „Infrastrukturen― und „Anwendungen― betrachtet der Leitfaden,<br />

untergliedert nach Themen, wie zum Beispiel Netzwerkdienste oder Datenbankmanagementsysteme,<br />

zunächst die einzelnen Produkte und Technologien hinsichtlich<br />

ihres technischen Aufbaus und der technischen Besonderheiten sowie ihrer Funktionalitäten.<br />

Darüber hinaus wird auch ein Blick auf die bisherige Entwicklung, die Verfügbarkeit<br />

unterschiedlicher <strong>Version</strong>en und Editionen sowie der Lizenzbedingungen, unter<br />

denen die Produkte und Technologien eingesetzt werden können, geworfen. Betrachtet<br />

wird dabei proprietäre und Open Source Software in gleichem Maße.<br />

Definition:<br />

Open Source Software, Free Software, Freie Software<br />

Die Begriffe „Open Source Software“ und „Free Software“ oder „Freie Software“ werden innerhalb<br />

dieses <strong>Migrationsleitfaden</strong>s synonym angewendet. Im Rahmen des Leitfadens wird<br />

hierfür die Abkürzung OSS eingesetzt.<br />

OSS erlaubt es jedem, den frei verfügbaren Quellcode zu nutzen, zu analysieren, zu modifizieren<br />

und zu verbreiten. Diese Offenheit gibt den Nutzern die Möglichkeit, aus dem Quellcode<br />

selbst zu lernen beziehungsweise ihn an die persönlichen Bedürfnisse anzupassen.<br />

OSS ist frei von Lizenzkosten und darf auch in modifizierter Form kopiert und weitergegeben<br />

werden. Die Freiheit der Software wird durch die entsprechenden Lizenzen geregelt.<br />

Proprietäre Software<br />

Im Gegensatz zu Open Source Software ist proprietäre Software das Eigentum einer Person<br />

oder einer Organisation. In der Regel handelt es sich dabei um den Hersteller der Software.<br />

Die Nutzung der Software unterliegt den Lizenzbestimmungen, die der Eigentümer<br />

der Software festgelegt hat. Dabei ist ihre Vervielfältigung, Weiterverbreitung und Modifizierung<br />

meist untersagt.<br />

Unter der Voraussetzung, dass die entsprechenden Lizenzbedingungen akzeptiert werden,<br />

wird sie in einigen Fällen auch kostenlos angeboten. Diese Software ist jedoch keine Open<br />

Source Software.<br />

Im Anschluss an die Produkt- und Technologiebetrachtung erfolgt innerhalb jedes<br />

Themenblockes die Betrachtung ausgewählter Migrationspfade. Zum Zeitpunkt der<br />

Veröffentlichung der ersten <strong>Version</strong> des <strong>Migrationsleitfaden</strong>s im Jahre 2003 bestand<br />

hinsichtlich der Ausgangssituation der IT-Infrastrukturen bei den Behörden ein relativ<br />

homogenes Bild. Dieses hat sich in den letzten Jahren deutlich gewandelt. Zwar werden<br />

immer noch überwiegend Windows-basierte IT-Infrastrukturen betrieben, aber selbst hier<br />

gibt es sehr unterschiedliche Ausgangslagen. Daneben haben sich die unterschiedlichsten<br />

Linux-basierten und auch heterogenen IT-Landschaften entwickelt.<br />

Diese zunehmende Heterogenität der IT-Landschaften führt dazu, dass differenziertere<br />

Möglichkeiten zur Migration bestehen und beschrieben werden müssen. Es wird unterschieden<br />

zwischen den ablösenden und den fortführenden Migrationspfaden.<br />

Seite 7


Definition<br />

Fortführende Migration<br />

In den bisherigen <strong>Version</strong>en des <strong>Migrationsleitfaden</strong>s wurde dieser Begriff aufgrund der damals<br />

in den Behörden vorliegenden, weitgehend einheitlichen Ausgangslage (Windows NT<br />

basierte IT-Infrastrukturen) in erster Linie mit der Fortführung der Produktlinien von Microsoft<br />

verbunden. Heute gibt es sehr unterschiedliche Ausgangslagen, deshalb wird unter<br />

„Fortführende Migration“ die Fortführung einer bestehenden Produktlinie beziehungsweise<br />

eines bestehenden Produktes, also zum Beispiel die Migration von StarOffice 7 nach Star-<br />

Office 8 oder die Migration von MS Office 2003 nach MS Office 2007 verstanden.<br />

Ablösende Migration<br />

Dementsprechend handelt es sich bei einer ablösenden Migration um die Ablösung einer<br />

bestehenden Produktlinie oder eines Produktes durch eine andere Produktlinie oder ein<br />

anderes Produkt. Dies kann zum Beispiel die Ablösung von StarOffice 7 durch MS Office<br />

2007 oder MS Office XP durch OpenOffice.org 2.3 oder auch die Ablösung der Groupware<br />

Scalix durch Kolab sein.<br />

Als mögliche ablösende Pfade kommen in Betracht:<br />

� Ablösung einer proprietären Lösung durch eine OSS-Lösung<br />

� Ablösung einer proprietären Lösung durch eine andere proprietäre Lösung<br />

� Ablösung einer OSS-Lösung durch eine proprietäre Lösung<br />

� Ablösung einer OSS-Lösung durch eine andere OSS-Lösung<br />

Und bei den fortführenden Pfaden gibt es folgende Möglichkeiten:<br />

� Fortführung einer proprietären Lösung<br />

� Fortführung einer OSS-Lösung<br />

Die Erfahrungen der Vergangenheit haben gezeigt, dass Migrationen sowohl in die eine<br />

als auch in die andere Richtung technisch machbar sind. Insbesondere das Vorurteil,<br />

dass nur mit proprietärer Software sinnvolle Wege beschritten werden können, wurde in<br />

vielen Migrationsprojekten und an unzähligen Stellen im betrieblichen Einsatz widerlegt.<br />

Die Praxis macht auch deutlich, dass unter entsprechenden Randbedingungen im Einzelfall<br />

auch heterogene IT-Umgebungen durchaus wirtschaftlich, bedarfs- und praxisgerecht<br />

sein können. Diese praktischen Erfahrungen belegen, dass bei punktuellen Migrationen<br />

oder Migrationen in Teilbereichen durchaus darüber nachgedacht werden darf,<br />

ablösende Migrationspfade zu beschreiten, auch wenn dadurch Heterogenität in der IT-<br />

Landschaft geschaffen oder gegebenenfalls verstärkt wird. Eine wichtige inhaltliche Frage,<br />

die sich hierbei ebenfalls häufig stellt, lautet: „Welcher Grad an Integration wird benötigt<br />

und lässt sich dieser auch in einer heterogenen Umgebung realisieren?― Das heißt,<br />

lassen sich die Funktionalitäten, die nur durch ein bestimmtes Maß an Integration bereitgestellt<br />

werden können, auch in einer heterogenen Umgebung bereitstellen. Das Thema<br />

Integration wird im Abschnitt I.A 3 näher betrachtet.<br />

Seite 8


Letztendlich hängt die Wahl der Migrationspfade und die Gesamtausrichtung einer IT-<br />

Landschaft von den Anforderungen und den Rahmenbedingungen einer Organisation,<br />

einer Behörde ab. Diese sind in der Regel aber innerhalb jeder Behörde sehr unterschiedlich<br />

ausgeprägt. Es liegen sehr unterschiedliche Ausgangslagen vor, auch auf den<br />

Grad der Heterogenität einer IT-Umgebung bezogen. Die Anforderungen hängen sehr<br />

stark von den jeweiligen Aufgaben ab, Know-how, Anzahl des verfügbaren Personals<br />

differieren und die finanziellen Ressourcen sind sehr unterschiedlich ausgeprägt. Daher<br />

wird im <strong>Migrationsleitfaden</strong> auf die Betrachtung von Migrationen gesamter IT-Infrastrukturen<br />

verzichtet.<br />

Grundsätzliche Unterschiede gibt es bei den einzelnen Pfaden nicht zu beachten. Die<br />

Machbarkeit ist in der Regel gegeben, es sei denn, dass für den einen oder anderen<br />

Pfad ein geeignetes Migrationsziel (Produkt oder Technologie) fehlt. Dies kann folgende<br />

Ursachen haben:<br />

� Fehlen von Alternativen für eine fortführende oder ablösende Migration:<br />

In bestimmten Bereichen fehlen die notwendigen Alternativen, um ablösende<br />

Migrationspfade aufzeigen zu können. Entweder sind die am Markt verfügbaren<br />

Produkte und Lösungen (proprietär wie OSS) noch nicht ausgereift genug oder<br />

verfügen nicht über den nötigen Funktionsumfang. Weiterhin kann es sein, dass<br />

ein Produkt (proprietär wie OSS) nicht mehr weiterentwickelt wird, womit dann<br />

kein fortführender Pfad betrachtet werden kann.<br />

� Geringe Unterschiede zwischen aufeinanderfolgenden <strong>Version</strong>en:<br />

In einigen Fällen macht die explizite Beschreibung eines fortführenden Migrationspfades<br />

keinen Sinn, insbesondere wenn zwischen der aktuell eingesetzten<br />

und der Folgeversion nur geringfügige Unterschiede (zum Beispiel überwiegend<br />

in Form von Verbesserungen bestehender Funktionalität) bestehen oder wenn es<br />

sich um einen Bereich mit grundsätzlich stabilen Funktionsanforderungen handelt.<br />

Fehlenden Migrationszielen auf der einen Seite und einer in vielen Themenbereichen<br />

anzutreffende Produkt- und Technologievielfalt auf der anderen Seite ist es geschuldet,<br />

dass nicht alle möglichen Migrationspfade betrachtet werden können. Daher wurden im<br />

Rahmen der Erstellung des <strong>Migrationsleitfaden</strong>s Workshops mit Experten und Vertretern<br />

der Hersteller durchgeführt, in denen wichtige Migrationspfade identifiziert wurden, die in<br />

den nachfolgenden Betrachtungen berücksichtigt wurden.<br />

Neben den technischen Betrachtungen beschäftigt sich der <strong>Migrationsleitfaden</strong> im Modul<br />

Querschnittsthemen auch mit produktübergreifenden Technikthemen, zum Beispiel der<br />

Integration von Softwarekomponenten und der Verwendung von Standards sowie den<br />

rechtlichen und wirtschaftlichen Aspekten von Softwaremigrationen.<br />

Bezug zu anderen E-Gouvernement-Dokumenten<br />

Für die Behörden des Bundes ist das Bundesministerium des Innern der kompetente<br />

und zentrale Ansprechpartner in Sachen Informations- und Kommunikationstechnik. In<br />

dieser Rolle hat die "Koordinierungs- und Beratungsstelle der Bundesregierung für Informationstechnik<br />

in der Bundesverwaltung" (KBSt) als zuständige Stelle bis zum heutigen<br />

Tage eine Vielzahl von IT-bezogenen Dokumenten veröffentlicht, die zum Teil einer<br />

Seite 9


kontinuierlichen Fortschreibung und Aktualisierung unterzogen werden. Hierzu gehören<br />

insbesondere die folgenden Dokumente und Informationsbereiche 1 :<br />

� DOMEA- Konzept 2 in der <strong>Version</strong> 2.1<br />

� E-Gouvernement 2.0 – Das Programm des Bundes<br />

� EVB-IT 3 Vertragstypen<br />

� <strong>Migrationsleitfaden</strong> 2.1<br />

� Leitfaden plattformunabhängige Fachanwendungen 1.0<br />

� SAGA 4 4.0<br />

� IT-Architekturkonzept für die Bundesverwaltung 1.0<br />

� UfAB 5 IV <strong>Version</strong> 1.0<br />

� V-Modell XT 6 Release 1.2.1<br />

� WiBe 7 4.1<br />

� XML Infopoint<br />

Mit Ausnahme von DOMEA 2.1 hat der <strong>Migrationsleitfaden</strong> <strong>3.0</strong> zu allen anderen Dokumenten<br />

einen grundsätzlich mehr oder weniger intensiven Bezug. Geht es im Rahmen<br />

einer Migration um die Beschaffung neuer Software, die bestimmten Kriterien folgen<br />

muss, zum Beispiel um zukünftige Migrationen zu reduzieren und zu vereinfachen, dann<br />

zeigt sich der Bezug zu EVB-IT und UfAB. Geht es jedoch um die eigentliche<br />

Durchführung, dann ist der Bezug zu V-Modell XT und gegebenenfalls auch EVB-IT<br />

gegeben. Allen voran sind es jedoch SAGA <strong>3.0</strong>, das IT-Architekturkonzept für die<br />

Bundesverwaltung 1.0, der Leitfaden plattformunabhängige Fachanwendungen und die<br />

WiBe 4.1, zu denen ein direkter Bezug des <strong>Migrationsleitfaden</strong>s besteht. Wenn es darum<br />

geht, die Häufigkeit von Migrationen zu reduzieren, Migrationen zu vereinfachen oder die<br />

Kosten von Migrationen zu reduzieren, dann sollten diese Dokumente bei der<br />

Durchführung von Softwaremigrationen stets herangezogen werden.<br />

Die in diesen Dokumenten gelegten Grundlagen und Rahmenbedingungen nimmt der<br />

aktualisierte <strong>Migrationsleitfaden</strong> <strong>3.0</strong> in seine Betrachtung von Produkten, Technologien<br />

und Migrationspfaden ergänzend auf.<br />

1<br />

www.kbst.bund.de<br />

2<br />

DOMEA - Dokumenten-Management und elektronische Archivierung (in der öffentlichen<br />

Verwaltung)<br />

3<br />

EVB-IT - Ergänzenden Vertragsbedingungen für die Beschaffung von IT-Leistungen<br />

4<br />

SAGA - Standards und Architekturen für E-Government-Anwendungen<br />

5<br />

UfAB - Unterlage für die Ausschreibung und Bewertung von IT-Leistungen<br />

6<br />

V-Modell XT - Vorgehensmodell zum Planen und Durchführen von Projekten - XT steht für<br />

„extreme tailoring―<br />

7<br />

WiBe - Wirtschaftlichkeitsbetrachtungen<br />

Seite 10


Inhaltsverzeichnis<br />

Vorwort zur dritten <strong>Version</strong> des <strong>Migrationsleitfaden</strong>s ........................ 4<br />

Aufbau und Inhalt des <strong>Migrationsleitfaden</strong>s ........................................ 5<br />

Inhaltsverzeichnis ................................................................................. 11<br />

I. Modul Querschnittsthemen........................................................... 19<br />

A Thema: Strategische Aspekte von Softwaremigrationen ............................ 19<br />

1 Herstellerunabhängigkeit, Stärkung des Wettbewerbs, offene Standards ...............19<br />

2 Neue Migrationsalternativen ...................................................................................21<br />

3 Integration vorteilhaft herstellen und einsetzen .......................................................23<br />

3.1 Formen und Grade der Integration ...................................................................24<br />

3.2 Integration und Standardisierung ......................................................................26<br />

3.3 Standardisierung und Open Source Software ...................................................27<br />

3.4 Klassifikation der Integrationstiefe ....................................................................27<br />

3.5 Vor- und Nachteile integrierter und standardisierter Lösungen .........................30<br />

3.6 Kriterien zur Beurteilung integrierter Lösungen .................................................33<br />

3.7 Beispiele und Vergleich verbreiteter integrierter Infrastrukturlösungen .............33<br />

3.8 Fazit .................................................................................................................39<br />

B Thema: Rechtliche Aspekte von Softwaremigrationen................................ 41<br />

1 Einleitung ................................................................................................................41<br />

2 Methode..................................................................................................................42<br />

3 Notwendigkeit der Rechtsberatung im Einzelfall .....................................................42<br />

4 Vertragsrecht ..........................................................................................................43<br />

4.1 Einleitung .........................................................................................................43<br />

4.2 Vertragsverhältnisse bei OSS: Vertrag mit Zwischenhändler ............................45<br />

4.3 Vertragsverhältnisse bei OSS: Vertrag mit Rechtsinhabern ..............................47<br />

4.4 Vergleich der Migration zu proprietärer Software und zu OSS ..........................49<br />

5 Urheberrecht ...........................................................................................................51<br />

5.1 Einleitung .........................................................................................................51<br />

5.2 Zulässigkeit von OSS-Lizenzen nach deutschem Urheberrecht .......................51<br />

Seite 11


5.3 Umfang der Rechtseinräumung bei OSS-Lizenzen ..........................................52<br />

5.4 Entgegenstehende Urheberrechte Dritter .........................................................53<br />

5.5 Vergleich der Migration zu proprietärer Software und zu OSS ..........................55<br />

6 Patentrecht .............................................................................................................57<br />

6.1 Einleitung .........................................................................................................57<br />

6.2 Entgegenstehende Patentrechte Dritter bei Nutzung von OSS .........................58<br />

6.3 Vergleich der Migration zu proprietärer Software und zu OSS ..........................59<br />

7 Haftung und Gewährleistung...................................................................................59<br />

7.1 Einleitung .........................................................................................................59<br />

7.2 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei<br />

Überlassungsverträgen ....................................................................................60<br />

7.3 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei Open<br />

Source Lizenzverträgen ....................................................................................63<br />

7.4 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei Erstellung<br />

und Änderung von Freier Software ...................................................................64<br />

7.5 Einsatz von OSS: Außervertragliche Haftung ...................................................65<br />

7.6 Einsatz von OSS: Mitverschulden.....................................................................66<br />

7.7 Vergleich der Migration zu proprietärer Software und zu OSS ..........................66<br />

8 Vergaberecht ..........................................................................................................67<br />

8.1 Allgemeines ......................................................................................................67<br />

8.2 Beschaffung von OSS: Neutrale Ausschreibung ...............................................67<br />

8.3 Beschaffung von OSS: transparente Ausschreibung ........................................69<br />

8.4 Beschaffung von OSS: Vergabeentscheidung ..................................................70<br />

8.5 Vergleich der Migration zu proprietärer Software und zu OSS ..........................71<br />

9 Fazit ........................................................................................................................72<br />

C Thema: Wirtschaftliche Aspekte von Softwaremigrationen ........................ 73<br />

1 Vorwort ...................................................................................................................73<br />

2 Einleitung ................................................................................................................73<br />

3 Methodische Grundsätze ........................................................................................75<br />

3.1 Ziele und Rahmenbedingungen ........................................................................77<br />

3.2 Monetäre Analyse ............................................................................................78<br />

3.3 Grundsätzliche Überlegungen zur Kostenerhebung..........................................78<br />

3.4 Nutzwert-Analyse .............................................................................................83<br />

3.5 Vollkostenansatz ..............................................................................................84<br />

Seite 12


3.6 Vergleichbarkeit................................................................................................84<br />

3.7 Einsatzbereiche ................................................................................................85<br />

4 Analyse der Ausgangssituation ...............................................................................86<br />

4.1 Infrastruktur Server ...........................................................................................87<br />

4.2 Infrastruktur APC ..............................................................................................87<br />

4.3 Infrastruktur Netzwerk ......................................................................................88<br />

4.4 Infrastruktur Druck ............................................................................................89<br />

4.5 Serverdienste ...................................................................................................89<br />

4.6 Standardsoftware .............................................................................................91<br />

4.7 Dokumentvorlagen und Makros ........................................................................91<br />

4.8 IT-Fachverfahren ..............................................................................................93<br />

5 Wirtschaftlichkeit nach WiBe ...................................................................................97<br />

5.1 Vorbemerkung ..................................................................................................97<br />

5.2 Monetäre Wirtschaftlichkeit............................................................................. 103<br />

5.3 Erweiterte Wirtschaftlichkeit............................................................................ 121<br />

6 Fazit ...................................................................................................................... 135<br />

D Thema: Empfehlungen.................................................................................. 137<br />

1 Grundsätzliche Empfehlungen .............................................................................. 137<br />

2 Vorgehensempfehlungen für Migrationsprojekte ................................................... 139<br />

2.1 Vorgehensmodelle ......................................................................................... 142<br />

2.2 Mögliche Auswirkungen der Migrationspfade ................................................. 146<br />

2.3 Checkliste der Erfolgsfaktoren ........................................................................ 147<br />

II. Modul Infrastrukturen .................................................................. 151<br />

A Thema Datenbank-Systeme ......................................................................... 151<br />

1 Produkte / Technologien ....................................................................................... 152<br />

1.1 MySQL ........................................................................................................... 152<br />

1.2 PostgreSQL .................................................................................................... 155<br />

1.3 Firebird ........................................................................................................... 157<br />

1.4 MaxDB ........................................................................................................... 159<br />

1.5 Microsoft SQL Server 7.0/2000/2005 .............................................................. 161<br />

1.6 Oracle ............................................................................................................ 165<br />

1.7 IBM DB2 ......................................................................................................... 167<br />

Seite 13


2 Migrationspfade .................................................................................................... 169<br />

2.1 Die ablösende Migration proprietärer und offener Datenbank-Systeme .......... 172<br />

2.2 Fortführende Migration von Datenbank-Systemen .......................................... 175<br />

B Thema Webserver ......................................................................................... 176<br />

1 Produkte / Technologien ....................................................................................... 176<br />

1.1 Apache HTTP Server ..................................................................................... 176<br />

1.2 Microsoft Internet Information Services (IIS) ................................................... 180<br />

2 Migrationspfade .................................................................................................... 183<br />

2.1 Die ablösende Migration proprietärer und offener Webserver ......................... 184<br />

2.2 Fortführung der Produktlinie von Webservern................................................. 186<br />

3 Bezüge ................................................................................................................. 186<br />

3.1 Dateiablage .................................................................................................... 186<br />

3.2 Netzwerkdienste ............................................................................................. 187<br />

3.3 Authentifizierung ............................................................................................. 187<br />

3.4 Anwendungen ................................................................................................ 187<br />

C Thema Authentisierungs- und Verzeichnisdienste .................................... 189<br />

1 Produkte / Technologien ....................................................................................... 190<br />

1.1 Linux und Samba mit OpenLDAP und Kerberos (MIT/Heimdal) ..................... 190<br />

1.2 Fedora Directory Server (OSS-Lösung mit Multimasterfähigkeit) .................... 198<br />

1.3 Windows NT 4 Server als sogenannter Domänencontroller (DC) ................... 200<br />

1.4 Windows 2000/2003 Server mit Active Directory und Kerberos ...................... 205<br />

2 Migrationspfade .................................................................................................... 214<br />

2.1 Migration von Windows NT DC nach Linux mit OpenLDAP, Samba und<br />

Kerberos......................................................................................................... 215<br />

2.2 Migration von Windows 2000 mit Active Directory nach Linux OpenLDAP,<br />

Samba und Kerberos...................................................................................... 217<br />

2.3 Migration von Linux und OpenLDAP, Samba und Kerberos nach Windows<br />

2003 mit Active Directory ................................................................................ 220<br />

2.4 Migration von Windows NT als DC auf Windows 2003 mit Active Directory .... 221<br />

3 Bezüge ................................................................................................................. 223<br />

3.1 Grundlegende Überlegungen ......................................................................... 223<br />

3.2 Verzeichnisdienst ........................................................................................... 223<br />

D Thema Netzwerkdienste ............................................................................... 225<br />

1 Produkte / Technologien ....................................................................................... 225<br />

Seite 14


1.1 NetBIOS, WINS, DNS und DHCP unter Windows NT/2000/2003 ................... 225<br />

1.2 WINS, DNS und DHCP unter Linux mit Samba .............................................. 233<br />

2 Migrationspfade .................................................................................................... 236<br />

2.1 Migration Netzdienste Windows NT/2000 nach Windows 2003 ...................... 236<br />

2.2 Migration von Windows DNS (BIND 8) nach Linux BIND 9 ............................. 238<br />

2.3 Migration von Windows DHCP nach Linux DHCP .......................................... 239<br />

2.4 WINS/NetBIOS(Windows) nach Samba mit WINS/NMDB .............................. 240<br />

3 Bezüge ................................................................................................................. 240<br />

E Thema Dateiablage ....................................................................................... 241<br />

1 Produkte / Technologien ....................................................................................... 241<br />

1.1 Linux und Samba mit SMB/CIFS und POSIX ................................................. 241<br />

1.2 Linux-Server mit NFS ..................................................................................... 249<br />

1.3 Linux-Server mit OpenAFS ............................................................................. 250<br />

1.4 Windows NT 4.0/2000/2003 mit NTFS ........................................................... 251<br />

2 Migrationspfade .................................................................................................... 263<br />

2.1 Migration von Windows Server NT 4 mit NTFS 4 nach Linux mit Samba<br />

(SMB/CIFS) und POSIX ................................................................................. 265<br />

2.2 Von Windows Server 2000/2003 nach Linux Server (unter Beibehaltung von<br />

Active Directory) ............................................................................................. 266<br />

2.3 Von Linux NFS/OpenAFS nach Windows 2003 NTFS 5 ................................. 267<br />

2.4 Von Windows Server NT4 nach Windows Server2000/2003 .......................... 268<br />

3 Bezüge ................................................................................................................. 269<br />

3.1 Authentifizierungsdienst ................................................................................. 269<br />

F Thema Druckdienste ..................................................................................... 270<br />

1 Produkte / Technologien ....................................................................................... 270<br />

1.1 Allgemeine Betrachtungen ............................................................................. 270<br />

1.2 Common Unix Printing System (CUPS) .......................................................... 275<br />

1.3 Common Unix Printing System (CUPS) mit Samba ........................................ 282<br />

1.4 Windows Print Services .................................................................................. 284<br />

2 Migrationspfade .................................................................................................... 291<br />

2.1 Migration von Windows Print Services nach CUPS in Kombination mit<br />

Samba unter Linux ......................................................................................... 292<br />

2.2 Migration von CUPS in Kombination mit Samba unter Linux nach Windows<br />

Print Services ................................................................................................. 293<br />

Seite 15


2.3 Migration von Windows NT4/2000 Print Services nach Windows 2003 Print<br />

Services ......................................................................................................... 293<br />

3 Bezüge ................................................................................................................. 293<br />

3.1 Systemmanagement und -überwachung ........................................................ 293<br />

3.2 Authentifizierung und Verzeichnisdienste ....................................................... 294<br />

3.3 Netzwerkdienste ............................................................................................. 294<br />

G Thema System-Überwachungs- und -Management-Dienste ..................... 295<br />

1 Produkte / Technologien ....................................................................................... 295<br />

1.1 Systemmanagement mit OSS – Nagios, u.a., Linux ....................................... 297<br />

1.2 Microsoft Systems Management Server (SMS) 2.0/2003 und Microsoft<br />

Operations Manager (MOM) ........................................................................... 301<br />

1.3 HP OpenView ................................................................................................. 304<br />

1.4 IBM Tivoli System-Management ..................................................................... 306<br />

2 Migrationspfade .................................................................................................... 306<br />

2.1 Migration von Tivoli System-Management nach HP Open View ..................... 307<br />

2.2 Migration von proprietärer Systemüberwachungssoftware nach Nagios ......... 308<br />

2.3 Migration von SMS 2.0 nach SMS 2003 ......................................................... 308<br />

3 Bezüge ................................................................................................................. 309<br />

3.1 Netzwerkdienste ............................................................................................. 309<br />

3.2 Webserver ...................................................................................................... 309<br />

III. Modul Anwendungen ................................................................... 310<br />

A Thema Messaging und Groupware .............................................................. 310<br />

1 Produkte / Technologien ....................................................................................... 310<br />

1.1 OpenGroupware.org ....................................................................................... 310<br />

1.2 OpenXchange ................................................................................................ 314<br />

1.3 eGroupWare ................................................................................................... 319<br />

1.4 Zarafa ............................................................................................................. 322<br />

1.5 Kolab .............................................................................................................. 326<br />

1.6 Scalix ............................................................................................................. 331<br />

1.7 Microsoft Exchange Server 2007 .................................................................... 336<br />

1.8 Lotus Notes .................................................................................................... 340<br />

2 Migrationspfade .................................................................................................... 342<br />

2.1 Migration von MS Exchange 5.5/2003 nach Kolab 2....................................... 342<br />

Seite 16


2.2 Migration von Kolab 2 nach MS Exchange 2007 ............................................ 345<br />

2.3 Migration von MS Exchange 5.5 nach MS Exchange 2007 ............................ 346<br />

2.4 Migration von eGroupware nach Lotus Notes 8 .............................................. 348<br />

2.5 Scalix nach eGroupware ................................................................................ 351<br />

3 Bezüge ................................................................................................................. 353<br />

3.1 Webserver und Netzwerkdienste .................................................................... 353<br />

3.2 Authentisierungs- und Verzeichnisdienste ...................................................... 353<br />

3.3 Backend-Integration ....................................................................................... 353<br />

B Thema Teaming-/Workgroup Software........................................................ 354<br />

1 Produkte / Technologien ....................................................................................... 354<br />

1.1 Mindquarry ..................................................................................................... 356<br />

1.2 Microsoft SharePoint Server und –Services ................................................... 363<br />

1.3 O3Spaces Workplace 2 .................................................................................. 384<br />

1.4 Novell Teaming + Conferencing ..................................................................... 391<br />

1.5 Lotus Quickr 8.0 ............................................................................................. 406<br />

C Thema Office / Desktop ................................................................................ 423<br />

1 Produkte / Technologien ....................................................................................... 423<br />

1.1 OpenOffice.org 2 und 1 / StarOffice8 und 7 .................................................... 423<br />

1.2 Microsoft Office 2007/2003/2002/97 ............................................................... 435<br />

2 Migrationspfade .................................................................................................... 451<br />

2.1 Interoperabilität von Officeanwendungen........................................................ 452<br />

2.2 Vorbereitung der Migration ............................................................................. 456<br />

2.3 Migration von MS Office 97 - 2003 nach StarOffice 8/OOo 2 .......................... 459<br />

2.4 Migration von MS Office 97 - 2003 nach MS Office 2007 ............................... 464<br />

2.5 Migration von StarOffice 7/8 u. OOo1/2 nach MS Office 2007 ........................ 467<br />

2.6 Migration von StarOffice 7/OOo1 nach StarOffice 8/OOo2Star ....................... 469<br />

3 Bezüge ................................................................................................................. 472<br />

3.1 Teaming-/Workgroup Software ....................................................................... 472<br />

D Thema Backend-Integration ......................................................................... 473<br />

1 Produkte/Technologien ......................................................................................... 473<br />

1.1 Microsoft .NET-Plattform (COM, DCOM, OLE, ActiveX) ................................. 473<br />

1.2 SUN J2EE-Plattform ....................................................................................... 477<br />

1.3 Object Management Group CORBA ............................................................... 482<br />

Seite 17


2 Migrationspfade .................................................................................................... 483<br />

2.1 Migration einer Anwendung auf Basis .NET nach J2EE ................................. 483<br />

E Thema Terminal-Dienste und Client-Konzepte ........................................... 489<br />

1 Produkte / Technologien ....................................................................................... 493<br />

1.1 Linux Terminal Server Project ........................................................................ 493<br />

1.2 NoMachine NX Server .................................................................................... 494<br />

1.3 Microsoft Windows Terminal Server ............................................................... 496<br />

1.4 Citrix Presentationserver ................................................................................ 498<br />

2 Migrationspfade .................................................................................................... 500<br />

2.1 Migration von Microsoft Windows Terminal Server nach NoMachine NX<br />

Server ............................................................................................................ 503<br />

2.2 Migration von Microsoft Windows Terminal Server 2000 nach Microsoft<br />

Windows Terminal Server 2003 ...................................................................... 505<br />

2.3 Von Microsoft Windows Terminal Server nach Citrix Presentationserver ........ 507<br />

3 Bezüge ................................................................................................................. 509<br />

3.1 Authentifizierungs- und Verzeichnisdienste .................................................... 509<br />

3.2 Netzwerkdienste ............................................................................................. 509<br />

IV. Anhang ...................................................................................... 510<br />

A Abkürzungsverzeichnis ................................................................................ 510<br />

B Glossar ........................................................................................................... 523<br />

C Abbildungsverzeichnis ................................................................................. 530<br />

D Tabellenverzeichnis ...................................................................................... 533<br />

E Anhang –WiBe für Migrationen .................................................................... 536<br />

1 Kriterienkatalog WiBe für Migrationen ................................................................... 536<br />

2 Matrix zur Soft- und Hardware-Kostenermittlung ................................................... 540<br />

3 Rechtsgrundlagen ................................................................................................. 541<br />

Seite 18


I. Modul Querschnittsthemen<br />

A Thema: Strategische Aspekte von Softwaremigrationen<br />

1 Herstellerunabhängigkeit, Stärkung des Wettbewerbs, offene<br />

Standards<br />

Die Migration von Software wird von Organisationen nur durchgeführt, wenn dies durch<br />

äußere wie innere Zwänge nötig wird. Solche Zwänge sind zum Beispiel:<br />

� Äußere Zwänge:<br />

o Die Aufkündigung des Supports für ein bestimmtes Produkt oder eine<br />

Produktversion durch den Hersteller.<br />

o Die Einstellung der Entwicklung eines Open Source-Projektes beziehungsweise<br />

die Aufgabe der Unterstützung für eine bestimmte Softwareversion.<br />

o Die Kompatibilität mit dem neuesten Produkt in Partnerorganisationen<br />

zwingt zum Mitmachen.<br />

� Innere Zwänge:<br />

o Das Fehlen von bestimmten Funktionalitäten.<br />

o Die Notwendigkeit der mittel- bis langfristigen Einsparung von Kosten.<br />

o Die Konsolidierung der IT-Infrastruktur.<br />

Da Migrationen meist auch einen beträchtlichen Kostenaufwand mit sich bringen, vom<br />

Personalaufwand ganz abgesehen, ist wahrscheinlich jede Behörde daran interessiert,<br />

diesen Aufwand weitestgehend zu minimieren. Im Gegensatz zu den äußeren Zwängen<br />

lassen sich innere Zwänge überwiegend selbst steuern, sodass selbst bestimmt werden<br />

kann, ob und wann eine Migration durchgeführt werden soll. Hinsichtlich der äußeren<br />

Anlässe bestehen zunächst einmal weit weniger Möglichkeiten der Einflussnahme. Hier<br />

bestimmen in erster Linie die Software-Hersteller durch ihre Marktpolitik oder die OSS-<br />

Entwickler durch ihre Entscheidungen. Bezüglich der Marktpolitik der Software-Hersteller<br />

bedeutet dies, dass man sich von dieser Politik, die in der Regel alle paar Jahre eine<br />

neue <strong>Version</strong> einer Software auf den Markt bringt und kurz darauf den Support für die<br />

alte <strong>Version</strong> aufkündigt, nur dann nicht fremdbestimmen lassen muss, wenn man von<br />

dem Hersteller so weit wie möglich unabhängig ist. Open Source Projekte sind dagegen<br />

nicht davon geprägt in kurzen regelmäßigen Abständen grundlegend neue <strong>Version</strong>en<br />

einer Software zu veröffentlichen und gleichzeitig die Unterstützung alter <strong>Version</strong>en einzustellen.<br />

Daher ist die Aufgabe von OSS-Projekten ein eher selten anzutreffender äußerer<br />

Zwang für Migrationen. Darüber hinaus ist durch die Offenheit auch gleichzeitig ein<br />

großes Maß an Unabhängigkeit gegeben, denn es besteht jederzeit die Möglichkeit einen<br />

geeigneten Dienstleister mit entsprechenden Supportleistungen zu beauftragen.<br />

Damit wird deutlich, dass es sich hierbei nicht um ein Ad-hoc-Problem, sondern um ein<br />

langfristiges strategisches Problem handelt, welches angegangen werden muss. Das<br />

Seite 19


Ziel für die Behörden muss die Unabhängigkeit von Herstellern und die Stärkung des<br />

Wettbewerbs sein, um damit langfristig Auswahlmöglichkeiten und Wahlfreiheiten zu<br />

erhöhen und die Anzahl der Migrationen zu reduzieren sowie gleichzeitig Kosten und<br />

Aufwand zu einzusparen.<br />

Durch die Minimierung der Fremdbestimmung wird gegebenenfalls erreicht, dass die<br />

Anzahl und Häufigkeit der Migrationen abnimmt, dennoch wird es von außen bestimmte<br />

Migrationen sicherlich auch künftig geben. Damit stellt sich die zweite Frage: Wie lassen<br />

sich die Migrationskosten einzelner Migrationsprojekte reduzieren?<br />

Migrationen sind vor allem davon geprägt, vorhandene Informationen (Daten, Dokumente<br />

usw.) sowie automatisierte Prozesse und Strukturen in die neue Umgebung zu überführen,<br />

um sie dort mit den benötigten Funktionen weiterverarbeiten und -verwenden zu<br />

können. Darüber hinaus stellt sich immer wieder die Frage, insbesondere bei punktuellen<br />

Migrationen oder der Durchführung von stufenweisen Migrationen: Wie fügen sich<br />

die migrierten Systeme in die bestehende IT-Landschaft ein? Sind sie kompatibel und<br />

interoperabel mit den vorhandenen Systemen?<br />

Je einfacher die Übernahme von vorhandenen Informationen, Prozessen und Strukturen<br />

ist, desto geringer sind die Kosten für eine Migration. Je einfacher es ist, vorhandene<br />

Software durch andere zu ersetzen und in vorhandene Systemlandschaften zu integrieren,<br />

desto stärker ist der Wettbewerb zwischen den Anbietern am Markt. Dies beeinflusst<br />

wiederum die Preise für Software, deren Wartung und den Support positiv für die<br />

Nutzer und hilft damit die Kosten weiter zu reduzieren.<br />

Offenheit ist ein wesentlicher Faktor, um zum Beispiel mit minimalem Aufwand<br />

Informationen von A nach B zu überführen und Software in bestehende Systemlandschaften<br />

zu integrieren. Wenn bekannt ist, wie Informationen abgelegt werden, dann<br />

lassen sie sich auch ohne größere Probleme überführen. Wenn Schnittstellen und ihre<br />

Funktionen bekannt sind, dann lassen sich entsprechende Schnittstellen finden oder<br />

implementieren, um neue Software zu integrieren.<br />

Offenheit allein reicht aber nicht aus, denn nur mit Offenheit lässt sich noch keine Interoperabilität<br />

schaffen. Ein weiterer wesentlicher Faktor ist die Verwendung von Standards<br />

für Schnittstellen und für die Ablage von Informationen. Die Kombination von beiden<br />

Faktoren ist die beste Voraussetzung für die Schaffung von Interoperabilität und Kompatibilität<br />

zwischen allen Softwaresystemen einer IT-Landschaft. Darüber hinaus führt sie<br />

zur deutlichen Reduzierung von Kosten, der Stärkung des Wettbewerbs und damit zur<br />

Verbesserung der Herstellerunabhängigkeit.<br />

Der Begriff eines „offenen Standards― ist schillernd und wird teilweise zum inhaltsleeren<br />

Marketinglabel degradiert. Beispiele für konstruktive und aussagekräftige Definitionen<br />

finden sich im European Interoperability Framework (EIF) 8 , im Initiativpapier der Bundesregierung<br />

für den Einsatz offener Dokumentenformate 9 oder den Mindestanforderungen<br />

bezüglich der Offenheit von Standards, wie sie in SAGA 10 definiert sind. Diese Mindest-<br />

8 siehe http://ec.europa.eu/idabc/en/document/3761/5583<br />

9 siehe http://www.kbst.bund.de<br />

10 Siehe SAGA 4.0, Kapitel 2.2, Seite 20 unter www.kbst.bund.de<br />

Seite 20


anforderungen bezüglich der Offenheit von Standards sind in SAGA aus Sicht der Bundesverwaltung<br />

folgendermaßen definiert:<br />

� Der Standard wurde veröffentlicht und die Dokumentation der Standardspezifikation<br />

ist entweder kostenlos oder maximal gegen eine Schutzgebühr erhältlich.<br />

� Das geistige Eigentum (beispielsweise in Form von Patenten) am Standard oder<br />

an Teilen des Standards ist möglichst lizenzkostenfrei zugänglich.<br />

� Die Verwendung des Standards ist für die Bundesverwaltung und die Nutzer ihrer<br />

Dienstleistungen uneingeschränkt möglich.<br />

� Der Standard muss auch in Zukunft veröffentlicht und frei nutzbar bleiben.<br />

Übergreifend werden in fast allen Definitionen prinzipiell ähnliche Anforderungen an<br />

Standards gestellt, damit sie als offen eingestuft werden können.<br />

Unbestritten ist dabei, je weniger Einschränkungen für die Nutzung dieses Standards<br />

bestehen (z.B. durch Lizenzkosten), desto einfacher ist seine Nutzbarkeit und desto größer<br />

ist seine Verbreitung. Erst hieraus kann ein funktionierender Wettbewerb bei gleichzeitig<br />

größtmöglicher Interoperabilität verschiedener, auf diesem Standard basierender<br />

Lösungen entstehen.<br />

Der Einsatz wirklich offener Standards muss ebenso wie die Herstellerunabhängigkeit<br />

und die Stärkung des Wettbewerbs ein strategisches Ziel der Behörden sein. Das bedeutet:<br />

Um langfristig eine Verbesserung der heutigen Situation hinsichtlich der Häufigkeit<br />

von Migrationen und der damit verbundenen hohen Kosten herbeizuführen, sollten<br />

die Behörden die vorgenannten Ziele in ihre IT-Strategie aufnehmen und auch durchsetzen,<br />

insbesondere ist es wichtig die wirklich offenen Standards zu verwenden, da diese<br />

eine gewichtige Grundlage für die Umsetzung der anderen Ziele sind.<br />

2 Neue Migrationsalternativen<br />

Lag die Notwendigkeit einer Migration vor, wurde bisher die Frage gestellt, wie ein<br />

vorhandenes Softwareprodukt durch ein anderes, aber ähnliches Softwareprodukt<br />

ersetzt werden kann. Wie kann man zum Beispiel den einen Fileserver durch einen<br />

anderen Fileserver oder eine vorhandene Textverarbeitung durch eine andere<br />

Textverarbeitung ersetzen � günstigerweise durch eine Alternative mit offenen, standardisierten<br />

Schnittstellen und Datenformaten? Diese Sichtweise hat auch der<br />

<strong>Migrationsleitfaden</strong> aufgegriffen und die Migrationsalternativen diesbezüglich betrachtet.<br />

Migrationen von Softwarelösungen innerhalb derselben Lösungsgattung sind der Standardfall<br />

der Migration. Der <strong>Migrationsleitfaden</strong> hilft bei der Entscheidung darüber, wohin<br />

solche Migrationen führen und wie sie gestaltet werden sollen. Damit wird jedoch nicht<br />

gesagt, dass die Entscheidung für eine Migration innerhalb einer Lösungsgattung immer<br />

unausweichlich ist.<br />

Derzeit finden zwei Entwicklungen statt, die sich zwar außerhalb des Themas des<br />

<strong>Migrationsleitfaden</strong>s befinden, aber immer größeren Einfluss auf Migrationsentscheidungen<br />

gewinnen werden und damit auch auf die Anwendung des <strong>Migrationsleitfaden</strong>s.<br />

Seite 21


Zum einen entstehen neue Technologien, neue Verwendungsweisen von Technologien<br />

und neue Nutzungsmuster, die in innovative Lösungen münden. 11 Die meisten dieser<br />

Nutzungsmuster sind kollaborativ und erobern sich ― beispielsweise in Gestalt von<br />

Wikis ― ihren Platz im Werkzeug-Repertoire auch großer und traditionsreicher Organisationen.<br />

Die andere Entwicklung ist der grundlegende Wandel im Selbstverständnis der öffentlichen<br />

Verwaltung, der durch den Begriff E-Gouvernement beschrieben wird, und der unter<br />

anderem darauf abzielt, Prozesseffizienz und Kundenorientierung maßgeblich durch<br />

Prozessautomatisierung zu steigern.<br />

Aus beiden Entwicklungen zusammen ergibt sich die neue Leitfrage, die Migrationsentscheidungen<br />

künftig immer stärker prägen wird: Ist eine Migration innerhalb der<br />

Lösungsgattung überhaupt der richtige Schritt? Sind die fraglichen Lösungen und ihre<br />

Anwendung gemessen am Markt der Lösungen und an den Zielen des IT-Einsatzes<br />

überhaupt noch auf der Höhe der Zeit?<br />

Zur Illustration dieser Überlegung können Textverarbeitungs-Anwendungen dienen. Sie<br />

wurden in einer Behörde beispielsweise in den späten 80er Jahren eingeführt und seither<br />

von Produkt-Generation zu Produkt-Generation migriert, verbunden mit einem stetigen<br />

Anwachsen des Leistungsvermögens. Damit einher ging die Entwicklung der (proprietären)<br />

Dateiformate, und aus deren Verbreitung ergab sich ursächlich die Notwendigkeit<br />

zur Migration.<br />

Ein tieferer Blick auf den tatsächlichen Gebrauch dieser Anwendungen dürfte in vielen<br />

Fällen zwei Einsichten gewähren:<br />

Erstens sind die Leistungsmerkmale der Anwendungen, die heute tatsächlich regelmäßig<br />

genutzt werden, immer noch dieselben wie in den 80er Jahren, und dort, wo weitere<br />

eingesetzt werden, stiften sie wenig Nutzen, aber viele Interoperabilitäts- und Migrationsprobleme.<br />

Zweitens orientieren sich die Prozesse, die mithilfe dieser Anwendungen ausgeführt<br />

werden, immer noch an ihren papierbasierten Vorbildern. Das ist nicht verwunderlich,<br />

gerade im Fall von Textverarbeitungen. Historisch verstehen sie sich schließlich als<br />

elektronifizierte Schreibmaschine und ihr unreflektierter Gebrauch führt zu (streckenweise)<br />

elektronifizierten Papierprozessen. Das Optimierungs- und<br />

Automatisierungspotenzial der Prozesse bleibt auf diese Weise unerschlossen.<br />

Die Frage nach der Optimierbarkeit des Portfolios von IT-Lösungen und ihres Einsatzes<br />

wird sich künftig immer intensiver stellen, ausgelöst vielleicht durch Migrationszwänge.<br />

Beantwortet werden muss sie jedoch im Vorfeld der Migrationsentscheidung. Eine<br />

solche Optimierungsentscheidung könnte sein, nicht mehr (oder nicht nur) einen<br />

existierenden Dateidienst aufzurüsten, da dieser ohnehin nur dazu verwendet wird, elektronifizierte<br />

Papierprozesse zu unterstützen. Stattdessen (oder ergänzend) sollen Kollaborationslösungen,<br />

Dokumentenmanagement- oder sogar Workflow-Systeme eingeführt<br />

werden.<br />

11 Viele dieser Entwicklungen werden häufig unter dem Stichwort „Web 2.0" zusammenge-<br />

fasst.<br />

Seite 22


Die Einführung von Workflow-Systemen könnte zur Folge haben, dass anstelle von<br />

Textverarbeitungen ― den elektronifizierten Schreibmaschinen ― Maskenwerkzeuge<br />

eingesetzt werden. Daten würden dann in klar geordneten Strukturen („Datensätze―)<br />

gespeichert und nicht in den Formatierungsinformationen eines Dokumentes vergraben<br />

werden. Der kontinuierliche Leistungszuwachs beispielsweise der<br />

Formatierungsmöglichkeiten von Textverarbeitungen würde dadurch unerheblich für das<br />

Funktionieren des Geschäftsprozesses, und ein wiederkehrender Migrationsgrund würde<br />

aus der Perspektive des Prozesses ganz einfach entfallen.<br />

Das Thema Textverarbeitung ist in diesem Kontext sicherlich nur eine Facette, die zu<br />

betrachten wäre. Sie zeigt aber deutlich, dass zur Vermeidung von Migrationszwängen<br />

nicht nur die Verwendung offener und standardisierter Schnittstellen und Datenformate<br />

beitragen kann, sondern auch ein kritischer Blick auf die Entwicklung im IT-Lösungsmarkt<br />

und die eigenen Geschäftsprozesse. Wie schon die Durchsetzung offener<br />

Standards ist auch diese Betrachtung eine strategische Aufgabe. Gelingt ihre Bewältigung,<br />

dann werden Migrationen künftig weniger häufig und weniger umfangreich.<br />

Betrachtet man die zuvor beschriebenen Ideen im Zusammenhang mit den Entwicklungen<br />

am IT-Lösungsmarkt für Kollaborationslösungen, dann wird sogar deutlich, dass es<br />

sich hierbei keinesfalls um Utopien handelt, sondern dass auch die Hersteller diese Möglichkeiten<br />

entdeckt haben und ansatzweise schon versuchen, diese in ihre Lösungen<br />

aufzunehmen. Der Begriff Dokument bekommt hier eine zum Teil neue Bedeutung, da er<br />

nicht mehr immer gleich mit Datei zu setzen ist, wie bei den klassischen Office-Suiten.<br />

Gerade für die Zusammenarbeit mit externen Partnern (andere Behörden, Unternehmen)<br />

zeigen sich hierfür neue Modelle, für die es sich lohnt, sie näher zu betrachten, wenn<br />

man darüber nachdenkt, für die externe wie interne Zusammenarbeit gemeinsame und<br />

einheitliche Prozesse zu schaffen, wie sie zum Beispiel die E-Gouvernmentstrategie des<br />

Bundes vorsieht.<br />

Der <strong>Migrationsleitfaden</strong> wird in der Zukunft diese Entwicklungen genau betrachten und<br />

die sich daraus ergebenden alternativen Migrationsziele aufzeigen.<br />

3 Integration vorteilhaft herstellen und einsetzen<br />

Eine der zentralen Aufgaben beim Betrieb von Informationstechnologie besteht darin, die<br />

verschiedenen, aus Soft- oder Hardware bestehenden Komponenten einer Umgebung<br />

miteinander zu integrieren.<br />

Betriebs- oder Virtualisierungssysteme müssen mit Hardwarekomponenten integriert<br />

werden, wozu in der Regel Treiber installiert oder konfiguriert werden müssen. Anwendungen<br />

müssen gemeinsam mit anderen Anwendungen in Betriebssystemumgebungen<br />

integriert werden, darüber hinaus müssen sie sich in der Regel in Softwareverteilungs-<br />

oder Systemmanagementlösungen einfügen. Server- und Clientanwendungen müssen<br />

Benutzer authentifizieren und autorisieren, wozu sie mit Identity-Management-Systemen<br />

integriert werden müssen. Spätestens nach der Autorisierung greifen die meisten Anwendungen<br />

auf Daten zu, wozu sie mit Datenbanksystemen, Servern (welche Datenablagen<br />

oder andere Anwendungen bereitstellen) integriert werden müssen. Diese Liste<br />

ließe sich nach Belieben fortsetzen.<br />

Seite 23


Ab einer gewissen Größe einer IT-Infrastruktur ist dieser Integrationsprozess ein kontinuierlicher<br />

Vorgang, da Hard- oder Softwarekomponenten ständig erneuert, erweitert,<br />

konsolidiert oder an neue Rahmenbedingungen oder Anforderungen angepasst werden<br />

müssen.<br />

Die ständige Integration von IT-Komponenten ist in der Regel ein aufwendiger und natürlich<br />

immer wieder mit Risiken verbundener Prozess. Aus diesem Grund bietet es sich auf<br />

den ersten Blick an, vermehrt solche Komponenten einzusetzen, die mit anderen Komponenten<br />

bereits integriert oder einfach integrierbar sind, um dadurch Kosten zu sparen,<br />

Risiken zu minimieren oder sogar Mehrwerte hinsichtlich der Funktionalität und Leistungsfähigkeit<br />

der Gesamtsysteme zu erreichen.<br />

Am Markt besteht dazu gelegentlich die Auffassung, die verschiedenen Softwareprodukte<br />

und Komponenten von proprietärer Software würden untereinander einen höheren<br />

Grad an Integration aufweisen, während die im Umfeld der verfügbaren Open Source<br />

Produkte und Komponenten tendenziell aufwendiger und oft noch manuell miteinander<br />

integriert werden müssten. Dieser so angenommene, höhere Integrationsgrad im Bereich<br />

der proprietären Software würde dann letztlich zu einer höheren Wirtschaftlichkeit<br />

bei ihrer Verwendung führen.<br />

Dieses Kapitel beschäftigt sich damit, ob und unter welchen Bedingungen integrierte<br />

Lösungen vorteilhaft sind beziehungsweise sein können. Nach einer allgemeinen Betrachtung<br />

dieser Thematik erfolgt am Ende ein beispielhafter Vergleich von drei unterschiedlichen<br />

Lösungen.<br />

3.1 Formen und Grade der Integration<br />

Unter Integration werden im Zusammenhang mit IT-Infrastruktur eine Reihe unterschiedlicher<br />

Dinge verstanden, sodass hier zunächst der Versuche der Kategorisierung unternommen<br />

werden soll.<br />

Konfigurationsintegration<br />

Eine einfache Form von Integration besteht in der Bildung kombinierter Softwarepakete,<br />

bei denen die enthaltenen Komponenten gemeinsam installiert und während der Installation<br />

automatisch für das optimale Funktionieren miteinander konfiguriert werden. Solche<br />

kombinierten Pakete findet man zum Beispiel oft im Bereich der Softwareappliances.<br />

Der Anwender erhält damit ein „out-of-the-box― funktionierendes System mit einem definierten<br />

Satz an Eigenschaften, ohne dass er die Details von Konfiguration und Implementierung<br />

der einzelnen Komponenten kennen muss. Im Fall einer ausschließlich im<br />

Bereich der Konfiguration realisierten Integration unterscheiden sich die enthaltenen<br />

Komponenten dabei nicht von denen, die auch separat erhältlich, installierbar und manuell<br />

für das korrekte Miteinander konfiguriert werden können. Diese Form der Integration<br />

erspart im Wesentlichen Aufwände bei Konfiguration und Implementierung, ohne die<br />

Flexibilität der einzelnen Komponenten oder des Gesamtsystems einzuschränken.<br />

Administrationsintegration<br />

Systeme, die aus miteinander integrierten Softwarekomponenten bestehen, müssen in<br />

der Regel mithilfe einer Reihe von Parametern konfiguriert werden können. Das Ändern<br />

eines bestimmten Parameters betrifft dabei oft mehrere der integrierten Komponenten.<br />

Seite 24


Die Integration von Programmen, Diensten oder Softwarekomponenten über Mechanismen,<br />

die sicherstellen, dass die administrative Beeinflussung von Konfigurationsparametern<br />

die Integrität des Gesamtsystems nicht stört und alle relevanten Komponenten<br />

entsprechende rekonfiguriert werden, wird hier als „Administrationsintegration― bezeichnet.<br />

Funktionsintegration<br />

Eine weitere Form der Integration besteht in der Verwendung von Funktionen eines<br />

Programms oder einer Softwarekomponente durch ein anderes Programm beziehungsweise<br />

eine andere Softwarekomponente. Ein bekanntes Beispiel dafür sind die aus<br />

dem Bereich von Office-Paketen bekannten OLE-Verknüpfungen, mit denen Funktionen<br />

zum Rechnen mit Tabellen beispielsweise von einem Tabellenkalkulationsprogramm<br />

bereitgestellt und die innerhalb eines Textverarbeitungsprogramms dargestellt werden<br />

können. Zur Funktionsintegration gehört aber auch die Bereitstellung bestimmter, von<br />

vielen verschiedenen Programmen benötigter Funktionen, zum Beispiel zum Zugriff auf<br />

das Internet oder zur Durchführung mathematischer Operationen. Die Integration auf<br />

dieser Ebene ist deswegen oft durch das Vorhandensein von Programmbibliotheken<br />

gekennzeichnet, die von vielen unterschiedlichen Anwendungen genutzt werden.<br />

Datenintegration<br />

Die letzte hier genannte Form der Integration ist die Datenintegration. Dabei greifen<br />

mehrere Anwendungen oder Dienste auf die (physikalisch) selben Daten zu, wodurch<br />

Redundanzen vermieden werden sollen. Voraussetzung für die Datenintegration ist die<br />

gemeinsame Verwendung eines einheitlichen Datenmodells durch alle beteiligten Komponenten<br />

sowie die Benutzung definierter Mechanismen zum Zugriff auf die Daten, um<br />

Inkonsistenzen etwa durch zeitgleichen Zugriff von zwei Anwendungen zu vermeiden.<br />

Diese Mechanismen werden in der Regel durch Funktionsintegration einheitlich zur Verfügung<br />

gestellt.<br />

Beispiele für Datenintegration im Bereich der IT-Infrastruktur sind zum Beispiel Identity-<br />

und Infrastrukturmanagementsysteme, die an zentraler Stelle Informationen beispielsweise<br />

über Benutzer, deren Rechte und Rollen oder Systeme und deren Konfiguration<br />

bereithalten. Betriebssysteme und Anwendungen greifen auf diese Daten über definierte<br />

Schnittstellen und Protokolle zu, um beispielsweise die Rechte eines Benutzers mit bestimmten<br />

Anwendungen und Daten festzustellen.<br />

In der Praxis findet man meistens Komponenten, die mithilfe unterschiedlicher Integrationsmethoden<br />

miteinander integriert sind. Am Beispiel der Integration des Mail- und Kalenderdienstes<br />

Microsoft Exchange mit Active Directory lässt sich dies gut zeigen:<br />

� Hier wird Datenintegration verwendet, sodass Windows-Anmeldedienst und der<br />

Mailserver zum Beispiel dieselben Benutzerdaten und Credentials verwenden.<br />

� Funktionsintegration stellt über das Verwenden derselben Programmbibliotheken<br />

durch alle miteinander integrierten Komponenten sicher, dass auf die entsprechenden<br />

Daten immer über dieselben Mechanismen und Protokolle zugegriffen<br />

wird und es so zu keinen Inkonsistenzen kommt.<br />

� Mit Methoden der Administrationsintegration werden die einzelnen Dienste aus<br />

Sicht von Administratoren miteinander verknüpft, Administratoren können in der<br />

Seite 25


Folge beim Anlegen eines neuen (Windows-) Benutzers auch gleich dessen<br />

Mailkontoeinstellungen festlegen, ohne dazu eine andere Applikation bemühen<br />

zu müssen.<br />

� Schließlich verwenden die einzelnen Komponenten die gleichen Installations-<br />

und Konfigurationsmethoden (wie zum Beispiel die Windows Registry und darauf<br />

aufbauende Werkzeuge), sodass während der Installation eine aufeinander abgestimmte<br />

Konfiguration sichergestellt werden kann.<br />

3.2 Integration und Standardisierung<br />

Jede Form der Integration erfordert Schnittstellen, welche die Kommunikation der<br />

beteiligten Komponenten miteinander ermöglichen. Bei der Konfigurationsintegration<br />

werden Programme zur optimalen Funktionsweise miteinander eingerichtet, wobei das<br />

gemeinsame Funktionieren ohne Schnittstellen zur Kommunikation der Anwendungen<br />

miteinander nicht möglich wäre. Bei der Administrationsintegration sorgen Systeme, die<br />

der Konfiguration der einzelnen Komponenten übergeordnet sind oder gemeinsam<br />

genutzte Schnittstellen für die Abstimmung der Konfigurationen mit festgelegten<br />

Parametern sowie für die Sicherstellung der Integrität des Gesamtsystems. Schließlich<br />

werden bei Funktions- und Datenintegration Schnittstellen und Protokolle benötigt, um<br />

auf Daten oder Funktionen zuzugreifen.<br />

Schnittstellen und Kommunikation bilden die Grundlage jeder Integration, allerdings beinhaltet<br />

der Begriff der Integration keine Aussage darüber, in wie weit die Komponenten<br />

einer integrierten Umgebung standardisierte Schnittstellen und standardisierte Protokolle<br />

zur Kommunikation miteinander benutzen.<br />

Als standardisiert kann man Schnittstellen oder Protokolle u.a. dann bezeichnen, wenn<br />

sie in einer öffentlich zugänglichen Dokumentation beschrieben sind und diese Beschreibung<br />

auf einem Konsens der daran interessierten Parteien beruht. Ein wesentlicher<br />

Nutzen standardisierter Protokolle und Schnittstellen besteht darin, dass sie von<br />

unterschiedlichen Herstellern verschiedener Komponenten genutzt werden können, ohne<br />

dass sich dabei ein Hersteller von einem anderen, der die entsprechenden Protokolle<br />

oder Schnittstellen in seinen Komponenten verwendet, in einem für ihn gefährlichen Maß<br />

abhängig machen würde.<br />

Bei der Verwendung proprietärer, nicht offen gelegter Schnittstellen besteht auch für<br />

Anwender stets die Gefahr, dass diese von Anwendungen Dritter nicht genutzt werden<br />

können oder sich im Rahmen von Updates oder neuen <strong>Version</strong>en bestimmter Komponenten<br />

ändern. Durch die Verwendung standardisierter Protokolle und Schnittstellen bei<br />

der Integration von Softwarekomponenten kann dieses Risiko erheblich minimiert werden<br />

und es entsteht für die Betreiber von IT-Infrastruktur eine höhere Sicherheit.<br />

Standardisierung ist weitgehend unabhängig von Integration. Integrierte Lösungen können<br />

ausschließlich standardisierte Protokolle und Schnittstellen, aber genauso gut auch<br />

proprietäre und undokumentierte Kommunikationswege verwenden. Miteinander wenig<br />

oder nicht integrierte Anwendungen sind für die Kommunikation miteinander oder den<br />

Datenaustausch untereinander in der Regel auf eine herstellerübergreifende Definition<br />

der verwendeten Schnittstellen und Protokolle angewiesen, da diese sonst kaum unab-<br />

Seite 26


hängig voneinander und über mehrere <strong>Version</strong>en der entsprechenden Programme hinweg<br />

gepflegt werden könnten.<br />

3.3 Standardisierung und Open Source Software<br />

Standardisierungsprozesse weisen verschiedene Parallelen zu häufig verwendeten Entwicklungsmodellen<br />

von Open Source Software auf. Insbesondere alle Open Source Projekte,<br />

die es auf die Mitwirkung einer Community abgesehen haben, veröffentlichen den<br />

Programmcode schnell, regelmäßig und versuchen, Entscheidungs- und Diskussionsprozesse<br />

in einer Öffentlichkeit „derer, die daran Interesse haben― zu halten. Dies ist<br />

vergleichbar mit Standardisierungsverfahren, bei denen der Standard selbst beziehungsweise<br />

die während seiner Entwicklung diskutierten Entwürfe einer (Fach-) Öffentlichkeit<br />

verfügbar gemacht und von dieser diskutiert werden.<br />

Hierin besteht allerdings kein Automatismus. Open Source Lizenzierung bedeutet nicht<br />

zwangsläufig, dass der Quellcode einer Anwendung einer breiten Öffentlichkeit verfügbar<br />

gemacht oder dass über seine Weiterentwicklung in einer Öffentlichkeit diskutiert<br />

werden muss.<br />

Der Anwender einer unter Open Source Lizenz stehenden Software erhält damit allerdings<br />

immer das Recht, den zugehörigen Quellcode zu lesen, wodurch er zumindest<br />

eine Form einer lückenlosen Beschreibung der von dieser Software verwendeten Protokolle<br />

und Schnittstellen erhält. Gegenüber proprietärer Software ist er damit besser gestellt,<br />

weil ihn der Quellcode in die Lage versetzt, die entsprechenden Schnittstellen zu<br />

verwenden und er seine Open Source Applikation sogar verändern kann, beispielsweise<br />

um die Interoperabilität mit anderen Anwendungen sicher zu stellen.<br />

Mit Open Source Software ist im Hinblick auf verwendete Protokolle und Schnittstellen<br />

ein Aspekt von Standardisierung immer sichergestellt, nämlich die Verfügbarkeit einer<br />

Beschreibung für den Lizenznehmer. Viele Open Source Projekte bemühen sich darüber<br />

hinaus um die auch im Rahmen von Standardisierung wichtige öffentliche Diskussion<br />

und Entwicklung. Trotzdem müssen Open Source und Standardisierung voneinander<br />

abgegrenzt bleiben, insbesondere weil Standards auch von proprietärer Software implementiert<br />

werden können und Open Source Lizenzen nicht gleichbedeutend mit allgemeiner<br />

Veröffentlichung des Quellcodes und öffentlichem Entwicklungs- und Entscheidungsmodell<br />

sind.<br />

3.4 Klassifikation der Integrationstiefe<br />

Um den Integrationsgrad von Softwarekomponenten und die damit verbundenen Vor-<br />

und Nachteile zu beurteilen, soll die mögliche Tiefe der Integration von Komponenten<br />

hier in vier Stufen (keine, leichte, mittlere und hohe) eingeteilt werden.<br />

Mit der Integrationstiefe steigt in der Regel die Herstellerabhängigkeit, sodass darauf bei<br />

der Beschreibung der vier Stufen eingegangen wird.<br />

3.4.1 Keine Integration<br />

Keine Integration liegt dann vor, wenn die betroffenen Programme oder Komponenten<br />

unabhängig voneinander installiert und (sinnvoll) unabhängig voneinander betrieben<br />

werden können. Dabei benutzen sie keine funktionalen Bestandteile der übrigen Kom-<br />

Seite 27


ponenten und greifen nicht auf die Daten der anderen zu. Die Kommunikation der betroffenen<br />

Bestandteile untereinander erfolgt über öffentlich dokumentierte Schnittstellen, die<br />

im Idealfall standardisiert sind. In der Regel müssen die Komponenten manuell konfiguriert<br />

und aufeinander abgestimmt werden.<br />

Die Herstellerabhängigkeit ist bei der Verwendung eines Systems nicht miteinander integrierter<br />

Komponenten naturgemäß sehr gering. Gleichzeitig müssen in der Regel vergleichsweise<br />

hohe Aufwände in die manuelle Integration beziehungsweise die parallele<br />

Pflege und Administration nicht miteinander integrierter Komponenten gesteckt werden.<br />

3.4.2 Leichte Integration<br />

Bei einer leichten Integration sind die betroffenen Programme ebenfalls unabhängig voneinander<br />

installier- und betreibbar. Sie sind jedoch auf eine oder mehrere der folgenden<br />

Arten miteinander integriert:<br />

� Konfigurationsintegration:<br />

Die Komponenten können automatisiert gemeinsam installiert werden und sind<br />

dann bereits automatisch gut aufeinander abgestimmt, dabei werden jedoch nur<br />

die öffentlich dokumentierten und von jedermann benutzbaren Konfigurationsschnittellen<br />

und -parameter der einzelnen Komponenten genutzt.<br />

� Administrationskonfiguration:<br />

Die Komponenten können über ein gemeinsames oder übergeordnetes System<br />

verwaltet werden, wobei jede Komponente weiterhin auch unabhängig von den<br />

übrigen administrierbar bleibt.<br />

� Funktionsintegration:<br />

Die Komponenten können Funktionen anderer Komponenten benutzen, wenn<br />

diese in der Umgebung vorhanden sind. Sie bleiben ohne die anderen Komponenten<br />

jedoch voll funktionsfähig und sind nicht zwingend darauf angewiesen.<br />

� Datenintegration:<br />

Die Komponenten können bestimmte, von anderen Anwendungen verwaltete Daten<br />

nutzen und greifen über dokumentierte Schnittstellen und Protokolle darauf<br />

zu oder stellen selbst anderen Anwendungen Daten über eigene Schnittstellen<br />

und Protokolle zur Verfügung. Sie sind auf das Vorhandensein der anderen Programme<br />

jedoch nicht angewiesen und können alle wesentlichen Daten auch selbst<br />

verwalten.<br />

Hinsichtlich der Herstellerabhängigkeit stellt die leichte Integration den Anwender nicht<br />

schlechter als die Verwendung nicht miteinander integrierter Komponenten. Er erwirbt<br />

durch die leichte Integration zwar die mit der Integration verbundenen Vorteile (s.u.)<br />

kann aber jederzeit auch andere, nicht integrierte Komponenten verwenden, wobei er<br />

dann die für nicht integrierte Komponenten typischen Aufwände zu tragen hat.<br />

3.4.3 Mittlere Integration<br />

Von einer mittleren Integration spricht man, wenn bestimmte Komponenten des Gesamtsystems<br />

mit anderen so eng verbunden sind, dass wesentliche Funktionen gar nicht<br />

oder nur mit erheblichem Aufwand bereitgestellt werden können, wenn die entsprechenden<br />

Komponenten fehlen oder durch andere mit vergleichbarer Funktion aber fehlender<br />

Seite 28


Integration mit dem Gesamtsystem ersetzt werden sollen. Im Bezug auf die genannten<br />

vier Integrationsarten bedeutet das:<br />

� Konfigurationsintegration:<br />

Die Konfiguration der Komponenten setzt das Vorhandensein der anderen Komponenten<br />

voraus und muss angepasst werden, falls bestimmte Komponenten<br />

nicht vorhanden oder durch andere ersetzt werden sollen.<br />

� Administrationsintegration:<br />

Für eine einfache Administration setzen die Komponenten das Vorhandensein<br />

bestimmter Administrationssysteme voraus. Wenn diese fehlen oder andere Systeme<br />

genutzt werden sollen, müssen die entsprechenden Komponenten aufwendig<br />

manuell administriert oder an die Alternativsysteme angepasst werden.<br />

� Funktionsintegration:<br />

Die Komponenten verwenden auch in wesentlichen Bereichen Funktionen und<br />

Bestandteile der übrigen Komponenten. Der Betrieb der Einzelbestandteile und<br />

die Verwendung alternativer Komponenten, welche ähnliche Funktionen zur Verfügung<br />

stellen, ist technisch zwar möglich, jedoch mit hohem Aufwand verbunden.<br />

� Datenintegration:<br />

Wo immer sinnvoll, greifen die Komponenten auf Daten zu, die von anderen<br />

Komponenten verwaltet werden. Auch hier gilt, dass der alleinstehende Betrieb<br />

der Komponenten, beziehungsweise die Bereitstellung der benötigten Daten über<br />

andere Komponenten zwar möglich, aber deutlich aufwendiger als der Betrieb<br />

der integrierten Variante ist.<br />

Aus dieser Integrationstiefe entsteht eine gewisse Herstellerabhängigkeit, weil es für den<br />

Anwender vergleichsweise aufwendig ist, Komponenten der integrierten Lösung durch<br />

andere zu ersetzen.<br />

3.4.4 Hohe Integration<br />

Bei einer hohen Integration fällt es oft schwer, die einzelnen Komponenten überhaupt<br />

noch als auch separat voneinander oder mit anderen, alternativen Bestandteilen nutzbare<br />

Programme oder Systeme zu erkennen. Die Komponenten werden in der Regel gemeinsam<br />

installiert und administriert, das Herauslösen einer Komponente birgt stets die<br />

Gefahr, dass sie ohne die übrigen nicht mehr vernünftig oder gar nicht mehr betreib-<br />

oder administrierbar ist. Dasselbe gilt für Funktionen und Daten: Alle Komponenten nutzen<br />

von anderen Bestandteilen bereitgestellte Funktionen oder von diesen verwaltete<br />

Daten, wobei es auch hier nur mit hohem Aufwand oder gar nicht möglich ist, die entsprechenden<br />

Programme allein oder mit Komponenten anderer Hersteller einzusetzen,<br />

auch wenn die Kommunikation zwischen den Komponenten über Standard-Protokolle<br />

und –Schnittstellen erfolgt.<br />

Durch ein so hohes Maß an Integration entsteht auch ein sehr hohes Maß an Herstellerabhängigkeit.<br />

Die einzelnen Komponenten der integrierten Lösung können in der Regel<br />

nicht mehr unabhängig von anderen betrieben werden, gleichzeitig ist nicht oder nur mit<br />

sehr hohem Aufwand möglich, an einer Stelle alternative Komponenten zu verwenden.<br />

Seite 29


Der Anwender wird deswegen in der Regel alle benötigten Komponenten vom selben<br />

Hersteller einsetzen wollen.<br />

3.5 Vor- und Nachteile integrierter und standardisierter Lösungen<br />

Der wesentliche Vorteil integrierter Lösungen besteht darin, dass die einzelnen Komponenten<br />

bereits aufeinander abgestimmt sind und ohne großen Aufwand sofort miteinander<br />

funktionieren.<br />

Weil die betreffenden Komponenten auch von ihren Lieferanten als miteinander integrierte<br />

Komponenten gepflegt werden, gilt dies nicht nur während der Implementierung eines<br />

Systems, sondern während seiner gesamten Laufzeit. So kann bei einer integrierten<br />

Lösung zum Beispiel erwartet werden, dass sich die einzelnen Komponenten besser und<br />

einfacher gemeinsam aktualisieren lassen, als wenn die Einzelbestandteile jeweils separat<br />

bezogen und nach jedem Update wieder aufeinander abgestimmt und miteinander<br />

getestet werden müssten. Die einzelnen Bestandteile integrierter Lösungen passen also<br />

zueinander und können oft entsprechend dem Baukastenprinzip einfach miteinander<br />

kombiniert werden.<br />

Dies hat eine Reihe wirtschaftlicher Konsequenzen: So sinkt der Aufwand für Konzeption<br />

und Implementierung, etwa weil die Art und Weise des Zusammenwirkens zweier Anwendungen<br />

nicht neu konzeptioniert, das Rad also nicht immer wieder neu erfunden<br />

werden muss und Tests im geringeren Umfang notwendig sind, als bei manuell miteinander<br />

integrierten Komponenten. Durch die beim Hersteller und gegebenenfalls auch<br />

bei Dienstleistern, Administratoren und anderen Experten vorhandene Kenntnis von der<br />

Art und Weise, wie die Integration der Komponenten realisiert wurde, sind entsprechende<br />

Lösungen darüber hinaus einfacher und somit kostengünstiger supportbar. Außerdem<br />

ist das Know-how für die Implementierung und den Betrieb integrierter Lösungen aufgrund<br />

der gegenüber einer Individuallösung häufigeren Realisierung am Markt tendenziell<br />

einfacher verfügbar.<br />

Weitere Vorteile können sein, dass zwischen den miteinander integrierten Komponenten<br />

Daten oder Dokumente einfacher ausgetauscht werden können, weil viele Teile des Gesamtsystems<br />

dieselben Funktionen zum Anzeigen oder Bearbeiten der entsprechenden<br />

Daten nutzen. Integrierte Systeme und Lösungen können sowohl auf Administratoren-<br />

als auch auf Anwenderseite Arbeitsprozesse vereinfachen und dadurch Zeit und Kosten<br />

einsparen.<br />

Im Gegensatz dazu wird die Herstellerunabhängigkeit und Flexibilität durch Integration<br />

nicht gefördert. Wie im vorhergehenden Abschnitt gezeigt, steigt vielmehr die Herstellerabhängigkeit<br />

mit dem Grad der Integration und die Flexibilität sinkt.<br />

Demgegenüber ist die Verwendung standardisierter Schnittstellen und Protokolle ein<br />

wichtiges Mittel zur Sicherung von Herstellerunabhängigkeit und Flexibilität.<br />

Mit Lösungen, die einen hohen Integrationsgrad besitzen oder welche für die Kommunikation<br />

der Komponenten untereinander keine standardisierten Schnittstellen und Protokolle<br />

verwenden, ist eine Reihe von Gefahren verbunden:<br />

Seite 30


� Durch die fehlende Offenlegung von Schnittstellen und Protokollen ist nur der<br />

Hersteller der integrierten Lösung in der Lage, Komponenten zu tauschen, zu ergänzen<br />

oder zu erneuern.<br />

� Dadurch entsteht eine hohe Herstellerabhängigkeit („Vendor Lock-In―): Der Anwender<br />

ist darauf angewiesen, die Gesamtlösung mit allen von ihm benötigten zu<br />

nutzen; die Möglichkeit, Komponenten anderer Hersteller zu verwenden, besteht<br />

nicht oder ist nur mit oft unvertretbar hohem Aufwand möglich.<br />

� Hersteller werden so in die Lage versetzt, bei IT-Anwendern Erwerb und Einsatz<br />

zusätzlicher Produkte durchzusetzen, wodurch zusätzliche Kosten zusätzliche<br />

planerische, integrative und administrative Aufwände entstehen.<br />

� Fehlende Standardisierung führt außerdem oft dazu, dass die entsprechenden<br />

Komponenten im Wesentlichen nur mit sich selbst, beziehungsweise mit anderen<br />

(integrierten) Komponenten desselben Herstellers kompatibel sind, während sich<br />

der Datenaustausch zu Programmen oder Komponenten anderer Hersteller als<br />

schwierig oder unmöglich gestaltet.<br />

Ein bekanntes Beispiel für die durch hohe Integration entstehende Herstellerabhängigkeit<br />

ist der von Microsoft mit Exchange 2000 eingeführte Zwang zur Verwendung von<br />

Microsoft Active Directory. Durch diese Voraussetzung sind Anwender, die diese oder<br />

eine neuere <strong>Version</strong> von Exchange einführen wollen, nicht nur auf die Anschaffung von<br />

Active Directory Lizenzen, sondern auch auf die Konzeption dieses Verzeichnisdienstes,<br />

die Integration von Active Directory mit bestehenden Identity-Management-Systemen<br />

sowie die laufende Administration von Active Directory angewiesen.<br />

Als Gegenbeispiel dazu kann das Groupwaresystem Kolab dienen. Dieses, selbst als<br />

Open Source Software entwickelte System, integriert verschiedene, weit verbreitete<br />

Open Source Komponenten miteinander zu einem Mail- und Groupwaresystem, das in<br />

vielen Szenarien alternativ zu Microsoft Exchange eingesetzt werden kann. Dabei<br />

werden jedoch nur allgemein zugängliche Schnittstellen und Protokolle verwendet,<br />

sodass es sich um eine leichte Integration handelt. Das System verwendet OpenLDAP<br />

als Verzeichnisdienst. Aufgrund der leichten Integration, der Verwendung von standardisierten<br />

Protokollen und Schnittstellen und der Open Source Lizenz ist es aber auch<br />

möglich, das System mit jedem anderen Verzeichnisdienst zu integrieren. Dasselbe gilt<br />

für andere in Kolab verwendete Komponenten wie SMTP- oder Webserver.<br />

Allgemein gilt vor allem für hoch integrierte Lösungen, dass diese ihre wesentlichen Vorteile<br />

verlieren, wenn einzelne Komponenten durch andere, vom Hersteller nicht dafür<br />

vorgesehene Komponenten ausgetauscht werden können.<br />

Die folgende Tabelle zeigt angestrebte Ziele für eine flexible und wirtschaftliche IT-<br />

Infrastruktur und welche Auswirkungen Integration und Standardisierung hierauf haben.<br />

Es wird gezeigt, in wie weit die genannten Ziele tatsächlich eine direkt aus der Integration<br />

resultierende Eigenschaft sind oder nicht und in wie weit sie ein Resultat aus der<br />

Verwendung von standardisierten Schnittstellen und Protokollen sind. Für eine Reihe<br />

von Zielen gilt dabei, dass sie sich direkt aus der Integration oder der Standardisierung<br />

von Schnittstellen und Protokollen ableiten lassen, während andere nur eine indirekte<br />

Seite 31


Folge der beiden Kriterien sind. So ist beispielsweise die Eigenschaft, dass Komponenten<br />

eines Systems aufeinander abgestimmt sind, eine direkte Folge der Integration der<br />

entsprechenden Komponenten, während Standardisierung eine gute Abstimmung von<br />

Komponenten aufeinander nur begünstigt, nicht aber zusichert. Standardisierung ist<br />

deswegen in diesem Fall nur eine Eigenschaft, welche das „aufeinander abgestimmt<br />

sein― von Komponenten begünstigt.<br />

Ziel Auswirkung<br />

Aufeinander abgestimmte Komponenten<br />

(„Baukastenprinzip―)<br />

Ein zentraler Lieferant / Hersteller /<br />

Ansprechpartner für alle Komponenten<br />

Geringerer Aufwand bei Konzeption<br />

und Implementierung<br />

Gute Unterstützung für die Aktualisierung<br />

aller Komponenten als Gesamtsystem<br />

Seite 32<br />

Integration Standardisierung<br />

direkter Vorteil begünstigend<br />

direkter Vorteil begünstigend<br />

direkter Vorteil begünstigend<br />

direkter Vorteil begünstigend<br />

Einfach supportbar direkter Vorteil begünstigend<br />

Geringerer Testaufwand direkter Vorteil begünstigend<br />

Know-how am Markt potenziell leichter<br />

verfügbar<br />

Vereinfachung der Arbeitsprozesse<br />

von Anwendern und Administratoren<br />

Flexibilität beim Tausch von Komponenten<br />

gegen Komponenten anderer<br />

Hersteller<br />

Flexibilität bei der Verwendung von<br />

Komponenten, die ursprünglich nicht<br />

für die Verwendung mit der Lösung<br />

vorgesehen wurden<br />

Hersteller- beziehungsweise Lieferantenunabhängigkeit<br />

begünstigend direkter Vorteil<br />

direkter Vorteil begünstigend<br />

nachteilig<br />

(mit zunehmender Integrationstiefe)<br />

nachteilig<br />

(mit zunehmender Integrationstiefe)<br />

nachteilig<br />

(mit zunehmender Integrationstiefe)<br />

Tabelle 1: Auswirkungen von Integration und Standardisierung<br />

auf ausgewählte Ziele einer Behörde<br />

direkter Vorteil<br />

direkter Vorteil<br />

direkter Vorteil<br />

Die Tabelle zeigt, dass es eine Reihe positiver, kostensenkender Eigenschaften von IT-<br />

Infrastrukturkomponenten gibt, die durch Integration direkt gefördert werden, interessanterweise<br />

werden alle diese Eigenschaften gleichzeitig durch Standardisierung gefördert.


3.6 Kriterien zur Beurteilung integrierter Lösungen<br />

Bei der Auswahl neuer IT-Systeme stellt sich die Frage, in wie weit bereits miteinander<br />

integrierte Komponenten oder voneinander unabhängige Einzelbestandteile genutzt<br />

werden sollen. Zur Erleichterung entsprechender Entscheidungen werden hier einige<br />

Fragen angeboten, deren positive oder negative Beantwortung als Grundlage für die<br />

Beurteilung integrierter Lösungen dienen kann:<br />

1. Welcher Grad der Integration liegt vor?<br />

2. Ist die technische Realisierung der Integration öffentlich zugänglich dokumentiert?<br />

3. In wie weit ist es dokumentiert und vorgesehen, alternative Komponenten zu<br />

verwenden?<br />

4. Verwendet die Lösung zur Kommunikation der Komponenten untereinander die<br />

von den entsprechenden Komponenten implementierten Standardprotokolle oder<br />

gibt es Erweiterungen, welche nur für die Integrationslösung bestimmte Schnittstellen<br />

oder Protokolle implementieren?<br />

5. Falls keine standardisierten Protokolle und Schnittstellen verwendet werden,<br />

handelt es sich bei den Integrationskomponenten um Open Source Software, deren<br />

Quellcode einsehbar und veränderbar ist?<br />

6. Falls herstellerspezifische Schnittstellen und Protokolle verwendet werden: Sind<br />

die verwendeten Protokolle offen und frei zugänglich dokumentiert?<br />

7. Falls herstellerspezifische Schnittstellen und Protokolle verwendet werden: Gibt<br />

es frei zugängliche Referenzimplementierungen?<br />

8. Falls herstellerspezifische Schnittstellen und Protokolle verwendet werden: Gibt<br />

es vom Hersteller der Lösung unabhängig entwickelte Software, welche die entsprechenden<br />

Protokolle implementiert, beziehungsweise die Schnittstellen nutzen?<br />

Bei einer Beurteilung integrierter Lösungen kommt es also darauf an, in wie weit diese<br />

intern standardisierte Schnittstellen und Protokolle verwenden und in wie weit sie selbst<br />

offen und standardisiert sind. In allererster Näherung kann zur Beurteilung auch die Integrationstiefe<br />

herangezogen werden. Eine zu hohe Integration birgt zumindest potenziell<br />

die Gefahr einer hohen „Verstrickung― von Komponenten miteinander, das heißt, die<br />

Abhängigkeit der Komponenten untereinander lässt den Austausch von einzelnen Teilen<br />

nicht zu, auch wenn standardisierte Protokolle und Schnittstellen verwendet werden. Auf<br />

der anderen Seite bieten miteinander leicht integrierte Komponenten, welche für die<br />

Kommunikation untereinander standardisierte Schnittstellen und Protokolle verwenden,<br />

erhebliche Vorteile in Bezug auf Konzeption, Implementierung, Test, Administration und<br />

Pflege.<br />

3.7 Beispiele und Vergleich verbreiteter integrierter Infrastrukturlösungen<br />

In diesem Abschnitt wird der Versuch unternommen, am Beispiel der integrierten Lösungen<br />

von Microsoft, Novell und Univention die Umsetzung der Integration verschiedener<br />

Komponenten auf Basis der genannten Kriterien zu beurteilen. Diese drei wurden als<br />

Seite 33


Beispiele ausgewählt, weil sie die Kategorien rein proprietär (Microsoft), rein Open Source<br />

(Univention) und gemischt proprietär und Open Source (Novell) repräsentieren.<br />

Bei allen drei Lösungen handelt es sich um Komponenten-basierte Gesamtsysteme mit<br />

unterschiedlich hohem Integrationsgrad. Ihre Hersteller versprechen im Vergleich zu<br />

Lösungen, die aus projektspezifisch und manuell miteinander verbundenen Einzelkomponenten<br />

bestehen, durch Integration und Eigenschaften wie „Single-Point-of-<br />

Administration― Vorteile hinsichtlich Wirtschaftlichkeit, Sicherheit, Verfügbarkeit und Administrationsaufwänden.<br />

Die Lösungen bestehen jeweils im Wesentlichen aus den folgenden Komponenten: Serverbetriebssystem,<br />

Verzeichnisdienst für Identity- und zum Teil auch Infrastrukturmanagement,<br />

Anmelde-, Datei- und Druckdienste, E-Mail- und Kalenderdienste, System zum<br />

IP-Management, Software- und Updatemanagement sowie Clientbetriebssystem mit<br />

Officepaket, Mail- und Kalenderclient sowie Webbrowser. Damit decken die Lösungen<br />

den Basisinfrastrukturbedarf von Organisationen einschließlich der zum Betrieb notwendigen<br />

Managementwerkzeuge ab.<br />

3.7.1 Microsoft<br />

Microsoft liefert ein System aufeinander abgestimmter und miteinander integrierter Softwareprodukte,<br />

welche die genannten Komponenten bereitstellen. Im Einzelnen sind dies:<br />

Windows 2003 Server, Microsoft Operations Manager 12 und Systems Management Server<br />

13 sowie Microsoft Exchange 2007 und Windows XP/Vista, einschließlich Microsoft<br />

Internet Explorer sowie Microsoft Office 2007 einschließlich Microsoft Outlook.<br />

Die entsprechenden Produkte werden an anderen Stellen (siehe Themen der Module II<br />

und III) dieses Werkes ausführlich behandelt, sodass an dieser Stelle auf eine wiederholende<br />

Beschreibung verzichtet wird.<br />

3.7.2 Novell<br />

Vergleichbar zu Microsoft liefert auch Novell ein System aufeinander abgestimmter und<br />

miteinander integrierter Softwareprodukte. Die oben genannten Funktionen werden hier<br />

durch die Produkte SUSE Linux Enterprise Server 10, Open Enterprise Server 2,<br />

Groupwise 7, ZenWorks, SUSE Linux Enterprise Desktop 10 mit integriertem Office-<br />

Paket OpenOffice.org, Mail- und Kalenderclient Evolution und Webbrowser Mozilla<br />

Firefox bereitgestellt. Die entsprechenden Einzelprodukte werden von Novell unter dem<br />

Namen „Open Workgroup Suite― auch als integrierte Gesamtlösung vertrieben.<br />

Ergänzende Informationen findet man auf den Webseiten von Novell über den Link<br />

http://www.novell.com/products/openworkgroupsuite/.<br />

SUSE Linux Enterprise Server<br />

Die dabei von Novell verwendeten Client- und Serverbetriebssystemen SUSE Linux Enterprise<br />

Server (SLES) beziehungsweise -Desktop (SLED) sind Linux-Distributionen, die<br />

vom Hersteller komplett als Open Source Software veröffentlicht und im Rahmen eines<br />

Maintenance- (oder Abo-) Modells vertrieben werden.<br />

12 System Center Operations Manager 2007 ist die aktuelle <strong>Version</strong><br />

13 System Center Configuration Manager 2007 ist die aktuelle <strong>Version</strong><br />

Seite 34


Open Enterprise Server<br />

Mit „Open Enterprise Server― (OES) bietet Novell auf der Grundlage von SLES als Serverbetriebssystem<br />

einen großen Teil der in der Vergangenheit ausschließlich mit Novell<br />

Netware gelieferten Serveranwendungen, wie den Verzeichnisdienst eDirectory, IP-<br />

Managementdienste (DHCP, DNS), Datei- und Druckdienste sowie die dazu gehörenden<br />

Managementwerkzeuge. Dadurch wird Anwendern der „klassischen― Novell-Produkte ein<br />

möglichst einfacher Weg geboten, nach Linux als Betriebssystemplattform zu migrieren,<br />

während aufbauend darauf weiterhin die gleichen, proprietären Dienste genutzt werden<br />

können. Gleichzeitig erweitert OES den Leistungsumfang klassischer Linux-<br />

Serverdistributionen um die Novell-spezifischen Dienste wie Novell iFolder oder Novell<br />

iPrint.<br />

Groupwise<br />

Mit Novell Groupwise ist ein Groupwaresystem in die Gesamtlösung integriert, welches<br />

SLES als Betriebssystemgrundlage und den in OES enthaltenen Verzeichnisdienst eDirectory<br />

zur Verwaltung u.a. von Benutzern und E-Mail-Konten nutzt. Groupwise bietet die<br />

für Groupwaresysteme typischen Funktionen E-Mail, Kalender- und Kontaktverwaltung<br />

sowie Aufgaben- und Dokumentenverwaltung an. Darüber hinaus ist eine Instant-<br />

Messaging-Lösung enthalten. Auf Groupwise kann mit einem eigenen Client für Windows<br />

sowie über einen Konnektor von Microsoft Outlook und von Linux aus mit Novell<br />

Evolution zugegriffen werden. Das System unterstützt außerdem eine Reihe mobiler<br />

Geräte.<br />

ZenWorks<br />

Für das Client- und Softwaremanagement ist mit Novell ZenWorks ein weiteres Produkt<br />

in die Lösung integriert. Wie Groupwise verwendet ZenWorks standardmäßig den Verzeichnisdienst<br />

eDirectory als Basis für das Identity- und Infrastrukturmanagement. Zen-<br />

Works ermöglicht das Konfigurations- und Softwaremanagement von Windows- und Linux-basierten<br />

Clients und bringt u.a. Funktionen zur Inventarisierung mit.<br />

SuSE Linux Enterprise Desktop<br />

Der SuSE Linux Enterprise Desktop (SLED) ist eine auf den Einsatz am Arbeitsplatz<br />

optimierte Linux-Distribution, welches Komponenten wie OpenOffice.org, den Mail-Client<br />

Evolution oder den Webbrowser Mozilla Firefox bereits in einer vorkonfigurierten und auf<br />

die Gesamtlösung abgestimmten Variante enthält. Das Desktop-System ist als Client für<br />

die übrigen Komponenten konzeptioniert und kann durch diese zentral verwaltet werden.<br />

Im Vergleich zu den Lösungen von Microsoft und Univention kann das Softwaresystem<br />

von Novell als eine Art Mittelweg angesehen werden: Während die Betriebssystemplattform<br />

von Server und Client zwar Open Source sind und die typischen Open Source<br />

Programme und Dienste enthalten, werden die darauf aufsetzenden Dienste wie Verzeichnisdienst,<br />

Software- und Clientmanagement oder Groupwaresystem sowie die entsprechenden<br />

Managementwerkzeuge wie bei Microsoft als proprietäre Software geliefert.<br />

Seite 35


3.7.3 Univention Corporate Server<br />

Univention bietet mit Univention Corporate Server eine mit den Systemen von Novell und<br />

Microsoft vergleichbare, integrierte Infrastrukturlösung an, die vollständig als Open Source<br />

Software veröffentlicht wird. Die genannten Funktionen werden von den folgenden<br />

UCS-Komponenten zur Verfügung gestellt: UCS-Basissystem, UCS-Managementsystem<br />

mit Univention Directory Manager, „Kolab für UCS― sowie Univention Corporate Desktop<br />

(UCD) mit dem Office-Paket OpenOffice.org, dem Mail- und Kalenderclient KDE Kontact<br />

sowie dem Webbrowser Mozilla Firefox.<br />

UCS-Basissystem<br />

Die Basis von Univention Corporate Server (UCS) bildet eine Linux-Distribution, das<br />

sogenannte UCS-Basissystem. Das UCS-Basissystem basiert auf der freien Linux-<br />

Distribution Debian GNU/Linux und ist in weiten Teilen identisch damit. Univention<br />

verwendet darin jedoch einige als Open Source Software veröffentlichte Eigenentwicklungen,<br />

wie einen eigenen Installer und ein eigenes Konfigurationsmanagement.<br />

UCS-Managementsystem<br />

Aufbauend auf der Kerndistribution liefert Univention mit dem sogenannten UCS-<br />

Managementsystem ein Identity- und Infrastrukturmanagementsystem, das weitverbreitete<br />

Open Source Komponenten, wie den Verzeichnisdienst OpenLDAP, Heimdal Kerberos<br />

oder OpenSSL als Basis benutzt.<br />

Ähnlich wie die auf Active Directory beziehungsweise eDirectory aufbauenden Identity-<br />

und Infrastrukturmanagementsysteme von Microsoft beziehungsweise Novell, kann das<br />

UCS-Managementsystem flexibel genutzt werden, um darin unterschiedliche Objekte,<br />

Standorte, Richtlinien oder organisatorische Einheiten zu verwalten.<br />

Es enthält einen Konnektor zu Microsoft Active Directory, mit dem viele Aspekte von<br />

Active Directory über das UCS-Managementsystem verwaltet werden können und umgekehrt.<br />

Dieser Konnektor unterstützt vor allem Migrationen von Microsoft-Systemen<br />

nach UCS sowie den dauerhaften Parallelbetrieb. Auch die Anbindung anderer Systeme<br />

und Verzeichnisdienste ist über verschiedene Schnittstellen und APIs möglich.<br />

Die Bedienung des UCS-Managementsystems kann sowohl über den Web-basierten<br />

UCS Directory Manager als auch ein Kommandozeilen-orientiertes Interface vorgenommen<br />

werden.<br />

Eine Besonderheit des UCS-Managementsystems ist der sogenannte LDAP-Listener-<br />

Mechanismus. Damit können auf UCS-Systemen Plugins registriert werden, die das System<br />

dann aufruft, wenn bestimmte im Plugin definierte Objekte (wie zum Beispiel Benutzer,<br />

Gruppen oder Rechner) erzeugt, modifiziert oder geändert werden.<br />

Das UCS-Managementsystem verwendet intern ein Domänenkonzept, das sich konzeptionell<br />

an den von Microsoft Windows her bekannten „Domänen― orientiert. Analog zu<br />

den Systemen von Microsoft und Novell lassen sich so anspruchsvolle, über viele Standorte<br />

verteilte IT-Infrastrukturen zentral verwalten (siehe Abbildung „UCS-Umgebung―)<br />

Seite 36


UCS-Module<br />

Univention und andere Hersteller liefern Module, mit denen bestimmte Dienste oder<br />

Programme in das UCS-Managementsystem integriert und darüber administrierbar gemacht<br />

werden. Wichtige von Univention gelieferte Module sind:<br />

Services für Windows: Dieses Modul stellt auf der Basis von Samba und anderen Open<br />

Source Komponenten alle für Rollout und Betrieb von Windows-basierten Clients und<br />

Servern benötigten Funktionen zur Verfügung.<br />

Univention Corporate Desktop ist ein auf KDE basierender in UCS enthaltener Desktop,<br />

der über das UCS-Managementsystem hinsichtlich von Eigenschaften wie über Menüs<br />

zugängliche Funktionen, Desktop-Icons, Drucker- und Sharezuordnungen, Nutzerberechtigungen<br />

usw. administriert wird.<br />

Kolab für UCS ist eine in UCS integrierte Variante des Open Source Groupwaresystems<br />

Kolab 2 auf das von verschiedenen Clients wie KDE Kontact, Microsoft Outlook, webbasiert<br />

oder mobil zugegriffen werden kann.<br />

Eine weitergehende Beschreibung der UCS-Module ist auf den Webseiten von Univention<br />

verfügbar (www.univention.de). Module anderer Hersteller sind u.a.: die Groupwaresysteme<br />

Scalix und Zarafa sowie die Softwareverteilung und -inventarisierung OPSI .<br />

3.7.4 Komponenten- und Protokollübersicht<br />

Die folgende Tabelle zeigt, welche Produkte oder Produktkomponenten die jeweiligen<br />

Hersteller zur Bereitstellung der oben aufgeführten Funktionen verwenden:<br />

Komponente Microsoft Novell Univention<br />

Serverbetriebssystem Windows 2003 Server SuSE Linux Enterprise<br />

Server 10<br />

Seite 37<br />

Univention Corporate<br />

Server 2.0 (auf Basis<br />

von Debian GNU<br />

Linux „Etch―)<br />

Verzeichnisdienst Active Directory eDirectory OpenLDAP<br />

Anmeldedienste Kerberos, NTLMv2,<br />

u.a.<br />

NMAS, Kerberos,<br />

NTLMv2, u.a.<br />

Dateidienste CIFS, NFS NCP, NFS, CIFS<br />

(Samba)<br />

Druckdienste Windows Druckdienste<br />

E-Mail- und Kalenderdienste<br />

Kerberos, NTLMv2<br />

(Samba), PAM, u.a.<br />

NFS, CIFS (Samba)<br />

iPrint CUPS (Common Unix<br />

Print System)<br />

Exchange 2007 Groupwise 7 Kolab 2 für UCS<br />

IP-Management Active Directory ZenWorks OpenLDAP, Univention<br />

Directory Manager,<br />

ISC DHCPD,<br />

ISC DNS


Komponente Microsoft Novell Univention<br />

Software- und Update-<br />

Management<br />

Client-Betriebssystem Windows XP / Windows<br />

Vista<br />

Active Directory / MSI ZenWorks OpenLDAP, Univention<br />

Directory Manager<br />

APT, OPSI für<br />

UCS<br />

Seite 38<br />

SuSE Linux Enterprise<br />

Desktop<br />

Univention Corporate<br />

Desktop<br />

Officepaket Office 2007 OpenOffice.org OpenOffice.org<br />

Mail- und Kalenderclient Outlook 2007 Novell Evolution KDE Kontact<br />

Webbrowser Internet Explorer Mozilla Firefox Mozilla Firefox<br />

Tabelle 2: Übersicht der Komponenten und Protokolle der Beispiele für Integrationslösungen<br />

3.7.5 Integrationsgrad und Herstellerabhängigkeit<br />

Die Systeme von Microsoft und Novell weisen beide einen sehr hohen Integrationsgrad<br />

auf. So sind manche Komponenten wie zum Beispiel Microsoft Exchange und Microsoft<br />

Active Directory zwingend aufeinander angewiesen. Auch bei Novell ist zum Beispiel<br />

ZenWorks zwingend auf den Verzeichnisdienst eDirectory angewiesen.<br />

Bei der Univention-Lösung gibt es zwar im Bereich von Konfiguration und Administration<br />

ebenfalls eine relativ hohe Integration: Die Komponenten können aufeinander abgestimmt<br />

installiert werden, sie werden außerdem über einheitliche Mechanismen wie Registratur<br />

und Verzeichnisdienst-basiertes Managementsystem einheitlich administriert.<br />

Allerdings unterscheiden sich die verwendeten Komponenten praktisch nicht von den<br />

auch unabhängig von Univention verfügbaren Open Source Komponenten, sodass die<br />

Integration auf Funktions- und Datenebene nur sehr gering ist.<br />

Bezüglich der Lizenzierung ist Univention der einzige Hersteller, der sämtliche Bestandteile<br />

der integrierten Gesamtlösung als Open Source Software veröffentlicht. Bei Novell<br />

ist zwar das Basisbetriebssystem (SUSE Linux Enterprise Server, beziehungsweise<br />

Desktop) mit den enthaltenen Distributionskomponenten Open Source Software, die<br />

darauf aufbauenden Komponenten von Open Enterprise Server wie eDirectory oder<br />

Groupwise sind aber proprietär und werden nicht im Quellcode veröffentlicht. Microsoft<br />

stellt keine der hier betrachteten Komponenten unter einer Open Source Lizenz zur Verfügung.<br />

Aufgrund des Umstands, dass die Integrationstiefe bei Univention im Vergleich zu den<br />

Systemen von Microsoft und Novell eher gering ist und weil Univention alle Bestandteile<br />

als Open Source Software mitliefert, ist hier die Verwendung alternativer Komponenten<br />

beziehungsweise die alleinstehende Verwendung einzelner UCS-Komponenten am<br />

ehesten möglich, die Herstellerabhängigkeit also am geringsten, wenngleich dann die<br />

Vorteile der Integrationslösung zumindest teilweise verloren gehen können.<br />

Die folgende Tabelle stellt die zur Beurteilung integrierter Lösungen relevanter Fragen<br />

am Beispiel der skizzierten Infrastrukturlösungen von Microsoft, Novell und Univention<br />

im Überblick dar:


Kriterium Microsoft Novell Univention<br />

Welcher Integrationsgrad<br />

besteht?<br />

Ist die technische Realisierung<br />

der Integration öffentlich<br />

dokumentiert?<br />

Ist der Einsatz alternativer<br />

Komponenten technisch<br />

möglich?<br />

Verwendet die Lösung<br />

ausschließlich Standardprotokolle<br />

und Schnittstellen?<br />

Handelt es sich bei den<br />

Integrationskomponenten<br />

um Open Source Software,<br />

deren Quellcode<br />

einsehbar und veränderbar<br />

ist?<br />

Werden proprietäre, nicht<br />

offengelegte oder lizenzpflichtige<br />

Protokolle verwendet?<br />

Sind die verwendeten Protokolle<br />

offen und frei zugänglich<br />

dokumentiert?<br />

3.8 Fazit<br />

hoch mittel bis hoch leicht bis mittel<br />

teilweise teilweise teilweise / durch<br />

Quellcode vollständig<br />

teilweise teilweise vollständig<br />

nein nein ja<br />

nein teilweise ja<br />

teilweise teilweise nein<br />

teilweise teilweise ja<br />

Tabelle 3: Beurteilung des Integrationsgrades der Beispiellösungen<br />

Die Verwendung integrierter Lösungen bietet aus der Sicht von IT-Anwendern eine Menge<br />

Vorteile: Die Komponenten passen zueinander, es reduzieren sich Konzeptions-,<br />

Test- und Implementierungsaufwände und während des Betriebs sind integrierte Lösungen<br />

oft leichter zu supporten und zu warten.<br />

Gleichzeitig bringen integrierte Lösungen die Gefahr der Herstellerabhängigkeit mit sich.<br />

Insbesondere die Integrationstiefe, aber auch die Frage, in wie weit trotz Integration<br />

standardisierter Schnittstellen und Protokolle verwendet werden, können bei der Beurteilung<br />

der Frage helfen, in wie weit man sich mit einer integrierten Lösung tatsächlich in<br />

die Abhängigkeit zu einem Hersteller begibt. Grundsätzlich ist diese Abhängigkeit auch<br />

dann geringer, wenn die entsprechende Lösung als Open Source Software veröffentlicht<br />

wird. In diesem Fall besteht jederzeit die Möglichkeit den Source Code zu analysieren<br />

und ihn zu verändern, sei es nun, dass dies die Behörde selbst tut oder einen beliebigen<br />

und geeigneten Dienstleister damit beauftragt.<br />

Seite 39


Am Beispiel von Univention Corporate Server und in weiten Teilen auch bei der von Novell<br />

angebotenen Lösung zeigt sich, dass im Umfeld von Linux und Open Source Software<br />

mittlerweile ebenfalls integrierte Systeme verfügbar sind, die viele der Vorteile der<br />

aufeinander ausgerichteten Systembestandteile von Microsoft bieten, aber durch geringere<br />

Integrationstiefe und Open Source Lizenzierung eine deutlich geringere Herstellerabhängigkeit<br />

mit sich bringen.<br />

Seite 40


B Thema: Rechtliche Aspekte von Softwaremigrationen<br />

1 Einleitung<br />

Die Wahl einer Behörde zwischen einer Migration zu proprietärer und einer Migration zu<br />

Open Source Software (OSS) beruht in erster Linie auf technischen und wirtschaftlichen<br />

Kriterien. Die Entwicklungen der letzten Jahre haben dagegen gezeigt, dass die<br />

rechtlichen Aspekte eine eher untergeordnete Rolle spielen. Zwar verweisen die<br />

Anbieter proprietärer Softwareprodukte regelmäßig auf angebliche rechtliche Risiken für<br />

die Nutzer bei der Verwendung von OSS, bei näherer Betrachtung liefern die<br />

Rechtsfragen jedoch keine entscheidungserheblichen Argumente, die gegen den Einsatz<br />

von OSS sprechen.<br />

Zahlreiche Behörden und Unternehmen setzen seit Jahren OSS ein, ohne dass es zu<br />

einer Realisierung der immer wieder betonten Risiken gekommen wäre. Zudem haben<br />

mehrere deutsche Gerichte in den letzten Jahren die Tragfähigkeit des Lizenzmodells<br />

nach deutschem Recht bestätigt 14 . Auch hat der Gesetzgeber mittlerweile vier Sondervorschriften<br />

zugunsten des OSS-Lizenzmodells in das Urheberrechtsgesetz aufgenommen<br />

15 , welche zu einer Klärung der dort behandelten Einzelfragen geführt und den<br />

Willen des Gesetzgebers gezeigt haben, das Lizenzmodell durch legislative Änderungen<br />

zu stärken. Die Rechtsprobleme beim Einsatz von OSS haben sich in den letzten Jahren<br />

in der Praxis deshalb als überschaubar erwiesen. Das Argument „Rechtsrisiko OSS―<br />

wird zusätzlich relativiert, wenn man die rechtliche Situation bei OSS mit den möglichen<br />

Rechtsproblemen beim Einsatz von proprietärer Software vergleicht. Auch beim Einsatz<br />

herkömmlich lizenzierter Programme sind zahlreiche rechtliche Risiken zu beachten.<br />

Schließlich gilt es, die spezifischen rechtlichen Vorteile zu berücksichtigen, die der<br />

Einsatz von OSS mit sich bringen kann. Behörden können beim Einsatz von OSS sehr<br />

weitreichende Nutzungsrechte und dadurch strategische Vorteile erwerben.<br />

Das folgende Kapitel will den Entscheidern in Behörden die für die Auswahlentscheidung<br />

notwendigen rechtlichen Basisinformationen vermitteln. Die Migration zu OSS oder zu<br />

proprietärer Software bringt es mit sich, dass die Behörde mit neuen Vertragspartnern<br />

zusammenarbeiten muss. Das Profil der in Anspruch genommenen Dienstleistungen<br />

ändert sich, das Gleiche gilt für die rechtliche Bewertung dieser Vertragsverhältnisse.<br />

Hierbei sind auch urheber- und patentrechtliche Fragen zu beurteilen. Zudem gilt es Haftungsrisiken<br />

zu evaluieren und zu fragen, welche Ansprüche die Behörde gegenüber<br />

ihren Vertragspartnern und Dritten geltend machen kann, wenn die eingesetzten Programme<br />

fehlerhaft sind oder einer Nutzung Rechte Dritter entgegenstehen. Schließlich<br />

sind die Beschaffungsvorgänge so zu gestalten, dass Ausschreibungen und Vergabeentscheidungen<br />

den Anforderungen des Vergaberechts entsprechen. Dabei sind jeweils<br />

14 Siehe insb. Landgericht München, Urteil vom 19.05.2004, AZ 21 O 6123/04, Computer und<br />

Recht 2004,S. 774; LG Frankfurt a.M., Urteil v. 06.09.2006, AZ 2-6 O 224/06, Computer<br />

und Recht 2006, S. 729; LG München, Urteil v. 12.07.2007, AZ 7 O 5245/07, Computer und<br />

Recht 2008, 57 (nicht rechtskräftig).<br />

15 Siehe §§ 31a Abs. 1 S. 2, 32 Abs. 3 S. 3, 32a Abs. 3 S. 3, 32c Abs. 3 S. 3 UrhG.<br />

Seite 41


die rechtlichen Risiken und Chancen des Einsatzes von OSS oder proprietärer Software<br />

miteinander zu vergleichen.<br />

Im Folgenden soll die Behörde als Nutzer von Informationstechnologie im Vordergrund<br />

stehen. Fragen, die sich bei der Entwicklung und beim Vertrieb von OSS durch Behörden<br />

ergeben, werden dagegen nur am Rande betrachtet. Sie liegen außerhalb des<br />

Fokus des <strong>Migrationsleitfaden</strong>s. Das Kapitel wird vier Fragenkomplexe schwerpunktmäßig<br />

beleuchten:<br />

� Vertragsrecht<br />

� Urheber- und Patentrecht<br />

� Haftung und Gewährleistung<br />

� Vergaberecht<br />

2 Methode<br />

Grundsätzlich werden bei den rechtlichen Fragestellungen beide Migrationswege<br />

betrachtet. Als Ausgangspunkt bei der Betrachtung der genannten Unterthemen soll die<br />

rechtliche Situation bei einer Nutzung von OSS untersucht werden. Am Ende der<br />

einzelnen Abschnitte werden vergleichende Hinweise zur Situation bei einer Migration zu<br />

proprietärer Software gegeben. Die rechtlichen Besonderheiten, die sich bei der Nutzung<br />

von OSS ergeben, stehen im Vordergrund. Diese Schwerpunktbildung ist gerechtfertigt,<br />

weil sich bei einer Migration zu proprietärer Software für die Behörde zumeist keine<br />

Unterschiede zur Ausgangslage ergeben. Dagegen bringt die Migration zu OSS<br />

erhebliche Veränderungen für die Rechtslage mit sich. Vor diesem Hintergrund ist es<br />

verständlich, dass Entscheider primär Fragen zu der Rechtslage der OSS haben. Der<br />

<strong>Migrationsleitfaden</strong> richtet sich an diesem Interessenschwerpunkt aus.<br />

Die Rechtsfragen der OSS haben in den letzten Jahren zu einer regelrechten Flut juristischer<br />

Fachveröffentlichungen geführt 16 . Hinzukommen die bereits erwähnten Entscheidungen<br />

deutscher Gerichte, welche die Wirksamkeit zentraler Aspekte der GPL bestätigt<br />

haben. Es ist dennoch darauf hinzuweisen, dass bislang keine höchstrichterlichen Entscheidungen<br />

zu den Rechtsfragen der OSS ergangen sind, welche die hier dargestellten<br />

Rechtsfragen abschließend geklärt hätten. Zudem werden in der stark akademisch geprägten<br />

Fachliteratur einige Fragen uneinheitlich beurteilt. Es ist nicht die Aufgabe dieses<br />

Leitfadens sein, jedes Detail dieser juristischen Fachdiskussion nachzuzeichnen,<br />

vielmehr soll eine nachvollziehbare Darstellung und kurze Erläuterung der jeweils vorherrschenden<br />

Auffassung die Leser bei ihren Entscheidungen unterstützen. Abweichungen<br />

in der juristischen Fachliteratur zu einzelnen Fragen sind also möglich.<br />

3 Notwendigkeit der Rechtsberatung im Einzelfall<br />

Der Abschnitt zu den rechtlichen Aspekten verfolgt zwei Ziele. Er will zum einen dabei<br />

helfen, unberechtigten Ängsten durch gezielte Informationen entgegenzutreten. Zum<br />

anderen erscheint es als notwendig, dort auf rechtliche Probleme hinzuweisen, wo sie<br />

16 Eine Auflistung von ca. 60 deutschsprachigen und zahlreichen fremdsprachigen Beiträgen<br />

findet sich unter http://www.ifross.de.<br />

Seite 42


tatsächlich bestehen. Wo eines der aufgezeigten Rechtsprobleme auftritt, kann der <strong>Migrationsleitfaden</strong><br />

eine individuelle Rechtsberatung nicht ersetzen. Hier müssen die Behörden<br />

auf Rechtsämter, Rechtsabteilungen oder externen Sachverstand, insbesondere<br />

Rechtsanwälte zurückgreifen. Dies gilt auch für die Vertragsgestaltung im Einzelfall.<br />

4 Vertragsrecht<br />

4.1 Einleitung<br />

Ein regelmäßig gegen den Einsatz von OSS vorgebrachtes Argument betrifft die<br />

angeblich unklaren Vertragsverhältnisse. Anbieter proprietärer Programme weisen oft<br />

darauf hin, dass Behörden bei ihrem Vertriebsmodell alles aus einer Hand erwerben<br />

können, wodurch die Ansprechpartner für die Behörden fest stehen, während der Nutzer<br />

bei OSS einer dezentralen, weltweit verstreuten Entwicklergemeinschaft<br />

gegenüberstehe, sodass die Verantwortlichen, etwa bei einem Haftungs- oder<br />

Gewährleistungsfall, nicht zu erreichen seien. Betrachtet man die Vertragsverhältnisse<br />

beim Erwerb von OSS im Einzelnen, so erweist sich das Argument als nicht stichhaltig.<br />

In der typischen Fallgestaltung, in der eine Behörde OSS bei einem Zwischenhändler<br />

oder Serviceanbieter erwirbt, um sie bestimmungsgemäß einzusetzen, kommt es nur zu<br />

einem Vertragsschluss mit ebendiesem Zwischenhändler oder Serviceanbieter. Die<br />

rechtliche Situation ist dann weder komplexer noch rechtlich nachteilhafter als bei<br />

proprietärer Software.<br />

Bei Softwareüberlassungsverträgen sind grundsätzlich zwei Vertragsgegenstände zu<br />

unterscheiden: Die Software als solche, also die Bits und Bytes und die Nutzungsrechte<br />

an der Software, welche oftmals entsprechend internationaler Sprachgewohnheiten als<br />

Einräumung einer "Lizenz" bezeichnet wird. Die Lizenz kann dem Nutzer Unterschiedliches<br />

gestatten. Sie kann das einfache Laufenlassen der Software gestatten, sie kann<br />

dem Nutzer aber auch Entwicklungs- und Vertriebsbefugnisse einräumen. Proprietäre<br />

Softwarelizenzen erlauben in der Regel nur das Ablaufenlassen des Programms; OSS-<br />

Lizenzen sind demgegenüber durch besonders weitgehende Rechtseinräumungen gekennzeichnet.<br />

Typischerweise erhält der Nutzer von OSS die Software als solche nicht direkt von den<br />

Rechtsinhabern, also den Inhabern der geistigen Eigentumsrechte an OSS - das sind die<br />

Entwickler oder Unternehmen, die die Programme erstellt haben. Der Nutzer wird in aller<br />

Regel eine Distribution erwerben, und zwar entweder vom Distributor direkt oder von<br />

einem Dienstleister. Gerade für kleinere Behörden ebenfalls denkbar, aber praktisch<br />

weniger relevant, dürfte der Erwerb einer Distribution im Einzelhandel sein. In allen genannten<br />

Konstellationen fallen der Erwerb der Rechte vom Rechtsinhaber einerseits und<br />

der Erwerb der Bits und Bytes andererseits auseinander. Es handelt sich deshalb typischerweise<br />

um ein Dreipersonenverhältnis zwischen Nutzer, Rechtsinhaber und Zwischenhändler<br />

(Distributor, Softwarehaus, Beratungsunternehmen, Einzelhandel, Dienstleister)<br />

mit jeweils rechtlich unabhängigen Vertragsverhältnissen:<br />

Seite 43


Nutzer<br />

Rechteinhaber Zwischenhändler<br />

Abbildung 2: Vertragsverhältnisse<br />

Der Nutzer braucht für die Benutzung der Software zunächst lediglich einen Vertrag mit<br />

dem Zwischenhändler, auf dessen Grundlage er die Software als solche erwirbt. Bereits<br />

durch den Erwerb einer rechtmäßig in Verkehr gebrachten Programmkopie erwirbt der<br />

Nutzer die Befugnis, das Programm bestimmungsgemäß zu benutzen.<br />

Möchte der Nutzer die zusätzlichen Rechte aus der GPL oder einer anderen OSS-Lizenz<br />

wahrnehmen, so muss er einen weiteren Vertrag abschließen, diesmal mit den Rechtsinhabern.<br />

Nur wenn eine solche Nutzung der OSS gewünscht wird, ist die OSS-Lizenz<br />

überhaupt relevant. Möchte der Nutzer die Software dagegen nur ablaufen lassen, so<br />

bedarf es nicht des Abschlusses eines Lizenzvertrags mit den Rechtsinhabern.<br />

Die wichtigsten OSS-Lizenzen (GPL <strong>Version</strong> 2 17 , GPL <strong>Version</strong> 3 18 und Lesser GPL<br />

<strong>Version</strong> 3 19 ) klammern die einfache Benutzung des Programms aus ihrem Anwendungsbereich<br />

aus, vgl. Ziffer 0 Absatz 2 GPL <strong>Version</strong> 2 ("Activities other than copying,<br />

distribution and modification are not covered by this license; they are outside its scope.<br />

The act of running the program is not restricted [...].") sowie Ziffer 9 GPL <strong>Version</strong> 3 ("You<br />

are not required to accept this license in order to receive or run a copy of the Program.").<br />

Dies korrespondiert mit den Regelungen des deutschen Urheberrechts. Gemäß § 69d<br />

Abs. 1 UrhG bedarf es für die "bestimmungsgemäße Benutzung" eines Computerprogramms<br />

keiner Lizenz oder sonstigen Erlaubnis des Rechtsinhabers, sofern das<br />

Programm rechtmäßig in Verkehr gebracht worden ist. Solange sich also der Distributor<br />

und der Zwischenhändler an die Bedingungen der Lizenz gehalten haben und der<br />

Vertrieb rechtmäßig gewesen ist, bedarf der Nutzer für die einfache Benutzung des<br />

Programms keines Vertrags mit den Inhabern der Rechte an dem Programm. Die GPL<br />

oder sonstige OSS-Lizenz ist dann irrelevant.<br />

Einige OSS-Lizenzen klammern die einfache Benutzung nicht ausdrücklich aus, dies gilt<br />

insbesondere für BSD Lizenzen 20 . Dies ändert aber nichts an der Tatsache, dass der<br />

Nutzer eines rechtmäßig in Verkehr gebrachten Programms im Normalfall keiner<br />

weiteren Lizenz bedarf, wenn er das Programm nur bestimmungsgemäß benutzen<br />

17 Siehe http://www.gnu.org/licenses/old-licenses/gpl-2.0.html<br />

18 Siehe http://www.fsf.org/licensing/licenses/gpl.html<br />

19 Siehe http://www.gnu.org/licenses/lgpl.html<br />

20 Siehe http://www.opensource.org/licenses/bsd-license.php<br />

Seite 44


möchte. Kommt es nicht zum Abschluss des Lizenzvertrags, so handelt es sich um ein<br />

einfaches Zweipersonenverhältnis zwischen dem Nutzer und dem Dienstleister. Das<br />

heißt, dass von vornherein nur der Dienstleister für vertragliche Ansprüche auf Haftung<br />

und Gewährleistung in Frage kommt.<br />

Zur bestimmungsgemäßen Benutzung gehört nach dem Urheberrechtsgesetz auch das<br />

Erstellen einer Sicherungskopie (§ 69d Abs. 2 UrhG), die Fehlerberichtigung (§ 69d<br />

Abs. 1 UrhG) sowie die Dekompilierung zur Herstellung der Interoperabilität mit anderen<br />

Programmen (§ 69e UrhG). Erst wenn mehr Programmkopien als nur eine Sicherungskopie<br />

erstellt und weitergegeben werden oder wenn das Programm jenseits der<br />

Fehlerberichtigung verändert wird, ist der Abschluss eines Lizenzvertrags erforderlich.<br />

Ob die OSS-Lizenzen für die Behörde im Einzelfall von Bedeutung sind, hängt also von<br />

der Art der Nutzung des Programms ab. Wenn eine Behörde zum Beispiel mit einer<br />

einzelnen Linux-Distribution eine Vielzahl von Arbeitsplätzen ausrüstet, so wird man bei<br />

Anwendung des deutschen Urheberrechts von einer Vervielfältigung auszugehen haben,<br />

sodass eine OSS-Lizenz abgeschlossen werden muss. Gleiches gilt für die Weitergabe<br />

von Programmkopien an andere Behörden, die öffentliche Zugänglichmachung in<br />

Datennetzen und die Weiterentwicklung.<br />

Nutzung ohne Lizenzvertrag Nutzung mit Lizenzvertrag<br />

Ablaufenlassen Ablaufenlassen<br />

Erstellen Sicherungskopie Erstellen Sicherungskopie<br />

Fehlerberichtigung Fehlerberichtigung<br />

Dekompilieren für Interoperabilität Dekompilieren für Interoperabilität<br />

- Vervielfältigung<br />

- Veränderung<br />

- Verbreitung<br />

- Öffentlich Zugänglichmachen<br />

Tabelle 4: Relevanz der OSS-Lizenzen für Nutzer<br />

4.2 Vertragsverhältnisse bei OSS: Vertrag mit Zwischenhändler<br />

Für das Verhältnis zwischen der Behörde als Nutzer und demjenigen, von dem sie das<br />

Programm erhalten hat, sind unterschiedliche Fallgestaltungen denkbar, in denen unterschiedliche<br />

Gesetzesregelungen anzuwenden sind. Dies ist vor allem für die Haftung<br />

und Gewährleistung von Bedeutung.<br />

In der einfachsten Konstellation erwirbt die Behörde eine Standard-OSS, ohne weitere<br />

Leistungen ihres Vertragspartners in Anspruch zu nehmen. Ist ein Entgelt zu zahlen, so<br />

finden die Vorschriften über den Kaufvertrag Anwendung. Wird die Software dagegen<br />

kostenlos abgegeben, so sind die Vorschriften des Schenkungsrechts maßgeblich. Hierher<br />

gehört zum Beispiel der kostenlose Download eines Programms von der Website<br />

eines Distributors. Entsprechende Angebote können auch von Behörden wahrgenommen<br />

werden.<br />

Seite 45


Wird das Programm dagegen im Rahmen einer Gesamtleistung überlassen, so ist die<br />

rechtliche Beurteilung schwieriger. Als Grundregel kann hier festgehalten werden, dass<br />

eine künstliche Aufspaltung der einzelnen Teilleistungen in Einzelverträge zum Nachteil<br />

der Behörde vertragsrechtlich nicht möglich ist. Wird etwa Hardware mit vorinstallierter<br />

OSS vertrieben und wird für die Gesamtleistung ein einheitliches Entgelt verlangt, so<br />

handelt es sich um einen einheitlichen Kaufvertrag. Wird dagegen die Software ausdrücklich<br />

verschenkt, während die Hardware verkauft wird, so sind die Vorschriften von<br />

Kauf- und Schenkungsvertrag zu kombinieren. Entsprechendes gilt für die Einbindung<br />

der Softwareüberlassung in ein umfassendes Dienstleistungsangebot. Hier wird man die<br />

gesetzlichen Vorschriften zum Dienstleistungsvertrag mit denjenigen des Kauf- oder<br />

Schenkungsvertrags kombinieren müssen, je nach dem, ob für das Programm ein Entgelt<br />

zu leisten ist oder nicht.<br />

Die Entwicklung neuer Software kann hier nur im Überblick erläutert werden. Die<br />

Behandlung des Vertrags über die Entwicklung von Individualsoftware ist im juristischen<br />

Schrifttum gegenwärtig stark umstritten. Bis zu einer Klärung durch die Gerichte wird<br />

man damit leben müssen, dass manche von der Anwendung des Werkvertragsrechts<br />

ausgehen, während andere das Kaufvertragsrecht für maßgeblich halten. 21 Soll bestehende<br />

OSS im Auftrag einer Behörde weiterentwickelt werden, so hängt die rechtliche<br />

Beurteilung davon ab, ob die vorbestehenden Programmbestandteile bereits bei der<br />

Behörde vorhanden waren oder erst vom Auftragnehmer geliefert wurden. Im ersten Fall<br />

ist von einem isolierten Werk- bzw. Kaufvertrag über die hinzugefügten Programmbestandteile<br />

auszugehen, dagegen ist im zweiten Fall ein einheitlicher Vertrag anzunehmen.<br />

Bei Verwendung der EVB-IT bzw. BVB 22 ist im Einzelnen zu prüfen, ob die Vertragsbestimmungen<br />

im Einklang mit den jeweils maßgeblichen OSS-Lizenzen stehen. Eine unveränderte<br />

Heranziehung der Standardverträge kann mitunter problematisch sein. Dies<br />

soll an zwei Beispielen näher dargestellt werden:<br />

Die EVB-IT Überlassung Typ A und Typ B können bei der Beschaffung von Standard-<br />

Open Source Software von einem Zwischenhändler nicht ohne Weiteres benutzt werden.<br />

Die genannten Vertragswerke sehen eine Rechtseinräumung durch den Auftragnehmer<br />

(das heißt den Zwischenhändler) vor; dies kommt beim Erwerb von OSS in aller Regel<br />

aber nicht in Frage, da der Zwischenhändler keine entsprechenden Rechte innehat und<br />

deswegen auch keine Nutzungsrechte einräumen kann. Die Klauseln über die Nutzungsrechtseinräumung<br />

müssten hier also gestrichen werden, um das Formular benutzen zu<br />

können.<br />

Die BVB-Erstellung kann ohne Veränderung nur verwendet werden, wenn die Behörde<br />

eine völlige Neuentwicklung in Auftrag gibt. Für Aufträge über die Weiterentwicklung von<br />

bereits bestehender GPL-Software bedarf das Vertragsmuster dagegen gewisser Ver-<br />

21<br />

Eine aktuelle Übersicht über den Meinungsstand findet sich bei Redeker, IT-Recht (4. Aufl.<br />

2007), S. 91 f.<br />

22<br />

Abrufbar unter http:///www.kbst.bund.de/.<br />

Seite 46


änderungen: Es enthält Klauseln, die nicht mit den Vorgaben der GPL vereinbar sind<br />

und die dementsprechend gestrichen oder verändert werden müssten 23 .<br />

Der Vertrag zwischen Behörde und Dienstleister richtet sich immer dann nach deutschem<br />

Recht, wenn sowohl die Behörde als auch der Dienstleister ihren Sitz in Deutschland<br />

haben. In diesem Fall richtet sich sowohl die Wirksamkeit der Verträge als auch die vertragliche<br />

Haftung und Gewährleistung nach deutschem Recht. Hat der Dienstleister dagegen<br />

seinen Sitz im Ausland, so kann ausländisches Recht maßgeblich sein, es sei<br />

denn, die Behörde vereinbart in dem Vertrag eine Rechtswahl zugunsten des deutschen<br />

Rechts. Hierzu ist dringend zu raten. Da für dieses Vertragsverhältnis die OSS-Lizenzen<br />

ohne Bedeutung sind, sind die Parteien in der Vertragsgestaltung im Rahmen der gesetzlichen<br />

Möglichkeiten frei.<br />

Art der Leistung des Zwischenhändlers Vertragstyp<br />

Standard-OSS gegen Entgelt Kaufvertrag<br />

Standard-OSS kostenlos Schenkungsvertrag<br />

Kombination Hardware und Standard-OSS:<br />

beide gegen Entgelt oder Software kostenlos<br />

Seite 47<br />

Einheitlicher Kaufvertrag<br />

Neuentwicklung von OSS Werkvertrag (andere Auffassung: Kauf)<br />

Fortentwicklung von OSS Werkvertrag (andere Auffassung: Kauf)<br />

Tabelle 5: Vertragsverhältnisse Nutzer-Zwischenhändler<br />

4.3 Vertragsverhältnisse bei OSS: Vertrag mit Rechtsinhabern<br />

Für das bloße Ablaufenlassen des Programms durch die Behörde bedarf es nicht des<br />

Abschlusses von Lizenzverträgen; insoweit kommt es allein zu vertraglichen Verhältnissen<br />

mit dem Zwischenhändler, von dem die Behörde die Software erworben hat. Möchte<br />

die Behörde die Software jedoch in einer Weise nutzen, die über eine "bestimmungsgemäße<br />

Benutzung" im Sinne des § 69d UrhG hinausgeht, so bedarf sie hierfür<br />

der Zustimmung der Rechtsinhaber. Nur in diesem Fall sind die OSS-Lizenzen überhaupt<br />

von praktischer Bedeutung.<br />

Damit die OSS-Lizenzen rechtliche Geltung erlangen, bedarf es eines entsprechenden<br />

Vertragsschlusses, also eines Angebots und der Annahme dieses Angebots. Rechtstechnisch<br />

handelt es sich bei einem Programm, welches einer OSS-Lizenz unterstellt<br />

worden ist, um ein Angebot an jedermann auf Abschluss eines Lizenzvertrags mit dem<br />

Inhalt der jeweiligen Lizenzbedingungen (GPL o.ä.). Wer einen solchen Lizenzvertrag<br />

abschließen möchte, kann seine Annahme dadurch erklären, dass er eine Handlung<br />

vornimmt, die nach der Lizenz jedem Lizenznehmer gestattet ist, also eine Vervielfältigung,<br />

eine Verbreitung oder eine Veränderung des Programms. Der Lizenzvertrag<br />

kommt durch die bloße Vornahme dieser Handlung automatisch zustande, es bedarf<br />

23 Dies gilt insbesondere für die Nutzungsrechtsklausel in Ziffer 6 und die Regelung im Hinblick<br />

auf die Offenlegung der Quelltexte gegenüber dem Auftraggeber.


keines direkten Kontakts mit den Rechtsinhabern per E-Mail oder Ähnlichem. Das<br />

deutsche Vertragsrecht erkennt einen Vertragsschluss an, bei dem der Anbietende auf<br />

den Zugang der Annahme verzichtet 24 . Einem solchen Vertragsschluss steht auch nicht<br />

entgegen, dass die üblicherweise verwandten OSS-Lizenzen ausschließlich in englischer<br />

Sprache rechtlich bindend sind. Dies gilt nach der Entscheidung des Landgerichts<br />

München vom 19.05.2004 25 und der weit überwiegenden Zahl der juristischen Fachautoren<br />

jedenfalls dann, wenn ein Unternehmen oder eine Behörde Lizenznehmer<br />

werden möchte.<br />

Ein vertragsrechtliches Problem besteht bei OSS darin, dass die Rechtsinhaberschaft<br />

oftmals sehr unübersichtlich ist. Dies gilt für alle diejenigen OSS-Programme, die in einer<br />

weit verstreuten Entwicklergemeinschaft geschrieben worden sind. GNU/Linux ist hier<br />

das bekannteste Beispiel. Hunderte Programmierer, die weltweit verstreut sind, haben<br />

an dem Programm mitgearbeitet. Manche haben als freie Entwickler mitgewirkt und sind<br />

Inhaber der Urheberrechte an den Teilen, die sie beigesteuert haben. Andere haben als<br />

angestellte Programmierer gearbeitet. Hier sind in der Regel die Arbeitgeber Inhaber der<br />

wichtigsten Rechte 26 . Wieder andere haben ihre Rechte auf Organisationen, wie die<br />

Free Software Foundation Europe übertragen, welche die Rechte treuhänderisch wahrnehmen.<br />

27 Wer heute eine Lizenz an GNU/Linux erwirbt, schließt mit allen diesen<br />

Rechtsinhabern gleichzeitig identische Verträge mit dem Inhalt der GPL/LGPL ab. Dadurch<br />

sind die rechtlichen Verhältnisse in der Theorie kompliziert. In der Praxis ergeben<br />

sich daraus für die Nutzer jedoch keine entscheidungserheblichen Nachteile. Da die<br />

Rechtsinhaber bei einem nach den Bedingungen der GPL lizenzierten Programm alle die<br />

gleichen Vertragsbedingungen verwenden und zur gleichen Zeit den Vertrag mit dem<br />

Nutzer abschließen, macht es für diesen letztlich keinen spürbaren Unterschied, ob er<br />

den Erwerb von Nutzungsrechten an dem Programm von einem oder von mehreren<br />

Rechtsinhabern angeboten bekommt.<br />

Zudem tritt das Problem einer weit verstreuten Gemeinschaft von Rechtsinhabern nicht<br />

bei allen OSS-Programmen in gleichem Maße auf. Einige der am häufigsten genutzten<br />

Programme wurden in Unternehmen entwickelt und erst später nach den Bedingungen<br />

einer OSS-Lizenz freigegeben. Dies trifft zum Beispiel für OpenOffice.org zu. Hier liegen<br />

die Rechte an den wichtigsten Bestandteilen bei einem Unternehmen, dementsprechend<br />

sind die Vertragsverhältnisse einfacher.<br />

Im Hinblick auf das anwendbare Recht muss für die Lizenzverträge differenziert werden.<br />

Alle (Vor-)Fragen des Urheber- und Patentrechts, also insbesondere, ob entsprechende<br />

Rechte bestehen, wer Inhaber des Rechts ist, unter welchen Voraussetzungen Lizenzen<br />

eingeräumt werden können, richten sich nach deutschem Recht, sofern die jeweils in<br />

Frage stehende Nutzungshandlung (Vervielfältigung, Verbreitung, Veränderung etc.) in<br />

Deutschland stattfindet. Für die vertragsrechtlichen Fragen, insbesondere die Voraussetzungen<br />

des Vertragsschlusses, die Auslegung der Lizenzen, die vertragliche Haftung<br />

und Gewährleistung, findet dagegen deutsches Recht nur dann Anwendung, wenn die<br />

24<br />

25<br />

Vgl. § 151 BGB.<br />

Vgl. Landgericht München, Urteil vom 19.05.2004, siehe oben Fn. ■<br />

26<br />

Vgl. § 69b UrhG.<br />

27<br />

Vgl. das entsprechende Projekt der Free Software Foundation Europe unter<br />

http://www.germany.fsfeurope.org/projects/ftf/fla.de.html.<br />

Seite 48


Rechtsinhaber ihren Sitz oder gewöhnlichen Aufenthalt in Deutschland haben. Oft werden<br />

die Rechtsinhaber aber nicht in Deutschland sitzen, sondern in den USA oder einem<br />

anderen Land. Dann findet das jeweilige ausländische Recht auf die genannten Fragen<br />

Anwendung. Hier kann zumeist auch eine Rechtswahlklausel nicht weiterhelfen. Wenn<br />

die Rechte an einem Programm bei einer weltweiten Entwicklergemeinschaft liegen,<br />

dürfte es kaum möglich sein, Sondervereinbarungen jenseits der standardisierten OSS-<br />

Lizenzen zu erreichen. Liegen die Rechte hingegen bei einem Unternehmen oder einer<br />

kleineren Community, ist es ggf. möglich, eine Sondervereinbarung zum anwendbaren<br />

Recht zu erreichen. 28<br />

Vertrag mit<br />

Zwischenhändler<br />

Vertrag mit<br />

Rechtsinhabern<br />

Rechtsfrage Anwendbares Recht<br />

Zustandekommen des<br />

Vertrags<br />

Auslegung<br />

Rechtsfolgen bei Nichtleistung<br />

Vertragliche Haftung und<br />

Gewährleistung<br />

Zustandekommen des<br />

Vertrags<br />

Auslegung<br />

Rechtsfolgen bei entgegenstehenden<br />

Rechten Dritter<br />

Schutzfähigkeit des Werks<br />

bzw. der Erfindung<br />

Bestehen von Urheber- und<br />

Patentrechten<br />

Rechtsinhaberschaft<br />

Übertragbarkeit<br />

Lizenzierbarkeit<br />

Tabelle 6: Anwendbares Recht<br />

Seite 49<br />

Recht des Landes, in dem<br />

Zwischenhändler seinen Sitz<br />

hat<br />

Recht des Landes, in dem der<br />

Rechtsinhaber seinen Sitz hat<br />

Recht des Landes, für das<br />

Schutz beansprucht wird (= in<br />

dem urheber- bzw. patentrechtlich<br />

relevante Handlungen<br />

stattgefunden haben)<br />

4.4 Vergleich der Migration zu proprietärer Software und zu OSS<br />

Glaubt man den Aussagen der Anbieter von proprietärer Software, so sind die Vertragsverhältnisse<br />

bei der Nutzung proprietärer Software einfacher als bei OSS und dadurch<br />

vorteilhafter. Dies trifft aber nur in bestimmten Fallkonstellationen zu, bei anderen Sachverhaltsgestaltungen<br />

sind die Vertragsverhältnisse proprietärer Software mit Nachteilen<br />

gegenüber OSS verbunden. Es ist deswegen notwendig zu differenzieren.<br />

28 Beispielsweise MySQL bietet zwei Lizenzmöglichkeiten an. Nutzer können die Software<br />

entweder nach den Bestimmungen der GPL nutzen oder eine "Commercial license" erwerben,<br />

vgl. http://www.mysql.com/company/legal/licensing. Hier sind dann ggf. auch Rechtswahlklauseln<br />

möglich.


Bei beiden Vertriebsmodellen sind Konstellationen möglich, in denen die Behörde nur<br />

einen Vertrag mit einem Vertragspartner für die Softwareüberlassung abschließen muss.<br />

In bestimmten Fällen wird der Inhaber der Rechte an einer proprietären Software diese<br />

der Behörde auch direkt überlassen. In diesem Fall handelt es sich um einen Vertrag<br />

zwischen zwei (juristischen) Personen, in dem sowohl die Überlassung der Bits und<br />

Bytes als auch die Einräumung von Nutzungsrechten geregelt sind. 29 Dies hat den<br />

Vorteil der Übersichtlichkeit und Einfachheit. Solange die Behörde die Software nur<br />

bestimmungsgemäß benutzt, hat es allerdings auch bei OSS mit einem solchen<br />

Zweipersonenverhältnis sein Bewenden. Denn bei einer bloß bestimmungsgemäßen<br />

Benutzung von OSS durch Behörden (und damit im Regelfall) werden keine Lizenzverträge<br />

mit den Rechtsinhabern abgeschlossen.<br />

Handelt es sich dagegen um ein Dreipersonenverhältnis zwischen Nutzer, Rechtsinhaber<br />

und Zwischenhändler, so sind die rechtlichen Probleme bei proprietärer Software<br />

größer. Proprietäre Software wird nicht immer im Zweipersonenverhältnis überlassen.<br />

Gerade kleinere Behörden werden Software oft nicht direkt beim Rechtsinhaber erwerben,<br />

sondern im Einzelhandel oder über sonstige lokale Dienstleister. In diesem Fall<br />

kann es ebenfalls zu Dreipersonenverhältnissen kommen, und zwar dann, wenn der<br />

Rechtsinhaber den Abschluss eines Lizenzvertrags wünscht. Anbieter proprietärer Programme<br />

verlangen regelmäßig vom Erwerber einer Standardsoftware, dass dieser neben<br />

dem Kaufvertrag mit dem Einzelhändler ein zusätzliches "End User License Agreement"<br />

(EULA) mit dem Rechtsinhaber direkt abschließt. Dieser Lizenzvertrag soll typischerweise<br />

durch das Anwählen eines "o.k."-Buttons oder die Benutzung der Software zustande<br />

kommen. 30 Die Wirksamkeit entsprechender Verträge wird von namhaften Fachautoren<br />

mit guten Argumenten verneint. 31 Gerichtsentscheidungen liegen hierzu allerdings nicht<br />

vor. Es fehlt an entsprechenden Klagen der Rechtsinhaber gegen die Kunden auf Einhaltung<br />

der oftmals restriktiven Lizenzverträge.<br />

Demgegenüber ist der Vertrieb von OSS über Einzel- oder Zwischenhändler beziehungsweise<br />

Dienstleister weniger problematisch. Solange die Behörde die Software<br />

lediglich bestimmungsgemäß benutzt, kommt es überhaupt nicht zum Abschluss eines<br />

Lizenzvertrags mit den Rechtsinhabern. Ist aber ein Lizenzvertrag erforderlich, weil die<br />

Behörde die Rechte aus der GPL oder einer anderen OSS-Lizenz wahrnehmen möchte<br />

(etwa weil man Vervielfältigungen oder Veränderungen des Programms vornehmen<br />

möchte), so wirft das dadurch entstehende Dreipersonenverhältnis weniger rechtliche<br />

Probleme auf als im Fall der EULAs. Während die OSS-Lizenz dem Nutzer Rechte<br />

einräumt, die über die bereits nach dem Gesetz erlaubte bestimmungsgemäße<br />

Benutzung hinausgehen, beschränken EULAs diese Rechte, indem Weitergabeverbote,<br />

CPU-Klauseln und Ähnliches zulasten des Nutzers vereinbart werden. Warum aber<br />

sollte ein Nutzer, der durch den Erwerb einer rechtmäßig in Verkehr gebrachten<br />

Programmkopie bereits das Recht zur bestimmungsgemäßen Benutzung gemäß §§ 69d<br />

29<br />

Vgl. z.B. die hierauf zugeschnittenen EVB-IT Überlassung Typ A, abrufbar unter<br />

http//www.kbst.bund.de/.<br />

30<br />

Vgl. zu den heute üblichen Vertragsgestaltungen in diesem Bereich exemplarisch Marly,<br />

Softwareüberlassungverträge (4. Aufl. 2003), S. 213 ff. mit zahlreichen Beispielen aus der<br />

Vertragspraxis.<br />

31<br />

So im Ergebnis auch Marly, a.a.O., S. 225; vgl. auch Dreier/Schulze, Urheberrechtsgesetz<br />

(2. Aufl. 2006), § 69c, Rz. 33; Redeker, IT-Recht (4. Aufl. 2007), S. 170 f.<br />

Seite 50


und § 69e UrhG erworben hat, nachträglich einer Beschränkung dieser Rechte zustimmen<br />

wollen? Es ist mehr als fragwürdig, ein Anwählen des "o.k."-Buttons als Zustimmung<br />

zu werten, wenn dem Nutzer keine andere Möglichkeit offensteht, die bereits<br />

erworbene Software überhaupt verwenden zu können. Diese spezifischen Probleme der<br />

EULAs treffen auf OSS-Lizenzen nicht zu.<br />

5 Urheberrecht<br />

5.1 Einleitung<br />

Eine zweite Gruppe von rechtlichen Argumenten, die angeblich gegen den Einsatz von<br />

OSS sprechen, betrifft urheberrechtliche Fragen. So wird von Anbietern proprietärer<br />

Lösungen häufig ins Feld geführt, dass die Rechtseinräumung in den üblicherweise<br />

genutzten OSS-Lizenzen nicht mit dem deutschen Urheberrecht vereinbar sei. Auch wird<br />

auf ein erhöhtes Risiko der Verletzung von Urheberrechten Dritter beim Einsatz von OSS<br />

und daraus folgende Schadensersatzansprüche verwiesen. Die in diesem Zusammenhang<br />

genannten Rechtsfragen führen in der Praxis jedoch zu keinen nennenswerten<br />

Gefahren für die Nutzer. Im Vergleich zu üblichen Lizenzbedingungen proprietärer Software<br />

zeigt sich vielmehr, dass die Nutzung von OSS für Behörden in urheberrechtlicher<br />

Sicht von Vorteil ist.<br />

5.2 Zulässigkeit von OSS-Lizenzen nach deutschem Urheberrecht<br />

Sofern es für eine Behörde notwendig ist, eine OSS-Lizenz abzuschließen, stellt sich die<br />

Frage nach der urheberrechtlichen Zulässigkeit der in den Lizenzen geregelten Rechte<br />

und Pflichten. Dies ist von Bedeutung für die Planungssicherheit im Hinblick auf die<br />

erworbenen Rechte und die damit einhergehenden Pflichten.<br />

Will man die Fülle der hierzu erschienenen Fachveröffentlichungen in einem Satz<br />

zusammenfassen, so könnte man festhalten, dass die GPL und die anderen weitverbreiteten<br />

OSS-Lizenzen im Grundsatz mit dem deutschen Urheberrecht vereinbar sind.<br />

Dies ist auch das Ergebnis der bereits erwähnten Entscheidungen der Landgerichte<br />

München und Frankfurt am Main, welche die zentralen Bestimmungen der GPL (Ziffern<br />

2, 3 und 4) für urheberrechtlich unbedenklich erklärt haben. 32 Die in der Fachliteratur<br />

geäußerten rechtlichen Bedenken gegen einzelne Klauseln der OSS-Lizenzen haben<br />

bislang ebenfalls nicht zu gerichtlichen Auseinandersetzungen oder sonstigen<br />

Problemen in der Praxis geführt. Sie sollen hier gleichwohl behandelt werden, um<br />

etwaige Befürchtungen von Behörden auszuräumen.<br />

Als ein erstes Problem wird oftmals darauf hingewiesen, dass es nach deutschem<br />

Urheberrecht wegen § 31 Abs. 4 UrhG (a.F.) nicht möglich sei, für Nutzungsarten Rechte<br />

einzuräumen, die zum Zeitpunkt des Vertragsschlusses noch nicht bekannt gewesen<br />

sind. Würde man auf den Zeitpunkt der ersten Lizenzierung durch den Rechtsinhaber<br />

abstellen, so die Argumentation, so wäre es etwa für den Linux-Kernel durchaus fraglich,<br />

ob auch solche Nutzungsarten umfasst sind, die erst Ende der 90er Jahre in ihrer<br />

32 Vgl. Landgericht München, Urteil vom 19.05.2004, oben Fn. ■; LG Frankfurt a.M., Urteil<br />

v. 06.09.2006, oben Fn. ■; LG München, Urteil v. 12.07.2007, oben Fn. ■.<br />

Seite 51


wirtschaftlichen Bedeutung bekannt geworden sind. 33 Als Beispiel wird hier das<br />

sogenannte Application Service Providing genannt. Dieses Problem hat in der<br />

Vergangenheit zu keinen erkennbaren Problemen in der Praxis geführt. Es wurde zudem<br />

durch die zum 01.01.2008 in Kraft getretene Urheberrechtsnovelle für die Zukunft gelöst.<br />

Gemäß § 31a Abs. 1 S. 2 UrhG können in OSS-Lizenzen künftig auch Nutzungsrechte<br />

an unbekannten Nutzungsarten eingeräumt werden, ohne dass es der Einhaltung der<br />

Schriftform wie sonst nach § 31a UrhG vorgesehen bedürfte. Für die Einräumung<br />

entsprechender Nutzungsrechte ist auch nicht die Zahlung einer besonderen Vergütung<br />

geschuldet, da der Gesetzgeber in § 32c Abs. 3 S. 3 UrhG insoweit eine Ausnahmevorschrift<br />

für OSS-Lizenzen geschaffen hat.<br />

Als zweiter Problembereich wird auf den Erschöpfungsgrundsatz aus § 69c Nr. 3 Satz 2<br />

UrhG verwiesen. 34 Die Frage der Erschöpfung des Verbreitungsrechts ist aus Sicht der<br />

Behörde als Nutzer jedoch irrelevant. Die OSS-Lizenzen verbieten die Weitergabe einer<br />

einmal rechtmäßig in den Verkehr gebrachten Programmkopie nicht, auch werden keine<br />

Bedingungen an die Weitergabe dieser Programmkopie geknüpft.<br />

Genannt werden schließlich die Urheberpersönlichkeitsrechte der Softwareentwickler. 35<br />

Gemäß §§ 69a Abs. 4, 14 UrhG kann sich der Urheber eines Computerprogramms<br />

gegen Entstellungen oder Beeinträchtigungen seines Werkes zur Wehr setzen, sofern<br />

diese geeignet sind, seine persönlichen oder geistigen Interessen zu verletzten. Dieses<br />

Verbotsrecht steht im Konflikt zur Veränderungsfreiheit, welche die OSS-Lizenzen jedem<br />

Nutzer einräumt. Bei Veränderungen eines Computerprogramms dürften Verletzungen<br />

des Urheberpersönlichkeitsrechts allerdings nur in Ausnahmefällen gegeben sein. Auch<br />

dieses Problem hat bislang in der Praxis zu keinen bekannt gewordenen Konflikten<br />

zwischen Rechtsinhabern und Nutzern von OSS geführt.<br />

5.3 Umfang der Rechtseinräumung bei OSS-Lizenzen<br />

Die genannten theoretischen Probleme bei der Einräumung von Nutzungsrechten durch<br />

OSS Lizenzen sollten nicht den Blick darauf verstellen, dass die Rechtseinräumung<br />

durch OSS Lizenzen für den Nutzer mit erheblichen praktischen Vorteilen verbunden ist.<br />

Diese können für die Migrationsentscheidung von Behörden bedeutsam sein. Ist für eine<br />

Behörde eine Nutzung von Software notwendig oder wünschenswert, die über eine bloß<br />

bestimmungsgemäße Benutzung hinausgeht, so ist dies bei OSS ohne Weiteres möglich.<br />

Eine Lizenz entspricht nur dann den Kriterien der Open Source Definitionen 36 und<br />

der Free Software Definition 37 , wenn sie dem Nutzer umfangreiche "Freiheiten" im Umgang<br />

mit dem Programm einräumt, insbesondere das Programm in veränderter oder<br />

unveränderter Form vervielfältigen und verbreiten zu können.<br />

Rechtstechnisch handelt es sich hierbei um die Einräumung einfacher, urheberrechtlicher<br />

Nutzungsrechte gemäß § 31 Abs. 2 UrhG. Dieser umfassende Rechtserwerb geht<br />

denkbar einfach vonstatten. Wer die Rechte aus den Lizenzen wahrnehmen möchte,<br />

33 Vgl. etwa Spindler, Rechtsfragen bei Open Source (2004), S. 75 ff.<br />

34 Vgl. Spindler, Rechtsfragen bei Open Source (2004), S. 91 ff.<br />

35 Vgl. hierzu exemplarisch Teupen, "Copyleft" im deutschen Urheberrecht (2007), S. 192.<br />

36 Abrufbar unter http://opensource.org/docs/osd.<br />

37 Abrufbar unter http://www.gnu.org/philosophy/free-sw.html.<br />

Seite 52


kann dies ohne Weiteres tun, solange er auch die Verpflichtungen einhält, die die<br />

jeweilige Lizenz mit sich bringt. Die Einräumung der Nutzungsrechte erfolgt kostenfrei.<br />

Einige Autoren weisen darauf hin, dass die Einräumung des Rechts für den unkörperlichen<br />

Vertrieb, insbesondere das Bereithalten zum Download im Internet, bei einigen<br />

der wichtigsten OSS-Lizenzen zweifelhaft sei. 38 Die GPL <strong>Version</strong> 2 und die BSD Lizenz<br />

räumen zwar ausdrücklich das Recht ein, das Programm in körperlicher Form zu verbreiten<br />

("distribute"), erwähnen aber den unkörperlichen Vertrieb nicht explizit. Verwiesen<br />

wird in diesem Zusammenhang auch auf § 31 Abs. 4 UrhG a.F.; es sei zu fragen, ab<br />

welchem Zeitpunkt der Vertrieb in Datennetzen in seiner wirtschaftlichen Bedeutung<br />

bekannt gewesen sei. 39<br />

Dem ist entgegenzuhalten, dass in der US-amerikanischen Terminologie das Wort "distribute"<br />

auch den unkörperlichen Vertrieb umfasst. Oft wird ohnehin für die Auslegung<br />

eines der 50 US-amerikanischen Vertragsrechte maßgeblich sein, weil der Lizenzgeber<br />

in den USA sitzt. In den Fällen, in denen eine Auslegung nach deutschem Recht vorzunehmen<br />

ist, muss berücksichtigt werden, dass die genannten OSS-Lizenzen in ihrer<br />

Terminologie auf das US-amerikanische Recht Bezug nehmen. Dessen Begriffe sind<br />

deswegen auch bei Anwendung des deutschen Rechts zu berücksichtigen. 40 Schließlich<br />

ist auf den letzten Absatz von Ziffer 3 GPL <strong>Version</strong> 2 hinzuweisen. Dort heißt es: "If distribution<br />

of executable or object code is made by offering access to copy from a designated<br />

place [...]; mit "designated place" kann in diesem Zusammenhang nur eine Internetadresse<br />

gemeint sein, von der das Programm abgerufen werden kann. Dies spricht<br />

ebenfalls für eine Einbeziehung des unkörperlichen Vertriebs. Im Hinblick auf § 31 Abs.<br />

4 UrhG kann auf das oben Ausgeführte verwiesen werden. Im Ergebnis ist deswegen<br />

davon auszugehen, dass auch der Vertrieb in Datennetzen wie dem Internet nach der<br />

GPL <strong>Version</strong> 2 und der BSD-Lizenz gestattet ist.<br />

Die GPL <strong>Version</strong> 3 sieht in Ziffer 2 nunmehr auch ausdrücklich die Erlaubnis zum<br />

Onlinevertrieb vor. Der dort verwendete Begriff „propagate― umfasst nach der Definition<br />

in Ziffer 0 der Lizenz auch das Recht der öffentlichen Zugänglichmachung. 41 Das<br />

Problem wird sich deshalb in Zukunft ohnehin weiter entschärfen, weil bereits heute<br />

zahlreiche OSS-Programme nach den Bedingungen der GPL <strong>Version</strong> 3 genutzt werden<br />

können und zudem mit dem Übergang weiterer Projekte auf die neue Lizenz zu rechnen<br />

ist.<br />

5.4 Entgegenstehende Urheberrechte Dritter<br />

Eine verbreitete Befürchtung beim Einsatz von OSS betrifft entgegenstehende Urheberrechte<br />

Dritter. Sind die Nutzer von OSS einer erhöhten Gefahr von Schadensersatz- und<br />

Unterlassungsansprüchen ausgesetzt? Ein Praxisbeispiel bietet hier der seit Jahren aus-<br />

38<br />

Vgl. insbesondere Spindler, a.a.O., 82.<br />

39<br />

Vgl. insbesondere Spindler, a.a.O., 82.<br />

40<br />

Vgl. Metzger, in: Hilty/Peukert, Interessenausgleich im Urheberrecht (2004), 253, 260 mit<br />

weiteren Nachweisen.<br />

41<br />

Siehe hierzu Jaeger/Metzger, Die neue <strong>Version</strong> 3 der GNU General Public License, Gewerblicher<br />

Rechtsschutz und Urheberrecht 2008, 130, 134.<br />

Seite 53


gefochtene Rechtsstreit zwischen SCO und IBM 42 . SCO beschuldigt IBM, Bestandteile<br />

von Programmen, an denen SCO behauptet die Rechte innezuhaben, ohne die erforderliche<br />

Erlaubnis in Linux integriert und damit Geschäftsgeheimnisse, Verträge sowie die<br />

Urheberrechte an den fraglichen Modulen verletzt zu haben. 43 Es soll hier nicht um die<br />

Details dieses Rechtsstreits gehen. Dieser dient nur als Illustration der folgenden Frage:<br />

Welche Risiken hat eine Behörde zu befürchten, wenn sich im Nachhinein herausstellt,<br />

dass an genutzter OSS Rechte Dritter bestehen?<br />

Für die Beantwortung sind zwei Situationen zu unterscheiden. Es macht einen Unterschied,<br />

ob die Behörde die Software (1.) vervielfältigt, verbreitet oder verändert oder (2.)<br />

ob sie sie nur bestimmungsgemäß benutzt hat.<br />

Im ersten Fall liegt es auf der Hand, dass eine entsprechende Nutzung nur urheberrechtlich<br />

zulässig ist, wenn der Rechtsinhaber hierfür die entsprechenden Rechte eingeräumt<br />

hat, insbesondere das Programm oder die Programmteile, an denen er die Rechte<br />

hält, einer OSS-Lizenz unterstellt hat. Stellt sich im Nachhinein heraus, dass der<br />

vermeintliche Lizenzgeber nicht Inhaber der Rechte an dem gesamten Programm ist, so<br />

kann der Behörde die weitere Verbreitung des Gesamtprogramms für die Zukunft<br />

untersagt werden. Für die Vergangenheit können Schadensersatzforderungen geltend<br />

gemacht werden, sofern die Behörde ein Verschulden trifft. 44 Wer urheberrechtlich<br />

geschützte Güter nutzt, muss sich über die hierfür erforderlichen Rechte Gewissheit<br />

verschaffen, um nicht seine Sorgfaltspflichten zu verletzen. Handelt es sich bei den<br />

fraglichen Programmen um bekannte OSS-Programme oder Module, die seit längerer<br />

Zeit ohne Beanstandung frei verfügbar sind und die zudem eine weite Verbreitung gefunden<br />

haben, etwa durch die Aufnahme in einen offiziellen Release eines der großen<br />

Distributoren, so sollte eine Behörde in der Regel darauf vertrauen dürfen, dass die<br />

vermeintlichen Lizenzgeber die Rechte an den Programmen innehaben. Bei weniger<br />

weitverbreiteten, erst für kürzere Zeit als OSS erhältlichen Programmen kann dagegen<br />

auch eine aktive Überprüfung der Rechtsinhaberschaft, insbesondere durch Erkundigung<br />

bei den vermeintlichen Rechtsinhabern und Anbietern ähnlicher, proprietärer<br />

Konkurrenzprodukte anzuraten sein. Unterlassungs- als auch Schadensersatzansprüche<br />

beziehen sich dabei stets nur auf den Teil des Programms, für den entgegenstehende<br />

Rechte Dritter bestehen. Das heißt, die anderen Programmteile, die nicht mit Rechten<br />

Dritter belastet sind, dürfen weiter verbreitet werden.<br />

Im zweiten Fall ist die Rechtslage etwas komplizierter. Hier kann es so sein, dass der<br />

Zwischenhändler, von dem die Behörde das Programm erhalten hat, dieses nicht vertreiben<br />

durfte, da die OSS-Lizenz ihm hierfür nicht die erforderlichen Rechte vermittelt<br />

hat. Dies führt dazu, dass sich die Behörde nicht auf § 69d Abs.1 UrhG berufen kann, da<br />

ihre Programmkopie nicht rechtmäßig in den Verkehr gelangt ist.<br />

Auf den ersten Blick scheint als Ergebnis festzustehen, dass sie das gesamte Programm<br />

nicht mehr benutzen darf; schließlich ist das Programm nicht rechtmäßig in Verkehr<br />

42<br />

Siehe den Text der 06.03.2003 in Salt Lake City erhobenen Klage unter<br />

http://www.sco.com/scoip/lawsuits/ibm/<br />

43<br />

Siehe zum Prozessverlauf die zahlreichen unter http://www.groklaw.net abrufbaren Prozessdokumente.<br />

44<br />

Zur Berechnung des Schadensersatzes vergleiche Schricker-Wild, Urheberrecht (2. Aufl.<br />

1999), § 97, Rz. 56 ff.<br />

Seite 54


gebracht worden. Dieser erste Anschein trügt aber. Es wurde bereits darauf<br />

hingewiesen, dass manche OSS-Lizenzen, etwa die BSD-Lizenz, dem Nutzer auch das<br />

Recht einräumen, die Software einfach nur zu benutzen, das heißt, bestimmungsgemäß<br />

ablaufen zu lassen. Diese Klauseln erlangen Bedeutung, wenn sich der Nutzer nicht auf<br />

die gesetzliche Lizenz des § 69d Abs. 1 UrhG berufen kann, weil es hierfür an den<br />

Voraussetzungen fehlt. Auch die GPL, welche an sich ja die einfache Benutzung aus<br />

ihrem Anwendungsbereich ausklammert, hält für diese Situation ein Hilfsmittel<br />

zugunsten der Nutzer bereit. Ziffer 7 GPL <strong>Version</strong> 2 und Ziffer 12 GPL <strong>Version</strong> 3 verbieten<br />

den Vertrieb eines Programms unter der GPL, wenn dieses durch ein<br />

Gerichtsurteil oder auf andere Weise untersagt worden ist. In diesem Fall sollen gemäß<br />

Ziffer 4 GPL <strong>Version</strong> 2 und Ziffer 8 GPL <strong>Version</strong> 3 aber nur die Rechte des Lizenznehmers<br />

entfallen. Rechtspositionen Dritter, die vom Lizenznehmer Programmkopien<br />

erhalten haben, sollen hingegen fortbestehen, solange der Dritte die Bestimmungen der<br />

Lizenz einhält.<br />

Freilich kann das nur für die Programmteile gelten, an denen die Lizenzgeber auch tatsächlich<br />

die Rechte innehaben. Diese Programmteile dürfen weiter benutzt werden. Für<br />

die Teile des Programms, auf denen Rechte Dritter lasten, können gegen die Behörde<br />

unter den oben genannten Voraussetzungen Unterlassungs- und Schadensersatzansprüche<br />

geltend gemacht werden.<br />

Man stelle sich etwa folgenden Beispielfall vor. Ein Entwicklungsprojekt stellt eine<br />

umfangreiche Datenbanksoftware unter die GPL und verbreitet das Programm. Die<br />

Behörde A lädt sich die Software herunter, modifiziert sie für die besonderen Anforderungen<br />

von Behörden und vertreibt sie an die Behörden B, C und D. Stellt sich im<br />

Nachhinein heraus, dass einer der Programmierer des Projekts unsauber gearbeitet und<br />

einzelne Teile des Programms in urheberrechtlich unzulässiger Weise übernommen hat,<br />

so kann der Inhaber der Rechte an diesen Programmteilen grundsätzlich nur die<br />

Verbreitung und Benutzung dieser Programmteile untersagen. Daraus folgt, dass A die<br />

Verbreitung dieser Programmteile untersagt werden kann, nicht aber die Verbreitung der<br />

sonstigen Programmteile. Lässt sich der problematische Bestandteil ersetzen, so kann<br />

das auf diese Weise bereinigte Gesamtprogramm weiter verbreitet werden. B, C, und D<br />

kann ebenfalls nur die Benutzung der Programmteile untersagt werden, an denen<br />

Rechte Dritter bestehen. Können diese ersetzt oder gelöscht werden, etwa weil der<br />

jeweilige Benutzer diese Programmbestandteile gar nicht benötigt, so darf das Restprogramm<br />

weiterhin benutzt werden.<br />

Wo sich eine Behörde aufgrund entgegenstehender Rechte Dritter entsprechenden<br />

Ansprüchen ausgesetzt sieht, ist jeweils zu fragen, ob sie ihrerseits Ansprüche gegen<br />

ihre Vertragspartner geltend machen kann. Dies ist eine Frage der Gewährleistung<br />

(siehe auch I.B 7).<br />

5.5 Vergleich der Migration zu proprietärer Software und zu OSS<br />

Im Hinblick auf die urheberrechtlichen Fragestellungen ergeben sich aus der Sicht einer<br />

Behörde als Nutzer eine Reihe relevanter Unterschiede zwischen einer Migration zu<br />

proprietärer Software und einer Migration zu OSS.<br />

Seite 55


Hierbei ist zunächst festzustellen, dass die unter I.B 5 thematisierten rechtlichen Probleme<br />

der OSS-Lizenzen, soweit diese praktisch überhaupt relevant werden, auch bei<br />

proprietären Lizenzmodellen auftreten können. Es handelt sich hier nicht um spezifische<br />

Rechtsfragen der OSS. Vielmehr können entsprechende rechtliche Probleme sowohl bei<br />

OSS als auch bei proprietärer Software auftreten.<br />

Erhebliche Vorteile von OSS gegenüber proprietären Konkurrenzprodukten sind im<br />

Hinblick auf den Umfang der Rechtseinräumung festzuhalten. OSS-Lizenzen erlauben<br />

den Behörden eine denkbar umfassende Nutzung der Programme, der Erwerb dieser<br />

Rechte ist kostenfrei und in der Abwicklung denkbar einfach. Demgegenüber gestatten<br />

proprietäre Softwarelizenzen in der Regel nur eine bestimmungsgemäße Benutzung der<br />

Software. Hinzu kommen die mannigfaltigen Verwendungs- und Weitergabebeschränkungen<br />

in üblichen Softwarelizenzen, die den ohnehin geringen Spielraum der<br />

Nutzer zusätzlich einengen. Benötigt der Nutzer zusätzliche Rechte, etwa weil er die<br />

Software verändern oder in weiterem Umfang einsetzen möchte, so muss er in aller<br />

Regel eine erhöhte Lizenzgebühr hinnehmen. Entsprechende Vertragsgestaltungen sind<br />

üblich und oft auch rechtlich wirksam, etwa die Erhöhung der Lizenzgebühren bei der<br />

Verwendung von Software auf einer leistungsstärkeren Hardware. 45<br />

Für die unter I.B 5.4 genannten Unterlassungs- und Schadensersatzansprüche können<br />

sich dagegen gewisse Vorteile für eine Migration zu proprietärer Software ergeben. Es<br />

ist zwar festzuhalten, dass eine Behörde als Softwarenutzer nie absolut sicher sein<br />

kann, dass der weiteren Nutzung eines Programms keine Rechte Dritter entgegenstehen.<br />

Entsprechende Probleme sind allerdings umso weniger wahrscheinlich, je<br />

seriöser und transparenter die Herkunft eines Programms ist. OSS wird hier mitunter mit<br />

Nachteilen behaftet sein, wenn die Herkunft eines Programms nicht oder nur mit<br />

erheblichem Aufwand geklärt werden kann, während das konkurrierende, proprietäre<br />

Produkt eindeutig zuzuordnen ist. Hier zeigen sich die Nachteile der dezentralen Entwicklung<br />

im Rahmen von mitunter weltweit verstreuten Communities. Freilich ist auch die<br />

umgekehrte Situation denkbar, in der die Herkunft eines proprietären Programms<br />

weniger transparent ist als diejenige der konkurrierenden OSS; dies gilt umso mehr, als<br />

die Behörde bei OSS in jedem Fall den Quellcode untersuchen und dadurch Hinweise<br />

auf die Herkunft des Programms erhalten kann. Man muss hier also die jeweils in<br />

Konkurrenz stehenden Produkte im Einzelfall vergleichen. Zu berücksichtigen ist bei der<br />

Evaluierung der Migration zu proprietärer Software durchaus auch, welche diesbezüglichen<br />

Erfahrungen die Behörde mit den jeweiligen Anbietern in der Vergangenheit<br />

gemacht hat.<br />

Urheberrechtliche Zulässigkeit<br />

einzelner Lizenzklauseln<br />

Migration zu OSS Migration zu proprietärer<br />

Software<br />

Aus der Sicht der Nutzer keine<br />

praktisch relevanten Rechtsprobleme<br />

Seite 56<br />

Bei entsprechender Vertragsgestaltung<br />

keine praktisch<br />

relevanten Rechtsprobleme<br />

45 Siehe hierzu Bundesgerichtshof, Urteil vom 24.10.2002, Neue Juristische Wochenschrift<br />

2003, 2014.


Umfang der Rechtseinräumungen<br />

Risiko entgegenstehender<br />

Rechte Dritter<br />

6 Patentrecht<br />

6.1 Einleitung<br />

Migration zu OSS Migration zu proprietärer<br />

Software<br />

Sehr weitgehend Oft restriktiv<br />

Erhöht bei unklarer Herkunft,<br />

geringer bei seriösen Projekten<br />

Tabelle 7 Urheberrechtliche Fragen:<br />

Seite 57<br />

Erhöht bei unklarer Herkunft,<br />

geringer bei seriösen Anbietern<br />

Die Fragen des Patentrechts haben in der Diskussion der letzten Jahre um die Rechtssicherheit<br />

von OSS breiten Raum eingenommen. Die Angst vor rechtlichen Risiken<br />

durch Patente wird dabei sowohl von den konkurrierenden Anbietern proprietärer<br />

Produkte geschürt als auch von den OSS-Projekten selbst, die regelmäßig auf die rechtlichen<br />

Gefahren durch Softwarepatente hinweisen, zuletzt an prominenter Stelle in der<br />

Präambel der GPL <strong>Version</strong> 3. Bei näherer Betrachtung sind die rechtlichen Risiken bei<br />

der Nutzung von OSS jedoch beherrschbar. Im Folgenden sollen die vielfach diskutierten<br />

rechtspolitischen Fragen ausdrücklich ausgeklammert werden. Der <strong>Migrationsleitfaden</strong><br />

konzentriert sich auf den juristischen Status quo aus der Perspektive einer Behörde als<br />

Nutzer. Versucht man diesen zu beschreiben, so ist zunächst darauf hinzuweisen, dass<br />

allein das europäische Patentamt seit 1993 über 30.000 Patente für programmbezogene<br />

Erfindungen in allen Technikbereichen erteilt hat, zu denen auch Erfindungen zum Beispiel<br />

im Automobilbau, im Maschinenbau und in der Mess- und Regeltechnik gehören,<br />

weil bei ihnen Computerprogramme eingesetzt werden. Hinzu kommen die vom Deutschen<br />

Patent- und Markenamt in diesem Bereich erteilten Patente. Dadurch ist es<br />

bereits heute möglich, ein realistisches Bild von den rechtlichen Problemen zu gewinnen,<br />

welche sich für die Nutzer von OSS durch Patente in den verschiedenen Bereichen der<br />

Informationstechnologie ergeben können, unabhängig von der im Juli 2005 gescheiterten<br />

europäischen "Richtlinie über die Patentierbarkeit computerimplementierter Erfindungen".<br />

46 Es liegt allerdings in der Natur der Sache, dass die im Folgenden dargestellten<br />

rechtlichen Probleme mit einer wachsenden Zahl von Patenten in zunehmendem<br />

Maße auftreten dürften. Ein Beispiel aus der Vergangenheit für ein Migrationsprojekt<br />

eines öffentlichen Trägers, welches wegen patentrechtlicher Fragestellungen vorübergehend<br />

gestoppt wurde, hat das "Limux"-Projekt der Stadt München geboten. 47 Ein von<br />

der Stadt München in Auftrag gegebenes Kurzgutachten kam dabei zu dem Ergebnis,<br />

dass "das Risiko einer Verstrickung der Stadt München in einen Patentverletzungs-<br />

46 Vgl. zu den Entwürfen der Europäischen Kommission, des Rats und des Europäischen<br />

Parlaments im Einzelnen Metzger, Softwarepatente im künftigen europäischen Patentrecht,<br />

Computer und Recht 2003, 313 und Metzger, EP: Eindämmung der Softwarepatente verabschiedet,<br />

Computer und Recht 2003, 871.<br />

47 Siehe http://www.muenchen.de/limux.


prozess nach der bestehenden Rechtslage als gering einzustufen" sei. 48 Die Stadt hat<br />

das Projekt daraufhin fortgesetzt. Patentrechtliche Verletzungsverfahren gegen Nutzer<br />

von OSS wegen dieser Nutzung sind bisher nicht bekannt geworden.<br />

6.2 Entgegenstehende Patentrechte Dritter bei Nutzung von OSS<br />

Patentrechtliche Probleme könnten sich vor allem dann für Behörden als Nutzer von<br />

OSS ergeben, wenn Dritte Inhaber von Patenten sind, die durch die Nutzung von Software<br />

verletzt werden.<br />

Ob eine Patentverletzung vorliegt, ist gemäß § 9 PatG zu bestimmen. Man wird sowohl<br />

bei einem sogenannten Erzeugnispatent gemäß § 9 Nr. 1 PatG (Verbindung von Hard-<br />

und Software; programmgesteuerte Maschinen etc.) als auch bei einem Verfahrenspatent<br />

gemäß § 9 Nr. 2 PatG (in Software umgesetzte Lehren zum technischen Handeln,<br />

zum Beispiel ein programmgesteuertes Messverfahren) davon auszugehen haben, dass<br />

bereits die bloße bestimmungsgemäße Benutzung einer geschützten Software eine<br />

Verletzung dieses Patents darstellen kann. Für das Erzeugnispatent kann es sich bei der<br />

Benutzung eines Programms um ein "Gebrauchen" im Sinne von § 9 Nr. 1 PatG<br />

handeln. Wenn etwa in einer Behörde eine patentrechtlich geschützte Maschine benutzt<br />

wird, so liegt eine Patentverletzung vor. Einschränkungen sind hier nur denkbar, wenn<br />

lediglich ein Teil der von der Behörde genutzten Vorrichtung patentrechtlich geschützt<br />

ist. Hier kommt es darauf an, ob der geschützte Teil für das Ganze wesentlich ist. Bei<br />

einem Verfahrenspatent kann die bloße Benutzung von Software eine "Anwendung" des<br />

geschützten Verfahrens im Sinne von § 9 Nr. 2 PatG und damit eine Patentverletzung<br />

darstellen.<br />

Als Patentverletzung ist in beiden Fällen auch der Vertrieb des Programms anzusehen<br />

("Inverkehrbringen" oder "Anbieten").<br />

Liegt eine Patentverletzung vor, so können gegen die Behörde Unterlassungs- und<br />

Schadensersatzansprüche geltend gemacht werden. Schadensersatz ist auch im Patentrecht<br />

nur unter der Voraussetzung zu leisten, dass die Behörde ein Verschulden trifft,<br />

wobei leichte Fahrlässigkeit ausreichen kann. Die Gerichte legen gerade bei Unternehmen<br />

hierbei einen strengen Maßstab an. Es wird im Grundsatz erwartet, dass man sich<br />

über bestehende Schutzrechte informiert. Gewisse Milderungen sind allerdings in den<br />

Fällen möglich, in denen ein Unternehmen das Programm wie ein Endabnehmer nutzt,<br />

ohne genauere Fachkenntnis zu haben. 49 Diese Grundsätze wird man auch bei<br />

Behörden anzuwenden haben. Behörden dürfen sich beim Einsatz von Programmen, die<br />

sie von professionellen Distributoren oder Dienstleistungsunternehmen erworben haben<br />

und die sie als Endabnehmer selbst nutzen, in der Regel darauf verlassen, dass der<br />

Anbieter bei der Zusammenstellung der Programme die Schutzrechtslage geprüft und<br />

beachtet hat. Besondere Prüfpflichten seitens der Behörde bestehen dann nicht. In<br />

diesen Fällen dürfte es auch nur selten zu einer Inanspruchnahme der Behörde<br />

kommen, da sich die Schutzrechtsinhaber hier zunächst an den Anbieter halten werden.<br />

48 Vgl. das Kurzgutachten von Sedlmaier/Gigerich vom 10.09.2004, abrufbar unter<br />

http://www.jurpc.de/aufsatz/20050010.htm<br />

49 Vgl. Kraßer, Patenrecht (5. Aufl. 2004), S. 876; Benkard, Patentgesetz (10. Aufl. 2006), §<br />

139, Rz. 47.<br />

Seite 58


Bei konkreten Hinweisen auf bestehende Patente kann jedoch erhöhte Aufmerksamkeit<br />

auch seitens der Behörde gefordert sein. Erhöhte Sorgfaltspflichten können sich zudem<br />

ergeben, wenn die Behörde besondere Sachkenntnis in dem spezifischen Bereich der<br />

Informationstechnik hat oder wenn sie das Programm in großem Umfang verbreitet. Bei<br />

der Feststellung des Verschuldens kommt es letztlich immer auf die Umstände des<br />

Einzelfalls an, sodass die genannten Kriterien nur als grobe Richtschnur herangezogen<br />

werden können.<br />

Bei entgegenstehenden Patentrechten Dritter bleibt schließlich stets zu fragen, welche<br />

Ansprüche die Behörde ihrerseits gegen die eigenen Lieferanten geltend machen kann.<br />

Dies ist eine Frage der vertraglichen Gewährleistung.<br />

6.3 Vergleich der Migration zu proprietärer Software und zu OSS<br />

Die oben ausgeführten Rechtsprobleme, die sich bei der Nutzung von OSS aufgrund<br />

entgegenstehender Rechte Dritter ergeben können, sind keineswegs spezifisch für diese<br />

Entwicklungs- und Vertriebsform. Entsprechende Probleme können genauso bei proprietären<br />

Konkurrenzprodukten auftreten.<br />

Im Hinblick auf patentrechtliche Ansprüche kann auch nicht für eine Migration zu proprietärer<br />

Software auf das Argument der größeren Transparenz der Herkunft der einzelnen<br />

Softwarebestandteile verwiesen werden. Auch wenn im Einzelnen dokumentiert ist, wer<br />

welchen Part eines Programms geschrieben hat und dass die entsprechenden Rechte<br />

erworben worden sind, so kann daraus nicht gefolgert werden, inwieweit Patente Dritter<br />

berührt werden. Da das Patent die zugrunde liegenden technischen Lösungen schützt<br />

und nicht die konkrete Form der Programmierung, genügt es mit Blick auf etwaige Patentrechte<br />

nicht, alle Rechte der jeweiligen Programmierer erworben zu haben. Um wirkliche<br />

Rechtssicherheit zu erreichen, bedarf es einer Patentrecherche und gegebenenfalls<br />

den Erwerb von Patentlizenzen Dritter. In patentrechtlicher Hinsicht ergeben sich dabei<br />

für beide Migrationswege im Grundsatz die gleichen rechtlichen Risiken.<br />

7 Haftung und Gewährleistung<br />

7.1 Einleitung<br />

Einer der wesentlichen Punkte in der Bewertung der unterschiedlichen Risiken einer<br />

Migration zu proprietärer Software oder zu OSS ist die Frage nach dem Umfang der<br />

jeweiligen Haftung und Gewährleistung. Dieser ergibt sich im Einzelfall erst in der<br />

Zusammenschau von gesetzlichen Regeln und den konkret getroffenen vertraglichen<br />

Vereinbarungen. Die pauschale Aussage, bei OSS gebe es keine Haftung und Gewährleistung,<br />

weil die Software kostenlos erhältlich sei, während bei proprietärer Software die<br />

volle Absicherung durch den Vertragspartner geschuldet sei, gibt die Rechtslage nicht<br />

zutreffend wieder. Bei entsprechender Vertragsgestaltung bestehen für Behörden keine<br />

erheblichen Unterschiede zwischen dem Einsatz von OSS oder proprietärer Software.<br />

Zunächst gilt es allerdings die verschiedenen Ansprüche und Anspruchsgegner auseinanderzuhalten.<br />

Unter Gewährleistung versteht man das Einstehen müssen für die<br />

Vertragsgemäßheit des Programms. Der Begriff der Haftung beschreibt zunächst das<br />

vertragliche Einstehen müssen für Schäden, die sich beim Vertragspartner an sonstigen<br />

Seite 59


Rechtsgütern ergeben, etwa Schäden an Hardware oder anderer Software (vertragliche<br />

Haftung). Mit Haftung bezeichnet man darüber hinaus auch jedes sonstige außervertragliche<br />

Einstehen müssen für Schäden (außervertragliche Haftung).<br />

Die Haftung und Gewährleistung kann, abhängig von der Ausgestaltung der jeweiligen<br />

vertraglichen Beziehungen, unterschiedlichen gesetzlichen Maßstäben unterliegen. So<br />

gelten insbesondere bei unentgeltlichen Verträgen vielfach weitreichende Gewährleistungs-<br />

und Haftungserleichterungen, während bei der entgeltlichen Softwareüberlassung<br />

voll gehaftet wird. Von den gesetzlichen Regelungen können die Vertragsparteien innerhalb<br />

bestimmter gesetzlicher Grenzen abweichen und einen schärferen oder milderen<br />

Haftungs- und Gewährleistungsmaßstab vertraglich vereinbaren. Behörden sollten darauf<br />

bedacht sein, dass die Haftung und Gewährleistung nicht zu ihrem Nachteil ausgeschlossen<br />

wird. Werden diese Vereinbarungen nicht wirksam getroffen, etwa weil man<br />

sich außerhalb des gesetzlich zulässigen Rahmens befindet, gilt wiederum der gesetzliche<br />

Haftungsmaßstab. Gesetzlich zulässig und in der Praxis verbreitet ist die Vereinbarung<br />

einer zusätzlichen vertraglichen Haftung. Distributoren von OSS bieten vielfach die<br />

vertragliche Übernahme des Haftungsrisikos ihrer Kunden gegenüber Ansprüchen Dritter<br />

an („Indemnification Program―, „Assurance Program― o.ä.)<br />

Für die Behörde kommen bei der Migration zu OSS unterschiedliche vertragliche<br />

Haftungs- und Gewährleistungsschuldner in Betracht. Einerseits können Ansprüche<br />

gegenüber dem Distributor oder sonstigen Lieferanten der Software bestehen. Andererseits<br />

können dort, wo die Behörde eine Open Source Lizenz erworben hat, um die<br />

Software zu verändern, zu vervielfältigen und weiterzugeben, Ansprüche auch gegenüber<br />

den jeweiligen Lizenzgebern bestehen. Auch bei der außervertraglichen Haftung<br />

kann es unterschiedliche Anspruchsgegner geben.<br />

Im Einzelnen gelten für die verschiedenen Vertragsverhältnisse die folgenden Grundsätze.<br />

7.2 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei<br />

Überlassungsverträgen<br />

Verträge über die Überlassung von Open Source Software von einem Zwischenhändler<br />

an die Behörde sind regelmäßig als Kauf oder als Schenkung einzuordnen, abhängig<br />

davon, ob die Parteien die Überlassung gegen (Einmal-) Entgelt oder aber die unentgeltliche<br />

Überlassung verabreden. Ein entgeltlicher Erwerb kann dabei insbesondere auch<br />

deshalb interessant sein, da der Lieferant bei einer entgeltlichen Überlassung in größerem<br />

Umfang Gewährleistungs- und Haftungsrisiken übernehmen muss. Das Risiko einer<br />

Migration zu OSS wird hierdurch unter Umständen besser kalkulierbar.<br />

Ist Kaufrecht anwendbar, hat die Behörde einen Anspruch darauf, dass der Zwischenhändler<br />

die OSS frei von Sach- und Rechtsmängeln verschafft. Der Zwischenhändler<br />

muss dafür einstehen, dass der Vertragsgegenstand die vertraglich vereinbarte oder<br />

vorauszusetzende Beschaffenheit aufweist und dass keine Rechte Dritter, insbesondere<br />

Urheber- und Patentrechte, an dem Vertragsgegenstand bestehen, die die bestimmungsgemäße<br />

Benutzung behindern. Diese Gewährleistung schulden Distributoren und<br />

sonstige Zwischenhändler bereits bei Abschluss eines einfachen Softwareüberlassungsvertrags.<br />

Einer besonderen vertraglichen Vereinbarung bedarf es dafür nicht.<br />

Seite 60


Beim Abschluss eines „Indemnification Program― oder „Assurance Program― mit dem<br />

Distributor sollte deshalb im Einzelnen geprüft werden, ob sich hieraus zusätzliche<br />

Ansprüche des Kunden gegenüber dem Anbieter ergeben. Diese können beispielsweise<br />

darin bestehen, dass sich der Anbieter zur aktiven Unterstützung des Kunden in Rechtsstreitigkeiten<br />

mit Dritten verpflichtet oder dass für den Fall einer Patentverletzung des<br />

Kunden auf das Patentportfolio des Distributors oder weiterer vertraglich verbundener<br />

Parteien zur Verteidigung zurückgegriffen werden kann.<br />

Liegen Mängel vor, so kann die Behörde in erster Linie Nacherfüllung verlangen. Schlägt<br />

diese Nacherfüllung fehl, dann hat der Käufer die Auswahl unter mehreren Ansprüchen.<br />

Er kann vom Vertrag zurücktreten (§§ 440, 323 BGB). Als Alternative steht dem Erwerber<br />

das Recht zu, am Vertrag zwar festzuhalten, den Kaufpreis aber zu mindern<br />

(§ 441 BGB). Schließlich hat der Käufer auch einen Anspruch auf Schadensersatz auf<br />

Grundlage der §§ 280, 440 BGB, wenn der Zwischenhändler – was gesetzlich vermutet<br />

wird – den Schaden zu vertreten hat. Zu vertreten hat der Schuldner dabei regelmäßig<br />

auch leichte Fahrlässigkeit.<br />

Auch für Schäden an sonstigen Rechtsgütern der Behörde, insbesondere Hardware oder<br />

andere Software, hat der Zwischenhändler grundsätzlich zu haften. Die Behörde kann in<br />

diesem Fall Ersatz ihres Schadens verlangen; Anspruchsgrundlage ist § 280 BGB. Voraussetzung<br />

ist wiederum, dass der Zwischenhändler den Schaden zu vertreten hat. Ein<br />

Verschulden wird aber auch hier grundsätzlich vermutet; es ist Aufgabe des Verkäufers,<br />

sich zu entlasten.<br />

Von dieser gesetzlichen Verteilung des Haftungs- und Gewährleistungsrisikos können<br />

die Parteien innerhalb bestimmter Grenzen abweichen. Zwischenhändler versuchen<br />

oftmals unter Verweis auf die üblichen Lizenzklauseln in Open Source Lizenzen, eine für<br />

sie günstigere vertragliche Regelung durchzusetzen und die Haftung und Gewährleistung<br />

weitestgehend auszuschließen. Entsprechende Ausschlussklauseln sind aber in<br />

aller Regel nicht gerechtfertigt, da die Zwischenhändler die Software entgeltlich<br />

weitergeben. Behörden sollten sich hier keinesfalls auf einen Ausschluss ihrer<br />

Ansprüche einlassen, sondern auf der Beibehaltung der gesetzlichen Standards<br />

bestehen. Im Übrigen ist zugunsten der Behörde zu beachten, dass gerade in Standardverträgen<br />

("Allgemeine Geschäftsbedingungen") Haftungs- und Gewährleistungsbeschränkungen<br />

nur begrenzt vereinbart werden können. Ein vollständiger Ausschluss der<br />

Haftung und Gewährleistung, wie er sich im Kleingedruckten mancher GNU/Linux-<br />

Standarddistribution findet, ist deswegen zumeist unwirksam. Hierauf sollten sich<br />

Behörden aber nicht verlassen, sondern von vornherein darauf dringen, dass eine sinnvolle<br />

vertragliche Lösung gefunden wird. Die Regelungen der EVB-IT Überlassung TYP<br />

A und B zur Gewährleistung und Haftung 50 sind grundsätzlich auch beim Erwerb von<br />

Standard OSS geeignet.<br />

Hat sich die Behörde die Software kostenlos verschafft, ist auf den Vertrag in der Regel<br />

Schenkungsrecht anzuwenden. In diesen Fällen haftet der Lieferant nur in engen<br />

Grenzen. Dafür, dass die Software die vorauszusetzende Beschaffenheit aufweist und<br />

Rechte Dritter einer Verwendung nicht entgegenstehen, hat der Schenker nur dann<br />

50 Ziffern 7-9 EVB-IT Überlassung Typ A und Ziffer 7-9 EVB-IT Überlassung Typ B (Haftung<br />

bei Mängeln).<br />

Seite 61


einzustehen, wenn er den Mangel arglistig verschwiegen hat (§§ 523, 524 BGB). Der<br />

Lieferant muss den Mangel kennen oder zumindest für möglich halten. Zudem muss<br />

eine Aufklärungspflicht bestehen, das heißt, der Beschenkte muss eine vorherige<br />

Aufklärung über den jeweiligen Mangel erwarten können. Für die Haftung im Hinblick auf<br />

die sonstigen Rechtsgüter des Erwerbers hat der Lieferant bei kostenloser Überlassung<br />

nur Vorsatz und grobe Fahrlässigkeit zu vertreten (§ 521 BGB). Falls es durch das Programm<br />

also zu einer Verletzung der sonstigen Rechtsgüter des Erwerbers kommt, so<br />

haftet er nur, wenn er die Rechtsverletzung wissentlich herbeiführt oder seine Sorgfaltspflichten<br />

in besonders schwerem Maße verletzt.<br />

Oftmals wird zugleich mit dem Softwareüberlassungsvertrag auch ein Supportvertrag<br />

abgeschlossen, in dem sich der Softwarelieferant zur Pflege und Instandhaltung der<br />

überlassenen Programme verpflichtet. Hier stellt sich die Frage nach dem Verhältnis der<br />

Mängelgewährleistung aus dem Überlassungsvertrag und den Pflichten des Dienstleisters<br />

aus dem Supportvertrag. Wird die Software gegen Entgelt überlassen, so hat die<br />

Behörde grundsätzlich einen Anspruch darauf, dass Mängel beseitigt werden, ohne dass<br />

hierfür ein besonderes Entgelt bezahlt werden muss. Während der Gewährleistungsfrist<br />

darf also nur für solche Leistungen ein Entgelt verlangt werden, die über das hinausgehen,<br />

was eine Behörde bereits im Rahmen der gesetzlichen Mängelgewährleistung<br />

verlangen kann, etwa 24-Stunden-Service und die Garantie, Ausfälle in bestimmten<br />

Reaktionszeiten zu beheben. Schwierig zu beurteilen sind solche Vertragsgestaltungen,<br />

in denen der Behörde die Software kostenlos überlassen wird, während für den Support<br />

ein Entgelt verlangt wird. Hier ist zugunsten der Behörde davon auszugehen, dass eine<br />

künstliche Aufspaltung in einen unentgeltlichen Teil mit nur geringer Gewährleistung und<br />

einen entgeltlichen Teil, für den eine erhöhte Einstandspflicht besteht, nicht wirksam<br />

vorgenommen werden kann. Stellt sich eine Dienstleistung aus Sicht der Behörde als<br />

eine einheitliche entgeltliche Leistung dar, so muss der Anbieter auch dafür einstehen,<br />

dass das Programm grundsätzlich funktionsfähig ist. Entsprechende Einstandspflichten<br />

für diese Basisgewährleistung dürfen nicht als kostenpflichtiger Support abgerechnet<br />

werden.<br />

Entgeltlicher Erwerb Sachmangel<br />

Unentgeltlicher<br />

Erwerb<br />

Rechtsmangel<br />

Schäden an sonstigen Rechtsgütern<br />

Sachmangel<br />

Rechtsmangel<br />

Schäden an sonstigen Rechtsgütern<br />

Seite 62<br />

Nacherfüllung<br />

Bei Fehlschlag der Nacherfüllung:<br />

� Minderung<br />

� Rücktritt<br />

Bei Verschulden Schadensersatz<br />

Bei Verschulden Schadensersatz<br />

Bei Arglist Schadensersatz<br />

Bei grober Fahrlässigkeit / Vorsatz<br />

Schadensersatz<br />

Tabelle 8: Vertragliche Ansprüche auf Haftung und Gewährleistung gegen den Zwischenhändler


7.3 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei Open<br />

Source Lizenzverträgen<br />

Von den Verträgen mit den Lieferanten über die Überlassung der Software sind die<br />

Open Source Lizenzverträge zu unterscheiden. Letztere werden direkt mit den Rechtsinhabern<br />

abgeschlossen. Gegenstand dieser OSS-Lizenzen ist die Einräumung<br />

bestimmter Nutzungsrechte an der Software, insbesondere der Rechte zur Vervielfältigung,<br />

Verbreitung und Bearbeitung.<br />

Die Erkenntnis, dass es sich um unterschiedliche Geschäfte handelt, ist für die Frage der<br />

vertraglichen Haftung und Gewährleistung von weitreichender Bedeutung. Denn jeder<br />

Vertragspartner hat nur für die von ihm zu verschaffenden Vertragsgegenstände eine<br />

Gewährleistung zu übernehmen und haftet auch nur für die Einhaltung seiner eigenen<br />

vertraglichen Verpflichtungen. Daraus folgt, dass die Urheber dem Lizenznehmer der<br />

OSS-Lizenz im Wesentlichen für den Bestand und Erhalt der Nutzungsrechte einzustehen<br />

haben. Nur insoweit kann die Behörde vertragliche Ansprüche gegenüber diesen<br />

geltend machen. Die tatsächliche Eignung der Software für die Programmbenutzung ist<br />

hingegen eine Frage des Einstehen müssens der Distributoren oder der sonstigen<br />

Zwischenhändler aufgrund des Überlassungsvertrages. Das Gleiche gilt für die Befugnis<br />

der Behörde, die Software bestimmungsgemäß benutzen zu können; dieses Recht ergibt<br />

sich in der Regel bereits aus dem Erwerb einer rechtmäßig in Verkehr gebrachten<br />

Programmkopie. Fehlt es hieran, so ist der Distributor in Anspruch zu nehmen und nicht<br />

die Rechtsinhaber.<br />

Bei der Frage, in welchem Umfang die jeweiligen Urheber für den Bestand der Nutzungsrechte<br />

einzustehen haben, gilt es zunächst festzuhalten, dass sich der Gewährleistungs-<br />

und Haftungsmaßstab in der Regel nicht nach den entsprechenden Klauseln in<br />

den jeweiligen OSS-Lizenzen richtet. Denn die allermeisten OSS-Lizenzen verwenden<br />

einen umfassenden, vollständigen Haftungs- und Gewährleistungsausschluss. 51 Entsprechende<br />

Klauseln sind nach deutschem Recht nichtig. 52 Rechtsfolge dieser Unwirksamkeit<br />

ist, dass die gesetzlichen Regelungen Anwendung finden.<br />

Open Source Lizenzen stellen sogenannte Lizenzverträge dar, deren Haftung und<br />

Gewährleistung im Gesetz nicht ausdrücklich geregelt sind. Da die Nutzungsrechte<br />

jedoch von den Urhebern gewährt werden, ohne dass die Zahlung einer Lizenzgebühr<br />

verlangt wird, wird überwiegend davon ausgegangen, dass auf diese Verträge das<br />

Haftungs- und Gewährleistungsrecht der verschiedenen unentgeltlichen Verträge<br />

entsprechend anzuwenden ist. 53 Weil zentraler Vertragsgegenstand der OSS-Lizenzen<br />

die Einräumung von Rechten ist, steht im Mittelpunkt gewährleistungsrechtlicher Fragen<br />

dabei das Einstehen müssen für Rechtsmängel. Sachmängelgewährleistung spielt<br />

daneben in der Regel keine Rolle. Für Rechtsmängel, also insbesondere dafür, dass der<br />

Lizenzgeber Inhaber der lizenzierten Nutzungsrechte ist und Rechte Dritter einer<br />

51 Vgl. z.B. Ziffern 11 und 12 GPL <strong>Version</strong> 2, Ziffern 15 und 16 GPL <strong>Version</strong> 3.<br />

52 Dazu ausführlich Jaeger/Metzger, Open Source Software: Rechtliche Rahmenbedingungen<br />

der Freien Software (2. Aufl. 2006), Rz. 219 ff.<br />

53 Siehe Jaeger/Metzger, a.a.O., Rz. 210 ff.; Spindler, Rechtsfragen bei Open Source (2004),<br />

S. 152 ff. Andere Ansicht aber Hoeren, Open Source und das Schenkungsrecht - eine<br />

durchdachte Liaison?, in: Recht und Risiko - Festschrift für Helmut Kollhosser , Bd. 2<br />

(2004), S. 229 ff.<br />

Seite 63


Lizenzierung nicht entgegenstehen, hat dieser in Anlehnung an die schenkungs- und<br />

leihrechtlichen Vorschriften nur dann einzustehen, wenn er den Mangel arglistig<br />

verschwiegen hat. Liegt kein Fall der Arglist vor, so hat die Behörde nach der<br />

gesetzlichen Regelung das Risiko des Bestehens von Rechtsmängeln zu tragen.<br />

Insoweit bieten auch die von OSS-Distributoren angebotenen Zusatzabsicherungen<br />

gegenüber Rechten Dritter („Assurance Program―, „Indemnification Program― o.ä.)<br />

regelmäßig keinen Schutz, weil sie den Kunden nur im Hinblick auf den<br />

bestimmungsgemäßen Gebrauch des Programms absichern, nicht aber im Hinblick auf<br />

eine weitergehende Verbreitung oder sonstige Nutzung. Für diese weitergehende<br />

Nutzung bieten allenfalls spezielle Versicherungsprodukte entsprechenden Schutz.<br />

Hinsichtlich der Schäden an sonstigen Rechtsgütern der Behörde ist die Haftung der<br />

Rechtsinhaber ebenfalls in Anlehnung an die Vorschriften für unentgeltliche Verträge auf<br />

Vorsatz und grobe Fahrlässigkeit beschränkt. Diese haften daher nur, wenn sie wissentlich<br />

gehandelt oder aber ihre Sorgfaltspflichten in besonders schwerem Maße verletzt<br />

haben.<br />

7.4 Einsatz von OSS: Vertragliche Haftung und Gewährleistung bei Erstellung<br />

und Änderung von Freier Software<br />

Wird Software gegen Entgelt im Kundenauftrag erstellt, ist Werkvertragsrecht oder nach<br />

anderer Auffassung im Wesentlichen Kaufvertragsrecht anwendbar. Auch bei der entgeltlichen<br />

Anpassung von Software an die spezifischen Bedürfnisse der Behörde besteht<br />

eine Gewährleistung und Haftung nach werk- oder kaufvertraglichen Grundsätzen, abhängig<br />

von der jeweiligen Einordnung des Geschäftes.<br />

Unabhängig davon, ob es sich bei den genannten Verträgen um Kauf- oder Werkverträge<br />

handelt, kann die Behörde von ihrem jeweiligen Vertragspartner bei Mängeln<br />

zunächst Nacherfüllung verlangen, wobei Unterschiede in der Ausübung je nach<br />

vertragstypologischer Einordnung der Verträge bestehen. Scheitert die Nacherfüllung,<br />

stehen dem Besteller Minderung, Rücktritt und – bei Verschulden der anderen Vertragspartei<br />

– Schadensersatzansprüche zu. Ob darüber hinaus die Behörde berechtigt ist,<br />

den Mangel selbst zu beseitigen oder beseitigen zu lassen und Ersatz der hierzu<br />

erforderlichen Aufwendungen verlangen kann, ist davon abhängig, ob man den Vertrag<br />

als Werkvertrag ansieht und nicht als einen Vertrag, auf den Kaufrecht Anwendung<br />

findet.<br />

Für die vertragliche Haftung des Auftragnehmers gilt, dass dieser für schuldhaft verursachte<br />

Schäden an sonstigen Rechtsgütern des Erwerbers einzustehen hat. Eine fahrlässige<br />

Herbeiführung des Schadens begründet bereits eine entsprechende Haftung.<br />

Wie bei allen Verträgen gilt auch hier, dass die Parteien innerhalb bestimmter Grenzen<br />

abweichende Abreden treffen können. Im Hinblick auf die keineswegs eindeutige<br />

Rechtslage sollte davon gerade auch im Bereich der OSS-Erstellungs- und Anpassungsverträge<br />

Gebrauch gemacht werden. Hier bietet es sich an, die Pflichten und Obliegenheiten<br />

der Vertragsparteien, insbesondere eine (aus dem Werkvertragsrecht bekannte)<br />

Abnahme ausdrücklich zu regeln sowie Vereinbarungen über Mängelrügefristen etc. zu<br />

treffen.<br />

Seite 64


7.5 Einsatz von OSS: Außervertragliche Haftung<br />

Schäden im Zusammenhang mit der Migration zu OSS können nicht nur zu vertraglichen<br />

Ansprüchen gegenüber den jeweiligen Partnern führen. Vielmehr sind auch außervertragliche<br />

Haftungstatbestände zu beachten, insbesondere nach dem Produkthaftungsgesetz<br />

und dem allgemeinen Deliktsrecht der §§ 823 ff. BGB. Das Produkthaftungsgesetz<br />

begründet eine Haftung nur für Personenschäden und solche Sachschäden, die<br />

an einer anderen Sache als dem fehlerhaften Produkt eintreten. Eine Haftung besteht<br />

nach diesem Gesetz, das in erster Linie den Verbraucher schützen soll, dabei jedoch<br />

nicht für solche Sachen, die nicht primär privat verwendet werden. 54 Sachschadensersatzforderungen<br />

aus dem nichtprivaten Bereich sieht sich der Hersteller auf der<br />

Grundlage dieses Gesetzes nicht ausgesetzt. Insoweit ist gerade für die Behörde die<br />

Geltendmachung von Sachschäden aufgrund des Produkthaftungsgesetzes weitestgehend<br />

ausgeschlossen.<br />

Neben der verschuldensunabhängigen Haftung nach dem Produkthaftungsgesetz<br />

kommt auch eine außervertragliche Haftung aufgrund allgemeiner außervertraglicher<br />

Haftungstatbestände (Deliktstatbestände) vor. Gerade weil das Produkthaftungsgesetz<br />

bei Sachschäden nur private Güter schützt, haben diese Regelungen für Behörden besondere<br />

Relevanz. Eine Geltendmachung auf Grundlage deliktsrechtlicher Vorschriften<br />

setzt kein Vertragsverhältnis voraus. Wenn beispielsweise eine Behörde ein Programm<br />

von einem Zwischenhändler erwirbt, so kommen gegenüber dem Distributor nur außervertragliche<br />

Ansprüche in Betracht, da insoweit kein Vertragsverhältnis besteht.<br />

Interessant ist insbesondere die Regelung des § 823 BGB. Nach dieser Vorschrift ist<br />

derjenige zum Schadensersatz verpflichtet, der vorsätzlich oder fahrlässig Leben,<br />

Körper, Eigentum oder sonstige ähnlich „absolut― geschützte Rechtspositionen widerrechtlich<br />

verletzt. Schwierig und nur im Einzelfall zu beurteilen ist dabei die Frage, wann<br />

die Verletzung „fahrlässig― erfolgte. Fahrlässigkeit setzt die Verletzung von Sorgfaltspflichten<br />

voraus. Bei den einzelnen Entwicklern der Software wird man den zu beachtenden<br />

Sorgfaltsmaßstab nicht zu hoch ansetzen dürfen. Bei der Entwicklung von OSS<br />

werden regelmäßig auch unfertige Lösungen verbreitet, an denen die Community<br />

arbeitet. Deutlich weitreichender stellt sich hingegen die außervertragliche Haftung der<br />

Distributoren von OSS dar. Diese stellen in der Regel ein fertiges Endprodukt zur Verfügung,<br />

sodass von vornherein höhere Sorgfaltsanforderungen angezeigt erscheinen.<br />

In der Praxis bestehen zum Teil Schwierigkeiten, das Vorliegen aller Tatsachen für das<br />

Bestehen eines Schadensersatzanspruchs zu beweisen. Dort, wo das Produkt in<br />

industrieller Weise gefertigt und vertrieben wird, kommt jedoch unter Umständen eine<br />

Anwendung der von der Rechtsprechung entwickelten Grundsätze der sog. Produzentenhaftung<br />

in Betracht. Dies betrifft vor allem die Herstellung fertiger Betriebssystemdistributionen<br />

durch Distributoren. Im Rahmen einer solchen Produzentenhaftung wird in<br />

verschiedener Hinsicht die Beweisführung des Verletzten erleichtert. 55<br />

54 Vgl. § 1 Abs. 1 ProdHaftG.<br />

55 Vgl. dazu Schiffner, Open Source Software (2002), S. 253 f.<br />

Seite 65


7.6 Einsatz von OSS: Mitverschulden<br />

Sowohl bei der vertraglichen als auch bei der außervertraglichen Haftung ist zu berücksichtigen,<br />

dass die Ansprüche jeweils durch ein Mitverschulden der Behörde ganz oder<br />

teilweise im Umfang begrenzt sein können. Im Grenzfall können sie sogar wegen eines<br />

„überwiegenden― Mitverschuldens der Behörde vollständig entfallen.<br />

Ein wichtiger Bereich, in dem in der Praxis gehäuft Probleme eines möglichen Mitverschuldens<br />

auftreten, ist die Haftung für den Verlust von Datenbeständen. Hier ist zu<br />

beachten, dass es im gewerblichen Anwenderbereich vielfach als selbstverständlich<br />

angesehen wird, dass der Anwender eine zuverlässige, zeitnahe und umfassende<br />

Sicherung der Daten sicherstellt. Entsprechende Anforderungen wird man auch an<br />

Behörden stellen dürfen.<br />

7.7 Vergleich der Migration zu proprietärer Software und zu OSS<br />

Ein Vergleich zwischen der Migration zu proprietärer Software und zu OSS zeigt, dass<br />

dort, wo entgeltliche Verträge geschlossen werden, weitgehende Parallelen in der Haftung<br />

und Gewährleistung bestehen.<br />

Beim Erwerb der Software zur Benutzung innerhalb der Behörde ist Anspruchsgegner<br />

der vertraglichen Haftung und Gewährleistung der jeweilige Vertragspartner des Überlassungsvertrages.<br />

Dies gilt sowohl für eine Migration zu OSS als auch für eine Migration<br />

zu proprietärer Software. Arbeitet die Software nicht vertragsgemäß oder stehen Rechte<br />

Dritter einer Benutzung entgegen, ist stets der Händler zur Beseitigung der Beeinträchtigung<br />

verpflichtet. Der Händler haftet auch für Schäden an sonstigen Rechtsgütern der<br />

Behörde. Der gesetzliche Haftungsumfang ist dabei derselbe, solange die Software entgeltlich<br />

erworben wird.<br />

Macht die Behörde hingegen von der bei Migration zu OSS bestehenden Möglichkeit<br />

Gebrauch, die Software kostenlos zu erwerben, so muss sie Abstriche im Haftungs- und<br />

Gewährleistungsumfang hinnehmen, da das Gesetz den Softwarelieferanten bei einer<br />

unentgeltlichen Überlassung privilegiert. Hier kann zu überlegen sein, ob die ersparten<br />

Erwerbskosten für eine Risikoabsicherung (Supportverträge, Garantieverträge, Versicherungen)<br />

eingesetzt werden. Bei Abschluss entsprechender Verträge ergeben sich keine<br />

entscheidungserheblichen Unterschiede zwischen OSS und proprietärer Software bei<br />

der Frage der Haftung und Gewährleistung.<br />

Will die Behörde Lizenzrechte erwerben, etwa um die Software zu vervielfältigen, anzupassen<br />

oder an andere Behörden weiterzugeben, so werden bei OSS diese Rechte stets<br />

kostenlos eingeräumt. Bei der Migration zu proprietärer Software bedarf es hingegen<br />

regelmäßig – soweit überhaupt eine entsprechende Rechtseinräumung erfolgt – der<br />

Zahlung einer Lizenzgebühr. Aufgrund dieser Unterschiedlichkeit der zugrunde liegenden<br />

Verträge variiert auch der Haftungs- und Gewährleistungsmaßstab beträchtlich. Bei<br />

kostenloser Einräumung besteht eine weitgehende Privilegierung. Hier steht es der<br />

Behörde bei der Migration zu OSS allerdings offen, ersparte Erwerbskosten für den<br />

Abschluss einer Versicherung einzusetzen.<br />

Gewisse Unterschiede im Haftungsumfang bestehen im Bereich der außervertraglichen<br />

Haftung. Da der proprietäre Hersteller auf sämtliche Schritte im Entwicklungsprozess<br />

Einfluss nehmen kann, wird man auch einen höheren Sorgfaltsmaßstab anlegen können.<br />

Seite 66


Allerdings spielt die außervertragliche Haftung des Herstellers von Computerprogrammen<br />

in der Praxis bisher allenfalls eine untergeordnete Rolle.<br />

8 Vergaberecht<br />

8.1 Allgemeines<br />

Die Wahl der Behörde zwischen einer Migration zu proprietärer Software und einer<br />

Migration zu OSS hat unter Beachtung der Prinzipien des Vergaberechts zu erfolgen 56 .<br />

Die Beschaffung von Informationstechnologie muss grundsätzlich nach Maßgabe des<br />

Wettbewerbsprinzips erfolgen, vgl. § 97 Abs. 1 GWB. Hierbei sind alle Bewerber gleich<br />

zu behandeln ("Gleichbehandlungsgrundsatz", vgl. § 97 Abs. 2 GWB). Vergabefremde<br />

Kriterien, die nicht an die Wirtschaftlichkeit des Angebots oder die Fachkunde,<br />

Leistungsfähigkeit und Zuverlässigkeit des Bewerbers anknüpfen, dürfen nicht berücksichtigt<br />

werden (vgl. § 97 Abs. 4 GWB).<br />

Überschreitet der Beschaffungsauftrag die Schwellenwerte der Vergabeverordnung 57 , so<br />

besteht für die übergangenen Bieter die Möglichkeit, eine Nachprüfung der Vergabeentscheidung<br />

nach den Vorschriften des GWB zu beantragen. Dies kann zu einer<br />

Verzögerung der Beschaffung führen und birgt das Risiko zusätzlicher Kosten für das<br />

Verfahren vor der Vergabekammer und die gegebenenfalls erforderliche erneute Ausschreibung,<br />

falls die Behörde die Vergaberechtsprinzipien missachtet hat. Deswegen<br />

sollte sich die Vergabestelle an die folgenden Hinweise halten. Diese basieren auf einer<br />

Auswertung der vergaberechtlichen Fachliteratur. Eine Klärung der Rechtslage durch die<br />

Vergabekammern des Bundes und der Länder sowie der Gerichte fehlt bislang.<br />

8.2 Beschaffung von OSS: Neutrale Ausschreibung<br />

Aus dem Wettbewerbsprinzip und dem Gleichbehandlungsgrundsatz ergibt sich als erste<br />

Anforderung an eine vergaberechtskonforme Beschaffung, dass in der Ausschreibung<br />

die geforderten Leistungen neutral beschrieben werden. Die Anforderungen an eine<br />

neutrale Leistungsbeschreibung sind in § 8 VOL/A näher bestimmt. Gemäß § 8 Nr. 3<br />

Abs. 3 VOL/A ist es nur gestattet, bestimmte Erzeugnisse oder Verfahren vorzuschreiben,<br />

wenn "dies durch die Art der zu vergebenden Leistung gerechtfertigt ist.― In Abs. 4<br />

heißt es weiter, dass die Beschreibung technischer Merkmale nicht die Wirkung haben<br />

darf, "dass bestimmte Unternehmen oder Erzeugnisse bevorzugt oder ausgeschlossen<br />

werden, es sei denn, dass eine solche Beschreibung durch die zu vergebende Leistung<br />

gerechtfertigt ist.― In der juristischen Fachliteratur wird zum Teil unter Berufung auf die<br />

genannten Bestimmungen gefordert, dass eine Ausschreibung für IT-Aufträge nicht von<br />

vornherein auf Open Source Software beschränkt erfolgen darf. Eine solche Sichtweise<br />

erscheint jedoch als zu undifferenziert.<br />

56 Vgl. zum Folgenden eingehend Heckmann, IT-Vergabe, Open Source Software und Vergaberecht,<br />

Computer und Recht 2004, 401 sowie Demmel/Herten-Koch, Vergaberechtliche<br />

Probleme bei der Beschaffung von Open-Source Software, Neue Zeitschrift für Baurecht<br />

2004, 187; Müller/Gerlach, Open-Source-Software und Vergaberecht, Computer und Recht<br />

2005, 87.<br />

57 IT-Aufträge der obersten und oberen Bundesbehörden und vergleichbarer Bundeseinrichtungen:<br />

137.000 €, alle anderen IT-Aufträge: 211.000 €.<br />

Seite 67


Im Grundsatz gilt, dass die Ausschreibung die geforderten Leistungen in einer Weise<br />

beschreiben muss, die es auch den proprietären Konkurrenzprodukten ermöglicht, ihre<br />

Leistungen anzubieten, soweit die Ziele der Behörde auch mit diesen erreicht werden<br />

können. Danach muss im Grundsatz sowohl auf eine Leistungsbeschreibung "Linux-<br />

Server" als auch auf die Bezeichnungen "Open Source oder quelloffene Software" verzichtet<br />

werden. Stattdessen sind die konkreten Merkmale der geforderten Leistungen<br />

abstrakt zu beschreiben, damit auch proprietäre Konkurrenten ihre Leistungen anbieten<br />

können.<br />

Es ist also statt der Bezeichnung "Linux-Server" neutral zu beschreiben, welche Merkmale<br />

der Server erfüllen soll. Sind die Vorgaben entsprechend neutral formuliert, sollten<br />

zumindest auch Server, die mit anderen UNIX-Derivaten betrieben werden, die Spezifikationen<br />

erfüllen können.<br />

Statt "Open Source Software" sollte beschrieben werden, welche konkreten Ziele die<br />

Behörde hiermit erreichen möchte. Es erscheint als vergaberechtlich bedenklich, pauschal<br />

die Offenlegung der Quellcodes zu verlangen, wenn für die Bieter nicht erkennbar<br />

ist, warum die Behörde die geforderten Merkmale verlangt. Dagegen erscheint der<br />

Hinweis auf das Erfordernis offener Quellcodes als zulässig, sofern die Behörde beispielsweise<br />

angibt, dass ein erhöhtes Maß an Sicherheit gegen "backdoors", Virenattacken<br />

und Ähnliches für die Erfüllung der öffentlichen Aufgabe erforderlich ist oder die<br />

spätere Anpassung oder Pflege der Software den Erhalt der Quellcodes voraussetzen.<br />

Dies bietet proprietären Bietern die Möglichkeit, sich durch eine Offenlegung im Einzelfall<br />

an der Ausschreibung zu beteiligen. 58<br />

Die gleichen Grundsätze gelten für Leistungsbeschreibungen, die die OSS-Lizenzen als<br />

Leistungsanforderungen beinhalten ("GPL-Software" o.ä.). Entsprechende Anforderungen<br />

sollten durch neutrale Beschreibungen ersetzt werden, die auf den Umfang der gewünschten<br />

Nutzungsrechte hinweisen und erkennen lassen, wofür die Behörde diese<br />

Rechte einsetzen möchte. Es kann sachlich gerechtfertigt sein, wenn die Behörde die<br />

Nutzungsrechte erwerben möchte, um das Programm später durch eigene Mitarbeiter<br />

oder andere Anbieter fortentwickeln zu lassen oder wenn sie das Programm zu möglichst<br />

kostengünstigen Konditionen auf weiteren Arbeitsplätzen oder an weiteren Dienststellen<br />

einsetzen möchte. Dennoch sollte auch im Hinblick auf die Nutzungsrechte proprietären<br />

Geboten eine Chance gegeben werden, in dem der gewünschte Umfang der zu<br />

erwerbenden Nutzungsrechte abstrakt beschrieben wird. Die Vorzüge von OSS dürfen<br />

bei der Leistungsbeschreibung also durchaus inhaltlich berücksichtigt werden.<br />

Anforderungen aus dem Gesichtspunkt der neutralen Ausschreibung ergeben sich auch<br />

für den Zuschnitt der Ausschreibung. In diesem Zusammenhang wird insbesondere die<br />

Frage diskutiert, ob Softwareüberlassung und Support stets gemeinsam auszuschreiben<br />

sind oder auch getrennt beschafft werden können. Zum Teil wird in der Aufspaltung der<br />

beiden Leistungen ein Verstoß gegen das Gebot der neutralen Ausschreibung gesehen,<br />

weil die Vergabestelle durch die Aufspaltung der einzelnen Bestandteile die eigentliche<br />

58 Dass dies proprietären Anbietern eine realistische Chance eröffnet, zeigt das "Shared<br />

Source"-Programm von Microsoft, welches bestimmten Lizenznehmern Einblick in die<br />

Quelltexte der Microsoft-Programme gewährt. Siehe hierzu<br />

http://www.microsoft.com/resources/sharedsource/default.mspx.<br />

Seite 68


Wirtschaftlichkeitsentscheidung umgehe. 59 Dies sei insbesondere dann der Fall, wenn<br />

die Lieferung von Open Source als kostenlos eingeordnet wird, was unter Umständen<br />

sogar zur Folge hätte, dass die Leistung überhaupt nicht ausgeschrieben werden<br />

müsste, 60 während der kostenpflichtige Support ausgeschrieben wird. Ein vollständiges<br />

Bild könne nur gewonnen werden, wenn jeweils Software und Support gemeinsam als<br />

einheitliches Erfüllungsgeschäft verglichen werden. Die Ausschreibung müsse den<br />

Vergleich der jeweiligen Gesamtwirtschaftlichkeit gestatten, um nicht von vornherein die<br />

proprietären Anbieter zu benachteiligen. Diese Sichtweise erscheint jedoch als zu<br />

restriktiv 61 . Das einheitliche Angebot von Software und Support durch einen Anbieter<br />

entspricht nicht der branchenüblichen Praxis und ist vergaberechtlich nicht erforderlich.<br />

Im Übrigen ist darauf zu verweisen, dass das Vergaberecht – wie das Wettbewerbsrecht<br />

insgesamt – der Kopplung von Leistungen eher kritisch gegenübersteht.<br />

Dementsprechend schreibt § 97 Abs. 3 GWB ausdrücklich vor, dass Ausschreibungen<br />

grundsätzlich in Teillosen erfolgen sollen, um auf diese Weise kleinen und<br />

mittelständischen Unternehmen die Beteiligung an entsprechenden Ausschreibungen zu<br />

ermöglichen.<br />

8.3 Beschaffung von OSS: transparente Ausschreibung<br />

Um einen echten Wettbewerb zwischen den Angeboten zu erreichen, sind in der Ausschreibung<br />

alle die Entscheidung beeinflussenden Umstände aufzunehmen (vgl. § 97<br />

Abs. 1 GWB, § 8 Abs. 2 VOL). Faktoren, die in der Ausschreibung nicht genannt wurden,<br />

dürfen später bei der Entscheidung nicht berücksichtigt werden.<br />

Behörden, die eine Migration zu OSS in Betracht ziehen, müssen deswegen bereits in<br />

der Ausschreibung auf die Eigenschaften hinweisen, die für eine solche Entscheidung<br />

sprechen könnten. Dies sollte allerdings in einer Weise geschehen, die es auch<br />

Anbietern proprietärer Produkte ermöglicht, sich an der Ausschreibung zu beteiligen. Es<br />

erscheint als vergaberechtlich unbedenklich, wenn auf die besondere Bedeutung der<br />

Kompatibilität der Programme und der mit diesen Programmen erzeugten Dateien mit<br />

anderen Programmen und deren erzeugten Dateien hingewiesen wird. Auch sollte auf<br />

die Bedeutung der Verwendung von Standardschnittstellen verwiesen werden. Es kann<br />

auch dazu angeführt werden, dass eine größtmögliche Unabhängigkeit von einzelnen<br />

Anbietern im Hinblick auf andere Informationstechnologien, aber auch im Hinblick auf<br />

Supportdienstleistungen gewünscht wird. Auch sollte bereits in der Ausschreibung<br />

klargestellt werden, dass Leistungen gefordert sind, die eine nachhaltige Entwicklung der<br />

Behördenhard- und -software versprechen.<br />

Entsprechende Leistungsbeschreibungen sollten es allen Bietern gestatten, sich auf die<br />

Entscheidungskriterien der Behörde einzustellen und die Gebote entsprechend auszurichten.<br />

59 So insb. Heckmann, a.a.O., 402.<br />

60 Vgl. § 99 GWB: "Öffentliche Aufträge sind entgeltliche Verträge [...].<br />

61 So Müller/Gerlach, a.a.O., 89.<br />

Seite 69


8.4 Beschaffung von OSS: Vergabeentscheidung<br />

Der vergaberechtlich richtige Zeitpunkt für eine Migrationsentscheidung ist die Wertung<br />

der Angebote bei der Vergabeentscheidung. Der Zuschlag ist gemäß § 97 Abs. 5 GWB<br />

auf das wirtschaftlichste Angebot zu erteilen. § 25 Nr. 3 VOL/A bestimmt näher, dass der<br />

niedrigste Angebotspreis nicht allein entscheidend ist. Es ist deswegen vergaberechtlich<br />

nicht zu beanstanden, wenn sich Behörden entgegen kurzfristiger monetärer Anreize für<br />

ein höherwertiges Angebot entscheiden. Entscheidend für die Wirtschaftlichkeit eines<br />

Angebots ist das günstigste Verhältnis zwischen der gewünschten Leistung und dem<br />

angebotenen Preis.<br />

Vergabefremde Kriterien sind dabei auszuscheiden, es sei denn, sie sind ausdrücklich<br />

durch Bundes- oder Landesgesetz vorgesehen (vgl. § 97 Abs. 4 GWB). Entsprechende<br />

Gesetze, welche eine bevorzugte Beschaffung von OSS vorschreiben, sind bislang nicht<br />

erlassen worden, und zwar weder auf Bundes- noch auf Landesebene. "Grundsatzbeschlüsse",<br />

wie etwa der des Deutschen Bundestags vom 09.11.2003, in welchem der<br />

Bundestag "die Einführung von unter Open-Source-Lizenzen erstellten Produkten in der<br />

Bundesverwaltung" gefordert hat 62 , können weder als Ersatz für ein Gesetz im Sinne von<br />

§ 97 Abs. 4 GWB bewertet werden, noch entbinden sie Behörden von den Vorgaben des<br />

Vergaberechts. Die Vergabeentscheidung ist also auch bei Vorliegen entsprechender<br />

Empfehlungen nach dem Wirtschaftlichkeitsprinzip auszurichten.<br />

Bei Anlegung dieser Grundsätze ergibt sich das folgende Bild: Pauschale Hinweise auf<br />

die Förderung von OSS oder des Wettbewerbs auf den IT-Märkten sind als vergabefremde<br />

Kriterien unzulässig. Die IT-Beschaffung durch Behörden ist nicht der richtige<br />

Platz, um Wettbewerbspolitik zu betreiben. Das Gleiche gilt für sozialpolitische oder<br />

sonstige allgemeine Erwägungen. Behörden dürfen entsprechende Argumente bei der<br />

Begründung einer Vergabeentscheidung nicht zugrunde legen.<br />

Es ist aber darauf hinzuweisen, dass sich Behörden nicht mit einem einfachen<br />

Preisvergleich der Gesamtangebote begnügen müssen. Die Erfahrung zeigt, dass<br />

kurzfristige finanzielle Vorteile oftmals später teuer bezahlt werden müssen. Dies kann<br />

insbesondere dann der Fall sein, wenn Behörden Produkte anschaffen, die nur mit<br />

Produkten desselben Anbieters kombiniert werden können oder für die ausschließlich<br />

dieser Anbieter Supportleistungen anbietet. Kurzfristige Preisnachteile können<br />

mittelfristig durch die Unabhängigkeit von einzelnen Anbietern auf den Folgemärkten<br />

ausgeglichen werden. OSS bietet hier einen strategischen Vorteil. Offene Quelltexte und<br />

die Freiheit, Änderungen an diesen vorzunehmen, sorgen dafür, dass wichtige<br />

Folgemärkte für eine Mehrzahl von Anbietern offen stehen. Dies sorgt für Wettbewerb<br />

und Kostenvorteile. Eine entsprechende Einbeziehung konkret absehbarer Begleit- und<br />

Folgekosten ist im Sinne einer nachhaltigen Verwendung öffentlicher Mittel<br />

wünschenswert. Es sollte hierbei aber nicht direkt auf die zu erwartenden mittel- und<br />

langfristigen Kosten verwiesen werden, denn die Vergabekriterien müssen stets auf die<br />

ausgeschriebene Leistung bezogen sein. Vielmehr müssen die genannten<br />

Eigenschaften von OSS als Vorteil einer Migration zu OSS im Rahmen des Preis-<br />

Leistungs-Vergleichs berücksichtigt werden. Die technische und rechtliche<br />

62 Vgl. den dem Beschluss zugrunde liegenden Antrag der Regierungsfraktionen, Bundes-<br />

tags-Drucksache 14/5246, S. 4 ff.<br />

Seite 70


Unabhängigkeit auf Folgemärkten ist deshalb als werthaltige Eigenschaft des Angebots<br />

zu berücksichtigen.<br />

Vergaberechtlich zulässig sind auch alle sonstigen Kriterien, denen Aussagekraft für die<br />

Leistungsfähigkeit der einzelnen Angebote zukommt. Hier können unter anderem einbezogen<br />

werden: die technische Sicherheit der IT-Angebote, die Kompatibilität mit anderen<br />

Programmen, die Kompatibilität der mit dem Programm erzeugten Dokumente, die technischen<br />

und rechtlichen Nutzungsmöglichkeiten, Fragen der Haftung und Gewährleistung.<br />

Entsprechende Kriterien dürfen allerdings nur unter der Voraussetzung berücksichtigt<br />

werden, dass sie in der Ausschreibung ausdrücklich benannt worden sind.<br />

8.5 Vergleich der Migration zu proprietärer Software und zu OSS<br />

Die Anforderungen des Vergaberechts gelten in gleichem Maße für eine Migration zu<br />

OSS wie eine Migration zu proprietärer Software. Ausschreibungen dürfen nicht so<br />

gestaltet sein, dass bestimmte Bieter, seien es Anbieter proprietärer oder OSS-Produkte,<br />

von vornherein faktisch ausgeschlossen sind. Hierauf zielen der Grundsatzbeschluss<br />

des Deutschen Bundestags vom 09.11.2003 und ähnliche Entschließungen im Ergebnis<br />

ab.<br />

Allerdings bestehen im Hinblick auf proprietäre IT-Produkte vergaberechtliche Probleme,<br />

die auf OSS nicht in gleichem Maße zutreffen. Dies gilt insbesondere für das oft anzutreffende<br />

Problem der mangelnden Kompatibilität von Software einzelner Anbieter mit<br />

den Produkten anderer Anbieter. Hier hat sich in der Vergangenheit für Behörden häufig<br />

das Problem gestellt, dass bei der Migration von Teilen der eigenen IT-Infrastruktur letztlich<br />

nur Leistungen desselben Bieters in Betracht gezogen worden sind, da eine Migrationsstrategien<br />

auf Produkte anderer Anbieter mit technischen Hürden verbunden gewesen<br />

wäre.<br />

Andere Bieter hatten es auch in solchen Fällen schwer, sich durchzusetzen, in denen die<br />

Behörde elektronische Dokumente mit anderen Behörden oder Privaten austauschen<br />

muss, wobei die Programme eines Anbieters bei den anderen Behörden oder Privaten<br />

eine Art faktischer Standard darstellen, ohne dass auf die Dokumente mit anderen Programmen<br />

zugegriffen werden kann. Dieses Problem hat in den letzten Jahren beispielsweise<br />

eine Migration zu OSS von MS Office zu anderen Produkten aus der Sicht vieler<br />

Behörden verhindert. Das Wettbewerbsprinzip ist bei entsprechenden Beschaffungsvorgängen<br />

oft auf vergaberechtlich unzulässige Weise ausgehebelt worden, indem eine<br />

Überprüfung der Kompatibilität anderer Programme gar nicht erst vorgenommen worden<br />

ist. 63<br />

Entsprechende Probleme ergeben sich bei OSS in geringerem Maße, da OSS-<br />

Programme oftmals auf eine größtmögliche Kompatibilität mit anderen, auch proprietären<br />

Produkten ausgelegt sind. So gestattet etwa OpenOffice.org den Export von Textdateien<br />

als PDF-Dokumente sowie das Abspeichern als MS Word Dokument. Von besonderer<br />

Bedeutung ist auch, dass das standardmäßige Dateiformat in OpenOffice.org<br />

ein offenes XML-Dateiformat ist. Es kann damit auch auf entsprechende Dokumente<br />

63 Vgl. beispielsweise Bundeskartellamt, 2. Vergabekammer des Bundes, Beschluss vom<br />

08.08.2003, AZ: VK 2-52/03, S. 30-32 (abrufbar unter http://www.bundeskartellamt.de).<br />

Seite 71


zugegriffen werden, ohne OpenOffice.org zu benutzen. Die Systemabhängigkeit ist dadurch<br />

abgeschwächt, die technischen Hürden für eine Migration sind geringer. Der Einsatz<br />

von technischen Lösungen, welche den Übergang zu anderen Produkten erleichtert,<br />

verringert vergaberechtliche Probleme bei der Beschaffung von IT-Produkten.<br />

9 Fazit<br />

Eine Gesamtschau der untersuchten rechtlichen Fragen lässt weder den Schluss auf ein<br />

erhöhtes Rechtsrisiko bei einer Migration zu proprietärer Software, noch einer Migration<br />

zu OSS zu. Behörden sollten sich deswegen nicht mit dem pauschalen Hinweis auf<br />

angebliche rechtliche Gefahren von einer Migration zu OSS abschrecken lassen. In der<br />

Summe erscheinen die Risiken von OSS und proprietärer Software als durchaus<br />

vergleichbar. Eine abschließende Evaluierung hängt allerdings in jedem Einzelfall von<br />

den in Frage stehenden Programmen, den Anbietern, den jeweiligen Vertragsgestaltungen<br />

und sonstigen Konditionen sowie der gewünschten Nutzung durch die<br />

Behörde ab.<br />

Neben den rechtlichen Risiken sollten die lizenzrechtlichen Vorteile von OSS bei der<br />

Auswahlentscheidung berücksichtigt werden. OSS Lizenzen gestatten die Nutzung der<br />

Programme in umfassender Weise. OSS darf von jedem Nutzer beliebig eingesetzt,<br />

verändert, vervielfältigt und verbreitet werden. Daraus ergeben sich für Behörden<br />

strategische Vorteile. Dienstleistungen und Anpassungen der Programme können nicht<br />

nur vom Anbieter des Programms, sondern von unterschiedlichen Serviceunternehmen<br />

erbracht werden. Dies kann zu Kostenvorteilen führen. Möchte die Behörde später den<br />

Umfang oder die sonstigen Bedingungen der Nutzung verändern, so bedarf es nicht<br />

eines kostenintensiven Nachkaufs von entsprechenden Nutzungsrechten. Gleiches gilt<br />

bei Anpassungen des Programms. Diese lizenzrechtlichen Vorteile sollten einbezogen<br />

werden, um zu einer sachgerechten Auswahlentscheidung zwischen OSS und proprietärer<br />

Software zu gelangen.<br />

Seite 72


C Thema: Wirtschaftliche Aspekte von Softwaremigrationen<br />

1 Vorwort<br />

In dem vorliegenden Abschnitt wird eine angepasste Methodik zur Durchführung von<br />

Wirtschaftlichkeitsbetrachtungen zur Migration von Basissoftwarekomponenten 64 auf<br />

Server- und Arbeitsplatz-Systemen offeriert. Grundlage dafür sind die Bewertungsmethoden<br />

und -kriterien der WiBe 4.1 65 , der IT-Updates 66 sowie des <strong>Migrationsleitfaden</strong>s<br />

1.0 67 .<br />

Mit den Hinweisen und Empfehlungen zur Durchführung von Wirtschaftlichkeitsbetrachtungen<br />

bei IT-Update- beziehungsweise Umstellungsvorhaben aus dem Jahre 2000<br />

existierte schon damals eine spezifische Anleitung. Diese wurde im Jahr 2003 durch den<br />

<strong>Migrationsleitfaden</strong> ergänzt. In 2004 folgte eine vollständig überarbeitete Ausgabe der<br />

WiBe in der <strong>Version</strong> 4.0 und im Jahre 2007 wurde die WiBe 4.1 veröffentlicht.<br />

In einer behördenübergreifenden Expertengruppe wurden die in diesen Basiswerken<br />

vorhandenen Kriterien und deren Definition auf die Anwendbarkeit speziell für Migrationen<br />

geprüft, selektiert und gegebenenfalls ergänzt beziehungsweise modifiziert. Somit<br />

ist ein Leitfaden entstanden, der dem Anwender gezielte Unterstützung für Migrationsvorhaben<br />

geben soll.<br />

2 Einleitung<br />

Wie die Diskussion über die auf dem Markt verfügbaren Studien zum Thema Total Cost<br />

of Ownership (TCO) beim Einsatz von Open Source Software (OSS) und proprietärer<br />

Software unter Linux zeigt, ist die Durchführung einer Wirtschaftlichkeitsbetrachtung für<br />

IT-Maßnahmen generell sehr schwierig und wird bei den häufig multidimensionalen Wirtschaftlichkeitsmodellen<br />

zu einer nahezu unlösbaren Aufgabe.<br />

Bei einer breit gefächerten und facettenreichen Analyse – was beim Vergleich von Kosten<br />

für Microsoft- und OSS/Linux-Plattformen zweifelsohne der Fall ist – gehört die Herstellung<br />

der Vergleichbarkeit der Untersuchungsobjekte sowie des richtigen Umfangs der<br />

Analyse zu den wesentlichen Aufgaben.<br />

Eine weitere Notwendigkeit bei der Untersuchung besteht in der Berücksichtigung der<br />

Nutzerstrukturen. Insbesondere die Größe von Organisationen und die unterschiedlichen<br />

Ausgangsszenarien der IT-Umgebung sind relevant für die Wirtschaftlichkeitsbetrach-<br />

64 Im Einzelnen sind darunter folgende Komponenten zu verstehen: Serverdienste, Standardsoftware,<br />

Bürokommunikation, Dokumente und Makros; siehe auch Kapitel I.C 4.<br />

65 Siehe hierzu WiBe 4.1, Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen<br />

in der Bundesverwaltung, insbesondere beim Einsatz der IT, <strong>Version</strong> 4.1, Schriftenreihe der<br />

KBSt, Band 92, Januar 2007, www.kbst.bund.de.<br />

66 Siehe hierzu Hinweise und Empfehlungen zur Durchführung von Wirtschaftlichkeitsbetrachtungen<br />

bei IT-Update- beziehungsweise Umstellungsvorhaben auf Grundlage der IT-WiBe-<br />

97, Schriftenreihe der KBSt, ISSN 0179-7263´, Brief 04/2000, November 2000.<br />

67 Siehe hierzu <strong>Migrationsleitfaden</strong>, Leitfaden für die Migration der Basissoftwarekomponenten<br />

auf Server- und Arbeitsplatz-Systemen, <strong>Version</strong> 1.0, Schriftenreihe der KBSt, ISSN<br />

0179-7263, Band 57, Juli 2003.<br />

Seite 73


tung einer Migration. Häufig kann beobachtet werden, dass in kleineren Behörden (beispielsweise<br />

im kommunalen Sektor) die IT-Infrastruktur mit einfachen Mitteln und ohne<br />

intensive Ausbildung der Beteiligten aufgebaut und betrieben werden kann. Auf der anderen<br />

Seite erfordert der zuverlässige Betrieb von Infrastrukturen oder Rechenzentren<br />

für große und/oder spezialisierte Behörden und Datenzentralen mit Service Level Agreements<br />

einen erhöhten Ausbildungsstand der Mitarbeiter, organisatorische Regelungen<br />

für Ausfall- und Notfallzeiten sowie häufig eine andere Hardware-Ausstattung.<br />

Unter Berücksichtigung dieser Randbedingungen ist für die IuK-Wirtschaftlichkeit eine<br />

mehrdimensionale Betrachtung notwendig. Im Vorfeld der Untersuchung der IT-Kosten<br />

gilt, dass ein wesentlicher Beitrag zur Erhöhung der Wirtschaftlichkeit zunächst einmal<br />

durch personelle, organisatorische und rationalisierende Maßnahmen in den Verwaltungen<br />

erreicht werden kann. Darüber hinaus kann jedoch durch eine entsprechend ausgelegte<br />

IT-Strategie ebenfalls ein wesentlicher Beitrag zur Erhöhung der Wirtschaftlichkeit<br />

geliefert werden.<br />

Die Gesamtwirtschaftlichkeit der IT wird stark beeinflusst durch:<br />

� den Grad der funktionalen Abdeckung durch preiswerte Standardprodukte,<br />

� Qualität, Änderungsflexibilität und Entwicklungsfähigkeit der eingesetzten Standards,<br />

Technologien und Produkte,<br />

� effizientes Einführungs- und Systemmanagement,<br />

� bruchfreie Integration von Komponenten und Systemen in einer prozessorientierten<br />

Wertschöpfungskette,<br />

� gute (interne oder externe) Service-Organisation sowie hochwertiges Know-how,<br />

� wirtschaftliche Lebenszyklen der Produkte,<br />

� Kosten und Effizienz des Beschaffungsprozesses, sowie<br />

� Wettbewerb bei Produkten und Dienstleistungen<br />

Erst ein optimales Zusammenspiel all dieser Faktoren über einen längeren Betrachtungszeitraum<br />

bedingt und beeinflusst die Wirtschaftlichkeit insgesamt, sodass eine vereinfachte<br />

Betrachtung von Einzelkosten das Gesamtbild in der Regel nicht korrekt widerspiegeln<br />

kann.<br />

Neben der Ermittlung und dem Vergleich von Kosten bedeutet auch die Beurteilung der<br />

möglichen Nutzwerte einen wesentlichen Aspekt der Wirtschaftlichkeitsbetrachtung. Insbesondere<br />

in diesem Bereich spielen strategische Überlegungen und prognostizierte<br />

Vorteile eine wichtige Rolle, um sowohl die Ausgangssituation als auch die Perspektive<br />

ganzheitlich beurteilen zu können.<br />

Beispiel: Die auf eine vereinzelte Komponente bezogenen Mehrkosten können in der<br />

strategischen Betrachtung durch die erreichte Herstellerunabhängigkeit eine bessere<br />

Verhandlungsposition bei Softwarelizenzpreisen zu einem insgesamt deutlich günstigeren<br />

Gesamtergebnis führen. Diese Zusammenhänge einer Gesamtbetrachtung von Kosten<br />

und Nutzwert werden besonders deutlich im Ergebnis der „Client Studie der Landes-<br />

Seite 74


hauptstadt München― 68 , die im Ergebnis der monetären Wirtschaftlichkeitsbetrachtung<br />

eine Migration nach Windows XP und Office XP als wirtschaftlicher sieht und dagegen in<br />

der Gesamtbetrachtung von monetärer Wirtschaftlichkeit und Nutzwertbetrachtung ein<br />

Zielsystem mit Linux und Open Office.org präferiert 69 .<br />

Sowohl die Methode als auch das Ergebnis kann aus diesen Gründen lediglich als Hilfe<br />

bei der Ermittlung der eigenen Wirtschaftlichkeit und somit bei der Formulierung der eigenen<br />

IT-Strategie dienen.<br />

Das Hauptaugenmerk liegt auf der Methodenvermittlung. Berechnungsbeispiele werden<br />

nur und ausschließlich zu Verständniszwecken eingefügt.<br />

Eine Produktivitätsbetrachtung in der IT-Wertschöpfungskette findet im Umfang dieses<br />

Leitfadens nicht statt, da entsprechende neutrale Langzeituntersuchungen, insbesondere<br />

in der Verwaltung, nicht vorhanden sind. Sie würde auf Basis heutiger Erfahrungen<br />

und insbesondere im Hinblick darauf, dass es sich sowohl bei Linux/Unix- als auch Microsoft-Plattformen<br />

um reife Produkte mit langjähriger Entwicklungszeit handelt, voraussichtlich<br />

zu einem ausgewogenen Ergebnis führen.<br />

Weiterhin werden im Rahmen der nachfolgenden Wirtschaftlichkeitsbetrachtungen die<br />

Auswirkungen von besonderen Integrationsaspekten nicht tiefer gehend betrachtet. Eine<br />

detaillierte Berücksichtigung der Integrationsaspekte kann aufgrund der Zielsetzungen<br />

nur im Rahmen der Behörden und damit anforderungsspezifischen Wirtschaftlichkeitsbetrachtungen<br />

hinreichend qualifiziert erfolgen.<br />

3 Methodische Grundsätze<br />

Nr. 2.1 der Verwaltungsvorschrift zu § 7 Bundeshaushaltsordnung (BHO) führt aus:<br />

„Wirtschaftlichkeitsuntersuchungen in der Planungsphase bilden die Grundlage für die<br />

begleitenden und abschließenden Erfolgskontrollen. Wirtschaftlichkeitsuntersuchungen<br />

müssen mindestens Aussagen zu folgenden Teilaspekten enthalten:<br />

� Analyse der Ausgangslage und des Handlungsbedarfs,<br />

� Ziele, Prioritätsvorstellungen und mögliche Zielkonflikte,<br />

� relevante Lösungsmöglichkeiten und deren Nutzen und Kosten (einschl. Folgekosten),<br />

auch soweit sie nicht in Geld auszudrücken sind,<br />

� finanzielle Auswirkungen auf den Haushalt,<br />

� Eignung der einzelnen Lösungsmöglichkeiten zur Erreichung der Ziele unter Einbeziehung<br />

der rechtlichen, organisatorischen und personellen Rahmenbedingungen,<br />

68 Erstellt durch Unilog Integrata Unternehmensberatung GmbH, Unilog Management,<br />

unterstützt durch die Landeshauptstadt München, Direktorium AfID, Abt. 5, München 2003<br />

http://www.muenchen.de/vip8/prod2/mde/_de/rubriken/Rathaus/40_dir/limux/publikationen/<br />

clientstudie_kurz.pdf.<br />

69 Bei der Betrachtung der Ergebnisse der Studie lohnt es sich genau hin zu sehen. Zu einem<br />

wo die Gründe für die Vorteile von XP bei der monetären Wirtschaftlichkeit herrühren und<br />

zum anderen, woraus sich die Gründe Vorteile von Linux und OSS in einer Nutzwertbetrachtung<br />

herleiten lassen.<br />

Seite 75


� Zeitplan für die Durchführung der Maßnahme,<br />

� Kriterien und Verfahren für Erfolgskontrollen (siehe<br />

Nr. 2.2, VV zu § 7 BHO)."<br />

Diese Anforderungen stellen prinzipiell den Rahmen und die Struktur für die Wirtschaftlichkeitsbetrachtungen<br />

dar.<br />

Wirtschaftlichkeit<br />

(Kosten/ Nutzen)<br />

ermitteln<br />

Personaleinsatz<br />

planen<br />

Projektplan mit<br />

Maßnahmen<br />

erstellen<br />

Alternativen<br />

vergleichen<br />

Kostenansätze<br />

für Lösungen<br />

erheben<br />

Seite 76<br />

Ziele / Rahmen-<br />

Bedingungen<br />

identifizieren<br />

Technische<br />

Lösungsmöglichkeiten<br />

eruieren<br />

Vorgaben /<br />

Annahmen<br />

definieren<br />

Modell der<br />

Wirtschaftlichkeitsbetrachtung<br />

abstimmen<br />

Ausgangssituation<br />

erheben<br />

Abbildung 3: Regelkreis der Wirtschaftlichkeitsbetrachtung<br />

Ein wesentlicher Bestandteil sind die Zielvorstellungen der Behörde, in diesem Zusammenhang<br />

auch mögliche Zielkonflikte sowie Rahmenbedingungen in Form von Vorgaben<br />

und Annahmen. Die Abstimmung des Modells der Wirtschaftlichkeitsbetrachtung gehört<br />

auch in diesen Bereich. Daneben ist die Ist-Situation der zu migrierenden IT-Landschaft<br />

zu erheben, wobei Informationen zur Infrastruktur, der Hard- und Softwareprodukte, der<br />

IT-Fachverfahren sowie behördenspezifischer Dokumentvorlagen ermittelt werden. Auf<br />

dieser Basis werden technische Lösungsmöglichkeiten eruiert und mit Kostenansätzen<br />

unterlegt. Dazu gehören neben den Kosten für Hard- und Software auch die Aufwendungen<br />

für externes und internes Personal. Die sich nun anschließende Ermittlung der<br />

Wirtschaftlichkeit berechnet Kosten und Nutzen der IT-Maßnahme und die Auswirkungen<br />

auf den Haushalt. Zur Einschätzung der Personalkosten wird eine grobe Projektplanung<br />

erforderlich, die auch einen Zeitplan für die Durchführung der IT-Maßnahme beinhaltet.


3.1 Ziele und Rahmenbedingungen<br />

3.1.1 Ziele<br />

Vor der Durchführung einer jeden IT-Maßnahme sollten die im IT-Rahmenkonzept festgelegten<br />

oder aus strategischen Vorgaben abgeleiteten operativen Behördenziele festgestellt<br />

werden. Ein Abgleich dieser Ziele mit den IT-Maßnahmen reduziert mögliche<br />

Konflikte mit den Zielvorgaben und anderen Projekten. Weiterhin wird hiermit der Grundstein<br />

für die in Nr. 2.2 der VV zu § 7 BHO geforderten Zielerreichungskontrolle gelegt.<br />

Die Erstellung eines grundsätzlichen Ziel- und Anforderungssystems für die IT-<br />

Maßnahme hilft, mögliche Lösungen unabhängig von der Wirtschaftlichkeit auf ihre Eignung<br />

hin zu prüfen. Hiermit wird konkret die Definition von Anforderungskriterien angesprochen,<br />

die für die einzelnen Lösungsalternativen in Form von Nutzwertanalysen 70 zu<br />

bewerten sind. Einzelne dieser Kriterien oder Kriteriengruppen können im Rahmen der<br />

Zielerreichungskontrolle als Messgröße dienen.<br />

An dieser Stelle sei der Hinweis gegeben, dass die Definition der Zielsetzungen der Behörde<br />

und die damit verbundenen notwendigen Aktivitäten in einem separaten Strategieprozess<br />

gefunden werden sollten. Hierfür sind in der Praxis erprobte Methodiken verfügbar,<br />

die die Gesamt-Strategie einer Behörde definieren helfen und die strategische<br />

Ableitung für die IT unterstützen.<br />

3.1.2 Prämissen und Annahmen<br />

Jede IT-Maßnahme muss im Kontext einer vorhandenen IT-Landschaft, einer existenten<br />

Organisation und bestehender Gesetze, Vorschriften und Vorgaben durchgeführt werden.<br />

Daher wird es für den Erfolg der IT-Maßnahme zwingend notwendig, diese externen<br />

Einflussfaktoren zu identifizieren und zu dokumentieren. Auch die Ausgestaltung der<br />

Durchführung der Wirtschaftlichkeitsberechnung beinhaltet i. d. R. spezifische Festlegungen,<br />

die einmal generell genannt und kurz beschrieben werden sollten. Grundsätzliche<br />

Wertansätze, die nicht in der Wirtschaftlichkeitsrechnung selbst ermittelt werden,<br />

sondern von außerhalb des Systems übernommen werden (z. B. Personalkostenansätze).<br />

Solche Informationen, die eine wichtige Grundlage für die Berechnung darstellen,<br />

sind festzuhalten. Als Beispiel sind nachfolgend einige als „Annahmen― bezeichnete<br />

Rahmenbedingungen dargestellt.<br />

Der Wirtschaftlichkeitsbetrachtung können z. B. folgende Prämissen zugrunde liegen:<br />

1. Zur Berechnung von Kapitalwerten wird ein Zinssatz in Höhe des empfohlenen<br />

Nominalzinses aus den Personalkostensätzen des BMF verwendet.<br />

(Quelle: www.bundesfinanzministerium.de – Stichwort: Personalkostensätze)<br />

2. Personalkosten intern gemäß den Personalkostensätzen des BMF. (Quelle:<br />

www.bundesfinanzministerium.de – Stichwort: Personalkostensätze)<br />

70 siehe WiBe 4.0, Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen in der<br />

Bundesverwaltung, insbesondere beim Einsatz der IT, <strong>Version</strong> 4.0 – 2004, „Berechnung<br />

der erweiterten Wirtschaftlichkeit", S. 80 ff.<br />

Seite 77


3. Personalkosten extern: durchschnittlich 1.200 €/PT<br />

4. Der Abschreibungszeitraum für Hardware und Software wird auf 5 Jahre<br />

festgelegt.<br />

5. Der Betrachtungszeitraum ist auf 8 Jahre definiert von 2005-2012.<br />

6. Die Betrachtung richtet sich auf Ist-Kosten.<br />

7. Prozessbezogene Produktivitätsveränderungen/-verbesserungen werden<br />

nicht berücksichtigt.<br />

3.2 Monetäre Analyse<br />

Für die monetären Auswirkungen der Vorhaben wird die Kapitalwertmethode angewandt.<br />

Als dynamisches Verfahren beurteilt sie Investitionsprojekte nach ihrem Kapitalwert, d. h.<br />

durch belastbare Erfassung der mit der Investition zusammenhängenden Finanzströme<br />

(Einnahmen und Ausgaben, haushaltswirksam und nicht haushaltswirksam), fokussiert<br />

auf einen gemeinsamen Bezugszeitpunkt. Einnahmen, Ausgaben und Ersparnisse, die<br />

mit dem Vorhaben zusammenhängen, können für die Jahre der wirtschaftlichen Nutzungsdauer<br />

im Voraus geplant werden. Für die künftigen Werte wird der aktuelle Zeitwert<br />

durch Abzinsung mit dem vom Bundesministerium der Finanzen festgelegten Zinssatz<br />

ermittelt.<br />

3.3 Grundsätzliche Überlegungen zur Kostenerhebung<br />

Nachfolgend werden grundsätzliche Überlegungen zur Erhebung der notwendigen Kosten<br />

durchgeführt. Dabei werden insbesondere die einzelnen Migrationsphasen und die<br />

damit verbundenen Maßnahmen sowie die Personalkosten und die Preisstrukturen der<br />

Anbieter in Augenschein genommen.<br />

3.3.1 Migrationsphasen<br />

Die Kosten für eine Migration lassen sich am besten identifizieren, wenn man sich ein<br />

Phasenmodell zugrunde legt und die mit den einzelnen Phasen verbundenen Maßnahmen<br />

definiert. Das Modell, das hier zugrunde gelegt wird, umfasst drei Hauptphasen<br />

(siehe Tabelle 9):<br />

� Planungsphase (Grob- und Feinkonzept) 71<br />

o Workshops<br />

(Kick-off, betroffene Fachabteilungen und IT-Disziplinen beteiligen, Identifizieren<br />

aller relevanten Themen, Prioritäten setzen, Entscheidungsbedarf<br />

identifizieren, Vorgehensweise und Projektplan festlegen, detaillierte Aufwandsschätzung,<br />

Teilprojekte festlegen und Arbeitsgruppen zuweisen)<br />

71 Die Wirtschaftlichkeitsbetrachtung begleitet dabei die gesamte Qualifizierungsphase.<br />

Seite 78


o Ist-Aufnahme<br />

(Anwendungslandschaft, Kommunikationsbeziehungen, Netzwerkinfrastruktur,<br />

zentrale Dienste, Betriebsverfahren, zukünftige Anforderungen)<br />

o Lösungsansätze/ Grob- und Feinkonzepte<br />

(Pflichtenheft erstellen, Projektplan verfeinern und Arbeitspakete definieren,<br />

technische Machbarkeit, Aufbau einer Integrations- und Testumgebung,<br />

Abbildung der übrigen Produktionsumgebung, Anwendungsintegration,<br />

Hardware-Auswahl und Evaluierung)<br />

� Realisierungsphase (Verfahrenserstellung/-entwicklung und Erprobung und Abnahme)<br />

o Konzepte, Verfahren, Installationen<br />

(detaillierte Festlegung des Funktionsumfangs, Integration in die übrige<br />

IT-Umgebung, Entwicklung der Installationsverfahren und Softwareverteilung,<br />

Integration in den Betrieb, Rollout-Planung, Pilotplanung, Ausbildung<br />

des DV-Personals)<br />

o Erprobung von Verfahren und Überprüfung der Funktion von Installationen<br />

(Feature Stop, repräsentative Benutzergruppe versorgen, Lasttests,<br />

Einbindung des UHD (User Help Desk), erstmalige Sizing-Kontrolle,<br />

Rückkopplung in Feinkonzept)<br />

� Einsatzphase (Einführung und Betrieb, Roll-Out)<br />

Bereitstellen von Funktionen im Netzwerk und Installationen in der Fläche (Inbetriebnahme<br />

der Installationsverfahren, Serversysteme vervielfältigen, Benutzerinformation<br />

und –schulung, Begleitung durch Projektteam, Übergabe in den Regelbetrieb)<br />

Planungsphase<br />

(Grob- und Feinkonzepte, Workshops,<br />

Lösungsansätze)<br />

1 Feinkonzept/Pflichtenheft<br />

2 Migrationsplan Infrastruktur<br />

3 Migrationsplan Systemmanagement<br />

4 Migrationsplan Client<br />

5 Verabschiedung konsolidierter Migrationsplan<br />

(fachliches Feinkonzept)<br />

Seite 79


Realisierungsphase<br />

(Verfahrenserstellung/-entwicklung,<br />

Konzepte, Verfahren, Installationen)<br />

(Erprobung und Abnahme von Verfahren,<br />

Funktionstest von Installationen)<br />

Einsatzphase<br />

(Einführung und Betrieb, Funktionen im<br />

Netzwerk bereitstellen, Installationen in<br />

der Fläche)<br />

3.3.2 Personalbedarf für die Migration<br />

6 Implementierung Basis Infrastruktur<br />

7 Infrastrukturdienste<br />

8 Systemmanagement<br />

9 Groupware - Messaging<br />

10 Terminalserver<br />

11 Design Desktop<br />

12 Installationsverfahren Desktop<br />

13 Migration Funktionen Systemmanagement<br />

14 Paketierung: 1 – 2 Applikationen / 1 MT<br />

15 Pilotbetrieb 1 Monat / 20 – 50 Benutzer<br />

16 Testlauf Migrationshandbuch<br />

17 Dokumentation Migrationshandbuch<br />

18 Migration der Daten-/Rechte Strukturen<br />

19 Migration der Client Strukturen<br />

Tabelle 9: Migrationsphasen<br />

Personalaufwand entsteht bei der Migration an den unterschiedlichsten Positionen. In<br />

Tabelle 9 sind die einzelnen Phasen in migrationstypische Aktivitäten untergliedert worden.<br />

Zu diesen Aktivitäten sind zusätzlich die Umstellung der Dokumente und Makros<br />

sowie Projektmanagement, Qualitätssicherung und vor allen Dingen die Anwenderbetreuung<br />

zu planen. Die nachfolgenden Tabellen 72 geben beispielhaft einen Überblick<br />

über die prozentuale Verteilung der Personentage- und der Personalkosten-Planung 73 .<br />

In der Abbildung 4 werden für drei Beispiel-Alternativen Personalaufwände in den einzelnen<br />

Aktivitäten dargestellt. In der Abbildung 5 werden für die drei Beispiel-Alternativen<br />

die Personalaufwendungen um die oben aufgeführten zusätzlichen Aktivitäten mit denen<br />

der Migrationsphasen zu einer Gesamtsicht zusammengeführt.<br />

72<br />

Da die Tabellen keine Nachkommastellen enthalten, können sich in Einzelfällen Rundungsdifferenzen<br />

ergeben.<br />

73<br />

Die hier abgebildeten Daten stehen beispielhaft für eine größere Behörde.<br />

Seite 80


Phase Nr Beschreibung<br />

Seite 81<br />

Variante 1 Variante 2 Variante 3<br />

intern extern intern extern intern extern<br />

Su Kosten Gesamt € 391.972 329.944 385.552<br />

Su Kosten intern/extern € 84.972 307.000 72.944 257.000 98.552 287.000<br />

Su Personentage (PT) Gesamt 526,0 445,0 541,0<br />

Su Personentage (PT) intern/extern 219,0 307,0 188,0 257,0 254,0 287,0<br />

Planungsphase<br />

(Workshops,<br />

Lösungsansätze,<br />

Grob- und Feinkonzepte)<br />

Realisierungsphase<br />

(Konzepte, Verfahren,<br />

Installationen)<br />

(Erprobung von Verfahren,<br />

Funktionstest von<br />

Installationen)<br />

Einsatzphase (Funktionen im<br />

Netzwerk bereitstellen,<br />

Installationen in der Fläche)<br />

Migr.phasen<br />

62,0 122,0 62,0 107,0 62,0 122,0<br />

1 Feinkonzept / Pflichtenheft<br />

30,0 30,0 30,0 30,0 30,0 30,0<br />

2 Migrationsplan Infrastruktur<br />

10,0 30,0 10,0 25,0 10,0 30,0<br />

3 Migrationsplan Systemmanagement 10,0 30,0 10,0 25,0 10,0 30,0<br />

4 Migrationsplan Client<br />

10,0 30,0 10,0 25,0 10,0 30,0<br />

5 Verabschiedung konsoliderter Migr.plan 2,0 2,0 2,0 2,0 2,0 2,0<br />

137,0 155,0 111,0 130,0 132,0 135,0<br />

6 Implementierung Basis Infrastruktur<br />

72,0 98,0 51,0 77,0 65,0 77,0<br />

7 Infrastrukturdienste<br />

15,0 17,0 8,0 10,0 15,0 10,0<br />

8 Systemmanagement<br />

20,0 25,0 10,0 15,0 20,0 25,0<br />

9 GroupWare - Messaging<br />

12,0 16,0 8,0 12,0 12,0 12,0<br />

10 Terminalserver<br />

20,0 35,0 20,0 35,0 15,0 30,0<br />

11 Design Desktop<br />

5,0 5,0 5,0 5,0 3,0<br />

Paketierung für APC-Implementierung 25,0 27,0 20,0 23,0 27,0 23,0<br />

12 Installationsverfahren Desktop 5,0 7,0 5,0 7,0 4,0 7,0<br />

13 Migration Funktionen Systemmgmt. 15,0 15,0 10,0 11,0 18,0 11,0<br />

14 Paketierung: 1-2 Applikationen / 1MT 5,0 5,0 5,0 5,0 5,0 5,0<br />

Pilot und Test 40,0 30,0 40,0 30,0 40,0 35,0<br />

15 Pilotbetrieb 1 Monat / 20 - 50 Benutzer 25,0 15,0 25,0 15,0 25,0 20,0<br />

16 Testlauf Migrationsverfahren<br />

10,0 5,0 10,0 5,0 10,0 5,0<br />

17 Dokumentation Migrationshandbuch<br />

5,0 10,0 5,0 10,0 5,0 10,0<br />

20,0 30,0 15,0 20,0 60,0 30,0<br />

18 Migration der Daten-/Rechte Strukturen 10,0 20,0 5,0 10,0 10,0 20,0<br />

19 Migration der Client Strukturen<br />

10,0 10,0 10,0 10,0 50,0 10,0<br />

Abbildung 4: Beispiel: Personalaufwendungen in den Migrationsphasen<br />

Szenarien Variante 1 Variante 2 Variante 3 Variante 4<br />

Personentage Faktor intern extern intern extern intern extern<br />

Su Kosten Gesamt € 765.795 703.411 709.044<br />

Su Kosten intern/extern € 234.938 530.857 218.982 484.429 230.717 478.327<br />

Su PT Gesamt 1136,4 1048,8 1073,0<br />

Su PT intern/extern 605,5 530,9 564,4 484,4 594,6 478,3<br />

Planung 162,2 220,2 135,7 194,7 159,1 199,7<br />

Realisierung 40,8 30,6 40,8 30,6 40,8 35,7<br />

Einsatz 20,4 30,6 15,3 20,4 40,2 30,6<br />

Dokumente/ Anwendungen 50,0 50,0 50,0 50,0 25,0 25,0<br />

PM/ QS/ Anwenderbetreuung 332,0 199,4 322,6 188,7 329,5 187,3<br />

- davon Projekt-Mgmt. (PM) 15,00% 41,0 49,7 36,3 44,4 39,8 43,7<br />

- davon Qualitätssicherung (QS) 15,00% 41,0 49,7 36,3 44,4 39,8 43,7<br />

- davon Anwenderbetreuung 0,00% 0,0 0,0 0,0 0,0 0,0 0,0<br />

- davon Anwenderbetreuung 1) absolut 250,0 100,0 250,0 100,0 250,0 100,0<br />

3.3.3 Preisstrukturen der Anbieter<br />

Abbildung 5: Beispiel: Gesamtpersonalaufwand<br />

Einen weiteren wesentlichen Bereich stellen neben den Personalaufwänden die Kosten<br />

für Soft- und Hardware dar. Hier sind i. d. R. Preisinformationen bei den Herstellen / Lieferanten<br />

einzuholen. Diese Daten sollten für unterschiedliche Finanzierungsmodelle abgefragt<br />

werden. So kann es im Einzelfall zu spürbaren Unterschieden zwischen Kauf,<br />

Miete und Leasing kommen. Basis bilden generell die Preislisten der Anbieter. In jedem


Fall sind für diese Informationen jedoch evtl. vorhandene Rahmenabkommen der Behörde<br />

mit den Anbietern zu verwenden.<br />

Da sich Migrationen in der Regel auf der Serverseite und gegebenenfalls zusätzlich auf<br />

der Clientseite abspielen, wird die Erhebung der Preisinformationen in diese beiden Bereiche<br />

gegliedert.<br />

3.3.3.1 Server<br />

In diesem Bereich wird folgende Struktur empfohlen:<br />

Server<br />

Software<br />

Hardware<br />

Betriebssystem Betriebssystem<br />

Infrastrukturdienste Directory<br />

Seite 82<br />

Anmeldedienst<br />

File<br />

Druck<br />

DNS/ DHCP/ BOOTP<br />

Systemmanagement Softwareverteilung<br />

Inventarisierung<br />

Helpdesk<br />

Systemüberwachung<br />

Netzwerküberwachung<br />

Datenbanken DBMS (Datenbanken-<br />

Managementsysteme)<br />

Groupware & Messaging Groupware<br />

Terminalserver<br />

Mail<br />

Tabelle 10: Erhebungsstruktur Preisinformationen Hard-/ Software - Server


3.3.3.2 APC<br />

Auch auf der Seite der Arbeitsplatzrechner hat sich nachfolgende Strukturierung als hilfreich<br />

erwiesen:<br />

Arbeitsplatzcomputer<br />

Software<br />

Hardware<br />

Betriebssystem Betriebssystem<br />

Standardsoftware Dokumentenaustauschformat,<br />

PDF-Betrachter/-Erstellung<br />

Terminalserver (Client Zugriff)<br />

Seite 83<br />

Webbrowser und Mailclient<br />

Textverarbeitung<br />

Tabellenkalkulation<br />

Präsentation<br />

Komprimierung<br />

Werkzeuge (Bildbearbeitung, etc.)<br />

Tabelle 11: Erhebungsstruktur Preisinformationen Hard-/ Software - Arbeitsplatzcomputer<br />

Diese Informationen sind wiederum in der Projektmatrix abzulegen, um sie der Berechnung<br />

der Wirtschaftlichkeit zugänglich zu machen.<br />

3.4 Nutzwert-Analyse<br />

Gilt es bei der Entscheidungsfindung nicht monetär erfassbare Auswirkungen mit einzubeziehen,<br />

stehen für Migrationen selektierte Kriterien zur Verfügung (siehe Kapitel I.C<br />

5.3.1, „Dringlichkeitskriterien― und Kapitel I.C 5.3.2, „Qualitativ-strategische Kriterien―).<br />

Die Nutzwertanalyse der WiBe für Migrationen verfolgt dasselbe Prinzip wie die WiBe<br />

4.0 74 und bewertet einzeln und unabhängig voneinander gewichtete Zielkriterien, um sie<br />

anschließend zu einer Gesamtbewertung zusammenzufassen. Hier werden die sogenannten<br />

qualitativen Faktoren über Bewertungsskalen quantifiziert.<br />

74 siehe WiBe 4.0, Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen in der<br />

Bundesverwaltung, insbesondere beim Einsatz der IT, <strong>Version</strong> 4.0 – 2004, S. 80 ff.


Für die Ergebnisauswertung empfehlen wir in zwei Schritten vorzugehen:<br />

1. Die Ergebnisse der monetären Wirtschaftlichkeitsbetrachtung für Migrationen haben<br />

Priorität. Hier werden Kosten und Nutzen der Maßnahmen nach der oben<br />

aufgeführten Methodik 75 in einer Rentabilitätskennzahl dargestellt.<br />

2. Die Ergebnisse der Nutzwertanalyse für Migrationen führen zu Kennzahlen für<br />

folgende Bereiche:<br />

o Dringlichkeit der IT-Maßnahme<br />

o qualitativ-strategische Bedeutung der IT-Maßnahme<br />

Anmerkung: Migrationen haben grundsätzlich keine oder nur geringe unmittelbare<br />

Effekte auf Kunden der Behörde. Daher werden die Kriterien für externe Effekte<br />

der IT-Maßnahme bei Migrationen, soweit erforderlich, im Bereich der qualitativ-strategischen<br />

Kriterien behandelt.<br />

Dieser zweite Schritt dient primär dem Fall, dass eine Wirtschaftlichkeitsbetrachtung<br />

nach monetären Gesichtspunkten grundsätzlich nicht ausreicht beziehungsweise<br />

keine eindeutige Rentabilitätsaussage liefert. Aufgrund von Dringlichkeits-<br />

, Strategiekriterien kann das Projekt stets unabhängig von monetären Kriterien<br />

eine hohe Priorität zur Durchführung erhalten.<br />

Die Methodik der Nutzwertanalyse ist ausführlich in den Unterlagen der WiBe 4.0 beschrieben<br />

und wird aus diesen Gründen hier nicht mehr aufgeführt.<br />

3.5 Vollkostenansatz<br />

In der Wirtschaftlichkeitsbetrachtung ist grundsätzlich der Vollkostenansatz zu verwenden.<br />

D. h. alle unmittelbar und mittelbar monetär quantifizierbaren Kosten und Nutzen<br />

sind der IT-Maßnahme zuzuordnen. Daraus ergibt sich die Erfordernis auch die nicht<br />

haushaltswirksamen 76 Kosten zu berücksichtigen.<br />

3.6 Vergleichbarkeit<br />

Um Vergleichbarkeit der verschiedenen Auswertungen zu gewährleisten, wird die Wirtschaftlichkeitsbetrachtung<br />

in zwei Szenarien durchgeführt:<br />

� die Migration einzelner oder mehrerer Migrationsobjekte 77 (Teilmigration), bei klar<br />

abgrenzbaren Produkten oder Produktgruppen 78<br />

� die Gesamtmigration, d. h. Migration einer kompletten DV-Umgebung - Server,<br />

Clients, Infrastruktur, Fachanwendungen<br />

Für die Migration von Migrationsobjekten sowie bei einer Gesamtmigration sind die selektierten<br />

Bewertungskriterien der WiBe für Migrationen anzuwenden. Da im Falle von<br />

75 siehe die Kapitel zur WiBe 4.0<br />

76 Haushaltswirksame Kosten und Nutzen entstehen erst aufgrund der betrachteten Maßnahme<br />

und führen im kommenden Haushaltsplan zu Mehr- oder Minderbeantragungen.<br />

77 Siehe hierzu im Kapitel Vorgehensweise die Abgrenzung der Objekte.<br />

78 Desktop-Anwendungen als Migrationsobjekte mit Textverarbeitung, Tabellenkalkulation,<br />

Grafik und Internetbrowser als Produkte.<br />

Seite 84


Gesamtmigrationen oftmals auch die Umstellung von Fachanwendungen diskutiert wird,<br />

sei an dieser Stelle darauf verwiesen, dass solche Vorhaben in separaten Projekten zu<br />

realisieren sind. Dafür werden auch eigenständige Wirtschaftlichkeitsbetrachtungen erforderlich.<br />

Die darin identifizierten Ersparnisse können durchaus zu einem entsprechenden<br />

Teil der Migrationsmaßnahme zugerechnet und hier dargestellt werden.<br />

Ein weiterer Aspekt wird dadurch hinzugefügt, dass vergleichende Wirtschaftlichkeitsanalysen<br />

nur bei technisch und funktional vergleichbaren Alternativen Sinn macht. Als<br />

vergleichbar können folgende Einsatzbereiche erachtet werden:<br />

� Infrastruktur-Dienste<br />

o File-Dienste<br />

o Print-Dienste<br />

o Anmeldungs-Dienste<br />

o Netzwerk-Dienste<br />

� Messaging- und Groupware-Systeme<br />

� Office-Pakete<br />

� Datenbank- und Web-Anwendungsserver<br />

3.7 Einsatzbereiche<br />

Um ein aussagekräftiges Ergebnis zu erhalten, wird die Analyse in einem aus mehreren<br />

Einsatzbereichen bestehenden Gesamtkontext durchgeführt. Die Gesamtbetrachtung<br />

der zu untersuchenden Kosten umfasst dabei folgende Einsatzfelder:<br />

� Server-Infrastruktur<br />

o Datei-Dienste<br />

o Druck-Dienste<br />

o Anmeldedienste<br />

o Netzwerkdienste<br />

� Desktop-Infrastruktur<br />

o Office<br />

o Web<br />

� Messaging/Groupware<br />

� Datenbank- und Web-Anwendungen<br />

Obwohl sicherlich nicht vollständig, bildet diese Aufzählung einen gemeinsamen Nenner<br />

für die meisten Infrastrukturbereiche einer Behörde.<br />

Die Migration der IT-Fachverfahren stellt unterschiedliche Anforderungen an Organisationseinheit<br />

und die Dienstleister / Lieferanten der Software.<br />

Seite 85


Werden die IT-Fachverfahren in verschiedene Technik-Cluster gegliedert (Terminal,<br />

Web, Dos, MS Access, Makros, Standalone), so bilden sich drei Risikoklassen für die<br />

Migration heraus (siehe Tabelle 12):<br />

1. Einfache Migration möglich<br />

2. Mittlerer Schwierigkeitsgrad; Migrationsweg variabel, Emulation, Terminalserver,<br />

Ablösung<br />

3. Migration schwierig; in der Regel durch Hersteller<br />

Die zu analysierenden Fachverfahren können entsprechend der Informationserhebung<br />

und auf Basis der Migrationsmatrix beispielhaft wie folgt beurteilt werden:<br />

Typ Risiko Migrationsszenario<br />

Terminal i.d.R. vernachlässigbar nicht zutreffend<br />

Web i.d.R. browserabhängig z. B. Standard-Konformität herstellen<br />

DOS Einfacher Schwierigkeitsgrad z. B. Dos-Emulation,<br />

MS Access 79 Mittler bis hoher Schwierigkeitsgrad<br />

möglich; vornehmliche Risikobereiche:<br />

hohe Anzahl, keine Dokumentation,<br />

kein Hersteller, kaum Akzeptanz<br />

Sonstiges (Vorlagen,<br />

Makros,<br />

Formulare)<br />

Alle Schwierigkeitsgrade möglich,<br />

abhängig von Situation, vornehmliche<br />

Risikobereiche: Anzahl und Komplexität<br />

der Makros<br />

C/S Migration i. d. R. schwierig<br />

Portierung nur durch Hersteller möglich<br />

Seite 86<br />

Terminalserver und<br />

Ablösung<br />

z. B.: Neuentwicklung durch Entwickler<br />

(gegebenenfalls Web, Access2WEB),<br />

Emulation (WINE), Terminalserver,<br />

Ablösung<br />

z. B.: Beibehaltung der Office-<br />

Anwendungen durch Emulation, Portierung<br />

nach OpenOffice.org, Ablösung<br />

Portierung durch Hersteller, Möglichkeiten:<br />

Web, Emulation,<br />

Terminalserver, Ablösung<br />

Tabelle 12: Erhebungsstruktur Preisinformationen Hard-/ Software - Arbeitsplatzcomputer<br />

4 Analyse der Ausgangssituation<br />

Die Analyse der Ausgangssituation beschäftigt sich zum einen mit der hardwaretechnischen<br />

Infrastruktur (Server, APC, Netzwerk und Druck) und andererseits mit den vorhandenen<br />

Softwarediensten und -systemen zum Betrieb der IT-Landschaft und zur Un-<br />

79 Hierbei sind Eigenentwicklungen (z. B. C++, etc.) als IT-Fachanwendungen zu betrachten,<br />

die per Definition nicht in dieser Studie berücksichtigt werden, sondern als eigenständiges<br />

Projekt abzuwickeln sind.


terstützung der Geschäftsprozesse. Zur Erhebung 80 hat sich folgende Struktur in verschiedenen<br />

Projekten bewährt:<br />

� Infrastruktur Server<br />

� Infrastruktur APC<br />

� Infrastruktur Netz<br />

� Infrastruktur Druck<br />

� Serverdienste<br />

� Standardsoftware<br />

� Office<br />

� IT-Fachverfahren<br />

� Dokumentvorlagen<br />

4.1 Infrastruktur Server<br />

Die Datenerhebung für die eingesetzten Server soll Aufschluss darüber geben, ob mit<br />

dem vorhandenen Material eine Migration bewerkstelligt werden kann, oder ob auch hier<br />

neue Hardware benötigt wird. Folgende Informationen (siehe Abbildung 6) sind erforderlich:<br />

Dienst/Einsatz, Distribution, <strong>Version</strong>, Erstinstallation, Anzahl gesamt, Alter (< 1 Jahr,<br />

1 – 3 Jahre, > 3 Jahre), Investitionen beziehungsweise Anschaffungs-/Leasing- und<br />

Wartungskosten.<br />

RZ - Infrastruktur<br />

- Server<br />

Name Dienst/ Einsatz Distribution <strong>Version</strong> Erst-Inst. Gesamt Alter in Jahren Invest/ Kosten Anmerkungen<br />

Summen<br />

4.2 Infrastruktur APC<br />

Seite 87<br />

< 1 1 - 3 > 3<br />

Abbildung 6: Beispiel Erhebungsbogen - Infrastruktur der Server<br />

Niveau. Beispielsweise werden neben Rechnern mit aktuellen Systemumgebungen auch<br />

Geräte mit einem Alter von bis zu 8 Jahren (und den entsprechend alten Systemumgebungen)<br />

eingesetzt. Da bestimmte Migrationsszenarien in diesem Bereich enorme Auswirkungen<br />

haben (z. B. muss für neue Softwareprodukte neue Hardware beschafft wer-<br />

80 Die in den folgenden Ausführungen gezeigten Beispiele zu den verschiedenen Erhebungsbereichen<br />

können aus dem Internet herunter geladen werden. siehe www.kbst.bund.de


den, da diese auf älteren Systemumgebungen nicht laufen), kommt den hier zu erhebenden<br />

Informationen große Bedeutung zu.<br />

Die vorhandenen Clients können nun in Gruppen zusammengefasst werden. In manchen<br />

Fällen wurde dies schon im Rahmen einer Inventarisierung und der Aufnahme der<br />

Informationen in eine Anlagenbuchhaltung durchgeführt. Ist dies nicht der Fall, so können<br />

sinnvolle Gruppen für die Clients gebildet werden, die sich vornehmlich an Majoritäten<br />

der zu erhebenden Informationen (siehe Abbildung 7) ausrichten können. Diese sind<br />

folgendermaßen strukturiert: Betriebssystem, Anzahl Arbeitsplatzcomputer (APC) im<br />

Netz, zentrale Installation, zentrale Administration, Leistungsfähigkeit (z. B.: Alter > 5 - 8<br />

Jahre, Prozessor < 100 MHz, Memory < 32MB; Alter > 3 - 5 Jahre, Prozessor 100-400<br />

MHz, Memory < 64MB; Alter > 2 - 3 Jahre, Prozessor 400 - 700 MHz, Memory 64 - 128<br />

MB; Alter bis zu 2 Jahre, Prozessor > 700 MHz, Memory > 128MB), Eingabehilfen.<br />

RZ - Infrastruktur<br />

- Arbeitsplatzrechner (APC [1])<br />

Leistungsfähigkeit [2] … davon …<br />

Erhebungsbereich [3] Betriebs- Anzahl Alter 8 Jahre 5 Jahre 3 Jahre 2 Jahre zentrale zentrale Eingabe- Anmerkungen<br />

System APCs Prozessor < 100 MHz 100 - 400 MHz 400 - 700 MHz, > 700 MHz Installation Administration Hilfen<br />

im Netz Memory < 32 MB < 64MB 64 - 128 MB > 128 MB<br />

Summen<br />

APC-Kat. 1<br />

APC-Kat. 2<br />

APC-Kat. 3<br />

APC-Kat. 4<br />

Einzelplatz-PC<br />

[1] APC = Arbeits-Platz-Computer<br />

[2] Die Kriterien der Leistungsfähigkeit bitte an die aktuelle Situation anpassen.<br />

[3] Die Erhebungsgruppen (hier beispielhaft mit "APC-Kat. 1 bis 4" bezeichnet) bitte an der eigenen Situation orientieren und anpassen.<br />

Abbildung 7: Beispiel Erhebungsbogen - Infrastruktur der Arbeitsplatz-Computer<br />

4.3 Infrastruktur Netzwerk<br />

Die vorhandene Netzwerkausstattung (siehe Abbildung 8) stellt die Basis für die Zusammenarbeit<br />

der APCs mit den Servern dar. Zur Definition von Migrationsszenarien<br />

stellt dieser Bereich eine nicht zu vernachlässigende Größe dar.<br />

� Netzausstattung<br />

o Ethernet<br />

o ATM<br />

o Token ring<br />

� Geschwindigkeit<br />

� Router<br />

� Switches<br />

Seite 88


RZ - Infrastruktur<br />

- Netzwerk<br />

Erhebungsbereich Anzahl Betriebs- eingesetztes Hersteller Anzahl Anzahl Schnittstellen Anmerkungen<br />

eingesetzte System Produkt Lizenzen Clients zu Office-<br />

Systeme Anwendungen<br />

Netzwerkinfrastruktur<br />

Netzausstattung<br />

- Ethernet<br />

- ATM<br />

- Tokenring<br />

Geschwindigkeit<br />

Router<br />

Switches<br />

Abbildung 8: Beispiel Erhebungsbogen - Infrastruktur des Netzwerks<br />

4.4 Infrastruktur Druck<br />

Drucker ergänzen die Informationen zu der bisher erhobenen Hardware. Manche Softwareprodukte<br />

sind nicht mit allen Druckertypen kompatibel. Daher ist zur Verifizierung<br />

möglicher Migrationsszenarien auch deren Erhebung notwendig. Folgende Daten (siehe<br />

Abbildung 9) sind zu ermitteln: Anzahl gesamt, Alter (< 1 Jahr, 1 – 3 Jahre, > 3 Jahre),<br />

Investitionen beziehungsweise Anschaffungs-/ Leasing- und Wartungskosten.<br />

RZ - Infrastruktur<br />

- Drucker<br />

Seite 89<br />

Alter in Jahren Kosten für<br />

Erhebungsbereich < 1 1 - 3 > 3 Gesamt Kauf Leasing Wartung Anmerkungen<br />

Gesamt Kosten<br />

Anzahl<br />

Netzwerkdrucker<br />

Faxgeräte<br />

Netzwerkarten<br />

Grafikkarten<br />

Beschleunigung<br />

Scanner<br />

Arbeitsplatzdrucker<br />

Aufstellung der Treiber für Arbeitsplatzdrucker<br />

4.5 Serverdienste<br />

Summen<br />

Abbildung 9: Beispiel Erhebungsbogen - Drucker-Infrastruktur<br />

In diesem Bereich werden die zentralen auf Servern im Rechenzentrum verfügbaren<br />

Dienste erhoben – z. B.:<br />

� Infrastrukturdienste<br />

o Dateiablage (File-Server)<br />

o Druckdienste (Print-Server)


o Netzwerkdienste<br />

� DNS<br />

� DHCP<br />

� WINS<br />

� RAS<br />

� VPN<br />

� BOOTP<br />

o Authentisierungsdienste<br />

� System und Managementdienste<br />

o Softwareverteilung<br />

o System- und Netzwerküberwachung<br />

o Datensicherungssysteme<br />

� Verzeichnisdienste<br />

o NDS<br />

o OpenLDAP<br />

� Messaging und Groupware<br />

� Terminalserver<br />

� Dokumentenmanagementsysteme<br />

Die Erhebung wird in folgende Bestandteile (siehe Abbildung 10) gegliedert: Anzahl eingesetzte<br />

Systeme, Betriebssystem, eingesetztes Produkt, Hersteller, Anzahl Lizenzen,<br />

Anzahl Clients, Schnittstellen zu Office-Anwendungen.<br />

Seite 90


RZ - Infrastruktur<br />

- Zentrale Serverdienste<br />

Erhebungsbereich [1] Anzahl Betriebs- eingesetztes Hersteller Anzahl Anzahl Schnittstellen Anmerkungen<br />

eingesetzte System Produkt Lizenzen Clients zu Office-<br />

Systeme Anwendungen<br />

Infrastrukturdienste<br />

Dateiablage (File-Server)<br />

Druckdienste (Print-Server)<br />

Netzwerkdienste<br />

- DNS<br />

- DHCP<br />

- WINS<br />

- RAS<br />

- VPN<br />

- BOOTP<br />

…<br />

Authentisierungsdienste<br />

System- und Managementdienste<br />

Softwareverteilung<br />

System- und Netzwerküberwachung<br />

Datensicherungssysteme<br />

Verzeichnisdienste<br />

NDS<br />

OpenLDAP<br />

Messaging & Groupware<br />

eGroupware<br />

Terminalserver<br />

Dokumentenmanagementsysteme<br />

[1] Die Erhebungsgruppen bitte an der eigenen Situation orientieren und anpassen.<br />

Abbildung 10: Beispiel Erhebungsbogen - Erhebungsbogen für Serverinfrastrukturdienste<br />

4.6 Standardsoftware<br />

Standardsoftware stellt häufig einen erheblichen Anteil an den Softwarelizenzen dar. Die<br />

eingesetzten beziehungsweise lizenzierten Produkte werden in folgender Strukturierung<br />

(siehe Abbildung 11) erhoben: Hersteller, Verwendungszweck, Lizenzen (Anzahl heute,<br />

künftig benötigt), Kosten heute und künftig (Lizenzen und Wartung).<br />

Standard-Software<br />

Lizenzen Kosten heute Kosten künftig<br />

Name <strong>Version</strong> Hersteller Verwend.Zweck Anz.heute künftig Lizenzen Insurance Lizenzen Insurance Anmerkungen<br />

Acrobat Reader<br />

Mozilla<br />

Open Office<br />

Outlook<br />

WinZip<br />

Access<br />

Excel<br />

Powerpoint<br />

Word<br />

Abbildung 11: Beispiel Erhebungsbogen - Standardsoftware<br />

4.7 Dokumentvorlagen und Makros<br />

Ein wesentlicher Faktor für die Migrationsaufwände stellen die umzustellenden Dokumentvorlagen<br />

(z. B. in der Textverarbeitung, der Tabellenkalkulation, etc.) und Makros<br />

dar. Hier baut die Praxis bei der Erhebung oftmals recht große Hürden auf – in vielen<br />

Fällen existieren keine Übersichten über diese Dokumente. Dies betrifft neben den ser-<br />

Seite 91


verbasierten Dateien vor allem die, die auf den Arbeitsplatzrechnern der Anwender liegen.<br />

In Abhängigkeit der Güte und Akzeptanz eventuell vorhandener Standard-Verfahren für<br />

Prozessunterstützung nutzen die Anwender diese oder haben sich auf ihren Rechnern<br />

eigene Makro-Anwendungen (je nach Programmierkenntnissen) erstellt.<br />

Soll die Migration für die gesamte Behörde zu einem Erfolg werden und vor allen Dingen<br />

von den Anwendern vor Ort akzeptiert werden, so ist es unerlässlich, diesen Bereich „in<br />

den Griff― zu bekommen. Das bedeutet, dass ernsthafte Versuche unternommen werden<br />

sollten, die Dokumentvorlagen und Makros zu erheben und in nachfolgend vorgeschlagene<br />

Klassifizierung (siehe Tabelle 13) einzuordnen.<br />

Dokumente Klassifizierung<br />

Dokumentvorlagen geringe Komplexität, Erstellung < 0,5 Tage<br />

mittlere Komplexität, Erstellung 0,5-2 Tage<br />

hohe Komplexität, Erstellung 2-4 Tage<br />

sehr hohe Komplexität, Erstellung > 4 Tage<br />

Makros geringe Komplexität, Erstellung < 0,5 Tage<br />

Office<br />

- Dokumentvorlagen und Makros<br />

mittlere Komplexität, Erstellung 0,5-2 Tage<br />

hohe Komplexität, Erstellung 2-4 Tage<br />

sehr hohe Komplexität, Erstellung > 4 Tage<br />

Tabelle 13: Klassifizierung von Dokumentvorlagen und Makros<br />

Erhebungsbereich Dokumentvorlagen Makroanwendungen<br />

Komplexität der Erstellung Komplexität der Erstellung<br />

gering mittel hoch sehr hoch gering mittel hoch sehr hoch<br />

Programm<br />

Verzeichnis Anzahl<br />

Su<br />

Tage<br />

< 0,5 0,5 - 2 2 - 4 > 4 < 0,5 0,5 - 2 2 - 4 > 4 Anmerkungen<br />

Word<br />

Excel<br />

PowerPoint<br />

Access<br />

. . Sonstige . .<br />

Unverzichtbare, produktive …<br />

Abbildung 12: Beispiel Erhebungsbogen - Office<br />

Seite 92


4.8 IT-Fachverfahren<br />

Für die Fachverfahren treffen die gleichen Einschätzungen zu, wie für die Dokumentvorlagen<br />

und Makros. Diese Verfahren sollen die tägliche Arbeit der Anwender unterstützen.<br />

Bietet die Migration die Chance, diese in manchen Punkten zu verbessern (wenn<br />

zum Beispiel neu oder umprogrammiert werden muss), so wird sich automatisch eine<br />

Akzeptanz der Anwender einstellen. Andernfalls muss nach der Migration mindestens<br />

der vorhandene Standard wieder hergestellt werden. Die Fachverfahren sollten in folgenden<br />

Informationsclustern aufgenommen werden:<br />

Architektur Nutzer Client-/ Serverbetriebssysteme<br />

Datenbanksysteme Applikationsserver Benutzerverwaltung<br />

Rechteverwaltung Schnittstellen Hosting<br />

Verfahrensentwicklung Ausprägung Ausblick<br />

Kosten Anmerkungen<br />

Tabelle 14: Informationscluster für die Erhebung der IT-Fachverfahren<br />

Für die Fachverfahren treffen die gleichen Einschätzungen wie für die Dokumentvorlagen<br />

und Makros zu. Diese Verfahren sollen die tägliche Arbeit der Anwender unterstützen.<br />

Bietet die Migration die Chance, diese in manchen Punkten zu verbessern (wenn<br />

z. B. neu oder umprogrammiert werden muss), so wird sich automatisch eine Akzeptanz<br />

der Anwender einstellen. Andernfalls muss nach der Migration mindestens der vorhandene<br />

Standard wieder hergestellt werden. Die Fachverfahren sollten in folgenden Informationsclustern<br />

aufgenommen werden:<br />

� Architektur und Nutzer<br />

� Client-/ Serverbetriebs-, Datenbanksysteme und Applikationsserver<br />

� Benutzer-/ Rechteverwaltung und Schnittstellen<br />

� Hosting, Verfahrensentwicklung und Ausprägung<br />

� Ausblick, Kosten und Anmerkungen<br />

4.8.1 Architektur und Nutzer<br />

Bei der Architektur sollte nach einschichtig und 2 bis n-schichtig unterschieden werden.<br />

Als Erhebungskriterien bei einer 2- und mehrschichtigen Architektur kommen in Frage:<br />

Client/Sever, Terminal, Host und Web.<br />

Die Erhebung der Nutzer je IT-Fachanwendung liefert Informationen zur Verbreitung der<br />

Anwendung. Die Anzahl der Nutzer bezogen auf deren Gesamtheit hilft, die Anwendungen<br />

zu priorisieren. An dieser Stelle sind auch wieder die Ziele und die Rahmenbedingungen<br />

zu berücksichtigen. Es kann durchaus sein, dass Anwendungen, die nur von<br />

sehr wenigen Mitarbeitern genutzt werden, trotzdem einen hohen strategischen Wert<br />

Seite 93


haben und somit automatisch zu priorisieren sind. Im Erhebungsbereich der Nutzer sollten<br />

Angaben erfragt werden, zum Einsatzbereich der Anwendung in der Behörde, zu der<br />

Gesamtzahl der Nutzer je Anwendung, zu Anzahl der Nutzer in den einzelnen Abteilungen<br />

und ob die Anwendung abteilungsübergreifend im Einsatz ist. (siehe Abbildung 13)<br />

IT-Fachverfahren1<br />

- Architektur und Nutzer<br />

Bezeichnung Architektur Nutzer<br />

Produkt- 1 2-/ n-schichtig Gesamt- Einsatz in Abteilungen Fachbereiche<br />

Name Schicht C/S Term. Host Web Anzahl Abteilung 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10<br />

Summen<br />

Abbildung 13: Beispiel Erhebungsbogen - IT-Fachverfahren – Architektur und Nutzer<br />

4.8.2 Client-/ Serverbetriebssysteme, Datenbanksysteme und<br />

Applikationsserver<br />

An dieser Stelle sollen die Betriebssysteme, Datenbanken und Applikationsserver erhoben<br />

und ermittelt werden sowie unter welchem Betriebssystem/Produkt/<strong>Version</strong> das jeweilige<br />

IT-Verfahren laufen kann beziehungsweise im Hause eingesetzt wird.<br />

Hierfür bietet sich die Gliederung in folgende zurzeit verbreitete Betriebssysteme (siehe<br />

Abbildung 14) an: Windows NT, Windows 2000/ 2003/ XP, Linux und Unix.<br />

IT-Fachverfahren21<br />

- Client-/Serverbetriebssysteme<br />

Bezeichnung Client-Betriebssystem(e) Server-Betriebssystem(e)<br />

Produkt- eingesetzt verfügbar eingesetzt verfügbar<br />

Name Windows Linux Unix Windows Linux Unix Windows Linux Unix Netware Windows Linux Unix Netware<br />

NT XP NT XP NT XP NT XP<br />

Summen<br />

Abbildung 14: Beispiel Erhebungsbogen - IT-Fachverfahren – Client-/Serverbetriebssysteme<br />

Seite 94


IT-Fachverfahren22<br />

- Datenbanksysteme, Applikationsserver<br />

Bezeichnung Datenbanksysteme Applikationsserver<br />

Produkt- eingesetzt verfügbar eingesetzt verfügbar<br />

Name Windows Linux Unix Windows Linux Unix Windows Linux Unix Windows Linux Unix<br />

NT XP NT XP NT XP NT XP<br />

Summen<br />

Abbildung 15: Beispiel Erhebungsbogen - IT-Fachverfahren – Datenbanksysteme und<br />

Applikationsserver<br />

4.8.3 Benutzer-/ Rechteverwaltung und Schnittstellen<br />

Für die Benutzer- und Rechteverwaltung (siehe Abbildung 16) soll ermittelt werden, ob<br />

sie innerhalb der Anwendung einen Verzeichnisdienst oder Sonstige besitzt.<br />

Schnittstellen können existieren zu: anderen IT-Verfahren, Standard-Software, Dokumentvorlagen<br />

und Makros. Bei Letzteren stellt sich die Frage nach der Komplexität der<br />

Applikation, siehe daher Tabelle 13.<br />

IT-Fachverfahren3<br />

- Client-/Serverbetriebssysteme, Datenbanksysteme, Applikationsserver<br />

Bezeichnung Verwaltung Schnittstellen<br />

Produkt- Benutzer Rechte zu anderen zu Stand. zu Dokumentvorlagen zu Makros<br />

Name innerhalb über sonstiges innerhalb über sonstiges IT-Verfahren, Software, Komplex- gering mittel hoch sehr gering mittel hoch sehr<br />

der Verzeichn.- der Verzeichn.- Name de Name de ität hoch hoch<br />

Anwendg. Dienst Anwendg. Dienst Verfahrens Verfahrens Erstellgs.- < 0,5 0,5 - 2 2-4 > 4 < 0,5 0,5 - 2 2-4 > 4<br />

Dauer [1]<br />

Summen<br />

[1] Erstellungsdauer in Tagen<br />

Abbildung 16: Beispiel Erhebungsbogen - IT-Fachverfahren – Benutzer-/Rechteverwaltung und<br />

Schnittstellen<br />

Seite 95


4.8.4 Hosting, Verfahrensentwicklung und Ausprägung<br />

Für nicht eigene IT-Verfahren ist es wichtig die Verfahrensverantwortung und die Verfahrensbetreiber<br />

(Hosting durch externe Firma, externe(r) Abteilung/ Bereich, eigene IT-<br />

Abteilung) zu kennen.<br />

Die Verfahrensentwicklung (siehe Abbildung 17) soll Aufschluss über den Kostenrahmen<br />

des Verfahrens geben. Hier stellen sich folgende Fragen: Handelt es sich um eine Eigen-<br />

oder Fremdentwicklung, wie hoch gestaltete sich der Aufwand der Entwicklung in<br />

internen und externen Personentagen und den entsprechenden Kosten, wie heißt das<br />

Produkt (Name und <strong>Version</strong>) und durch wen (Firma, Abteilung) kann Support geliefert<br />

werden?<br />

Für eine eventuelle Neuprogrammierung im Rahmen der Migration sind folgende Ausprägungsinformationen<br />

von Bedeutung: Komplexität, Anforderungen an die Verfügbarkeit<br />

und Betreuungsaufwand (jeweils in den Stufen hoch mittel gering).<br />

IT-Fachverfahren4<br />

- Verantwortung, Entwicklung, Hosting, Ausprägung<br />

Bezeichnung Verfahrens Hosting Verfahrens-Entwicklung Ausprägungen<br />

Produkt- Verantwortung Verfahrens- Art Aufwand Entwicklg.-Umgebng Komplexität Anforderung Betreuungs-<br />

Name Betreiber [1] Kosten Tage Tage Produkt Support Verfügbarkeit Aufwand<br />

A B C selbst<br />

intern extern<br />

<strong>Version</strong> durch: Hoch Mittel Gering Hoch Mittel Gering Hoch Mittel Gering<br />

Summen<br />

[1] e = eigen, f = fremd<br />

Abbildung 17: Beispiel Erhebungsbogen - IT-Fachverfahren – Hosting, Verfahrens-Entwicklung<br />

und Ausprägung<br />

4.8.5 Ausblick, Kosten und Anmerkungen<br />

Mit dem Ausblick (siehe Abbildung 18) sollen Informationen zur Zukunft des Verfahrens<br />

erhoben werden (bspw. Einstellung, Fortschreibung oder Ablösung durch ein anderes<br />

Produkt). Bei Verfahren, die zurzeit noch nicht unter Linux verfügbar sind, wird die geplante<br />

Linux-Verfügbarkeit abgefragt. Auch die Plattformunabhängigkeit und seit Neuestem<br />

auch die SAGA-Konformität stellen in diesem Zusammenhang wichtige Kriterien dar.<br />

Im Bereich der Kosten wird der jährliche Aufwand für folgende Kostenarten erhoben:<br />

interne und externe Betreuung, Lizenzen (aus internen Umlagen und/oder externen Lizenzen),<br />

Miete, Wartung, Schulung, Sonstiges.<br />

Seite 96


IT-Fachverfahren5<br />

- Ausblick, Kosten, Anmerkungen<br />

Bezeichnung Ausblick Kosten<br />

Produkt- Kurz- Fort- Ablö- Ein- Linux Platt- Gesamt Betreuung Lizenzen Anmerkungen<br />

Name Beschreibung schrei- sung stel- Ver- form- Kosten Intern Extern interne externe Miete Wartung Schulung Sonstiges<br />

bung lung füg- Unab- in Euro in Euro Umlagen Lizenzen<br />

bar- hängig- /Jahr /Jahr<br />

keit keit<br />

Summen<br />

Abbildung 18: Beispiel Erhebungsbogen - IT-Fachverfahren – Ausblick, Kosten und Anmerkungen<br />

5 Wirtschaftlichkeit nach WiBe<br />

5.1 Vorbemerkung<br />

5.1.1 Aufbau und Vorgehensweise der WiBe für Migrationen<br />

5.1.1.1 Aufbau der WiBe für Migrationen<br />

Die im Rahmen dieses Dokumentes dargestellte Wirtschaftlichkeitsbetrachtung basiert<br />

auf der von der KBSt herausgegebenen Methodik zur Ermittlung der Wirtschaftlichkeit<br />

von Migrationsmaßnahmen.<br />

Grundlage der vorliegenden WiBe für Migrationsmaßnahmen waren die Bewertungsmethoden<br />

und -kriterien der WiBe 4.0 81 sowie des IT-Updates 82 der KBSt, die inhaltlich und<br />

methodisch an die spezifischen Gegebenheiten und Besonderheiten von Migrationsmaßnahmen<br />

angepasst beziehungsweise weiterentwickelt wurden 83 .<br />

Die grundlegende Struktur der WiBe wurde dabei beibehalten. Neben der Bewertung der<br />

monetären Wirtschaftlichkeit erfolgt die Ermittlung der erweiterten Wirtschaftlichkeit. Die<br />

monetäre Wirtschaftlichkeit setzt sich zusammen aus der Bewertung der<br />

� Entwicklungskosten/ Einführungskosten und –nutzen<br />

� Betriebskosten und Betriebsnutzen.<br />

Bei den Kriterien der erweiterten Wirtschaftlichkeit wurde (gegenüber der Systematik der<br />

WiBe 4.0) auf die Kriteriengruppe „Ermittlung der externen Effekte― verzichtet, da diese<br />

bei Migrationsmaßnahmen keine beziehungsweise nur eine unwesentliche Rolle spielt.<br />

Daher beinhaltet die erweiterte Wirtschaftlichkeit eine qualitative Bewertung der<br />

81 Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen in der Bundesverwaltung,<br />

insbesondere beim Einsatz der IT, WiBe 4.0, August 2004.<br />

82 Hinweisen und Empfehlungen zur Durchführung von Wirtschaftlichkeitsbetrachtungen bei<br />

IT-Update- beziehungsweise Umstellungsvorhaben auf Grundlage der IT-WiBe-97, November<br />

2000.<br />

83 Eine Übersicht der modifizierten Kriterien zeigen die Abbildungen 25 bis 30 im Anhang.<br />

Seite 97


� Dringlichkeit der Migrationsmaßnahmen sowie<br />

� qualitativ-strategischen Kriterien.<br />

5.1.1.2 Fragenkataloge nach dem Ist- und Soll-Zustand im Vorfeld der WiBe<br />

Neu zur bisher bekannten WiBe-Systematik wurden der WiBe für Migrationen zwei Fragenkataloge<br />

vorangestellt, die im Vorfeld der eigentlichen WiBe-Durchführung zur Klärung<br />

spezifischer Migrationsfragestellungen beitragen sollen.<br />

Zum einen wurde ein Katalog an Fragestellungen zur qualitativen Beurteilung des Ist-<br />

Zustandes konzipiert, mit dessen Hilfe der konkrete Handlungsbedarf für ein<br />

Migrationsvorhaben beziehungsweise -projekt festgestellt werden kann. Zum anderen<br />

wurde ein Fragenkatalog erstellt, in dessen Mittelpunkt die qualitative Beurteilung des<br />

Soll-Zustandes steht. Mit dem zweiten Fragenkatalog können mögliche Migrationsalternativen<br />

dahin gehend überprüft werden, ob diese grundsätzlich weiter verfolgt werden<br />

sollen. Beide Fragenkataloge stellen im Vorfeld der eigentlichen WiBe-Durchführung<br />

eine Orientierungs- und Beurteilungshilfe für Migrationsalternativen und -szenarien dar.<br />

5.1.1.3 Vorgehensweise im Rahmen der monetären und nicht monetären WiBe<br />

Ergibt sich aus der qualitativen Beantwortung des Fragenkataloges nach dem Ist-<br />

Zustand ein konkreter Handlungsbedarf bezüglich der Durchführung eines Migrationsprojektes,<br />

ist die Wirtschaftlichkeit des Projektes innerhalb der Planungsphase durch die<br />

nachfolgenden monetären und nichtmonetären Wirtschaftlichkeitskriterien zu beurteilen.<br />

Hierbei ist zu beachten:<br />

� Der Betrachtungszeitraum der WiBe soll sich auf die Umsetzungszeit des Projektes<br />

und einen entsprechend nachgelagerten Zeitraum der Nutzung beziehen.<br />

Damit kann der Betrachtungszeitraum von der in den bisherigen <strong>Version</strong>en der<br />

WiBe enthaltenen Vorgabe von 5 Jahren abweichen, da für strategische Migrationsmaßnahmen<br />

längere Zeiträume als 5 Jahre begründbar sind / sein können.<br />

Die in den bisherigen Fachkonzepten enthaltene Aussage zur Nutzungsdauer<br />

(Betriebsnutzen) von 5 Jahren ist keine absolute Vorgabe, sondern eine Richtgröße.<br />

Abweichungen sind mit Begründung zulässig 84 .<br />

� Absehbare Änderungen in der Technik oder in den Prozessen und hiermit verbundene<br />

Nutzenpotenziale sind in gesonderten Alternativen zu bewerten. D. h.<br />

ergeben sich für eine Migration mehrere technische Lösungen, so soll deren wirtschaftliche<br />

Betrachtung in separaten Alternativen erfolgen. Da unterschiedliche<br />

technische Lösungen auch differente Auswirkungen auf die Prozesse haben<br />

können, werden sich in der Regel in den jeweiligen Alternativen unterschiedliche<br />

Nutzenpotenziale ergeben.<br />

84 Bei großen IT-Maßnahmen mit mehrjähriger Entwicklungszeit kann es zweckmäßig sein,<br />

den 5-Jahres-Zeitraum um diese Entwicklungsdauer zu erhöhen. Bei Infrastrukturprojekten<br />

(beispielsweise der Verkabelung von Gebäuden) kann es sinnvoll sein, auch über diesen<br />

Zeitraum hinauszugehen. Bei IT-Maßnahmen dagegen, deren Einsatzdauer bereits jetzt<br />

absehbar und begründet unter 5 Jahren liegen wird, ist ein kürzerer Zeithorizont für die IT-<br />

WiBe zwingend erforderlich.<br />

Seite 98


� Technische Änderungen beziehungsweise neue Features sind u. U. als „nice to<br />

have― – Funktionalitäten zu beurteilen. Im Rahmen der Migration ist deshalb die<br />

Frage zu stellen, welche Funktionalitäten wirklich für die jeweilige Aufgabenerledigung<br />

benötigt werden.<br />

� Prozessoptimierungen werden nicht Gegenstand einer Wirtschaftlichkeitsbetrachtung<br />

für Migrationsmaßnahmen. Verbindet der Anwender mit der Migration eine<br />

komplette Prozessbetrachtung, beziehungsweise wird diese notwendig, ist diese<br />

in einer gesonderten Maßnahme durchzuführen.<br />

� Demzufolge ist eine Abstimmung über jene Nutzenpotenziale erforderlich, die in<br />

die WiBe einbezogen werden sollen. Nutzenpotenziale können von den Komponenten<br />

(Personal, Dienstleistungen, Hardware, Software, etc.) abgeleitet werden.<br />

Prozessoptimierungen werden im Rahmen von Migrationsmaßnahmen grundsätzlich<br />

nicht betrachtet. Dies können zusätzliche Effekte aus anderen Maßnahmen<br />

sein.<br />

Im Rahmen der monetären Bewertung kommen Haushaltsinformationen zum Tragen,<br />

d. h. Aufwendungen und Erträge beziehungsweise Ersparnisse, die zu einem Projektnutzen<br />

saldiert werden. Auf dessen Basis wird letztlich ein Kapitalwert errechnet. Ist der<br />

Kapitalwert positiv (d. h. die Ersparnisse (oder Erträge) sind größer als die Aufwendungen),<br />

ergibt sich daraus eine Empfehlung für die Durchführung der Migrationsmaßnahme<br />

85 . Zur Risikoabsicherung der künftigen Planwerte beinhaltet die WiBe für Migrationsmaßnahmen<br />

die Möglichkeit Risikofaktoren für die einzelnen Kriterien zu benennen,<br />

die den Kapitalwert letztendlich reduzieren.<br />

Bei einer Kostenbetrachtung im Hinblick auf die Einführung neuer Technologien muss<br />

grundsätzlich zwischen der Neueinführung und der Migration von Verfahren und Systemen<br />

unterschieden werden. Dabei gilt als „Daumenregel―, dass eine Neueinführung<br />

grundsätzlich einfacher und preiswerter zu bewerkstelligen ist, als eine Migration, bei der<br />

verschiedene, zum Teil historisch gewachsene Architekturen abgelöst und Daten migriert<br />

werden müssen, ohne dass es zu einer wesentlichen Betriebsstörung oder zum<br />

Datenverlust der Altanwendung kommt.<br />

Da ein Migrationsverfahren grundsätzlich von seiner Ausgangssituation abhängt, erweist<br />

sich eine allgemeingültige und allumfassende Aussage zu dessen Kosten als kaum möglich.<br />

Während eine Migration in einigen Fällen als problemlos und nahezu ohne Aufwand<br />

möglich ist, führt die Existenz von selbst entwickelten Anwendungen, die ebenfalls abgelöst<br />

werden müssen, Überführung von Altdaten, spezielle Nutzer- und Zugriffsrechtestrukturen<br />

oder andere Besonderheiten zu einem erheblichen Projektaufwand, der behördenspezifisch<br />

– auch unter Berücksichtigung der Kritikalität - beurteilt werden muss.<br />

Lässt sich im monetären Bereich keine Wirtschaftlichkeit darstellen (Aufwendungen sind<br />

größer als die Ersparnisse), so verfügt die WiBe für Migrationen über die zwei ergänzenden<br />

Bereiche der erweiterten Wirtschaftlichkeit (Dringlichkeitskriterien, qualitativstrategische<br />

Kriterien). Die entsprechenden Kriterien werden in Form von Nutzwertanalysen<br />

bearbeitet, die für jeden der zwei Bereiche einen Punktwert zwischen 0 und 100<br />

85 siehe WiBe 4.0, Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen in der<br />

Bundesverwaltung, insbesondere beim Einsatz der IT, <strong>Version</strong> 4.0 – 2004, S. 71 ff..<br />

Seite 99


als Ergebnis liefern. Im Fall eines negativen Kapitalwertes des Migrationsvorhabens<br />

kann mit einem hohen Punktwert die Durchführung der IT-Maßnahme befürwortet werden<br />

86 .<br />

5.1.2 Fragenkatalog Ist-Zustand<br />

Anhand der nachfolgenden beispielhaften Fragen (aa bis ag) sollte geprüft werden, ob<br />

ein konkreter Handlungsbedarf für ein Migrationsprojekt besteht.<br />

Die Antworten zu den einzelnen Fragen sind grundsätzlich (im Vorfeld der eigentlichen<br />

WiBe) in schriftlicher Form zu erläutern und geeignet zu dokumentieren.<br />

Mögliche Ergebnisse der Fragenbearbeitung zur Ist-Situation sind:<br />

� Die Migration kann realisiert werden. Erfordernis: Eine WiBe ist zu erstellen, um<br />

eine detaillierte Entscheidung zu treffen.<br />

� Eine Migration ist nicht notwendig und somit wird auch keine WiBe benötigt.<br />

Die Fragen im Einzelnen:<br />

aa) Unterstützungs-Kontinuität Altsystem<br />

� Gibt es noch Unterstützung für das Altsystem?<br />

(Hersteller, alternative Anbieter, Hardware, eigenes Personal)<br />

ab) Stabilität Altsystem - Fehler und Ausfälle („downtime“)<br />

� Häufen sich die Fehler und Ausfälle?<br />

� Führen diese zu merkbaren Beeinträchtigungen der Arbeitserledigung?<br />

� Wird die Arbeitserledigung gegebenenfalls soweit beeinflusst, dass Arbeitsergebnisse<br />

und Fristen nicht oder nur erschwert eingehalten werden können?<br />

� Liegen Fehler und Ausfälle gegebenenfalls über den in den Service Level Agreements<br />

vereinbarten Toleranzwerten?<br />

(Bitte beachten Sie bei Ihrer Erläuterung insbesondere die Häufigkeiten und Ursachen).<br />

ac) Stabilität Altsystem - Wartungsprobleme, Personalengpässe<br />

� Führt der Betrieb des Altsystems gegenwärtig beziehungsweise kurz- bis mittelfristig<br />

absehbar zu erhöhten Wartungsleistungen beziehungsweise sind gravierende<br />

Wartungsprobleme zu erwarten?<br />

� Sind damit Personalengpässe verbunden (z. B. hinsichtlich Qualifikation des Personals,<br />

rechtliche Gegebenheiten)?<br />

ad) Flexibilität Altsystem - Ausbau-/Erweiterungsgrenzen<br />

� Sind notwendige Ausbau- und/oder Erweiterungen nicht möglich?<br />

86 siehe WiBe 4.0, Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen in der<br />

Bundesverwaltung, insbesondere beim Einsatz der IT, <strong>Version</strong> 4.0 – 2004, „Berechnung<br />

der erweiterten Wirtschaftlichkeit", S. 80 ff..<br />

Seite 100


ae) Flexibilität Altsystem - Interoperabilität, Schnittstellenprobleme aktuell/zukünftig<br />

� Sind notwendige Schnittstellen nicht verfügbar?<br />

af) Flexibilität Altsystem - Bedienbarkeit und Ergonomie (Benutzerfreundlichkeit)<br />

� Gibt es erhebliche Mängel in der Bedienbarkeit und Ergonomie, die den Nutzer<br />

wesentlich behindern?<br />

ag) Erfüllung Datenschutz/ -sicherheit<br />

� Gibt es Sicherheitsmängel, die zu einer Beeinträchtigung im Betrieb führen?<br />

5.1.3 Anforderungen Soll-Zustand<br />

Anhand der nachfolgenden beispielhaften Fragen (ba bis bj) sollten mögliche Migrationsalternativen<br />

geprüft werden, um zu beurteilen, ob die entsprechenden Alternativen<br />

weiter verfolgt werden sollen.<br />

Die Antworten zu den einzelnen Fragen sind grundsätzlich (im Vorfeld der eigentlichen<br />

WiBe) in schriftlicher Form zu erläutern und geeignet zu dokumentieren.<br />

Mögliche Ergebnisse der Fragenbearbeitung zur Sollsituation sind:<br />

� Es gibt unterschiedliche realistische Migrationsalternativen, die auf die spezifische<br />

Situation passen.<br />

Erfordernis: Für jede Alternative ist eine WiBe ist zu erstellen und in einer Vergleichsrechnung<br />

eine Priorisierung vorzunehmen.<br />

� Es gibt nur eine realistische Migrationsalternative, die auf die spezifische Situation<br />

passt.<br />

Erfordernis: Hierfür ist eine zusätzliche Beschreibung erforderlich, die die Frage<br />

beantwortet, warum es keine andere Alternative gibt. Für diese eine Alternative<br />

ist eine WiBe zu erstellen.<br />

Die Fragen für das Soll-System im Einzelnen:<br />

ba) Verbreitung/ Verfügbarkeit der Ausbildung<br />

� Hat das eigene Personal ausreichend Kenntnisse?<br />

� Ist ausgebildetes Personal am Markt verfügbar?<br />

� Sind qualifizierte Ausbildungsgänge und Fortbildungen am Markt verfügbar?<br />

Erläuterung: Sind Qualifizierungs- oder Rekrutierungsmaßnahmen notwendig, ergeben<br />

sich hieraus Kosten, die im monetären Teil der WiBe KN zu berücksichtigen sind.<br />

bb) Marktdurchdringung<br />

� Wie ist die Marktdurchdringung der Software?<br />

� Und welche Schlussfolgerungen können daraus gezogen werden?<br />

Erläuterung: Hier wird der Marktanteil betrachtet, den die einzusetzende Software am<br />

Markt hat. Bei schwindender oder nicht mehr wahrzunehmender Marktdurchdringung<br />

besteht die Gefahr, dass die Software beziehungsweise deren Weiterentwicklung ein-<br />

Seite 101


gestellt wird. Darüber hinaus zeugt eine gute Marktdurchdringung von hoher Akzeptanz<br />

beziehungsweise intensiver Nutzung der Software bei den Anwendern, woraus sich der<br />

Umkehrschluss auf den weiteren Bestand der Software ableiten lässt.<br />

Bei einer ausreichenden Marktdurchdringung der/des Produkte/Produkts ist im Allgemeinen<br />

eine ausreichende Investitionssicherheit anzunehmen.<br />

bc) Software-Zertifizierung<br />

� Wird eine Zertifizierung benötigt?<br />

� Wenn ja, ist eine Zertifizierung der Software vorhanden?<br />

Erläuterung: Mit dieser Frage soll überprüft werden, ob die einzusetzende Software gesetzlichen<br />

beziehungsweise behörden-/ branchenspezifischen Anforderungen genügt,<br />

oder aber diese selbst organisiert werden müssen. In ersterem Fall sorgt der Hersteller/<br />

Lieferant der Software für die Zertifizierung, sodass keine eigenen Kosten anfallen. In<br />

letzterem Fall muss selbst für die laufende Zertifizierung gesorgt werden, um übliche<br />

Abdeckung der Geschäftsprozesse zu gewährleisten. In diesem Fall entstehen eigene<br />

Kosten, die nicht pauschal kalkulierbar sind.<br />

bd) Systemmanagement-Tools<br />

� Sind Systemmanagement-Tools (bspw. Admin-Tools) für die Software verfügbar?<br />

Werden diese benötigt?<br />

Erläuterung: Die Administration der einzusetzenden Softwareprodukte erweist sich in<br />

manchen Fällen unkomfortabel bis schwierig. Hier stehen Tools im Mittelpunkt, die die<br />

Verwaltung der Tabellen und Stammdaten übernehmen oder diese unterstützen.<br />

Mit entsprechenden Tools für das Systemmanagement können Volumen und Qualität<br />

gesteigert und der Ressourceneinsatz optimiert werden. Andernfalls müssen Sie die<br />

erhöhten Kosten für Fachpersonal in der WiBe KN berücksichtigen.<br />

be) IT-Sicherheit<br />

� Welches Sicherheitsniveau gemäß den IT-Grundschutz-Katalogen 87 wird benötigt?<br />

Erläuterung: Es ist zu prüfen, ob die betreffende Migrationsalternative die entsprechenden<br />

Sicherheitsanforderungen erfüllt, z. B. in Bezug auf die Kommunikationssicherheit,<br />

Applikationssicherheit und Ausfallsicherheit.<br />

bf) Software Ergonomie<br />

� Existieren im Rahmen der Software-Ergonomie z. B. grafische Bedienoberflächen,<br />

verständliche Fehlerdialoge, deutschsprachige Menüführung?<br />

Erläuterung: Bei der Beantwortung dieser Fragestellung ist der konkrete Nutzerkreis zu<br />

beachten.<br />

87 Siehe IT-Grundschutz-Kataloge des Bundesamtes für Sicherheit und Informationstechnik<br />

(BSI), http://www.bsi.de/gshb/deutsch/index.htm, Stand 2006 (8. Ergänzungslieferung).<br />

Seite 102


g) Skalierbarkeit<br />

� Gibt es Anforderungen an die Skalierbarkeit der Software, z. B. hinsichtlich der<br />

Anzahl der Nutzer?<br />

bh) Flexibilität<br />

� Ausbau auf notwendige beziehungsweise zu erwartende fachliche und technische<br />

Anforderungen, z. B. Mobile-Computing?<br />

bi) Schnittstellen<br />

� Sind notwendige oder zu erwartende Schnittstellen verfügbar?<br />

bj) Dokumentation<br />

� Sind in ausreichender Form Dokumentationen und Handbücher verfügbar?<br />

5.2 Monetäre Wirtschaftlichkeit<br />

5.2.1 Systematik<br />

In der Bundesverwaltung richten sich Wirtschaftlichkeitsbetrachtungen nach den Vorschriften<br />

des § 7 BHO und nach den hierzu erlassenen Verwaltungsvorschriften, die vor<br />

allem betriebswirtschaftliche Verfahren berücksichtigen (siehe auch Kapitel I.C 3,<br />

„Methodische Grundsätze―). Um diese Vorschriften auf die speziellen Erfordernisse der<br />

Informationstechnik anzupassen, hat die Koordinierungs- und Beratungsstelle der Bundesregierung<br />

für Informationstechnik in der Bundesverwaltung (KBSt) bereits in 1992<br />

eine Handlungsanweisung mit dem Titel „Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen<br />

beim Einsatz der IT in der Bundesverwaltung (IT-WiBe)― erarbeitet.<br />

2004 ist sie in einer völlig überarbeiteten Fassung erschienen. Im Wesentlichen beinhaltet<br />

die WiBe drei Schritte:<br />

� Einflussgrößen festlegen (Kriterien selektieren)<br />

� Daten erheben/ bewerten<br />

� Kennzahlen ermitteln<br />

Seite 103


Schritt 1<br />

Einfluss-<br />

größen<br />

festlegen<br />

�� �� Abgestimmte<br />

Abgestimmte<br />

Kriterien<br />

Kriterien<br />

Daten<br />

erheben<br />

Schritt 2<br />

Risiken<br />

schätzen<br />

Kriterien bewerten<br />

Kriterien bewerten<br />

�� �� Konsistentes<br />

Konsistentes<br />

Datengerüst<br />

Datengerüst<br />

Seite 104<br />

Wirtschaftlichkeit<br />

berechnen1) Wirtschaftlichkeit<br />

berechnen<br />

KN<br />

Kosten/ Nutzen<br />

1)<br />

KN<br />

Kosten/ Nutzen<br />

Schritt 3<br />

Wirtschaftlichkeit<br />

berechnen1) Wirtschaftlichkeit<br />

berechnen<br />

KN/R<br />

Kosten/ Nutzen/<br />

Risko<br />

1)<br />

KN/R<br />

Kosten/ Nutzen/<br />

Risko<br />

Dringlichkeit ermitteln2) Dringlichkeit ermitteln D 2) D<br />

Qualitativ/ strategische .<br />

Bedeutung ermitteln2) Qualitativ/ strategische .<br />

Bedeutung ermitteln Q 2) Q<br />

Abbildung 19: Methodik WiBe Migrationen<br />

5.2.1.1 Spezifischer Kriterienkatalog für Migrationen<br />

�� �� Kennzahlen<br />

Kennzahlen<br />

monetär monetär<br />

nicht-monetär<br />

nicht-monetär<br />

1) Kapitalwertmethode, 2) Nutzwertanalyse<br />

Der spezifische Kriterienkatalog für Migrationen stellt das Grundschema für die WiBe für<br />

Migrationen dar. Er enthält alle Kriterien, die bei einer WiBe dieser Kategorie zu berücksichtigen<br />

sind. Mithilfe des Kriterienkataloges erfassen Sie die Wirkungen Ihrer Maßnahme.<br />

Die Maßnahme wird monetär quantifizierbare Kosten und Nutzen haben (1. Wirkungsdimension;<br />

Wirtschaftlichkeit im monetären Sinn), es kann in unterschiedlichem Maß<br />

Dringlichkeit (2. Wirkungsdimension) und qualitativ-strategische Bedeutung (3. Wirkungsdimension)<br />

aufweisen.<br />

5.2.1.2 Wirtschaftlichkeit im monetären und im weiteren Sinn<br />

Monetär quantifizierbare Kosten und Nutzen (WiBe KN) bilden die Wirtschaftlichkeit im<br />

monetären Sinne.<br />

Die Dringlichkeit (WiBe D) und die qualitativ-strategische Bedeutung (WiBe Q) der Maßnahme<br />

fließen in die erweiterte Wirtschaftlichkeit ein.<br />

Bei der Zusammenstellung der Kosten und Nutzen in der WiBe KN wird die Kapitalwertmethode<br />

zugrunde gelegt, um den zeitlichen Verlauf von Kosten und Nutzen angemessen<br />

zu berücksichtigen.<br />

Die Berechnung von Dringlichkeit und qualitativ-strategischer Bedeutung in der WiBe D<br />

und Q bedienen sich der Nutzwertanalyse, einem Standardverfahren zur Bewertung<br />

qualitativer Faktoren.<br />

Mit diesem kurzen Überblick sind die Bausteine der WiBe aufgelistet. Das Verfahren<br />

selbst ist im Weiteren detailliert in seinen einzelnen Stufen dargelegt und mit Hinweisen<br />

zur Anwendung und Umsetzung versehen.


Einen Gesamtüberblick der monetären Kriterien sowie die Zuordnung der Kosten/ Nutzen<br />

zu den Bereichen „haushaltswirksam― und „nicht haushaltswirksam― liefern die Tabellen<br />

im Anhang.<br />

5.2.2 Kriterien der monetären Wirtschaftlichkeit<br />

Kriteriengruppe 1<br />

Entwicklungskosten/Einführungskosten und –nutzen<br />

In der Gruppe 1 des Kriterienkataloges sind die Entwicklungskosten und Entwicklungsnutzen<br />

aufgeführt, die vor der Einführung einer IT-Maßnahme anfallen werden; den eigentlichen<br />

Entwicklungskosten (Kriteriengruppe 1.1) stehen unter Umständen monetäre<br />

Nutzen aus der Ablösung des alten, bisherigen Verfahrens gegenüber (Kriteriengruppe<br />

1.2).<br />

� Es ist unbedingt darauf zu achten, alle monetären Angaben aufzuteilen in den haushaltswirksamen<br />

und in den nicht haushaltswirksamen Anteil.<br />

Für alle monetären Einzelkriterien gilt generell:<br />

� Soweit Wirkungen bei einem Kriterium nicht hinreichend exakt bezifferbar sind,<br />

wirkt sich dieses Kriterium sowohl in der WiBe KN als auch in der ergänzenden<br />

Kennzahl WiBe KN/R aus.<br />

Bei der Datenermittlung ist ein "plausibel begründeter" Ansatz vorzulegen, der als<br />

„wahrscheinlicher Schätzwert― in die monetäre Wirtschaftlichkeitsbetrachtung<br />

(WiBe KN) übernommen wird. Die im ungünstigen Fall möglichen Überschreitungen<br />

dieses Schätzwertes sind als Risikozuschlag für die Risikoabwägung (WiBe<br />

KN/R) einzugeben.<br />

� Soweit Wirkungen bei einem monetären Nutzenkriterium (Einsparung) nur qualitativ<br />

beschreibbar erscheinen, ist für dieses Kriterium kein monetärer Wert anzusetzen.<br />

Die qualitative Wirkung ist stattdessen in die Bewertung des entsprechenden<br />

qualitativ-strategischen Kriteriums in der WiBe Q (im Regelfall in den Untergruppen<br />

4.2, 4.3 oder 4.4) einzubringen.<br />

Kriteriengruppe 1.1<br />

Zur Ermittlung der Entwicklungskosten<br />

Entwicklungskosten fallen vor dem Einsatz (beziehungsweise der Fertigstellung) der<br />

neuen IT-Maßnahme an und enden, sobald die IT-Maßnahme offiziell den anwendenden<br />

Organisationseinheiten zur Nutzung übergeben wird. Alle danach auftretenden Kosten<br />

sind als Betriebskosten unter der Gruppe 2 des Kriterienkataloges erfasst. Migrationsprojekte<br />

beinhalten bei der Umstellung einer gesamten Landschaft auch die Fachanwendungen,<br />

für die Neuentwicklungen oder Umprogrammierungen erforderlich werden.<br />

Diese Aktivitäten sind unter den „Entwicklungskosten― darzustellen. Bei der Migration<br />

von Migrationsobjekten fallen in der Regel keine Entwicklungskosten an, aber Kosten für<br />

die Einführung. Um diesen Umstand hervorzuheben, wird das Kriterium „Entwicklungskosten―<br />

um den Begriff „Einführung― erweitert.<br />

Seite 105


Kriteriengruppe 1.1.1<br />

Planungs- und Entwicklungskosten<br />

Unter diese Position fallen alle haushaltswirksamen und auch nicht unmittelbar haushaltswirksamen<br />

Kosten, die mit der Vorbereitung, der Planung und der Entwicklung für<br />

die IT-Maßnahme verbunden sind. Beispiele dafür sind i.e.S. die Personalkosten für das<br />

eigene Projektteam sowie die Kosten für externe Beratung. Beispiele i.w.S. dafür sind<br />

spezielle Schulungen für die Bearbeiter der IT-Maßnahme und gegebenenfalls die technische<br />

Ausstattung, Reisekosten.<br />

Nicht zu den Planungs- und Entwicklungskosten zählen die Kosten der Betreuung und<br />

Pflege des Systems nach dessen Einführung: diese sind unter den Betriebskosten (den<br />

Kriterien der Gruppe 2) zu erfassen.<br />

Grundsätzlich sind die Kosten(-arten) im Sinne einer Vollkostenbetrachtung in die WiBe<br />

einzustellen: es sind alle Kosten(-arten) zu berücksichtigen und zu berechnen, auch<br />

wenn dafür keine gesonderte Mittelbeantragung im Haushalt erforderlich sein wird.<br />

Kriterium 1.1.1.1 Personalkosten (eigenes Personal)<br />

Darstellung von Kosten nicht haushaltswirksam<br />

Aufwände, die im Rahmen der Projektphasen für das eigene Personal entstehen.<br />

Die Kosten für das amtseigene Personal (der Zeitaufwand für die Bearbeiter der IT-<br />

Maßnahme) sind mittelbar zu quantifizieren. Voraussetzung dafür ist eine Projektplanung,<br />

aus der sich die „Personentage― -Ansätze der Bearbeiter ergeben. Die Zeitangaben<br />

können Sie mithilfe der Personalkostensätze 88 (hrsg. vom Bundesministerium der<br />

Finanzen) in die Personalkosten der IT-Maßnahme umrechnen. Im Wesentlichen werden<br />

die Entwicklung des organisatorisch-technischen Gestaltungskonzepts und die Anforderungsdefinition<br />

für die Systemauswahl die erforderlichen Personalkosten bestimmen.<br />

Hier sind gegebenenfalls auch die Besichtigung von Referenzinstallationen und Teststellungen<br />

einzubringen. Berücksichtigen Sie bei der Planung erforderlicher Personentage<br />

angemessen, dass die sog. Interoperabilität gewahrt bleiben muss, auch über Ihre eigene<br />

Behörde hinaus - den Zeitaufwand dafür sollten Sie sorgfältig prüfen. Eine Vernachlässigung<br />

der internen („kalkulatorischen―) Personalkosten verfälscht die Wirtschaftlichkeitsbetrachtung:<br />

die Einbeziehung dieser Kosten ist grundsätzlich zwingend erforderlich.<br />

Ein Projektplan in der Struktur der Migrationsphasen sowie deren Einzelaktivitäten erleichtert<br />

die Aufwandskalkulation (siehe Tabelle 9 u. Abbildung 4 u. Abbildung 5). Die<br />

Aufwände sollten der einfachen Zuordnung halber getrennt nach Vergütungsgruppen<br />

geplant werden. Dies erscheint im ersten Moment als zu detailliert, in der Praxis hat sich<br />

jedoch schon oft gezeigt, dass eine detaillierte Planung zum einen die spätere Nachvollziehbarkeit<br />

erleichtert sowie zum anderen die in der Umsetzungsphase beginnende<br />

Fortschrittsverfolgung wesentlich vereinfacht. Ist dies nicht möglich oder nicht gewünscht,<br />

so sollte aus den anteilig involvierten Vergütungsgruppen ein Durchschnitts-<br />

88 Zu Personalkostensätzen gibt es Downloads auf der Web-Seite des BMF unter:<br />

www.bundesfinanzministerium.de – Stichwort: Personalkostensätze<br />

Seite 106


wert gebildet werden, mit dem dann einheitlich die Personalanteile bewertet werden. Die<br />

entsprechend angewandte Methode sollte in den Annahmen und Prämissen beschrieben<br />

werden (siehe Kapitel 3.1.2).<br />

Alternativ bietet sich auch an, diese Aufwände anhand des benötigten Projektteams zusammenzustellen.<br />

Dabei sollte dann die zeitanteilige Mitarbeit in dem Projektteam des<br />

betroffenen Personals abgeschätzt werden.<br />

Der Aufwand lässt sich in beiden Vorgehensweisen anhand der Vergütungsgruppe aus<br />

dem Rundschreiben des BMF ermitteln.<br />

Der ermittelte Betrag ist regelmäßig in voller Höhe unter der Rubrik „nicht haushaltswirksam―<br />

zu erfassen.<br />

Kriterium 1.1.1.2 Kosten externer Beratung<br />

Darstellung von Kosten haushaltswirksam<br />

Die Kosten externer Beratung sind mehr oder minder unmittelbar aus dem Vertragswerk<br />

zu entnehmen.<br />

Beachten Sie, dass sich dieses Kriterium unter Umständen mit dem Kriterium 1.1.2.2<br />

überschneiden kann. Wenn die externe Beratung sich sowohl auf fachkonzeptionelle als<br />

auch auf softwarebezogene Aspekte bezieht und eine anteilige Trennung nicht möglich<br />

oder nicht sinnvoll ist, dann sind die Kosten unter diesem Kriterium 1.1.1.2 auszuweisen.<br />

Es gilt das Bruttoprinzip: zu den Kosten externer Beratung zählen auch die Nebenkosten<br />

(z. B. Reisekosten-Vergütungen, gesetzliche Umsatzsteuer u. ä.).<br />

Hier werden die externen Personalaufwände dargestellt. Auch hier dient als Basis der<br />

Projektplan. Es empfiehlt sich, die Aufwände der einfachen Zuordnung halber getrennt<br />

nach Lieferanten zu planen.<br />

Der ermittelte Betrag ist regelmäßig in voller Höhe als „haushaltswirksam― zu erfassen.<br />

Kriterium 1.1.1.3 Kosten der Entwicklungsumgebung<br />

Darstellung von Kosten haushaltswirksam<br />

Unter diesem Kriterium sind alle Kosten auszuweisen, die bei der Beschaffung von Hard-<br />

und Software für das Entwicklerteam anfallen. Auch Beschaffungen von Hard- und Software<br />

für Teststellungen fallen unter dieses Kriterium.<br />

Zu den Kosten der Entwicklungsumgebung im weiteren Sinne zählen auch die Kosten,<br />

die sich aus dem notwendigen Konfigurationsmanagement beziehungsweise allgemein<br />

aus dem Vorgehensmodell des Bundes ergeben.<br />

Wird bereits vorhandene Hard- und Software (mit-)genutzt, dann kann die Berechnung<br />

dieser anteiligen (nicht haushaltswirksamen) Kosten unterbleiben. Soweit auch Kosten<br />

für die externe Schulung der Bearbeiter der IT-Maßnahme anfallen, sind die reinen<br />

Schulungskosten (‗Seminargebühren‘) unter diesem Kriterium auszuweisen.<br />

Der ermittelte Betrag ist regelmäßig in voller Höhe als „haushaltswirksam― zu erfassen.<br />

Seite 107


Kriterium 1.1.1.4 Sonstige Kosten für Sach-/Hilfsmittel<br />

Darstellung von Kosten haushaltswirksam und/ oder nicht haushaltswirksam<br />

Unter die Kosten für Sach- und Hilfsmittel fallen (analog zum vorigen Kriterium) Kosten<br />

für Material und Hilfsmittel und Ausstattungskosten, die zur Unterstützung der Bearbeiter<br />

der IT-Maßnahme erforderlich werden. Werden dabei bereits vorhandene Sach-/ Hilfsmittel<br />

(mit-)genutzt, dann kann die Berechnung dieser anteiligen (nicht haushaltswirksamen)<br />

Kosten unterbleiben.<br />

Der ermittelte Betrag ist regelmäßig in voller Höhe als „haushaltswirksam― zu erfassen.<br />

Soweit für bereits vorhandene Räumlichkeiten interne Verrechnungssätze vorliegen, sind<br />

auch diese Kosten hier als „nicht haushaltswirksam― in die WiBe aufzunehmen. Falls für<br />

die Vorhabensbearbeiter geeignete Räume erst angemietet werden müssen, sind diese<br />

Kosten haushaltswirksam zu erfassen.<br />

Kriterium 1.1.1.5 Reisekosten (eigenes Personal)<br />

Darstellung von Kosten haushaltswirksam<br />

Das Kriterium Reisekosten (eigenes Personal) beinhaltet alle Kosten für Reisen, Unterbringung,<br />

Tagegelder der Projektmitarbeiter 89 (bspw. Besichtigungs- oder Informationsreisen<br />

zu anderen Behörden oder Lieferanten), die im Rahmen der Vorbereitung und<br />

Durchführung des Migrationsprojektes abfallen.<br />

Der ermittelte Betrag ist regelmäßig in voller Höhe unter der Rubrik „haushaltswirksam―<br />

zu erfassen.<br />

Insbesondere sollte überprüft werden, inwieweit Reisekosten überhaupt begründet sind:<br />

fast alle Anbieter sind heute mit einem umfangreichen Informationsangebot im Internet<br />

vertreten, sodass Informationsreisen selektiv geplant werden können.<br />

Kriteriengruppe 1.1.2 Systemkosten<br />

Unter diese Position fallen alle haushaltswirksamen und auch nicht unmittelbar haushaltswirksamen<br />

Kosten, die mit der Erstellung (Bereitstellung) der erforderlichen Hard-<br />

und Software anfallen.<br />

Nicht zu diesen Kosten zählen die Kosten für die eigentliche Systemeinführung: diese<br />

sind unter der Kriteriengruppe 1.1.3 gesondert zu erfassen.<br />

Es ist zu klären, ob die IT-Maßnahme ein vorhandenes IT-System ablöst und ob daraus<br />

ein einmaliger Aufwand für das Alt-System entsteht. Solche kalkulatorischen „Restwerte―<br />

sind zusätzlich unter dem Kriterium 1.1.2.1 aufzunehmen (eventuelle Veräußerungserlöse<br />

erfassen Sie später unter 1.2.2).<br />

89 Zu den Reisekosten zählen ebenfalls bspw. Kosten für Flugtickets, Bahntickets, Kosten für<br />

öffentliche Verkehrsmittel, Kilometergelder, Taxi- und Parkkosten, etc..<br />

Seite 108


Kriteriengruppe 1.1.2.1 Hardwarekosten<br />

Hardware-Kosten (und zugehörige Kosten für Systemzubehör beziehungsweise Material)<br />

können Sie regelmäßig unmittelbar monetär quantifizieren: dazu liegen auch in der<br />

Vorstudie Offerten beziehungsweise Richtwerte der verschiedenen Anbieter vor.<br />

Das Kriterium ist unterteilt in Host/Server, Netzbetrieb (1.1.2.1.1) und Arbeitsplatzrechner<br />

(1.1.2.1.2). Soweit Ihr Haus in den nächsten Jahren in größerem Umfang Arbeitsplatzrechner<br />

installieren wird, ist es zweckmäßig, dafür pauschale Kostensätze einzusetzen,<br />

um die Berechnung in einzelnen WiBe zu vereinfachen und zu vereinheitlichen.<br />

Der ermittelte Betrag ist regelmäßig unter der Rubrik „haushaltswirksam― zu erfassen.<br />

Bei jeder der Migrationsalternativen ist zu prüfen, ob die vorhandene Hardware noch<br />

verwendbar ist beziehungsweise ob für eine der Alternativen längere Nutzungsdauern<br />

angenommen werden können.<br />

Kriterium 1.1.2.1.1 Host/ Server, Netzbetrieb<br />

Darstellung von Kosten haushaltswirksam<br />

In der Regel wird eine Migration vor dem Hintergrund notwendiger und umfangreicher<br />

Hardwareerneuerung geplant. Somit entstehen in jedem Fall durch die Migration Hardwareausgaben.<br />

Dazu können z. B. gehören: Datenbank-Server, Applikations-Server,<br />

Firewall, Web-Applikationen, Infrastruktur/Netz, Router, Drucker (soweit serverseitig),<br />

und so weiter.<br />

Kriterium 1.1.2.1.2 Arbeitsplatzrechner<br />

Darstellung von Kosten haushaltswirksam<br />

Auch bei den Arbeitsplatzrechnern kann es zu Neuinvestitionen kommen. Die entstehenden<br />

Kosten (z. B. für PCs, Notebooks, Drucker, etc.) sind unter diesem Kriterium<br />

aufzuzeigen.<br />

Kriteriengruppe 1.1.2.2 Softwarekosten<br />

Kosten für Software lassen sich bei Fremderstellung beziehungsweise -bezug unmittelbar<br />

monetär quantifizieren und in voller Höhe als haushaltswirksame Kosten ausweisen.<br />

Soweit Software hausintern entwickelt wird, prüfen Sie, ob Sie diese Kosten bereits unter<br />

der Position 1.1.1.1 (Personalkosten, eigenes Personal) berücksichtigt haben. Andernfalls<br />

müssen die Software-Kosten mittelbar berechnet werden: der erforderliche Personentage-Aufwand<br />

der Software-Entwickler ist mit dem jeweiligen Personalkostensatz zu<br />

multiplizieren (und unter nicht haushaltswirksamen Kosten auszuweisen). Hier werden<br />

Sie zu Beginn der IT-Maßnahme auf Schätzungen angewiesen sein, sofern Sie nicht auf<br />

Erfahrungswerte aus vergleichbaren IT-Maßnahmen zurückgreifen können. Vermeiden<br />

Sie dabei „geschönte― Aussagen: die Ansätze für den Systementwicklungsaufwand erweisen<br />

sich häufig als zu optimistisch. Das Kriterium ist unterteilt in Kosten für die eigentliche<br />

Entwicklung (1.1.2.2.1; Kern der IT-Maßnahme), Kosten für die Anpassung von<br />

Seite 109


anderer Software und von Schnittstellen (1.1.2.2.2) und Kosten für die Evaluierung, Zertifizierung<br />

und Qualitätssicherung von Software (1.1.2.2.3).<br />

Zu beachten ist, dass ein Mehr an nicht genutzten Funktionalitäten keine Berücksichtigung<br />

in der WiBe findet.<br />

Kriterium 1.1.2.2.1<br />

Kosten für Entwicklung beziehungsweise Beschaffung von Software<br />

Darstellung von Kosten haushaltswirksam<br />

Hier werden Kostenansätze für Lizenzen, Miete und/ oder Kauf ausgewiesen.<br />

Für Open Source Software fallen üblicherweise keine Lizenzkosten an, da die erworbene<br />

Kopie legal multipliziert und weitergegeben werden kann. Darin liegt im Vergleich zur<br />

proprietären Software ein erhebliches Einsparungspotenzial, das Sie anhand der betroffenen<br />

Arbeitsplätze berechnen können.<br />

Kriterium 1.1.2.2.2<br />

Kosten für Anpassung von Software und/ oder Schnittstellen, Treiber<br />

Darstellung von Kosten haushaltswirksam<br />

Sind für die Software Anpassungen erforderlich, so können die Aufwände hier erfasst<br />

werden. Dabei ist unerheblich, ob es sich um Personentageaufwände 90 oder um Festpreisverträge<br />

handelt.<br />

Bei OSS-Projekten haben Sie die freie Wahl des Anbieters, wenn es um die Anpassung<br />

von Schnittstellen, Treibern u. ä. geht - die transparentere Wettbewerbssituation kann<br />

günstigere Angebote herbeiführen.<br />

Kriterium 1.1.2.2.3<br />

Kosten für Evaluierung, Zertifizierung und Qualitätssicherung<br />

Darstellung von Kosten haushaltswirksam<br />

Unter diese Position fallen alle haushaltswirksamen und auch nicht unmittelbar haushaltswirksamen<br />

Kosten, die durch das Testen der Software auf Eignung für den spezifizierten<br />

Verwendungszweck entstehen. Weiterhin zählen dazu auch Kosten für eine<br />

eventuell notwendige Zertifizierung der Software durch eine anerkannte Firma oder Organisation,<br />

Kosten für die Erhebung einer Mängelliste und für die Nachbesserung oder<br />

Problembehebung (sofern diese Kosten nicht durch Garantie- und Supportleistungen<br />

oder durch Berücksichtigung in anderen Kriterien der IT-WiBe bereits abgedeckt sind).<br />

90 Interne Personentageaufwände sind nach der eingangs beschriebenen Methode zu ermitteln.<br />

Dabei wird die Projektplanung zugrunde gelegt und die betreffenden Personentage mit<br />

den jeweiligen Kostenansätzen bewertet. In den Prämissen und Annahmen ist festgelegt,<br />

ob mit einem durchschnittlichen Verrechnungspreis oder nach Vergütungsgruppen bewertet<br />

wird.<br />

Seite 110


(Kosten lokal erforderlicher Anpassungen der Software werden unter Kriterium 1.1.2.2.2;<br />

Beratungsleistungen erfasst, die als „bundle― mit der Software angeboten werden, bringen<br />

Sie unter Kriterium 1.1.3.2 ein.)<br />

Kriteriengruppe 1.1.3 Kosten der Systemeinführung<br />

Unter diese Position fallen alle haushaltswirksamen und auch nicht unmittelbar haushaltswirksamen<br />

Kosten, die sich auf die Umstellung vom alten Verfahren auf die neue IT-<br />

Maßnahme beziehen und mit denen sichergestellt wird, dass die neue IT-Maßnahme<br />

von den Anwendern in vollem Umfang auch benutzt werden kann.<br />

Nicht zu diesen Kosten zählen die Kosten der laufenden Betreuung und Pflege des Systems<br />

nach der Einführungsphase; diese sind später unter den laufenden Betriebskosten<br />

der Kriteriengruppe 2.2.3 zu erfassen.<br />

Kriterium 1.1.3.1 System- und Integrationstest(s)<br />

Darstellung von Kosten haushaltswirksam/ nicht haushaltswirksam<br />

Vor Abnahme des Systems muss geprüft werden, ob die gewünschte Funktionalität vorhanden<br />

ist. Insbesondere wenn die Systemlösung eine Integration unterschiedlicher Systemkomponenten<br />

beinhaltet, ist ein anwendungsorientierter Test der Schnittstellen empfehlenswert.<br />

Zu beachten ist, dass Sie die sog. Interoperabilität (insbesondere mit anderen Behörden)<br />

sicherstellen, das heißt, die wechselseitige Verwendung von Informationen muss einfach<br />

und zuverlässig gelöst sein. In einer „Mischform― verschiedener proprietärer SW-<br />

Produkte beziehungsweise von Open Source SW und proprietärer SW wird diese Prüfung<br />

umfangreicher und zeitaufwendiger ausfallen.<br />

Kriterium 1.1.3.2 Kosten der Systeminstallation<br />

Darstellung von Kosten haushaltswirksam<br />

Unter diesem Kriterium sind alle Personalkosten, soweit diese nicht unter 1.1.1.1 erfasst<br />

sind, und alle Sachkosten anzuführen, die sich auf die Installation des neuen Verfahrens<br />

beziehen. Sachkosten der System-Installation entstehen z. B. aus der Anschaffung von<br />

Werkzeugen für die SW-Verteilung.<br />

Bei großem Installationsumfang ist zu prüfen, ob die Installationsroutine automatisiert<br />

werden kann; daraus ergeben sich erhebliche Zeiteinsparungen im Vergleich zur Einzelinstallation.<br />

Kriterium 1.1.3.3 Übernahme von Datenbeständen<br />

Darstellung von Kosten haushaltswirksam/ nicht haushaltswirksam<br />

Im Rahmen der Migration wird es zu Datenübernahmen kommen. Die dafür notwendigen<br />

Aufwendungen sind hier zu planen. Die Aufnahme der Ist-Situation bietet eine Basis, um<br />

Seite 111


die entsprechenden Aktivitäten abzuschätzen. Diese können entweder in Personentagen<br />

ausgedrückt werden oder in Festpreisangeboten von externen Lieferanten, die für spezielle<br />

Datenbereiche Übernahme- oder Umstellungsarbeiten anbieten.<br />

Bei diesem Kriterium ist zu prüfen, inwieweit die neue Anwendungssoftware die bisherigen<br />

Datenformate lesen kann oder ob hier zusätzliche Entwicklungsarbeiten mit entsprechenden<br />

(haushaltswirksamen und/ oder nicht haushaltswirksamen) Kosten entstehen.<br />

Anpassungen beziehungsweise Erweiterungen können bei OSS aufgrund der offen<br />

gelegten Schnittstellen grundsätzlich bei verschiedenen Dienstleistern „im Wettbewerb―<br />

beauftragt werden.<br />

Auch manuelle Nachbearbeitung bei der Übernahme von Datenbeständen ist zu berücksichtigen.<br />

Sie werden über einen geeigneten Maßstab das Datenvolumen bestimmen<br />

und die Kosten daraus ableiten. Sofern die betreffende(n) Applikation(en) sowohl im bisherigen<br />

(proprietären) Betriebssystem als auch im OSS-Betriebssystem angeboten werden,<br />

dürften die Kosten der Datenübernahme gering ausfallen. 91<br />

Kriterium 1.1.3.4 Erstschulung Anwender und IT-Fachpersonal<br />

Darstellung von Kosten haushaltswirksam/ nicht haushaltswirksam<br />

Die Kosten für die Erstschulung von Anwendern und IT-Fachpersonal lassen sich je<br />

Teilnehmer bei externen Schulungen exakt quantifizieren. Sofern für das IT-<br />

Fachpersonal besondere Kosten der Zertifizierung (beispielsweise durch den Software-<br />

Hersteller) anfallen, sind diese ebenfalls unter diesem Kriterium zu berücksichtigen.<br />

Auch hier ist eine Trennung zwischen haushaltswirksamen und nicht haushaltswirksamen<br />

Kostenanteilen vorzunehmen: nach der Vollkostenbetrachtung zählen dazu nicht<br />

nur die Seminargebühren und Nebenkosten (Dienstreise, Unterbringung), sondern auch<br />

die Personalkosten der entfallenden Anwesenheitszeit am Arbeitsplatz.<br />

Bei größeren Behörden wird es sinnvoll sein, für interne Schulungen Pauschalsätze zu<br />

berechnen, die die Schulungskosten je Schulungstyp und Schulungstag ausweisen und<br />

die zusammen mit den Personalkosten der jeweiligen Besoldungsstufe beziehungsweise<br />

Vergütungsgruppe die Kosten der Schulung insgesamt ausdrücken.<br />

Die Erstschulungskosten für IT-Fachpersonal bei einem Umstieg auf OSS lassen sich<br />

nicht in einem Pauschalsatz ausdrücken. In der Regel wird die Schulung extern durchgeführt<br />

und verursacht damit haushaltswirksame Kosten, deren Höhe Sie durch Angebotsvergleich<br />

verschiedener Anbieter ermitteln.<br />

Bei allen Migrationsalternativen sind gleiche Qualifizierungs- und Schulungsziele festzulegen.<br />

Die den Ausfallzeiten der zu schulenden Mitarbeiter gegenüberstehenden Kosten sind<br />

hier ebenfalls zu planen. Diese Kosten werden nicht haushaltswirksam erfasst.<br />

91 Lassen Sie dabei auch überprüfen, ob gegebeenfalls andere Behörden bereits entsprechende<br />

Konvertierungstools in Auftrag gegeben haben. Sofern es sich dabei um OSS handelt,<br />

kann diese von Ihrer Behörde kostenfrei verwendet werden.<br />

Seite 112


Kriterium 1.1.3.5 Einarbeitungskosten Anwender und IT-Fachpersonal<br />

Darstellung von Kosten haushaltswirksam/ nicht haushaltswirksam<br />

Einarbeitungskosten für den Anwender entstehen immer dann, wenn (trotz Erstschulung)<br />

eine Umstellungsphase zur Eingewöhnung erforderlich ist. Bei neuer Software wird der<br />

Anwender nicht sofort alle Funktionen in der gewünschten Routine nutzen können. Dies<br />

führt in einer Übergangszeit zu verminderter (quantitativer) Arbeitsleistung. Diese (auch<br />

individuell unterschiedlichen) Einarbeitungskosten sind nur schwer quantifizierbar. Eine<br />

pauschale Aussage ist deshalb nicht möglich. Die Erfahrung zeigt, dass dieses Kriterium<br />

kaum herangezogen wird, obwohl es fast immer relevant ist.<br />

Grundsätzlich kann bei einem erstmaligen Einsatz von neuen Oberflächen/ Benutzerschnittstellen<br />

im Client-Bereich dieses Kriterium von Bedeutung sein: hier sind vorübergehende<br />

Leistungsreduzierungen möglich.<br />

Kriterium 1.1.3.6 Sonstige Umstellungskosten<br />

Darstellung von Kosten haushaltswirksam/ nicht haushaltswirksam<br />

Unter dieser Position können sonstige Umstellungskosten der Migration zu erfasst werden.<br />

Auf eine nachvollziehbare Begründung beziehungsweise Kommentierung der einzelnen<br />

Kostenpositionen ist zu achten.<br />

Darüber hinaus sollte hinreichend überprüft werden, ob die einzustellenden Kostenpositionen<br />

nicht auch unter den spezifischen monetären Kriterien der WiBe erfasst werden<br />

können.<br />

Kriteriengruppe 1.2<br />

Entwicklungs-/Einführungsnutzen aus Ablösung des alten Verfahrens<br />

„Entwicklungsnutzen― steht in diesem Zusammenhang für den monetär quantifizierten<br />

Nutzen, der vor dem (flächendeckenden) Einsatz der IT-Maßnahme anfällt; er endet,<br />

sobald die IT-Maßnahme offiziell der anwendenden Organisationseinheit zum Einsatz<br />

übergeben wird.<br />

Kriterium 1.2.1 Einmalige Kosteneinsparungen (Vermeidung von Erhaltungs-/<br />

Erweiterungskosten Altsystem)<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Mit dem Entwicklungsnutzen sind zunächst die eher seltenen Fälle von Einsparungen<br />

gemeint, die sich aus vermeidbaren Investitionen in das vorhandene Alt-System aufgrund<br />

der IT-Maßnahme ergeben können. Soweit Investitionen beziehungsweise Erhaltungsaufwände<br />

für das Alt-System fest eingeplant oder technisch unumgänglich sind,<br />

können diese Beträge als Einsparungen eingerechnet werden.<br />

� Sachkosten für die Erhaltung umfassen beispielsweise anstehende Ersatzinvestitionen<br />

in Hardware-Komponenten u. ä. Sachkosten für die Erweiterung wären<br />

Seite 113


eispielsweise Zukauf von Speicherkapazität, Peripheriegeräten sowie Kauf von<br />

Fremdsoftware mit erweitertem Funktionsumfang.<br />

� Personalkosten für die Erhaltung beziehungsweise Erweiterung fallen z. B. an bei<br />

Änderungen der technischen oder softwaremäßigen Eigenschaften, wenn dies intern<br />

geleistet wird.<br />

Wenn die IT-Maßnahme derartige Kosten vermeiden hilft, sind diese Beträge in der Wi-<br />

Be anzusetzen. Sofern im Haushaltsplan dafür bereits ein Ansatz erfolgt ist, sind diese<br />

Einsparungen auch haushaltswirksam. In jedem Fall aber sind die Berechnungswege<br />

solcher Kosteneinsparungen präzise zu begründen und zu dokumentieren.<br />

Kriterium 1.2.2 Einmalige Erlöse (aus Verwertung Altsystem)<br />

Darstellung von Nutzen haushaltswirksam<br />

Einmalige Erlöse ergeben sich - wenn überhaupt - aus der Verwertung des Alt-Systems.<br />

Dabei handelt es sich um den Verkauf von Hardware (seltener von Software).<br />

Soweit für diese Veräußerungserlöse keine konkreten Beträge bereits vereinbart sind, ist<br />

sorgfältig zu prüfen, ob und zu welchem Preis eine Veräußerung möglich ist. Die Erlöse<br />

gehen als (einmaliger) monetärer Entwicklungsnutzen in die WiBe ein.<br />

Kriteriengruppe 2 Betriebskosten und Betriebsnutzen<br />

In der Gruppe 2 des Kriterienkataloges sind die Betriebskosten und Betriebsnutzen<br />

enthalten, die nach der Einführung der IT-Maßnahme anfallen werden.<br />

Diese Betriebskosten und Betriebsnutzen sind im Regelfall für einen Zeitraum zu ermitteln,<br />

der zusammen mit der Entwicklungs-/Einführungsdauer der IT-Maßnahme insgesamt<br />

eine Berechnungsdauer von 5 Haushaltsjahren ergibt. Von diesem Zeitraum kann<br />

in begründeten Fällen abgewichen werden 92 .<br />

� Es ist unbedingt darauf zu achten, alle monetären Angaben aufzuteilen in den haushaltswirksamen<br />

und in den nicht haushaltswirksamen Anteil.<br />

Grundüberlegungen zur Datenermittlung:<br />

� Betriebskosten und Betriebsnutzen können sich beziehen auf Sachkosten (Kriterium<br />

2.1), auf Personalkosten (2.2), auf Wartung beziehungsweise Systempflege<br />

(2.3) oder auf sonstige Positionen (2.4).<br />

� Betriebskosten entstehen ursächlich aus dem Einsatz des neuen Verfahrens. Im<br />

Sinne einer Vollkostenbetrachtung sind dabei alle Kosten anzusetzen.<br />

� (Monetäre) Betriebsnutzen entstehen als Einsparungen, die sich aus dem Wegfall<br />

des bisherigen, alten Verfahrens ergeben.<br />

92 Bei großen IT-Maßnahmen mit mehrjähriger Entwicklungszeit kann es zweckmäßig sein,<br />

den 5-Jahres-Zeitraum um diese Entwicklungsdauer zu erhöhen. Bei Infrastrukturprojekten<br />

(beispielsweise der Verkabelung von Gebäuden) kann es sinnvoll sein, auch über diesen<br />

Zeitraum hinauszugehen. Bei IT-Maßnahmen dagegen, deren Einsatzdauer bereits jetzt<br />

absehbar und begründet unter 5 Jahren liegen wird, ist ein kürzerer Zeithorizont für die IT-<br />

WiBe zwingend erforderlich.<br />

Seite 114


� Die Ermittlung fragt grundsätzlich bei jedem Einzelkriterium nach den Kosten des<br />

Einsatzes des neuen Verfahrens und stellt diesem sodann die Einsparungen gegenüber,<br />

die aus dem Wegfall des alten Verfahrens entstehen können.<br />

� Aus der Saldierung ergeben sich laufende Mehrkosten oder aber laufende Minderkosten<br />

(Einsparungen) bei jedem Kriterium. Diese Salden gehen später in die<br />

WiBe KN ein.<br />

Für alle folgenden Einzelkriterien gilt generell:<br />

� Soweit Wirkungen bei einem Kriterium nicht hinreichend exakt bezifferbar sind,<br />

wirkt sich dieses Kriterium sowohl in der WiBe KN als auch in der ergänzenden<br />

Kennzahl WiBe KN/R aus. Bei der Datenermittlung ist ein „plausibel begründeter―<br />

monetärer Ansatz vorzulegen, der als „wahrscheinlicher Schätzwert― in die monetäre<br />

Wirtschaftlichkeitsbetrachtung (WiBe KN) übernommen wird. Die im ungünstigen<br />

Fall möglichen Überschreitungen dieses Schätzwertes sind als Risikozuschlag<br />

für die Risikoabwägung (WiBe KN/R) einzugeben.<br />

� Soweit Wirkungen bei einem monetären Nutzenkriterium (Einsparung) nur qualitativ<br />

beschreibbar erscheinen, ist für dieses Kriterium kein monetärer Wert anzusetzen.<br />

Die qualitative Wirkung ist stattdessen in die Bewertung des entsprechenden<br />

qualitativ-strategischen Kriteriums in der WiBe Q (im Regelfall in den Untergruppen<br />

4.2, 4.3 oder 4.4) einzubringen.<br />

Kriteriengruppe 2.1 Laufende Sachkosten/ Sachkosteneinsparungen<br />

Laufende Sachkosten sind solche Kosten, die durch den Betrieb der neuen IT-<br />

Maßnahme verursacht werden und weder Personalkosten, noch Wartungskosten sind.<br />

Laufende Sachkosteneinsparungen sind alle Kosten des alten Verfahrens, die ab der<br />

Einführung der neuen IT-Maßnahme entfallen und die weder Personalkosten noch Wartungskosten<br />

sind.<br />

Kriterium 2.1.1 (Anteilige) Host-, Server- und Netzkosten<br />

Darstellung von Kosten/ Nutzen nicht haushaltswirksam/ nicht haushaltswirksam<br />

Das Kriterium ‗(Anteilige) Host, Server- und Netzkosten‘ bezieht sich auf solche (kalkulatorischen)<br />

Kosten, die durch die IT-Maßnahme im zentralen Rechenzentrum, im Hostbetrieb,<br />

beziehungsweise in lokalen Netzen (Client-Server-Architektur) verursacht werden.<br />

Diese Kosten sind üblicherweise als nicht haushaltswirksam in die WiBe einzustellen<br />

(Ausnahme: die betrachtete IT-Maßnahme macht Aufrüstungen erforderlich).<br />

Zu den Kosten zählen (neben eventuell anfallenden Mieten für die Hardware) die Kosten<br />

des Personals, das für den Betrieb des Hosts/ Servers beziehungsweise für die Funktionsfähigkeit<br />

der Infrastruktur interner Netze zuständig ist.<br />

Die genaue Berechnung dieser Kosten (sowohl für das Ist-Verfahren als auch für das<br />

neue Verfahren) ist dann problematisch, wenn in Ihrem Amt keine detaillierte Kostenrechnung<br />

(Kostenerfassung) vorhanden ist. Zumindest ein Verrechnungssatz „Ist-Kosten<br />

Seite 115


je CPU-Sekunde― sollte verfügbar sein, den Sie näherungsweise Ihren Berechnungen<br />

zugrunde legen können.<br />

Kriterium 2.1.2 (Anteilige) Kosten für Arbeitsplatzrechner<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Das Kriterium ‗(Anteilige) Kosten für Arbeitsplatzrechner‘ bezieht sich auf solche Betriebskosten,<br />

die durch die IT-Maßnahme am Arbeitsplatz („Endplatz―) der Anwender<br />

entstehen. Die Kosten sind üblicherweise als nicht haushaltswirksame Betriebskosten in<br />

die WiBe einzustellen. (Ausnahme: die betrachtete IT-Maßnahme macht Aufrüstungen<br />

beziehungsweise Auswechslungen bei gemieteter Hardware am Arbeitsplatz der Anwender<br />

erforderlich). Zu diesen Kosten zählen auch Kosten für die zugehörige Peripherie<br />

(Arbeitsplatzdrucker etc.). Im Standardfall wird die Hard- und Software für die einzelnen<br />

Arbeitsplätze erworben und nicht gemietet: es fallen dann keine Beträge bei diesem<br />

Kriterium an.<br />

Kriterium 2.1.3 Energie- und Raumkosten<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Die Berechnung beziehungsweise Berücksichtigung von Energie- und Raumkosten kann<br />

unterbleiben,<br />

� solange in eine Verrechnung auch bei anderen Vorhaben und bei der Kalkulation<br />

eingesetzter IT-Maßnahmen nicht erfolgt,<br />

� bei kleineren IT-Maßnahmen beziehungsweise bei Maßnahmen, bei denen Sie<br />

den Nettoeffekt zwischen ‗altem und neuem‘ Verfahren mit 0 begründen.<br />

In anderen Fällen werden Sie eine detaillierte Berechnung vornehmen, bei der Sie die<br />

technischen Daten der Hardware berücksichtigen (bei Energiekosten also im Wesentlichen<br />

den Verbrauch je Gerät in kWh, die Betriebsstunden pro Jahr je Gerät, die Anzahl<br />

der Geräte, die Energiekosten je KW).<br />

Bei den Raumkosten kann auf die tatsächliche Miete, auf die Ansätze der Kosten-<br />

Leistungsrechnung oder auf die Personalkostensätze des BMF zurückgegriffen.<br />

Kriteriengruppe 2.2<br />

Laufende Personalkosten/ Personalkosteneinsparungen<br />

Laufende Personalkosten sind solche Kosten, die durch den Betrieb der neuen IT-<br />

Maßnahme verursacht werden und weder Sachkosten noch Wartungskosten sind. Laufende<br />

Personalkosteneinsparungen sind alle Kosten des alten Verfahrens, die ab der<br />

Einführung der neuen IT-Maßnahme entfallen und die weder Sachkosten noch Wartungskosten<br />

sind.<br />

Seite 116


Kriterium 2.2.1 Personalkosten aus Systembenutzung<br />

Darstellung von Kosten/ Nutzen nicht haushaltswirksam<br />

Das Kriterium „Personalkosten aus Systembenutzung― ist dann zu berücksichtigen, wenn<br />

sie damit rechnen, dass der Zeitbedarf der Anwender für die Systembenutzung sich ändert.<br />

Es handelt sich dabei um alle Personalkosten, die in den Anwender-<br />

Organisationseinheiten im Zusammenhang mit dem neuen Verfahren stehen. Dabei sind<br />

auch Ausfallzeiten des Systems („downtime―) zu berücksichtigen. Es ist also erforderlich,<br />

die gesamte jährliche Arbeitszeit zu ermitteln, die bei allen beteiligten Dienstposten beziehungsweise<br />

Organisationseinheiten durch den Einsatz des neuen Verfahrens „gebunden―<br />

sein wird. Laufende Personalkosteneinsparungen bei der Systembenutzung<br />

sind alle Personalkosten, die in den Anwender-Organisationseinheiten im Zusammenhang<br />

mit dem alten Verfahren gebunden waren und die jetzt entfallen.<br />

Die Personalkosten insgesamt ergeben sich aus der Besoldungseinstufung beziehungsweise<br />

Vergütungsgruppe (unter Anlegung der jeweiligen Personalkostensätze). Der<br />

„Nutzen-Inkasso― von errechneten Personalkosteneinsparungen ist in vielen Fällen die<br />

kritische Größe einer IT-Maßnahme: zumeist sind es die möglichen Personalkosteneinsparungen,<br />

die eine IT-Maßnahme erst mit einem positiven Kapitalwert versehen. Auf<br />

die Berechnung des Nettoeffektes der Personalkosten ist deshalb besondere Sorgfalt zu<br />

verwenden. Nettoeffekte, die eine Personalreduzierung ausweisen („kw-Stellen―), werden<br />

besondere Aktionen nahe liegen, damit diese Einsparungspotenziale auch haushaltswirksam<br />

umgesetzt werden.<br />

Kriterium 2.2.2 Systembetreuung und –administration<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Laufende Personalkosten für die Systembetreuung und -administration des neuen IT-<br />

Systems entstehen, wenn Mitarbeiter in zentralen Unterstützungsstellen (Benutzerservice)<br />

als Ansprechpartner für Fragen der Systembenutzer benannt sind. (Die Kosten beziehen<br />

sich nicht auf Wartungs- und Pflegekosten.) Die Kosten sind mittelbar zu berechnen<br />

aus der jährlichen Stundenzahl (beziehungsweise aus dem prozentualen Anteil an<br />

der gesamten Jahresarbeitszeit), mit dem die Mitarbeiter für die Einsatzbetreuung dieser<br />

IT-Maßnahme voraussichtlich in Anspruch genommen werden. Das Kriterium erfasst<br />

weiterhin alle Personalkosten, die in zentralen Unterstützungsstellen (Rechenzentrumsbetrieb)<br />

für die Administration des IT-Systems anfallen. Die Personalbedarfsermittlung<br />

für die Systembetreuung und –administration ist insbesondere abhängig vom Ausbaustand<br />

der IT sowie von der Komplexität der Anwendungen (siehe „Grundsätze zur Bemessung<br />

des IT-Fachpersonals in obersten Bundesbehörden―, BMI-Schreiben vom<br />

1.7.96 an IMKA – OI3 – 195 052-1/12).<br />

Unter Umständen sind diese Kosten bereits in die anteiligen Host-Kosten (2.1.2) eingerechnet,<br />

sodass diese Position hier entfallen kann. Andernfalls ist eine Quantifizierung<br />

erforderlich: die jährlichen Arbeitsstunden für die System-Administration sind überschlägig<br />

mit den Personalkostensätzen der jeweiligen Besoldungsstufe in die WiBe zu übernehmen.<br />

Diese Überlegungen gelten analog für die Berechnung der Personalkosteneinsparungen<br />

aus dem Wegfall des alten Verfahrens.<br />

Seite 117


Werden jedoch neue Dienstposten erforderlich, so sind die dafür anzusetzenden Aufwände<br />

haushaltswirksam zu planen.<br />

Kriterium 2.2.3 Laufende Schulung/ Fortbildung<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Laufende Personalkosten für die Schulung und Fortbildung der Systembenutzer ergeben<br />

sich aus der Notwendigkeit, nach der Erstschulung (siehe Kriterium 1.1.3.3) neue Anwender<br />

an das System heranzuführen beziehungsweise alle Anwender mit späteren<br />

Änderungen in der Systembedienung vertraut zu machen. Hinzu kommen gegebenenfalls<br />

gezielte Nachschulungen in ausgewählten Nutzergruppen.<br />

Die Überlegungen zur Erstschulung gelten analog (siehe Kriterium 1.1.3.3).<br />

Als Pauschalwert kann ersatzweise (sofern keine anderen, spezifischen Daten vorliegen<br />

beziehungsweise sofern solche Daten mit vertretbarem Aufwand nicht berechenbar erscheinen)<br />

ein jährlicher Ansatz von 10% der Kosten der Erstschulung verwendet werden.<br />

Externe Schulungskosten werden haushaltswirksam dargestellt. Die bewerteten Ausfallzeiten<br />

der zu schulenden Mitarbeiter hingegen sind nicht haushaltswirksam.<br />

Kriteriengruppe 2.3<br />

Laufende Kosten/Einsparungen bei Wartung /Systempflege<br />

Laufende Kosten bei diesem Kriterium sind solche Kosten, die durch den Einsatz des<br />

neuen Verfahrens verursacht werden und die weder Host-, Server-, Netzkosten noch<br />

Personalkosten sind.<br />

Laufende Einsparungen bei diesem Kriterium sind alle Kosten des alten Verfahrens, die<br />

ab der Einführung des neuen Verfahrens entfallen und die weder Host-, Server-, Netzkosten<br />

noch Personalkosten sind.<br />

Kriterium 2.3.1 Wartung/ Pflege der Hardware<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

In der Regel wird eine Gewährleistung auf Hardware vom Hersteller/ Lieferanten geboten.<br />

In vielen Fällen auch schon 36 Monate. Ist der Betrachtungszeitraum der WiBe länger,<br />

so sind hier für die Zeit ab dem 4. Jahr Kosten zu veranschlagen. Diese können<br />

entweder aufgrund eines vorliegenden Angebotes direkt angegeben werden oder mit<br />

marktüblichen Ansätzen von 10% – 20% auf den Kaufpreis geschätzt werden. Hier sollte<br />

jedoch in jedem Fall eine Recherche durchgeführt werden, um diesen Ansatz auf den<br />

wahrscheinlichsten Wert einzugrenzen. Diese Kosten werden haushaltswirksam dargestellt.<br />

Wird die Wartung hausintern durchgeführt, so sind in diesem Fall die Kosten für das eigene<br />

Personal anzusetzen. Dabei sind auch Kosten für die Infrastruktur beziehungsweise<br />

für die Ausrüstung der Mitarbeiter zu berücksichtigen, mit der sie die Wartungsarbei-<br />

Seite 118


ten erst bewerkstelligen können. Wenn es sich um normale IT-Arbeitsplätze handelt,<br />

kann hier durchaus auch die Sachkostenpauschale mit Zuschlag für Bildschirmarbeitsplätze<br />

des BMF angewandt werden. Diese internen Kosten werden nicht haushaltswirksam<br />

ausgewiesen.<br />

Kriterium 2.3.2 Wartung/ Update der Software<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Lizenzkosten für Update- und Servicereleases sind mit diesem Kriterium zu erfassen.<br />

Die fast regelmäßig anfallenden Updates haben bei proprietärer Software erhebliches<br />

Gewicht; diese Kosten entfallen grundsätzlich bei OSS.<br />

Neben dem eigentlichen Update-Preis sind auch Installationskosten (als Zeitaufwand<br />

des eingesetzten Personals) zu berücksichtigen. Zu den Update-/Wartungskosten im<br />

weiteren Sinne zählt auch der erforderliche Support, der gegebenenfalls als externe<br />

Dienstleistung eingekauft wird. (Bei OSS können Sie im Regelfall auf verschiedene Anbieter<br />

„im Wettbewerb― zugehen – diese Möglichkeit besteht bei proprietärer Software<br />

zwar grundsätzlich auch, aber nicht immer in gleichem Ausmaß.)<br />

Weiterhin sind hier die (Personal-) Kosten zu berücksichtigen, die im Zusammenhang<br />

mit der laufenden Lizenzierung von Softwareprodukten beziehungsweise mit dem Nachweis<br />

der Lizenzrechte anfallen.<br />

Dieser Aufwand kann bei proprietärer Software erheblich sein; er wird bei Open Source<br />

Software deutlich geringer ausfallen.<br />

Bei eigenerstellter Software liegen u. U. bereits konkretere Erfahrungswerte beziehungsweise<br />

Ausbaupläne vor (<strong>Version</strong>enkonzept). Der Wartungsaufwand ist dann mittelbar<br />

zu berechnen aus den erforderlichen Personal- und Rechnerzeiten.<br />

Kriterium 2.3.3 Ersatz-/ Ergänzungskosten<br />

Darstellung von Kosten/ Nutzen haushaltswirksam/ nicht haushaltswirksam<br />

Mit diesem Kriterium werden über die standardmäßige Wartung hinaus diejenigen Kosten<br />

erfasst, die möglicherweise während der Betriebsphase der IT-Maßnahme durch die<br />

laufende, geplante Ergänzung von Hard- und Software entstehen können.<br />

Ersatzkosten beziehen sich auf den teilweisen oder vollständigen Austausch handelsüblicher<br />

Hardware-Ausstattung (beispielsweise Komponenten von Arbeitsplatzdruckern<br />

usw.).<br />

Ergänzungskosten beziehen sich auf bereits absehbare Erweiterungen handelsüblicher<br />

Hard- und Software während der Betriebsphase.<br />

Sofern bei alternativen Lösungen von einer längeren technisch möglichen Nutzungsdauer<br />

vorhandener Hardware ausgegangen werden kann, sind diese Wirkungen monetär<br />

wie folgt zu berücksichtigen:<br />

Seite 119


5.2.3 Migrations- und Anbieterszenarien<br />

Eine Migration wird grundsätzlich verschiedene Szenarien zur Auswahl haben und unterschiedliche<br />

Anbieter werden für unterschiedliche Szenarien oder Teile davon Angebote<br />

abgeben. Die Wirtschaftlichkeitsbetrachtung sollte dies in jedem Fall berücksichtigen.<br />

Die Ausführungen in Kapitel I.C 5.2.1, „Systematik―, stellen die Basis für das Grundgerüst<br />

der WiBe dar.<br />

Eine alternative Betrachtung der WiBe hilft, die verschiedenen Szenarien und Angebotssituationen<br />

abzubilden. Die Kriterien, die von eventuell unterschiedlichen Angeboten<br />

betroffen sind, werden in verschiedenen Alternativen der Wirtschaftlichkeitsbetrachtung,<br />

mit den jeweiligen Angebotswerten gefüllt. Somit liefern die verschiedenen Alternativen<br />

der WiBe eigenständige Aussagen zu Kapitalwert und Rentabilität. Ein Vergleich der<br />

Alternativen kann dann die einzelnen <strong>Version</strong>en zueinander in Relation setzen und eine<br />

Entscheidungsbasis liefern.<br />

Die folgenden Abbildungen zeigen exemplarisch eine monetäre WiBe für die Bereiche<br />

der Einführungs- und Betriebskosten/ Nutzen (siehe die beiden nachfolgenden Abbildungen).<br />

IT-Vorhaben: Migration von Server- und Clientarchitekturen<br />

Pos. Kriterium, Erläuterung zur Selektion<br />

Nominal Gesamt, 8 Jahre Barwerte Gesamt, 8 Jahre<br />

WiBe<br />

Hinweis: Startjahr = 2005, Laufzeit = 8 Jahre,<br />

Diskontierungs-Zins = 3,8%,<br />

Break even gesamt im 5. Jahr, 2009<br />

gesamt hh.wirks. n.hh.wirks. gesamt hh.wirks. n.hh. wirks.<br />

KN Kosten + Nutzen - Entwicklung/ Einführung und Betrieb <strong>3.0</strong>77.501 29.819 <strong>3.0</strong>47.682 2.307.062 -127.577 2.434.639<br />

…davon Kosten -3.802.487 -2.437.901 -1.364.586 -3.630.750 -2.325.694 -1.305.056<br />

… davon Nutzen 6.879.987 2.467.720 4.412.267 5.937.812 2.198.118 3.739.695<br />

KN Kumuliert <strong>3.0</strong>77.501 29.819 <strong>3.0</strong>47.682 2.307.062 -127.577 2.434.639<br />

1 Entwicklungs-/Einführungskosten und Entwicklungsnutzen -2.349.509 -1.422.031 -927.478 -2.349.509 -1.422.031 -927.478<br />

…davon Kosten -1.627.351 -927.478 -2.554.829 -1.627.351 -927.478<br />

… davon Nutzen 205.320 0 205.320 205.320 0<br />

1.1 Entwicklungs-/Einführungskosten für das neue IT-Verfahren -2.554.829 -1.627.351 -927.478 -2.554.829 -1.627.351 -927.478<br />

1.1.1 Planungs- und Einführungskosten -1.165.910 -641.235 -524.675 -1.165.910 -641.235 -524.675<br />

1.1.1.1 Personalkosten (eigenes Personal) -568.175 -43.500 -524.675 -568.175 -43.500 -524.675<br />

1.1.1.2 Kosten externer Beratung -452.632 -452.632 0 -452.632 -452.632 0<br />

1.1.1.3 Kosten der Entwicklungsumgebung 0 0 0 0 0 0<br />

1.1.1.4 Sonstige Kosten für Sach-/Hilfsmittel -139.303 -139.303 0 -139.303 -139.303 0<br />

1.1.1.5 Reisekosten (eigenes Personal) -5.800 -5.800 0 -5.800 -5.800 0<br />

1.1.2 Systemkosten -786.596 -786.596 -786.596 -786.596<br />

1.1.2.1 Hardwarekosten -165.880 -165.880 -165.880 -165.880<br />

1.1.2.2 Softwarekosten -620.716 -620.716 -620.716 -620.716<br />

1.1.3 Kosten der Systemeinführung -602.322 -199.520 -402.802 -602.322 -199.520 -402.802<br />

1.2 Entwicklungs-/Einführungsnutzen aus Ablösung des alten Verfahrens 205.320 205.320 205.320 205.320<br />

1.2.1 Einmalige Kosteneinsparungen (Vermeidung von Erhaltungs-<br />

205.320 205.320 0 205.320 205.320 0<br />

1.2.2 /Erweiterungskosten Einmalige Erlöse (aus Altsystem) Verwertung Altsystem) 0 0 0 0 0 0<br />

Abbildung 20: WiBe - Beispielhafte WiBe Kalkulation 1, Einführungskosten/ -nutzen<br />

Seite 120


IT-Vorhaben: Migration von Server- und Clientarchitekturen<br />

Pos. Kriterium, Erläuterung zur Selektion<br />

Nominal Gesamt, 8 Jahre Barwerte Gesamt, 8 Jahre<br />

WiBe<br />

Hinweis: Startjahr = 2005, Laufzeit = 8 Jahre,<br />

Diskontierungs-Zins = 3,8%,<br />

Break even gesamt im 5. Jahr, 2009<br />

gesamt hh.wirks. n.hh.wirks. gesamt hh.wirks. n.hh. wirks.<br />

KN Kosten + Nutzen - Entwicklung/ Einführung und Betrieb <strong>3.0</strong>77.501 29.819 <strong>3.0</strong>47.682 2.307.062 -127.577 2.434.639<br />

…davon Kosten -3.802.487 -2.437.901 -1.364.586 -3.630.750 -2.325.694 -1.305.056<br />

… davon Nutzen 6.879.987 2.467.720 4.412.267 5.937.812 2.198.118 3.739.695<br />

KN Kumuliert <strong>3.0</strong>77.501 29.819 <strong>3.0</strong>47.682 2.307.062 -127.577 2.434.639<br />

1 Entwicklungs-/Einführungskosten und Entwicklungsnutzen -2.349.509 -1.422.031 -927.478 -2.349.509 -1.422.031 -927.478<br />

2 Betriebskosten und Betriebsnutzen 5.427.009 1.451.850 3.975.159 4.656.571 1.294.455 3.362.117<br />

…davon Kosten -810.550 -437.108 -1.075.921 -698.343 -377.578<br />

… davon Nutzen 2.262.400 4.412.267 5.732.492 1.992.798 3.739.695<br />

2.1 Laufende Sachkosten/ Sachkosteneinsparungen<br />

2.1.1 (Anteilige) Host-, Server- und Netzkosten<br />

2.1.1.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.1.1.2 Lfd. Nutzen aus Wegfall IT-Verfahren ALT 0 0 0 0 0 0<br />

2.1.2 (Anteilige) Kosten für Arbeitsplatzrechner<br />

2.1.2.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.1.2.2 Lfd. Nutzen aus Wegfall Verfahren ALT 0 0 0 0 0 0<br />

2.1.3 Energie- und Raumkosten<br />

2.1.3.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.1.3.2 Lfd. Nutzen aus Wegfall IT-Verfahren ALT 0 0 0 0 0 0<br />

2.2 Laufende Personalkosten/-einsparungen 3.882.359 -92.800 3.975.159 3.280.375 -81.741 3.362.117<br />

2.2.1 Personalkosten aus Systembenutzung 4.412.267 4.412.267 3.739.695 3.739.695<br />

2.2.1.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.2.1.2 Lfd. Nutzen aus Wegfall Verfahren ALT 4.412.267 0 4.412.267 3.739.695 0 3.739.695<br />

2.2.2 Systembetreuung und -administration -437.108 -437.108 -377.578 -377.578<br />

2.2.2.1 Lfd. Kosten aus IT-Verfahren NEU -437.108 0 -437.108 -377.578 0 -377.578<br />

2.2.2.2 Lfd. Nutzen aus Wegfall Verfahren ALT 0 0 0 0 0 0<br />

2.2.3 Laufende Schulung/Fortbildung -92.800 -92.800 -81.741 -81.741<br />

2.2.3.1 Lfd. Kosten aus IT-Verfahren NEU -92.800 -92.800 0 -81.741 -81.741 0<br />

2.2.3.2 Lfd. Nutzen aus Wegfall Verfahren ALT 0 0 0 0 0 0<br />

2.3 Laufende Kosten/Einsparungen bei Wartung /Systempflege 1.544.650 1.544.650 1.376.196 1.376.196<br />

2.3.1 Wartung/Update der Hardware 303.850 303.850 274.964 274.964<br />

2.3.1.1 Lfd. Kosten aus IT-Verfahren NEU -230.550 -230.550 0 -195.754 -195.754 0<br />

2.3.1.2 Lfd. Nutzen aus Wegfall IT-Verfahren ALT 534.400 534.400 0 470.717 470.717 0<br />

2.3.2 Wartung/Update der Software 1.240.800 1.240.800 1.101.232 1.101.232<br />

2.3.2.1 Lfd. Kosten aus IT-Verfahren NEU -487.200 -487.200 0 -420.848 -420.848 0<br />

2.3.2.2 Lfd. Nutzen aus Wegfall IT-Verfahren ALT 1.728.000 1.728.000 0 1.522.080 1.522.080 0<br />

2.3.3 Ersatz-/Ergänzungskosten<br />

2.3.3.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.3.3.2 Lfd. Nutzen aus Wegfall IT-Verfahren ALT 0 0 0 0 0 0<br />

2.4 Sonstige Laufende Kosten und Einsparungen<br />

2.4.1.1 Lfd. Kosten aus IT-Verfahren NEU 0 0 0 0 0 0<br />

2.4.1.2 Lfd. Nutzen aus Wegfall Verfahren ALT 0 0 0 0 0 0<br />

Abbildung 21: Beispielhafte WiBe Kalkulation 2, Betriebskosten/ -nutzen<br />

Ergebnis einer WiBe sollte auch ein Überblick der haushaltswirksamen Kosten sein. Dieser<br />

Überblick wird punktuell in den Zeilen obiger WiBe-Darstellung mit der Bezeichnung<br />

„davon Kosten― gegeben.<br />

5.3 Erweiterte Wirtschaftlichkeit<br />

Die erweiterte Wirtschaftlichkeit wird mit qualitativen Kriterien bewertet. Dazu wird für<br />

jedes Kriterium eine Nutzwert-Analyse durchgeführt, wobei die Beantwortung des jeweiligen<br />

Kriteriums anhand einer beschriebenen Notenskala von 0 – 10 vorgenommen 93<br />

wird. Jedes Kriterium ist in seiner Gruppe (Dringlichkeit; Qualität) mit einer Gewichtung 94<br />

versehen, deren Summe sich in der Gruppe auf 100 addiert.<br />

93 Es handelt sich dabei um eine Ordinalskala mit aufsteigender Wertigkeit der vorgefundenen<br />

Umstände, wobei 0 die Minimalbewertung und 10 die Maximalbewertung darstellt.<br />

94 siehe die Kriterienkataloge Dringlichkeit (siehe Abbildung 76 im Anhang) und Qualität (siehe<br />

Abbildung 78 im Anhang), sowie deren Gewichtungstabellen, Gewichtung Dringlichkeit<br />

(siehe Abbildung 77, im Anhang) Gewichtung Qualität (siehe Abbildung 79 im Anhang).<br />

Seite 121


5.3.1 Dringlichkeitskriterien<br />

Dringlichkeitskriterien beziehen sich einerseits auf die technische Ablösedringlichkeit des<br />

Altsystems, andererseits auf die Einhaltung von Verwaltungsvorschriften und Gesetzen.<br />

Diese Kriterien sind nicht monetär quantifizierbar. Sie werden stattdessen in eine Nutzwertbetrachtung<br />

eingebracht. Die zu beurteilenden Kriterien werden qualitativ beschrieben.<br />

Diese Beschreibung wiederum ist in eine Punktbewertung je Kriterium umzusetzen.<br />

Dafür steht zu jedem Kriterium eine „Notenskala― von 0 bis 10 zur Verfügung.<br />

Unter Bezugnahme auf die Ordnungsnummer des Kriterienkataloges für Migrationen ist<br />

jeweils zunächst eine Erläuterung beziehungsweise Abgrenzung des Kriteriums zu finden.<br />

Darauf folgt die Tabelle mit der Skalierung, aus der die Umsetzung in einen Punktwert<br />

abzuleiten ist.<br />

Kriteriengruppe 3.1 Ablösedringlichkeit Altsystem<br />

Kriterium 3.1.1 Unterstützungskontinuität Altsystem<br />

Dieses Kriterium zielt auf den derzeitigen Ist-Zustand: soweit dort Hard- und Software<br />

verwendet wird, ist das Ausmaß an (zukünftiger) Unterstützung durch den Lieferanten<br />

von Bedeutung. Stellt der Lieferant von sich aus diese Unterstützung ein, kann sich daraus<br />

der Zwang zur internen Ablösung des (an sich funktionstüchtigen) Altsystems ergeben.<br />

Die Bedeutung dieses Kriteriums ist qualitativ zu schätzen.<br />

3.1.1 Unterstützungs-Kontinuität Altsystem<br />

0 2 4 6 8 10<br />

nicht<br />

gefährdet<br />

soweit absehbar<br />

besteht kein<br />

Engpass<br />

Unterstützung<br />

läuft aus, Ersatz<br />

derzeit nicht<br />

erforderlich<br />

Seite 122<br />

Unterstützung<br />

läuft aus, kurzfristig<br />

keine<br />

Probleme<br />

Unterstützung<br />

läuft aus, Ersatz<br />

dringend<br />

Tabelle 15: Punktbewertungsskala Unterstützungskontinuität Altsystem<br />

Kriterium 3.1.2 Stabilität Altsystem<br />

Unterstützung<br />

entfällt, Neulösung<br />

zwingend<br />

Dieses Kriterium bewertet die vorhandene Ist-Lösung hinsichtlich ihrer Funktionstüchtigkeit<br />

im „tagtäglichen― Einsatz. Dabei interessieren sowohl qualitative Aussagen über<br />

Fehlerhäufigkeiten bis hin zu Systemabstürzen, als auch Bewertungen zu Problemen der<br />

Systemwartung (technischer Aspekt) beziehungsweise dabei bestehenden Personalengpässen<br />

(Verfügbarkeit von Know-how im Umgang mit auftretenden Fehlern).


Kriterium 3.1.2.1 Fehler und Ausfälle („downtime“)<br />

3.1.2.1 Stabilität des Altsystems: Fehler und Ausfälle („downtime―)<br />

0 2 4 6 8 10<br />

nicht gefährdet kaum<br />

beeinträchtigt<br />

gering beeinträchtigt,<br />

noch<br />

tolerabel<br />

Seite 123<br />

durchschnittlich<br />

beeinträchtigt,<br />

störend<br />

überdurchschnittlichbeeinträchtigt,<br />

belastend<br />

Tabelle 16: Punktbewertungsskala Fehler und Ausfälle („downtime―)<br />

Kriterium 3.1.2.2 Wartungsprobleme, Personalengpässe<br />

3.1.2.2 Stabilität des Altsystems: Wartungsprobleme, Personalengpässe<br />

sehr stark beeinträchtigt,<br />

intolerabel<br />

0 2 4 6 8 10<br />

nicht von Bedeutung<br />

selten, gering gering, noch<br />

tolerabel<br />

gering, aber<br />

absehbar zunehmend<br />

mittel,<br />

zunehmend<br />

Tabelle 17: Punktbewertungsskala Wartungsprobleme, Personalengpässe<br />

Kriterium 3.1.3 Flexibilität Altsystem<br />

anhaltend<br />

gravierend<br />

Dieses Kriterium bewertet die vorhandene Ist-Lösung hinsichtlich ihrer zu-künftigen<br />

Funktionstüchtigkeit. Dabei interessieren Aussagen über die weiteren Ausbaumöglichkeiten,<br />

über die Interoperabilität beziehungsweise über (künftige) Schnittstellenprobleme<br />

zu anderen IT-Systemen und zur Bedienbarkeit und Ergonomie des Altsystems.<br />

Die Unterkriterien sind nur qualitativ beschreibbar.<br />

Kriterium 3.1.3.1 Ausbau-/Erweiterungsgrenzen<br />

3.1.3.1 Flexibilität des Altsystems: Ausbau-/Erweiterungsgrenzen<br />

0 2 4 6 8 10<br />

nicht eingeschränkt<br />

wenig eingeschränkt<br />

eingeschränkt,<br />

kleinere Anforderungen<br />

können erfüllt<br />

werden<br />

eingeschränkt,<br />

mittlere Anforderungenkönnen<br />

nur aufwendig<br />

erfüllt<br />

werden<br />

stark eingeschränkt,<br />

viele<br />

Anforderungen<br />

können nicht<br />

realisiert werden<br />

Tabelle 18: Punktbewertungsskala Ausbau-/Erweiterungsgrenzen<br />

Ausbau beziehungsweise<br />

Erweiterung<br />

nicht möglich,<br />

aber erforderlich


Kriterium 3.1.3.2 Interoperabilität, Schnittstellenprobleme aktuell/zukünftig<br />

3.1.3.2 Flexibilität des Altsystems: Interoperabilität, Schnittstellenprobleme aktuell/zukünftig<br />

0 2 4 6 8 10<br />

nicht eingeschränkt<br />

Probleme derzeit<br />

nicht wahrscheinlich<br />

Probleme<br />

absehbar,<br />

Anpassungen<br />

problemlos<br />

Seite 124<br />

erforderliche<br />

Anpassungen<br />

aufwendig, aber<br />

nicht dringend<br />

Zahlreiche<br />

aufwendige<br />

Anpassungen,<br />

dringend<br />

Anpassungen<br />

dringend<br />

erforderlich,<br />

überfällig<br />

Tabelle 19: Punktbewertungsskala Interoperabilität, Schnittstellenprobleme aktuell/zukünftig<br />

Kriterium 3.1.3.3 Bedienbarkeit und Ergonomie (Benutzerfreundlichkeit)<br />

3.1.3.3 Flexibilität des Altsystems: Bedienbarkeit und Ergonomie<br />

0 2 4 6 8 10<br />

nicht von<br />

Bedeutung<br />

kleine ergonomische<br />

Mängel<br />

geringe Beeinträchtigungen<br />

mittlere Beeinträchtigungen<br />

erhebliche Mängel,Änderungsbedarf<br />

gravierende<br />

Mängel,<br />

unzumutbar<br />

Tabelle 20: Punktbewertungsskala Bedienbarkeit und Ergonomie (Benutzerfreundlichkeit)<br />

Kriteriengruppe 3.2 Einhaltung von Verwaltungsvorschriften und Gesetzen<br />

Kriterium 3.2.1 Einhaltung gesetzlicher Vorgaben<br />

Mit diesem Kriterium wird bewertet, inwieweit vorhandene Altsysteme dem vorhandenen<br />

beziehungsweise geänderten gesetzlichen Handlungsauftrag, d. h. einem formellen Gesetz<br />

entsprechen.<br />

Dieses Kriterium ist ein sog. MUSS-Kriterium: wenn bei diesem Kriterium die Bewertung<br />

„10 Punkte― vorzunehmen ist, muss die IT-Maßnahme in jedem Fall umgehend<br />

durchgeführt werden.<br />

3.2.1 Einhaltung gesetzlicher Vorgaben<br />

0 2 4 6 8 10<br />

Gewährleistet Absehbare<br />

Rechtsänderung,<br />

ist bereits<br />

berücksichtigt<br />

absehbare<br />

Rechtsänderung,<br />

ist ansatzweiseberücksichtigt<br />

anstehende<br />

Rechtsänderungen<br />

sind nicht<br />

berücksichtigt<br />

geltende<br />

Rechtsnormen<br />

sind mangelhaft<br />

eingehalten<br />

Tabelle 21: Punktbewertungsskala Einhaltung gesetzlicher Vorgaben<br />

geltende<br />

Rechtsnormen<br />

sind nicht eingehalten


Kriterium 3.2.2 Erfüllung Datenschutz/ -sicherheit<br />

Das Kriterium zielt darauf ab, ob das vorhandene IT-System beziehungsweise die gegenwärtige<br />

Verfahrenslösung alle datenschutzrechtlichen Forderungen erfüllt. Weiterhin<br />

ist hier die Datensicherheit zu bewerten, das heißt, inwieweit das vorhandene System<br />

technisch und organisatorisch gegen den Verlust der Vertraulichkeit, Integrität und Verfügbarkeit<br />

von Daten gesichert ist.<br />

Bei hohen Sicherheitsanforderungen ist zu prüfen, inwieweit die Forderungen des BSI<br />

(beispielsweise hinsichtlich Einsichtnahme in Quellcodes) erfüllt sind. Durch das Vorliegen<br />

des Source Codes ist es bei OSS grundsätzlich immer möglich, hohe Prüftiefen bei<br />

der Evaluierung/ Zertifizierung zu erreichen. Bei proprietärer Software ist der Hersteller<br />

vielfach nicht bereit, den Sourcecode zur Verfügung zu stellen, womit höhere Prüftiefen<br />

prinzipiell nicht erreichbar sind. In diesem Fall müsste bei nachträglicher Forderung einer<br />

höheren Prüftiefe das gesamte Verfahren ersetzt werden. Dieser Aspekt ist bei Forderungen<br />

des Datenschutzes und der Datensicherheit nach Zertifizierung zu berücksichtigen.<br />

Soweit sich bei der (Über-) Prüfung des vorhandenen IT-Systems Abweichungen zu Auflagen<br />

und Empfehlungen (beispielsweise den KBSt-Empfehlungen) ergeben haben<br />

(z. B. IT-Grundschutz-Kataloge beziehungsweise IT-Sicherheitshandbuch), sind diese<br />

hier zu berücksichtigen.<br />

Mit diesem Kriterium wird die Sicherheit bei der internen und vor allen Dingen bei der<br />

externen Kommunikation abgefragt. Wie wird die Datenübertragung gesichert? Werden<br />

sichere Protokolle eingesetzt? Existiert eine Übertragungssicherung, Zugriffskontrolle,<br />

und so weiter?<br />

Ist die Software prüfbar bzgl. IT-Sicherheit? Wie anfällig ist sie für externe Angriffe, Viren<br />

und so weiter? Ist die Software modular aufgebaut (Trennung von System und Anwendungsprogrammen,<br />

Minimierbarkeit von Anwendungsprogrammen auf notwendige Funktionen)?<br />

Existieren Zugangs- und Zugriffskontrollen?<br />

Existiert ein Sicherheitsmanagement? Gibt es ein Sicherheitskonzept, das allen Beteiligten<br />

bekannt ist? Existiert ein beschriebener Prozess zu Sicherheitsüberprüfung sowie<br />

deren Dokumentation?<br />

3.2.2 Erfüllung von Datenschutz und Datensicherheit<br />

0 2 4 6 8 10<br />

nicht<br />

beeinträchtigt<br />

kleine unbedeutende<br />

Mängel<br />

geringe Mängel,<br />

aber<br />

anderweitig<br />

abzustellen<br />

Seite 125<br />

geringe Mängel,<br />

mittelfristiger<br />

Änderungsbedarf<br />

Datenschutz<br />

und Datensicherheitmangelhafteingehalten<br />

Tabelle 22: Punktbewertungsskala Erfüllung von Datenschutz/ -sicherheit<br />

gravierende<br />

Verstöße, Anpassungen<br />

dringlich


Kriterium 3.2.3 Ordnungsmäßigkeit Arbeitsabläufe<br />

Arbeitsabläufe beziehungsweise Geschäftsprozesse und die eingebundenen IT-<br />

Maßnahmen müssen bestimmte Verfahrensrichtlinien - beispielsweise nach GGO - einhalten.<br />

Diese Richtlinien ergänzen bestehende gesetzliche Regelungen (z. B. bezogen<br />

auf Nachprüfbarkeit, Aktenmäßigkeit beziehungsweise Dokumentation). Das Kriterium<br />

drückt aus, in welchem Umfang diese (internen) Richtlinien durch das vorhandene IT-<br />

System eingehalten sind. Als Bewertungshilfe kann die Fehlerquote des Altsystems dienen.<br />

Darüber hinaus gilt die Ordnungsmäßigkeit der Arbeitsabläufe auch als wesentliche Voraussetzung<br />

für die Reduktion von Korruption im Amt. Gewährleistet das bestehende<br />

System die Ordnungsmäßigkeit der Arbeitsabläufe nicht, besteht Investitionsbedarf in ein<br />

neues System, welches die Ordnungsmäßigkeit wiederherzustellen vermag und so möglichen<br />

Missbrauch begrenzt.<br />

3.2.3 Ordnungsmäßigkeit der Arbeitsabläufe<br />

0 2 4 6 8 10<br />

nicht von Bedeutung<br />

Kleine Beeinträchtigungen <br />

Ordnungsmäßigkeitgegeben,<br />

aber aufwendigesVerfahren<br />

Seite 126<br />

Ordnungsmäßigkeitzeitweisebeeinträchtigt<br />

und aufwendigesVerfahren <br />

Ordnungsmäßigkeitdauerhaftbeeinträchtigt<br />

und aufwendigesVerfahren<br />

Tabelle 23: Punktbewertungsskala Ordnungsmäßigkeit der Arbeitsabläufe<br />

Kriterium 3.2.3 Erfüllung von Auflagen und Empfehlungen<br />

Ordnungsmäßigkeit<br />

nicht<br />

gegeben<br />

Weiterhin von Bedeutung ist auch die Bewertung, ob und beziehungsweise in welchem<br />

Umfang derzeit lizenzkonformes Arbeiten in der Behörde sichergestellt ist: so unterliegt<br />

beispielsweise proprietäre Software Lizenz- beziehungsweise Nutzungseinschränkungen,<br />

die je nach Produkt beziehungsweise Vertragsbedingungen unterschiedlich ausfallen<br />

und deren Einhaltung besondere Sorgfalt erfordert.<br />

3.2.4 Erfüllung sonstiger Auflagen und Empfehlungen<br />

0 2 4 6 8 10<br />

keine Abweichungen<br />

geringe, nicht<br />

substanziellen<br />

Abweichungen<br />

geringe Abweichungen,<br />

sind<br />

aber auch ohne<br />

Neusystem zu<br />

beheben<br />

zahlreiche Abweichungen<br />

Verfahren insgesamtverbesserungsbedürftig,<br />

da substanzielleAbweichungen<br />

vorhanden<br />

Tabelle 24: Punktbewertungsskala Erfüllung von Auflagen und Empfehlungen<br />

Verfahren widersprichtkonkreten<br />

Auflagen<br />

oder Empfehlungen


5.3.2 Qualitativ-strategische Kriterien<br />

In dieser Gruppe des Kriterienkataloges sind die qualitativ-strategischen Kriterien von IT-<br />

Maßnahmen aufgeführt. Sie beziehen sich auf die Priorität der IT-Maßnahme, auf behördeninterne<br />

Qualitätsverbesserungen und auf die Wirkung auf Mitarbeiter der öffentlichen<br />

Verwaltung. Wie in der WiBe D, werden auch in der WiBe Q die Kriterien qualitativ<br />

in einer Punkteskala mit Begründung bewertet.<br />

Kriteriengruppe 4.1 Priorität der IT-Maßnahme<br />

Kriterium 4.1.1 Bedeutung innerhalb IT- Rahmenkonzept<br />

Mit diesem Kriterium wird die IT-Maßnahme qualitativ eingeordnet hinsichtlich ihres Beitrages<br />

zur Verwirklichung des geltenden IT-Rahmenkonzeptes (und zwar letztlich im<br />

Vergleich zu anderen laufenden beziehungsweise geplanten IT-Maßnahmen). Die Bedeutung<br />

der IT-Maßnahme als Voraussetzung für andere, folgende Maßnahmen ist zu<br />

begründen.<br />

Dieses Kriterium ist ein „Quasi-MUSS-Kriterium“: wenn hier die Bewertung „10<br />

Punkte― vorzunehmen ist, muss die IT-Maßnahme grundsätzlich durchgeführt werden.<br />

Eine solche Bewertung setzt voraus, dass die betroffene IT-Maßnahme unabdingbare<br />

Voraussetzung für die Realisierung eines Großteils der Planungen des IT-<br />

Rahmenkonzeptes darstellt. Daraus folgt, dass nur wenige IT-Maßnahmen einer Behörde<br />

die Punktzahl 10 erzielen können und zwar nur jene IT-Maßnahmen mit höchster<br />

Priorität. Es empfiehlt sich daher, alle IT-Maßnahmen einer Behörde zu priorisieren<br />

und dies als Grundlage für die Begründung der Punktvergabe in diesem Kriterium<br />

zu verwenden.<br />

4.1.1 Bedeutung innerhalb des IT-Rahmenkonzeptes<br />

0 2 4 6 8 10<br />

nicht von Bedeutung<br />

untergeordnete<br />

Bedeutung<br />

wichtige IT-<br />

Maßnahme,<br />

zeitlich nicht<br />

dringend<br />

Seite 127<br />

Realisation ist<br />

Vorbedingung<br />

für weitere<br />

wichtige IT-<br />

Maßnahmen<br />

bedeutendes<br />

zeitkritische IT-<br />

Maßnahme<br />

Tabelle 25: Punktbewertungsskala Bedeutung innerhalb IT- Rahmenkonzept<br />

Schlüsselstellung<br />

im IT-<br />

Rahmenkonzept<br />

Kriterium 4.1.2 Einpassung in den IT-Ausbau der Bundesverwaltung insgesamt<br />

Mit diesem Kriterium ist zu bewerten, ob sich die IT-Maßnahme in die Informationsmanagement-Strategie<br />

der Bundesregierung einpasst, das heißt, die behördenübergreifende<br />

Bedeutung der IT-Maßnahme ist hier auszuformulieren: hier sind alle Überlegungen<br />

einzubringen, die auf einen gemeinsamen (integrativen, standardsetzenden beziehungsweise<br />

standardgemäßen) Ausbau der Informationstechnik abzielen.


4.1.2 Einpassung in den IT-Ausbau<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positive<br />

Auswirkung<br />

geringfügige<br />

Förderung des<br />

IT-Ausbaus<br />

weitergehende<br />

Förderung des<br />

IT-Ausbaus<br />

Seite 128<br />

IT-Maßnahme<br />

ist wichtig, aber<br />

nicht zeitkritisch<br />

IT-Maßnahme<br />

ist wichtig und<br />

zeitkritisch<br />

IT-Maßnahme<br />

ist zwingend für<br />

die IT-<br />

Integration in<br />

der Bundesverwaltung<br />

Tabelle 26: Punktbewertungsskala Einpassung in den IT-Ausbau der Bundesverwaltung<br />

insgesamt<br />

Kriterium 4.1.3 Folgewirkung für Kommunikationspartner<br />

Mit diesem Kriterium wird die behördenübergreifende Verknüpfbarkeit (Interoperabilität)<br />

der IT-Maßnahme bewertet. Der Einstieg in OSS-Lösungen kann andere Standardformate<br />

für den Datenaustausch erbringen beziehungsweise andere Aufbereitungsmechanismen<br />

für die Weiterverwendung erforderlich machen. Dieser Effekt kann innerhalb eines<br />

Ressorts (speziell im Verhältnis Ministerium zu Geschäftsbereich), aber auch zwischen<br />

Ressorts bedeutsam sein. Je unmerklicher dabei die Folgewirkungen für andere Kommunikationspartner<br />

(auch außerhalb der öffentlichen Verwaltung) sind, desto höher ist<br />

die Qualität der Lösung zu bewerten.<br />

Des Weiteren sind unter diesem Kriterium auch Wirkungen auf Dritte außerhalb der eigenen<br />

Verwaltung (Bürger, Unternehmen, andere Verwaltungen) zu fassen. So ist z. B.<br />

darauf zu achten, dass Bürger, Unternehmen und andere Verwaltungen bei der Nutzung<br />

von Online-Dienstleistungen nicht zum Erwerb bestimmter Softwareprodukte (Browser,<br />

Textverarbeitungsprogramme) gezwungen werden. Ist der Zugang zu solchen Onlineangeboten<br />

nur mit einer bestimmten (kostenpflichtigen) Software möglich, würde dies die<br />

Akzeptanz bei diesen Dritten und damit mögliche Synergieeffekte in der eigenen Verwaltung<br />

verringern.<br />

4.1.3 Folgewirkungen für den Kommunikationspartner<br />

0 2 4 6 8 10<br />

keine positiven<br />

Wirkungen<br />

behördenübergreifend<br />

keine für den<br />

Anwender<br />

merkbaren<br />

Verbesserungen<br />

im<br />

Informationsaustausch<br />

zu erwarten<br />

punktuelle Verbesserungen<br />

im<br />

behördenübergreifendenInformationsaustausch<br />

zu<br />

erwarten<br />

erhebliche<br />

Verbesserung<br />

bezogen auf<br />

einen Vorgangstypus<br />

sind<br />

erreichbar<br />

erhebliche<br />

Verbesserung<br />

bezogen auf<br />

mehrere Vorgangstypen<br />

sind<br />

erreichbar<br />

Tabelle 27: Punktbewertungsskala Folgewirkung für Kommunikationspartner<br />

erhebliche<br />

Verbesserung<br />

durch behördenübergreifendeVereinheitlichung<br />

von<br />

Datenstrukturen<br />

und Verfahrensroutinen


Kriterium 4.1.4 Pilot-Projekt-Charakter des IT-Investitionsvorhabens<br />

Die erstmalige Entwicklung und der Einsatz innovativer Verfahren im Rahmen von Migrationsprojekten<br />

können für die investierende Verwaltungseinheit im Sinne der WiBe KN<br />

monetär unwirtschaftlich sein. Gleichzeitig kann dieses Verfahren aber für Folgevorhaben<br />

wichtige Erkenntnisse liefern, welche zu Einsparungen von Entwicklungskosten in<br />

anderen Verwaltungseinheiten führen. Im Idealfall sollten die entwickelten Migrationsverfahren<br />

und –lösungen auf andere Verwaltungseinheiten des Bundes übertragbar sein<br />

(Einer für Alle – Prinzip). 95<br />

Im Mittelpunkt dieses Kriteriums steht sowohl der Pilotierungscharakter des Migrationsprojektes,<br />

als auch die Nachnutzbarkeit der gesamten Projektergebnisse für Dritte.<br />

Im Folgenden sind einige Kriterien gelistet, welche zeigen, ob die Ergebnisse der Migrationsmaßnahme<br />

für eine Nachnutzung durch andere Projekte aufbereitet wurden beziehungsweise<br />

geeignet sind:<br />

� Güte und Umfang der Ergebnisdokumentation,<br />

� Projektaufbau und –vorgehensweise (bspw. nach V-Modell),<br />

� Grad der erforderlichen Modifikationen (Anpassungsaufwand),<br />

� Möglichkeiten zur Kooperationen bei Implementierung und Weiterentwicklung.<br />

Der strategische Rang ist umso höher zu bewerten: je weiter und flächendeckender das<br />

Einsatzspektrum der innovativen Lösung in der Bundesverwaltung anzusetzen und je<br />

schlüssiger das Nachnutzungskonzept einer Migrationsmaßnahme ist.<br />

4.1.4 Pilot-Projekt-Charakter der IT-Maßnahme<br />

0 2 4 6 8 10<br />

nicht von Bedeutung<br />

Ersteinsatz<br />

einer Standardlösung<br />

Ersteinsatz<br />

einer Eigenentwicklung,weitereAusbaustufen<br />

geplant<br />

Seite 129<br />

behördeninternes<br />

Pilotprojekt,<br />

keine Standardlösung,Folgeinvestitionen<br />

Pilotprojekt mit<br />

weiteren Einsatzfeldernbehördenübergreifend<br />

Pilotprojekt mit<br />

flächendeckenderEinsatzabsichtbehördenübergreifend<br />

(Einer für Alle<br />

- Prinzip)<br />

Tabelle 28: Punktbewertungsskala Pilot-Projekt-Charakter des IT-Investitionsvorhabens<br />

Kriterium 4.1.5 Nachnutzung bereits vorhandener Technologien<br />

Dieses Kriterium bewertet, ob in der geplanten IT-Maßnahme technische Lösungen (Verfahren)<br />

zum Einsatz kommen, die sich bereits in anderen Verwaltungseinheiten des<br />

Bundes bewährt haben. Die Nachnutzung bereits vorhandener technischer Lösungen<br />

wirkt sich zumeist nicht nur minimierend auf die Höhe der Investitionskosten aus, son-<br />

95 Die Nachnutzung von Projektergebnissen für vergleichbare Projekte ist ein Ziel öffentlicher<br />

Investition (sie hierzu insbesondere die Kieler Beschlüsse).


dern bewirkt darüber hinaus, dass sich innerhalb der Verwaltung technologische Standards<br />

etablieren und somit Insellösungen vermieden werden.<br />

Achtung: Monetär bewertbare Ansätze der Nachnutzung bereits vorhandener Technologie<br />

werden bereits in der WiBe KN bewertet. Es gilt in diesem Kriterium Aspekte zu erfassen,<br />

die nur qualitativ bewertbar sind.<br />

4.1.5 Nachnutzung bereits vorhandener Technologien<br />

0 2 4 6 8 10<br />

Übernahme<br />

eines Verfahrens<br />

nicht möglich<br />

Übernahme<br />

eines Verfahrens:<br />

großer<br />

Anpassungsaufwand,<br />

besitzt geringe<br />

Verbreitung<br />

Übernahme<br />

eines Verfahrens:<br />

mittlerer<br />

Anpassungsaufwand,<br />

besitzt<br />

geringe Verbreitung<br />

Seite 130<br />

Übernahme<br />

eines Verfahrens:<br />

geringer<br />

Anpassungsaufwand,<br />

besitzt geringe<br />

Verbreitung<br />

Übernahme<br />

eines Verfahrens:<br />

mittlerer<br />

Anpassungsaufwand,<br />

besitzt große<br />

Verbreitung<br />

Übernahme<br />

eines Verfahrens:<br />

geringer<br />

Anpassungsaufwand,<br />

besitzt<br />

große Verbreitung<br />

Tabelle 29: Punktbewertungsskala Nachnutzung bereits vorhandener Technologien<br />

Kriterium 4.1.6 Plattform-/Herstellerunabhängigkeit<br />

Mit diesem Kriterium bewerten Sie, inwieweit die angestrebte Lösung es erlaubt, (auch)<br />

künftig einerseits auf unterschiedlichen Plattformen eingesetzt werden zu können und<br />

andererseits weitere Ausbaustufen der IT-Architektur 96 möglichst frei und ohne Vorgaben<br />

des Hard- oder Softwareherstellers bzw. bestehender oder zukünftig geplanter Plattformen<br />

gestalten und auf verschiedene Anbieter zurückgreifen zu können.<br />

Plattformunabhängige Lösungen stellen sich mit Blick auf die Einführung aus monetärer<br />

Sicht häufig weniger günstig dar als vergleichbare Lösungen, die auf proprietäre Plattformen<br />

festgelegt sind. Plattformunabhängigkeit bezieht sich dabei auf unterschiedliche<br />

Typen von Plattformen:.<br />

� Hardware<br />

� Betriebssystem<br />

� Infrastruktursoftware (z.B. Datenbank Management System)<br />

� Standardsoftware (z.B. Officeanwendungen)<br />

� Entwicklungsplattformen<br />

Plattformunabhängigkeit verfolgt eher einen (mittel- bis) langfristigen strategischen Ansatz.<br />

Mit plattformunabhängigen Lösungen kann sowohl der Produktlebenszyklus als<br />

auch die Einsatzdauer verlängert werden. Damit überwiegen dann die wirtschaftlichen<br />

Vorteile einer plattformunabhängigen Lösung in der Zukunft, wenn einerseits eine Überarbeitung<br />

oder gar der Austausch der Lösung nicht mehr nur durch den Austausch einer<br />

Plattform notwendig wird und andererseits die Plattform bei Bedarf (z.B. aus wirtschaftli-<br />

96 Architektur einer Behörde über die Gesamtheit ihrer Anwendungen.


chen Gründen) ausgewechselt werden kann, ohne dass gleichzeitig alle darauf aufsetzenden<br />

Lösungen ausgewechselt werden müssen.<br />

Umso geringer der Aufwand ist, mit dem eine Lösung zwischen Plattformen gewechselt<br />

werden kann, desto höher der Grad der Plattformunabhängigkeit und in der Regel auch<br />

höher der Grad der Herstellerunabhängigkeit (sofern es unterschiedliche Anbieter von<br />

Plattformen gibt).<br />

4.1.6 Plattform-/Herstellerunabhängigkeit<br />

0 2 4 6 8 10<br />

Nicht von Bedeutung<br />

bzw.<br />

keine ersichtlichen<br />

Wirkungen<br />

zu erwarten<br />

Geringfügige<br />

qualitative Verbesserungen<br />

ohne strategisches<br />

Gewicht<br />

(z.B. Lösung<br />

steht in mehreren<br />

<strong>Version</strong>en<br />

für unterschiedlichePlattformen<br />

zur Verfügung(Pseudounabhängigkeit))<br />

Software kann<br />

mit geringfügigem<br />

Aufwand<br />

auf andere<br />

Plattformen<br />

portiert werden.<br />

Vorhandene<br />

Hardware/ Peripherie<br />

kann<br />

auch weiterhin<br />

in den geplanten<br />

Fristen<br />

eingesetzt werden.<br />

Seite 131<br />

Plattform-/<br />

Herstellerunabhängigkeit<br />

ist<br />

gewährleistet<br />

und die angestrebte<br />

Lösung<br />

trägt zur Erweiterung<br />

der Aus-<br />

und Umbauoptionen<br />

bei.<br />

Plattform-/<br />

Herstellerunabhängigkeit<br />

und<br />

Investitionsschutz<br />

sind<br />

gewährleistet,<br />

Vorgaben aus<br />

der IT-Architektur<br />

97 werden<br />

eingehalten.<br />

Tabelle 30: Punktbewertungsskala Plattform-/Herstellerunabhängigkeit<br />

Kriteriengruppe 4.2<br />

Qualitätszuwachs bei Erledigung von Fachaufgaben<br />

Weitgehende<br />

Gestaltungsautonomieverbunden<br />

mit der<br />

Weiternutzung<br />

vorhandener<br />

Hard- und Software.<br />

Kriterium 4.2.1 Qualitätsverbesserung bei der Aufgabenabwicklung (Leistungssteigerung<br />

bei …)<br />

In diesem Kriterium werden die qualitativen Wirkungen, bezogen auf die Aufgabenabwicklung,<br />

bewertet. Insbesondere, ob der Arbeitsprozess als solcher und somit auch das<br />

Produkt an Qualität gewinnt. Zu beurteilende qualitative Verbesserungen können bspw.:<br />

eine Vereinfachung der behördeninternen Arbeitsabläufe sowie die Entlastung von Doppel-<br />

und Routinearbeiten sein. Aber auch aktuellere, redundanzfreiere und vollständigere<br />

Informationsquellen und eine geringere Fehlerquote durch interaktive Hilfefunktionen zur<br />

Anwenderunterstützung sind Beispiele für eine Bewertung. IT-Maßnahmen können weiterhin<br />

bei komplizierten Vorgängen hohe Qualitätsstandards (z. B. ein Qualitätsmanagement<br />

nach der ISO 9001 oder dem EFQM-Modell) einhalten/beachten helfen.<br />

Die Neuentwicklung von Fachanwendungen, die beispielsweise bei einer Umstellung auf<br />

OSS-Lösungen notwendig sein wird, kann so gleichzeitig einen Qualitätssprung in der<br />

Aufgabenabwicklung durch den Anwender möglich machen.<br />

97 Interne Vorgaben einer Behörde zur Umsetzung ihrer Architektur, Festlegung von Standards,<br />

Technologien, Schnittstellen usw.


Bei der Bewertung dieses Kriteriums sollte auf die Trennung der Wirkungen in Bezug auf<br />

formale (die Aufgabenabwicklung selbst verbessert sich) und materielle (das Ergebnis<br />

der Aufgabenabwicklung verbessert sich) Verbesserungen geachtet werden.<br />

4.2.1 Qualitätsverbesserung bei der Aufgabenabwicklung<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positiven<br />

Wirkungen<br />

geringe Verbesserung<br />

des<br />

formalen Arbeitsablaufs<br />

mittlere<br />

Verbesserung<br />

hinsichtlich<br />

des formalen<br />

Arbeitsablaufs<br />

Seite 132<br />

erhebliche<br />

Verbesserungen<br />

des formalenArbeitsablaufs<br />

erhebliche<br />

Verbesserung<br />

des materiellen<br />

Arbeitsergebnisses<br />

erhebliche<br />

Verbesserung<br />

des formalen<br />

Arbeitsablaufs<br />

und des materiellenArbeitsergebnisses<br />

Tabelle 31: Punktbewertungsskala Qualitätsverbesserung bei der Aufgabenabwicklung<br />

Kriterium 4.2.2 Beschleunigung von Arbeitsabläufen und -prozessen<br />

IT-Maßnahmen bewirken in der Regel eine qualitative Verbesserung der Aufgabenabwicklung<br />

in Form einer Beschleunigung der Arbeitsabläufe und -prozesse. Diese Effekte<br />

sind, soweit sie sich als kürzere Bearbeitungszeit berechnen lassen, bereits unter den<br />

laufenden Betriebsnutzen monetär in der WiBe KN erfasst.<br />

Die Beschleunigung von Arbeitsabläufen und -prozessen ermöglicht eine Senkung der<br />

Durchlaufzeit. Die Wirkungen entstehen durch elektronische Kommunikation, den Abbau<br />

von Medienbrüchen, den Zugriff auf aktuelle und allen Berechtigten zugängliche Datenbanken<br />

bis hin zum Wegfall einzelner Bearbeitungsstationen. Aktuellere, präzisere<br />

Kommunikationsformen verringern die Transport-, die Liege- und die Rüstzeiten.<br />

Die Einschätzung des qualitativen Kriteriums ergibt sich aus einer kritischen Bewertung<br />

der Verbesserungen, welche die IT-Maßnahmen dem amtsinternen Anwender bieten<br />

wird.<br />

4.2.2 Beschleunigung von Arbeitsabläufen und –prozessen<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positiven<br />

Wirkungen<br />

geringe Beschleunigung<br />

zu<br />

erwarten, aber<br />

Effekte nicht<br />

einschätzbar<br />

Verkürzung bis<br />

zu 10% der<br />

bisherigen<br />

Durchlaufzeit<br />

möglich<br />

Verkürzung bis<br />

zu 30% der<br />

bisherigen<br />

Durchlaufzeit<br />

möglich<br />

Verkürzung bis<br />

zu 50% der<br />

bisherigen<br />

Durchlaufzeit<br />

möglich<br />

Verkürzung<br />

mehr als 70%<br />

der bisherigen<br />

Durchlaufzeit<br />

möglich<br />

Tabelle 32: Punktbewertungsskala Beschleunigung von Arbeitsabläufen und -prozessen<br />

Kriterium 4.2.3 Einheitliches Verwaltungshandeln<br />

Das Kriterium stellt darauf ab, inwieweit durch die neue IT-Maßnahme bislang unterschiedliche<br />

Vorgangsbearbeitungen (sowohl formal als auch materiell) zukünftig einheit-


lichen Standards folgen. Dies kann sich ergeben aus dem jeweils aktuellen Zugriff auf<br />

gleich strukturierte Daten und durch die organisatorische und informationstechnische<br />

Harmonisierung von Verwaltungsvorgängen. In jedem Fall ist bei diesem Kriterium die<br />

Außenwirkung zu beachten (im Sinne von „wie wirkt das Verfahren auf unterschiedliche<br />

externe Adressaten?―).<br />

4.2.3 Einheitliches Verwaltungshandeln<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positiven<br />

Wirkungen<br />

keine spürbare<br />

Reduzierung<br />

von Sonderfällen<br />

zu erwarten<br />

punktuelle Verbesserung<br />

behördenintern<br />

Seite 133<br />

erhebliche<br />

Verbesserung<br />

bezogen auf<br />

einen Vorgangstypus<br />

erhebliche<br />

Verbesserung<br />

durch behördeninterneVereinheitlichung<br />

von<br />

Datenstrukturen<br />

und Verfahrensroutinen<br />

Tabelle 33: Punktbewertungsskala Einheitliches Verwaltungshandeln<br />

erhebliche<br />

Verbesserung<br />

durch behördenübergreifendeVereinheitlichung<br />

von<br />

Datenstrukturen<br />

und Verfahren<br />

Kriterium 4.2.4 Erhöhung von Verständlichkeit und Nachvollziehbarkeit<br />

Dieses Kriterium bewertet den Beitrag der IT-Lösung zur Erhöhung der Verständlichkeit<br />

und Nachvollziehbarkeit sowohl für interne als auch externe Adressaten. Ein wesentlicher<br />

Aspekt kann z. B. die Informationsbereitstellung, die Informationsvermittlung sowie<br />

die Transparenz von (Management)-Entscheidungen sein.<br />

4.2.4 Erhöhung von Verständlichkeit und Nachvollziehbarkeit<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positiven<br />

Wirkungen<br />

nur geringfügige<br />

Änderung zum<br />

derzeitigen Ist-<br />

Zustand<br />

verschiedene,<br />

kleinere Mängel<br />

behoben<br />

wesentliche<br />

bisherige Mängel<br />

abgestellt<br />

qualitativ unmittelbarersichtliche<br />

Erhöhung<br />

für einzelne<br />

Adressaten<br />

Tabelle 34: Punktbewertungsskala Verständlichkeit und Nachvollziehbarkeit<br />

Kriterium 4.2.5 Imageverbesserung<br />

qualitativ unmittelbarersichtliche,bedeutsame<br />

Erhöhung<br />

für zahlreiche<br />

Adressaten<br />

Das Image der öffentlichen Verwaltung ist in manchen Bereichen eher negativ geprägt<br />

(„Bürokratie―). Eine Imageverbesserung kann erfolgen durch verbesserte Dienstleistungen<br />

(wie oben bewertet) und durch eine wirksamere Vermittlung dieser Leistungssteigerungen<br />

an die externen Adressaten. Soweit die IT-Maßnahme dazu (trotz aller subjektiven<br />

Einschätzung und vieler Unwägbarkeiten) einen positiven Beitrag leisten kann, ist<br />

dieser Effekt hier einzubringen.


4.2.5 Imageverbesserung<br />

0 2 4 6 8 10<br />

nicht von Bedeutungbeziehungsweise<br />

keine positiven<br />

Wirkungen<br />

Kurzfristig keine<br />

wahrnehmbare<br />

Änderung<br />

positive Wirkung<br />

bei einzelnen<br />

Adressaten<br />

zu erwarten<br />

Seite 134<br />

positive Wirkung<br />

mittelfristig<br />

bei vielen Adressaten<br />

nachhaltig positive<br />

Wirkung bei<br />

einigen Adressaten<br />

Tabelle 35: Punktbewertungsskala Imageverbesserung<br />

Kriteriengruppe 4.3 Mitarbeiterbezogene Effekte<br />

Kriterium 4.3.1 Attraktivität der Arbeitsbedingungen<br />

nachhaltig positive<br />

Wirkung bei<br />

vielen Adressaten<br />

Die Einführung neuer IT-Lösungen verändert regelmäßig bisherige Arbeitsabläufe und ist<br />

auch mit dem Einsatz neuer Hard- und Software verbunden. Dies steigert für den Anwender<br />

gegebenenfalls die (subjektiv erlebte) Attraktivität seines Arbeitsplatzes, was<br />

auch durch eine höhere Qualifikation via Einsatz moderner Technik erreicht werden<br />

kann. Eine positive Beeinflussung der Arbeitsplatz-Attraktivität wird sich tendenziell fördernd<br />

auf die Arbeitszufriedenheit und damit auch auf die Produktivität auswirken.<br />

Bei OSS-Lösungen im Client-Bereich ist dieses Kriterium zu prüfen. Der Umstieg auf<br />

eine neue, andersartige Arbeitsoberfläche kann im ungünstigen Fall zur Verunsicherung<br />

und zu Ängsten bis hin zu Widerständen führen. Diesen hinlänglich bekannten Effekten,<br />

die sich aus der Einführung von Neuerungen ergeben können, stehen andererseits positive<br />

Wirkungen gegenüber: OSS-Lösungen erlauben dem Anwender auch die Nutzung<br />

im privaten Bereich ohne rechtliche und steuerliche Probleme - dies trägt zur Attraktivität<br />

der Arbeitsbedingungen bei.<br />

4.3.1 Attraktivität der Arbeitsbedingungen<br />

0 2 4 6 8 10<br />

nicht verbessert/<br />

ist nicht<br />

von Bedeutung<br />

leichte Verbesserung<br />

mittlere Verbesserung<br />

in wenigen<br />

Bereichen<br />

mittlere Verbesserung<br />

in mehreren<br />

Bereichen<br />

erhebliche<br />

Verbesserung<br />

in wenigen<br />

Bereichen<br />

Tabelle 36: Punktbewertungsskala Attraktivität der Arbeitsbedingungen<br />

Kriterium 4.3.2 Qualifikationssicherung/ -erweiterung<br />

erhebliche<br />

Verbesserung<br />

in mehreren<br />

Bereichen<br />

Die Einführung neuer IT-Lösungen kann (mittelfristig) die Qualifikation der betroffenen<br />

Mitarbeiter in zweierlei Weise beeinflussen. Einerseits führen IT-Lösungen zum Erwerb<br />

von Fertigkeiten im Umgang mit IT-Systemen: die Einführung solcher Lösungen trägt<br />

dann zur indirekten Qualifikationserweiterung der Anwender bei. Andererseits kann mit<br />

dem Einsatz neuer IT-Lösungen auch die Übernahme anspruchsvollerer, umfassenderer


Aufgabenbereiche verbunden sein. Zusammen mit der Anwenderschulung resultiert daraus<br />

eine Qualifikationserweiterung im direkten fachlichen Aufgabenbereich.<br />

4.3.2 Qualifikationssicherung/-erweiterung<br />

0 2 4 6 8 10<br />

nicht beeinflusst<br />

beziehungsweise<br />

keine<br />

positiven<br />

Wirkungen<br />

6 Fazit<br />

Geringe<br />

Effekte hinsichtlich<br />

IT-<br />

Handhabung zu<br />

erwarten<br />

Erhebliche<br />

Effekte bei IT-<br />

Handhabung zu<br />

erwarten<br />

Seite 135<br />

erhebliche<br />

Effekte bei IT-<br />

Handhabung<br />

und aufgabenbezogeneWeiterentwicklung<br />

deutliche Erweiterung<br />

der aufgabenbezogenenQualifikation<br />

Tabelle 37: Punktbewertungsskala Qualifikationssicherung/ -erweiterung<br />

Erhebliche<br />

fachbezogene<br />

Höherqualifikation<br />

Es sei abschließend an dieser Stelle darauf hingewiesen, dass sich pauschale Empfehlungen<br />

für das eine oder andere Migrationsszenario aus der hier vorgestellten Methodik<br />

der Wirtschaftlichkeitsbetrachtung nicht belastbar ableiten lassen. Die Praxis zeigt sehr<br />

unterschiedliche Anforderungen bei vermeintlich gleichen Ausgangsbedingungen, sodass<br />

allgemein verbindliche Aussagen hier keinen Sinn machen.<br />

Es ergibt sich also die Notwendigkeit, jedes Migrationsprojekt nach den vorgeschlagenen<br />

Methodiken zu planen und die Wirtschaftlichkeit entsprechend zu berechnen.<br />

Die im Kapitel 5.1.1 „Aufbau und Vorgehensweise der WiBe für Migrationen― erläuterte<br />

Vorgehensweise bei Migrationen und insbesondere auf die "Vorgehensweise im Rahmen<br />

der monetären und nicht monetären WiBe" (Kapitel I.C 5.1.1.3) gibt dem Anwender<br />

einen Einstieg in die Vorüberlegungen zur Wirtschaftlichkeitsbetrachtung für Migrationen.<br />

Hierbei handelt es sich um:<br />

� Fragen zur Ist-Situation<br />

Hiermit wird die Ausgangssituation für die Migration beurteilt. Anhand der dort<br />

aufgeführten Fragen wird ein konkreter Handlungsbedarf abgeleitet, der in eine<br />

Migration münden kann, für die eine WiBe zu erstellen ist. Mit der kommentierten<br />

und dokumentierten Beantwortung dieser Fragen wird eine solide Basis für die<br />

Begründung der Migration gelegt (Beantwortung der Frage: „Warum soll migriert<br />

werden?―).<br />

� Fragen zur Soll-Situation<br />

Mit diesen Fragestellungen können die gewählten Migrationsalternativen schon<br />

im Vorfeld verifiziert werden. Die fokussierte Migrationsalternative ist hinreichend<br />

zu kommentieren und begründen. Damit entsteht eine Dokumentation, die wiederum<br />

die Grundlage für die Begründung der Migrationsalternative liefert (Beantwortung<br />

der Frage: „Wohin soll migriert werden?―).


� Rahmenbedingungen<br />

Diese Informationen helfen, den Rahmen abzustecken und gewisse Aktivitäten<br />

schon im Vorfeld entsprechend zu kanalisieren (z. B. Prozessanalyse in eigenständigem<br />

Projekt).<br />

Hat der Anwender mit den oben aufgeführten Aktivitäten seinen Migrationsbedarf und<br />

die Migrationsalternative verifiziert, kann er die Wirtschaftlichkeitsbetrachtung erstellen.<br />

Dazu empfiehlt sich eine schrittweise Vorgehensweise, die sich an folgenden Kapiteln<br />

ausrichtet:<br />

� Grundsätzliche Überlegungen zur Kostenerhebung (Kapitel I.C 3.3)<br />

Hier werden Informationen gegeben zu möglichen Migrationsphasen, dem Personalbedarf<br />

bei der Migration sowie der Eruierung der Soft- und Hardwarekosten.<br />

Diese stellen die Grundlage dar für die spätere Berechnung der Personal- und<br />

Technikkosten für den Migrationsprozess und den anschließenden Betrieb des<br />

migrierten Szenarios.<br />

� Analyse der Ausgangssituation (Kapitel I.C 4)<br />

Zur Abschätzung der mengenmäßigen Aufwände ist eine Erhebung der Ist-<br />

Situation des zu migrierenden Szenarios erforderlich. Die Mengen helfen später<br />

die neue Soll-Situation zum einen kostenmäßig einzuschätzen und zum anderen<br />

erzielbare Ersparnisse oder Optimierungen zu lokalisieren.<br />

� Monetäre Wirtschaftlichkeit (Kapitel I.C 5.2)<br />

Hier erfolgt nun die eigentliche Berechnung der Wirtschaftlichkeit. Im monetären<br />

Bereich werden über die Bereiche der Einführung (also das Migrationsprojekt<br />

selbst) und den Betrieb Kennzahlen für Kosten und Nutzen ermittelt. Eine positive<br />

Kennzahl an dieser Stelle ergibt schon einen sehr hohen Befürwortungsfaktor<br />

für die Migration.<br />

� Erweiterte Wirtschaftlichkeit (Kapitel. I.C 3.3)<br />

Mit der erweiterten Wirtschaftlichkeit werden die qualitativen Faktoren bewertet.<br />

Dies geschieht mit Nutzwertanalysen, in denen ein ähnlicher Fragenkatalog wie<br />

im Kap. 1.4.1 abgebildet zu bearbeiten ist. Als Ergebnis werden zwei quantifizierte<br />

Kennzahlen errechnet, die mit jeweiligen hohen Werten die Migration ersatzweise<br />

zur monetären Kennzahl befürworten (niedrige Werte sollten sich aufgrund<br />

der in den Vorüberlegungen getroffenen Entscheidungen nicht mehr einstellen).<br />

Seite 136


D Thema: Empfehlungen<br />

Die nachfolgenden Empfehlungen zur Migration von Software (von der Entscheidung bis<br />

zum Betrieb) enthalten zunächst einige allgemeine und grundsätzliche Empfehlungen,<br />

die sich aus den im Leitfaden betrachteten Weiterentwicklungen am Softwaremarkt ergeben.<br />

Empfehlungen, die schon in Vorgängerversionen gegeben wurden und die nach<br />

wie vor Bestand haben, werden auch weiterhin nachfolgend beschrieben. Hierzu gehören<br />

unter anderem die empfohlenen Vorgehensmodelle, nach denen Migrationen durchgeführt<br />

werden können sowie deren bedarfsgerechten Verwendungsmöglichkeiten. Ergänzend<br />

benennen die Autoren des Leitfadens die aus ihrer Sicht wesentlichen Punkte,<br />

die für eine erfolgreiche Durchführung von Migrationsprojekten wichtig sind.<br />

1 Grundsätzliche Empfehlungen<br />

An den grundsätzlichen Empfehlungen des <strong>Migrationsleitfaden</strong>s hat sich seit der ersten<br />

<strong>Version</strong> nichts geändert. Es ist vielmehr so, dass die Gültigkeit der zu Beginn ausgesprochenen<br />

Empfehlungen heute noch sehr viel stärker zu unterstreichen ist.<br />

Die Machbarkeit eines Wechsels von proprietären Lösungen hin zu OSS-basierten Lösungen,<br />

sei es punktuell oder vollständig, ist noch viel deutlicher gegeben, als dies<br />

schon bei der Veröffentlichung des ersten <strong>Migrationsleitfaden</strong>s der Fall war. Unterstützt<br />

wird dies durch eine weiter gestiegene Produktvielfalt, insbesondere bei den quelloffenen<br />

Lösungen und einer weitergehenden Anpassung des Funktionsumfangs an proprietäre<br />

Lösungen.<br />

Insbesondere (jedoch nicht ausschließlich) hat durch die Verabschiedung und laufende<br />

Fortschreibung von SAGA mit der verwaltungseigenen Hausstandardisierung die Investitionssicherheit<br />

für kommerzielle Anbieter von Linux- und Open Source Software<br />

kontinuierlich zugenommen. Dies spiegelt sich in dem gewachsenen Softwareangebot<br />

wider.<br />

Daneben zeigt die zunehmende Abkehr von proprietären Schnittstellen, Formaten, Protokollen<br />

und die ständig wachsende Nutzung von Standards bei den Anbietern proprietärer<br />

Software, dass die Forderungen nach mehr Offenheit und die Verwendung von Standards<br />

durch maßgebliche Stellen in der öffentlichen Verwaltung und eine Reihe von IT-<br />

Unternehmen ihre Wirkung zeigen und der richtige Weg sind. Diesen Forderungen sollten<br />

sich die gesamte öffentliche Verwaltung und auch die Wirtschaft anschließen, damit<br />

Interoperabilität und Kommunikationsfähigkeit verbessert sowie die Kosten für den IT-<br />

Einsatz minimiert werden können. Denn es gilt unbestritten, dass mit einem wachsenden<br />

Grad der Standardisierung auf Basis von wirklicher offenen Standards die Wirtschaftlichkeit<br />

des Softwareeinsatzes gestärkt wird durch:<br />

� den einsetzenden beziehungsweise sich verstärkenden Wettbewerb von Produkten<br />

und Lösungen,<br />

� eine geringere Herstellerabhängigkeit und<br />

� einen insgesamt breiteren Dienstleistungsmarkt.<br />

Allgemeingültige Aussagen zu Wirtschaftlichkeitsvorteilen der unterschiedlichen Plattform-Strategien<br />

(siehe Abschnitt I.D 2.1) können allerdings aufgrund der inzwischen<br />

Seite 137


noch unterschiedlicheren Ausgangssituationen und Produktqualitäten nur selten getroffen<br />

werden. Es gilt jedoch, dass bis zu einem gewissen Punkt, wie aus den Betrachtungen<br />

im Abschnitt I.A 3 deutlich wird, mit wachsendem Grad der Integration der Produkte<br />

einer Plattform die Wirtschaftlichkeit aus mehreren Gründen zunimmt:<br />

� Durch höhere Produktivität, bei gut (ohne Systembrüche) aufeinander abgestimmten<br />

Produkten.<br />

� Durch die wachsende Wiederverwendbarkeit von Komponenten und Lösungen,<br />

die mit gleicher Middleware-Technologie entwickelt wurden.<br />

� Durch Einsparungen bei Vereinheitlichung von Beschaffungs- und Wartungsprozessen<br />

und gegebenenfalls -verträgen.<br />

Hinsichtlich der Wirtschaftlichkeit der alternativen Ziele, Windows-basierte Plattform versus<br />

Linux-basierte Plattform, lässt sich festhalten, dass sich eine Umstellung auf eine<br />

Linux-basierte Plattform heute mehr denn je als ökonomisch sinnvolle Variante gegenüber<br />

der Migration auf eine neue Microsoft-<strong>Version</strong> erweisen kann. Insbesondere der<br />

Wegfall oder die Reduzierung von Lizenzkosten kann in mehreren Fällen zu direkten<br />

(monetären) Einsparungen führen, beispielsweise bei:<br />

� serverseitiger Teilmigration, verbunden mit einer HW- und SW-Konsolidierung,<br />

insbesondere wenn Linux-Know-how und Linux-Systeme bereits vorhanden sind<br />

oder bei<br />

� clientseitiger Teilmigration von MS Office Produkten.<br />

Dies wird zusätzlich durch die größere Nähe von Open Source Software zu Standards<br />

und die ihr eigene Offenheit unterstützt. Insbesondere, wenn zur Beurteilung der Einsparungen<br />

die strategische Dimension herangezogen wird, auf die ausführlich im Thema<br />

Wirtschaftlichkeit von Softwaremigrationen eingegangen wird.<br />

Zusammenfassend können folgende Grundsatzempfehlungen formuliert werden:<br />

� Verankerung der Wirtschaftlichkeit als Leitbild der IT-Gesamtstrategie bei angemessener<br />

Berücksichtigung der Faktoren Innovation und Organisation.<br />

� Einsatz von offenen, von IT-Industrie und Open Source Community gleichermaßen<br />

ohne Einschränkung nutzbarer Standards als Grundlage zur Auswahl und Integration<br />

von Software-Produkten zur Vermeidung extremer Herstellerabhängigkeiten<br />

� Einbeziehung von Lösungen auf Basis von Open Source Software in die projektbezogenen<br />

Wirtschaftlichkeitsbetrachtungen im Rahmen der Migrationsentscheidung.<br />

(siehe hierzu Kapitel I.C)<br />

� Auch der Einsatz des Betriebssystems Linux als Basis der IT-Plattform ist für alle<br />

Anwendungsbereiche machbar und kann wirtschaftlich sein.<br />

� Berücksichtigung der vorangegangenen Grundsatzempfehlungen bei der Entscheidungsfindung<br />

für Migrationsvorhaben (siehe I.D 2.1).<br />

Auch wenn die Grundsatzempfehlungen nicht die Anforderungen und Rahmenbedingungen<br />

einer konkreten Ausgangssituation berücksichtigen können, soll an dieser Stelle auf<br />

detaillierte Empfehlungen unter Berücksichtigung unterschiedlicher Szenarien verzichtet<br />

Seite 138


werden. Diese können aufgrund der gewachsenen Vielfalt an unterschiedlichen Ausgangsszenarien<br />

und Produkten und Lösungen nur beispielhaft und punktuell sein und<br />

versperren womöglich den Blick auf die große Vielfalt an Möglichkeiten. Dafür werden<br />

konkretere Einsatzempfehlungen innerhalb der Module II, „Modul Infrastrukturen― und III,<br />

„Modul Anwendungen―, zu den betrachteten Produkten, Technologien und Migrationspfaden<br />

gegeben, dort wo dies sinnvoll ist.<br />

Weiterhin beinhalten die beiden nachfolgenden Themen „Rechtliche Aspekte von Softwaremigrationen―<br />

und „Wirtschaftlichkeitsbetrachtung von Softwaremigrationen― themenbezogene<br />

Hinweise und Empfehlungen.<br />

2 Vorgehensempfehlungen für Migrationsprojekte<br />

In den folgenden Abschnitten werden unterschiedliche Vorgehensmodelle zur Durchführung<br />

von Migrationen und Migrationsprojekten betrachtet.<br />

Migrationsprojekte sind in der Regel komplexe und vielschichtige Vorhaben. Dies betrifft<br />

sowohl vollständige Migrationen, das heißt die Migration der gesamten IT-Infrastruktur<br />

(Client- und Serverbereich) als auch Migrationen in Teilen, also die Migration eines klar<br />

abgegrenzten Bereiches der IT-Infrastruktur, zum Beispiel nur die Server, nur die Clients<br />

oder auch nur eine einzelne Anwendung. Im letzten Fall spricht man auch gelegentlich<br />

von punktueller Migration. Migrationsprojekte besitzen neben ihrer in der Regel vorhandenen<br />

Komplexität noch ein paar weitere Eigenschaften, auf die besondere Aufmerksamkeit<br />

gelegt werden sollte. Ansonsten ist ein Migrationsprojekt ein IT-Projekt wie jedes<br />

andere und es sind die entsprechenden Aufgabenfelder zu bearbeiten.<br />

Die nachfolgende Abbildung verdeutlicht einen typischen, mehrere Phasen umfassenden<br />

Migrationsprozess mit seinen Teilaspekten. Die Abbildung zeigt deutlich, dass eine Migration<br />

wesentlich mehr als nur die Umstellung der verwendeten Produkte und Technologien<br />

beinhaltet.<br />

PHASE 1<br />

PHASE 2<br />

PHASE 3<br />

PHASE 4<br />

Entscheidung<br />

Projekt-<br />

Planung<br />

Realisierung<br />

Einf.-Schulung<br />

Administratoren<br />

Anwender-<br />

Information<br />

Tests<br />

Seite 139<br />

Ist-<br />

Analyse<br />

Systemintegration<br />

Einf.-Schulung<br />

Anwender<br />

Feinkonzept<br />

Einführung<br />

Betrieb Wartung Support Schulungen<br />

Abbildung 22: Phasen eines Migrationsprozesses


Phase 1: Entscheidungsfindung<br />

Ausschlaggebend für eine Migrations- oder Weiterentwicklungsempfehlung sind die Ergebnisse<br />

einer langfristig angelegten Wirtschaftlichkeitsbetrachtung. Auch wenn aus<br />

technischer und juristischer Sicht der Weg für eine Komplett- oder Teilmigration ohne<br />

Einschränkungen möglich und gegeben ist, können wirtschaftliche Überlegungen ihn<br />

unter gegebenen Rahmenbedingungen als wenig sinnvoll erscheinen lassen. Aufgrund<br />

vielfältiger Zusammenhänge zwischen den einzelnen Komponenten und Systemen einer<br />

IT-Infrastruktur und der Anwendungswelt muss bei der Entscheidungsfindung daher<br />

stets eine langfristige Perspektive (siehe Kapitel I.C 2, Einleitung zu den Wirtschaftlichkeitsbetrachtungen)<br />

beachtet werden.<br />

Dabei unterscheidet sich die Betrachtung aus dem Blickwinkel der Einführung der Open<br />

Source Software nicht von den üblichen Beurteilungsanalysen in der IT, beispielsweise<br />

im Kontext der Hardware- oder Softwarekonsolidierung. Die üblicherweise in den Verwaltungen<br />

und der Wirtschaft gleichermaßen verfolgten Plattform-Strategien sind:<br />

� Auf Basis von offenen Standards und Spezifikationen eng aufeinander abgestimmte<br />

System- und Anwendungsplattformen, gegebenenfalls unter zusätzlichem<br />

Einsatz von spezialisierten Integrationsprodukten.<br />

� Auf Basis von herstellerspezifischen (nicht oder nur zum Teil offen gelegten<br />

Schnittstellen und Spezifikationen), eng aufeinander abgestimmte System- und<br />

Anwendungsplattformen, gegebenenfalls unter Einsatz von herstellereigenen Integrationsprodukten.<br />

� (historisch) Einsatz von Insel-Lösungen zur punktuellen Abdeckung von Fachverfahren<br />

und –anwendungen.<br />

Da die Open Source Software von ihrem Ursprung her häufig mit dem Einsatz von<br />

offenen Standards verbunden ist, bildet sie eine weitere besondere Variante hierzu.<br />

� Auf Basis von offenen Standards und Spezifikationen aufeinander abgestimmte<br />

System- und Anwendungsplattformen mit Nutzung des offenen (wieder verwendbaren)<br />

Source Codes.<br />

Während die Entscheidung zum punktuellen Einsatz eines weitverbreiteten quelloffenen<br />

Produktes wie beispielsweise des Webservers Apache in der Regel sehr pragmatisch<br />

und zügig entschieden werden kann, erfordert eine Entscheidung, beispielsweise zur<br />

flächendeckenden Einführung von Open Source Software und Ablösung proprietärer<br />

Inseln, aufgrund ihrer langfristigen Tragweite eine methodische Vorgehensweise. Deren<br />

elementaren Meilensteine sind:<br />

� Erarbeitung einer IT-Gesamtstrategie unter Berücksichtigung der bestehenden finanziellen,<br />

organisatorischen, innovationsbedingten und personellen Zielsetzungen.<br />

� Definition der künftigen Open-Source-Plattform-Strategie unter Berücksichtigung<br />

der langfristigen Wirtschaftlichkeitsberechnungen im Hinblick auf den Einsatz von<br />

freien und proprietären Standardprodukten.<br />

� Festlegung aller zur Sicherstellung der internen und externen Wiederverwendbarkeit<br />

sowie Interoperabilität notwendigen Standards.<br />

Seite 140


� Auswahl der Produkte zur Abdeckung der Anforderungen.<br />

� Definition des Vorhabens mit dem dazugehörigen Zeit- und Aktionsplan sowie Sicherstellung<br />

der Haushaltsfinanzierung.<br />

Bei diesem Prozess kann für die einzelnen Phasen auf bereits gängige Methoden und<br />

Werkzeuge aus der öffentlichen Verwaltung zurückgegriffen werden, wie die nachfolgende<br />

Abbildung darstellt.<br />

Strategie Plattform Standards Produkte Vorhaben<br />

IT-Strategie<br />

E-Government 2.0<br />

WiBe<br />

IT-Architekturkonzept<br />

Plattformunabhängigkeit<br />

von Fachanwendungen<br />

<strong>Migrationsleitfaden</strong><br />

SAGA<br />

Seite 141<br />

WiBe<br />

EVB-IT<br />

UfAB<br />

V-Modell<br />

Abbildung 23: Entscheidungsprozess zur Durchführung einer Migration<br />

Phase 2: Planung und Konzeption<br />

Die Phase der Entscheidung liefert letztendlich die grundlegende Zielrichtung der Migration,<br />

die konkrete Ausgestaltung erfolgt dann in der Phase 2, der konkreten Planung und<br />

Konzeption. Eine gute Planung und Vorbereitung der eigentlichen Migration ist um so<br />

wichtiger, umso größer das Migrationsvorhaben ist. Dies gilt vor allem dann, wenn ein<br />

großes Migrationsvorhaben auch noch in einem relativ kurzen, überschaubaren Zeitraum<br />

durchgeführt werden soll. In einem solchen Fall ist der Fokus insbesondere auf die Anwender<br />

zu richten, da diese hiervon besonders stark belastet werden.<br />

Je mehr Anwender von den Auswirkungen eines Migrationsprojektes betroffen sind und<br />

je stärker sich diese Auswirkungen im täglichen Umgang mit der IT bemerkbar machen,<br />

desto wichtiger ist eine frühzeitige aktive Einbeziehung und umfassende Information aller<br />

relevanten Gruppen (siehe auch Abschnitt I.D 2.3, „Checkliste der Erfolgsfaktoren―).<br />

Hierzu gehören neben den Anwendern und dem IT-Personal insbesondere auch die<br />

Interessenvertreter, wie Personalvertretung, Sicherheitsbeauftragte, Datenschutzbeauftragte<br />

und so weiter. Diese sind zwar in der Regel bei jedem IT-Projekt zu beteiligen, bei<br />

Migrationsprojekten und insbesondere, wenn es um eine Umstellung der gesamten IT-<br />

Infrastruktur geht, ist es hilfreich, die relevanten Beteiligten mit im Boot zu haben, da sie<br />

intensiv mit dazu beitragen können, die Akzeptanz bei den Anwendern zu verbessern.<br />

Im Übergang von der Konzeption zur Implementierung stellen sich vor allem noch einmal<br />

die Fragen nach der Wirtschaftlichkeit und in diesem Zusammenhang nach dem „Make<br />

or Buy―. Auch hier spielt wiederum die IT-Strategie eine wichtige Rolle, die Aussagen<br />

über Ziele der Personalentwicklung beim eigenen IT-Personal enthalten sollte und Vorgaben<br />

beinhalten, die eine Entscheidung an dieser Stelle deutlich vereinfachen. Solche<br />

Vorgaben und Zielsetzungen können unter anderem sein, das IT-Personal für bestimmte<br />

Plattformen auszubilden, Softwareentwicklung als eigene Aufgabe zu definieren oder<br />

von vornherein auszuschließen.


Phase 3 und 4: Umsetzung und Betrieb<br />

Die weiteren Phasen der Implementierung und des späteren Betriebs gestalten sich in<br />

Migrationsprojekten nicht anders als in jedem anderen IT-Projekt.<br />

2.1 Vorgehensmodelle<br />

Insbesondere bei vollständigen Migrationen oder Migrationen von größeren Teilbereichen<br />

der IT-Infrastruktur lassen sich zwei unterschiedliche Wege bei einem Migrationsvorhaben<br />

beschreiten. Das eine ist der schnelle Weg, bei dem man ohne lange Umwege<br />

und Pausen vom Ausgangspunkt zum Ziel gelangt. Man spricht auch oft vom „Big Bang―.<br />

Der andere Weg ist eher ein sanfter, bei dem man sich Stück für Stück weiterbewegt und<br />

sich immer mehr an die sich wechselnde Landschaft gewöhnt. Beide Wege der Migration<br />

haben ihre Vor- und Nachteile.<br />

In punktuellen Migrationen stellt sich meist nicht die Frage nach dem besten Weg, denn<br />

es ist zum Beispiel nur selten sinnvoll eine Anwendung über einen längeren Zeitraum<br />

und in mehreren Einzelschritten zu migrieren.<br />

2.1.1 Schnelle Migration („Big Bang“)<br />

Eine schnelle Migration ist nicht, wie der Name vermuten lässt, durch ihre Schnelligkeit<br />

geprägt, sondern dadurch, dass die Migration innerhalb eines überschaubaren und vor<br />

allem festgelegten Zeitraumes durchgeführt wird. Eine schnelle Migration hat einen definierten<br />

Beginn (Anfangsdatum) und ein definiertes Ende (Enddatum). Am Ende steht der<br />

Beginn des vollständigen Wirkbetriebes.<br />

Die Durchführung einer schnellen Migration stellt hohe bis sogar sehr hohe Anforderungen<br />

an:<br />

� die Organisation des Projektes<br />

� die Organisation der betroffenen Behörde<br />

� die Technik<br />

� die Finanzen<br />

� die Administratoren<br />

� die Benutzer.<br />

Insbesondere die Anforderungen an die Administratoren und die Benutzer dürfen dabei<br />

nicht unterschätzt werden. Dies gilt umso mehr, je weniger Know-how bezüglich der<br />

neuen IT-Landschaft bei den Administratoren und den Benutzern verfügbar ist. Andererseits<br />

besteht der Vorteil einer schnellen Migration darin, dass die Administratoren sich<br />

nicht über einen längeren Zeitraum mit zwei unterschiedlichen IT-Ausrichtungen auseinandersetzen<br />

müssen. Sie können sich schon nach relativ kurzer Zeit (den Anforderungen<br />

des Projektes angemessen) ausschließlich auf die neuen Systeme konzentrieren.<br />

Wichtig ist ferner, dass die benötigten Finanzen innerhalb eines relativ kurzen Zeitraumes<br />

verfügbar sein müssen. Umfang und vor allem die Komplexität und die Vielfalt der<br />

zu migrierenden Anwendungen und Systeme bestimmen, wann und wie viel Finanzmittel<br />

Seite 142


ereitzustellen sind. Dieser Aspekt wird am Ende mit über die Machbarkeit einer schnellen<br />

Migration entscheiden.<br />

Die hohen Anforderungen an die Organisation der Behörde konzentrieren sich zum einen<br />

auf die Qualifizierung der Mitarbeiter, die weiterhin ihren täglichen Pflichten nachgehen<br />

müssen. Das heißt, dass Störungen des Betriebes der Behörde unbedingt minimiert<br />

werden müssen. Zum anderen muss der laufende IT-Betrieb aufrecht erhalten bleiben.<br />

Insbesondere eine Umstellung der gesamten Serverlandschaft stellt hier hohe Ansprüche<br />

an alle Beteiligten, da sich die Migration der einzelnen Serverdienste nicht beliebig<br />

partitionieren lässt und die Administratoren den laufenden Betrieb garantieren und zugleich<br />

auf die neuen Systeme eingewiesen werden müssen.<br />

Diese Anforderungen können durch geeignete Umstellungs- und Rollout-Konzepte gelöst<br />

werden. Auch der Aufbau einer parallelen IT-Landschaft hierfür ist möglich, wodurch<br />

jedoch erhöhte Anforderungen an die Technik und letztlich zusätzliche Kosten entstehen.<br />

Aufgrund dieser hohen Anforderungen stellt sich natürlich die Frage, ob eine schnelle<br />

Migration überhaupt sinnvoll ist, beziehungsweise für wen zu empfehlen ist.<br />

Gründe für eine schnelle Migration sind:<br />

� Es besteht der Zwang zu einer Migration, das heißt, dass zum Beispiel der Support<br />

für die alten Systeme ausläuft.<br />

� Die Administratoren und Benutzer werden zwar intensiv, dafür aber nur einmal<br />

mit Neuerungen konfrontiert und nicht jährlich fortlaufend.<br />

� Die Administratoren müssen sich nicht über längere Zeiträume mit der Komplexität<br />

heterogener Welten auseinandersetzen.<br />

Unter welchen Voraussetzungen und für wen ist eine schnelle Migration sinnvoll?<br />

Liegt eine überschaubare und nicht übermäßig „verwobene― Systemlandschaft vor, ist<br />

dies zunächst eine gute Voraussetzung für eine schnelle Migration. Dies ist der Fall,<br />

wenn nur wenige Anwendungen und Dienste für die Aufgabenerfüllung eingesetzt werden.<br />

Diese Voraussetzung trifft nicht immer nur auf kleine und einfach strukturierte Verwaltungen<br />

und Organisationen zu. Behörden und Organisationen egal wie groß, die mit wenigen<br />

großen, meist serverbasierten Fachanwendungen ausgestattet sind und mit denen<br />

der überwiegende Teil der Aufgaben erledigt wird, sind gute Beispiele hierfür. Die Voraussetzungen<br />

treffen aber auch auf kleine bis mittlere Behörden mit wenigen Fachanwendungen,<br />

Standardbürokommunikation und Office-Einsatz mit wenig komplexen Dokumenten<br />

und Vorlagen zu.<br />

Eine weitere gute Voraussetzung ist in den Behörden gegeben, die bereits über das<br />

notwendige Know-how für die zukünftige IT-Landschaft bei den Administratoren verfügen.<br />

Sei es, dass diese sich in ihrer Freizeit mit diesen Systemen auseinandersetzen<br />

oder bereits schon einzelne Anwendungen und Dienste mit neuer Technik vorhanden<br />

sind. In diesem Zusammenhang kann auch wieder eine rechtzeitig festgelegte Strategie<br />

dafür Sorge getragen haben, dass die IT-Mitarbeiter rechtzeitig auf die neuen Aufgaben<br />

vorbereitet wurden.<br />

Seite 143


Ist außerdem bei den Mitarbeitern auch noch die nötige Offenheit für Neuerungen und<br />

Interesse an den neuen Aufgaben vorhanden, sind dies ebenfalls ideale Voraussetzungen<br />

für eine schnelle Migration.<br />

2.1.2 Sanfte Migration<br />

Die Gründe für die Wahl eines sanften Migrationsweges werden deutlich bei einem<br />

Rückblick auf die Anforderungen und die Gründe für eine schnelle Migration:<br />

� Behörden und Verwaltungen mit knappen Budgets können die notwendigen Kosten<br />

der Haushaltslage angepasst verteilen.<br />

� Fehlendes Know-how kann sukzessive aufgebaut und damit Kosten eingespart<br />

werden.<br />

Da die Migration komponentenweise erfolgt, können die einmal geschulten IT-<br />

Mitarbeiter anschließend als Multiplikatoren fungieren, sodass bei der Migration<br />

der nächsten Komponente schon ein höherer Grad an Know-how verfügbar ist.<br />

� Bestehende Widerstände können langsam abgebaut und Vorbehalte aufgelöst<br />

werden.<br />

� Komplexe IT-Strukturen können Stück für Stück aufgelöst werden.<br />

Die nachfolgende Abbildung skizziert beispielhaft, wie eine möglichst sanfte Migration<br />

aussehen könnte.<br />

Know-How-Aufbau<br />

DBMS-<br />

Server<br />

Web-Server<br />

Verzeichnis -<br />

Server<br />

Mail- &<br />

Kalender-<br />

Server<br />

SERVERMIGRATION<br />

Seite 144<br />

File- & Print-<br />

Server<br />

DNS- &<br />

DHCP-<br />

Server<br />

Migration der Fach- und Office-Anwendungen<br />

EVTL.<br />

OFFICE-<br />

MIGRATION<br />

Office/Desktop<br />

DESKTOP-<br />

MIGRATION<br />

Zeitlicher Verlauf<br />

Abbildung 24: Beispiel einer sanften und stufenweisen Migration<br />

Zu Beginn sollte eine einfach herauszulösende Komponente für die Migration gewählt<br />

werden. In dem obigen Beispiel steht dort der DBMS-Server. Dabei geht es nicht um die<br />

Migration der Datenbankanwendungen, sondern um das Aufsetzen eines parallelen<br />

DBMS. Grundkenntnisse zu DBMS dürften vorhanden sein und spätestens bei der Migration<br />

der nächsten Komponente, der Web Server, wird in der Regel auch ein DBMS


enötigt. Der Directory Server ist zunächst eine alleinstehende Komponente, kann aber<br />

eventuell schon im Zusammenhang mit dem Webserver genutzt werden und ist möglicherweise<br />

eine Voraussetzung für die folgende Groupware-Migration. Anschließend erfolgt<br />

die Migration der Datei-, Netz- und Druckdienste. Letztendlich wird der Desktop<br />

migriert, nachdem parallel zu den Komponentenmigrationen alle Fach- und Officeanwendungen<br />

im Hintergrund migriert wurden.<br />

Wie gesagt, hierbei handelt es sich um ein mögliches Beispiel und je nach bestehender<br />

IT-Infrastruktur und vorhandenen Abhängigkeiten kann sich die Reihenfolge auch ganz<br />

anders gestalten.<br />

Bei einer sanften Migration können die Komponenten für die einzelnen Schritte nicht<br />

beliebig ausgetauscht und verschoben werden; was zusammengehört, soll auch zusammenbleiben.<br />

Ferner ist wichtig, dass der Prozess zeitlich nicht überstrapaziert und<br />

ein realistischer Endtermin gesetzt wird. Der Realisierungszeitraum muss jedoch der<br />

Komplexität von Pflege und Wartung und damit dem Aufwand, der für die Administratoren<br />

anfällt, Rechnung tragen. Da der administrative Aufwand in einer bunten IT-<br />

Landschaft meist höher als in einer homogenen Landschaft ist, sollte der gesamte Umstellungsprozess<br />

auch bei einer sanften Migration 2 bis 3 Umstellungsabschnitte mit einem<br />

insgesamt zeitlich überschaubaren Horizont nicht überschreiten.<br />

Abbildung 24 zeigt die drei Umstellungsabschnitte der Beispielmigration. Beispielhaft<br />

angewandt auf eine Migration weg von einer Windows-basierten IT-Infrastruktur hin zu<br />

einer Linux-basierten IT-Infrastruktur kann die Migration zunächst serverseitig relativ weit<br />

vorangetrieben werden. Vor allem mit Samba, Terminalservices und auch der Möglichkeit,<br />

Outlook als Groupware- und Messaging-Client weiterzuverwenden, stehen Hilfen<br />

zur Verfügung, welche die zwischenzeitliche Heterogenität der IT-Landschaft ermöglichen,<br />

ohne dabei Einschränkungen hinnehmen zu müssen.<br />

Erst ganz am Ende, wenn alle Fach- und Officeanwendungen parallel zu serverseitigen<br />

Migrationsprozess umgestellt wurden, kann die Migration des Desktops, heißt die clientseitige<br />

Migration von Windows nach Linux vorgenommen werden. Sofern die Umstellungen<br />

der Fach- und Officeanwendungen dies zulassen, kann sogar überlegt werden, in<br />

einem Zwischenschritt MS Office nach OpenOffice.org oder StarOffice auf einem Windows-Client<br />

zu migrieren.<br />

2.2 Mögliche Auswirkungen der Migrationspfade<br />

2.2.1 Aufwand<br />

Bezüglich des Aufwandes zur Durchführung einer Migration gibt es keine Abhängigkeiten<br />

zwischen Aufwand und dem Typ des Migrationspfades. Ob fortführend oder ablösend,<br />

ob Ablösung von Windows-basierten Infrastrukturen oder umgedreht, der für eine<br />

Migration notwendige Aufwand ist am Ende immer von den jeweiligen Anforderungen,<br />

der bestehenden Ausgangssituation und den strategischen Zielsetzungen abhängig.<br />

Dies gilt auch für den Aufwand, der durch den nachfolgenden Betrieb entsteht. Vereinfachende<br />

und falsche Annahmen, wie zum Beispiel, dass OSS-Produkte zwar einerseits<br />

keine Lizenzkosten verursachen, dem aber hohe Aufwendungen durch komplexere<br />

Seite 145


Administration, mehr Schulungsbedarf und unzureichenden Support entgegenstehen,<br />

haben keine Gültigkeit.<br />

Aufwand für Support, Wartung und Pflege der Software hängen von den jeweiligen Systemen<br />

und ihrer Nutzung ab, wie oft und welche Änderungen und Erweiterungen an Konfiguration,<br />

Aufbau und Funktionalitäten durchgeführt werden müssen, welche Tools und<br />

welches Know-how zur Verfügung stehen, wie die verfügbaren Lizenzmodelle gestaltet<br />

sind, ob Lizenzkosten anfallen und unter welchen Bedingungen und in welcher Höhe.<br />

Diese und noch viel mehr Faktoren sind ausschlaggebend für die Folgeaufwendungen<br />

eines gewählten Migrationspfades.<br />

Dies macht deutlich, dass prinzipiell alle sinnvollen und machbaren Varianten hinsichtlich<br />

der Wirtschaftlichkeit zu prüfen sind, wobei die mittel- bis langfristigen Folgekosten so<br />

gut und umfassend wie möglich zu berücksichtigen sind.<br />

In diesem Zusammenhang wird empfohlen, auch einen Blick auf die in diesem Leitfaden<br />

diskutierten strategischen Aspekte zu werfen (siehe I.A 1) und die Aspekte der Herstellerabhängigkeit<br />

und der Verwendung von offenen Standards bei der Prüfung dringend zu<br />

berücksichtigen.<br />

2.2.2 Nachfolgender Migrationsbedarf<br />

Nicht selten legt bereits die aktuell durchgeführte Migration einen Grundstein für die<br />

Nachfolgende. Das gilt natürlich besonders für die Migrationspfade, an deren Ziel ein<br />

bestimmtes Produkt eines Herstellers steht.<br />

Da es im Interesse des Herstellers liegt, auch die Folgeversionen seiner Produkte zu<br />

verkaufen, wird zwangsläufig der Support für ein bestimmtes Produkt nach einem gewissen<br />

Zeitraum eingestellt. Dieser grundsätzlich abzusehende Migrationsbedarf wird noch<br />

dadurch zusätzlich ungünstig beeinflusst, dass durch den kommerziellen Charakter der<br />

herstellerspezifischen Produkte auch der zeitliche Abstand zwischen den Migrationen<br />

sowie der Umfang der einzelnen Migrationen fast vollständig außerhalb der eigenen<br />

Kontrolle liegt.<br />

Eine erneute Migration wird also dann notwendig, wenn das gewählte Produkt nicht<br />

mehr weiterentwickelt wird. Diese Situation kann auch bei Open Source Software eintreten,<br />

zum Beispiel durch eine Abnahme des Interesses bei den Entwicklern und der nachfolgenden<br />

Auflösung der entsprechenden OSS-Entwicklergemeinde. Die Erfahrungen<br />

zeigen jedoch, dass erfolgreiche OSS-Projekte langfristig bestehen, auch wenn vielleicht<br />

einzelne Entwickler aus dem Kernteam sich anderen Interessen zuwenden. In den meisten<br />

Fällen findet sich Ersatz.<br />

Darüber hinaus kann man dem entgegen wirken, indem man einen geeigneten und zuverlässigen<br />

Support-Partner verpflichtet und im Vorfeld die Bestandsfähigkeit und Zuverlässigkeit<br />

der Entwicklergemeinde prüft, so wie man dies auch bei der Beschaffung von<br />

proprietärer Software durch Prüfung der Leistungsfähigkeit des Dienstleisters und des<br />

Softwareherstellers tut.<br />

2.2.3 Auswirkungen auf spätere Migrationen<br />

Wird eine Migrationsentscheidung aufgrund der Tatsache getroffen, dass nur ein bestimmtes<br />

proprietäres Produkt die Anforderungen vollumfänglich erfüllt, ist es offensich-<br />

Seite 146


tlich, dass damit die Möglichkeiten für spätere Migrationen eingeschränkt werden. Allerdings<br />

kann eine solche Einschränkung auch auf weniger direkten Wegen entstehen.<br />

Die meisten Migrationsmöglichkeiten sind in einer Umgebung vorhanden, die ausschließlich<br />

auf standardisierte Funktionalität setzt. Viele Produkte weichen jedoch mehr<br />

oder weniger stark von den zugrunde gelegten Standards ab. Insbesondere proprietäre<br />

Produkte setzen zum Teil solche Abweichungen in Form von zusätzlichen Funktionalitäten<br />

als Alleinstellungsmerkmal ein. Gute Beispiele hierfür findet man bei den unterschiedlichen<br />

Datenbankmanagementsystemen.<br />

Wenn diese produktspezifischen Zusatzfunktionen intensiv genutzt werden, dann kann<br />

dies in der Folge zu erhöhten Migrationskosten kommen, wenn man einen ablösenden<br />

Pfad beschreiten möchte. Dies kann im schlimmsten Fall zu einer extremen Produkt-<br />

und Herstellerabhängigkeit führen.<br />

Daher sollte man im Rahmen eines Migrationsvorhabens genau prüfen, welche Standardfunktionalitäten<br />

gebraucht werden und welche darüber hinaus, wie diese von den<br />

verschiedenen Produkten unterstützt werden und welche Abhängigkeiten beziehungsweise<br />

Folgekosten in der Zukunft daraus entstehen können.<br />

2.3 Checkliste der Erfolgsfaktoren<br />

Damit Migrationsprojekte als IT-Projekte im Allgemeinen und als Innovationsprojekte im<br />

Besonderen zu einem erfolgreichen Abschluss geführt werden können, sind die kritischen<br />

Erfolgsfaktoren bereits im Vorfeld zu definieren und zu bewerten. Erfolgreich für<br />

alle Beteiligten ist ein Migrationsprojekt zunächst dann, wenn das gewünschte Ziel beziehungsweise<br />

Ergebnis innerhalb des geplanten beziehungsweise vereinbarten Zeit-<br />

und Budgetrahmens erbracht wird.<br />

Hinzu kommen sogenannte weiche Faktoren, die einen nicht zu unterschätzenden Beitrag<br />

zum Gesamterfolg leisten. Dazu zählen beispielsweise die Mitarbeiterzufriedenheit,<br />

eine reibungsfreie Kommunikation und damit Vermeidung beziehungsweise Reduzierung<br />

von Misserfolg, Frust und Doppelarbeiten sowie die bedarfsgerechte Auswahl und natürlich<br />

Akzeptanz der neuen IT-Landschaft bei den Anwendern.<br />

Nachfolgend werden wichtige zu beachtende Erfolgsfaktoren technischer, wirtschaftlicher<br />

und organisatorischer Art – ergänzt um wesentliche Erfahrungen aus Migrationsprojekten<br />

– aufgeführt.<br />

2.3.1 Technische Erfolgsfaktoren<br />

� Detaillierte Bestandsaufnahme mit Definition der funktionalen Anforderungen:<br />

Je genauer die Aufnahme des Ausgangszustands erfolgt, desto geringer ist die<br />

Wahrscheinlichkeit, dass bei der Definition des Zielzustandes entscheidende Aspekte<br />

übersehen werden.<br />

� Migrationen müssen im Gesamtkontext betrachtet werden:<br />

Nicht nur das migrierte Produkt ist entscheidend, sondern auch der Rest der Systemlandschaft.<br />

� Optimale Produkt- und Dienstleistungsauswahl:<br />

Seite 147


Anhand des definierten Zielzustands lassen sich die Anforderungen an benötigte<br />

Produkte und Dienstleistungen recht gut ermitteln. Ob die von verschiedener<br />

Seite angebotenen Produkte und Dienstleistungen diese Anforderungen tatsächlich<br />

erfüllen, muss sorgfältig geprüft werden.<br />

Außer wenn zwingende technische oder wirtschaftliche Gründe dafür sprechen,<br />

sollten Migrationen auf neueste Produktversionen, mit denen nur wenig oder<br />

kaum Erfahrungen bestehen, vermieden werden.<br />

� Dokumentation:<br />

Im Laufe eines Migrationsprojekts werden zahlreiche Entscheidungen getroffen,<br />

die dokumentieren werden müssen, um spätere Validierungen dieser Entscheidungen<br />

– insbesondere, wenn sich technische oder wirtschaftliche Voraussetzungen<br />

geändert haben – zu ermöglichen.<br />

Auch die Dokumentation des Ausgangs- und des Zielzustands (sowohl geplant<br />

als erreicht) sind sinnvoll.<br />

� Einsatz standardkonformer Technologien:<br />

Darüber hinaus ist es vorteilhaft, standardkonforme Technologien einzusetzen.<br />

� Berücksichtigung verwendeter proprietärer Funktionalität:<br />

Die in der umzustellenden Systemlandschaft verwendete proprietäre Funktionalität<br />

stellt ein Risiko für den Migrationserfolg dar und muss vorher entsprechend<br />

berücksichtigt werden.<br />

2.3.2 Wirtschaftliche Erfolgsfaktoren<br />

� Klarer Nutzen des Projekts:<br />

Ein klarer Nutzen des Migrationsprojekts muss bereits vor seinem Start erkennbar<br />

sein.<br />

� Strukturierte Zeit-, Projekt- und Ressourcenplanung:<br />

Migrationsprojekte können sehr umfangreich werden und sich über einen längeren<br />

Zeitraum erstrecken. Damit die Kosten nicht durch unnötige Verzögerungen<br />

und Reibungsverluste negativ beeinflusst werden, ist eine sorgfältige Planung,<br />

die das Projekt in seinem Verlauf kontrollierbar macht, von Anfang an nötig.<br />

� Etablierung eines effektiven Projekt-Controllings:<br />

Neben der Überwachung des Budgets und der Termineinhaltung ermöglicht ein<br />

effektives Projekt-Controlling auch die frühzeitige Reaktion auf Abweichungen<br />

von den ursprünglichen Planvorgaben.<br />

� Einbindung und Positionierung der Leitungs- und Entscheidungsebene:<br />

Nur die Leitungsebene kann die Verfügbarkeit der erforderlichen Finanzmittel, zu<br />

denen neben den reinen Investitions- und Lizenzkosten auch Kosten für Schulungen,<br />

externe Beratung und Projektunterstützung sowie interne Personalkosten<br />

zählen können, und deren Anpassung an den Projektfortschritt sicherstellen.<br />

Seite 148


2.3.3 Organisatorische Erfolgsfaktoren<br />

� Formulierung eindeutiger Ziele des Migrationsprojektes:<br />

Festzulegen ist, warum die Migration überhaupt durchgeführt werden soll und wie<br />

der angestrebte Zielzustand genau aussehen wird.<br />

Jedes Migrationsprojekt ist anders, daher ist die Übertragbarkeit von Erfahrungen<br />

aus früheren Projekten sehr genau zu prüfen, falls es sich dabei nicht um Projekte<br />

mit den gleichen Produkten in denselben <strong>Version</strong>en handelt.<br />

� Einbindung und Positionierung der Leitungs- und Entscheidungsebene:<br />

Die Entscheiderebene muss von der Notwendigkeit zur Migration und dem gewählten<br />

Weg überzeugt sein.<br />

Weiterhin spielt die jeweilige Leitungs- und Entscheidungsebene eine nicht zu unterschätzende<br />

Rolle in Fragen der Projektorganisation, Kommunikation, Fortschrittskontrolle<br />

und Ergebnisüberprüfung, der Anstoß zur Durchführung des Projekts<br />

muss eigentlich von ihr kommen, das Projekt muss über alle Phasen durch<br />

sie unterstützt werden.<br />

� Bildung eines qualifizierten Projektteams:<br />

Im Idealfall sollten die an der Migrationsdurchführung beteiligten Mitarbeiter für<br />

die Zeit des Migrationsprojekts von ihren sonstigen Aufgaben weitgehend entbunden<br />

werden, um ihre Konzentration auf den Erfolg des Migrationsprojekts zu<br />

ermöglichen, den Koordinationsaufwand gering zu halten und Ressourcenkonflikte<br />

zu vermeiden.<br />

� Festlegung von Zuständigkeiten:<br />

Migrationsprojekte sind deutlich risikoärmer, wenn die Zuständigkeiten in der umzustellenden<br />

Systemlandschaft klar voneinander getrennt sind.<br />

� Frühe Informationen und Einbindung der Zielgruppen/Mitarbeiter:<br />

Nur durch eine frühzeitige Information und echte Einbindung der Betroffenen<br />

lässt sich eine hohe Akzeptanz des Zielzustands erreichen.<br />

Das Vorhandensein des internen Wissens über den des Zielzustands der Migration<br />

muss sichergestellt werden, insbesondere in Fragen des anschließenden Betriebs<br />

und der Administration.<br />

� Zeitnahe und nachhaltige Schulungen:<br />

Schulungen für die neuen Produkte und Technologien sollten weitgehend auf den<br />

individuellen Schulungsbedarf abgestimmt sein, um einen nahtlosen Übergang in<br />

den Zielzustand zu erlauben und Produktivitätsverringerungen in der Anfangszeit<br />

nach der Migration zu vermeiden.<br />

Ohne detaillierte Produktkenntnisse (auch der beteiligten <strong>Version</strong>en) sind Migrationsprojekte<br />

schwer zum Erfolg zu führen.<br />

Seite 149


II. Modul Infrastrukturen<br />

A Thema Datenbank-Systeme<br />

Der Begriff Datenbank bezeichnet an dieser Stelle die strukturierte Sammlung und die<br />

Ablage von Daten in elektronischer Form. Daten können hierbei je nach Ausprägung<br />

einer Datenbank in unterschiedlicher Form oder unterschiedlichem Format vorliegen.<br />

Bei den in den folgenden Kapiteln beschriebenen Produkten handelt es sich um Datenbanksysteme,<br />

in denen Datenbanken von Datenbank-Managementsystemen verwaltet<br />

werden. Letztere ermöglichen zudem die Bearbeitung und Abfrage von Daten in einer<br />

Datenbank.<br />

Da die betrachteten Datenbanken die gespeicherten Daten in Form von zweidimensionalen<br />

Tabellen (Relationen) organisieren, spricht man auch von relationalen Datenbanken<br />

und Datenbank-Managementsystemen. Weitere Ausprägungen von Datenbanken wie<br />

zum Beispiel objektorientierte Datenbanken oder XML-Datenbanken werden aufgrund<br />

ihres aktuell vergleichsweise geringen Verbreitungsgrades im Rahmen dieses Dokuments<br />

nicht betrachtet. Die wesentlichen Funktionen moderner, relationaler Datenbank-<br />

Managementsysteme werden von allen hier betrachteten Produkten angeboten, dazu<br />

gehören insbesondere die Folgenden:<br />

� Views<br />

Views sind virtuelle Tabellen für wiederkehrende Abfragen. Sie können in Abfragen<br />

wie andere Tabellen verwendet werden, ihre Berechnung erfolgt bei jeder<br />

derartigen Verwendung.<br />

� Trigger<br />

Trigger sind Programme, deren Ausführung in Abhängigkeit von bestimmten<br />

Aktionen (Einfügen, Ändern, Löschen) auf bestimmten Daten erfolgt und die so<br />

zum Beispiel zur Konsistenzsicherung eingesetzt werden können.<br />

� User Defined Functions und Stored Procedures<br />

User Defined Functions sind innerhalb der Datenbank ausführbare Programme,<br />

mit denen Funktionen definiert werden können, die in Datenbankabfragen als<br />

auswertbare Ausdrücke verwendet werden können. Stored Procedures sind User<br />

Defined Functions sehr ähnlich, können allerdings nicht in Ausdrücken verwendet<br />

werden, dafür sind sie aber erheblich flexibler bezüglich ihrer Rückgabewerte.<br />

Seite 150


� Transaktionsunterstützung<br />

Mittels Transaktionsunterstützung können Datenbank-Managementsysteme die<br />

atomare 98 , konsistente, isolierte und dauerhafte Durchführung einer logisch zusammenhängenden<br />

Operation auf den Daten, die auch aus mehreren Operationen<br />

zusammengesetzt sein kann, sicherstellen.<br />

� Save Points<br />

Save Points bieten die Möglichkeit, innerhalb von Transaktionen Punkte zu definieren,<br />

zu denen zurückgekehrt werden kann. Alle Veränderungen des Datenbankzustands<br />

durch Aktionen nach dem entsprechenden Save Point werden<br />

dabei wieder rückgängig gemacht.<br />

Abweichungen von dieser Grundfunktionalität sowie spezielle Erweiterungsmöglichkeiten<br />

werden in den nachfolgenden produktspezifischen Abschnitten behandelt.<br />

Eine detaillierte Betrachtung von Sicherheitsaspekten der einzelnen Datenbanksysteme<br />

würde den Rahmen des <strong>Migrationsleitfaden</strong>s sprengen. Grundsätzlich enthalten die hier<br />

vorgestellten Datenbanksysteme Sicherheitsmechanismen, die auf Benutzerebene die<br />

Authentisierung, Autorisierung und Vergabe von bestimmten Rechten zum Datenzugriff<br />

ermöglichen.<br />

Einige Datenbanksysteme bieten darüber hinaus weitere Mechanismen zum Schutz der<br />

gespeicherten Daten an, zum Beispiel durch Verschlüsselung von Daten und der Kommunikation<br />

zwischen Client und Server. Entsprechende Hinweise finden sich in den produktspezifischen<br />

Abschnitten.<br />

Die tatsächlich erreichbare Sicherheit eines Datenbanksystems hängt jedoch zu einem<br />

überwiegenden Teil von der konkreten Einsatzumgebung, der vorgenommenen Konfiguration<br />

und der Art der Nutzung ab. Detaillierte Hinweise und Maßnahmen zu Sicherheitsaspekten<br />

in Datenbanksystemen finden sich in den IT-Grundschutzkatalogen des<br />

Bundesamtes für Sicherheit in der Informationstechnik (BSI) 99 .<br />

1 Produkte / Technologien<br />

1.1 MySQL<br />

MySQL wird von der schwedischen Firma MySQL AB entwickelt und vertrieben beziehungsweise<br />

zur Verfügung gestellt. MySQL war ursprünglich als schneller und flexibler<br />

Ersatz für mSQL, einem Datenbanksystem von Hughes Technologies, gedacht. Die<br />

softwaretechnische Basis stammt aus den frühen 1980er Jahren. Die aktuelle <strong>Version</strong> ist<br />

MySQL 5.1.<br />

98 Eine atomare Operation ist eine Operation, die nicht durch eine andere Operation unterbrochen<br />

werden kann. Eine Transaktion wird entweder vollständig oder gar nicht ausgeführt.<br />

Ein typisches Beispiel in diesem Kontext ist die Durchführung einer Überweisung von einem<br />

auf ein anderes Konto, bei der der Betrag zuerst von einem Konto abgehoben und<br />

dann dem anderen gutgeschrieben wird.<br />

99 http://www.bsi.bund.de/gshb/deutsch/baust/b05007.htm (Baustein Datenbanken) und<br />

http://www.bsi.bund.de/gshb/deutsch/m/m02126.htm (Maßnahmenkatalog Organisation -<br />

Erstellung eines Datenbanksicherheitskonzepts)<br />

Seite 151


Der Hersteller schätzt die Zahl der aktiven MySQL Installationen weltweit auf über 11<br />

Millionen 100 . Die unter der Abkürzung LAMP bekannte Kombination von Linux, Apache,<br />

MySQL und PHP ist seit Beginn der kommerziellen Internetnutzung eine der beliebtesten<br />

Infrastrukturen für Webshops und dynamische Webseiten. MySQL ist auf über 20 Plattformen<br />

einsetzbar, darunter Linux, OS/X, HP-UX, AIX und Windows 101 .<br />

Bei MySQL sind die beiden vorhandenen Lizenzmodelle an entsprechende Editionen<br />

des Datenbanksystems gekoppelt. Der Hersteller spricht dabei von einer dualen Lizenz:<br />

� MySQL Community Edition<br />

Diese Edition wird als Open-Source-Datenbanksystem unter der GNU General<br />

Public License 102 zur Verfügung gestellt.<br />

� MySQL Enterprise<br />

Diese Edition wird unter einer kostenpflichtigen Lizenz 103 vertrieben, die jedoch<br />

neben dem Datenbanksystem selbst auch weitere Dienstleistungen und Support<br />

beinhaltet. Es existieren unterschiedliche Leistungsstufen, die zum Beispiel Support,<br />

Beratungsunterstützung oder Haftungsfreistellung bei der Verletzung von<br />

Rechten geistigen Eigentums umfassen.<br />

Ein wesentliches Architekturmerkmal von MySQL ist die Möglichkeit der Verwendung<br />

unterschiedlicher Speicher-Engines für die Arbeit mit unterschiedlichen Tabellentypen.<br />

Damit lassen sich sowohl transaktionssichere als auch nicht-transaktionssichere Tabellen<br />

realisieren. Letztere sind wesentlich schneller und benötigen weniger Speicherplatz.<br />

Folgende Speicher-Engines stehen zur Verfügung:<br />

� MyISAM zeichnet sich durch einen schnellen Datenabruf und schnelle Datenspeicherung<br />

aus, besitzt eine Volltextsuchfähigkeit, verwaltet jedoch nur nichttransaktionale<br />

Tabellen.<br />

� MEMORY stellt Tabellen im Arbeitsspeicher zur Verfügung.<br />

� InnoDB und BDB stellen transaktionssichere Tabellen zur Verfügung.<br />

� EXAMPLE ist nur für Entwickler gedacht, die Speicher-Engines entwickeln möchten,<br />

und bietet daher nicht die Möglichkeit, Daten zu speichern.<br />

� NDB Cluster wird zur Implementierung von Tabellen genutzt, die über viele Computer<br />

partitioniert sind. Sie steht derzeit nur für Linux, Solaris und Mac OS X zur<br />

Verfügung.<br />

� ARCHIVE bietet die Möglichkeit zur Speicherung großer Datenmengen ohne Indizes<br />

mit einem sehr kleinen Speicherverbrauch.<br />

� BLACKHOLE nimmt zwar Daten entgegen, speichert sie jedoch nicht. Die Engine<br />

kann zum Beispiel für den Test von Abfragen verwendet werden.<br />

� FEDERATED ist für die Speicherung von Daten in einer Remote-Datenbank vorgesehen.<br />

100 http://www.mysql.de/why-mysql/marketshare/<br />

101 http://dev.mysql.com/downloads/mysql/5.0.html#downloads<br />

102 http://www.mysql.com/company/legal/licensing/opensource-license.html<br />

103 http://www.mysql.com/company/legal/licensing/commercial-license.html<br />

Seite 152


Mit MySQL 5.1 wurde eine Architektur eingeführt, die Pluggable Storage Engines erlaubt.<br />

Damit können neue, an den eigenen Bedarf angepasste Speicher-Engines erstellt<br />

und einem laufenden MySQL Server hinzugefügt werden, ohne den Server selbst neu<br />

kompilieren zu müssen. In der Regel sind die verfügbaren Speicher-Engines jedoch ausreichend.<br />

Die Möglichkeit, Speicher-Engines anzupassen, ist daher eher für Firmen<br />

interessant, die sehr spezielle Anforderungen realisieren müssen.<br />

In der aktuellen <strong>Version</strong> bietet MySQL auch Funktionen, die über die grundsätzlichen<br />

Funktionen moderner Datenbanksysteme (siehe Einleitung) hinausgehen, darunter zum<br />

Beispiel:<br />

� Datenbankreplikation<br />

Um die Inhalte einer Datenbank an verschiedenen Orten verfügbar zu machen,<br />

bietet MySQL die Möglichkeit, eine MySQL-Instanz als Master zu deklarieren und<br />

mehrere andere Instanzen (die Slaves) anzuweisen, die Inhalte der Masterdatenbank<br />

zu replizieren. Die Datenbankreplikation kann auch für Live-Backups<br />

verwendet werden, da sich Slave-Datenbanken nach Offline-Phasen problemlos<br />

und automatisiert wieder auf den aktuellen Stand bringen lassen. 104<br />

� MySQL Cluster<br />

Für Linux, MacOS X und Solaris existiert eine spezielle Speicher-Engine, mittels<br />

derer sich Cluster von MySQL-Datenknoten realisieren lassen, die von einem<br />

Management-Knoten verwaltet werden und auf die über spezielle MySQL-Knoten<br />

zugegriffen werden kann 105 .<br />

� Tabellenpartitionierung<br />

In MySQL lassen sich große Tabellen anhand selbst definierter Partitionierungsfunktionen<br />

auf verschiedene Partitionen eines Dateisystems verteilen. In der<br />

aktuellen <strong>Version</strong> von MySQL sind mit den so entstehenden verteilten Tabellen<br />

noch einige funktionale Einschränkungen verbunden 106 .<br />

Stored Procedures stehen unter MySQL derzeit nur mit einem eingeschränkten<br />

Funktionsumfang zur Verfügung, da deren Implementation noch nicht vollständig abgeschlossen<br />

ist 107 .<br />

104 http://www.onlamp.com/pub/a/onlamp/2005/06/16/MySQLian.html<br />

105 http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster.html<br />

106 Nähere Informationen zu den Beschränkungen bei der Tabellenpartitionierung finden sich<br />

unter http://dev.mysql.com/doc/refman/5.1/en/partitioning-limitations.html<br />

107 Nähere Informationen zu den Beschränkungen bei Stored Procedures finden sich unter<br />

http://dev.mysql.com/doc/refman/5.1/en/routine-restrictions.html<br />

Seite 153


Zur Verwaltung eines Datenbanksystems stehen die folgenden grafischen Werkzeuge<br />

bereit:<br />

� MySQL Query Browser<br />

Mit diesem Werkzeug können Datenbankabfragen erstellt, ausgeführt und optimiert<br />

werden.<br />

� MySQL Workbench<br />

Mit MySQL Workbench können Datenbankschemata grafisch erstellt, bearbeitet<br />

und dokumentiert sowie in Form von SQL-Anweisungen exportiert werden.<br />

� MySQL Administrator<br />

Dieses Werkzeug integriert die MySQL-Funktionen zur Datenbankadministration<br />

und -wartung unter einer grafischen Benutzeroberfläche.<br />

MySQL erlaubt die Verschlüsselung einzelner Zeichenketten in der Datenbank über entsprechende<br />

Funktionen. Dadurch ist eine attributweise Verschlüsselung zum Beispiel<br />

von Passwörtern möglich. Darüber hinaus kann MySQL für die Netzwerkverschlüsselung<br />

mittels SSL konfiguriert werden.<br />

MySQL stellt standardbasierte Treiber für JDBC, ODBC und .NET (ADO.NET) und zahlreiche<br />

Schnittstellen zur Verfügung, sodass Entwickler die Programmiersprache ihrer<br />

Datenbankanwendungen für MySQL verhältnismäßig frei wählen können (zum Beispiel<br />

Java, alle .NET-Sprachen, Perl, PHP, Python, Eiffel). Darüber hinaus existiert eine C-<br />

Bibliothek, die eine direkte Einbettung von MySQL in entsprechende Anwendungen erlaubt.<br />

Zusammenfassend bedeutet das: Neben der Plattformunabhängigkeit ist die Anpassbarkeit<br />

an die Einsatzbedürfnisse über austauschbare Speicher-Engines eine der<br />

Stärken von MySQL. Für das typische Einsatzfeld von MySQL, das heißt die dynamischen<br />

Web-Anwendungen, sind insbesondere auch die mit preiswerter PC-Hardware<br />

realisierbaren Cluster interessant.<br />

1.2 PostgreSQL<br />

Die Ursprünge von PostgreSQL liegen in dem 1986 an der Berkeley-Universität in Kalifornien<br />

von Michael Stonebraker entworfenem Postgres-Datenbanksystem. Seit 1996<br />

gibt es die Software unter dem Namen PostgreSQL. PostgreSQL ist ein reines OSS-<br />

Projekt und wird von einer großen internationalen Entwicklergemeinde 108 vorangetrieben.<br />

PostgreSQL verfügt über eine große Community und wird in vielen Linux-Distributionen<br />

standardmäßig ausgeliefert. Daher ist eine Abschätzung der Nutzerzahlen nur schwer<br />

möglich. Die Entwicklergemeinde berichtet auf ihrer Web-Site von einer Million<br />

Downloads der <strong>Version</strong> 8.0 (die aktuelle <strong>Version</strong> ist 8.2) innerhalb von sieben<br />

Monaten. 109<br />

108 http://www.postgresql.org/developer/<br />

109 http://www.postgresql.org/about/press/faq (Frage 5)<br />

Seite 154


PostgreSQL ist für eine Reihe von Betriebssystemen verfügbar, darunter AIX, Linux,<br />

FreeBSD, HP-UX, Mac OS X, NetBSD, OpenBSD, Solaris 110 , Tru64 UNIX und<br />

Windows 111 .<br />

Die Nutzung von PostgreSQL unterliegt der BSD-Lizenz 112 . Aufgrund der großen Community<br />

und des hohen Bekanntheitsgrades wird kostenpflichtiger Support für PostgreSQL<br />

von vielen Firmen angeboten 113 .<br />

PostgreSQL beinhaltet ein objektrelationales Datenbank-Managementsystem, das heißt<br />

es erlaubt ergänzend zu den Möglichkeiten eines relationalen Datenbank-Managementsystems<br />

die Verwendung selbstdefinierter Datentypen, die nicht atomar sein müssen<br />

und auch unter Verwendung objektorientierter Konzepte wie Vererbung gebildet werden<br />

können.<br />

Auch PostgreSQL bietet in der aktuellen <strong>Version</strong> Funktionen, die über die im einleitenden<br />

Abschnitt beschriebenen grundlegenden Funktionen moderner Datenbanksysteme<br />

hinausgehen, darunter beispielsweise:<br />

� Multiversion Concurrency Control<br />

Mit diesem Mechanismus ermöglicht PostgreSQL das unabhängige Lesen und<br />

Schreiben von Daten durch verschiedene Nutzer. Dazu werden bei Lesezugriffen<br />

Snapshots des aktuellen Zustands der angeforderten Daten erstellt und nur diese<br />

zurückgegeben. Schreibzugriffe, die nach dem Beginn eines Lesezugriffs erfolgen,<br />

haben keinen Einfluss auf die gelesenen <strong>Version</strong>en der Daten mehr.<br />

� Write Ahead Log<br />

PostgreSQL verwaltet ein sogenanntes Write Ahead Log, das alle an der Datenbank<br />

vorgenommenen Änderungen protokolliert und so zum Beispiel die Wiederherstellung<br />

des Datenbankzustands zu einem bestimmten Zeitpunkt (Point in time<br />

recovery) erlaubt. Darüber hinaus kann mit diesem Feature auch ein Live-<br />

Backup realisiert werden.<br />

Für PostgreSQL gibt es eine Reihe von Erweiterungen durch unterschiedliche Organisationen<br />

oder Firmen sowohl in Form von Open-Source-Projekten 114 als auch in Form<br />

proprietärer Produkte 115 . Beispielsweise kann PostgreSQL mit der Erweiterung Post-<br />

GIS 116 als Datenbank für Geoinformationssysteme dienen. Projekte wie pgpool 117 und<br />

PGCluster 118 stellen Replikationsfunktionalität für PostgreSQL-Datenbanksysteme zur<br />

Verfügung. Darüber hinaus sind proprietäre Datenbanksysteme verfügbar, die auf PostgreSQL<br />

basieren.<br />

110<br />

Solaris 10 wird standardmäßig mit PostgreSQL ausgeliefert. Siehe auch:<br />

http://www.sun.com/software/products/postgresql/<br />

111<br />

Möglich sind 2000, XP und 2003. Bisher sind nur Tests mit 32-Bit-<strong>Version</strong>en erfolgt. Siehe<br />

auch http://pginstaller.projects.postgresql.org/faq/FAQ_windows.html#1.1<br />

112<br />

http://www.postgresql.org/about/licence<br />

113<br />

http://www.postgresql.org/support/professional_support<br />

114<br />

115<br />

http://www.postgresql.org/download/<br />

http://www.postgresql.org/download/commercial<br />

116<br />

http://postgis.refractions.net/<br />

117<br />

118<br />

http://pgpool.projects.postgresql.org/<br />

http://pgcluster.projects.postgresql.org/index.html<br />

Seite 155


In der aktuellen <strong>Version</strong> von PostgreSQL ist die Größe der Datenbank nur von den<br />

Möglichkeiten der eingesetzten Hardware beschränkt. Eine einzelne Tabelle kann bis zu<br />

32 TB groß sein. Die Anzahl der Datensätze ist dabei unbegrenzt, ihre maximale Größe<br />

liegt bei 1,6 TB. Die Anzahl der Spalten ist je nach verwendeten Datentypen auf 250 bis<br />

1600 begrenzt, pro Feld können bis zu 1 GB gespeichert werden.<br />

Zur Unterstützung bei der Administration und Konfiguration sind verschiedene Werkzeuge<br />

für PostgreSQL verfügbar:<br />

� PGAdmin<br />

PGAdmin stellt ein umfassendes Werkzeug zur Datenbankadministration mit grafischer<br />

Benutzeroberfläche dar. Neben der Verwaltung und Konfiguration von Datenbanken<br />

unterstützt PGAdmin auch die Datenbankentwicklung, beispielsweise<br />

über den integrierten Editor mit SQL-Syntax-Highlighting.<br />

� phpPgAdmin<br />

Dieses Werkzeug ermöglicht die Web-basierte Administration von PostgreSQL-<br />

Datenbanken.<br />

PostgreSQL bietet die Möglichkeit, die Datenkommunikation zwischen Server und Client<br />

mit SSL zu verschlüsseln. Darüber hinaus können einzelne Spalten in Tabellen verschlüsselt<br />

werden. PostgreSQL kann so konfiguriert werden, dass die Client-Authentifizierung<br />

Kerberos-basiert erfolgt 119 .<br />

Für PostgreSQL existiert neben ODBC- und JDBC-Treibern eine große Zahl von<br />

Schnittstellen, die die Anbindung der Datenbank an selbst entwickelte Anwendungen in<br />

zahlreichen Programmiersprachen und -umgebungen ermöglicht. Neben Ada, C/C++,<br />

Java, Perl, Python und PHP ist auch der Einsatz der .NET-Programmiersprachen möglich.<br />

Zusammenfassend ist festzuhalten, dass PostgreSQL unter den Open-Source-Datenbanksystemen<br />

einen sehr guten Ruf hat. Insbesondere der Funktionsumfang sowie die<br />

Standardkonformität und die einfache Erweiterbarkeit der Datenbank werden geschätzt.<br />

Im Laufe seiner langen Entwicklungszeit hat PostgreSQL einen hohen Reifegrad erreicht<br />

und ist damit ein Datenbanksystem, das auch für große Datenbestände und Lösungen<br />

mit hoher Verfügbarkeit eingesetzt werden kann.<br />

1.3 Firebird<br />

Firebird ist Mitte 2000 als eigenständiges Projekt aus dem von Borland in die Open-<br />

Source-Welt entlassenen Datenbanksystem Interbase 6.0 entstanden. Die Weiterentwicklung<br />

des aktuell in der <strong>Version</strong> 2.0.1 vorliegenden Datenbanksystems wird von der<br />

Firebird Foundation vorangetrieben, in der sich ca. 300 Mitglieder (Einzelpersonen und<br />

Firmen) engagieren 120 . Firebird ist sowohl für unterschiedliche 32-Bit-Windowsversionen<br />

als auch für Linux verfügbar 121 .<br />

119 http://www.postgresql.org/docs/8.2/static/auth-methods.html#KERBEROS-AUTH<br />

120 Stand: August 2007<br />

121 http://www.firebirdsql.org/index.php?op=files&id=engine_201<br />

Seite 156


Der Source Code des Interbase-Datenbanksystems, das die Grundlage von Firebird<br />

bildet, wurde als Open Source unter die InterBase Public License 122 gestellt, Weiterentwicklungen<br />

von Firebird stehen unter der Initial Developer‘s Public License 123 .<br />

Die Firebird kann in zwei Architekturvarianten betrieben werden:<br />

� Classic Server und<br />

� Superserver.<br />

Der Classic Server erzeugt für jede Datenbankverbindung mit einem Client einen eigenen<br />

Prozess mit eigenem Cache. Dies hat Auswirkungen auf unterschiedliche Datenbankparameter<br />

wie zum Beispiel die Cachegröße. Laut Herstellerangaben ist der Ressourcenverbrauch<br />

bei einer geringen Anzahl von Verbindungen niedriger als beim Superserver.<br />

Der Superserver verwendet dagegen nur einen einzigen Prozess für alle Verbindungen<br />

und arbeitet die Anfragen im Rahmen von einzelnen Threads ab. Er ist laut Herstellerangaben<br />

effizienter, wenn die Anzahl paralleler Verbindungen steigt.<br />

Allerdings gibt es je nach Rahmenbedingungen weitere Restriktionen zum Beispiel in<br />

Hinblick auf die maximale Anzahl paralleler Verbindungen. Die Entscheidung für den<br />

Classic- oder Superserver kann daher nur aufgrund individueller Projektanforderungen<br />

getroffen werden. Da ein Wechsel zwischen den beiden Architekturen auch zu einem<br />

späteren Zeitpunkt noch möglich ist, kann je nach Anforderungen die geeignetere der<br />

beiden Architekturen gewählt werden.<br />

Auch Firebird bietet alle Funktionen, die in der Einleitung zu diesem Thema beschrieben<br />

wurden. Zusätzlich dazu verfügt Firebird über Mechanismen zur Spiegelung von Daten<br />

über mehrere Speicherorte, das heißt, die Daten einer Datenbankinstanz werden im<br />

laufenden Betrieb in eine oder mehrere andere Datenbankinstanzen übernommen. Eine<br />

synchrone Replikation, das heißt die Sicherstellung, dass eine Änderung von Daten nur<br />

dann erfolgreich abgeschlossen werden kann, wenn sie auch erfolgreich in die Spiegeldatenbanken<br />

repliziert wurde, ist damit nicht möglich. Auch eine Synchronisation in<br />

beide Richtungen ist nicht möglich. Ein Live-Backup der Datenbank ist mit den<br />

mitgelieferten Werkzeugen möglich.<br />

Grafische Administrations- und Konfigurationstools werden für Firebird nur von dritter<br />

Seite angeboten. Dabei profitiert Firebird von der Interbase-Vergangenheit, die nicht<br />

selten die Verfügbarkeit von Management-Werkzeugen sowohl für Interbase als auch für<br />

Firebird zur Folge hat 124 .<br />

Firebird besitzt keine eigenen Mechanismen zur Verschlüsselung von Daten 125 , verfügt<br />

jedoch über verschiedene Schnittstellen. Darunter sind neben Anbindungen für .NET,<br />

122 http://www.firebirdsql.org/index.php?op=doc&id=ipl<br />

123 http://www.firebirdsql.org/index.php?op=doc&id=idpl<br />

124 http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_admin_tools<br />

125 http://www.firebirdsql.org/pdfmanual/Firebird-Security.pdf<br />

Seite 157


Java, C++, Perl, PHP und Python auch mehrere Delphi-Komponenten, was sich aus der<br />

Borland-Interbase-Vergangenheit erklärt 126 , sowie ODBC-, JDBC- und OLE-DB-Treiber.<br />

Zusammenfassend lässt sich festhalten: Als relativ neuer Mitspieler im Bereich der<br />

Open-Source-Datenbanksysteme ist Firebird im Vergleich zu anderen Vertretern wie<br />

MySQL oder PostgreSQL noch nicht so bekannt. Dementsprechend kleiner ist die<br />

Community und auch das Angebot an kostenpflichtigem Support.<br />

Als Datenbanksystem für den professionellen Einsatz kommt Firebird heute nur eingeschränkt<br />

in Frage. Auch wenn Firebird über eine ganze Reihe Funktionen der anderen<br />

hier beschriebenen Produkte verfügt, gibt es auch Einschränkungen, zum Beispiel in<br />

Form fehlender Replikations- beziehungsweise Synchronisationsmechanismen.<br />

1.4 MaxDB<br />

MaxDB ist Ende der 1970er Jahre als universitäres Forschungsprojekt an der<br />

Technischen Universität Berlin gestartet. Das System wurde in den 1980er Jahren von<br />

Nixdorf als DDB/4 weiterentwickelt und vermarktet, kam dann über Siemens/Nixdorf als<br />

AdabasD zur Software AG und wurde 1997 von SAP übernommen.<br />

Das zwischenzeitlich in SAP DB umbenannte Datenbanksystem wurde im Jahr 2000<br />

unter der GNU Public License (GPL) der Öffentlichkeit zur Verfügung gestellt. SAP führte<br />

jedoch auch danach die Weiterentwicklung kontinuierlich fort.<br />

2004 wurde die SAP DB von MySQL AB erworben und mit der Bezeichnung MaxDB<br />

versehen. MaxDB wurde nach wie vor von SAP als zertifizierte Plattform für das<br />

R/3-System und dessen Nachfolger angeboten und als Kerntechnologie in eigenen<br />

Produkten eingesetzt. Seit Oktober 2007 wird sowohl der Vertrieb als auch der Support<br />

der MaxDB wieder komplett von SAP übernommen.<br />

MaxDB ist für HP-UX, IBM AIX, Linux, Solaris und Windows 2000, XP sowie 2003<br />

Server verfügbar. Laut Herstellerangaben setzen über 6.000 Kunden 127 MaxDB als<br />

Datenbanksystem ein.<br />

MaxDB wird heute von SAP mit einem dualen Lizenzmodell vermarktet. Es ist sowohl<br />

unter der MaxDB Community License 128 als auch unter einer kostenpflichtigen Lizenz 129<br />

verfügbar. Im Rahmen der kostenpflichtigen Lizenz bietet SAP auch Support für MaxDB<br />

an.<br />

Laut Herstellerangaben verfügt das MaxDB-Datenbank-Managementsystem über ausgereifte<br />

Backup- und Restoremechanismen und ist für große Nutzerzahlen und hohe Last<br />

ausgelegt. MaxDB erweitert die grundlegende Funktionalität eines Datenbanksystems<br />

unter anderem um folgende Funktionen:<br />

126 Delphi ist eine von Borland aus Object Pascal entwickelte Programmiersprache, die im<br />

Windows-Umfeld unter anderem aufgrund ihrer nahtlosen COM-Integration und guter GUI-<br />

Entwicklungsmöglichkeiten eine recht große Verbreitung hat.<br />

127 Darunter finden sich allerdings auch Großkunden wie Toyota, Intel, DaimlerChrysler,<br />

Braun-Gillette, Bayer, Colgate, Yamaha und die Deutsche Post.<br />

128 http://maxdb.sap.com/license/MaxDB_Community_License_2007.pdf<br />

129 http://maxdb.sap.com/license/<br />

Seite 158


� Hot-Standby<br />

MaxDB erlaubt die Konfiguration einer Master- und mehrerer Standby-Instanzen<br />

einer Datenbank. Letztere reproduzieren in regelmäßigen Abständen die Änderungen<br />

auf der Master-Instanz. Bei einem Ausfall der Master-Instanz übernimmt<br />

eine der Standby-Instanzen des so gebildeten Clusters automatisch die Rolle des<br />

Masters.<br />

� Sicherung im laufenden Betrieb<br />

Die Daten in der Datenbank können gesichert werden, ohne dass dadurch die<br />

Benutzung der Datenbank eingeschränkt wird.<br />

� Snapshot-Funktionalität<br />

Ein bestimmter Zustand der Datenbank kann mittels Snapshot eingefroren<br />

werden. Änderungen nach diesem Zeitpunkt erfolgen unter Vorbehalt und können<br />

entweder vollständig verworfen werden oder durch Löschung des vorhandenen<br />

beziehungsweise Erstellung eines neuen Snapshots übernommen<br />

werden.<br />

Bei einer Page Size von 8 KB ist eine maximale Datenbankgröße von 32 TB möglich.<br />

MaxDB bietet verschiedene Werkzeuge für Administration und Einsatz, so zum Beispiel:<br />

� Installation Manager<br />

Der Installation Manager bietet eine einheitliche grafische Schnittstelle zur Installation<br />

von MaxDB auf den unterstützten Betriebssystemen.<br />

� Database Manager<br />

Mit dem Database Manager lassen sich Datenbanken erzeugen, überprüfen,<br />

überwachen, archivieren und wiederherstellen. Für dieses Werkzeug existieren<br />

drei verschiedene Benutzerschnittstellen: eine Kommandozeilenschnittstelle, eine<br />

grafische Benutzeroberfläche (nur unter Windows) und eine Web-basierte<br />

Schnittstelle für den entfernten Zugriff.<br />

� SQL Studio<br />

Das SQL Studio erlaubt die Interaktion mit einer Datenbank über SQL-<br />

Anweisungen. Es ist nur für Windows erhältlich, kann aber auf entfernte Datenbanken<br />

auf anderen Rechnern zugreifen.<br />

� Database Analyzer<br />

Der Database Analyzer ist ein Werkzeug zur Analyse der Datenbank-<br />

Performance. Er dient der Identifikation von Konfigurations- und Synchronisationsproblemen<br />

sowie von Problemen bei der Verarbeitung von Datenbankabfragen.<br />

� Synchronization Manager<br />

Mit dem Synchronization Manager können die Daten zwischen einer Master-<br />

Datenbank-Instanz und mehreren Slave-Datenbank-Instanzen synchronisiert<br />

werden. Damit kann der Synchronization Manager auch zur Replikation von<br />

Datenbanken eingesetzt werden.<br />

Seite 159


MaxDB bietet bei der Verwendung in einem SAP-System die Möglichkeit, auch die<br />

Kommunikation mit der Datenbank mittels SSL zu verschlüsseln.<br />

Neben Schnittstellen zur Anwendungsprogrammierung mit Java, Perl, PHP und Python<br />

sowie ODBC- und JDBC-Treibern existiert für MaxDB auch eine integrierte WebDAV-<br />

Schnittstelle 130 , über die Anwender mit Web-Browsern auf die Datenbankinhalte zugreifen<br />

können.<br />

Zusammenfassend ist festzuhalten: Die zukünftige Weiterentwicklung der MaxDB wird<br />

durch die Unterstützung von SAP gesichert. Schon das Einsatzszenario als zertifiziertes<br />

Datenbanksystem für SAP/R3 macht deutlich, dass es sich um ein System handelt, das<br />

für den Einsatz in großen SAP-Umgebungen konzipiert ist. MaxDB wird in der allgemeinen<br />

Wahrnehmung als Nischenprodukt unterschätzt. Seine Leistungsfähigkeit qualifiziert<br />

das MaxDB-Datenbanksystem jedoch durchaus auch für den Einsatz in anderen anspruchsvollen<br />

Bereichen.<br />

1.5 Microsoft SQL Server 7.0/2000/2005<br />

Bei Microsoft SQL Server handelt es sich um ein proprietäres relationales<br />

Datenbanksystem, das aktuell in der <strong>Version</strong> 2005 vertrieben wird und je nach Edition für<br />

unterschiedliche Windows-Betriebsystem-<strong>Version</strong>en verfügbar 131 ist. Die Entwicklung<br />

des Microsoft SQL Servers geht auf eine Kooperation zwischen Microsoft und Sybase 132<br />

Ende der 80er Jahre zurück. Microsoft SQL Server ist bezüglich seines Marktanteils auf<br />

Platz drei hinter Oracle und IBM, hatte jedoch 2006 eine höhere Wachstumsrate als<br />

seine Wettbewerber 133 .<br />

Für den Einsatz von Microsoft SQL Server 2005 existieren drei Lizenzmodelle 134 :<br />

� Server plus gerätebasierte Client-Zugriffslizenz (CAL)<br />

In diesem Modell muss neben einer Lizenz für jeden Server, auf dem Microsoft<br />

SQL Server läuft, für jedes darauf zugreifende Gerät (PC, Arbeitsplatz, Terminal,<br />

PDA, Mobiltelefon usw.) eine entsprechende Zugriffslizenz erworben werden.<br />

� Server plus nutzerbasierte Client-Zugriffslizenz (CAL)<br />

In diesem Modell muss neben einer Lizenz für jeden Server, auf dem Microsoft<br />

SQL Server läuft, für jeden darauf zugreifenden Nutzer eine entsprechende Zugriffslizenz<br />

erworben werden.<br />

� Prozessor-Lizenz<br />

Erfordert eine Einzellizenz für jede CPU in der Betriebssystemumgebung, in der<br />

der SQL Server ausgeführt wird. Diese Lizenz beinhaltet uneingeschränkten Zugriff<br />

für Client-Geräte.<br />

130 http://de.wikipedia.org/wiki/WebDAV<br />

131 http://www.microsoft.com/germany/sql/uebersicht/systemanforderungen.mspx<br />

132 Inzwischen (seit der <strong>Version</strong> 7) wurden die letzten Sybase-Relikte entfernt.<br />

133 http://www.gartner.com/it/page.jsp?id=507466<br />

134 Weitere Informationen zu den einzelnen Lizenzmodellen finden sich unter<br />

http://download.microsoft.com/download/c/7/2/c727d265-188c-45ae-9ca0ff5fd19089e8/wp_sql_2005_lizenzierung_de.pdf<br />

Seite 160


Microsoft bietet vier Editionen des SQL Server 2005 mit unterschiedlichem Leistungsumfang<br />

an:<br />

� Express<br />

Diese kostenlose Edition ist auf einen Prozessor und maximal 1 GB Hauptspeicher<br />

beschränkt. Darüber hinaus ist auch die Größe der verwalteten Datenbank<br />

auf maximal 4 GB begrenzt.<br />

� Workgroup<br />

Diese Edition ist auf zwei Prozessoren und maximal 3 GB Hauptspeicher<br />

beschränkt. Bei dieser und den folgenden Editionen ist die Datenbankgröße<br />

prinzipiell unbegrenzt.<br />

� Standard<br />

Diese Edition ist auf vier Prozessoren beschränkt. Der verwendbare Hauptspeicher<br />

ist nur von den Möglichkeiten des eingesetzten Betriebssystems abhängig.<br />

� Enterprise<br />

Diese Edition ist hinsichtlich der Prozessorzahl unbeschränkt. Der verwendbare<br />

Hauptspeicher ist nur von den Möglichkeiten des eingesetzten Betriebssystems<br />

abhängig.<br />

Der Microsoft SQL Server 2005 setzt sich aus mehreren funktionalen Bestandteilen<br />

zusammen:<br />

� Datenbankmodul<br />

Das Datenbankmodul beinhaltet die eigentliche Datenbank-Engine zum Speichern,<br />

Verarbeiten und Sichern von Daten.<br />

� Integration Services<br />

Die SQL Server 2005 Integration Services (SSIS) dienen der Datenintegration<br />

und -Transformation. Es können Daten aus unterschiedlichen Quellen, zum Beispiel<br />

aus XML-Datendateien, Flatfiles oder relationalen Datenquellen extrahiert<br />

und transformiert werden.<br />

� Reporting Services<br />

SQL Server 2005 Reporting Services (SSRS) bietet die Möglichkeit zur Erstellung<br />

von Datenberichten. Es stehen Tools zur Verfügung, die die Erstellung und<br />

Verwaltung von Berichten erlauben.<br />

� Analysis Services<br />

Die Analysis Services umfassen zentrale Dienste zur Analyse von Geschäftsdaten<br />

und Data-Mining-Funktionalitäten.<br />

� Service Broker<br />

Der Service Broker des SQL Server 2005 bietet Unterstützung im Bereich Messaging-<br />

und Warteschlangenanwendungen, indem er eine nachrichtenbasierte,<br />

bei Bedarf auch asynchrone Kommunikation zwischen Anwendungen erlaubt, die<br />

einen gemeinsamen oder mehrere verteilte Microsoft SQL Server verwenden.<br />

Seite 161


Microsoft SQL Server 2005 bietet neben den in der Einleitung erwähnten Funktionen<br />

beispielsweise auch die folgenden Funktionen:<br />

� Benutzerdefinierte Datentypen<br />

Microsoft SQL Server erlaubt die Einbindung eigener, auch komplexer Datentypen<br />

in die Typstruktur des Datenbank-Managementsystems. Diese können dann<br />

wie die eingebauten Datentypen in Datenbanken verwendet werden.<br />

� Ausfallsicherheit durch Clusterbildung<br />

Microsoft SQL Server lässt sich in Windows-Clustern 135 , die einen gemeinsamen<br />

Speicherbereich verwalten, so konfigurieren, dass der Ausfall eines Prozessors<br />

oder anderer nicht speicherrelevanter Hardware kompensiert werden kann.<br />

� Replikation<br />

Hierbei handelt es sich um Technologien, die sowohl die Duplikation von Daten in<br />

mehreren Datenbanken als auch eine Synchronisation zwischen den einzelnen<br />

Datenbanken, also die Sicherstellung gleicher Inhalte in den einzelnen Kopien,<br />

ermöglichen.<br />

� Volltextsuche<br />

Die Volltextsuche ermöglicht Volltextabfragen in rein zeichenbasierten Daten<br />

innerhalb von SQL-Server-Tabellen.<br />

Für die Administration des Microsoft SQL Servers 2005 steht das SQL Server Management<br />

Studio zur Verfügung, das beispielsweise die folgenden Tools und Dienstprogramme<br />

enthält:<br />

� Business Intelligence Development Studio<br />

Hierbei handelt es sich um eine Entwicklungsumgebung, die die Erstellung und<br />

das Debuggen von Datenintegrations,- Data Mining- und Berichterstellungslösungen<br />

ermöglicht.<br />

� SQL Server Konfigurationsmanager<br />

Der Konfigurationsmanager bietet die Möglichkeit zur Konfiguration von Autostartoptionen<br />

und erweiterten Optionen.<br />

� Microsoft SQL Server Agent<br />

Der SQL Server Agent ermöglicht das Erstellen und Planen von Aufgaben, die<br />

einmalig oder periodisch automatisiert ausgeführt werden sollen. Es können<br />

Warnungen für den Administrator ausgegeben werden, wenn bestimmte Systemzustände<br />

eintreten.<br />

� Microsoft SQL Server Profiler<br />

Dieser erlaubt die Überwachung und Analyse von Server-Ereignissen.<br />

� Datenbankmodul-Optimierungsratgeber<br />

Hierbei handelt es sich um ein Tool zur Optimierung der Datenbankleistung.<br />

135 http://msdn2.microsoft.com/en-us/library/ms952401.aspx<br />

Seite 162


Als Besonderheit bietet der Microsoft SQL Server ähnlich wie die DB2 von IBM die<br />

Möglichkeit, eine „shared-nothing― Architektur zu realisieren. Dabei werden die Daten auf<br />

unterschiedliche Datenbankknoten mit Datentöpfen verteilt. Jeder Datentopf verfügt<br />

dabei über eigene Ressourcen wie Prozessor, Festplatten und Hauptspeicher. Zudem<br />

enthält jeder Datentopf eigene Daten, das heißt in jedem Datentopf ist nur ein Teil der<br />

Gesamtmenge an Daten vorhanden. Wird eine Anfrage an einen beliebigen<br />

Datenbankknoten gestellt, so fragt dieser die jeweils benötigten Daten aus den einzelnen<br />

Daten-töpfen ab und führt sie zusammen. Eine Anfrage kann daher an jeden beliebigen<br />

Knoten gestellt werden.<br />

Der Microsoft SQL Server 2005 verfügt über eine integrierte Infrastruktur für die<br />

Schlüsselverwaltung. Diese definiert eine Schlüsselhierarchie, in der die Schlüssel einer<br />

Hierarchiestufe jeweils zur Verschlüsselung der darunter liegenden Ebene verwendet<br />

werden. Die oberste Hierarchieebene bildet dabei ein kennwortbasierter Windows-<br />

Betriebssystemdienst 136 . Weitere Ebenen stellen die jeweilige SQL-Server-Instanz, die<br />

zu verschlüsselnde Datenbank und die in ihr enthaltenen Daten dar 137 .<br />

Die bei der Nutzung der Analysis Services auftretende Kommunikation zwischen Client<br />

und Server ist in der Standardeinstellung verschlüsselt. Client-Abfragen, die unverschlüsselt<br />

erfolgen oder unverschlüsselte Antworten erwarten, können von einem entsprechend<br />

konfigurierten Server explizit abgelehnt werden.<br />

Darüber hinaus wird bei Vorhandensein eines Active Directory indirekt über das<br />

Windows-interne Security Service Provider Interface auch eine Kerberos-basierte<br />

Authentifizierung unterstützt 138 .<br />

Zur Einbindung des Microsoft SQL Servers 2005 in eigene Anwendungen existieren<br />

neben ODBC- und OLE-DB-Treibern auch Anbindungen an das .NET-Framework. Seit<br />

kurzem steht darüber hinaus auch ein JDBC-Treiber zur Benutzung des Microsoft SQL<br />

Servers aus Java-Anwendungen heraus zur Verfügung.<br />

Microsoft SQL Server ist sehr eng mit anderen Microsoft-Produkten verbunden. So ist er<br />

für einige Produkte (zum Beispiel Windows SharePoint Services in größeren Installationen)<br />

eine Voraussetzung. Andererseits setzen einige seiner Funktionen (zum Beispiel<br />

die Datenverschlüsselung) direkt auf Funktionen des Microsoft-Windows-Betriebssystems<br />

auf. Diese hohe Integration erlaubt zwar eine nahtlose Einbindung des<br />

Microsoft SQL Server in eine Windows-basierte Anwendungslandschaft, impliziert jedoch<br />

auch die Entscheidung für weitere Microsoft-Produkte und kann eine eventuell gewünschte<br />

spätere Ablösung erschweren.<br />

Somit lässt sich feststellen: Microsoft SQL Server ist ein leistungsfähiges Datenbanksystem<br />

mit umfangreicher Funktionalität. Sein Einsatzbereich ist jedoch, anders als bei<br />

136 Dieser Dienst implementiert die Data Protection API (DPAPI). Siehe auch:<br />

http://msdn2.microsoft.com/en-us/library/ms995355.aspx<br />

137 Eine ausführlichere Beschreibung findet sich in dieser Präsentation:<br />

http://download.microsoft.com/download/4/1/6/416bdb4a-67e9-4269-bcdc-<br />

33dedb7f64fe/encryptionatmstwpppt.ppt.<br />

weitere Informationen unter: http://msdn2.microsoft.com/en-us/library/ms189586.aspx<br />

138 Hierbei ist zu beachten, dass das SSPI auf die schwächere NTLM-Authentifizierung zurückgreift,<br />

wenn keine Kerberos-Authentifizierung möglich ist. siehe dazu:<br />

http://blogs.msdn.com/sql_protocols/archive/2005/10/12/479871.aspx<br />

Seite 163


den anderen hier betrachteten Produkten, auf das Windows-Betriebssystem beschränkt.<br />

In der einsetzenden Organisation wird also entsprechendes Wissen zur Administration<br />

von Windows-Betriebssystemumgebungen und -Netzwerken benötigt.<br />

1.6 Oracle<br />

Die Entwicklung des Oracle Datenbanksystems beginnt mit der Gründung der Firma<br />

Software Development Laboratories (SDL) im Jahr 1977. Ziel war die Entwicklung einer<br />

Datenbank, die zu IBMs System R Datenbank kompatibel ist. 1983 wurde neben dem<br />

Datenbanksystem auch das Unternehmen in Oracle umbenannt.<br />

Heute zählt Oracle zu den führenden Datenbanksystemen. Laut Gartner erreicht Oracle<br />

einen Marktanteil von rund 47% im Jahre 2006. 139 Oracle wird aktuell in der <strong>Version</strong> 11g<br />

vertrieben und steht in folgenden Editionen für Linux, UNIX und Windows zur Verfügung:<br />

� Express 10g<br />

Diese kostenlose Edition ist auf eine CPU und maximal 1 GB Hauptspeicher<br />

beschränkt. Darüber hinaus ist auch die maximale Datenbankgröße auf 4 GB<br />

begrenzt.<br />

� Standard Edition One<br />

Diese Edition ist auf Servern mit maximal zwei Prozessoren einsetzbar. Der<br />

verwendbare Hauptspeicher wird nur von den Möglichkeiten des eingesetzten<br />

Betriebssystems begrenzt. Die Datenbankgröße ist bei dieser und den folgenden<br />

Editionen prinzipiell unbegrenzt.<br />

� Standard<br />

Diese Edition ist auf Servern mit maximal vier Prozessoren einsetzbar. Der<br />

verwendbare Hauptspeicher wird nur von den Möglichkeiten des eingesetzten<br />

Betriebssystems begrenzt.<br />

� Enterprise Edition<br />

Diese Edition ist hinsichtlich der Prozessorzahl unbeschränkt. Der verwendbare<br />

Hauptspeicher ist nur von den Möglichkeiten des eingesetzten Betriebssystems<br />

abhängig.<br />

Für die kostenpflichtigen Editionen stehen folgende Lizenzmodelle zur Verfügung:<br />

� Named User Plus<br />

Hierbei ist für jeden Nutzer, der auf die Datenbank zugreift, eine Lizenz zu<br />

erwerben. Zu beachten ist, dass auch „non-human operated devices―, also<br />

beispielsweise Temperatursensoren, die eine Datenbank mit aktuellen Werten<br />

versorgen, als Nutzer zählen.<br />

� Prozessor<br />

Hierbei ist für jeden Prozessor, auf dem die Oracle-Software läuft, eine Lizenz zu<br />

erwerben. Bei Mehrkernprozessoren zählt prinzipiell die Zahl der Prozessor-<br />

139 http://www.gartner.com/it/page.jsp?id=507466<br />

Seite 164


kerne, allerdings gibt es für die einzelnen Prozessortypen unterschiedliche<br />

Faktoren, mit denen die Zahl der Prozessorkerne gewichtet wird. 140<br />

Oracle ist in der <strong>Version</strong> 11g als Grid-Datenbank konzipiert. Dabei erfolgt eine Trennung<br />

der physikalischen und der logischen Struktur der Datenbank. Die physikalische<br />

Speicherung der Daten wird unabhängig vom Zugriff auf die logische Struktur verwaltet.<br />

Eine große Anzahl von Servern und Speichergeräten agiert dabei als ein sich selbst<br />

verwaltendes Grid.<br />

Oracle verfügt im Vergleich zu anderen Datenbank-Managementsystemen über einen<br />

sehr großen Funktionsumfang. An dieser Stelle werden beispielhaft einige Erweiterungsmöglichkeiten<br />

für Oracles Datenbanksystem dargestellt:<br />

� Real Application Testing<br />

Diese Erweiterung ermöglicht die Übernahme und Wiederholung der aktuellen<br />

Last eines Produktivsystems in einer Testumgebung, um Auswirkungen von<br />

Systemänderungen unter realistischen Bedingungen prüfen zu können.<br />

� Real Application Clusters (RAC)<br />

Durch die Verteilung einer Datenbank über mehrere Server ergibt sich die Möglichkeit,<br />

große Systeme aufzubauen. Dabei können zur Erweiterung der Datenbank<br />

weitere Server im laufenden Betrieb hinzugefügt werden.<br />

� Oracle Data Mining (ODM)<br />

Ermöglicht den Aufbau integrierter Business Intelligence Anwendungen auf Basis<br />

von Data-Mining-Funktionalitäten.<br />

� Oracle Active Data Guard<br />

Ermöglicht die Auslagerung rechenintensiver Aufgaben wie komplexe Abfragen<br />

oder Backups an Standby-Datenbanken.<br />

� Automatic Storage Management<br />

Ermöglicht die automatische Spiegelung und das Balancing von Daten über die<br />

verfügbaren Speichergeräte sowohl zum Schutz der Daten als auch zur Optimierung<br />

der Performance. Dabei ist auch das Hinzufügen oder Entfernen von Datenspeichern<br />

möglich.<br />

� Oracle XML DB 141<br />

Mit dieser Erweiterung steht eine Möglichkeit zur Verfügung, XML-Daten strukturiert<br />

zu speichern, sodass sie effizienter abgefragt werden können.<br />

Zur Konfiguration und Administration von Oracle-Datenbanken existiert eine Reihe von<br />

Werkzeugen, darunter zum Beispiel:<br />

� Oracle Enterprise Manager<br />

Dieses Werkzeug dient der allgemeinen Verwaltung und Administration von<br />

Datenbanken. Einzelne sogenannte Management Packs decken dabei unterschiedliche<br />

Aspekte ab.<br />

140 Nähere Informationen zum insgesamt recht komplexen Lizenzmodell von Oracle finden sich<br />

hier: http://www.oracle.com/corporate/pricing/sig.pdf<br />

141 http://www.oracle.com/technology/tech/xml/xmldb/index.html<br />

Seite 165


� SQL Performance Analyzer<br />

Dieses Werkzeug kann zur Analyse von Performance-Problemen in Datenbanken<br />

eingesetzt werden.<br />

� SQL Tuning Advisor<br />

Der SQL Tuning Advisor kann bei der Lösung von Performance-Problemen in<br />

Datenbanken verwendet werden.<br />

Oracle 11g bietet für die Enterprise Edition optional die flexible Vergabe von Zugriffsrechten<br />

über sogenannte Labels auf Spalten- und Zeilenebene an. Damit kann sehr<br />

detailliert gesteuert werden, auf welche Teile einer Tabelle welcher Nutzer in welchem<br />

Umfang zugreifen darf 142 . Für die Enterprise Edition stehen darüber hinaus auch<br />

Optionen zur Erhöhung der Datensicherheit über Verschlüsselung des Netzwerks,<br />

einzelner Daten, von Datentypen oder kompletten Tabellenbereichen zur Verfügung 143 .<br />

Oracle lässt sich wie andere Datenbanksysteme auch aus selbst entwickelten Anwendungen<br />

über entsprechende Schnittstellen ansprechen. Es existieren neben ODBC-,<br />

OLE-DB- und JDBC-Treibern diverse APIs, sodass Datenbankanwendungen unter Verwendung<br />

von beispielsweise C, C++, Java, Perl, PHP und allen .NET-Programmiersprachen<br />

entwickelt werden können. Darüber hinaus existiert die Entwicklungsumgebung<br />

144 „Oracle-Application-Express― zur Entwicklung von webbasierten Anwendungen<br />

mit direktem Datenbankzugriff.<br />

Zusammenfassend kann festgehalten werden, dass Oracle häufig für große Datenbestände<br />

mit hohen Lastanforderungen eingesetzt wird. Allerdings geht mit der Vielzahl<br />

der gebotenen Funktionalitäten auch eine hohe Komplexität einher. Sollen die Möglichkeiten<br />

eines Oracle-Datenbanksystems voll genutzt werden, so sind die Konzeption und<br />

der Betrieb auch entsprechend aufwändig<br />

1.7 IBM DB2<br />

DB2 wurde von IBM erstmals im Jahre 1983 vorgestellt und basiert auf den Arbeiten in<br />

IBMs System-R-Projekt, welches die erste Umsetzung der 1970 vorgestellten Konzepte<br />

relationaler Datenbanken darstellte 145 .<br />

IBM DB2 ist für zahlreiche Betriebssysteme verfügbar, darunter Linux, UNIX und Windows<br />

146 . In Großrechnerumgebungen ist IBM DB2 traditionell marktführend, hat aber<br />

auch in den anderen Bereichen signifikante Marktanteile 147 .<br />

142 http://www.oracle.com/database/label-security.html<br />

143 http://www.oracle.com/database/advanced-security.html<br />

144 http://download.oracle.com/docs/cd/B28359_01/appdev.111/b32258/toc.htm<br />

145 http://www-128.ibm.com/developerworks/db2/library/techarticle/0301jones/0301jones.html<br />

146 http://www-306.ibm.com/software/data/db2/9/sysreqs.html<br />

147 http://www.gartner.com/it/page.jsp?id=507466<br />

Seite 166


Die Lizenzmodelle orientieren sich an der Anzahl zugelassener Nutzer pro Server beziehungsweise<br />

pro Prozessor. IBM DB2 wird zudem in unterschiedlichen Editionen angeboten:<br />

� DB2 Express-C<br />

Diese kostenlose Edition ist auf 2 CPUs und 4 GB Hauptspeicher beschränkt. Sie<br />

enthält anders als die anderen Editionen bereits pureXML (s.u.), besitzt jedoch<br />

einen etwas reduzierten Funktionsumfang. 148<br />

� DB2 Express<br />

Diese Edition ist auf 2 CPUs und 4 GB Hauptspeicher beschränkt, bei nutzerbasierten<br />

Lizenzen müssen mindestens 5 je Server erworben werden.<br />

� DB2 Workgroup<br />

Diese Edition ist auf 4 CPUs und 16 GB Hauptspeicher beschränkt, bei nutzerbasierten<br />

Lizenzen müssen mindestens 5 je Server erworben werden.<br />

� DB2 Enterprise<br />

Diese Edition ist hinsichtlich CPUs und Hauptspeicher unbeschränkt, bei nutzerbasierten<br />

Lizenzen müssen mindestens 25 je Prozessor erworben werden.<br />

Auch IBM DB2 verfügt über einen großen Funktionsumfang. Mit Ausnahme der Express-<br />

C-Edition bieten alle Editionen neben der in der Einleitung dieses Themas erwähnten<br />

üblichen Funktionalität aktueller Datenbank-Managementsysteme auch eine Möglichkeit<br />

zur Datenbankreplikation.<br />

Wie bei Oracle kann der Funktionsumfang von DB2 optional erweitert werden. An dieser<br />

Stelle werden beispielhaft einige dieser Optionen dargestellt:<br />

� Speicherplatzoptimierung<br />

Mittels Datenkompression wird der für Tabellen benötigte Speicherplatz reduziert.<br />

� Tabellenpartitionierung<br />

Große Tabellen können anhand der Werte in einer oder mehreren Spalten auf<br />

mehrere Speicherobjekte verteilt werden. Die Tabellengröße wird somit nicht<br />

mehr vom Datenbank-Managementsystem begrenzt, sondern nur noch vom vorhandenen<br />

Speicherplatz.<br />

� Datenbankpartitionierung<br />

Große Datenbanken können über mehrere Server verteilt werden, ohne dass auf<br />

Nutzer- und Anwendungsebene Anpassungen notwendig werden.<br />

� Verwaltung geodätischer Daten<br />

IBM DB2 kann um Funktionen zur Verarbeitung geografischer Informationen<br />

erweitert werden.<br />

� pureXML<br />

Diese bei Express-C standardmäßig vorhandene und für die anderen Editionen<br />

optional verfügbare Erweiterung speichert XML-Daten in einer speziellen hierarchischen<br />

Struktur, die deren effizientere Verarbeitung ermöglicht.<br />

148 http://www-306.ibm.com/software/data/db2/express/getstarted.html<br />

Seite 167


Zur Administration und Konfiguration von DB2-Datenbanken existieren verschiedene<br />

Werkzeuge, darunter zum Beispiel:<br />

� DB2 Performance Expert<br />

Die Performance von Datenbanken kann mit diesem Werkzeug analysiert werden.<br />

Zudem können Performance-Probleme identifiziert und behoben werden.<br />

� DB2 Query Patroller<br />

Dieses Werkzeug dient der Überprüfung und Ausführungssteuerung für Abfragen.<br />

Abfragen können anhand verschiedener Parameter für eine sofortige oder<br />

verzögerte Ausführung vorgesehen oder auch abgewiesen werden.<br />

Als Besonderheit bezeichnet IBM die Möglichkeit eine „shared-nothing― Architektur mit<br />

DB2 zu realisieren. Dabei werden die Daten auf unterschiedliche Datenbankknoten mit<br />

Datentöpfen verteilt. Jeder Datentopf verfügt dabei über eigene Ressourcen wie Prozessor,<br />

Festplatten und Hauptspeicher. Zudem enthält jeder Datentopf eigene Daten,<br />

das heißt in jedem Datentopf ist nur ein Teil der Gesamtmenge an Daten vorhanden.<br />

Wird eine Anfrage an einen beliebigen Datenbankknoten gestellt, so fragt dieser die<br />

jeweils benötigten Daten aus den einzelnen Datentöpfen ab und führt sie zusammen.<br />

Eine Anfrage kann daher an jeden beliebigen Knoten gestellt werden. Laut Herstellerangaben<br />

hat diese Architektur Vorteile bei hochperformanten, parallelisierten Datenbanklösungen.<br />

Für die Enterprise Edition existiert optional die flexible Vergabe von Zugriffsrechten auf<br />

Spalten- und Zeilenebene über so genannte Labels. So kann sehr detailliert gesteuert<br />

werden, auf welche Teile einer Tabelle welcher Nutzer in welchem Umfang zugreifen<br />

darf 149 .<br />

IBM DB2 lässt sich wie andere Datenbanksysteme auch aus selbst entwickelten<br />

Anwendungen über entsprechende Schnittstellen ansprechen. Es existieren diverse<br />

APIs 150 , sodass Datenbankanwendungen unter Verwendung von beispielsweise<br />

Microsoft Visual Studio .NET, IBM WebSphere Studio Application Developer, aber auch<br />

Eclipse entwickelt werden können. Als Programmiersprachen kommen dabei C, C++,<br />

COBOL, Fortran, Java, Perl, PHP, REXX und alle .NET-Programmiersprachen in Frage.<br />

Ergänzend existieren ODBC-, JDBC- und OLE-DB-Treiber.<br />

Damit ist IBM DB2 ein leistungsfähiges Datenbanksystem mit umfangreicher Funktionalität,<br />

das in seinen unterschiedlichen Editionen verschiedenen Anforderungen gerecht<br />

wird. Die IBM DB2 ist für eine große Zahl von Plattformen verfügbar.<br />

2 Migrationspfade<br />

Im Rahmen einer Migrationsstrategie spielen relationale Datenbank-Managementsysteme<br />

(RDBMS) insofern eine besondere Rolle, als sie immer mit mindestens einer<br />

weiteren Anwendung verbunden sind. Idealerweise liegen die Daten einer Organisation<br />

149 http://www-306.ibm.com/software/data/db2/9/editions_features_advaccess.html<br />

150 Unter http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg27009552 finden sich<br />

zahlreiche Dokumente zu DB2, darunter insbesondere auch die folgende Datei, die einen<br />

guten Überblick über die Möglichkeiten der Anwendungsentwicklung für DB2 bietet:<br />

ftp://ftp.software.ibm.com/ps/products/db2/info/vr9/pdf/letter/en_US/db2axe90.pdf<br />

Seite 168


in nur einem Datenbanksystem in normalisierter Form (ohne Redundanz) vor. Zudem ist<br />

im Idealfall die Abfragesprache (SQL), mit der die Anwendungen auf der Datenbank<br />

arbeiten, standardisiert und jede Anwendung sollte mit jedem RDBMS problemlos zusammenarbeiten.<br />

In der Realität finden sich in vielen IT-Infrastrukturen mehrere RDBMS,<br />

in denen teilweise die gleichen Daten mehrfach verwaltet werden und die von verschiedenen<br />

Anwendungen mit unterschiedlichen SQL-Dialekten und hersteller-spezifischen<br />

Spracherweiterungen sowie über herstellerspezifische Schnittstellen abgefragt werden.<br />

Die Ausführungen in Kapitel II.A 1 zeigen, dass sich die einzelnen Datenbank-Produkte<br />

in vielerlei Hinsicht voneinander unterscheiden. Als potenzielle Migrationshemmnisse<br />

können sich unter anderem die Unterschiede in Bezug auf folgende Aspekte auswirken:<br />

� Erweiterte Funktionalitäten, die vom Standard abweichen oder darüber hinaus<br />

gehen<br />

� Implementierte Datentypen<br />

� Implementierte Sicherheitsfunktionen<br />

� Angebotene Funktionen zur Notfallvorsorge und Hochverfügbarkeit, zum Beispiel<br />

Clustering und Replikation<br />

� Unterstützte Betriebssysteme, auf denen die Datenbank-Produkte lauffähig sind<br />

� Angebotene Lizenzmodelle<br />

� Unterstützte Speicherformate<br />

� Verfügbare administrative Tools<br />

� Verfügbare Zusatzprodukte<br />

� Verfügbare Schnittstellen und Treiber<br />

� Unterstützte SQL-Dialekte<br />

� Vorgegebene Systemgrenzen, beispielsweise die maximale Größe von Feldern,<br />

Tabellen und Datenbanken<br />

� Maximale Speicher- und Verarbeitungsgeschwindigkeit<br />

Eine Migration bietet vor diesem Hintergrund die Chance, eine Konsolidierung der<br />

Software- und Datenstrukturen durchzuführen. Gleichzeitig müssen bei einer Migration<br />

neben dem Datenbestand i.d.R. auch die Anwendungen umgestellt werden, was in<br />

vielen Fällen nicht ohne Eingriff in die Client-Software möglich ist. Unter Client-Software<br />

wird in diesem Zusammenhang eine beliebige Anwendung verstanden, die auf die<br />

Datenbank zugreift. Häufig läuft die Client-Software auf einem Applikationsserver. Selbst<br />

wenn die Datenbankanbindung mittels ODBC oder JDBC standardisiert ist und keine<br />

Trigger oder Stored Procedures verwendet werden, muss bei einer Datenbankmigration<br />

clientseitig mindestens der ODBC/JDBC-Treiber ausgetauscht werden. Die Zentralisierung<br />

und Konsolidierung des Datenbestandes bedarf also offensichtlich einiger<br />

Aufwände. Andererseits ist sie ein sehr attraktives Ziel, weil hierdurch im laufenden<br />

Betrieb erhebliche Pflegeaufwände und damit Kosten reduziert werden können.<br />

Für die Migration von Datenbankschemata gibt es herstellerunabhängige Tools, die eine<br />

Migration zwischen beliebigen Datenbanken ermöglichen. Diese Tools können jedoch<br />

Seite 169


längst nicht alle Probleme einer Datenbankmigration lösen. Problematisch sind in der<br />

Regel der Einsatz proprietärer Datenbanktechnologien und die Migration der gegebenenfalls<br />

in der Datenbank vorhandenen Programmlogik. Aus diesem Grund sollten auch<br />

im Hinblick auf zukünftige Migrationen relevante Aspekte beim Design einer Datenbanklösung<br />

beachtet werden:<br />

� Bei der Ausgestaltung einer Datenbanklösung sollte eine Orientierung an<br />

herstellerunabhängigen Standards erfolgen. Die Anwendung von herstellerspezifischen<br />

Techniken, die Auswirkungen auf die restliche IT-Infrastruktur haben,<br />

sollte vermieden werden. So sollten zum Beispiel die Anbindung an eine Datenbank<br />

über ODBC oder JDBC erfolgen und zur Datenabfrage ANSI SQL eingesetzt<br />

werden. Auf Stored Procedures und herstellerspezifische Erweiterungen<br />

sollte wo immer möglich verzichtet werden.<br />

� Eine Datenbanklösung sollte sich auf die Kernfunktionalität einer Datenbank,<br />

nämlich die strukturierte Sammlung und die Ablage von Daten in elektronischer<br />

Form, konzentrieren. Insbesondere sollte auf die Trennung von Geschäfts- und<br />

Datenhaltungslogik geachtet werden, wie dies u.a. auch von SAGA gefordert<br />

wird. Das heißt die Programmlogik sollte in der Middleware realisiert werden und<br />

nicht in der Datenbank, da ansonsten Migrationsprojekte sehr schwierig und<br />

zeitintensiv werden können. Wenn eine Verlagerung von Geschäftslogik oder<br />

Funktionalität vom Client hin zum Server gewünscht ist, lässt sich dies heute sehr<br />

gut mit 3-Schicht-Architekturen erreichen. Im Sinne einer plattformunabhängigen<br />

Implementierung bietet sich hier Java sowohl für den Client als auch für den<br />

Applikationsserver (Tomcat u.a.) an. Wird Geschäftslogik hingegen in die<br />

Datenbank verlagert, muss diese später ebenfalls migriert werden. Da für die<br />

Implementierung der Geschäftslogik von den einzelnen Datenbanksystemen<br />

unterschiedliche, häufig proprietäre Lösungen angeboten werden, können daraus<br />

erhebliche Migrationsaufwände entstehen.<br />

� SQL Statements im Programmcode sollten isoliert und modularisiert werden.<br />

Selbst wenn durch einen Wechsel des Datenbanksystems Änderungen an den<br />

SQL Statements notwendig werden, lassen sich diese dann an zentralen, gekapselten<br />

Stellen innerhalb der Anwendungen durchführen.<br />

Wurde eine Datenbank nach den oben beschriebenen Kriterien gestaltet, so ist in der<br />

Regel eine Migration sowohl ablösend als auch fortführend möglich, unabhängig davon,<br />

welches Quell- und Zielsystem zum Einsatz kommt. Hier spielen insbesondere die<br />

individuellen Anforderungen, zum Beispiel an Performance oder Recovery-<br />

Funktionalitäten, eine Rolle. Aus diesem Grund werden an dieser Stelle nicht einzelne<br />

Migrationspfade, sondern generell die ablösende beziehungsweise fortführende<br />

Migration betrachtet. Unabhängig davon bleibt festzuhalten, dass Datenbankmigrationen<br />

häufig komplex sind und dass in jedem Fall vor einer Migration genau geprüft werden<br />

muss, welche spezifischen Probleme bei der jeweiligen Migration zu erwarten sind.<br />

Neben der Datenbank an sich, muss bei einer Migration insbesondere auch die Anbindung<br />

der Anwendungen an die Datenbank berücksichtigt werden. Eine Standardisierung<br />

der Datenbankanbindung über ODBC oder JDBC hilft hierbei, löst jedoch nicht alle Probleme.<br />

Beispielweise können Unterschiede in den SQL-Dialekten der beteiligten Daten-<br />

Seite 170


anken zu erheblichen Migrationsaufwänden führen. Wurde keine saubere Trennung<br />

zwischen Geschäftslogik und Datenhaltungslogik eingehalten, müssen zudem Stored<br />

Procedures oder Trigger portiert werden.<br />

Darüber hinaus können Änderungen innerhalb der Client-Anwendung selbst notwendig<br />

werden. Neben den schon genannten Faktoren (Verwendung von Triggern und Stored<br />

Procedures) spielt hierbei insbesondere die verwendete Programmierschnittstelle innerhalb<br />

des Clients eine Rolle. Wenn die Datenbankanbindung direkt über eine Schnittstelle<br />

des Herstellers implementiert wurde (zum Beispiel embedded SQL), muss mit deutlich<br />

mehr Aufwand gerechnet werden, als wenn eine Abstraktionsebene, wie zum Beispiel<br />

ADO.NET, dazwischen geschaltet wurde. Zu beachten ist dabei, dass für eine Änderung<br />

innerhalb der Anwendung deren Source Code verfügbar sein muss. Der Aufwand für die<br />

notwendigen Änderungen hängt dabei auch von einer sauberen Architektur der Anwendung<br />

ab. Einen guten Überblick über Anwendungsarchitekturen vermittelt SAGA 151 .<br />

Zu empfehlen ist in jedem Fall die Einbeziehung des Herstellers einer Anwendung. Die<br />

feste Bindung an ein bestimmtes RDBMS wird auch seitens vieler Anbieter von Anwendungen<br />

als Marktnachteil gesehen, sodass von einer nennenswerten und wachsenden<br />

Unterstützung bei einer Migration insbesondere zu einem Open Source RDBMS ausgegangen<br />

werden kann.<br />

Zusammenfassend lässt sich sagen, dass eine erfolgreiche Migration neben den Besonderheiten<br />

der einzelnen Datenbanksysteme insbesondere davon abhängt, inwieweit im<br />

Vorfeld der eigentlichen Migration bestimmte Regeln eingehalten wurden:<br />

� Standardisierter Datenbankzugriff z.B. über ODBC oder JDBC<br />

� Einsatz von herstellerunabhängigen Standards<br />

� Vermeidung von Programmlogik in der Datenbank<br />

� Einhaltung einer sauberen Trennung zwischen Datenhaltung und Geschäftslogik<br />

in den Client-Anwendungen<br />

� Isolierung und Modularisierung der Datenbankzugriffe in den Client-<br />

Anwendungen<br />

� Einbeziehung der Hersteller der Client-Anwendungen<br />

� Konsolidierung von Software- und Datenstrukturen<br />

2.1 Die ablösende Migration proprietärer und offener Datenbank-Systeme<br />

Die technischen Betrachtungen zur Datenbank-Migration zeigen auf, dass neben den<br />

proprietären relationalen Datenbank-Managementsystemen (RDBMS) von Microsoft,<br />

IBM, oder Oracle durchaus leistungsfähige Lösungen auf der Basis von Open Source<br />

Software (OSS) als Alternativen zur Verfügung stehen und eine ablösende Migration<br />

rechtfertigen. Wichtige Vertreter solcher OSS-Lösungen sind MySQL, PostgreSQL und<br />

Firebird.<br />

151 siehe http://www.kbst.bund.de<br />

Seite 171


Die aufgeführten OSS-Lösungen bieten unterschiedliche Funktionalitäten und ihre<br />

Eignung muss im Einzelfall bezüglich der jeweiligen Anforderungen geprüft werden.<br />

Hervorzuheben ist, dass alle genannten OSS-Lösungen plattformunabhängig sind und<br />

auch installationsfertige Windows-<strong>Version</strong>en als Download im Internet verfügbar sind.<br />

Damit können diese Datenbanksysteme auch bei einer punktuellen oder einer betriebssystemübergreifenden<br />

Migration eingesetzt werden.<br />

Datenbanken gehören zu den Wegbereitern für den Einsatz von Linux in unternehmenskritischen<br />

Anwendungsbereichen. Die Software AG hat mit AdabasD bereits 1997 ein<br />

proprietäres (seinerzeit SAP-zertifiziertes) RDBMS für Linux angeboten. Oracle und Informix<br />

folgten 1998 und haben damit die Kredibilität von Linux im professionellen Umfeld<br />

deutlich gesteigert. Die unter dem Acronym LAMP bekannte Kombination von Linux,<br />

Apache, MySQL und PHP ist seit Beginn der kommerziellen Internetnutzung eine der<br />

beliebtesten Infrastrukturen für Webshops und dynamische Webseiten. Mit PostgreSQL<br />

und Firebird stehen vollwertige RDBMS mit Transaktionsunterstützung, Triggern und<br />

Stored Procedures auch unter Open Source Lizenzen zur Verfügung. An hochwertigen<br />

Optionen für den Einsatz von Linux und Open Source Software im Bereich der Datenbanksysteme<br />

mangelt es nicht.<br />

Wenn die grundsätzliche Möglichkeit für eine Datenbankmigration gegeben ist, muss ein<br />

geeignetes RDBMS als Zielsystem ausgewählt werden. Das Angebot an alternativen<br />

Migrationszielen ist sowohl im proprietären als auch im Open Source Bereich vielfältig<br />

und attraktiv. Eine pauschale, einfache und eindeutige Entscheidung für das eine oder<br />

andere System lässt sich aus den charakteristischen Merkmalen nicht ableiten. Wichtig<br />

ist deshalb, dass die möglichen Zielsysteme jeweils im Einzelfall anhand der tatsächlich<br />

genutzten Funktionalitäten und anhand der als relevant erachteten Eigenschaften ausgewählt<br />

werden. Ein Ziel ist meist auch, möglichst wenig unterschiedliche Datenbanksysteme<br />

in einer Institution zu betreiben (Vereinheitlichung).<br />

Bei der Übernahme von Daten aus Datentypen, die im Zielsystem nicht identisch vorhanden<br />

sind, ist es i.d.R. möglich, einen geeigneten Typ mit größerem Wertebereich zu<br />

identifizieren. Hier muss vor allem bei großvolumigen Datentypen beachtet werden, dass<br />

diese in einigen RDBMS nicht such- oder indizierbar sind, in anderen jedoch schon. Zudem<br />

muss beim Übergang zu einer ODBC-Anbindung darauf geachtet werden, dass<br />

ODBC unterschiedliche Funktionsgruppen unterscheidet, das heißt dass zum Beispiel<br />

ein ODBC-Treiber Level 1 nicht die gleiche Funktionalität bietet wie ein ODBC-Treiber<br />

Level 2.<br />

Für die ablösende Migration werden durch die Datenbankhersteller inzwischen<br />

zahlreiche Tools angeboten. In der Regel ermöglichen diese Tools eine mehr oder<br />

weniger automatisierte Migration von Datenbankobjekten, -schemata und den<br />

eigentlichen Daten. Nur eingeschränkt möglich ist jedoch eine Automatisierung der<br />

Migration der Geschäftslogik z. B. von Stored Procedures. Häufig können diese Tools<br />

aber die Arbeit in einem Migrationsprojekt deutlich vereinfachen, da sie viele<br />

Standardaufgaben, wie zum Beispiel die Umwandlung von Datentypen, deutlich<br />

erleichtern. Im Folgenden werden einige Beispiele für Migrationswerkzeuge aufgeführt:<br />

Seite 172


� MySQL Migration Toolkit<br />

Das MySQL Migration Toolkit erlaubt die Migration von Microsoft Access, Microsoft<br />

SQL Server oder Oracle Datenbanken nach MySQL. Das grafische Tool führt<br />

anhand eines stufenweisen Vorgehens durch den gesamten Migrationsprozess.<br />

Durch entsprechende Assistenten lassen sich Migrationsschritte automatisieren.<br />

Darüber hinaus besteht auch die Möglichkeit, manuell in den Migrationsprozess<br />

einzugreifen.<br />

Laut Herstellerangaben besteht die Möglichkeit, das Toolkit beziehungsweise<br />

einzelne Module des Toolkits anzupassen, sodass auch andere Datenbanksysteme<br />

auf MySQL migriert werden können.<br />

Der Zugriff auf die zu migrierende Datenbankquelle erfolgt standardisiert über<br />

JDBC. Dadurch spielt es keine Rolle, auf welchem Betriebssystem die Quell-<br />

Datenbank installiert ist.<br />

� SQL Server Migration Assistant for Oracle (SSMA for Oracle)<br />

Der SSMA for Oracle ermöglicht die weitgehend automatisierte Migration von<br />

einer Oracle Datenbank zu einem Microsoft SQL Server. Neben der Migration der<br />

Datenbankobjekte und der Daten erfolgt abschließend auch eine Validierung des<br />

migrierten Codes und der Daten. Laut Herstellerangaben ist damit auch eine<br />

Migration von Stored Procedures möglich.<br />

� Oracle Migration Workbench (OMWB)<br />

Die Oracle Migration Workbench unterstützt die Migration von Sybase, Informix<br />

und DB2 Datenbanken nach Oracle. Mit der Oracle SQL Developer Migration<br />

Workbench verfügt Oracle zudem über ein Werkzeug, mit dem sich Microsoft<br />

Access, Microsoft SQL Server und MySQL Datenbanken nach Oracle migrieren<br />

lassen. Für die Überprüfung der Migration stellt Oracle den Database Migration<br />

Verifier (DMV) zur Verfügung. Damit lassen sich sowohl die Struktur als auch die<br />

Daten überprüfen.<br />

� IBM Migration Toolkit<br />

Das IBM Migration Toolkit unterstützt unter anderem die Migration von Oracle,<br />

Microsoft SQL Server und MySQL hin zu DB2 und Informix. Neben Datenbankschemata<br />

und Daten kann auch Logik in Form von Triggern oder Stored<br />

Procedures migriert werden. Auch die Anwendungsmigration wird durch einen<br />

Wizard zur Migration von Queries unterstützt (zum Beispiel Umwandlung von<br />

proprietären Joins in Standard-Joins).<br />

� Weitere Migrationstools<br />

Neben den Migrationstools der einzelnen Hersteller gibt es zahlreiche weitere<br />

Tools, die eine Migration erleichtern können. Beispielhaft sei an dieser Stelle der<br />

eva/3 Universal Database Converter genannt, der die Migration von Tabellenstrukturen<br />

und Daten zwischen allen in diesem Leitfaden beschriebenen<br />

Datenbanksystemen unterstützt. Zudem ist es mittels sogenannter ETL-Tools<br />

(Extraction-Tranformation-Loading) wie der OSS-Lösung Pentaho Data Integra-<br />

Seite 173


tion möglich, auch komplexe Transformationen von einer Datenbank zu einer<br />

anderen durchzuführen.<br />

Generell kann festgehalten werden, dass sich Standardaufgaben im Rahmen eines Migrationsprojektes<br />

mit den angebotenen Tools gut lösen lassen. Darüber hinaus bieten<br />

einige Werkzeuge auch Hilfestellung bei der Migration der Geschäftslogik. Die Erfahrung<br />

zeigt jedoch, dass diese Aufgabe aufgrund ihrer Komplexität i.d.R. nur in Teilen durch<br />

die Werkzeuge erledigt werden kann. Die Hauptarbeit muss an dieser Stelle manuell<br />

erfolgen und stellt wohl häufig das größte Problem bei der Migration von Datenbanken<br />

dar.<br />

2.2 Fortführende Migration von Datenbank-Systemen<br />

Naturgemäß haben die Hersteller ein Interesse daran, dass die aktuellen <strong>Version</strong>en ihrer<br />

Datenbanksysteme eingesetzt werden. Zwar wird die fortführende Migration i.d.R. von<br />

allen Herstellern durch entsprechende Tools unterstützt, es muss aber trotzdem in jedem<br />

Einzelfall sorgfältig geprüft werden, inwieweit Probleme aufgrund einzelner technischer<br />

Besonderheiten zu erwarten sind. Da es sich hierbei häufig um sehr spezifische technische<br />

Feinheiten handelt, kann an dieser Stelle keine Aussage dazu getroffen werden,<br />

welche konkreten Probleme im Einzelfall zu erwarten sind. Wie auch bei der ablösenden<br />

Migration steigt jedoch im Allgemeinen die Anzahl der möglichen Probleme, je mehr<br />

proprietäre Funktionalitäten eingesetzt werden und je komplexer und umfangreicher die<br />

Geschäftslogik innerhalb der Datenbank ist.<br />

Um einen Umstieg auf neuere <strong>Version</strong>en auch bei problematischen Migrationsvorhaben<br />

zu ermöglichen, bietet z. B. Microsoft die Möglichkeit, den SQL Server 2005 im Kompatibilitätsmodus<br />

zu betreiben, das heißt der SQL Server 2005 verhält sich in diesem Fall<br />

wie ein SQL Server 2000. Eine solche Lösung sollte aber bestenfalls eine Zwischenlösung<br />

sein, bis eine „echte― Migration durchgeführt wird.<br />

Probleme ergeben sich häufig auch, wenn bei einer fortführenden Migration mehrere<br />

<strong>Version</strong>en eines Datenbanksystems übersprungen werden. Oft beachten die Hersteller<br />

bei der Entwicklung neuer Datenbanksysteme nur die letzten <strong>Version</strong>en als Migrationsquelle<br />

und bieten daher keine Werkzeuge an, die eine Migration älterer <strong>Version</strong>en des<br />

Datenbanksystems unterstützen. Es ist auch nicht davon auszugehen, dass bei den<br />

Herstellern umfassendes Wissen für eine solche Migration verfügbar ist. Es kann daher<br />

notwendig sein, diese Art der Migration in mehreren <strong>Version</strong>sschritten durchführen,<br />

wodurch sich der Aufwand insbesondere beim Testen erheblich erhöht.<br />

Neben der Migration des Datenbanksystems an sich kann auch eine Migration unter<br />

Beibehaltung des Datenbanksystems von Vorteil sein, beispielsweise wenn nur das darunter<br />

liegende Betriebssystem ausgetauscht wird. Hierbei ist es zum Beispiel auch<br />

denkbar, eine Mischung aus proprietärer und Open Source Software einzusetzen. So<br />

kann ein proprietäres Datenbanksystem wie Oracle zum Beispiel auch unter Linux betrieben<br />

werden.<br />

Seite 174


B Thema Webserver<br />

Der ursprüngliche Einsatzzweck von Webservern ist die Bereitstellung von statischen<br />

Informationen, insbesondere Webseiten, sodass diese über einen Webbrowser<br />

angezeigt werden können. Durch die Einsatzmöglichkeiten von Scriptsprachen wie zum<br />

Beispiel Perl wird diese Funktionalität um die Bereitstellung dynamischer Inhalte<br />

erweitert. Heutige Webserver wie der Apache oder der Microsoft IIS bieten weitere<br />

zahlreiche Funktionalitäten, die den klassischen Webserver mehr und mehr zu einem<br />

vollwertigen Applikationsserver ausbauen, der in der Lage ist, komplexe Anwendungen<br />

auszuführen.<br />

Aktuell verfügen die beiden betrachteten Webserver über alle wesentlichen Merkmale,<br />

die von einem modernen Webserver zu erwarten sind und gehen an vielen Stellen auch<br />

darüber hinaus. Beispielsweise verfügen beide Webserver über Mechanismen zur<br />

Authentifizierung und Verschlüsselung.<br />

1 Produkte / Technologien<br />

1.1 Apache HTTP Server<br />

Der Apache HTTP Server geht auf eine Weiterentwicklung des NCSA HTTPd im Jahre<br />

1995 zurück. Er wird von der Apache Software Foundation unter der Apache License als<br />

Open Source Software frei zur Verfügung gestellt. Aktuell ist die <strong>Version</strong> 2.2 verfügbar,<br />

aber auch die <strong>Version</strong>en 2.0 und 1.3 werden noch angeboten und gepflegt.<br />

Auch wenn der Apache HTTP Server Marktanteile eingebüßt hat, ist er gemäß einer<br />

regelmäßig durch Netcraft durchgeführten Umfrage 152 noch immer der am meisten eingesetzte<br />

Webserver. Seine Bedeutung zeigt sich auch darin, dass - aufbauend auf dem<br />

Apache HTTP Server und weiteren Komponenten – festgelegte Systemarchitekturen<br />

definiert wurden. Beispielsweise steht LAMP für eine Architektur bestehend aus den<br />

Komponenten Linux, Apache, MySQL und PHP.<br />

Der Apache HTTP Server besteht aus seinem Kern und einer großen Anzahl von Modulen,<br />

die in Abhängigkeit von den jeweiligen Anforderungen einkompiliert beziehungsweise<br />

geladen werden können. Durch den modularen Aufbau ist der Apache-Server sehr<br />

leicht erweiterbar und kann an geänderte Anforderungen angepasst werden. Im normalen<br />

Lieferumfang der Software sind schon zahlreiche unterschiedliche Apache Module<br />

enthalten. Diese können noch durch weitere Module (zum Beispiel Eigenentwicklungen)<br />

erweitert werden.<br />

Apache Module sind Codesegmente, die der Apache API Spezifikation entsprechen und<br />

in den Apache HTTP Server geladen werden können. Sie werden für Funktionalitäten<br />

verwendet, die über den herkömmlichen Dienst eines Webservers hinaus gehen. So<br />

können zum Beispiel sichere Authentifizierung oder Techniken wie Server Side Includes<br />

(SSI) problemlos realisiert werden. Dazu muss lediglich die Moduldatei vorhanden sein<br />

und ein entsprechender Eintrag in der Konfigurationsdatei editiert werden. Bei Bedarf<br />

152 http://news.netcraft.com/archives/2007/09/03/september_2007_web_server_survey.html<br />

Seite 175


werden die Module dann von dem Webserver dynamisch geladen. Alternativ können<br />

Module auch zum Zeitpunkt des Kompilierens statisch in den Apache Webserver eingebunden<br />

werden. Dieses Vorgehen ist dann effizient, wenn Modulfunktionalitäten sehr<br />

häufig vom Webserver benötigt werden.<br />

Wenn der Apache sorgfältig konfiguriert wird und nur die tatsächlich benötigten Module<br />

benutzt werden, wird weniger Speicherplatz benötigt. Gleichzeitig bedeuten weniger Module<br />

in der Regel auch weniger Angriffsfläche, wodurch die Sicherheit des Systems erhöht<br />

wird. Der genaue Umfang der in der verwendeten Distribution enthaltenen Module<br />

ergibt sich aus der Dokumentation zur jeweiligen <strong>Version</strong>.<br />

Das modulare Design zur Erweiterung von Web-Server Eigenschaften erhöht die Flexibilität<br />

des Systems. Gleichzeitig verbessert sich die Effizienz und die Geschwindigkeit des<br />

Web-Servers, wenn anstelle von externen Applikationen interne Prozesse abgearbeitet<br />

werden können.<br />

Für Migrationsprojekte sind heute weniger die Migration des Apache an sich von Bedeutung.<br />

Vielmehr zeigt die Praxis, dass insbesondere den Modulen besondere Aufmerksamkeit<br />

gewidmet werden muss. Zu den zahlreichen Modulen gehören u.a.:<br />

� Authentifikationsmodule (zum Beispiel mod_auth)<br />

� Sicherheitsmodule (zum Beispiel mod_ssl)<br />

� Skript- beziehungsweise Interpretermodule für Programmiersprachen, wie zum<br />

Beispiel PHP, Java, Python, Tcl und Perl.<br />

Die folgende Tabelle gibt eine kleine Auswahl der verfügbaren Module wieder. Die Auflistung<br />

ist nicht vollständig, sie soll jedoch einen Eindruck von den vielfältigen Möglichkeiten<br />

des Apache-Webservers vermitteln.<br />

Modul Funktion<br />

Standard- und Zusatz-Module<br />

mod_cgi Ausführung von CGI-Skripten (Common Gateway Interface)<br />

mod_dav eIntegrierte DAV Unterstützung (HTTP Extensions for Distributed<br />

Authoring – WebDAV). Bearbeiten von Dateien und Verzeichnissen<br />

direkt über HTTP auf dem Webserver. DAV steht für Distributed<br />

Authoring and <strong>Version</strong>ing<br />

mod_fastcgi Integrierte FastCGI Unterstützung<br />

mod_frontpage Integrierte FrontPage Unterstützung<br />

mod_iserv Integrierte Java Servlet Unterstützung<br />

mod_php3 Integrierte PHP 3 Unterstützung<br />

mod_php4 Integrierte PHP 4 Unterstützung<br />

mod_perl Integrierte Perl Unterstützung<br />

mod_alias Stellt die Alias- beziehungsweise Redirect-Anweisungen zur Verfügung<br />

Seite 176


Modul Funktion<br />

mod_autoindex Generiert Verzeichnisindizies<br />

mod_include Wird benötigt für Server-Sides Includes<br />

mod_mime Sorgt für Generierung entsprechender MIME-Headers<br />

mod_log_config Zur Führung von einer oder mehrerer Logfiles, der Inhalt kann an die<br />

entsprechenden Bedürfnisse angepasst werden<br />

mod_deflate Dient der Komprimierung von verschiedenen Dateitypen vor der<br />

Übertragung zum Browser. Ist insbesondere bei eingeschränkten<br />

Bandbreiten sinnvoll, die Kompression muss von den Browsern unterstützt<br />

werden<br />

mod_proxy Erweitert den Apache-Webserver um die Funktionalität eines Proxys<br />

beziehungsweise Proxy-Caches<br />

mod_rewrite Ermöglicht die Verwendung von internen Aliasen und externen Redirects<br />

mod_speling Korrigiert Tippfehler der Benutzer<br />

mod_ssl Stellt die Protokolle SSL (Secure Sockets Layer) und TLS (Transport<br />

Layer Security) zur Verfügung<br />

mod_usertrack Mittels HTTP-Cookies wird das Nutzerverhalten protokolliert<br />

mod_vhost_alias Für die Konfiguration von vielen virtuellen Hosts, insbesondere für<br />

Service-Provider interessant<br />

Module zur Authentifizierung<br />

mod_access Zugriffskontrolle auf Basis von Hostnamen oder IP-Adressen<br />

mod_auth Für die Konfiguration von passwortgeschützten Verzeichnissen beziehungsweise<br />

Dokumenten. Sehr einfache Variante eines Authentifizierungsmoduls,<br />

sollte nur bei einer geringen Anzahl von Nutzern<br />

angewendet werden<br />

mod_auth_digest Nutzer- Authentifikation mittels MD5 Digest Authentication, die<br />

Übermittlung der Passwörter erfolgt nicht im Klartext<br />

mod_auth-dbm Nutzer-Authentifikation mittels Berkeley-DB-Dateien, sinnvoll für die<br />

Verwendung bei einer größeren Anzahl von Benutzern<br />

mod_auth_ldap Nutzer-Authentifikation mittels LDAP<br />

mod_auth_kerb Nutzer-Authentifikation mittels Kerberos, unterstützt die <strong>Version</strong>en 4<br />

und 5<br />

mod_auth_notes Nutzer-Authentifikation mittels Lotus Notes Server<br />

mod_auth_oracle Nutzer-Authentifikation mittels Oracle-Datenbank, es gibt auch noch<br />

weitere Module für beispielsweise MySQL und Postgres-<br />

Datenbanken<br />

mod_auth_smb Nutzer-Authentifikation mittels SMB-Server (Samba, Windows NT)<br />

Tabelle 38: Apache-Module<br />

Seite 177


Nicht alle Module für den Webserver stehen kostenlos zur Verfügung. Immer mehr Unternehmen<br />

bieten die Apache Module gegen entsprechende Lizenzkosten an. Beispiele<br />

hierfür sind:<br />

� Allaire mit der Java-Servlet-Engine Macromedia JRun und dem Application-<br />

Server Macromedia ColdFusion,<br />

� Sun Microsystems mit seinem Active Server Pages Modul.<br />

Die Administration des Webservers erfolgt mittels gut dokumentierter Konfigurationsdateien<br />

(Textdateien). Für das Aktivieren einer Funktionalität genügt es häufig, in einer<br />

entsprechenden Zeile dieser Textdatei das Kommentarzeichen mit Hilfe eines einfachen<br />

Texteditors zu löschen. Für Administratoren, die eine grafische Oberfläche bevorzugen,<br />

gibt es alternativ proprietäre und Open Source Tools zur Apache-GUI 153 .<br />

Für die Integration einer Suchfunktionalität innerhalb einer Website kann der Apache-<br />

Webserver durch ein entsprechendes Programm ergänzt werden. Es stehen unterschiedliche<br />

Softwareeinheiten zur Auswahl, zum Beispiel das Suchsystem HTDig 154 .<br />

HTDig ermöglicht die Indexierung ganzer Websites. Das Programm erzeugt mittels eines<br />

sogenannten Robots einen Suchindex, der über ein geeignetes CGI-Skript abgefragt<br />

werden kann. Die folgenden Punkte geben die Kernfunktionalitäten der Software wieder:<br />

� Anlage eines Suchmaschinen-Index (über eine oder mehrere Webseiten beziehungsweise<br />

Teilbereiche einer Webseite).<br />

� Einschränkung der Indexierung durch die Verwendung von Filtern (Filterkriterien<br />

können Dateitypen und bestimmte URLs sein).<br />

� Indexierung von für Web-Server untypischen und binären Dateiformate (PDF.<br />

DOC, usw.), durch die Verwendung von externen Zusatzprogrammen<br />

� Verwendung von zahlreichen Abfragemöglichkeiten und verschiedenen Suchalgorithmen<br />

(Wörter, Wortteile, Synonyme, usw.).<br />

� Anpassung der Suchseite und der entsprechenden Trefferliste über einfache<br />

Templatedateien.<br />

� Unterstützung von Sonderzeichen wie Umlaute.<br />

� Unterstützung des Standards für „Robot Exclusion― und die „Basic-WWW-<br />

Authentication― durch den verwendeten Robot, zur Berücksichtigung geschützter<br />

Inhalte bei der Indexierung.<br />

Die HTDig-Distribution wird unter der GNU General Public License (GPL) bereitgestellt<br />

und steht somit zur freien Verfügung.<br />

Der Apache bietet eine ganze Reihe von Modulen, mit denen sich unterschiedlichste<br />

Arten einer Nutzer-Authentifikation umsetzen lassen, zum Beispiel die Authentifikation<br />

mittels Kerberos 4 oder 5. Andere Möglichkeiten sind die Authentifikation mittels Samba<br />

oder Datenbanken wie zum Beispiel Oracle, MySQL oder Postgres. Eine verschlüsselte<br />

Datenübertragung mittels SSL und TLS (Transport Layer Security) ist ebenfalls möglich.<br />

153 http://gui.apache.org/<br />

154 http://www.htdig.org/<br />

Seite 178


Mittels HTTP 1.1 Kompression lassen sich die Daten zudem bei der Datenübertragung<br />

komprimieren.<br />

Eine verschlüsselte Passwortübertragung kann über eine MD5 Digest Authentication<br />

realisiert werden.<br />

Die Konfiguration der Zugriffskontrolle ist auf Basis von Hostnamen oder IP-Adressen<br />

möglich. Auch die Einrichtung von virtuellen Hosts (Multiple Web Sites mit einer IP-<br />

Adresse) ist möglich.<br />

Über die unterschiedlichen Module und Komponenten lässt sich der Apache um zahlreiche<br />

unterschiedliche Schnittstellen und Technologien erweitern. So ermöglicht es zum<br />

Beispiel Tomcat 155 , JSPs und Java Anwendungen unter Apache laufen zu lassen. Auf<br />

diese Weise lässt sich eine Interoperabilität des Apache auf technischer Ebene mit den<br />

unterschiedlichsten Technologiestacks herstellen, seien es Skriptsprachen, Java, Datenbanken<br />

oder Verzeichnisdienste. Selbst Module, die ASP.Net Anwendungen unterstützen,<br />

sind verfügbar. Mit mod_mono steht zum Beispiel ein Modul auf Grundlage von<br />

Mono 156 - einer Software für Entwicklung und Betrieb von .Net Anwendungen unter unterschiedlichen<br />

Betriebssystemen (zum Beispiel Linux oder Unix) - zur Verfügung. Durch<br />

die Vielzahl der Module bietet der Apache damit zahlreiche Funktionalitäten, die über<br />

einen klassischen Webserver hinausgehen und eher einem Applicationserver zuzuordnen<br />

sind. Ein weiteres Beispiel für die Einsatzmöglichkeiten des Apache HTTP Servers<br />

ist die Microsoft FrontPage Servererweiterung, die auch mit dem Apache HTTP Server<br />

genutzt werden kann.<br />

Im Fazit gehört der Apache Webserver zu den führenden Webservern am Markt. Auf<br />

Basis von LAMP (Linux, Apache, MySQL, PHP) werden große Websites wie zum Beispiel<br />

Wikipedia mit dem Apache Webserver betrieben 157 . Der Apache kommt nicht nur im<br />

Open Source Umfeld vor, sondern auch in Systemumgebungen mit kommerziellem Hintergrund<br />

hat er einen hohen Marktanteil. Aufgrund seiner Modularität und der Vielfältigkeit<br />

seiner Erweiterungsmöglichkeiten lässt er sich auf unterschiedlichste Anforderungen<br />

anpassen. Die Projekterfahrungen zeigen, dass er auch für große Systemumgebungen<br />

geeignet ist.<br />

1.2 Microsoft Internet Information Services (IIS)<br />

Bei den Microsoft Internet Information Services (IIS) handelt es sich um einen proprietären<br />

Datei- und Anwendungsserver. In früheren <strong>Version</strong>en wurde der IIS unter der Bezeichnung<br />

Internet Information Server vertrieben. Der IIS wurde von Microsoft erstmals<br />

für Windows NT angeboten. Heute wird er in der Regel integriert in das Windows Betriebssystem<br />

ausgeliefert.<br />

Neben dem Apache Webserver zählen die IIS zu den am meisten eingesetzten Produkten<br />

im Webserverbereich. 158<br />

155 http://tomcat.apache.org/<br />

156 http://www.mono-project.com/<br />

157 http://de.wikipedia.org/wiki/LAMP#_note-online-artikel<br />

158 http://news.netcraft.com/archives/2007/09/03/september_2007_web_server_survey.html<br />

Seite 179


Aktuell steht die <strong>Version</strong> 6.0 auf Windows Server 2003 zur Verfügung, die <strong>Version</strong> 7.0<br />

wird voraussichtlich Anfang des Jahres 2008 als Bestandteil des Windows Server 2008<br />

verfügbar sein.<br />

1.2.1 Internet Information Services 5.0<br />

Die IIS sind integraler Bestandteil der Serverversionen von Microsoft Windows ab <strong>Version</strong><br />

Windows 2000 Server. Neben den Standardprotokollen wie zum Beispiel HTTP, FTP,<br />

SMTP, POP3 unterstützt die Nachfolger-<strong>Version</strong> des Internet Information Servers 4.0<br />

zahlreiche neue Funktionalitäten. Die wichtigsten Neuerungen im Bereich Datenbereitstellung<br />

werden nachfolgend erläutert:<br />

� WebDAV:<br />

Unterstützung des WebDAV-Standards zum gemeinsamen Bearbeiten von Dateien<br />

und Verzeichnissen direkt über HTTP auf dem Webserver.<br />

� Web-Verzeichnisse:<br />

Sie dienen den Nutzern als herkömmliche Dateiverzeichnisse auf dem Web-<br />

Server und stehen unmittelbar im Zusammenhang mit der WebDAV-<br />

Funktionalität.<br />

� Frontpage Unterstützung:<br />

Zusätzliche Funktionalitäten für die Entwicklung und Verwaltung von Webinhalten<br />

mittels Microsoft Frontpage. Mittels des grafischen Frontend kann der Administrator<br />

Web-Inhalte auf den Web-Server erstellen und verändern.<br />

� Unterstützung von multiplen Web-Sites:<br />

Erlaubt das Hosting von verschieden Web-Sites auf einem Server und einer IP-<br />

Adresse.<br />

� HTTP 1.1-Kompression:<br />

Ermöglicht die HTTP-Kompression bei der Kommunikation zwischen dem Web-<br />

Server und dem kompressionsfähigen Client-System, die insbesondere bei eingeschränkten<br />

Bandbreiten sinnvoll sein kann.<br />

� PICS Rating:<br />

„Platform for Internet Content Selection― 159 -Rating ist ein technischer Standard<br />

zum Einsatz eines Bewertungssystems von Webinhalten des W3-Konsortiums.<br />

Mit PICS verbinden sich die inhaltliche Bewertung und die Möglichkeit der Filterung<br />

von Webseiten nach bestimmten Merkmalen. Dazu wird im HTML-Header<br />

eines Dokuments ein PICS-Code eingefügt, der im Browser nicht sichtbar ist.<br />

Im Bereich webbasierte Applikationen bietet der IIS 5.0 folgende Neuerungen:<br />

� XML-Integration:<br />

Ein XML-Parser in Windows 2000 ist als COM-Komponente implementiert und<br />

stellt eine vollständige XML-Basis für Anwendungen zur Verfügung.<br />

159 http://www.w3.org/PICS/<br />

Seite 180


� Windows Skript Komponenten:<br />

Entwickler können mittels der Skripting-Technologie wiederverwendbare COM<br />

Module für Webanwendungen entwickeln.<br />

� Bestimmung der Browser-Eigenschaften:<br />

Mittels ASP können neben der Entwicklung von ASP Anwendungen die genauen<br />

Browser-Eigenschaften der Client-Systeme ermittelt werden.<br />

� Prozess-Trennung:<br />

Der Administrator kann einzelne Applikations-Prozesse von den Kern-Prozessen<br />

und anderen Anwendungsprozessen isolieren.<br />

� ADSI 2.0:<br />

Erlaubt den Zugriff auf die Objekte, Eigenschaften und Methoden des Active Directory<br />

Service Interfaces. Die Integration des Web-Servers und des Active Directorys<br />

ermöglicht die Zuweisung von unterschiedlichen Web-Sites auf einen<br />

Web-Server zu bestimmten Nutzer-Domänen.<br />

Im Bereich Verwaltung bietet der IIS 5.0 im Wesentlichen folgende Funktionalitäten:<br />

� Management Delegation:<br />

Erlaubt die Übertragung von Verwaltungsaufgaben.<br />

� Prozess Throttling:<br />

Ermöglich die Begrenzung der CPU-Zeit für eine Netzanwendung oder Seite.<br />

Damit kann sichergestellt werden, dass Prozessorzeit für andere Websites oder<br />

für Nicht-Netzanwendungen verfügbar ist.<br />

Die IIS 5.0 bieten die Möglichkeit, die Nutzer-Authentifikation mittels Kerberos durchzuführen.<br />

Die alte Windows-Anmeldung mittels Windows LAN Manager (NTLM) ist jedoch<br />

immer noch möglich. Eine verschlüsselte Datenübertragung ist unter Anwendung von<br />

SSL <strong>3.0</strong> und TLS (Transport Layer Security) möglich. Es werden Client- und Serverzertifikate<br />

unterstützt.<br />

Über die Digest Authentication wird die verschlüsselte Passwortübertragung für die Authentifizierung<br />

ermöglicht. Die Anmeldeinformationen werden dabei als MD5-Hash<br />

übermittelt.<br />

Über IP- und Domänenbeschränkungen erhält der Administrator die Möglichkeit, den<br />

Zugriff auf Inhalte für Computer und Domänen zu erlauben beziehungsweise zu verbieten.<br />

1.2.2 Internet Information Services 6.0<br />

Zum Lieferumfang des Windows Server 2003 gehören die Internet Information Services<br />

6.0 (IIS 6.0), die jedoch in der Standardinstallation des Betriebssystems erstmalig nicht<br />

automatisch installiert werden. Der Administrator muss den Installationsvorgang explizit<br />

initialisieren und bestimmte Server-Funktionalitäten aktivieren.<br />

Durch Kombination mit den folgenden Technologien aus der Windows 2003 Server Produktgruppe<br />

gehen die IIS über die klassischen Möglichkeiten eines Webservers hinaus<br />

hin zu einem Applikationsserver:<br />

� ASP.NET<br />

Seite 181


� ASP<br />

� COM+<br />

� Microsoft Message Queuing (MSMQ)<br />

Für diese neue Rolle der Internet Information Services als Bestandteil eines Applicationservers<br />

wurden einige Neuerungen implementiert, die nachfolgend skizziert werden:<br />

� Zuverlässigkeit und Skalierbarkeit:<br />

Für Verbesserungen im Hinblick auf Zuverlässigkeit und Skalierbarkeit wurden<br />

innerhalb der Verarbeitungsarchitektur Änderungen vorgenommen. So können<br />

Fehler automatisch erkannt und im Bedarfsfall Prozesse neu gestartet werden.<br />

Dadurch wird das in den bisherigen <strong>Version</strong>en vorhandene Risiko minimiert, dass<br />

der Ausfall einer einzelnen Anwendung zum Ausfall aller Anwendungen führt. Parallel<br />

kann der Web-Server eingehende Anforderungen in einer Warteschlange<br />

aufnehmen. IIS 6.0 ist in der Lage, die Statusüberwachung von Arbeitsprozessen,<br />

Anwendungen und Websites durchzuführen.<br />

� .Net-Integration:<br />

Neu ist auch die Integration von ASP.NET in IIS. Den Entwicklern werden erweiterte<br />

Funktionalitäten des .NET Framework zur Erstellung von Anwendungen angeboten.<br />

Für Entwickler und Anwender kann zur Internationalisierung Unicode-<br />

Standard genutzt werden.<br />

Der IIS 6.0 kann in das Autorisierungsframework des Windows 2003 Servers mit eingebunden<br />

werden, zusätzlich können mit dem Autorisierungs-Manager Delegierungs- und<br />

Autorisierungsaktionen vorgenommen werden.<br />

Die Verwaltung des IIS 6.0 erfolgt nun auf XML-Metabasis und ermöglicht den Administratoren<br />

ein direktes Bearbeiten der Konfiguration. Eine Nutzung von Kerberos ist möglich,<br />

sofern der Client Kerberos unterstützt und ein Active Directory zur Verfügung steht.<br />

Zusammenfassend ist zu bemerken, dass die IIS ursprünglich als reine Webserver eingeführt<br />

wurden, inzwischen haben sie sich aber insbesondere durch die Integration mit<br />

.Net die Internet Information Services zu einem Basisbestandteil der Applicationserverlösung<br />

von Microsoft entwickelt. Im Zuge dieser Entwicklung wurde von Microsoft verstärkt<br />

Wert auf betriebskritische Themen wie Sicherheit oder Skalierbarkeit gelegt, sodass<br />

auch in diesen Bereichen deutliche Verbesserungen im Vergleich zu älteren <strong>Version</strong>en<br />

des IIS vorliegen. Konkrete Projekterfahrungen zeigen, dass sich die IIS 6.0 als stabile<br />

Alternative zu anderen Webservern auch in größeren Systemumgebungen einsetzen<br />

lassen.<br />

2 Migrationspfade<br />

Bei der Migration von Webservern können grundsätzlich zwei mögliche Herausforderungen<br />

unterschieden werden:<br />

� Migration von statischen Inhalten<br />

� Migration von dynamischen Inhalten<br />

Seite 182


Die hierbei zu lösenden Probleme stellen sich im Wesentlichen für alle Webserver-<br />

Produkte in gleicher Form.<br />

Das klassische Einsatzszenario eines Webservers war ursprünglich die Bereitstellung<br />

von statischen Inhalten, zum Beispiel von statischen Webseiten oder Bildern. Auch die<br />

Bereitstellung anderer Dateien wie zum Beispiel PDF Dokumenten fällt in diese Kategorie.<br />

Wird ein Webserver nur für solche Einsatzzwecke genutzt, ist eine Migration vergleichsweise<br />

einfach, da die statischen Inhalte in der Regel lediglich vom alten auf den<br />

neuen Webserver kopiert werden müssen. Erst wenn weitere Anforderungen wie zum<br />

Beispiel der Schutz von Dateien vor unberechtigtem Zugriff hinzukommen, sind darüber<br />

hinaus weitere Aktivitäten notwendig.<br />

Anders verhält es sich bei der Nutzung eines Webservers für die Bereitstellung dynamischer<br />

Inhalte. Darunter werden Scripte (zum Beispiel in Perl oder PHP) und Anwendungen<br />

zum Beispiel auf Basis von Java oder .Net verstanden. Insbesondere im Bereich der<br />

Anwendungen verschwimmen dabei heute die Grenzen zwischen Webserver und Applikationserver.<br />

Grundsätzlich bleibt jedoch festzuhalten, dass eine Migration von dynamischen<br />

Webseiten oder Anwendungen häufig mit vergleichsweise hohem Aufwand verbunden<br />

ist. Gegebenenfalls kann es sogar notwendig werden, die gesamten Anwendungen<br />

neu zu implementieren.<br />

Auf welcher Plattform (Windows oder Linux) ein Webserver dabei betrieben wird, spielt<br />

hinsichtlich der Migration, nur eine sehr untergeordnete Rolle, darin sind sich die Experten<br />

weitgehend einig. Eine weitere Betrachtung erfolgt daher nicht. Ebenso wird an dieser<br />

Stelle darauf verzichtet, das den dynamischen Inhalten typischerweise unterliegende<br />

Datenbanksystem zu betrachten. Eine weiterführende Behandlung dieses Themas findet<br />

sich im Abschnitt II.A 1.<br />

Im Folgenden werden vor allem die Migrationspfade der ablösenden Migration (ein<br />

Wechsel des eingesetzten Webserver-Produktes) sowie die fortführende Migration (die<br />

Beibehaltung der bestehenden Produktlinie) betrachtet. Dabei werden die grundsätzlichen<br />

Möglichkeiten aufgezeigt, notwendige Schritte erläutert und Hinweise gegeben, wo<br />

Probleme bei der Migration auftreten können und wie mit diesen umgegangen werden<br />

kann. Dies wird beispielhaft an mehr oder weniger konkreten Sachverhalten und den<br />

zuvor betrachteten Webserver-Produkten verdeutlicht.<br />

2.1 Die ablösende Migration proprietärer und offener Webserver<br />

In der Regel erfolgt eine ablösende Migration von Webservern im Rahmen eines generellen<br />

Technologiewechsels. Häufig werden dabei neue Anforderungen umgesetzt, sodass<br />

meist keine klassische Migration, sondern eine Neuimplementierung erfolgt.<br />

Wie eingangs beschrieben, bereitet die Migration von statischen Daten in der Regel<br />

kaum Probleme. Die Webserver unterscheiden sich jedoch durchaus in der Art und Weise,<br />

wie sich weitergehende Anforderungen zum Beispiel an den Zugriffsschutz Verschlüsselung<br />

usw. umsetzen lassen. Hier ist in jedem Fall eine Prüfung aufgrund der<br />

individuellen Anforderungen des jeweiligen Migrationsprojekts notwendig.<br />

Eine (automatische) Übernahme von Konfigurationsdaten ist bei einem Wechsel des<br />

Produkts (egal ob proprietär oder offen) in der Regel nicht möglich. Daher besteht die<br />

Seite 183


Hauptaufgabe bei einer Migration zunächst darin, die neuen Webserver so aufzusetzen<br />

und zu konfigurieren, dass alle Anforderungen erfüllt werden.<br />

Die bei weitem größte Herausforderung liegt erfahrungsgemäß bei der Migration dynamischer<br />

Inhalte. Hier bereiten unterschiedliche <strong>Version</strong>sstände und kleinere Unterschiede<br />

in der Implementierung der einzelnen Technologien in den Webservern Probleme.<br />

Beispielsweise kann es vorkommen, dass der Interpreter für die benötigte Scriptsprache<br />

für den abzulösenden Webserver eine neuere <strong>Version</strong> der Scriptsprache unterstützt als<br />

der Interpreter für den Zielserver. Auch wenn zum Beispiel auf den unterschiedlichen<br />

Produkten die benötigte Scriptsprache verfügbar ist, kann nicht davon ausgegangen<br />

werden, dass eine Migration der Scripte ohne Anpassungsbedarf möglich ist.<br />

Aufgrund der unterschiedlichen Ausrichtungen verschiedener Produkte kann es vorkommen,<br />

dass nicht alle Technologien auf dem jeweils anderen Produkt verfügbar sind.<br />

Während zum Beispiel die Microsoft Internet Information Services (IIS) stark auf .Net<br />

Technologien setzen, liegt der Schwerpunkt des Apache HTTP Servers eher im Script<br />

und Java-Umfeld. Trotzdem ist es aufgrund der verfügbaren Module möglich, auch .Net<br />

Anwendungen unter dem Apache HTTP Server zu betreiben. Allerdings muss damit gerechnet<br />

werden, dass diese Anwendungen angepasst oder in Teilen neu entwickelt werden<br />

müssen. Umgekehrt können Java Anwendungen nicht unverändert unter den IIS<br />

verwendet werden. Hier ist in der Regel eine vorherige Konvertierung des Codes notwendig.<br />

Auch hierbei muss mit erheblichen Problemen und größeren Anpassungen an<br />

den Anwendungen gerechnet werden. Je nach Komplexität der zu migrierenden Anwendung<br />

kann es bei einem Wechsel des Webservers daher sinnvoll sein, die Anwendung in<br />

der jeweils anderen Technologie komplett neu zu entwickeln<br />

Ein weiteres Problem bei der Migration ist die möglicherweise vorhandene Integration<br />

der Produkte in die weitere IT Infrastruktur. Insbesondere bei Microsoft entstehen in der<br />

Praxis häufig Anwendungen mit Abhängigkeiten zu anderen Microsoft Produkten wie<br />

zum Beispiel dem Active Directory oder Share Point. Neben der Migration des Webservers<br />

muss daher auch die Migration dieser Abhängigkeiten beziehungsweise der dahinterstehenden<br />

Produkte geplant werden.<br />

Da auf der anderen Seite beispielsweise der Apache HTTP Server je nach Einsatzzweck<br />

häufig durch Module oder weitere Produkte wie zum Beispiel Tomcat erweitert wird, entstehen<br />

auch hier häufig Abhängigkeiten. Somit ist hier insbesondere zu prüfen, ob die<br />

durch die Erweiterungen bereitgestellten zusätzlichen Funktionalitäten und Technologien<br />

(zum Beispiel Tomcat für den Einsatz von Java) auf dem neuen Webserver verfügbar<br />

sind.<br />

Prinzipiell lässt sich ein Webserver zwar auch so betreiben, dass diese Abhängigkeiten<br />

minimiert werden und bei einer Migration keine Probleme bereiten. In der Praxis lassen<br />

sich damit aber häufig nicht alle notwendigen funktionalen Anforderungen erfüllen. Spätestens<br />

dann, wenn zum Beispiel Anforderungen im Bereich Sicherheit oder dynamische<br />

Inhalte zum Beispiel in Form von Scripten oder Anwendungen hinzukommen, lassen<br />

sich gewisse Abhängigkeiten in der Regel nicht vermeiden.<br />

Seite 184


2.2 Fortführung der Produktlinie von Webservern<br />

Unabhängig davon, ob proprietäre oder offene Webserver zum Einsatz kommen, ist die<br />

Migration des eigentlichen Webservers bei einer fortführenden Migration eher kein Problem.<br />

Auch die Übernahme der statischen Inhalte sollte problemlos möglich sein. Dabei<br />

spielt es für gewöhnlich keine Rolle, ob bei der Migration das Betriebssystem gewechselt<br />

wird oder nicht, wie zum Beispiel eine Migration von Apache auf Windows zu Apache auf<br />

Linux. In diesem Fall spielt dann eher die Migration der mit dem Wechsel des Betriebssystems<br />

einhergehende Wechsel der Infrastrukturdienste eine Rolle, zum Beispiel bei<br />

der Dateiablage mit den unterschiedlichen Dateisystemen, die zum Einsatz kommen<br />

können. Diese können zu Problemen bezüglich Konstruktion der Pfade und der erlaubten<br />

Länge der Dateinamen führen (siehe Kapitel II.E 2).<br />

Die Erfahrung zeigt, dass die Migration des Apache HTTP Servers an sich meist unproblematisch<br />

ist. Schwierig kann jedoch in einigen Fällen die Migration einzelner Module<br />

werden. So kann zum Beispiel ein Wechsel des PHP Modules von PHP 4 auf PHP 5<br />

Probleme bereiten, das heißt dass unter PHP 4 entwickelte Scripte unter dem neuen<br />

Modul nicht immer fehlerfrei laufen und daher gegebenenfalls angepasst werden müssen.<br />

Analog gilt dies auch für unterschiedliche <strong>Version</strong>en von Scriptinterpretern, die zusammen<br />

mit den IIS eingesetzt werden. Eine generelle Aussage zu der Migration von<br />

Apache Modulen oder Erweiterungen der IIS lässt sich daraus jedoch nicht ableiten.<br />

Dies muss im Rahmen eines Migrationsprojekts im Einzelfall geprüft werden. Die Beispiele<br />

zeigen aber auch, dass auch bei einer fortführenden Migration nicht davon auszugehen<br />

ist, dass die Migration der dynamischen Inhalte ohne weiteres möglich ist.<br />

Für die Migration der IIS bietet Microsoft ein kommandozeilenbasiertes Tool an, mit dem<br />

sich sowohl Webseiteninhalte als auch Konfigurationsdaten migrieren lassen. Über dieses<br />

Tool lässt sich eine Migration der IIS teilweise deutlich vereinfachen. Insbesondere<br />

bei komplexen Systemumgebungen stößt das Tool jedoch an seine Grenzen, sodass<br />

keine vollständige Migration (zum Beispiel Migration von ODBC Verbindungen) möglich<br />

ist. Es muss daher vorab überprüft werden, inwieweit zusätzlich Aktivitäten notwendig<br />

sind, um die Migration abzuschließen. Stellt sich bei einer solchen Prüfung heraus, dass<br />

mehrere unterschiedlicher Migrationsprobleme durch das Tool nicht gelöst werden, kann<br />

es durchaus sinnvoller sein, eine Migration komplett ohne das Tool durchzuführen.<br />

3 Bezüge<br />

3.1 Dateiablage<br />

Webserver nutzen zum einen die Dateiablage, um ihre Daten dort abzulegen oder zu<br />

verwalten. Gegebenenfalls wird hierfür auch eine Datenbank im Backend verwendet.<br />

Zum anderen werden Webserver auch dazu eingesetzt, um Dateien auf Fileservern über<br />

Webbrowser im Internet oder Intranet, zum Beispiel mittels WebDAV zur Verfügung zu<br />

stellen. Damit besteht ein Bezug zu den Diensten der Dateiablage, bei Migrationen von<br />

Webservern sollten daher auch das (Kapitel II.E ) und hier vor allem die Technologiebetrachtungen<br />

mit den Abschnitten:<br />

� „Linux und Samba mit SMB/CIFS und POSIX―, II.E 1.1<br />

Seite 185


� „Linux-Server mit NFS―, II.E 1.2<br />

� „Linux-Server mit OpenAFS―, II.E 1.3<br />

� „Windows NT 4.0/2000/2003 mit NTFS―, II.E 1.4<br />

auf relevante Punkte geprüft werden.<br />

Bei großen Webseiten muss zusätzlich geprüft werden, auf welchen Datenbanken und<br />

Content Management Systemen die Inhalte gepflegt werden. Informationen zur Migration<br />

von Datenbanken befinden sich im gleichnamigen Kapitel.<br />

3.2 Netzwerkdienste<br />

Natürlich besteht auch immer ein Bezug zwischen dem Thema Webserver und dem<br />

Thema Netzwerkdienste. Auch hier ist im Rahmen von Migrationen zu prüfen, ob und<br />

wie die benötigten Netzwerkdienste bereitgestellt werden können und ob und wie die<br />

Anforderungen an die Kommunikationssicherheit gewährleistet werden können.<br />

Daher ist es sinnvoll im Zusammenhang mit Einführung oder Migration eines Webservers<br />

die Technologiebetrachtungen zum Thema „Netzwerkdienste― (Kapitel II.D 1) zu<br />

konsultieren.<br />

3.3 Authentifizierung<br />

Häufig soll auch der Zugang zum und der Zugriff auf den Webserver nicht völlig<br />

ungeregelt erfolgen, sodass Authentifizierungsdienste benötigt werden. Dabei macht es<br />

dann durchaus Sinn, Benutzer nicht mehrfach zu verwalten, sondern vorhandene<br />

Infrastrukturen z.B. die der zentralen Benutzerverwaltung zu nutzen. Damit stellt sich<br />

dann auch der Bezug her zu dem Thema Authentisierungs- und Verzeichnisdienst<br />

(Kapitel II.C) mit den Betrachtungen der Produkte und Technologien in den Abschnitten:<br />

� „Linux und Samba mit OpenLDAP und Kerberos (MIT/Heimdal)―, II.C 1.1<br />

� "Windows NT 4 Server als sogenannter Domänencontroller (DC)―, II.C 1.3<br />

� „Windows 2000/2003 Server mit Active Directory und Kerberos―, II.C 1.4<br />

3.4 Anwendungen<br />

Insbesondere, wenn Webserver nicht als reine Webserver zum Einsatz kommen (siehe<br />

Abschnitt II.B 1), spielt bei der Migration auch der Bezug zur Backendintegration (siehe<br />

Abschnitt III.D ) eine wichtige Rolle. Bei einem Wechsel muss sichergestellt werden,<br />

dass die Anforderungen der Anwendungen nach wie vor unterstützt beziehungsweise<br />

die Anwendungen gegebenenfalls angepasst werden müssen. Außerdem sollte mit Blick<br />

auf zukünftige Änderungen ein weitestgehendes Maß an Flexibilität und Unabhängigkeit<br />

gewahrt bleiben. Hierzu soll an dieser Stelle ganz besonders auf die Ausführungen und<br />

Hilfestellungen im Leitfaden „Plattformunabhängigkeit von Fachanwendungen― (siehe<br />

www.kbst.bund.de) als weitere Unterstützung für eine Migration hingewiesen werden.<br />

Seite 186


C Thema Authentisierungs- und Verzeichnisdienste<br />

Die Themen Authentisierung und Verzeichnisdienst sind kaum von einander zu trennen.<br />

Mit einem Verzeichnisdienst können beliebige Informationen netzwerkweit zur Verfügung<br />

gestellt werden. Ein Verzeichnisdienst besteht typischerweise aus einer Datenbank, in<br />

der diese Informationen gespeichert werden können, und einem Netzwerkprotokoll, mit<br />

dem die Informationen abgefragt oder geändert werden können. Das am häufigsten eingesetzte<br />

Verzeichnisdienstprotokoll ist das Lightweight Directory Access Protocol<br />

(LDAP). LDAP in der <strong>Version</strong> 3 wird im Kern im RFC 2251 definiert. Heute wird unter<br />

einem LDAP-Server in der Regel die Kombination aus Datenbank und Protokollimplementierung<br />

verstanden.<br />

Verzeichnisdienste eignen sich insbesondere für den schnellen lesenden Zugriff auf hierarchisch<br />

strukturierte Daten, die nicht regelmäßig geändert werden. Dabei lassen sich<br />

beliebige Informationen ablegen beziehungsweise über den Dienst im Netzwerk bereitstellen.<br />

Mit der Einführung eines Verzeichnisdienstes ist es möglich, die Benutzerkonten und die<br />

dazugehörigen Berechtigungen zentral im Verzeichnisdienst zu speichern und alle Systeme<br />

darauf zugreifen zu lassen. Gleichzeitig können Adressbuchanwendungen, wie sie<br />

beispielsweise in E-Mail-Software eingebaut sind, auf das Verzeichnis zugreifen und so<br />

die E-Mail-Adressen der Mitglieder der betreffenden Organisation bereit stellen, ohne<br />

dass diese Daten erneut manuell eingegeben werden müssen.<br />

Verzeichnisdienste können auch zur Speicherung von Passwörtern genutzt werden<br />

(Passwörter sind dann typischerweise ein Attribut von Personen- oder Benutzerkontenobjekten).<br />

Dadurch wird ebenfalls das Ziel der einmaligen, zentralen Datenhaltung verfolgt.<br />

Im Verzeichnis gespeicherte Passwörter werden an einer Stelle angelegt und geändert<br />

und können dann auf allen Systemen und mit allen Anwendungen genutzt werden,<br />

die das Verzeichnis zur Authentifizierung verwenden können. Außerdem können<br />

die im Verzeichnis gespeicherten Passwörter zur Authentifizierung beim Zugriff auf Daten<br />

im Verzeichnis selbst genutzt werden.<br />

Verzeichnisdienste werden daher an vielen Stellen, insbesondere im Zusammenhang<br />

mit Authentisierungsdiensten eingesetzt, zum Beispiel unter Windows mit Active Directory,<br />

unter Linux/Samba mit OpenLDAP oder in der Groupware Kolab mit OpenLDAP.<br />

Trotz dieser weit verbreiteten Praxis, Verzeichnisdienste zur Authentifizierung zu verwenden,<br />

muss dies als fragwürdige Strategie angesehen werden. Das Konzept erlaubt<br />

keine sichere Methode zur Implementierung von Single Sign-On, da an jedem System<br />

und jeder Anwendung erneut eine Authentifizierung stattfinden muss (wenngleich auch<br />

mit demselben Passwort). Außerdem sind die meisten Verzeichnisdienste nicht mit dem<br />

Ziel geschrieben worden, einen sicheren Authentifizierungsmechanismus bereit zu stellen,<br />

sondern häufig benötigte Informationen zentral zu speichern und schnell an Clients<br />

liefern zu können. Stattdessen empfiehlt sich der Einsatz von Kerberos. Kerberos ist ein<br />

Protokoll zur sicheren Authentisierung innerhalb offener Netze, die zum Beispiel auf dem<br />

TCP/IP Protokoll basieren.<br />

Bei der Verwendung von Kerberos werden nicht wie üblich, Benutzernamen und Passwort<br />

an jeden Server geschickt, dessen Dienste von einem Benutzer in Anspruch ge-<br />

Seite 187


nommen werden sollen. Vielmehr erfolgt hier eine einmalige Anmeldung an einem Key<br />

Distribution Center (KDC, gelegentlich auch als Kerberos Domänencontroller bezeichnet).<br />

Der Benutzer erhält nach erfolgter Anmeldung ein Ticket, das eine definierte Gültigkeitsdauer<br />

hat und mit dem er sich dann gegenüber allen weiteren Diensten authentifizieren<br />

kann. Nach Ablauf der Gültigkeit des Tickets muss sich der Benutzer erneut authentifizieren.<br />

Durch den Einsatz von Kerberos muss die Passwortdatenbank nur noch<br />

auf besonders vertrauenswürdigen Systemen (den Kerberos-Servern) vorhanden sein.<br />

Andere Systeme brauchen keinen Zugriff mehr auf die Passwortdatenbank. Mit Hilfe von<br />

Kerberos-Tickets kann außerdem Single Sign-On implementiert werden, indem Tickets<br />

zum Zugriff auf alle im Netzwerk bereitgestellten Dienste verwendet werden (sofern die<br />

entsprechenden Applikationen Kerberos unterstützen).<br />

Um ein feingranulares Rechtesystem zu realisieren, das definiert, welche Objekte und<br />

Attribute durch welche Benutzer gelesen oder geändert werden dürfen, implementieren<br />

die meisten Verzeichnisdienste ein System von Access Control Lists (ACLs), das mit den<br />

ACLs auf Dateisystemebene zu vergleichen ist.<br />

Vor diesem Hintergrund werden nachfolgend die in der Überschrift genannten Themen<br />

hier gemeinsam betrachtet.<br />

1 Produkte / Technologien<br />

1.1 Linux und Samba mit OpenLDAP und Kerberos (MIT/Heimdal)<br />

Samba ist eine freie Software, die das SMB-Protokoll (Server-Message-Block-Protokoll)<br />

und das CIFS (Common Internet File System) für Unix- und Linux-Systeme nutzbar<br />

macht. Das SMB-Protokoll und dessen Erweiterung CIFS sind Windows-Protokolle für<br />

u.a. Datei- und Druckdienste. Samba wurde erstmals 1992 veröffentlicht. Das Kernteam<br />

zur Entwicklung von Samba umfasst ca. 20 Personen, die von einigen Firmen unterstützt<br />

werden 160 . Samba liegt aktuell in der <strong>Version</strong> <strong>3.0</strong>26a vor. Gemäß der unter<br />

http://samba.sernet.de/ 161 veröffentlichten Erklärung des Samba-Teams werden alle<br />

<strong>Version</strong>en ab der <strong>Version</strong> 3.2 unter der GNU General Public License in der <strong>Version</strong> 3<br />

veröffentlicht. Demnach sollte die aktuelle <strong>Version</strong> noch unter GPLv2 stehen.<br />

OpenLDAP ist die Implementierung eines LDAP-Servers als Open Source Software 162 .<br />

Sie steht unter der OpenLDAP Public License V2.8.<br />

Kerberos 5 ist ein Protokoll zur sicheren Authentisierung innerhalb offener Netze, die<br />

zum Beispiel auf dem TCP/IP Protokoll basieren. Kerberos wurde am MIT (Massachusetts<br />

Institute of Technology) 163 entwickelt und ermöglicht auch die Realisierung von<br />

Single Sign-On, das heißt eine einmalige Anmeldung im Netz ist ausreichend, um alle<br />

Dienste und Programme, für die eine Berechtigung besteht, nutzen zu können. Die Spezifikation<br />

ist im RFC 4120 beschrieben. Eine freie, weit verbreitete Implementierung des<br />

160 http://www.samba.org<br />

161 Stand 01.11.2007<br />

162 http://www.openldap.org<br />

163 http://www.kerberos.org/<br />

Seite 188


Kerberosprotokolls ist die Heimdal-Implementierung 164 . Eine andere wichtige Open<br />

Source Implementierung ist die des MIT 165 .<br />

In den folgenden Abschnitten wird auf architektonische und funktionale Besonderheiten<br />

der drei Produkte OpenLDAP, Samba und Heimdal Kerberos unter dem Blickpunkt der<br />

Realisierung eines Authentisierungsdienstes eingegangen.<br />

1.1.1 OpenLDAP<br />

Die Software OpenLDAP setzt sich aus folgenden Modulen zusammen<br />

� slapd - der eigentliche LDAP-Server,<br />

� slurpd - der LDAP-Update-Replication-Daemon,<br />

� Bibliotheken zur Implementierung des LDAP-Protokolls und<br />

� weiterer Werkzeuge.<br />

Darüber hinaus setzt OpenLDAP standardmäßig als Datenbank-Backend die BerkleyDB<br />

ein 166 . Die nachfolgende Tabelle zeigt die Funktionen, die von OpenLDAP unter Linux<br />

unterstützt werden.<br />

Client ohne Zusatzsoftware<br />

Funktion<br />

Möglichkeit zum hierarchischen Aufbau des Verzeichnisses<br />

Erweiterbarkeit durch eigene Attribute und Objektklassen<br />

Unicode Zeichensatz für Verzeichnisdaten<br />

Zugriffsmöglichkeit auf das Verzeichnis per Standard-Protokoll (LDAP)<br />

Sichere Zugriffsmöglichkeit per LDAP über SSL/ TLS<br />

Unterstützung des „starttls― Protokolls<br />

Unterstützung für SASL<br />

Authentifizierung von NT Clients über Samba 167<br />

Authentifizierung von W2K Clients über Samba 168<br />

Authentifizierung von Linux Clients<br />

Möglichkeit zur Integration von Kerberos<br />

Möglichkeit zur Verwendung eines unabhängigen / übergeordneten Kerberos-Dienstes<br />

164 http://www.pdc.kth.se/heimdal/<br />

165 http://web.mit.edu/kerberos/www/<br />

166 http://www.oracle.com/technology/software/products/berkeley-db/index.html<br />

167 Bei der Verwendung von Samba zur Authentifizierung von Windows Clients gegen OpenL-<br />

DAP wird zwischen Windows-Client und Samba-Server das NT-LAN-Manager Protokoll<br />

verwendet.<br />

168 Bei der Verwendung von Samba zur Authentifizierung von Windows Clients gegen OpenL-<br />

DAP wird zwischen Windows-Client und Samba-Server das NT-LAN-Manager Protokoll<br />

verwendet.<br />

Seite 189


Funktion<br />

Verwaltung von Zugriffsrechten (ACLs) für Attribute und Objekte<br />

Delegation von Verwaltungsaufgaben<br />

Master-Slave-Replikation<br />

Multi-Master-Replikation 169<br />

Tabelle 39: Funktionen von OpenLDAP unter Linux<br />

Zur Verwaltung der in einem Verzeichnis gespeicherten Informationen stehen unter Linux<br />

die standardmäßigen Kommandozeilenbefehle zur Verfügung:<br />

� ldapsearch<br />

� ldapadd<br />

� ldapdelete<br />

� ldapmodify<br />

� ldapmodrdn<br />

Diese Kommandozeilenbefehle eignen sich vor allem zur Initialisierung eines Verzeichnisses,<br />

ferner zum Datenimport, zur schnellen Suche nach Verzeichnisinhalten sowie zur<br />

automatisierten Bearbeitung eines Verzeichnisses. Darüber hinaus gibt es zur Administration<br />

etliche freie grafische Werkzeuge zur verzeichnisbasierten Benutzer- und Gruppenverwaltung<br />

unter Linux, zum Beispiel GQ 170 -Browser. Ebenso wichtig und viel flexibler<br />

sind browserbasierte Werkzeuge zur Verwaltung von Benutzer-, Gruppen- und Maschinenkonten<br />

sowie anderen Objekten (Mailing-Listen, DNS-Einträgen usw.) innerhalb<br />

von Verzeichnisdiensten. Der Vorteil dieser Lösungen ist, dass sie mit einem Web-<br />

Browser unabhängig vom Server verwendet werden können, wobei eine sichere Datenübertragung<br />

(SSL/TLS), wie auch bei anderen Werkzeugen, genutzt werden kann. Häufig<br />

sind dies aber komplexere Werkzeuge für spezielle Aufgaben wie die Systemadministration,<br />

zum Beispiel Webmin 171 .<br />

Linux und OpenLDAP hat sich in sehr großen Umgebungen mit mehr als 70.000 Benutzern<br />

als stabil und hinreichend performant erwiesen. Mit OpenLDAP ist es daher möglich,<br />

große Verzeichnisse, wie zum Beispiel eine zentrale Benutzerdatenverwaltung, aufzubauen.<br />

Typisch für ein solches Verzeichnis ist die hierarchische Strukturierung der in ihm enthaltenen<br />

Informationen, ähnlich wie in einem Dateisystem. Diese Struktur des Verzeichnisses<br />

wird dabei durch das LDAP-Schema definiert. In diesem werden Objekt-Klassen<br />

169 Die Multi-Master-Replikation in OpenLDAP gilt als experimentell und ist standardmäßig<br />

nicht eingeschaltet.<br />

170 http://gq-project.org/<br />

171 http://de.wikipedia.org/wiki/Webmin<br />

Seite 190


(zum Beispiel Person oder Organisation) mit ihren Attributen festgelegt. Aus den definierten<br />

Objektklassen ergibt sich, zu welchen Attributen zwingend Werte anzugeben sind<br />

(Pflichtangaben). Die Verzeichniseinträge selbst heißen Objekte. Jedes Objekt ist mindestens<br />

einer, in der Regel aber mehreren Klassen zugeordnet. Innerhalb der Objekte<br />

werden zu den Attributen die Attributwerte abgelegt. In den Attributen sind somit die gesamten<br />

Informationen eines im Verzeichniseintrag genannten Informationsobjekts<br />

enthalten. Attribute unterscheiden sich in Attributtypen. Über diese wird u.a. festgelegt,<br />

welche Werte für ein Attribut zulässig sind.<br />

Die Einträge werden in einer hierarchischen Baumstruktur, dem Directory Information<br />

Tree (DIT), eingeordnet, der den gesamten Namensraum, der von einem Server vorgehaltenen<br />

wird, abbildet. Der Distinguished Name (DN) ist der eindeutige Name des Eintrags<br />

im gesamten Datenbestand.<br />

Als Netzwerkprotokoll verfügt LDAP über Befehle, die für das Datenmanagement (add,<br />

delete, modify, modify DN) und für das Retrieval (search) inklusive der Möglichkeit,<br />

komplexe Suchfilter aufzubauen, notwendig sind. Ebenso werden Befehle für die Authentisierung<br />

beziehungsweise das Anmelden (bind) und das Abmelden des Clients vom<br />

Server (unbind, abandon) spezifiziert. Die Anmeldung ist in ein bind request und ein bind<br />

response aufgeteilt. Der bind request enthält neben der LDAP-Protokollversionsnummer<br />

einen Distinguished Name eines Eintrags. Dieser Eintrag kennzeichnet die zu beweisende<br />

Identität, zum Beispiel einen Personeneintrag sowie die Authentisierungsmethode<br />

samt der zugehörigen Daten. Hierbei sind zwei Methoden definiert:<br />

Bei der Methode Simple Bind wird zusätzlich zum Distinguished Name ein Passwort mitgeschickt,<br />

das mit dem gespeicherten Passwort verglichen wird. Eine Verschlüsselung<br />

des zu übertragenden Passworts ist mit TLS möglich und spezifiziert.<br />

Die Methode SASL (Simple Authentication and Security Layer) Bind kapselt den Authentisierungsvorgang<br />

in eine eigene Schicht. Damit wird vermieden, für jedes Anwendungsprotokoll<br />

einen eigenen Authentisierungsmechanismus definieren zu müssen. Der am<br />

stärksten verbreitete SASL-Mechanismus ist GSSAPI (Generic Security Services Application<br />

Programming Interface). Die beiden wichtigsten GSSAPI-Mechanismen sind wiederum<br />

Kerberos V5 und X.509. Abhängig vom gewählten SASL-Mechanismus werden<br />

bei der LDAP-Authentisierung im bind request anstelle des Distinguished Name andere<br />

Identitätskennungen und Identitätsbeweise mitgeschickt. Damit lässt sich für OpenLDAP<br />

eine Authentifizierung mittels Kerberos 5 über SASL-GSSAPI realisieren.<br />

Zusätzlich zu einigen Authentisierungsmechanismen bietet SASL auch die Definition<br />

einer optionalen Verschlüsselung an.<br />

Die gesamte Kommunikation zwischen Client und Server kann mit TLS verschlüsselt<br />

werden, sodass sich Server und Client gegenseitig authentisieren können, wodurch zum<br />

Beispiel „man-in-the-middle―-Angriffe vermieden werden. Wie TLS zur Verschlüsselung<br />

der Kommunikation zwischen Client und Server verwendet werden soll, wird im RFC<br />

2830 172 beschrieben.<br />

172 http://www.faqs.org/rfcs/rfc2830.html<br />

Seite 191


Auch bei Login-Prozessen in Betriebssystemen kann auf zentrale, durch einen LDAP-<br />

Server vorgehaltene Benutzerdaten zugegriffen werden. Bei Unix-Systemen geschieht<br />

dies über die Verwendung von NSS (Name Service Switch) und PAM (Pluggable Authentication<br />

Modules). Bei Windows-Rechnern kann eine LDAP-basierte Benutzerverwaltung<br />

durch den Einsatz von Samba verwendet werden. Samba dient neben der Bereitstellung<br />

von Dateien und Druckern über das Netz auch der Authentisierung von Windows-Clients<br />

an einer Windows-Domäne. Samba verfügt über eine LDAP-Schnittstelle,<br />

sodass die Daten der Benutzerkonten für den Login-Prozess aus der zentralen LDAP-<br />

Benutzerverwaltung verwendet werden können 173 .<br />

Weitere Aufgaben eines Verzeichnisdienstes:<br />

Durch die zentrale Verwaltung zum Beispiel von Host-Informationen in einem Verzeichnis<br />

lassen sich zahlreiche administrative Aufgaben deutlich vereinfachen. Dazu gehören<br />

� Inventarisierung vorhandener Hardware,<br />

� Erstellung und Verwaltung von DNS-Namenseinträgen,<br />

� Erstellung und Verwaltung von DHCP-Konfigurationen,<br />

� gemeinsame Speicherung der Maschinen-Accounts mit den oben genannten Informationen<br />

(für Windows-Clients) und<br />

� Speicherung beliebiger weiterer host-spezifischer Informationen in einem Verzeichnis,<br />

wie beispielsweise Informationsprofile zur automatischen Installation eines<br />

Clients.<br />

Diese Informationen müssen nicht manuell oder über andere Verfahren auf mehrere<br />

Rechner verteilt werden, sondern werden per LDAP-Replikation anderen Systemen zur<br />

Verfügung gestellt. Durch eine verteilte Verzeichnis-Server-Struktur können zentral erfasste<br />

Informationen mittels Replikation auf die verschiedenen Server verteilt werden, an<br />

die die anderen Systeme angebunden sein müssen.<br />

Unter Linux stehen mittlerweile zahlreiche Programme zur Verfügung, mit denen Host-<br />

Informationen direkt aus einem LDAP-Verzeichnis gelesen werden können:<br />

� Für den Standard DHCP-Server (ISC DHCPD) gibt es einen Patch, mit dem die<br />

DHCP-Konfiguration aus einem LDAP-Verzeichnis gelesen werden kann<br />

(siehe: http://home.ntelos.net/~masneyb/dhcp-<strong>3.0</strong>.5-ldap-patch)<br />

� Für BIND 9 gibt es ebenfalls einen Patch, mit dem Zonendateien durch LDAP ersetzt<br />

werden (siehe: http://bind9-ldap.bayour.com/)<br />

� Samba kann Informationen für Maschinen-Accounts direkt aus dem LDAP-<br />

Verzeichnis beziehen<br />

Darüber hinaus gibt es eine Reihe proprietärer und freier Softwareprodukte, mit denen<br />

die BIND- und DHCP-Konfiguration transparent aus dem LDAP-Verzeichnis erzeugt<br />

werden kann.<br />

173 Gietz, P.: „Chancen und Risiken LDAP-basierter zentraler Authentifizierungssysteme―,<br />

http://www.daasi.de/pub/Chancen%20und%20Risiken%20durch%20LDAP-<br />

Authentifizierung.pdf<br />

Seite 192


Neben der Verwendung von Verzeichnisdiensten zur zentralen Speicherung von Benutzer-,<br />

Gruppen- und Host-Informationen steigt der Nutzen von Anwendungen durch den<br />

Zugriff möglichst vieler anderer Applikationen. Auf eine vollständige Liste LDAPkompatibler<br />

Anwendungen wird an dieser Stelle verzichtet. Wichtig ist jedoch der Hinweis,<br />

dass immer mehr Applikationen LDAP-Unterstützung aufweisen, nicht zuletzt die<br />

Microsoft E-Mail-Programme Outlook und Outlook-Express oder das Office-Paket OpenOffice.org.<br />

Diese Anwendungen können sowohl mit OpenLDAP als auch mit Active<br />

Directory als Verzeichnisdienst arbeiten.<br />

1.1.2 Samba<br />

Samba ist als Client-Server-System aufgebaut und besteht aus einer Vielzahl einzelner<br />

Module, die grundlegende Aufgaben bis hin zur Konfiguration und Dokumentation übernehmen.<br />

Da die Module auch ausgetauscht werden können, kann die Konfiguration zum<br />

Beispiel auch über eine Webschnittstelle erfolgen. Sambas Kernmodul heißt Smbd und<br />

stellt Datei- und Druckdienste für die SMB/CIFS-Clients zur Verfügung. Über Samba<br />

können Informationen für Maschinen-Accounts direkt aus dem LDAP-Verzeichnis bezogen<br />

werden.<br />

1.1.2.1 Authentifizierung mit Linux / OpenLDAP und Samba<br />

Samba kann Windows-Clients ähnliche Funktionalitäten wie ein Windows NT-basierter<br />

primärer Domänencontroller (also u.a. File-, Print- und Authentifizierungsservices) zur<br />

Verfügung stellen. Als Datenbank für Benutzerkonten kann Samba dabei auf OpenLDAP<br />

als Verzeichnisdienst zurückgreifen. Insofern stellt die Kombination Samba/OpenLDAP<br />

eine Art Mischform zwischen Windows NT-Domänen und Active Directory dar. Aus der<br />

Sicht von Windows-Clients handelt es sich um eine Windows NT-Domäne (die frühestens<br />

2008 erscheinende <strong>Version</strong> Samba 4 wird sich in Richtung der Windows Clients wie<br />

ein Active Directory Domänencontroller präsentieren). Hinsichtlich der Administration von<br />

Benutzer-, Gruppen- und Host-Informationen geht es jedoch um eine vollständig verzeichnisdienstbasierte<br />

Lösung mit allen daraus resultierenden Vorteilen. Insbesondere<br />

entfällt bei einer Samba/OpenLDAP-basierten Lösung das von Windows NT bekannte<br />

Skalierungsproblem, das oft die Aufteilung einer Infrastruktur in unterschiedliche Domänen<br />

erforderlich macht.<br />

Bei Verwendung von Linux/OpenLDAP als Verzeichnisdienst für Windows-Clients in<br />

Verbindung mit Samba findet die Authentifizierung der Windows-Clients über das NTLM-<br />

Protokoll statt. Darum müssen im Verzeichnis die gleichen verschlüsselten Passwörter<br />

gespeichert werden wie in der SAM-Datenbank unter Windows NT/2000/2003. Mit dieser<br />

qualitativen Einschränkung (keine Kerberos Authentifizierung für Windows 2000/XP<br />

Clients) ist es somit möglich, auf der Basis von Linux, OpenLDAP und Samba eine vollwertige<br />

Authentifizierung für Windows-Clients aufzubauen.<br />

Dabei scheint es zunächst problematisch zu sein, dass UNIX- und Linux standardmäßig<br />

einen anderen Algorithmus zur Passwort-Verschlüsselung verwenden als Windows<br />

NT/2000. Es ist deswegen bei einer OpenLDAP/Samba-basierten Lösung notwendig,<br />

UNIX- und Windows-Passwörter nebeneinander im LDAP-Verzeichnis zu speichern und<br />

miteinander zu synchronisieren. Aus technischer Sicht ist dies weniger problematisch,<br />

denn Samba kann so konfiguriert werden, dass es bei einer Passwort-Änderung vom<br />

Seite 193


Windows-Client aus auch das UNIX-Passwort ändert. Und umgekehrt können UNIX-<br />

Programme über den PAM- (Pluggable Authentication Module) Mechanismus so eingerichtet<br />

werden, dass sie auch das Windows-Passwort ändern, wenn das UNIX-Passwort<br />

gewechselt wird. Durch richtige Konfiguration stellt die Passwort-Synchronisation somit<br />

kein Problem dar.<br />

Samba <strong>3.0</strong>x unterstützt die von Windows NT bekannten Vertrauensstellungen. Diese<br />

können sowohl zwischen Windows- und Samba-Domänen als auch zwischen zwei Domänen,<br />

die beide auf Samba basieren, eingerichtet werden.<br />

1.1.2.2 Einschränkungen bei der Verwendung von OpenLDAP und Samba<br />

Wie bereits erwähnt, entspricht Samba aus der Sicht von Windows-Clients einem Server<br />

auf der Basis von Windows NT. Das bedeutet, dass die mit Active Directory neu eingeführten<br />

Eigenschaften zur Verwaltung von Windows Clients nicht zur Verfügung stehen.<br />

Insbesondere werden Group Policy Objects (GPOs) und die Softwareverteilung via Active<br />

Directory 174 nicht unterstützt. In der Praxis ist es oft völlig ausreichend, diese Features<br />

durch andere Techniken zu ersetzen.<br />

Samba unterstützt die sogenannten System Policies, mit denen sich Registry-Einstellung<br />

für Benutzer, Benutzergruppen und Client-Computer festlegen lassen. Über System-<br />

Policies kann ein Großteil der mit GPOs verfügbaren Einstellungen ebenfalls vorgenommen<br />

werden (Einschränkungen in der Funktion der Windows-Oberfläche, Auswahl<br />

ausführbarer Programme usw.). Die Systemrichtlinien können dynamisch mit dem in<br />

Samba integrierten Werkzeug „editreg― erstellt werden.<br />

Außerdem lassen sich in einer Samba-basierten Umgebung lokale Policies verwenden,<br />

mit denen prinzipiell dieselben Einstellungen vorgenommen werden können wie mit<br />

GPOs. Weil lokale Policies einfach im Dateisystem abgelegt werden, können diese leicht<br />

von einem Prototypen auf eine große Anzahl von Clients synchronisiert werden.<br />

1.1.2.3 Kombination von OpenLDAP und Active Directory<br />

Dort, wo auf die Features von Active Directory nicht verzichtet werden kann, ist es möglich,<br />

Benutzer- und Gruppendaten aus OpenLDAP in das Active-Directory zu replizieren.<br />

Benutzer und Gruppen müssen dann weiterhin nur im OpenLDAP-Verzeichnis gepflegt<br />

werden, stehen aber auch im Active Directory zur Verfügung. Auf diese Weise können<br />

die entsprechenden Eigenschaften (wie etwa GPOs) genutzt werden und der Single-<br />

Point-of-Administration bleibt erhalten. Dabei kann Windows so konfiguriert werden,<br />

dass für beide Teile der Umgebung ein gemeinsamer (Linux basierter) Kerberos-Server<br />

genutzt werden kann. Allerdings ist dies mit der Einschränkung verbunden, dass Windows<br />

95/98/NT basierte Systeme sich dann nicht mehr gegen Active Directory/Kerberos<br />

authentifizieren können. In einer solchen Konstruktion wird deswegen die Authentifizierung<br />

dieser Clients gegenüber Samba/OpenLDAP empfohlen.<br />

174 Softwareverteilung ist nicht Thema dieses Abschnitts und wird daher hier nicht weiter be-<br />

trachtet.<br />

Seite 194


1.1.3 Heimdal-Kerberos /MIT Kerberos 5<br />

Zunächst einige Ausführungen zum grundsätzlichen Funktionsprinzip von Kerberos: Bei<br />

einer kerberosgesicherten Kommunikation sind drei Parteien beteiligt:<br />

� Ein Client, der einen Dienst anfragt<br />

� Ein Server, der angefragt wird<br />

� Der Kerberos-Server, der die Berechtigungen vorhält und eine gesicherte Kommunikation<br />

ermöglicht<br />

Der Kerberos-Dienst authentisiert dabei sowohl den Client gegenüber dem Server als<br />

auch den Server gegenüber dem Client. Dabei muss sowohl auf dem anfragenden Client<br />

als auch auf dem angefragten Server eine Kerberos-Unterstützung installiert sein.<br />

Unter Kerberos sendet ein Client, in der Regel ein Nutzer oder ein Dienst, eine Ticketanfrage<br />

zum Key Distribution Center (KDC). Dieser generiert dann ein Ticket-Granting<br />

Ticket (TGT) für den Client und verschlüsselt dieses mit dem Passwort und/oder Smartcard<br />

des Clients und sendet es an den Client zurück. Der Client entschlüsselt das TGT<br />

mittels Passworts und/oder der Smartcard und behält das entschlüsselte TGT, das die<br />

Identität des Clients sicherstellt. Dieses zeitlich befristete TGT ermöglicht es dem Client,<br />

zusätzliche Tickets zu erlangen, die dem Client die Nutzung bestimmter Dienste erlauben.<br />

Der Prozess zum Erlangen eines zusätzlichen Tickets verläuft ohne weitere Aktivität<br />

des Nutzers. Der Client sendet das Ticket an den Dienst, der überprüft, ob er dem<br />

Client den Zugriff gestatten soll.<br />

Auf diese Art ermöglicht Kerberos eine authentisierte, optional über einen Sitzungsschlüssel<br />

auch verschlüsselte Kommunikation. Die Kerberos Tickets können dabei optional<br />

in einer Datei oder im Arbeitsspeicher des Clients gespeichert werden.<br />

Die Referenzimplementierung des Kerberosprotokolls ist die Implementierung des MIT.<br />

Die aktuelle <strong>Version</strong> 1.6.3 unterstützt die <strong>Version</strong>en 4 und 5 des Protokolls. Unterstützt<br />

werden die Standard-Kerberos-Verschlüsselungsverfahren, wie DES und 3DES, weiterhin<br />

werden RC4, das von Active Directory Kerberos genutzte Verfahren, sowie AES unterstützt.<br />

Prüfsummenverfahren, die zur Verfügung stehen, sind MD5, SHA-1, HMAC<br />

und CRC32. MIT Kerberos steht für Linux, Windows und Mac zur Verfügung.<br />

Heimdal-Kerberos ist eine neuere, freie Implementierung des Kerberosprotokolls für<br />

Unix, Linux und Mac, die aktuell in der <strong>Version</strong> 1.01 vorliegt 175 . Sie ähnelt der MIT-<br />

Implementierung stark. So werden zum Beispiel ebenfalls die Kerberos-<strong>Version</strong>en 4 und<br />

5 unterstützt sowie die gleichen Verschlüsselungsverfahren wie bei MIT Kerberos.<br />

Auf Basis dieser Mechanismen lässt sich mit Kerberos auch eine sogenannte starke<br />

Authentisierung realisieren. Eine starke Authentisierung erfordert neben dem Wissen<br />

bzgl. des Benutzernamens und des Passworts in der Regel zusätzlich den physischen<br />

Besitz eines Gegenstands, zum Beispiel eines Tokens, der systemabhängige Zahlen<br />

generiert, die zur Authentisierung eingegeben werden müssen. Die erforderliche Sicherheit<br />

ist dabei vom konkreten Anwendungsfall abhängig.<br />

175 Stand 01.11.2007<br />

Seite 195


Da sich der Kerberos-Server als Single-Point-of-Failure erweisen kann, nach dessen<br />

Ausfall sich zum Beispiel niemand anmelden kann, besteht die Möglichkeit, zusätzliche<br />

Kerberos-Server als Backup einzusetzen. Zudem besteht die Möglichkeit, mehrere Server<br />

zum Load-Balancing zu nutzen.<br />

1.1.4 Betriebssystemumgebungen von Samba und OpenLDAP<br />

Nachdem in den vorherigen Abschnitten die drei Produkte im Hinblick auf architektonische<br />

und funktionale Besonderheiten beschrieben wurden, wird im Folgenden näher auf<br />

mögliche Betriebssystemumgebungen von Samba und OpenLDAP eingegangen.<br />

Samba Server ab der <strong>Version</strong> <strong>3.0</strong> können als Mitgliedserver in einem Active Directory<br />

genutzt werden. Ohne den Nutzen von Microsoft Servern ist es nicht möglich, die Active<br />

Directory Funktionen über einen Samba Server anzubieten. Mit Samba in Kombination<br />

mit einem anderen Verzeichnisdienst, zum Beispiel OpenLDAP, lassen sich Funktionen<br />

wie sie Active Directory bietet, in einem Netzwerk abbilden.<br />

SMB/CIFS-Clients stehen auch für verschiedene Windows- und Unix-Varianten zur Verfügung.<br />

OpenLDAP läuft unter verschiedenen Unix- und Windows-Varianten sowie unter Mac OS<br />

X. Durch unterschiedliche Backend und Overlays lassen sich Erweiterungen, zum Beispiel<br />

zusätzliche Operationen, realisieren. So können zum Beispiel SQL-Abfragen in<br />

LDAP-konforme Informationen umgewandelt werden.<br />

Zusammenfassend ist festzustellen: Die Kombination von Samba und OpenLDAP stellt<br />

eine etablierte Verzeichnisdienstalternative in heterogenen Netzen dar. Die Migration auf<br />

die Kombination Samba/OpenLDAP kann für Benutzer und Clients relativ transparent<br />

geschehen, sodass diese von dem Wechsel unberührt in ihrer Arbeit bleiben und sich<br />

keine wesentlichen Änderungen für sie ergeben.<br />

Kerberos ist ein modernes und weit verbreitetes Protokoll. Es bietet sichere und einheitliche<br />

Authentisierung in einem ungesicherten TCP/IP Netzwerk aus sicheren Hostrechnern.<br />

Durch Kerberos werden gemäß DFN-CERT insbesondere Angriffe durch passives<br />

,,Sniffing'' unterbunden, aber auch ,,Spoofing'', ,,Dictionary Attacks'', ,,Replay'' und andere<br />

Angriffe werden erschwert. 176<br />

1.2 Fedora Directory Server (OSS-Lösung mit Multimasterfähigkeit)<br />

Der Fedora Verzeichnisserver wird durch das Fedora Projekt entwickelt, das u.a. durch<br />

eine freie Linux-Distribution bekannt ist. 177<br />

Der Fedora Verzeichnisserver ist 2005 aus dem Netscape Verzeichnisserver hervorgegangen.<br />

Er wird in der <strong>Version</strong> 1.0.4 angeboten, wobei sich die <strong>Version</strong> 1.1 bereits in der<br />

Testphase befindet.<br />

176 http://www.dfn-cert.de/infoserv/dib/dib-2002-02-Kerberos5/doc-single.html.<br />

177 http://fedoraproject.org; Fedora und Red Hat basieren auf derselben Softwarebasis und<br />

sind annähernd identisch. Unter dem Namen Red Hat werden seit 2003 kommerzielle Produkte,<br />

i.d.R. Software, an die ein Wartungsvertrag gebunden ist, für Firmenkunden vertrieben.<br />

Seite 196


Wichtige Änderungen gegenüber der Vorgängerversion sind die Synchronisation von<br />

Windows Usern (Active Directory User- und Gruppen-Synchronisation, Synchronisation<br />

über Samba), ferner eine verbesserte Rechtekontrolle, die Möglichkeit der Replikation in<br />

WANs (Wide Area Networks), die Möglichkeit der inkrementellen Replikation sowie<br />

vereinfachtes Ändern von Passwörtern und die Möglichkeit, die Replikation von<br />

Dateiverzeichnissen anzustoßen. Es ist zudem möglich, biometrische Daten und<br />

Smartcards einzubinden. Insbesondere besteht die Möglichkeit, mehrere Master-Server<br />

einzusetzen.<br />

Ein Großteil des Fedora Verzeichnisservers wird als freie Software (GPL Exception) im<br />

Rahmen diverser Community-Projekte, in der Regel in enger Kooperation mit dem Fedora<br />

Projekt, entwickelt. Darüber hinaus gibt es Erweiterungen wie eine Managementkonsole<br />

oder Module für den Apache Server, die unter anderen Open Source Lizenzen verfügbar<br />

sind. 178<br />

Bei Installation des Fedora Directory Server werden folgende Komponenten installiert:<br />

� Das Server Front End zur Verwaltung der Kommunikation mit den Clients via<br />

LDAP, die per SSL/TLS verschlüsselt werden kann<br />

� Plug-Ins für Serverdienste, wie zum Beispiel Access Control und Replikation,<br />

weitere Plug-Ins finden sich unter http://directory.fedoraproject.org/wiki/Plugins<br />

� Ein Verzeichnisbaum mit den serverbezogenen Informationen<br />

� Ein Datenbank-Plug-In zur Verwaltung der dauerhaft gespeicherten Information,<br />

zum Beispiel zum Aufrufen der Serverinformationen<br />

Der Fedora Verzeichnisserver ist ein LDAP basierter Verzeichnisdienst. Der Zugriff muss<br />

demnach über LDAP erfolgen. Er ist für folgende Betriebssysteme verfügbar:<br />

� Fedora Core 3-6 (x86 und x86_64)<br />

� Red Hat Enterprise Linux <strong>Version</strong> 3 (x86) und 4 (x86 und x86_64)<br />

� Solaris 2.8 und 2.9 (32 und 64 bit) (SPARC)<br />

� HP/UX 11(pa-risc und ia64)<br />

� weitere Linux-Distributionen (u.a. Debian, gentoo, ubuntu)<br />

Andere Betriebssysteme werden nicht offiziell unterstützt, der Server kann jedoch auch<br />

auf anderen Betriebssystemen laufen. 179<br />

Über eine vierwege Replikation der Master-Datenbank wird sichergestellt, dass unternehmensweit<br />

konsistente Daten für die Anwendungen im Unternehmen zur Verfügung<br />

gestellt werden. Das dahinter stehende Konzept wird Multi-Master-Replikation genannt.<br />

Im Gegensatz zur Master-Slave-Verfahren können Änderungen von Verzeichnisinhalten<br />

auf mehreren Servern durchführt werden, um Engpässe zu vermeiden. Eine vierwege<br />

Replikation bedeutet in diesem Fall, dass vier Master-Datenbanken existieren. Hierüber<br />

wird auch eine hohe Skalierbarkeit des Systems sichergestellt, die auch große Daten-<br />

178 Für nähere Informationen siehe http://directory.fedoraproject.org/wiki/Licensing.<br />

179 http://directory.fedoraproject.org/wiki/FAQ<br />

Seite 197


anken (>1 GB) unterstützt. Die vierwege Replikation der Masterdaten minimiert die<br />

Downtime des Verzeichnisdienstes für Wartungs- und Reparaturarbeiten.<br />

Der Fedora Verzeichnisserver hält insbesondere Informationen über Anwendungen, Anwendungseinstellungen,<br />

Benutzerprofile, Gruppendaten, Richtlinien und Zugriffskontrollinformationen<br />

(ACL; Access Control List) zentral in einem vom Betriebssystem unabhängigen<br />

und netzwerkbasierten Verzeichnis bereit. Eine Authentisierung kann über<br />

SASL, GSSAPI und Kerberos V 5 erfolgen. 180 Die Zugriffsrechte können dabei bis auf<br />

die Ebene der Attribute dediziert festgelegt werden. Wie bei allen Verzeichnisservern<br />

vereinfacht dies das Benutzermanagement, beseitigt die Datenredundanz und automatisiert<br />

die Datenpflege durch die Erzeugung eines zentralen Speichers für eine Identitätsmanagement-Infrastruktur.<br />

Er verbessert auch die Sicherheit, indem er Richtlinien und<br />

Zugangsinformationen speichert und eine Personalisierung ermöglicht.<br />

Weitgehende Kompatibilität besteht sowohl mit dem Sun ONE Directory Server als auch<br />

mit Netscape Verzeichnisserver-Varianten. So ist es beispielsweise möglich, Daten zwischen<br />

den Servern zu replizieren. Zu OpenLDAP und dem eDirectory von Novell besteht<br />

bis auf LDAP, wobei LDAPv2 und LDAPv3 unterstützt werden, keine Interoperabilität.<br />

Zusammenfassend lässt sich feststellen: Der Fedora Verzeichnisserver ist als Alternative<br />

zu OpenLDAP (im Zusammenhang mit Authentisierung) zu sehen. Hervorzuheben ist,<br />

dass Fedora multimasterfähig ist, das heißt, dass Daten im Verzeichnis auf mehreren<br />

Servern geändert werden können. Dadurch ist eine hohe Verfügbarkeit, zum Beispiel<br />

beim Ausfall eines Servers, gewährleistet und Engpässe bei vielen Änderungen können<br />

vermieden werden. Der Fedora Verzeichnisserver wurde als integrierte sichere Lösung<br />

auch für die HP/UX-11-Betriebssystemumgebung auf HP Integrity und HP 9000 Servern<br />

sowie Solaris-Systeme konzipiert. Der Produkteinsatz fokussiert sich in erster Linie auf<br />

große Installationen und zeichnet sich durch einen großen Funktionsumfang und sehr<br />

gute Skalierungsmöglichkeiten aus. Der Fedora Verzeichnisserver wird zudem hohen<br />

Sicherheitsanforderungen gerecht.<br />

1.3 Windows NT 4 Server als sogenannter Domänencontroller (DC)<br />

Mit Windows NT4 hat Microsoft 1996 ein leistungsfähiges Betriebssystem für Computernetze<br />

auf den Markt gebracht. Insbesondere durch die Verwendung eines neuen Dateisystems<br />

(NTFS; NT File System) wurde eine differenzierte Rechtevergabe möglich. Zusammen<br />

mit dem Domänenkonzept, das bereits mit der <strong>Version</strong> 3.1 eingeführt wurde<br />

und einen Sicherheitsbereich mit zentraler Verwaltung der Ressourcen darstellte, konnte<br />

nun festgelegt werden, welcher Benutzer sich mit welchem Passwort anmelden und auf<br />

welche Dateien und Dienste dieser in welcher Form zugreifen durfte. Die Client-Server-<br />

Architektur ermöglichte über eine Vielzahl grafischer Unterstützungswerkzeuge ein<br />

schnelles, differenziertes Aufsetzen und Erweitern von Computernetzen. Nicht zuletzt<br />

über die enge Verzahnung mit weiteren Microsoft Serverprodukten wurde NT ein großer<br />

kommerzieller Erfolg.<br />

Microsoft Windows NT kam bereits 1993 in der <strong>Version</strong> 3.1 auf den Markt. Erst im Jahr<br />

2000 wurde mit dem Nachfolger Windows 2000 das Kürzel NT aufgegeben. Microsoft<br />

180 http://directory.fedoraproject.org/wiki/SASL_GSSAPI_Kerberos_Design<br />

Seite 198


hat inzwischen den Support für NT eingestellt. Das heißt, dass das System herstellerseitig<br />

nicht mehr gepflegt wird und zum Beispiel neue Sicherheitslücken nicht mehr durch<br />

Updates geschlossen werden. Ein sicheres NT-System kann mittelfristig daher nur über<br />

kostspielige, individuelle Anpassungen gewährleistet werden. Trotz der Sicherheitsbedenken<br />

ist heute noch eine Vielzahl NT-basierter Netze im Einsatz.<br />

NT-Lizenzen werden zwar nicht mehr vertrieben, doch die zum Zeitpunkt des Kaufs gültigen<br />

Lizenzbedingungen sind nach wie vor gültig. Unterschiedliche Lizenzmodelle mit<br />

unterschiedlichen Kostenmodellen führen jedoch weiterhin zur Verwirrung und zu lizenzrechtlicher<br />

Unsicherheit.<br />

Kerntechnologie der Anmeldedienste unter Windows NT ist die Struktureinheit „Domäne―.<br />

Die Domäne ist eine Verwaltungseinheit, die Computer- und Benutzerkonten mittels<br />

einer gemeinsam genutzten Datenbank in einem gemeinsamen Sicherheitskontext zusammenfasst.<br />

Diese Datenbank wird als SAM (Security Accounts Manager) bezeichnet.<br />

Sie wird zur Laufzeit in der Registry spezieller Serversysteme gehalten, den Domain<br />

Controllern (DC). Neben Benutzer- und Computerobjekten werden auch Gruppen in der<br />

SAM administriert. Jede dieser drei Objekttypen lässt sich durch eine sogenannte SID<br />

(Security Identifier) eindeutig kennzeichnen, die sich auch in verschiedenen Domänen<br />

nicht wiederholen darf. Zu jeder SID (ein relativ langer Zahlenschlüssel) existiert ein<br />

SAM-Accountname, der in der Regel maximal 15 alphanumerische Zeichen umfassen<br />

kann. Der SAM-Accountname ist der Name, den die Anwender zur Identifikation verwenden.<br />

Eine Domäne benötigt mindestens einen Domain Controller, den sogenannten PDC<br />

(Primary Domain Controller). Er hält die SAM der Domäne, sodass die Inhalte der SAM<br />

nur bei ihm verändert werden können. Zur Lastverteilung und Redundanz der SAM werden<br />

sogenannte BDC (Backup Domain Controller) eingesetzt, die eine Kopie der SAM<br />

halten und die regelmäßig um die Änderungen auf dem PDC aktualisiert werden.<br />

Es ist möglich, mehrere Domänen über Vertrauensstellungen miteinander zu verknüpfen.<br />

Hierdurch können Benutzer oder Gruppen anderer Domänen für den Zugriff auf<br />

Ressourcen (zum Beispiel File Services) der eigenen Domäne autorisiert werden. Eine<br />

Vertrauensstellung zwischen NT Domänen ist nicht zwingend beidseitig (bidirektional).<br />

Vertrauensstellungen sind auch nicht transitiv: wenn A B vertraut und B der Domäne C,<br />

dann vertraut A nicht implizit auch C. Jede Vertrauensstellung muss also explizit eingerichtet<br />

werden.<br />

Folgende Umstände haben zur Etablierung mehrerer Domänen in IT-Umgebungen geführt:<br />

� Oftmals sind parallele Insellösungen innerhalb einer Infrastruktur entstanden, die<br />

später aufgrund von gemeinsamen Arbeitsprozessen mit Hilfe von Vertrauensstellungen<br />

zusammengeführt werden mussten. Dies gilt auch, wenn zwei Infrastrukturen<br />

zusammengeführt werden.<br />

� Die Domänengrenzen sind Grenzen der Sicherheit: Administratoren der Domäne<br />

A sind nicht automatisch Administratoren der Domäne B, der man vertraut oder<br />

die einem vertraut. Politische Überlegungen können hier eine Rolle spielen.<br />

Seite 199


� Die Komplexität der Delegation von Aufgaben wurde durch mehrere Domänen<br />

kompensiert.<br />

� Die Anzahl der Objekte (Computer, Benutzer, Gruppen) in der SAM ist beschränkt,<br />

da die SAM zur Laufzeit in der Registry der Domain Controller, deren<br />

Größe ebenfalls beschränkt ist, gehalten wird. Abhilfe konnte nur die Aufteilung<br />

der Objekte auf mehrere Domänen bringen.<br />

� Die Skalierung von einer Domäne in stark verteilten, dezentralen Umgebungen<br />

wird durch das Single-Master-Prinzip des PDCs eingeschränkt, da sämtliche Änderungen<br />

der SAM nur über ihn realisiert werden können.<br />

Dies hat zu verschiedenen Domänenmodellen geführt, die u.a. von Microsoft selbst vorgeschlagen<br />

wurden:<br />

� Single Domain (eine Domäne)<br />

� Master Domain (mehrere Domänen vertrauen alle einer Master Domäne, typischerweise<br />

vertrauen Ressourcendomänen der Account-Domäne)<br />

� Multiple Master Domain (mehrere Ressourcendomänen vertrauen allen (mehreren)<br />

Account-Domänen)<br />

� Complete Trust Domain (jede Domäne vertraut den anderen)<br />

Im weitesten Sinne sind Windows NT Domänen auch Verzeichnisdienste, denn in einer<br />

Domäne sind Benutzerobjekte verzeichnet. Microsoft bezeichnet diesen mit NTDS (Windows<br />

NT Directory Service). Die Anzahl der Attribute eines Benutzerobjektes in einer NT<br />

Domäne ist relativ klein und konzentriert sich auf technisch relevante Attribute und Eigenschaften.<br />

Die Attribute sind daher nicht vergleichbar mit dem Verzeichnisdienst basierend<br />

auf X.500.<br />

Die Benutzereigenschaften umfassen u.a.:<br />

� Benutzername (SAM-Accountname)<br />

� Kontoinformationen (zum Beispiel Konto deaktiviert, Kennwort läuft nie ab, Ablauf<br />

des Kontos, Kontotyp)<br />

� Gruppenmitgliedschaften<br />

� Umgebungsparameter (Logon-Script, Home-Verzeichnis, Pfad des servergestützten<br />

Profils)<br />

� erlaubte Anmeldezeiten, erlaubte Clientcomputer<br />

� RAS- (Remote Access Service)/ Einwahlparameter: erlaubt, mit/ ohne Rückruf<br />

Darüber hinaus werden Attribute gespeichert, die vom Betriebssystem verwaltet werden,<br />

wie zum Beispiel:<br />

� SID,<br />

� LastLoginTime<br />

� u.a.<br />

Seite 200


Eine Erweiterbarkeit um selbst definierte Attribute ist nicht vorgesehen. Microsoft selbst<br />

hat mit der Einführung von „Windows NT 4 Server Terminal Edition― und Citrix Metaframe<br />

zusätzliche Eigenschaften für das Benutzerobjekt implementiert (zusätzliche Home-<br />

und Profilpfade und weitere Citrix Parameter). Das NTDS kann nicht hierarchisch strukturiert<br />

werden. Die Vergabe von Rechten auf Attributebene ist nicht möglich. Eine flexible<br />

Vergabe von Rechten auf Benutzerobjekte ist stark eingeschränkt.<br />

Die Delegation von administrativen Aufgaben innerhalb einer NT-Domäne reduziert sich<br />

auf<br />

� die Nutzung der eingebauten (Built-In) Gruppen (Domänen-Administratoren, Konten-,<br />

Server-, Sicherungs- Druck- und Reproduktionsoperatoren) und<br />

� die Installation zusätzlicher Domänen.<br />

Diese Restriktionen haben wohl dazu geführt, dass die Delegation und bestehende Rollenkonzepte<br />

auf webbasierenden Anwendungen abgebildet wurden.<br />

Eine Windows NT Domäne kann auf den Transportprotokollen TCP/IP, NetBEUI,<br />

SPX/IPX basieren. In jedem Fall ist die NetBIOS Schnittstelle notwendig. In TCP/IP-<br />

Netzwerken ist für die fehlerfreie Kommunikation die Namensauflösung von NetBIOS-<br />

Namen (Computernamen, Benutzernamen, weitere Namenstypen wie zum Beispiel Arbeitsgruppe)<br />

zwingend erforderlich. Will zum Beispiel ein Benutzer sein Domänenkennwort<br />

ändern, muss er den PDC lokalisieren beziehungsweise seine IP-Adresse kennen.<br />

Die NetBIOS-Namensauflösung kann in Windows Netzwerken auf unterschiedliche Weisen<br />

erfolgen:<br />

� durch Broadcast<br />

� durch Befragung eines WINS Servers (Windows Internet Name Service)<br />

� durch Auswerten der Datei LMHOSTS<br />

Die eleganteste Lösung dieser Aufgabe ist der Einsatz von WINS-Servern (Windows<br />

Internet Name Service). Nur diese ermöglichen die Namensauflösung über IP-Subnetze<br />

hinweg, die Generierung dynamischer Inhalte und eine Minimierung der Broadcasts.<br />

Oftmals ist der WINS-Dienst auf den Domain Controllern realisiert.<br />

Zur Administration von Benutzerobjekten, Gruppen und Computern werden unter Windows<br />

NT vier grafische Bordmittel wie z.B. der Benutzermanager oder der Servermanager<br />

bereitgestellt. Darüber hinaus werden mit dem „NT Resource Kit― Tools geliefert, die<br />

überwiegend auf der Kommandozeile ausgeführt und mit deren Hilfe Skripte zur automatischen<br />

Administration erstellt werden können. Des Weiteren kann eine Domäne auch<br />

per Web-Interface verwaltet werden. Notwendig hierfür ist der Einsatz des Internet Information<br />

Servers (IIS) von Microsoft.<br />

Unter Windows NT wird die SAM selbst verschlüsselt. Die Kennwörter der Benutzer<br />

(auch der Computer) werden in der SAM der Domain Controller gespeichert. Dabei wird<br />

nicht das Kennwort im Klartext, sondern ein Hash-Wert des Kennworts gespeichert. Die<br />

Hash-Werte der Kennwörter werden nach verschiedenen Verfahren gebildet, die sich<br />

wie folgt weiter entwickelt haben:<br />

Seite 201


� LM (LAN Manager)<br />

� NTLM<br />

� NTLMv2<br />

Die Authentisierung innerhalb einer NT Domänenlandschaft basiert auf dem Mechanismus<br />

NTLM (NT LAN Manager). Es wird folgendes Szenario betrachtet: Eine Ressourcendomäne<br />

vertraut einer Account-Domäne. Eine funktionsfähige WINS-Umgebung ist<br />

vorhanden. Ein Benutzer startet eine Windows NT Workstation, die Mitglied der Ressourcendomänen<br />

ist, und meldet sich an der Account-Domäne an. Beim Starten der<br />

Windows NT Maschine erfragt diese per WINS eine Liste der Domain Controller (DC)<br />

der Ressourcendomäne. Zunächst wird per Broadcast ein Netlogon-Request gesendet.<br />

Wird dieser nicht von einem DC der Ressourcendomänen beantwortet, wird der Netlogon-Request<br />

an die DCs der erfragten Liste gesendet. Über einen sogenannten „Secure<br />

Channel― mit dem zuerst antwortenden DC erfolgt die Validierung der Anmeldeinformation.<br />

Die NT Maschine erfragt im Anschluss eine Liste der vertrauten Domänen vom DC<br />

der Ressourcendomänen. Nachdem der Benutzer in der Anmeldemaske die Account-<br />

Domäne ausgewählt sowie seine Kennung und sein Kennwort eingegeben hat, erfolgt<br />

der Anmeldeprozess des Benutzerkontos. Der NT Client sendet die Anmeldeinformationen<br />

zur sogenannten „pass-through validation― an den DC der Ressourcendomäne, mit<br />

dem die Maschine über einen Secure Channel verfügt. Der DC der Ressourcendomäne<br />

sendet diese Anfrage an einen DC der Account-Domäne (zunächst lokal, dann gerichtet<br />

über Secure Channel). Die validierten Anmeldeinformationen werden über den DC der<br />

Ressourcendomäne an den NT Client zurückgeliefert. Dieser öffnet nun eine direkte<br />

Verbindung zum DC der Account-Domäne, um dort das Logon-Script, Systemrichtlinien<br />

oder Benutzerprofil zu laden.<br />

Auf NT Systemen, die kein Domain Controller sind, werden die Anmeldeinformationen<br />

der zuletzt angemeldeten Benutzer zwischengespeichert, um die Anmeldung auch dann<br />

zu ermöglichen, wenn kein Domain Controller erreichbar ist (typischerweise Notebooks).<br />

Diese Informationen werden wiederum in einem Hash-Wert gespeichert.<br />

Das Domänenkonzept von Windows NT ermöglicht ein begrenztes Single Sign-On innerhalb<br />

der Microsoft Produktpalette. Der Anwender meldet sich einmalig an seiner Windows<br />

NT Workstation an und kann dann, sofern die Ressourcen beziehungsweise die<br />

Serversysteme Mitglied der eigenen oder einer vertrauenden Domäne sind, auf Dienste<br />

wie<br />

� File- und Print Services,<br />

� Exchange,<br />

� SQL und<br />

� Intranet (Web, Internet Information Server)<br />

zugreifen. Dritthersteller von Software können ihre Produkte so implementieren, dass die<br />

einmalige Anmeldung erhalten bleibt. In der Regel müssen sie aber ihre Anwendungen<br />

auf Windows NT 4 Servern bereitstellen, die Mitglied einer Domäne sind.<br />

In Windows NT Domänen können Richtlinien erlassen werden,<br />

Seite 202


� wie mit Kennwörtern umgegangen werden soll (Laufzeit, Mindestlänge, wiederholte,<br />

falsche Kennworteingabe) und<br />

� welche Privilegien (Benutzerrechte) Benutzer oder Gruppen haben sollen (Ändern<br />

der Systemzeit, lokale Anmeldung etc.).<br />

Weiterhin kann eine Überwachung der erfolgten Zugriffe beziehungsweise der Zugriffsversuche<br />

eingeschaltet werden. Auf diese Weise können zum Beispiel<br />

� das An- und Abmelden,<br />

� das Verwenden von Benutzerrechten,<br />

� die Benutzer- und Gruppenverwaltung und<br />

� Änderungen der Sicherheitsrichtlinien<br />

überwacht werden. Auswertungen hierüber sind mit Windows NT4 jedoch nur sehr aufwendig<br />

zu erstellen. Hierfür bietet Microsoft zusätzliche Tools wie zum Beispiel MOM.<br />

Allerdings war die Überwachung von NT4 Maschinen mit MOM nur sehr schwer bis gar<br />

nicht zu realisieren.<br />

Aufgrund des eingestellten Supports gelten die NT-Systeme als nicht mehr sicher.<br />

Computer auf der Basis Windows NT, Windows 2000 / 2003, Windows XP und Windows<br />

Vista können originär Mitglied einer Domäne sein, wobei auch andere Betriebssysteme<br />

eingebunden werden können. Linux basierte Clients können beispielsweise über Samba<br />

eingebunden werden.<br />

Fehlender Komfort der Bordmittel zur Administration von NT-Netzen hat Dritthersteller<br />

dazu veranlasst, weitere Werkzeuge zu entwerfen. Diese nutzen vorrangig die APIs von<br />

Windows NT. Microsoft selbst produzierte nachträglich die Microsoft Management Console<br />

(MMC), die schließlich in Windows 2000 integriert wurde. Mit ADSI (Active Directory<br />

Service Interface) hat Microsoft eine COM-basierende Schnittstelle geliefert, mit der<br />

auch Windows NT Domänen verwaltet werden können.<br />

Zusammenfassend muss festgehalten werden: NT-Systeme gelten heute als nicht mehr<br />

(ausreichend) sicher, sodass eine Ablösung zu empfehlen ist. Auch wenn NT-Systeme<br />

den funktionalen Anforderungen vielfach noch entsprechen, so überwiegen die Nachteile,<br />

die sich insbesondere aus Fragen zur Sicherheit ergeben. Aufgrund der noch weiten<br />

Verbreitung finden sich zwar problemlos noch aktuelle Virenscanner, aktuelle Treiber<br />

neuer Hardware und auch neue Anwendungen für NT 4, allerdings wurde das Auslaufen<br />

der Unterstützung für NT 4 schon mehrfach angekündigt.<br />

1.4 Windows 2000/2003 Server mit Active Directory und Kerberos<br />

Der Verzeichnisdienst von Microsoft Windows Server 2000 und 2003 heißt Active Directory.<br />

Er wurde mit Windows 2000 als dem Nachfolger von NT 4 eingeführt. Der Verzeichnisdienst<br />

stellt die zentrale Ressourcen-, Benutzer- und Gruppenverwaltung in<br />

Windowsnetzwerken dar. Er verwendet mit LDAP 181 und Kerberos 5 182 offene Standards.<br />

181 http://www.microsoft.com/windowsserver2003/techinfo/overview/ldapcomp.mspx<br />

182 http://www.microsoft.com/windowsserver2003/technologies/security/kerberos/default.mspx<br />

Seite 203


Mit der nächsten <strong>Version</strong> von NTFS wurde neben einer erneut verbesserten Komprimierung<br />

auch die Möglichkeit der Verschlüsselung von Daten über EFS (Encrypting File<br />

System) geboten. Die Schlüsselverwaltung findet über das Active Directory statt. In Windows<br />

2000 verfolgt Microsoft einen modularen Aufbau. Auf der untersten Ebene HAL<br />

(Hardware Abstraction Layer) setzt der eigentliche Betriebssystemkern auf, der die Basis<br />

für weitere Subsysteme wie Win32 oder POSIX bildet.<br />

Der Nachfolger von Windows 2000 Server heißt Windows Server 2003 und wurde insbesondere<br />

im Bereich der Sicherheit verbessert. Änderungen am Active Directory betreffen<br />

zum Beispiel die Vertrauensstellungen.<br />

Seit seiner Einführung mit Windows 2000 Server hat das Active Directory zahlreiche<br />

neue Funktionen bekommen. Diese wurden z.T. über das neue Server-Betriebssystem<br />

Windows Server 2003 sowie über Service Packs veröffentlicht.<br />

Die Server-Betriebssysteme und damit auch die Verzeichnis- und Authentisierungsdienste<br />

von Microsoft sehen sich einer starken Open-Source-Konkurrenz ausgesetzt. Laut<br />

einer IDC-Studie entfällt bei Hewlett-Packard bereits ein knappes Drittel der Umsätze auf<br />

Systeme auf Basis von Open Source Betriebssystemen. 183<br />

Das Active Directory ist Bestandteil der Windows Server 2000/2003 Lizenz. Windows<br />

2000 wird seit 2005 nicht mehr vertrieben. Bis 2010 werden noch Sicherheitsaktualisierungen<br />

geliefert. Diese werden sowohl für den eigentlichen Windowsserver 2003 in verschiedenen<br />

Editionen (Standard, Enterprise und Datacenter jeweils in einer 32- und einer<br />

64-Bit Architektur) als auch clientseitig für die Anzahl der User (User Client Access<br />

Licence) oder die Anzahl der Geräte (Device Client Access Licence) angeboten beziehungsweise<br />

verlangt. Des Weiteren werden spezielle Lizenzen für virtualisierte Server<br />

angeboten.<br />

Hardwareseitig unterstützt Windows 2000 Server in der Datacenter <strong>Version</strong> bis zu 8<br />

CPUs und kann max. 64 GB Arbeitsspeicher adressieren. Windows Server 2003 unterstützt<br />

bis zu 32 Prozessoren und kann ebenfalls max. 64 GB Arbeitsspeicher adressieren.<br />

Hinsichtlich der Anmeldedienste von Windows NT kann das Active Directory (AD) als<br />

korrespondierender Nachfolgedienst ab Windows 2000 bezeichnet werden. Kerntechnologie<br />

der Anmeldedienste im Active Directory bleibt wie unter Windows NT die Struktureinheit<br />

Domäne. Sie bleibt die Einheit, die die Computer- und Benutzerkonten mittels<br />

einer gemeinsam genutzten Datenbank in einem gemeinsamen Sicherheitskontext zusammenfasst.<br />

Die Domänengrenze ist die Grenze des Sicherheitskontextes und der<br />

Replikation der Benutzerdatenbank. Computer mit folgenden Betriebssystemen können<br />

der Domäne sein:<br />

� Windows NT 4.0<br />

� Windows 2000<br />

183 siehe Gengler, B.: „Linux-Server verdienen richtig Geld – Analysten sehen eine sich beschleunigende<br />

Nachfrage nach dem Opensource-Betriebssystem―,<br />

http://www.computerzeitung.de/loader?path=/articles/2007012/31018914_ha_CZ.html&art=<br />

/articles/2007012/31018914_ha_CZ.html&thes=&pid=ee54f3c7-0de1-40f5-bb23-<br />

2cfdf022aee5<br />

Seite 204


� Windows 2003<br />

� Windows XP<br />

� Windows Vista<br />

Erhalten bleibt auch der NetBIOS-Namensraum. Sollen Systeme wie Windows NT und<br />

9x unterstützt werden, ist es weiterhin notwendig, eine fehlerfreie NetBIOS Namensauflösung<br />

(zum Beispiel durch WINS) zu gewährleisten. Ob der Einsatz einer NetBIOS Namensauflösung<br />

erforderlich ist, wird nicht allein durch das Betriebssystem bestimmt,<br />

sondern in erster Linie durch das Gesamtsystem. So kann es zum Beispiel sein, dass<br />

auf dem Client Windows XP eingesetzt wird, der kein NetBIOS mehr benötigt, aber Applikationen<br />

auf dem Windows XP eingesetzt werden, die diese Namensauflösung sehr<br />

wohl noch erforderlich machen.<br />

Neben der Implementierung eines Active Directory stellen die Nutzung des Authentisierungsmechanismus<br />

„Kerberos― sowie einige Neuerungen bezüglich der (Domänen-)<br />

Strukturierung die Eckpunkte im Architekturwechsel dar.<br />

Im Folgenden wird zunächst auf die Nutzung des Authentisierungsmechanismus „Kerberos―<br />

in den neuen Windows Server Systemen eingegangen. Anschließend erfolgt ein<br />

weitgehend umfassender Überblick über die Technologie des Active Directory und abschließend<br />

werden die Neuerungen hinsichtlich der Strukturierung behandelt.<br />

Unter Windows 2000/2003 erfolgt die Authentisierung mittels des Authentisierungsmechanismus<br />

Kerberos, wobei NTLM weiterhin unterstützt wird. Clientsysteme wie Windows<br />

2000 oder XP nutzen standardmäßig das Kerberos Protokoll, um sich bei der AD<br />

Domäne zu authentisieren. Der Administrator kann hierbei unterscheiden, ob nur Kerberos<br />

erlaubt ist oder ob NTLM weiterhin für ältere oder Nicht-Microsoft-Betriebssysteme<br />

angeboten werden soll. Windows 2003 DCs kommunizieren ausschließlich über das<br />

Kerberos Protokoll.<br />

1.4.1 Kerberos<br />

Active Directory unterstützt eine Reihe sicherer Protokolle und Authentisierungsmechanismen,<br />

mit denen beim Anmelden die Identität nachgewiesen wird, so zum Beispiel<br />

Kerberos V5, X.509 v3-Zertifikate, Smartcards, Infrastruktur öffentlicher Schlüssel (Public<br />

Key Infrastructure, PKI) und LDAP (Lightweight Directory Access Protocol) mit SSL<br />

(Secure Sockets Layer). 184<br />

In Windows 2000/2003 ist Kerberos in der <strong>Version</strong> 5 mit Erweiterungen für die Authentisierung<br />

via öffentliche Schlüssel (public key) implementiert worden. Die Implementierung<br />

folgt Spezifikationen in den RFCs 1510 und 1964. Das Kerberos Key Distribution<br />

Center (KDC) ist auf jedem DC des Active Directory integriert und verwendet die Benutzerdatenbank<br />

des AD.<br />

Für das Kerberos Protokoll ist es notwendig, dass die Systemzeiten der beteiligten<br />

Computer nur geringe Abweichungen aufweisen, da die Authentisierung des Computers<br />

über ein sogenanntes Ticket gesteuert wird, dessen Gültigkeitsdauer auf 5 Minuten be-<br />

184 http://www.microsoft.com/technet/prodtechnol/windowsserver2003/de/library/ServerHelp/<br />

62355c36-a646-4bed-b462-dc8f23227447.mspx?mfr=true<br />

Seite 205


grenzt ist. Zu diesem Zweck ist in Windows 2003 ein automatischer hierarchischer Zeitabgleich<br />

zwischen den Computern, die Mitglied des AD sind, implementiert worden.<br />

Kerberos ist flexibler, effizienter und sicherer als die NTLM Authentisierung. Bei NTLM<br />

muss ein Applikationsserver immer den Domain Controller kontaktieren, um einen Client<br />

zu authentisieren. Erst danach erfolgt der Zugriff auf die jeweiligen Ressourcen. Mit dem<br />

Kerberos Protokoll kann der Applikationsserver die Anmeldeinformationen untersuchen,<br />

die ihm der Client präsentiert (Ticket). Unter NTLM können Server die Identität der<br />

Clients prüfen, mit Kerberos kann der Client auch die Identität des Servers prüfen (mutual<br />

authentication). Windows Dienste müssen den Client nachahmen (impersonate), um<br />

den Zugriff auf Ressourcen zu realisieren. NTLM und Kerberos können dem Dienst die<br />

Informationen liefern, um den Client lokal nachzuahmen.<br />

Die Authentisierung zwischen Domänen erfolgt über Vertrauensstellungen. Eine Vertrauensstellung<br />

ist eine Beziehung zwischen mindestens zwei Domänen, durch die Benutzer<br />

einer Domäne von einem Domänencontroller authentisiert werden können, der<br />

sich in einer anderen Domäne befindet. Vertrauensstellungen können transitiv oder nicht<br />

transitiv sein, müssen aber immer vorhanden sein, damit Benutzer in einer Domäne auf<br />

freigegebene Ressourcen einer anderen Domäne zugreifen können.<br />

Bei verteilten Applikationen mit Front- und BackEnd auf verschiedenen Rechnern scheitert<br />

NTLM, Kerberos hingegen bietet einen Proxy Mechanismus (delegated authentication).<br />

Kerberos kann transitive, bidirektionale Vertrauensstellungen zwischen Domänen<br />

realisieren.<br />

Das Kerberosprotokoll setzt sich aus drei Teilprotokollen zusammen. Das Teilprotokoll,<br />

über welches das Schlüsselverteilungscenter (Key Distribution Center, KDC) dem Client<br />

einen Anmeldesitzungsschlüssel und ein TGT (Ticket Granting Ticket) erteilt, wird als<br />

Authentisierungsdienst (Authentication Service Exchange, AS Exchange) bezeichnet.<br />

Das Teilprotokoll, über welches das KDC einen Dienstsitzungsschlüssel und ein Ticket<br />

für den Dienst erteilt, wird als Ticketdienst (Ticket Granting Service, TGS Exchange)<br />

bezeichnet. Das Teilprotokoll, über das der Client das Ticket für den Zugang zu einem<br />

Dienst sendet, wird als Client/Server-Dienst (CS Exchange) bezeichnet.<br />

1.4.2 Active Directory<br />

Active Directory ist ein Verzeichnisdienst, der sich an den X.500 Standard anlehnt und<br />

via LDAP (Lightweight Directory Access Protocol) administriert werden kann.<br />

Der Verzeichnisdienst verwendet einen Datenbanktyp, der ursprünglich für Microsoft<br />

Exchange (Extensible Storage Engine) entwickelt worden ist. Die Architektur der SAM<br />

Datenbank wird dadurch abgelöst. SAM wird jedoch für mögliche, NT basierende BDCs<br />

weiter bereitgehalten, solange das Active Directory nicht in den sogenannten „Native<br />

Mode― geschaltet wird.<br />

Das Active Directory speichert Informationen zu Netzwerkobjekten und stellt diese Informationen<br />

Benutzern und Administratoren über einfache Suchfunktionen zur Verfügung.<br />

Die Objekte im Active Directory beinhalten in der Regel freigegebene Ressourcen<br />

wie Server, Laufwerke, Drucker sowie Konten für Netzwerkbenutzer und Computer. Active<br />

Directory verwendet einen strukturierten Datenspeicher, der als Grundlage für die<br />

logische, hierarchische Anordnung von Verzeichnisinformationen dient.<br />

Seite 206


Active Directory enthält einen Regelsatz, das sogenannte Schema, welches im Verzeichnis<br />

enthaltene Objekt- und Attributklassen, die Einschränkungen und Begrenzungen<br />

für Instanzen dieser Objekte sowie ihr Namensformen definiert. Das Schema kann<br />

prinzipiell erweitert werden. Auch eine Erweiterung bestehender Klassen um neue Attribute<br />

ist möglich.<br />

Des Weiteren beinhaltet das AD einen globalen Katalog mit Informationen zu allen im<br />

Verzeichnis enthaltenen Objekten. Der Katalog ermöglicht Benutzern und Administratoren<br />

die Suche nach Verzeichnisinformationen unabhängig von der Domäne des Verzeichnisses,<br />

in dem die Daten enthalten sind.<br />

Mit Hilfe eines Abfrage- und Indizierungsmechanismus können Objekte und ihre Eigenschaften<br />

veröffentlicht und von Netzwerkbenutzern oder Anwendungen gesucht werden.<br />

Die Aufteilung des Active Directory beziehungsweise der Datenbank erfolgt über die<br />

Struktureinheit der Domäne. Eine Aufteilung innerhalb der Domäne im Sinne einer dezentralen<br />

Datenbank ist also nicht möglich.<br />

Die Replikation des Active Directory beziehungsweise der Datenbank erfolgt zwischen<br />

den Domain Controllern (DC) über einen Replikationsdienst. Sie erfolgt anhand sogenannter<br />

Unique Sequence Number (USN), die bis auf Attributebene herunter verwaltet<br />

werden. Die Replikation kann somit auf Attributebene erfolgen. Ändert sich also die Eigenschaft<br />

eines Objektes, wird lediglich die Änderung der Eigenschaft und nicht das<br />

komplette Objekt repliziert. Alle Domänencontroller verfügen über eine vollständige Kopie<br />

sämtlicher Verzeichnisinformationen für ihre Domäne.<br />

Jeder Domain Controller im Active Directory stellt einen LDAP-Dienst bereit. Es wird die<br />

LDAP <strong>Version</strong> 3 unterstützt. Mit Hilfe eines LDAP-Clients kann das Active Directory<br />

durchsucht oder administriert werden. Über den Distinguished Name kann das jeweilige<br />

Objekt gelesen und geschrieben werden. Die Angabe des LDAP-Servers ist bei einigen<br />

LDAP-Clients optional, sofern diese ein sogenanntes „serverless binding― beherrschen.<br />

Im Prinzip kann eine beliebige LDAP-Clientimplementierung, wie zum Beispiel OpenL-<br />

DAP beziehungsweise eine Programmierschnittstelle verwendet werden, wie zum Beispiel:<br />

� ADSI (Active Directory Services Interface )<br />

� LDIF (LDAP Data Interchange Format)<br />

� u.a.<br />

Problematisch gestaltet sich der Gebrauch dieser Schnittstellen insofern, als dass<br />

� gewisse Attribute oder Objekte vom Active Directory hoheitlich verwaltet werden<br />

und daher nicht geändert werden können (zum Beispiel die Attribute SID oder<br />

GUID),<br />

Seite 207


� gewisse Attribute aus Binär- oder Hash-Werten bestehen, deren Ent- und Verschlüsselungsalgorithmen<br />

nicht bekannt sind (zum Beispiel das Attribut userParameters)<br />

und nur über separate Schnittstellen außerhalb LDAP modifiziert werden<br />

können (zum Beispiel Windows Terminal Server API) und<br />

� die Verwendung der grafischen Oberfläche zusätzliche Prozesse neben dem reinen<br />

Schreiben der LDAP Attribute auslöst (zum Beispiel beim Festlegen eines<br />

Home-Verzeichnisses wird dieses auf dem File-Server mit den entsprechenden<br />

Rechten angelegt).<br />

Die Server-<strong>Version</strong> von Windows 2000/2003 wird mit zahlreichen grafischen Werkzeugen<br />

zur Verwaltung der in Active Directory standardmäßig abgelegten Informationen, wie<br />

Benutzer- und Gruppenkonten oder DNS-Konfiguration, ausgeliefert. U.a. wird hierzu die<br />

Microsoft Management Console (MMC) verwendet. Darüber hinaus stehen die aus Windows<br />

NT bekannten Werkzeuge für die Kommandozeile zur Verfügung, mit denen Benutzer<br />

und Gruppen angelegt, gelöscht und bearbeitet werden können. Über diese<br />

Werkzeuge lässt sich jedoch nur ein Teil der in Active Directory gespeicherten Kontoinformationen<br />

bearbeiten.<br />

Mit ldifde steht außerdem ein kommandozeilenbasiertes Programm zur Verfügung, mit<br />

dem sich Verzeichniseinträge aus einer LDIF- Datei (LDAP Data Interchange Format)<br />

erzeugen lassen.<br />

Insgesamt wenden sich die mit Windows 2000/2003 Server gelieferten Verwaltungswerkzeuge<br />

eher an erfahrene Windows-Administratoren. Sie eignen sich kaum dazu,<br />

einfache administrative Aufgaben, wie das Anlegen oder Verändern von Benutzerkonten<br />

an weniger ausgebildete Kräfte zu delegieren.<br />

Mit ADSI (Active Directory Service Interface) existiert eine COM-basierende Schnittstelle,<br />

mit der eine Vielzahl von Aufgaben automatisiert werden kann.<br />

1.4.3 Neuerungen hinsichtlich der Strukturierung<br />

Wie bereits erwähnt, bleibt die Struktureinheit Domäne als Grenze der Sicherheitszone<br />

auch in einem Active Directory erhalten. Im Active Directory ist die Domäne als ein Baustein<br />

einer Gesamtstruktur (forest) und der dazu gehörenden Baumstrukturen (tree) zu<br />

betrachten, die in einem DNS Namensraum hierarchisch gegliedert sind. Die einzelnen<br />

Domänen sind über sogenannte bidirektionale Transitive Kerberos-Trusts (Vertrauensstelllungen)<br />

miteinander verbunden. Diese müssen nicht mehr einzeln eingerichtet werden<br />

(Die aus Windows NT bekannten Vertrauensstellungen via NTLM können weiterhin<br />

eingesetzt werden). Mit einem Anmeldevorgang können Konten mit den erforderlichen<br />

Berechtigungen auf die Ressourcen beliebiger Domänen in der Gesamtstruktur zugreifen.<br />

Wird von einem Active Directory gesprochen, ist damit immer die Gesamtstruktur<br />

gemeint und nicht einzelne Bäume oder Domänen.<br />

Die folgende Abbildung zeigt eine Windows NT Domänenstruktur, in der zwei Account-<br />

Domänen und fünf Ressourcendomänen durch Vertrauensstellungen miteinander verwoben<br />

sind.<br />

Seite 208


Abbildung 25: Beispiel NT-Domänenstruktur<br />

Microsoft stellt Active Directory Domänen dreieckig, Windows NT Domänen mit Ellipsen<br />

dar. Diese Konvention wird für diesen Leitfaden übernommen.<br />

Somit ergibt sich folgendes Bild: In einem Active Directory wäre dementsprechend die<br />

folgende Gesamtstruktur denkbar, die ebenfalls sieben Domänen umfasst: Die Gesamtstruktur<br />

umfasst zwei Bäume, in denen die Domänen hierarchisch strukturiert und über<br />

Kerberos transitiv (A vertraut B und B vertraut C, dann vertraut A auch C) und bidirektional<br />

(A vertraut B, dann vertraut B auch A) miteinander verbunden sind.<br />

Abbildung 26: Beispiel Windows 2000<br />

Das Active Directory wird von Domain Controllern (DC) bereitgestellt. Die Unterscheidung<br />

zwischen PDC und BDC wird nicht weiter fortgeführt. Dies trägt der architektonischen<br />

Neuerung Rechnung, dass Windows 2000/2003 Domain Controller sich einem<br />

Multi-Master-Prinzip der Replikation unterwerfen, das heißt sämtliche Änderungen innerhalb<br />

des Active Directory können auf einem beliebigen DC durchgeführt werden. Bei<br />

dem Multi-Master Prinzip sind nicht alle Rollen innerhalb der Domäne auf alle DC verteilt.<br />

Zu diesem Zweck gibt es Domain Controller mit einer speziellen Rolle. Die sogenannten<br />

FSMO-Owner (Flexible Single Master Operation).<br />

Seite 209


Es handelt sich hierbei um:<br />

� PDC-Emulator<br />

� Infrastructure Master<br />

� RID Master<br />

� Schema Master<br />

� Domain Naming Master<br />

Die Funktionen<br />

� Schema Master (zuständig für das Schema des Verzeichnisses) und<br />

� Domain Naming Master (zuständig bei Änderungen im Namensraum)<br />

sind einmalige Rollen innerhalb einer Gesamtstruktur (forest).<br />

Die Funktionen<br />

� PDC-Emulator,<br />

� Infrastructure Master (zuständig für Aktualisierungen von SIDs und Distinguished<br />

Names über Domänengrenzen hinweg) und<br />

� RID Master (zuständig für die Vergabe von RID Pools an andere DCs)<br />

sind eindeutig in jeder Domäne.<br />

Der PDC-Emulator übernimmt wichtige Funktionen, wie<br />

� Kennwortaktualisierungen für Down-Level Clients (NT 4) und Partner der Windows<br />

NT Backup Domain Controller,<br />

� Quelle der Netzwerk-Uhrzeit (nur PDC der Stammdomäne) und<br />

� den Domänen Hauptsuchdienst (NetBIOS).<br />

Eine Gesamtstruktur kann zusätzlich durch Standorte (Sites) strukturiert werden. Die<br />

Sitestruktur sollte hierbei der physischen Netzwerkstruktur folgen und diese widerspiegeln<br />

sowie mit den verfügbaren Bandbreiten zwischen den Lokationen (zum Beispiel<br />

Hamburg, Berlin, Bonn etc.) korrespondieren. Primärer Zweck dieser Strukturierung ist<br />

die Steuerung der Replikation zwischen den Domain Controllern. Somit können die Replikationszeiten<br />

bei Bedarf der tatsächlich vorhandenen physischen Netzwerkstruktur angepasst<br />

werden.<br />

Die Implementierung eines Active Directory bedarf zwingend einer DNS-Infrastruktur, die<br />

nicht nur die Wahl eines Namensraumes, sondern auch die Verwendung geeigneter<br />

DNS Server notwendig macht. Dies impliziert natürlich eine existierende TCP/IP Netzwerkumgebung.<br />

Windows 2003 kann eine Public Key Infrastructure (PKI) als integralen Bestandteil einbinden.<br />

Zertifikatsdienste können über Windows Server 2003 eingerichtet und auf Windows<br />

XP Clients verteilt werden. Die PKI ist ein Netzwerkdienst, der Zertifikate erstellt<br />

und jederzeit zu deren Verifizierung genutzt werden kann. Die Validierung von Zertifikaten<br />

erfolgt über zentrale Verzeichnisdienste, in denen diese Informationen durch die Zertifikatsdienste<br />

abgelegt werden, sodass Clients diese zentrale Infrastruktur anfragen.<br />

Seite 210


Grundsätzlich werden Zertifikate zur Authentisierung, Verschlüsselung und Signierung<br />

verwendet.<br />

Anwendungsgebiete einer PKI können sein:<br />

� Sichere Authentisierung für Windows Anmeldung oder VPN-Einwahl<br />

� Verschlüsselung von Dateien oder E-Mails<br />

� Signierung von Dateien oder E-Mails<br />

� Sichere Kommunikation im Netzwerk (SSL, IPSec)<br />

Die Certification Authority (CA) kann sowohl ins Active Directory integriert als auch separat<br />

installiert werden. Wird die integrierte Variante gewählt, werden hiermit die Sicherheitstechnologien<br />

wie<br />

� EFS (Encrypted File System),<br />

� IPsec,<br />

� Smartcard,<br />

� Verschlüsselung und digitale Signaturen (Mail)<br />

� u.a.<br />

im internen Netzwerk unterstützt beziehungsweise ermöglicht. Die Verteilung beziehungsweise<br />

Aktivierung der PKI wird durch Gruppenrichtlinien unterstützt. Dies bedeutet<br />

aber nicht, dass ein separates Verwaltungskonzept für den Umgang mit Schlüsseln<br />

überflüssig wird.<br />

Active Directory nutzt PKI und Zertifizierung über Sicherheitsfunktionen wie die Authentisierung<br />

und den gesteuerten Zugriff auf Verzeichnisobjekte. Die integrierte Authentisierung<br />

für die Anmeldung und Autorisierung von Benutzern, die zentrale Funktionen der<br />

Local Security Authority (LSA) sind, stellt eine sichere Verzeichnisumgebung bereit. Dabei<br />

ist für den Benutzer nur eine einmalige Anmeldung notwendig, um Zugriff auf freigegebene<br />

Ressourcen im Netzwerk zu erhalten. Nachdem Active Directory die Identität<br />

des Benutzers bestätigt hat, generiert die lokale Sicherheitsautorität auf dem authentisierenden<br />

Domänencontroller ein Zugriffstoken, das die Zugriffsstufe dieses Benutzers für<br />

Netzwerkressourcen bestimmt.<br />

Das Windows Active Directory ist zwingend erforderlich für Exchange 2003, da dieses<br />

eine Erweiterung des Active Directory Schemas vornimmt und seine eigene Konfiguration<br />

speichert. Folgende Microsoft Produkte nutzen das Active Directory außerdem zur<br />

Speicherung ihrer Konfiguration:<br />

� HIS Server (Host Integration Server)<br />

� ISA Server (Internet Security and Acceleration) im Enterprise Mode<br />

Mit der Windows PowerShell wurde 2006 eine an die Unix-Shell angelehnte Methode zur<br />

Programmierung in Windows Server 2003 eingeführt, mit der auch Zugriffe auf das Active<br />

Directory realisiert werden können. Sie unterstützt einfache Befehle aber auch komplexe<br />

Skripte, die in der PowerShell Scripting Language verfasst sein können. Den Kern<br />

der PowerShell bilden Cmdlets. Das sind kleine Funktionseinheiten, die als .NET-<br />

Seite 211


Klassen implementiert sind. Die PowerShell ist ein flexibles Instrument, das den Zugriff<br />

auf WMI-Klassen (Windows Management Instrumentation), COM-Objekte (Component<br />

Object Model) und das .NET-Framework erlaubt.<br />

Mit ADSI (Active Directory Service Interface) existiert eine COM-basierende Schnittstelle,<br />

mit der eine Vielzahl von Aufgaben automatisiert werden kann.<br />

Mit Active-Directory-Client sind viele neue Funktionen auch mit älteren Windows Betriebssystemen,<br />

insbesondere NT 4, nutzbar und gewährleisten so in gewissem Ausmaß<br />

eine Abwärtskompatibilität. Dies sind u. a. Active Directory Service Interface, Active Directory<br />

Windows-Adressbuch und bestimmte Suchfunktionen.<br />

Zusammenfassend ist anzumerken: Das Active Directory ist ein leistungsfähiger LDAPbasierter<br />

Verzeichnisdienst, der Kerberos 5 unterstützt. Es bietet neben effizienten Abfragemöglichkeiten<br />

differenzierte Replikationsmöglichkeiten und ist auch in großen Netzen<br />

einsetzbar. Obwohl mit Möglichkeiten zur Anbindung microsoftfremder Betriebssysteme<br />

versehen, ist die gesamte Funktionalität nur mit Windows basierten Rechnern gegeben.<br />

2 Migrationspfade<br />

Die Migration des zentralen Authentisierungsdienstes ist im Wesentlichen durch die<br />

Überführung der Benutzer- und Gruppenkonten sowie im Zusammenspiel mit Windows<br />

auch immer der Maschinenkonten aus einer bestehenden IT-Infrastruktur in die<br />

vorgesehene neue IT-Infrastruktur für den Authentisierungsdienst geprägt. Dabei wird<br />

selten ein Authentisierungsdienst alleine, das heißt ohne die anderen Basisdienste einer<br />

IT-Infrastruktur, migriert werden. Bezüglich der IT-Infrastruktur hat sich in den letzten<br />

Jahren immer stärker die Integration von Verzeichnissen als wesentliches Element<br />

herausgeschält. Eine zunehmend wichtigere Rolle nimmt in solchen Authentisierungsinfrastrukturen<br />

die Single Sign-On (SSO) Infrastruktur auf Basis des Kerberos 5 Protokolls<br />

ein.<br />

Unter diesen Aspekten werden in den nächsten Abschnitten die folgenden Pfade für die<br />

Migration des Authentisierungsdienstes betrachtet:<br />

� Migration von Windows NT DC nach Linux mit OpenLDAP, Samba und Kerberos<br />

� Migration von Windows 2000 mit Active Directory nach Linux OpenLDAP, Samba<br />

und Kerberos<br />

� Migration von Linux und OpenLDAP, Samba und Kerberos nach Windows 2003<br />

mit Active Directory<br />

� Migration von Windows NT als DC auf Windows 2003 mit Active Directory<br />

Um eine Fehler- und Ausfallminimierung bei der Migration zu erreichen, sollte in der<br />

Vorbereitung der Migration eine Testmigration mit exemplarischen Beispielsystemen<br />

erfolgen. Hierbei sollten Probleme und Fehler, die durch spezifische organisatorische<br />

und technologische Bedingungen bei den manuellen Migrationsschritten entstehen können,<br />

untersucht und entsprechend dokumentiert werden.<br />

Seite 212


2.1 Migration von Windows NT DC nach Linux mit OpenLDAP, Samba und<br />

Kerberos<br />

Wie bereits in den Technologiebetrachtungen in den Kapiteln II.C 1.1 und II.E 1.1<br />

festgestellt wurde, stellt ein Linux-System in Kombination mit Samba eine gleichwertige<br />

Alternative zum Windows NT-Server dar. Durch die Hinzunahme des LDAP-<br />

Verzeichnisses „OpenLDAP― wird gegenüber der auf Windows NT 4.0 Server<br />

basierenden Authentisierungsinfrastruktur bereits ein erheblicher Mehrwert geschaffen,<br />

da hiermit u.a. eine deutlich bessere und umfassendere Abbildung der eigenen<br />

Organisation und die Abbildung von zum Beispiel Zugriffsrechten auf diese möglich ist.<br />

Dieser Pfad wird im <strong>Migrationsleitfaden</strong> auch weiterhin betrachtet, da es noch viele Behörden<br />

gibt, die IT-Infrastrukturen betreiben, die auf Windows NT 4.0 Server basieren.<br />

2.1.1 Funktionaler Vergleich<br />

Windows NT nutzt als Verwaltungs- und Struktureinheit den Begriff Domäne. In den Domänencontrollern<br />

werden Maschinen- und Benutzerkonten und ihre zugehörigen Attribute<br />

im Security Accounts Manager (SAM) gespeichert. Dies geschieht in Form von eingeschränkten<br />

Verwaltungsdiensten (Registries). Die festgelegte Struktur der Attribute und<br />

die beschränkte Skalierbarkeit stellen eine Einschränkung der Nutzbarkeit dar.<br />

Die Nutzung von Linux in Kombination mit Samba und OpenLDAP ermöglicht es, mit<br />

quelloffener Software die Funktionalität von Domänen Controllern nachzubilden. Samba<br />

besitzt eine LDAP-Schnittstelle und kann damit auf OpenLDAP als Datenbank für Benutzer-<br />

und Maschinenkonten zurückgreifen. Somit kann eine echte Verzeichnisdienst basierte<br />

Lösung zur Administration von Benutzer-, Gruppen- und Hostinformationen realisiert<br />

werden.<br />

Samba unterstützt aus Sicht der Windows-Clients das Konzept von PDCs (Primary Domain<br />

Controller) und BDCs (Backup Domain Controller). Ebenso ist es möglich, mit<br />

Samba einen WINS-Service zu realisieren. Die serverseitige Replikation der SAM-<br />

Datenbank zwischen PDC und BDC wird von Samba selbst nicht unterstützt. Dies wird<br />

jedoch durch die Replikation der LDAP-Verzeichnisse realisiert. Die Authentifizierung<br />

erfolgt in Samba über das NTLM-Protokoll (analog zu Windows NT). Sollen Linux Clients<br />

in die neue Infrastruktur integriert werden, so kann die Authentisierung auf diesen über<br />

verschiedene Möglichkeiten realisiert werden, zum Beispiel mit Hilfe des PAM-Moduls<br />

„pam_ldap― 185 über das LDAPv3 Protokoll direkt gegenüber dem LDAP-Verzeichnis oder<br />

mit einen Samba Client gegenüber dem Samba DC.<br />

Eine Kerberos-Authentisierung von Windows Clients, wie sie gegenüber Windows 2000<br />

Server möglich ist, ist gegenüber Samba nicht möglich. Allerdings lässt sich in einer<br />

Umgebung mit Linux, Samba und OpenLDAP ein Kerberos basiertes SSO, zum Beispiel<br />

mit Hilfe der MIT- oder Heimdal-Implementierung des Kerberos 5 Protokolls realisieren<br />

(siehe Kapitel II.C 1.1), sodass eine Authentisierung auch mit Windows Clients gegenüber<br />

dieser möglich ist.<br />

Durch die modulare Bauweise der Samba-Software gibt es verschiedene Wege, den<br />

Samba Domänen Controller (DC) zu administrieren. Neben der Konfiguration per Kom-<br />

185 http://www.kernel.org/pub/linux/libs/pam/<br />

Seite 213


mandozeile existiert für Samba ein webbasiertes Tool namens SWAT (Samba Web Administration<br />

Tool) zur Administration. Eine weitere empfehlenswerte Option ist der Einsatz<br />

der Software Webmin. Bei Webmin handelt es sich um eine freie webbasierte Software,<br />

die Schnittstellen für die Konfiguration und Überwachung einer Vielzahl von Unix<br />

basierten Diensten bereitstellt. Es gibt Webmin-Module u.a. für die Administration von<br />

Samba, OpenLDAP und Kerberos.<br />

Darüber hinaus lassen sich Benutzerkonten und Server wie gewohnt mit den Windows-<br />

Tools administrieren.<br />

2.1.2 Migrationspfad<br />

Die Migration eines Windows NT 4.0 Server DC auf ein Linux-System mit Samba und<br />

OpenLDAP ist grundsätzlich machbar und kann für die Nutzer transparent vorgenommen<br />

werden. Im Folgenden werden die wichtigsten Schritte beschrieben und einige Hinweise<br />

für die Durchführung gegeben.<br />

Zunächst einmal sollten die neuen Domänen Controller aufgebaut werden. Dazu sind<br />

neben der gewählten Linux-Distribution auch die Komponenten Samba, OpenLDAP zu<br />

implementieren. Bei der Einführung einer SSO Lösung, sofern eine solche Lösung aufgebaut<br />

werden soll, muss entweder die MIT- oder die Heimdal-Implementierung des<br />

Kerberos 5 Protokolls installiert werden.<br />

Für die spätere Benutzer-, Gruppen und Rechnerverwaltung im LDAP-Verzeichnis ist es<br />

hilfreich, wenn die Smbldap-Tools verfügbar sind. Diese Tools werden u.a. auch von<br />

Samba selbst verwendet, sofern Benutzerkonten mit Windows Tools verwaltet werden.<br />

2.1.2.1 Definition und Implementierung des Verzeichnisbaumes<br />

Der Aufbau eines Verzeichnisdienstes auf Basis von OpenLDAP ist vor allem geprägt<br />

von der Definition und der Implementierung des Verzeichnisbaumes. Hier ist es besonders<br />

wichtig, dass insbesondere klare Vorstellungen über den prinzipiellen Aufbau der<br />

Gesamtstruktur des Verzeichnisbaumes bestehen. Der Vorteil in einer Linux-OSSbasierten<br />

Umgebung ist, dass diese den Bedürfnissen entsprechend relativ frei definiert<br />

werden kann. Aus Sicht der Authentisierung gegenüber Samba ist es vor allem wichtig,<br />

dass das entsprechende zu Samba gehörende Schema integriert wird. Die nötigen Informationen<br />

über die Struktur und den Aufbau der Nutzer-, Gruppen- und Maschinenobjekte<br />

werden mit der vom Samba-Paket zur Verfügung gestellten Datei „samba.schema―<br />

bereitgestellt.<br />

2.1.2.2 Samba-Konfiguration<br />

Bezüglich der Sambakonfiguration ist anzumerken, dass in der Konfigurationsdatei<br />

/etc/smb.conf festgelegt wird, dass OpenLDAP als Backend zu verwenden ist. Darüber<br />

hinaus werden hier auch die notwendigen Einstellungen vorgenommen, die während der<br />

konkreten Migrationsphase vorzunehmen sind. Sie erfolgen gemäß nachfolgender Beschreibung.<br />

2.1.2.3 Migration der SAM-Datenbank<br />

Die Migration der SAM-Datenbank, das heißt die Überführung der Benutzer-, Gruppen-<br />

und Maschinenkonten mit den Credentials (Kennung und Passwort) vom bestehenden<br />

Seite 214


Windows DC zum neuen Samba DC, ist der wesentliche Schritt bei der Migration. Dieser<br />

sollte in einer weitgehend gesicherten Umgebung erfolgen. Es sollte somit sichergestellt<br />

sein, dass in dieser Phase nach Möglichkeit keine größeren Änderungen an der SAM<br />

vorgenommen werden. Warum dies sinnvoll ist, verdeutlichen die folgenden Details:<br />

� Nachdem der zukünftige Samba PDC erfolgreich eingerichtet, wurde muss dieser<br />

zunächst als Backup Domänen Controller (BDC) konfiguriert (/etc/smb.conf: „domain<br />

master = no―) und in die bestehende Windows NT Domäne als solcher integriert<br />

werden (net rpc join -U administrator –S %domain).<br />

� Anschließend können die Inhalte der SAM-Datenbank mit dem Befehl<br />

„net rpc vampire –S %domain―<br />

in das OpenLDAP-Verzeichnis überführt werden.<br />

� Nach dieser Übertragung werden weitere Änderungen im Windows NT PDC<br />

(zum Beispiel eine Passwortänderung durch einen Benutzer) nicht mehr in den<br />

Samba-BDC übernommen, daher sollte umgehend der Austausch vorgenommen<br />

werden.<br />

� Abschließend wird der Samba BDC zum Samba PDC umkonfiguriert.<br />

2.1.3 Einführung von Kerberos<br />

Da Windows NT 4.0 Server weder SSO noch das Kerberos 5 Protokoll unterstützt, handelt<br />

es sich hierbei um keine Migration. Die Einführung einer SSO-Lösung beziehungsweise<br />

einer Authentisierung auf Basis des Kerberos 5 Protokolls entspricht einem Neuaufbau<br />

der benötigten IT-Infrastruktur. Die entsprechenden Möglichkeiten sind in den<br />

Technologiebetrachtungen im Kapitel II.C 1.1 dargelegt.<br />

2.1.4 Fazit / Empfehlung<br />

Die Migration von Windows NT 4.0 Server DC auf ein Linux basiertes System unter Nutzung<br />

von Samba, OpenLDAP kann mit Hilfe der beschriebenen Tools und Verfahren auf<br />

eine transparente Art und Weise erfolgen. Funktional bietet das neue System alle Eigenschaften<br />

des Windows NT DC und bietet mit der Einführung eines LDAPv3 basierten<br />

Verzeichnisdienstes einen deutlichen Mehrwert sowie Verbesserungen hinsichtlich Skalierbarkeit<br />

und Performance. Eine Migration kann daher empfohlen werden. Die Möglichkeit,<br />

nunmehr auf Basis des Kerberos 5 Protokolls auch eine sicherere Authentisierung<br />

und ein SSO zu realisieren, stellt einen weiteren Mehrwert dar.<br />

2.2 Migration von Windows 2000 mit Active Directory nach Linux OpenLDAP,<br />

Samba und Kerberos<br />

Die Ablösung von Windows 2000 mit Active Directory durch ein Linux basiertes System<br />

ist grundsätzlich möglich, jedoch funktionieren einige Teile anschließend etwas anders<br />

als vorher. Mit der aktuell stabilen <strong>Version</strong> von Samba kann eine Windows 2000 Server /<br />

Active Directory Architektur nicht vollständig nachgebaut werden. Wo die Unterschiede<br />

hinsichtlich der Authentisierung liegen, wird nachfolgend im Rahmen der Betrachtung<br />

des Migrationspfades erläutert.<br />

Seite 215


Die Wahl von Windows 2000 Server als Ausgangssituation wurde gewählt, da eine Migration<br />

von Windows Server 2003 heute eher als eine Ausnahmeoption angesehen wird.<br />

Behörden, die aktuell oder in jüngster Zeit auf Windows 2003 Server gewechselt haben,<br />

werden schon aus wirtschaftlichen Gründen und aus Gründen des Investitionsschutzes<br />

gegenwärtig kaum eine erneute Migration durchführen.<br />

2.2.1 Funktionaler Vergleich<br />

Im Active Directory werden Information über Nutzer, Gruppen, Maschinen, Freigaben,<br />

Dienste und Geräte als Objekte gespeichert.<br />

Die Authentifizierung von Benutzern und Maschinen wird über Kerberos realisiert. Dabei<br />

wird eine Microsoft eigene Implementierung des Kerberos 5 Protokolls mit proprietären<br />

Erweiterungen eingesetzt.<br />

Mit Hilfe eines Linux-Systems in Kombination mit Samba 3.x, OpenLDAP 2.4.x und einer<br />

offenen Implementierung des Kerberos 5 Protokolls (Heimdal oder MIT) lassen sich die<br />

wesentlichen Funktionen der Windows 2000 Server / Active Directory Kombination hinsichtlich<br />

der Authentisierung abbilden.<br />

Der kritische Punkt für eine Migrationsentscheidung sind die Lock-In Szenarien. Somit<br />

muss die Frage geklärt werden, ob es Dienste und Anwendungen gibt, welche die proprietären<br />

Schnittstellen des Active Directory verwenden und mit welchem Aufwand und<br />

innerhalb welchen Zeitraumes sich diese Abhängigkeiten auflösen lassen. Die ersten<br />

Dienste und Anwendungen, die in diesem Zusammenhang regelmäßig eine Rolle spielen,<br />

sind Exchange 2003, MS SQL Server und in Zukunft auch verstärkt die verschiedenen<br />

<strong>Version</strong>en der SharePoint Server.<br />

Lassen sich diese Lock-In Szenarien nicht unter wirtschaftlichen Grundsätzen auflösen,<br />

dann wird eine positive Entscheidung für den hier betrachteten Migrationspfad eher<br />

schwierig. Dies wird, soweit heute absehbar, auch für die neueren <strong>Version</strong>en der Windows<br />

Server Systeme so sein.<br />

Ob eine <strong>Version</strong> 4 von Samba, die sich derzeit in Entwicklung befindet, eine Abhilfe<br />

schaffen kann, ist heute noch nicht absehbar und soll daher hier vorerst auch nicht weiter<br />

thematisiert werden.<br />

2.2.2 Migrationspfad<br />

Nachfolgend wird nun die Ablösung einer Windows 2000 Server Authentisierungsinfrastruktur<br />

mit Active Directory und Kerberos betrachtet. Der wesentliche Schritt dabei ist, wie<br />

eingangs bereits erwähnt, die Überführung der Benutzer- Gruppen- und Maschinenkonten<br />

sowie der entsprechenden Credentials. Im Gegensatz zum älteren Migrationspfad<br />

von Windows NT 4.0 Server nach Linux in Kombination mit Samba und OpenLDAP<br />

muss hier zusätzlich geprüft werden, inwieweit eine Überführung der Kerberos-<br />

Authentisierungsinfrastruktur unter Windows 2000 Server machbar ist beziehungsweise<br />

wie ein Migration durchgeführt werden kann.<br />

Genau wie bei einer Ausgangslage, die auf Windows NT 4.0 Server basiert, müssen<br />

zunächst die entsprechenden Domänencontroller mit Linux, Samba und OpenLDAP aufgebaut<br />

werden (siehe KapitelII.C 2.1.2 II.C 2.1.2).<br />

Seite 216


Ebenso muss genau analysiert werden, wie die zukünftige Verzeichnisstruktur aussehen<br />

soll. Sicherlich ist es dabei nicht unerheblich, dass eine Ablösung des AD vorgesehen<br />

ist.<br />

2.2.2.1 Migration der Benutzer- und Maschinenkonten<br />

Nach erfolgreicher Implementierung der DCs und des LDAPv3 basierten Verzeichnisdienstes<br />

besteht die Möglichkeit, die notwendigen Benutzer-, Gruppen- und Maschineninformationen<br />

per LDAP aus dem AD zu holen. Dabei muss beachtet werden, dass es<br />

Unterschiede, vor allem in der Bezeichnung der Attribute im AD und im OpenLDAP-<br />

Verzeichnis gibt. Diese müssen durch ein entsprechendes Mapping genau zugeordnet<br />

werden.<br />

Das grundlegende Problem bei der Übernahme dieser Informationen ist, dass die Credentials<br />

aus dem AD nicht ohne weiteres mit übernommen werden können, da diese<br />

durch die Kerberos-Implementierung verschlüsselt abgelegt werden. Es bestehen zwei<br />

Möglichkeiten, diesem Problem zu begegnen. Eine der beiden Möglichkeiten kann wohl<br />

als eine eher theoretische Möglichkeit angesehen werden, da sie einer längerfristigen<br />

Vorbereitung bedarf und als relativ komplex angesehen werden kann. Dabei werden die<br />

Credentials mittels einer Dynamic Link Library (DLL) auf einem AD Server immer dann<br />

abgefangen, wenn diese durch einen Benutzer verändert werden, und in das OpenLDAP<br />

Verzeichnis übertragen. Sollte ein Benutzer in der Zeit, in der diese Aktion durchgeführt<br />

wird, keine Änderung vornehmen, müssten für diesen die Credentials auf einen Standardwert<br />

bei der Übertragung der Informationen aus dem AD zurückgesetzt werden.<br />

Bei der zweiten Möglichkeit werden zur Vereinfachung des gesamten Verfahrens die<br />

Credentials für alle Benutzer zurückgesetzt. Dann ist die Migration für die Benutzer zwar<br />

nicht mehr transparent, mit Blick auf die Verfahrensvereinfachung und den für die Migration<br />

geringeren Zeitbedarf jedoch durchaus vertretbar.<br />

Nach erfolgreicher Übernahme der Informationen aus dem AD können die Samba DCs<br />

die Windows DCs entsprechend ablösen. Diese arbeiten dann wie Windows NT 4.0<br />

DCs.<br />

Abschließend sei noch darauf hingewiesen, dass Samba <strong>Version</strong> 3.x die Group Policy<br />

Objects unter Windows 2000 nicht unterstützt. Der wesentliche Teil dieser GPOs kann<br />

allerdings über System Policies und lokale Policies realisiert werden.<br />

2.2.2.2 Migration der Kerberos-basierten Authentisierungsinfrastruktur<br />

Eine Migration der Kerberos basierenden Authentisierungsinfrastruktur unter Windows<br />

2000 Server mit AD ist nicht möglich. Dem steht vor allem entgegen, dass die entsprechenden<br />

Schlüssel aus dem AD nicht übernommen werden können.<br />

Will man auch in der neuen Umgebung eine Kerberos basierte Authentisierungsinfrastruktur<br />

verwenden, dann muss eine entsprechende Infrastruktur neu aufgebaut werden.<br />

Hinweise hierzu finden sich in Kapitel II.C 1.1.<br />

Zu beachten ist, dass Gruppenrichtlinien mit den freien Implementierungen von Heimdal<br />

und MIT nicht wie bei Windows 2000 mit Kerberos-Tickets übertragen werden können.<br />

Microsoft hat hierzu eine proprietäre Erweiterung am Kerberos 5 Protokoll vorgenommen.<br />

Seite 217


2.2.3 Fazit / Empfehlung<br />

Bezüglich der Authentisierung wird eine Entscheidung für oder gegen den hier betrachteten<br />

Migrationspfad wohl in erster Linie davon abhängen, ob und welche Lock-In Szenarien<br />

bestehen und ob beziehungsweise wie effizient sich diese auflösen lassen. Die funktionalen<br />

Unterschiede dürften nur eine sekundäre Rolle für eine Entscheidung spielen,<br />

da sie hinsichtlich der Authentisierung nur gering sind. Es ist allerdings nicht auszuschließen,<br />

dass sich dies im Rahmen einer Gesamtmigration auch anders darstellen<br />

kann.<br />

2.3 Migration von Linux und OpenLDAP, Samba und Kerberos nach Windows<br />

2003 mit Active Directory<br />

In diesem Abschnitt werden die Möglichkeiten und Vorgehensweise zur Migration eines<br />

Linux basierten Systems in Kombination mit Samba, OpenLDAP und einer freien Kerberos-Implementierung<br />

auf ein Windows 2003 System mit Active Directory beschrieben.<br />

Im Gegensatz zu den vorher betrachteten Migrationspfaden, die die Ablösung eines<br />

Windows basierten Authentisierungsdienstes zum Ziel hatten und bei denen es darum<br />

ging, dass auch weiterhin Windows Clients eingesetzt werden können, geht es bei der<br />

hier betrachteten Migration auch darum, dass weiterhin Linux Clients in der Zielumgebung<br />

eingesetzt werden können.<br />

Dazu ist es notwendig, dass auf den neu aufzubauenden Windows 2003 DCs auch die<br />

Microsoft Services For Unix (SFU) 186 bereitgestellt werden, um auch die Funktionen der<br />

POSIX Authentifizierung verfügbar zu machen und um damit die Anbindung von Linux<br />

Clients zu ermöglichen.<br />

2.3.1.1 Migration der Benutzer- und Maschinenkonten<br />

Die Übernahme der Benutzer-, Gruppen- und Maschineninformationen erfolgt genau wie<br />

in die andere Richtung über die LDAPv3-Schnittstelle von AD. Ebenso wie bei der Migration<br />

in die andere Richtung ist es notwendig, ein entsprechendes Attributmapping vorzunehmen,<br />

um eine korrekte Abbildung der zueinander passenden Attribute sicherzustellen.<br />

Auch hier besteht ein Problem mit der Übernahme der Credentials, da diese ebenfalls<br />

verschlüsselt abgelegt werden. Als Lösung wird die Rücksetzung der Credentials empfohlen.<br />

Dies ist das einfachere und weniger zeitintensive Verfahren.<br />

186 http://www.microsoft.com/germany/windowsserver2003/technologien/sfu/default.mspx<br />

Seite 218


2.3.1.2 Migration der Kerberos basierten Authentisierungsinfrastruktur<br />

Eine Migration der Kerberos basierten Authentisierungsinfrastruktur ist aus den gleichen<br />

Gründen auch hier nicht möglich. Die Konfiguration der Kerberos basierten Authentisierungsinfrastruktur<br />

muss neu aufgebaut werden, wobei diese bei der Serverinstallation<br />

automatisch mit installiert wird, anschließend jedoch noch entsprechend zu konfigurieren<br />

ist.<br />

2.3.2 Bekannte Probleme<br />

Abgesehen von der Replikation des LDAP-Verzeichnisses können die Migrationsschritte<br />

nicht automatisiert werden. Daher ist für die Migration ein entsprechend langer und flexibler<br />

Zeitrahmen einzuplanen. MS stellt für diesen Migrationsweg, anders als die OSS-<br />

Community, bislang keinerlei Unterstützung zur Verfügung.<br />

2.3.3 Fazit / Empfehlung<br />

Da Microsoft im Gegensatz zur Open Source Community für die Migration von einer Linux<br />

basierenden IT-Infrastruktur hin zu einer Windows basierenden IT-Infrastruktur bislang<br />

noch keine geeigneten Migrationstools zur Verfügung stellt, ist ein Migrationspfad<br />

hin zu einer Windows 2003 Server basierenden IT-Infrastruktur relativ aufwendig und<br />

basiert auf vielen manuellen Migrationsschritten. Die Migration ist aber grundsätzlich<br />

machbar.<br />

2.4 Migration von Windows NT als DC auf Windows 2003 mit Active Directory<br />

Mit einer Migration von Windows NT als DC auf einen Windows 2003 Server erfolgt ein<br />

grundsätzlicher technologischer Wechsel der Authentifizierungs- und Verzeichnisdienste.<br />

2.4.1 Funktionaler Vergleich<br />

Während Windows NT auf NetBIOS, WINS, NTLM, SMB und einem eingeschränkten<br />

Verzeichnis basierte, werden mit Windows 2003 LDAP, Kerberos, DNS und CIFS leistungsfähigere<br />

und erweiterbare Technologien genutzt. Durch weitergehende Änderungen<br />

in der Domänenstruktur und den Authentifizierungsmechanismen ergeben sich während<br />

der Migration Anforderungen an eventuelle Neukonzeptionen.<br />

Grundsätzlich gibt es unterschiedliche Optionen, wie die Migration durchgeführt werden<br />

kann. Hierzu gehören ein Upgrade des alten Systems 187 , Neuinstallation oder Domänenupgrade<br />

188 . Empfohlen werden kann eigentlich nur eine Neuinstallation auf passender<br />

Hardware mit einer Domänenrestrukturierung. Das heißt, dass mit der Migration prinzipiell<br />

auch eine grundlegende Anpassung der Domänenstrukturen einhergeht.<br />

187<br />

Hier muss sichergestellt sein, dass die bestehende Hardware den Anforderungen des neuen<br />

Systems gerecht wird.<br />

188<br />

Die Strukturen der NT-Domäne werden in das Active Directory umgewandelt.<br />

Seite 219


2.4.2 Migrationspfad<br />

2.4.2.1 Grundsätzliche Schritte<br />

Um die Migration so transparent und minimal-invasiv wie möglich zu gestalten, wird<br />

empfohlen, in einem ersten Schritt das Update auf Windows 2003 durchzuführen und<br />

erst anschließend die Restrukturierung der Domänen durchzuführen.<br />

� Sicherung des IST-Zustands<br />

Der PDC wird auf einen BDC repliziert. Dieser BDC wird vom Netz genommen<br />

und dient als Sicherung.<br />

� Migration des PDC<br />

Der PDC wird auf Windows 2003 migriert. Dies erfolgt je nach Szenario über ein<br />

Betriebssystem-Update oder über eine Neuinstallation. Nach Abschluss der Migration<br />

arbeitet die Domäne im gemischten Modus (paralleler Betrieb von NT und<br />

2003-basierten Systemen).<br />

� Migration der BDC (optional)<br />

Im nächsten Schritt können die BDCs über ein Update oder eine Neuinstallation<br />

auf Windows 2003 umgestellt werden. Dieser Schritt ist optional, da im gemischten<br />

Modus auch der Windows 2003 PDC auf NT4 BDCs repliziert werden kann.<br />

� Schalten in den einheitlichen oder 2003 Modus<br />

Wurden auch die BDCs auf 2003 migriert kann die Domäne von dem gemischten<br />

Modus in den einheitlichen Modus oder den 2003-Modus geschaltet werden.<br />

� Optimierung der Domänenstrukturen (optional)<br />

Nach erfolgreicher Migration können die Domänenstrukturen optimiert und konsolidiert<br />

werden.<br />

2.4.2.2 Update von Windows NT auf 2003<br />

Das Update von Windows NT auf 2003 erfolgt über die Betriebssystem-CD. Während<br />

des Updates müssen über die benutzerdefinierte Installation der Netzwerkdienste der<br />

DNS- und der DHCP-Dienst installiert werden.<br />

Nach erfolgreichem Betriebssystem-Update wird auf der Kommandozeile das Programm<br />

„dcpromo― ausgeführt. Hierdurch erfolgt mit Hilfe eines Assistenten die Konvertierung der<br />

Windows NT Domäne in das Active Directory.<br />

2.4.2.3 Konsolidierung der Domänenstruktur<br />

Mit Hilfe des Active Directory Migration Tools (ADMT) kann nach der Migration der NT<br />

Domäne auf Active Directory eine Umstrukturierung der Domäne(n) erfolgen. Hierbei ist<br />

es oft möglich, die Domänenstruktur durch Verringerung der genutzten Domänen zu<br />

vereinfachen. Die Verwaltung von Benutzern, Gruppen und Gruppenrichtlinien wird vereinfacht<br />

und die unidirektionalen Vertrauensstellungen der NT-Domänen können automatisch<br />

in bidirektionale Vertrauensstellungen von Windows 2003 umgewandelt werden.<br />

Seite 220


2.4.2.4 Zu beachtende Punkte<br />

� Service Pack 5<br />

Für die Umstellung auf Windows 2003 ist es zwingend erforderlich, dass auf den<br />

umzustellenden Windows NT Rechnern das Service Pack 5 installiert ist.<br />

� Änderung Rechnername<br />

Da die Rechnernamen von Domänencontrollern nicht geändert werden können,<br />

kann es bei der Migration zu Problemen kommen. Dies ist besonders dann der<br />

Fall, wenn Windows 2003 auf einem komplett neuen System installiert wird. Sollte<br />

dies der Fall sein, wird empfohlen, das neue System aufzusetzen, mit Hilfe eines<br />

temporären Namens ins Netz zu integrieren und die Daten des alten NT-<br />

Systems zu kopieren. Im Anschluss kann dann der Name geändert und der Domäne<br />

als Domaincontroller beigetreten werden.<br />

2.4.3 Fazit / Empfehlung<br />

Die Migration auf Windows 2003 stellt eine Möglichkeit dar, das veraltete NT-System<br />

abzulösen und historisch gewachsene Strukturen zu überdenken und abzulösen.<br />

3 Bezüge<br />

3.1 Grundlegende Überlegungen<br />

Viele andere Infrastrukturdienste und Anwendungen haben aus ihrer Sicht einen Bezug<br />

zum Authentisierungsdienst und damit auch zum Verzeichnisdienst, wenn beides, wie<br />

hier im Leitfaden, als eine Einheit betrachtet wird. Damit kann ein Authentifizierungsdienst<br />

in der Regel auch nicht isoliert betrachtet beziehungsweise migriert werden. Wenn<br />

es um die Migration eines Authentifizierungsdienstes geht, muss der Bezug zu allen<br />

Diensten und Anwendungen hergestellt werden, die auf den Authentifizierungsdienst in<br />

der bestehenden Umgebung zugreifen und diesen nutzen. Im Prinzip kann dies fast alle<br />

technisch orientierten Themen betreffen, die im Rahmen des <strong>Migrationsleitfaden</strong>s behandelt<br />

werden. Eine Ausnahme stellt hierbei vielleicht das Thema Officeanwendungen<br />

dar. Da die Migration des Authentifizierungsdienstes häufig auch mit einem Wechsel des<br />

Betriebssystems einher geht (fortführend oder ablösend), müssen die anderen vorhandenen<br />

Infrastrukturdienste und Anwendungen mit betrachtet werden und sei es nur, um<br />

zu prüfen, dass ein Einsatz unter dem neuen Betriebssystem problemlos möglich ist.<br />

Dazu sollten dann die entsprechenden Abschnitte im <strong>Migrationsleitfaden</strong> zu Rate gezogen<br />

werden.<br />

3.2 Verzeichnisdienst<br />

Ein eigenes Thema Verzeichnisdienst ist im Moment im <strong>Migrationsleitfaden</strong> nicht vorgesehen.<br />

Daher soll an dieser Stelle darauf hingewiesen werden, dass die grundlegenden<br />

Überlegungen, wie sie im einleitenden Kapitel zu den Migrationspfaden zu Datenbanken<br />

beschrieben werden (siehe Kapitel II.A 2) in Teilen auf die Migration von Verzeichnisdiensten<br />

übertragen werden können. Insbesondere, wenn man bedenkt, dass im Ba-<br />

Seite 221


ckend der meisten Verzeichnisdienste Datenbanken liegen. Die beiden folgenden<br />

Grundsätze sollten in jedem Fall beachtet werden:<br />

� Bei der Ausgestaltung einer Verzeichnisdienstlösung eine Orientierung an herstellerunabhängigen<br />

Standards erfolgen. Die Anwendung von herstellerspezifischen<br />

Techniken und Funktionen sollte vermieden werden.<br />

� Eine Verzeichnisdienstlösung sollte sich auf die Kernfunktionalität eines Verzeichnisdienstes<br />

konzentrieren, nämlich der Speicherung und Bereitstellung von<br />

Daten. Der Zugriff auf die Daten und deren Verarbeitung sollte losgelöst vom<br />

verwendeten Produkt entweder über eigene Anwendungen oder mittels geeigneter<br />

LDAP-Browser.<br />

� Für die Gestaltung der Struktur der Verzeichnisbäume sollten so weit als möglich<br />

vorhandene Standardschemata zum Einsatz kommen.<br />

Unter Beachtung dieser minimalen Vorgaben sollte dann auch eine Migration von einem<br />

X.500-Verzeichnis zu einem LDAP-Verzeichnis machbar sein.<br />

Für tiefer gehende Betrachtungen müsste ein eigenes Migrationsthema Verzeichnisdienst<br />

losgelöst vom Authentisierungsdienst im Leitfaden aufgenommen werden. Sollte<br />

sich hierfür ein entsprechender Bedarf zeigen, wird der <strong>Migrationsleitfaden</strong> dies aufgreifen.<br />

Seite 222


D Thema Netzwerkdienste<br />

Die infrastrukturbildenden Dienste für TCP/IP basierte Netzwerke (DNS, DHCP, NTP,<br />

Routing, VPN, Filtering) lassen sich durchweg in Open Source Software realisieren. Die<br />

umfassende Verfügbarkeit dieser Netzwerkdienste als OSS erklärt sich aus der Entwicklungsgeschichte<br />

des Internet. Dieses weltweite Datennetz zeichnet sich dadurch aus,<br />

dass alle daran angeschlossenen Computer ein und dieselbe Sprache sprechen. Diese<br />

Sprache besteht aus einer ganzen Familie von Protokollen, die unter der Bezeichnung<br />

TCP/IP zusammengefasst werden. Damit die Kommunikation zwischen den unterschiedlichsten<br />

Systemen weltweit reibungslos funktioniert, muss das „Sprachverständnis― unbedingt<br />

übereinstimmen. Um diese Übereinstimmung zu erreichen, sind die meisten der<br />

bei der Internet Engineering Task Force (IETF) formell verabschiedeten Standards für<br />

Internetprotokolle durch Open Source Referenzimplementierungen unterstützt. Auf<br />

Grundlage dieser Referenzen können alle Hersteller unabhängig voneinander vollständig<br />

interoperable Software entwickeln. Die Internetprotokolle selbst sind herstellerunabhängig<br />

und sowohl in ihren Definitionen als auch in ihren Open Source Implementierungen<br />

offene Standards. Dieser besondere Charakter der Internetprotokolle hat entscheidend<br />

dazu beigetragen, dass sich TCP/IP gegenüber den gleichzeitig am Markt befindlichen<br />

proprietären Netzwerkprotokollen durchgesetzt hat.<br />

Auch wenn im lokalen Netz die Anforderungen bezüglich Interoperabilität aufgrund der<br />

begrenzten Anzahl beteiligter Systeme überschaubar bleiben, ist die Bewahrung der<br />

offenen Standards von essenzieller Bedeutung. Dies hat dazu geführt, dass die herstellerspezifischen<br />

Netzwerkdienste für lokale Netze wie zum Beispiel der Microsoft Windows<br />

Internet Name Service (WINS) und das Network Basic Input Output System (Net-<br />

BIOS) immer stärker in den Hintergrund treten.<br />

Diese Dienste werden nachfolgend auch betrachtet, da sie noch genutzt und erst sukzessive<br />

abgelöst werden. Der Fokus richtet sich aber vor allem auf die beiden wichtigsten<br />

Netzwerkdienste, den auf dem Dynamic Host Configuration Protocol (DHCP) basierenden<br />

Dienst für die Zuweisung von IP-Adressen und den Domain Name Service<br />

(DNS).<br />

1 Produkte / Technologien<br />

Die meisten der nachfolgend beschriebenen Dienste basieren auf TCP/IPv4. Eine Betrachtung<br />

von IPv6 findet nur vereinzelt statt.<br />

1.1 NetBIOS, WINS, DNS und DHCP unter Windows NT/2000/2003<br />

Neben den offenen Netzwerkprotokollen werden im Folgenden auch heute noch z.T.<br />

verwendete proprietäre Protokolle beschrieben. Betrachtet werden im Folgenden die<br />

Netzwerkprotokolle/-dienste:<br />

� NetBIOS<br />

� WINS<br />

Seite 223


� DNS<br />

� DHCP<br />

1.1.1 NetBIOS/NetBEUI<br />

Entwickelt wurde NetBIOS 1983 bei der Firma Sytec, Inc. Der Auftrag hierzu wurde von<br />

IBM für das IBM PC Netzwerk zur Vernetzung kleiner Arbeitsgruppen erteilt.<br />

NetBIOS ist eine Schnittstelle zur Kommunikation zwischen Anwendungen in Windows<br />

basierten Netzwerken. Das Netzwerkprotokoll NetBEUI dient NetBIOS standardmäßig<br />

als Transportprotokoll. Um NetBIOS über TCP verwenden zu können, wurde mit den<br />

RFCs 1001 und 1002 der Standard NetBIOS over TCP/IP (NBT) definiert.<br />

NetBIOS/NetBEUI ist aufgrund seiner Zielsetzung für kleine Netzwerke ohne Router<br />

ausgelegt. Das Protokoll kann auf Grund seiner Architektur nicht über Router hinaus<br />

verbreitet werden. Zur Kommunikation nutzt das Protokoll hauptsächlich ungerichtete<br />

Datenpakete, sogenannte Broadcasts. Dies kann zu einem hohen Datenverkehr innerhalb<br />

eines Netzwerkes führen. Durch die starke Verbreitung und Nutzung des Internets<br />

und des dem Internet zugrunde liegenden Protokolls TCP/IP hat NetBIOS heutzutage<br />

seine Bedeutung verloren. Viele Anbieter haben die Entwicklung für dieses Protokoll<br />

eingestellt und bilden die Funktionen des Protokolls nunmehr über TCP/IP ab. Seit Windows<br />

2000 setzt auch Microsoft in seinen Betriebssystemen auf TCP/IP anstatt auf Net-<br />

BIOS/NetBEUI, daher wird hier nicht detaillierter auf dieses Protokoll eingegangen.<br />

1.1.2 Windows Internet Name Service (WINS)<br />

WINS wurde von Microsoft entwickelt, um eine Namenauflösung für NetBIOS über<br />

TCP/IP in Microsoft Netzwerken abzubilden.<br />

Microsoft definiert WINS wie folgt 189 :<br />

WINS (Windows Internet Name Service) ist die Windows-Implementierung eines<br />

NetBIOS-Namenservers (NBNS), der eine verteilte Datenbank für das Registrieren<br />

und Abfragen dynamischer Zuordnungen von NetBIOS-Namen zu den im<br />

Netzwerk verwendeten IPv4-Adressen bereitstellt. WINS bietet eine NetBIOS-<br />

Namensauflösung in gerouteten TCP/IP-Netzwerken mit mehreren Subnetzen.<br />

Bevor zwei Hosts, die NetBIOS über TCP/IP (NetBT) verwenden, miteinander<br />

kommunizieren können, muss der Ziel-NetBIOS-Name in eine IPv4-Adresse aufgelöst<br />

werden. TCP/IP kann keine Kommunikation mithilfe eines NetBIOS-<br />

Computernamens herstellen.<br />

Es besteht die Möglichkeit, einen WINS-Proxy einzusetzen. Ein WINS-Proxy hält selbst<br />

keine Datenbank. Er nimmt lediglich Anfragen von Clients entgegen und leitet diese an<br />

einen vollwertigen WINS Server weiter.<br />

Sämtliche bisher erschienenen Windows Betriebssysteme (Windows 9x bis Windows XP<br />

und sämtliche Serverbetriebssysteme) können einen WINS Client darstellen. Der WINS<br />

Client kann anhand seines sogenannten Knotentyps dahin gehend konfiguriert werden,<br />

ob und wie er NetBIOS-Namen auflösen soll.<br />

189 http://www.microsoft.com/germany/technet/datenbank/articles/600987.mspx<br />

Seite 224


Microsoft empfiehlt beim Aufbau von neuen Netzwerken, den WINS Dienst anzubieten,<br />

da nicht auszuschließen ist, dass vorhandene alte (zum Beispiel 16 Bit Anwendungen)<br />

Applikationen diesen Dienst noch nutzen. Dies sollte aber in jedem Fall im Vorfeld geprüft<br />

werden. Diese Prüfung ist jedoch häufig nicht problemlos möglich, da es keine<br />

Standardmethode zur Ermittlung aller Anwendungen gibt, die WINS benötigen. Bei einer<br />

zukünftigen Planung zum Einsatz von Applikationen innerhalb eines Netzwerkes sollte<br />

daher der Einsatz von Applikationen vermieden werden, die den WINS Dienst nutzen.<br />

1.1.3 Domain Name System (DNS)<br />

DNS ist der Internetstandard, der es unter anderem ermöglicht, innerhalb eines hierarchischen<br />

Namensraums Rechnernamen in eine IP Adresse und umgekehrt (Reverse<br />

Lookup) aufzulösen.<br />

Paul Mockapetris entwarf 1983 den DNS Dienst und beschrieb ihn in den RFCs 882 und<br />

883. Diese RFCs wurden inzwischen von RFC 1034 und RFC 1035 abgelöst und durch<br />

zahlreiche weitere Standards ergänzt.<br />

DNS kann auf den Microsoft Server Betriebssystemen installiert werden. In folgenden<br />

RFCs ist der DNS Dienst beschrieben, wie er von Microsoft für Windows Serverbetriebssysteme<br />

implementiert wird 190 :<br />

RFC Titel<br />

1034 Domain Names – Concepts and Facilities<br />

1035 Domain Names – Implementation and Specification<br />

1123 Requirements for Internet Hosts – Application and Support<br />

1886 DNS Extensions to Support IP <strong>Version</strong> 6<br />

1995 Incremental Zone Transfer in DNS<br />

1996 A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)<br />

2136 Dynamic Updates in the Domain Name System (DNS UPDATE)<br />

2181 Clarifications to the DNS Specification<br />

2308 Negative Caching of DNS Queries (DNS NCACHE)<br />

2535 Domain Name System Security Extensions (DNSSEC)<br />

2671 Extension Mechanisms for DNS (EDNS0)<br />

2782 A DNS RR for Specifying the Location of Services (DNS SRV)<br />

Tabelle 40: RFCs in denen DNS spezifiziert wird<br />

Die Nutzung des DNS Dienst innerhalb einer abgegrenzten Netzwerkinfrastruktur setzt<br />

den Aufbau beziehungsweise die Nutzung eines entsprechenden Servers voraus. Um<br />

die Kommunikation zu Rechnern in anderen Netzwerken aufzubauen, können externe<br />

190 http://www.microsoft.com/technet/prodtechnol/windowsserver2003/de/library/<br />

ServerHelp/60601f25-a8b3-4316-851f-8e0cc99673ec.mspx?mfr=true<br />

Seite 225


DNS Server von den entsprechenden Providern genutzt werden. DNS Server treten in<br />

der Regel paarweise (Primary und Secondary DNS Server) auf. Dies dient zum einen<br />

der Verbesserung der Ausfallsicherheit des Dienstes und ermöglicht zum anderen, DNS<br />

Einträge im laufenden Betrieb zu pflegen.<br />

Wie bereits erwähnt, ermöglicht DNS die Auflösung eines Rechnernamens in eine IP<br />

Adresse und umgekehrt in einen hierarchischen Namensraum. Die Hierarchie des Namensraums<br />

macht sich in der Notation der Namen durch das Trennzeichen „.― (Punkt<br />

beziehungsweise dot) bemerkbar. Der sogenannte „vollqualifizierte― Name (Fully Qualified<br />

Domain Name, FQDN) besteht aus zwei Teilen: der erste Teil (bis zum ersten<br />

Punkt) kennzeichnet den Hostnamen, der zweite Teil die DNS Domäne. Beispiel: computer1.organisation1.com<br />

beschreibt den Rechner namens computer1 in der DNS Domäne<br />

organisation1.com. Es ist nicht zwingend notwendig, dass der FQDN aus drei Teilen<br />

bestehen muss. Zwei Teile sind allerdings mindestens aufzuführen. Der in diesem<br />

Beispiel aufgeführte Teil nach dem letzten Punkt beschreibt üblicher Weise den übergeordneten<br />

Bereich oder das Land in dem der Rechner beziehungsweise die Domäne<br />

angesiedelt ist. Als zulässige Zeichen in FQDN sind die Zeichen a bis z, A bis Z und das<br />

Minuszeichen definiert, wobei nicht zwischen Groß- und Kleinschreibung unterschieden<br />

wird. 191<br />

Da DNS ein Internetstandard ist, ist eine freie Wahl des Domänennamens nicht möglich.<br />

Die Domänen müssen bei den aktuellen nationalen oder internationalen Verwaltungseinrichtungen<br />

registriert werden. Ist der DNS Namensraum allerdings nur innerhalb der eigenen<br />

Organisation (Unternehmen) sichtbar, können auch nicht registrierte Namen zum<br />

Einsatz kommen. Hiervon ist allerdings abzuraten. Es sollte immer darauf geachtet werden,<br />

dass ein Namensraum verwendet wird, der zum Internet kompatibel bleibt. Hierzu<br />

empfiehlt es sich, einen gewünschten Namensraum (Domäne) frühzeitig reservieren zu<br />

lassen. Dies verhindert spätere Umstellungen und vermeidet Aufwendungen für Migrationen.<br />

DNS verfügt über Mechanismen, die es ermöglichen, die zugrunde liegende Datenbasis<br />

zu partitionieren, also auf verteilte Umgebungen anzupassen. Zum einen kann die Namensauflösung<br />

für spezielle Domänen delegiert werden, zum anderen können über die<br />

Erstellung von Zonen die Replikation (Zonentransfer) und die Verwaltung gesteuert werden.<br />

Eine Besonderheit der DNS Implementierung unter Windows ab NT 4 ist die Möglichkeit,<br />

den DNS Dienst zu veranlassen, zusätzlich einen WINS Server zur Namensauflösung<br />

heranzuziehen.<br />

DNS unterstützt neben den Einträgen für Rechnernamen noch weitere Eintragstypen<br />

(resource records). Die folgende Tabelle zeigt eine Übersicht der in Windows unterstützten<br />

DNS Resource Record Typen.<br />

191 In einigen Domänen, wie .de .at .ch sind auch erweiterte Zeichensätze mit definierten Sonderzeichen<br />

zum Beispiel Umlauten oder ß nutzbar.<br />

Seite 226


Record Typ Kurzbeschreibung<br />

A Adresseintrag (klassischer Eintrag für einen Host, der in eine IP Adresse aufgelöst<br />

werden soll)<br />

CNAME Alias (oder canonical name)<br />

MX Eintrag für das Mailrouting via SMTP (Simple Message Transfer Protocol)<br />

NS Eintrag für einen DNS Server (name server) einer DNS Domäne.<br />

PTR Reversiver Adresseintrag (pointer resource record), der über eine IP Adresse auf<br />

einen Hostname schließen lässt<br />

RP Eintrag für die verantwortliche Person einer speziellen DNS Domäne<br />

SOA Ein SOA-Satz (Start Of Authority) markiert den Beginn einer Zone. Der Name<br />

(@, das Origin) steht für den Namen der Zone.<br />

TXT Eintrag für Textinformationen<br />

WINS Eintrag für die IP Adresse für WINS Server, die zusätzlich zur Vorwärtsauflösung<br />

verwendet werden sollen<br />

WINS_R Eintrag den Reverse Lookup via WINS Server<br />

SRV Eintrag für well-known service<br />

Tabelle 41: Übersicht der unterstützten DNS Resource Record Typen<br />

Sämtliche bisher erschienenen Windows Betriebssysteme (Windows 9x bis Windows XP<br />

und sämtliche Serverbetriebssysteme) können einen DNS Client darstellen. Systeme mit<br />

Windows 2000 oder höher unterstützen als Client auch dynamische DNS (DDNS).<br />

Der DNS Dienst unter Windows 2003 ist laut den Angaben von Microsoft 192 interoperabel<br />

mit den nachfolgend aufgeführten <strong>Version</strong>en von BIND (Berkeley Internet Name Domain)<br />

193 , der Open Source Implementierung eines DNS Dienstes, die für viele Betriebssysteme,<br />

wie zum Beispiel UNIX, FreeBSD, OpenBSD, Linux und Windows zur Verfügung<br />

steht:<br />

� BIND 4.9.7<br />

� BIND 8.1.2<br />

� BIND 8.2<br />

� BIND 9.1.0<br />

Die Anbindung von BIND 9 an fremde Datenquellen für die Verwaltung der Zoneninformationen<br />

ist einerseits über ein umfangreiches BackEnd Database Interface möglich,<br />

andererseits gibt es ein zusätzliches, vereinfachtes Interface, „Simple Database Ba-<br />

192 http://www.microsoft.com/technet/prodtechnol/windowsserver2003/de/library/ServerHelp/<br />

73c0ae36-8058-43d1-8809-046eb03b73fb.mspx?mfr=true<br />

193 http://www.isc.org/index.pl?/sw/bind/<br />

Seite 227


ckend― (SDB), mit dem beispielsweise ein nur-lesender Zugriff auf LDAP oder SQL Datenbanken<br />

realisiert werden kann. Die Anbindungen selbst sind jedoch nicht Bestandteil<br />

des BIND Softwarepakets. So existieren beispielsweise für die LDAP-Anbindung sowohl<br />

SDB Implementierungen als auch vordefinierte Objektklassen, mit denen eine solche<br />

Anbindung realisiert werden kann.<br />

Insbesondere unterstützt BIND 9 auch die dynamische Aktualisierung von Service-<br />

Records und kann damit entsprechende Dienste für Windows Server leisten<br />

BIND stellt damit eine Alternative zu dem in Windows implementierten DNS dar. Aufgrund<br />

seiner großen Verbreitung ist nicht zu erwarten, dass es beim Einsatz in heterogenen<br />

Umgebungen funktionale Schwierigkeiten gibt.<br />

1.1.4 Dynamic Host Configuration Protocol (DHCP)<br />

DHCP wurde von der Dynamic Host Configuration Working Group of the Internet Engineering<br />

Task Force entwickelt und ist im RFC 2131 definiert.<br />

DHCP wird dazu verwendet, Computern innerhalb eines Netzwerkes automatisch, dynamisch<br />

und temporär oder statisch und permanent eine IP Adresse zuzuweisen. Dies<br />

geschieht, indem der Computer während der Startphase über einen DHCP Client eine<br />

entsprechende Anfrage an den DHCP Server stellt, welcher aus einem Pool von IP Adressen<br />

eine IP Adresse für die Dauer einer festgelegten Laufzeit zur Verfügung stellt.<br />

Zwar bietet ein DHCP-Server unter Windows Server 2003 alle Optionen aus der nachfolgenden<br />

Optionsliste (siehe Tabelle 42) an, jedoch fordern DHCP-Clients unter Windows<br />

XP und Windows Server 2003 während des DHCP-Konfigurationsvorgangs nur die<br />

in der Spalte „Unter Windows genutzt― gekennzeichneten Optionen an.<br />

Nr. Optionsname Erklärung von Windows<br />

genutzt<br />

0 Pad<br />

255 End<br />

1 Subnet mask Gibt die mit der geleasten IP-Adresse verknüpften<br />

Subnetzmaske an. Die Subnetzmaske wird<br />

in einem Bereich konfiguriert und muss nicht<br />

separat als Option konfiguriert werden.<br />

2 Time offset<br />

3 Router Gibt die IP-Adresse des Standardgateways<br />

eines Hosts an.<br />

4 Time server<br />

5 Name servers<br />

6 DNS servers Gibt die IP-Adressen von DNS-Servern an. �<br />

7 Log servers<br />

8 Cookie servers<br />

9 LPR servers<br />

Seite 228<br />

�<br />


Nr. Optionsname Erklärung von Windows<br />

genutzt<br />

10 Impress servers<br />

11 Resource Location<br />

servers<br />

12 Host name<br />

13 Boot file size<br />

14 Merit dump file<br />

15 Domain name Gibt den verbindungsspezifischen DNS-<br />

Domänensuffix an, der vom DHCP-Client verwendet<br />

werden soll.<br />

16 Swap server<br />

17 Root path<br />

18 Extensions path<br />

19 IP layer forwarding<br />

20 Nonlocal source<br />

routing<br />

21 Policy filter masks<br />

22 Max DG reassembly<br />

size<br />

23 Default time-to-live<br />

24 Path MTU aging<br />

timeout<br />

25 Path MTU plateau<br />

table<br />

26 MTU option<br />

27 All subnets are<br />

local<br />

28 Broadcast address<br />

29 Perform mask discovery<br />

30 Mask supplier<br />

31 Perform router discovery<br />

32 Router solicitation<br />

address<br />

Gibt an, ob der DHCP-Client ICMP-Routersuche<br />

(Internet Control Message Protocol) als<br />

Host verwendet, wie in RFC 1256 definiert.<br />

33 Static route Gibt einen Satz von IP-Netzwerkzielen mit<br />

Klassen an, zusammen mit den ihnen entsprechenden<br />

IP-Adressen, die DHCP-Clients in ihre<br />

IP-Routingtabellen aufnehmen.<br />

Seite 229<br />

�<br />

�<br />


Nr. Optionsname Erklärung von Windows<br />

genutzt<br />

34 Trailer encapsulation<br />

35 ARP cache timeout<br />

36 Ethernet encapsulation<br />

37 Default time-to-live<br />

38 Keepalive interval<br />

39 Keepalive garbage<br />

40 NIS domain name<br />

41 NIS servers<br />

42 NTP servers<br />

43 Vendor-specific<br />

information<br />

44 WINS/ NBNS servers<br />

45 NetBIOS over TCP/<br />

IP NBDD<br />

46 WINS/ NBT node<br />

type<br />

Gibt an, ob herstellerspezifische Optionen angefordert<br />

werden.<br />

Gibt die IP-Adressen von WINS-Servern an. �<br />

Gibt den von dem Client verwendeten Typ der<br />

Namensauflösung bei NetBIOS (Network Basic<br />

Input/Output System) über TCP/IP an.<br />

47 NetBIOS scope ID Gibt die NetBIOS-Bereichskennung an. NetBT-<br />

Hosts (NetBIOS über TCP/IP) kommunizieren<br />

nur mit den NetBT-Hosts, die die gleiche Bereichskennung<br />

verwenden.<br />

48 X Window system<br />

font<br />

49 X Window system<br />

display<br />

51 Lease time Gültigkeitsdauer der Vergabe<br />

58 Renewal (T1) time<br />

value<br />

59 Rebinding (T2) time<br />

value<br />

64 NIS + Domain Name<br />

65 NIS + Servers<br />

66 Boot Server Host<br />

Name<br />

67 Bootfile Name<br />

Erneuerungsintervall 1<br />

Erneuerungsintervall<br />

Seite 230<br />

�<br />

�<br />


Nr. Optionsname Erklärung von Windows<br />

genutzt<br />

68 Mobile IP Home<br />

Agents<br />

249 Statische Routen<br />

ohne Klassen<br />

Gibt einen Satz von Routen ohne Klassen an,<br />

die der DHCP-Client in seine IP-Routingtabelle<br />

aufnimmt.<br />

Tabelle 42: Übersicht der DHCP Optionen<br />

Wie auch die anderen Netzwerkdienste ist der DHCP Dienst unter Microsoft kompatibel<br />

zu den Standardimplementierungen unter UNIX und kann daher in heterogenen Umgebungen<br />

eingesetzt werden.<br />

Die Funktion, dass sich Netzwerkclients automatisch konfigurieren, ist in TCP/IPv6 in die<br />

Definition des TCP/IP Protokolls eingeflossen. Daher gibt es unter TCP/IPv6 kein DHCP<br />

mehr.<br />

In Netzwerken, in denen die Adressierung bereits nach der neuen <strong>Version</strong> 6 des Internetprotokolls<br />

(IPv6) stattfindet, verwendet der Microsoft Server parallele IP Stacks für<br />

IPv4 und IPv6 (Dualstack-Strategie). Für Windows Clients wird diese Option zum Zeitpunkt<br />

der Erstellung des Leitfadens nicht angeboten. Damit besteht die Möglichkeit, dass<br />

sowohl Rechner mit IPv6 als auch Rechner mit IPv4 mit dem Server kommunizieren<br />

können.<br />

Über das Internet bieten die meisten Provider jedoch noch immer keinen nativen IPv6-<br />

Verbindungen an. Somit besteht die grundsätzliche Schwierigkeit, zwei IPv6-Netze über<br />

das Internet miteinander zu verbinden. Um diese Einschränkung zu umgehen, gibt es<br />

weltweit sogenannte „tunnel broker", mit denen alle IPv6-Verbindungen durch eine IPv4-<br />

Verbindung „getunnelt" werden können. In der Regel werden diese gratis zur Verfügung<br />

gestellt.<br />

Zusammenfassend ist festzustellen: Netzwerkprotokolle bilden die Grundlage zur Kommunikation<br />

von Geräten innerhalb eines Netzwerkes. In der Vergangenheit waren die<br />

Implementierungen dieser Protokolle bei Microsoft in der Praxis teilweise nur eingeschränkt<br />

nutzbar (zum Beispiel Abstürze der TCP/IP Implementierung 1.0). Inzwischen<br />

sind die Implementierungen aller Protokolle bei Microsoft für den Praxiseinsatz geeignet.<br />

TCP/IP hat sich als Standard durchgesetzt. Gegebenenfalls müssen aus historischen<br />

Gründen bei Microsoftumgebungen aber auch Protokolle eingesetzt werden, die nicht<br />

aus der TCP/IP Welt stammen, in diese jedoch eingebunden werden können (zum Beispiel<br />

WINS).<br />

1.2 WINS, DNS und DHCP unter Linux mit Samba<br />

Die Auswirkungen der Netzwerkdienste für die Clients unterscheiden sich nicht zwischen<br />

einem Windows Netzwerk und einem OSS Netzwerk. Daher werden nachfolgend<br />

nur die Unterschiede in Bezug auf die in Kapitel 4.2.1.1 beschriebenen Dienste<br />

aufgeführt. Im Wesentlichen handelt es sich hierbei um architektonische Unterschiede.<br />

Seite 231<br />


Auf die Herkunft der Protokolle wird jeweils kurz im entsprechenden Abschnitt verwiesen,<br />

sofern diese von den bereits beschriebenen abweicht.<br />

1.2.1 Windows Internet Name Service (WINS)<br />

Die Namensauflösung für Windows-Dienste und -Rechner wird nach einer OSS-<br />

Migration durch den Samba-Dämon nmbd übernommen. Dabei können einerseits die bei<br />

Windows üblichen broadcastbasierten Browserdienste sowohl als Client als auch als<br />

lokaler oder domänenweiter Master Browser geleistet werden. Andererseits kann der<br />

nmbd aber auch als WINS Server die Koordinierung der Browser über die Grenzen von<br />

Netzsegmenten hinweg leisten, die üblicherweise mit Routern, die keine Broadcasts<br />

durchlassen, verbunden sind.<br />

SAMBA kann auch in der Form konfiguriert werden, dass der SAMBA Server auf einen<br />

bestehenden WINS Server zugreift und die dort bereitgestellten Namen dann im Netzwerk<br />

verteilt. In diesem Fall kann SAMBA aber nicht als secondary WINS Server neben<br />

einem Microsoft WINS Server oder einem zweiten SAMBA Server verwendet werden.<br />

1.2.2 DNS (Domain Name Service)<br />

Die Referenzimplementierung für einen Domain Name Service ist BIND (Berkeley Internet<br />

Name Domain), die vom Internet Software Consortium (ISC) herstellerunabhängig<br />

weiterentwickelt und gepflegt wird. Die aktuellste <strong>Version</strong> ist Bind 9.4.1-P1, die u.a. dynamisches<br />

DNS (DDNS), DNSSEC und IPv6 unterstützt. BIND ist ein Open Source<br />

Softwarepaket, welches unter BSD-Lizenz steht und für zahlreiche Betriebssysteme wie<br />

UNIX, NetBSD, FreeBSD, OpenBSD, Linux, Mac OS X und Windows NT/2000/2003 zur<br />

Verfügung steht. In vielen Linux-Distributionen wird BIND standardmäßig mitgeliefert.<br />

1.2.3 Dynamic Host Configuration Protocol (DHCP)<br />

Die Referenzimplementierung des DHCP wird ebenfalls vom ISC weiterentwickelt und<br />

gepflegt. Das Protokoll und die Software haben folgende Aufgaben beziehungsweise<br />

Möglichkeiten:<br />

� Automatische Zuweisung von IP-Adresse nach IPv4 und Rechnernamen an<br />

Clients. DHCP erlaubt sowohl die Zuweisung fester IP-Adressen (anhand der<br />

MAC Adresse) als auch die dynamische Zuweisung einer freien Adresse aus einem<br />

festgelegten Adressbereich.<br />

� Automatische Übermittlung von Informationen über die Netzwerkinfrastruktur.<br />

Zum Beispiel können über DHCP der Domänenname und der Nameserver, die<br />

Default-Route und die Netzmaske zentral verwaltet an alle Clients verteilt werden.<br />

� Darüber hinaus lassen sich eine große Zahl fest definierter optionaler Felder sowie<br />

frei definierbare Informationen zur Host-Konfiguration durch den dhcpd ausliefern.<br />

Dies beinhaltet auch sämtliche vom Windows-Clients verwertbaren Optionen,<br />

die im vorherigen Kapitel aufgeführt sind.<br />

� Zusätzlich kann der dhcpd auch die Rolle eines bootpd übernehmen und so einem<br />

Client alle für das Booten über Netz erforderlichen Informationen übermitteln.<br />

Seite 232


Der ISC dhcpd ermöglicht bezüglich aller auszuliefernden Informationen sowohl die<br />

Verwaltung von individuellen Clients als auch die zusammenfassende Konfiguration für<br />

Klassen und Subnetze. In der Konfiguration des ISC dhcpd ist außerdem die bedingte<br />

Zuweisung von Host-Konfigurationsdaten durch IF-Anweisungen möglich.<br />

Der dhcpd kann in einer Failover-Konfiguration betrieben werden, um Hochverfügbarkeit<br />

zu realisieren. Die dynamisch verwalteten IP-Bereiche werden dann zwischen den sich<br />

gegenseitig ersetzenden Servern koordiniert. Diese Konfiguration kann auch für Load-<br />

Balancing genutzt werden.<br />

Die Konfiguration des ISC dhcpd geschieht im traditionellen UNIX-Stil durch eine ASCII<br />

Konfigurationsdatei. Es existiert ein Patch, mit dem die Konfiguration des ISC-DHCP-<br />

Servers dynamisch aus einem LDAP-Repository bezogen werden kann. Die Implementierung<br />

folgt dem IETF Draft zum LDAP Schema für DHCP.<br />

IPv6 wird fast in allen Linux-Distributionen unterstützt. Hier, wie in vielen anderen Hard-<br />

und Softwarekomponenten, ist ein IP-Dual-Stack implementiert. Die parallele Unterstützung<br />

von IPv6 und IPv4 wird in der Regel automatisch mit jeder Standard-Installation<br />

bereitgestellt. Je nach Distribution ist die IPv6-Unterstützung direkt aktiviert oder sie<br />

kann optional aktiviert werden. Mit dem implementierten Dual-Stack kann ein Rechner<br />

sowohl mit einen IPv6- als mit einem IPv4-Rechner kommunizieren. Innerhalb von homogenen<br />

IPv6- oder IPv4-Netzen ist die Kommunikation zwischen den Rechnern prinzipiell<br />

kein Problem. Will man aber zwei IPv6-Netze über ein IPv4-Netz miteinander verbinden,<br />

so erfordert dies in der Regel eine Tunnelung der IPv6-Kommunikation über<br />

IPv4. Dies ist immer dann von Interesse, wenn das Internet als Verbindungsglied genutzt<br />

wird. Hier ist eine native IPv6-Unterstützung eher schwach ausgeprägt. Es gibt aber sogenannte<br />

„tunnel broker―, welche die Möglichkeit bieten, in der Regel kostenneutral,<br />

IPv6-Kommunikation über IPv4 zu tunneln.<br />

Damit kann zusammenfassend angemerkt werden, dass die Open Source Implementierungen<br />

uneingeschränkt geeignet sind, um Netzwerke aufzubauen und zu betreiben. Sie<br />

haben durch ihre Zuverlässigkeit den Weg für alle anderen Implementierungen gewiesen,<br />

wie ihr langjähriger, erfolgreicher Einsatz im Rahmen des Internets belegt.<br />

Aus historischen und architektonischen Gründen waren in vielen der hier beschriebenen<br />

Protokolle kaum Sicherheitsmechanismen vorgesehen. Einzelne Protokolle eröffneten<br />

daher in der Vergangenheit immer Angriffsmöglichkeiten, die jedoch durch Erweiterungen<br />

der Protokolle beziehungsweise durch andere Protokolle stets schnell geschlossen<br />

werden konnten.<br />

Seite 233


2 Migrationspfade<br />

Auch wenn im lokalen Netz die Anforderungen bezüglich Interoperabilität aufgrund der<br />

begrenzten Anzahl beteiligter Systeme überschaubar bleiben, ist die Bewahrung der<br />

offenen Standards von essenzieller Bedeutung. Insbesondere bei herstellerspezifischen<br />

Änderungen beziehungsweise Erweiterungen von Standards ist regelmäßig die Gefahr<br />

eines „Vendor Lock-In― gegeben. Das heißt, einerseits wird die Bindung an diesen Hersteller<br />

bis hin zur Abhängigkeit gefestigt, andererseits geht die Definitionsmacht bezüglich<br />

der Fortentwicklung und der Interoperabilität von Fremdsystemen, jedenfalls im Wirkungsbereich<br />

der Erweiterung, auf den Hersteller über.<br />

Vor diesem Hintergrund sollte in jedem Fall geprüft werden, ob die mit einer herstellerspezifischen<br />

Erweiterung eines Standards versprochenen Verbesserungen auch eine<br />

langfristige Perspektive ermöglichen. Die Verwendung der seit langer Zeit existierenden<br />

und bewährten Referenzimplementationen kann möglicherweise nicht mit jedem Feature<br />

aufwarten. Sie bieten aber die Gewähr für eine dauerhafte Interoperabilität mit allen<br />

netzwerkfähigen Systemen.<br />

Eine Migration von einzelnen Netzwerkdiensten, losgelöst von anderen Migrationen wie<br />

zum Beispiel der Dateiablage und des Authentisierungdienstes, von einer Windows<br />

Landschaft zu einer Unix Landschaft oder umgekehrt ist in der Regel nicht sinnvoll. Gegebenenfalls<br />

kann es auf Grund bestimmter Rahmenbedingungen (zum Beispiel Infrastrukturanforderungen<br />

/ technische Vorgaben) Ausnahmen geben. Typische Beispiele<br />

hierfür sind der DNS und der DHCP Dienst.<br />

Aber auch andere Abhängigkeiten müssen berücksichtigt werden. Zum Beispiel benötigt<br />

Exchange 2003 zwingend einen WINS Dienst. Das heißt, wenn die Netzwerkdienste<br />

migriert werden und Exchange 2003 eingesetzt wird, muss zwingend ein SAMBA Server<br />

aufgebaut werden, um den WINS Dienst anzubieten.<br />

Die Migration von Netzwerkdiensten kann normalerweise als sanfte Migration durchgeführt<br />

werden. Hierbei wird die eine Infrastruktur aufgebaut, beide Infrastrukturen werden<br />

für einen gewissen Zeitraum parallel betrieben und anschließend wird die „alte― Infrastruktur<br />

abgeschaltet. Dabei ist wichtig zu prüfen, ob die an der Netzwerkkommunikation<br />

beteiligten Geräte wie Switche, Router und so weiter gegebenenfalls umkonfiguriert werden<br />

müssen.<br />

Eine Migration von Netzwerkdiensten ist aus heutiger Sicht technisch als unkritisch einzustufen.<br />

Die Netzwerkdienste sowohl in einer OSS Umgebung als auch in aktuellen<br />

Windowsumgebungen sind ausgereift und weltweit im Einsatz. Meistens werden die<br />

Netzwerkdienste nur dann geändert, wenn ein Wandel in der IT- Architektur durchgeführt<br />

wird. Alle hier aufgeführten Netzwerkdienste können auf allen gängigen Netzwerkinfrastrukturkomponenten<br />

betrieben und in einem Netzwerk angeboten werden. Da bei der<br />

Migration die funktionalen Unterschiede von besonderer Bedeutung sind, wird auf diese<br />

im Rahmen der Migrationspfade eingegangen.<br />

2.1 Migration Netzdienste Windows NT/2000 nach Windows 2003<br />

In den folgenden Absätzen werden kurz die Neuerungen hinsichtlich der oben genannten<br />

Netzwerkdienste beschrieben, die mit der Einführung von Windows 2000 einhergehen.<br />

Seite 234


Eine Migration innerhalb einer Windowsinfrastruktur ist, bezogen auf die Netzwerkdienste,<br />

inzwischen problemlos durchzuführen. In der Regel wird dies durch ein Update von<br />

vorhandener Software (zum Beispiel durch Service Packs und Patches) oder durch die<br />

Neuinstallation von entsprechenden Servern erreicht. Bei der Nutzung von Service<br />

Packs oder Patches besteht jedoch die Gefahr, dass gegebenenfalls Softwareversionen<br />

der Netzwerkdienste eingespielt werden, die evtl. nicht zu allen genutzten Applikationen<br />

kompatibel sind. Dies ist insbesondere dann der Fall, wenn umfassende Service Packs<br />

eingespielt werden, die nicht ausschließlich zum Update der Netzwerkdienste vorgesehen<br />

sind. Daher sollten diese (genauso wie Neuinstallationen) auch auf Ihre Kompatibilität<br />

zu der IT-Infrastruktur und den genutzten Applikationen getestet werden.<br />

2.1.1 WINS<br />

Hinsichtlich WINS bietet Windows 2000/2003 keine architektonischen Neuerungen. In<br />

Windows 2000/2003 ist lediglich das Management der WINS Datenbank verbessert worden.<br />

2.1.2 DNS<br />

Die größten Änderungen durch die Einführung von Windows 2000/2003 hat der DNS<br />

Dienst erfahren. Der Hauptgrund hierfür ist, dass Windows 2000/2003 Active Directory<br />

als primäre Namensauflösung DNS benutzt beziehungsweise ohne DNS nicht funktioniert.<br />

Active Directory verwendet DNS u.a. zur Auffindung der Dienste hinsichtlich Anmeldung<br />

und Suche (LDAP Service, Global Catalog Service und Kerberos KDC). Für die<br />

Eintragung von Diensten muss das DNS sogenannte SRV Records gem. RFC 2052 unterstützen.<br />

Da das bisherige DNS statisch funktionierte (Einträge mussten manuell vorgenommen<br />

werden), ist in Windows 2000/2003 auch im Hinblick auf den angestrebten<br />

Wegfall von WINS eine dynamische Registrierung implementiert worden: Rechner können<br />

ihre A und SRV Records dynamisch eintragen. Die Implementierung folgt dabei dem<br />

RFC 2136 (Dynamic Update). Computer mit Windows 2000 und höher können sich<br />

selbst dynamisch registrieren (Realisierung im DHCP Client). Windows NT und Windows<br />

9x können das nicht. Sie benötigen die Hilfe eines Windows 2000 DHCP Dienstes. Das<br />

dynamische Registrieren impliziert eine architektonische Änderung der bisherigen DNS<br />

Implementierung, in der nur ein DNS Server (der primäre) die Zoneninhalte schreiben<br />

kann. Microsoft realisiert ein Multi-Master-Prinzip, indem es DNS ins Active Directory<br />

integriert. Die DNS Einträge sind somit Objekte der Datenbank des Active Directory und<br />

werden auf diese Weise repliziert. Eine dynamische Registrierung ohne Active Directory<br />

Integration existiert nicht. Die dynamische Registrierung kann durch Sicherheitsmechanismen<br />

reglementiert werden, sodass sich nur jene Computer registrieren können, die<br />

sich auch authentifizieren können (zum Beispiel Windows 2000 Clients der zugehörigen<br />

Domäne). Windows 2000/2003 unterstützt das sogenannte „Secure Update― gemäß<br />

GSS-API laut RFC 2078; die RFCs 2535 (Domain Name System Security Extensions)<br />

oder 2137 (Secure Domain Name System Dynamic Update) sind nicht realisiert.<br />

Seite 235


2.1.3 DHCP<br />

Hinsichtlich DHCP bietet Windows 2000/2003 einige nennenswerte Neuerungen. Unter<br />

Windows 2000/2003 werden die aktuellen RFCs 2131 (Dynamic Host Configuration Protocol,<br />

ehemals RFC 1541) und 2132 (DHCP Options and BOOTP Vendor Extensions)<br />

unterstützt. Neben dem verbesserten Management werden Multicast Scopes, benutzer-<br />

und herstellerspezifische DHCP Optionen sowie dynamisches BOOTP unterstützt.<br />

Eine weitere Neuerung ist die Integration von DHCP und DNS innerhalb eines Windows<br />

2000/2003 Netzwerkes. Clients mit Windows NT 4 oder älter unterstützen keine dynamische<br />

Registrierung ihrer DNS-Namen im Windows 2000/2003 dynamischen DNS. Sofern<br />

diese Clients ihre IP Konfiguration von einem Windows 2000/2003 DHCP Server beziehen,<br />

kann der DHCP Server die Registrierung im DNS übernehmen.<br />

2.2 Migration von Windows DNS (BIND 8) nach Linux BIND 9<br />

Eine Migration des Windows DNS zu Linux mit BIND 9 ist sowohl bei einer Ausgangssituation<br />

von DNS unter Windows NT als auch unter Windows 2000/2003 problemlos<br />

durchzuführen.<br />

In beiden Fällen ist die prinzipielle Vorgehensweise identisch; es ändert sich nur das<br />

Verfahren, um den neuen DNS Server mit Daten zu füllen und die BIND 9 Datenbank<br />

aufzubauen. Dieses prinzipielle Vorgehen sieht wie folgt aus:<br />

� Aufbau / Konfiguration eines neuen Servers.<br />

� Konfiguration (Anpassung von IP Adressen der DNS Server) von DHCP Servern<br />

(evtl. Clients bei festen IP Adressen). Eine Übernahme der Konfiguration des<br />

Servers ist in keinem Fall möglich, da hier deutliche syntaktische Unterschiede<br />

vorliegen.<br />

� Übernahme der Daten (Zoneneinträge) vom bestehenden Server auf den neuen<br />

Server.<br />

� Inbetriebnahme des neuen Servers inklusive DNS Dienst und Abschaltung des<br />

alten DNS Servers: Alle Windows Endgeräte können BIND 9 zur Namensauflösung<br />

nutzen. Daher ist der Einsatz eines Linux Servers (oder auch eines anderen<br />

Unix Servers) mit BIND 9 als DNS Server aus Sicht eines Windows Endgerätes<br />

unkritisch.<br />

Bei der Übernahme der Zoneneinträge von einem Server auf den anderen können je<br />

nach Ausgangssituation unterschiedliche Vorgehensweisen gewählt werden:<br />

� DNS unter Windows NT 4.0<br />

Da in diesem Fall kein dynamisches DNS unterstützt wird 194 , besteht nur die<br />

Möglichkeiten, entweder einen Zonentransfer durchführen oder die Zoneneinträge<br />

manuell zu übertragen. Im zweiten Fall ist zu beachten, dass die<br />

syntaktischen Vorgaben der neuen Umgebung einzuhalten sind. Bei der<br />

Verwendung eines Zonentransfers sollten die syntaktischen Unterschiede, trotz<br />

194 http://support.microsoft.com/kb/251370/de?spid=1131&sid=936<br />

Seite 236


der Tatsache, dass BIND 9 bezüglich syntaktischer und logischer Fehler nicht so<br />

„fehlertolerant― wie seine Vorgänger ist 195 , zu keinen Problemen führen, da BIND<br />

9 hierbei auf Basis der Zoneneinträge auf dem Windows DNS-Server selbst seine<br />

Zoneneinträge anlegt und dabei in der Regel die korrekte Syntax verwendet.<br />

� DNS unter Windows 2000/2003<br />

Bei dieser Ausgangssituation besteht neben den zuvor genannten Vorgehens-<br />

weisen noch die Möglichkeit, die Funktion des dynamischen DNS zu nutzen, die<br />

auch von BIND 9 unterstützt wird. Dabei wird der neue BIND 9 DNS-Server im<br />

Parallelbetrieb durch die Funktion des dynamischen DNS automatisch befüllt.<br />

2.3 Migration von Windows DHCP nach Linux DHCP<br />

Die Migration des DHCP Dienstes von Windows nach Linux kann ohne Unterbrechung<br />

des Betriebs in der Organisationseinheit verwirklicht werden, da der Linux DHCP Server<br />

parallel zum Windows DHCP Server aufgebaut werden kann. Eine parallele Nutzung von<br />

beiden Servern während der Migration ist zwar möglich, wird aber nicht empfohlen. Sollte<br />

dies nötig sein, ist darauf zu achten, dass die IP Bereiche, in denen der alte DCHP<br />

Server IP Adressen dynamisch vergibt, in dem neuen Server als reservierte Bereiche<br />

voreingestellt werden. Nachdem der alte Server abgeschaltet wurde, können diese Bereiche<br />

freigegeben werden, sofern eine positive Prüfung erfolgte, dass der Client keine<br />

IP Adresse aus diesem Bereich mehr in Anspruch nimmt. Diese Prüfung kann durch<br />

entsprechende Tools oder mit Hilfe des ping Befehls im Vorfeld durchgeführt werden.<br />

Bei einer Migration des DHCP Dienstes besteht prinzipiell immer die Gefahr, dass der<br />

neue DHCP Server IP Adressen in einem Bereich vergibt, die vom alten DHCP Server<br />

genutzt wurden. Hierdurch können doppelte IP Adressen im Netzwerk entstehen. Dieses<br />

Risiko kann, wie beschrieben, durch die entsprechende Konfiguration des DHCP Servers<br />

vermieden werden. Darüber hinaus gibt es auch Tools, die eine solche Migration<br />

unterstützen, indem sie zum Beispiel im Vorfeld einer IP Vergabe prüfen, ob die IP Adresse<br />

bereits im Netzwerk vorhanden ist.<br />

Es ist aber darauf zu achten, dass verschiedene Einstellungen des Windows DHCP Servers<br />

vor der Inbetriebname des Linux DHCP Servers auf diesen übertragen werden.<br />

Dies kann gegebenenfalls per Skript oder manuell erfolgen. Auf folgende Einstellungen<br />

muss geachtet werden:<br />

� Fest vergebene und im DHCP als reserviert markierte IP Adressen (dies sind in<br />

der Regel Drucker, Server, Netzwerkkomponenten usw.)<br />

� Gesperrte IP Bereiche (zum Beispiel für IP Segmente, die einer anderen Verwaltung<br />

unterliegen, aber Bestandteil der Infrastruktur einer Organisationseinheit<br />

sind)<br />

� Dauer der max-lease-time<br />

� Dauer der deafult-lease time<br />

195 http://www.oreillynet.com/pub/a/oreilly/networking/news/dnsandbind_0401.html<br />

Seite 237


Insbesondere sollte die Dauer der Lease Time während der Migration einheitlich sein.<br />

Lease Time ist die Dauer, in der der DHCP Client keine neue IP Adresse beim Server<br />

anfragt. Je nach verwendeten Clients (Laptops oder Desktops) beträgt die Lease Time<br />

üblicherweise 1 bis 5 Tage. Im Vorfeld einer Migration empfiehlt es sich, die Lease Time<br />

der Clients auf 1 Stunde herabzusetzen. Dies sollte entsprechend der größten eingestellten<br />

max-lease-time geschehen. Das heißt, wenn diese zum Beispiel auf 5 Tage eingestellt<br />

wurde, sollte diese Umstellung mindestens 6 Tage vor der geplanten Migration der<br />

DHCP Server durchgeführt werden. Dies sorgt dafür, dass Endgeräte, die beispielsweise<br />

ständig angeschaltet (zum Beispiel Drucker) sind, nach dem Abschalten des alten DHCP<br />

Servers innerhalb von maximal einer Stunde eine neue IP Adresse anfragen. Wird zum<br />

Beispiel der alte Server am Abend abgeschaltet, kann davon ausgegangen werden,<br />

dass alle Geräte, die über Nacht in Betrieb waren, am nächsten Morgen ihre IP Adresse<br />

von dem neuen DHCP Server bezogen haben. Diese Umstellung kann dann wieder zurückgenommen<br />

werden, nachdem alle Clients vom neuen Server IP Adressen bezogen<br />

haben.<br />

2.4 WINS/NetBIOS(Windows) nach Samba mit WINS/NMDB<br />

Die Namensauflösung für Windows-Dienste und -Rechner wird nach einer OSS-<br />

Migration durch den nmbd vom Samba-Paket übernommen. Dabei können einerseits die<br />

bei Windows üblichen broadcastbasierten Browserdienste sowohl als Client als auch als<br />

lokaler oder domänenweiter Master Browser genutzt werden. Andererseits kann der<br />

nmbd aber auch als WINS die Koordinierung der Browser über die Grenzen von Netzsegmenten<br />

hinweg leisten, die üblicherweise mit Routern, die keine Broadcasts durchlassen,<br />

verbunden sind. Der WINS Dienst wird bei einem SAMBA Server automatisch<br />

installiert und konfiguriert und steht sofort nach der Inbetriebnahme des Samba Servers<br />

zur Verfügung. Hierbei übernimmt ein SAMBA PDC die Rolle eines Master Browsers.<br />

Spezielle Anpassungen oder Konfigurationen sind in der Regel nicht notwendig, können<br />

aber individuell durchgeführt werden.<br />

3 Bezüge<br />

Für das Thema Netzwerkdienste sind bezüglich der Migration keine besonderen Bezüge<br />

zu benennen. Bei der Migration eines Netzwerkdienstes sollte klar sein, welche anderen<br />

Infrastrukturdienste und Anwendungen diesen benötigten und welche speziellen Funktionalitäten<br />

sie benötigen. Dies ist aber kein spezieller Punkt für die Bezüge sondern<br />

sollte Bestandteil der Anforderungsanalyse eines jeden Migrationsprojektes sein. Siehe<br />

hierzu auch Kapitel I.D 2.<br />

Seite 238


E Thema Dateiablage<br />

Für die physikalische Speicherung von Daten auf Plattensystemen von Servern werden<br />

Dateisysteme wie XFS, EXT4, FAT oder NTFS benötigt. Über die physikalische Speicherung<br />

hinaus werden noch weitere Funktionen für eine Dateiablage benötigt. Hierzu gehören<br />

u.a. die Vergabe von Zugriffsberechtigungen auf Datei- und Verzeichnisebene, das<br />

Verwalten von Quotas, Journaling-Funktionalitäten und gegebenenfalls Funktionen zur<br />

Verschlüsselung von Dateisystemen.<br />

1 Produkte / Technologien<br />

Anmerkung: Die Bezeichnung „Windows Server― bezieht sich in diesem Kapitel stets auf<br />

alle <strong>Version</strong>en von Windows Servern ab Windows NT4.0 Server bis zur aktuellen<br />

<strong>Version</strong> Windows Server 2003 R2. Wird von dieser Definition abgewichen, so wird die<br />

genaue <strong>Version</strong>sbezeichnung des Windows Servers aufgeführt.<br />

1.1 Linux und Samba mit SMB/CIFS und POSIX<br />

Erstmals im Jahre 1992 veröffentlicht, diente Samba dazu, einen Datenaustausch<br />

zwischen SunOS und Ultrix zu gewährleisten. 1999 wurde Samba in der <strong>Version</strong> 2.0<br />

veröffentlicht. Diese <strong>Version</strong> lief auch unter Linux und mit ihr wurden Benchmarktests<br />

gegenüber Windows NT 4.0 Server durchgeführt. Die Erweiterung um das SMB-<br />

Protokoll, das es, Windows Clients ermöglicht, auf die Daten zuzugreifen, wurde von<br />

Microsoft, SCO, IBM und Apple implementiert.<br />

Die aktuelle <strong>Version</strong>sreihe von Samba ist die <strong>Version</strong>sreihe 3. Diese wird zurzeit noch<br />

weiterentwickelt. Gleichzeitig wird eine Samba <strong>Version</strong> 4 entwickelt. Samba 4.0 alpha 1<br />

ist aktuell verfügbar, doch diese <strong>Version</strong> ist für den produktiven Einsatz noch nicht<br />

freigegeben. Am 11. September 2007 wurde die zurzeit letzte <strong>Version</strong> von Samba mit<br />

der <strong>Version</strong>snummer <strong>3.0</strong>.26a veröffentlicht. Die Veränderungen zur Vorgängerversion<br />

können unter http://de.samba.org/samba/ nachgeschlagen werden. Gemäß der unter<br />

http://samba.sernet.de/ 196 veröffentlichten Erklärung des Samba-Teams werden alle<br />

<strong>Version</strong>en ab der <strong>Version</strong> 3.2 unter der GNU General Public License in der <strong>Version</strong> 3<br />

veröffentlicht. Demnach sollte die aktuelle <strong>Version</strong> noch unter GPLv2 stehen.<br />

Samba ist in mehrerer Hinsicht ein Nachbau des Windows Server Dienstes für Dateiablage,<br />

Druckdienste und Authentifizierung. Für die Anwender stellt sich Samba in größter<br />

Näherung genau wie ein Windows Server dar. Für die Administratoren ist Samba andererseits<br />

ein UNIX-Server. W2K / Windows 2003 als Produktnachfolger von Windows NT<br />

4.0 Server bringt für die Anwender kaum mehr Änderungen bezüglich des Windows Servers<br />

als ein Samba-Server. Für die Administratoren ergeben sich allerdings u.a. mit der<br />

Einführung von Active Directory mit den Komponenten DNS, LDAP und Kerberos umfangreiche<br />

Änderungen.<br />

Der Samba-Server erfüllt wie ein Windows Server die Anforderungen an eine Dateiablage.<br />

Die Benutzer von Windows-Clients können ihre Benutzerprofile und Logon-Scripts<br />

196 Stand 01.11.2007<br />

Seite 239


ebenso von einem Samba-Server beziehen wie ihre Heimat- oder Gruppenverzeichnisse.<br />

Die ausführbaren Programme (.exe) können auch auf einem Samba-Server abgelegt<br />

(und von dort gestartet) werden, wie Access Datenbankdateien oder andere durch Lock-<br />

Mechanismen für den Mehrbenutzerbetrieb vorgesehene Dateien.<br />

Im Unterschied zu einem Windows Server verwendet Samba als Netzwerkprotokoll ausschließlich<br />

TCP / IP. Für die auf den Protokollen SPX / IPX (Novell) und Appletalk (Apple)<br />

basierenden Dienste existieren andere Open Source Server (Mars und Netatalk), die<br />

in einer heterogenen Netzwerkumgebung das Arbeiten auf einem gemeinsamen Datenbestand<br />

ermöglichen. Eine auf dem alten NetBEUI basierende Implementierung von<br />

SMB wird von Samba nicht angeboten. Auch NetBIOS über IPX wird nicht unterstützt.<br />

Die clientseitig unter Windows üblichen Werkzeuge zur Bearbeitung / Verwaltung der<br />

Dateien auf der Dateiablage stehen weiterhin zur Verfügung. Insbesondere können der<br />

Explorer und der Datei Manager sowie die mit Windows mitgelieferten Kommandozeilenprogramme<br />

cacls.exe, zum Setzen der Access Control Lists und xcacls.exe für denselben<br />

Zweck unter Windows 2000/2003 Server und so weiter verwendet werden. Auch<br />

der Benutzermanager kann mit Samba <strong>3.0</strong> weiter genutzt werden. Der Einsatz des Servermanagers<br />

ist im Prinzip möglich, eignet sich jedoch aufgrund der damit verbundenen<br />

Abkehr von der transparenten Serverkonfiguration mittels der Konfigurationsdatei<br />

smb.conf wenig.<br />

Die Herstellung der Verbindungen zu den Freigaben lässt sich ohne Änderung weiterhin<br />

durch Logon-Scripts automatisiert oder durch Browsen der Netzwerkumgebung interaktiv<br />

durchführen.<br />

Das Rechtesystem von Samba und Linux ermöglicht es, privilegierten Prozessen wie<br />

zum Beispiel einem Virenscanner auf dem Server lokal Zugang zu allen Dateien in den<br />

Heimatverzeichnissen der Benutzer zu gewähren und gleichzeitig den Zugriff über das<br />

entsprechende Netzlaufwerk ausschließlich dem Benutzer selbst zu gestatten.<br />

Auch in Umgebungen mit Windows Terminalservern lässt sich der Samba-Server zur<br />

Dateiablage und zur Authentifizierung verwenden. Allerdings werden die für Terminalserver<br />

spezifischen Security-Account-Manager (SAM) - Objekterweiterungen von Samba<br />

nicht unterstützt.<br />

Die Behandlung von Dateisperren (Locking sowohl auf komplette Dateien als auch auf<br />

Teilbereiche dieser) wird von Samba exakt wie vom Windows Server geleistet. Das<br />

heißt, dass sowohl die kooperative Bearbeitung von Dateien als auch die Benutzung von<br />

dateibasierenden Datenbanken mit Samba ebenso möglich ist wie mit einem Windows<br />

Server.<br />

Die Quotierung von Plattenplatz (sowie von anderen Systemressourcen) wird durch das<br />

Linux-Betriebssystem angeboten und steht damit auch für die vom Samba-Server angebotene<br />

Dateiablage zur Verfügung.<br />

Seite 240


Für Datensicherung und <strong>Version</strong>ierung / Archivierung stehen unter Linux verschiedene<br />

Open Source Tools zur Verfügung. Zusätzlich lassen sich Linux-Server problemlos in die<br />

Sicherungskonzepte der meisten marktüblichen Produkte einbinden 197 .<br />

Eine Hochverfügbarkeit, wie sie unter Windows durch Clustering mit der Enterprise Edition<br />

erreicht wird, lässt sich mit Samba ebenfalls auf Basis von Distributed Block Devices<br />

(DRBD), shared iSCSI oder Storage Area Network (SAN) mit IP Failover realisieren.<br />

Die funktionalen Einschränkungen bezüglich der Vorgängerversionen von Samba 3.x<br />

konnten inzwischen deutlich reduziert werden. Mit der Samba <strong>Version</strong> <strong>3.0</strong> ist es möglich,<br />

zwischen Master- und Ressourcendomänen Vertrauensstellungen aufzubauen und das<br />

Windows NT Domänenkonzept zu realisieren. Die <strong>Version</strong> <strong>3.0</strong> eröffnet auch die Möglichkeit,<br />

den Windows Benutzermanager zur Benutzer-Administration einzusetzen. Beispielsweise<br />

können so neue Benutzer angelegt werden.<br />

Eine Möglichkeit zur Replikation zwischen Windows-Domänen-Controller und Samba-<br />

Domänen-Controller besteht weiterhin nicht, innerhalb einer Domäne können somit nur<br />

reine Windows beziehungsweise Samba-Domänen-Controller eingesetzt werden. Falls<br />

die Integration von Windows-Serverdiensten in einer Samba-Domäne notwendig ist,<br />

können diese als Mitgliedserver integriert werden. Die SAM-Replikation in einer reinen<br />

Samba-Domänen-Controller Umgebung ist problemlos durch die Kombination von Samba<br />

und OpenLDAP möglich. Für die Funktionalität der SAM-Replikation ist die Kombination<br />

von Samba und OpenLDAP 198 unverzichtbar. OpenLDAP dient Samba zur Verwaltung<br />

der Gruppen und Benutzern und bietet auch die notwendigen Replikationsmechanismen.<br />

1.1.1 Zugriffssteuerung: Abbildung der Rechteprofile von Windows auf POSIX<br />

Access Control Lists (ACL)<br />

Die Regelung der Zugriffsrechte auf Verzeichnisse und Dateien durch einen Samba-<br />

Server entspricht im Wesentlichen den von Windows Server bekannten Prinzipien. Auch<br />

unter Samba werden einzelne Verzeichnisse aus dem Dateisystem des Servers als Shares<br />

im Netzwerk zur Verfügung gestellt. Die Details der Zugriffsregelung werden auf<br />

Grundlage der im serverseitig verwendeten Dateisystem festgelegten Rechte für einen<br />

jeweils individuell beim Samba-Server authentifizierten Benutzer ermittelt. Die Autorisierung<br />

ist also ein Zusammenspiel zwischen dem Samba-Server und dem Betriebs-<br />

beziehungsweise dem Dateisystem.<br />

Shares (Freigaben) und ihre serverseitigen Eigenschaften wie Verzeichnispfad, Gewährung<br />

von anonymem Zugriff und allgemeiner Schreibschutz sind unter Samba typischerweise<br />

in einer für jede Serverinstanz eindeutigen Konfigurationsdatei geregelt und ausgewiesen.<br />

Die Bearbeitung dieser Konfigurationsdatei kann auch über ein Web-Fontend<br />

durchgeführt werden. Es ist zu empfehlen, im Vorfeld eine entsprechende Authentifizierung<br />

/ Autorisierung mit verschlüsseltem Protokoll HTTPS durchzuführen.<br />

197 Im Vorfeld ist jedoch eine genaue Evaluierung der Produkte vorzunehmen, da es auch Produkte<br />

gibt die Probleme mit der Sicherung von ACLs aufweisen. Dieses Problem gilt zum<br />

Beispiel beim Einsatz von NetBackup (Veritas) beim Sichern XFS ACLs. Ext3 ACLs werden<br />

in diesem Produkt allerdings unterstützt.<br />

198 Es können auch andere LDAP Verzeichnisdienste genutzt werden.<br />

Seite 241


Zugriffsrechte auf Verzeichnisse und Dateien werden bei allen Betriebssystemen in der<br />

funktionalen Betriebssystemkomponente des Dateisystems abgehandelt. Während es<br />

beim FAT Dateisystem von DOS und älteren Windows-<strong>Version</strong>en noch kein Eigentümerkonzept<br />

für Dateien gab, werden unter UNIX seit jeher und unter Windows mit dem Dateisystem<br />

NTFS Eigentümer und Benutzergruppen für Dateien unterschieden. Welche<br />

Benutzer mit welchen Verzeichnissen und Dateien auf welche Art umgehen dürfen, wird<br />

vom Dateisystem über eine Liste von Zugriffsrechten, sogenannte Access Control Lists<br />

gesteuert.<br />

Unter UNIX sind für alle Dateien mindestens die Zugriffsrechte zum Lesen, Schreiben<br />

und Ausführen für den Eigentümer, eine Eigentümergruppe und alle übrigen Systembenutzer<br />

definiert. Zusätzliche Einschränkungen oder die Gewährung von Rechten für andere<br />

Benutzer oder Benutzergruppen können bei einigen UNIX / Linux Dateisystemen<br />

über erweiterte Attribute und POSIX Access Control Lists realisiert werden.<br />

Samba als Fileserver hält seine Daten in einem UNIX Dateisystem und greift mit den<br />

effektiven Rechten des jeweils für einen Zugriff authentifizierten Benutzers auf die Daten<br />

zu. Der Samba-Server kann theoretisch zusätzliche Beschränkungen für den Zugriff<br />

auflegen, über die im Dateisystem festgelegten Beschränkungen kann sich der Server<br />

aber in keinem Fall hinwegsetzen. Sowohl bei der Übermittlung der bestehenden<br />

Zugriffs-rechte vom Server an den Client als auch bei der Manifestierung von clientseitig<br />

initiierten Änderungen verwendet der Samba-Server den Rechtekanon des Dateisystems,<br />

in dem er die Benutzerdaten ablegt und verwaltet. Deshalb muss bei einer<br />

Migration das Rechtemodell von Windows in die UNIX-Welt überführt werden. Im<br />

Folgenden wird beschrieben, wie diese Abbildung vor sich geht und welche Besonderheiten<br />

und Einschränkungen dabei zu beachten sind. Die Autoren des Leitfadens gehen<br />

dabei davon aus, dass unter Linux ein Dateisystem mit Unterstützung für POSIX-ACL<br />

verwendet wird. Zurzeit sind das die Dateisysteme XFS, JFS sowie mit entsprechenden<br />

Mount-Optionen reiserfs, EXT2 und EXT3.<br />

1.1.2 Abbildung der NTFS-ACL in das Rechtesystem von Linux<br />

Bei der Abbildung der Windows ACL auf die POSIX ACL von Linux wird das Rechtesystem<br />

so weit reduziert, dass das Bild im Wesentlichen der einfachen Darstellung in den<br />

Sicherheitseinstellungen entspricht.<br />

POSIX ACLs kennen nur Rechte zum Lesen, Schreiben und Ausführen. Verschiedene<br />

Arten zu unterscheiden wie Daten schreiben, Daten anhängen, Attribute schreiben und<br />

Erweiterte Attribute schreiben gibt es bei den POSIX ACL nicht. Bei der Abbildung des<br />

Rechtesystems von Windows über Samba nach UNIX können deshalb immer nur<br />

komplette Aggregationen der Windows Rechte im UNIX Dateisystem abgebildet werden.<br />

Umgekehrt kann der Samba-Server auch nur solche Rechte-Aggregationen an den<br />

Windows-Client melden.<br />

Seite 242


W<br />

I<br />

N<br />

D<br />

O<br />

W<br />

S<br />

Ordner durchsuchen /<br />

Datei ausführen<br />

Ordner auflisten / Daten<br />

lesen<br />

Seite 243<br />

POSIX Berechtigungen<br />

Lesen Schreiben Ausführen<br />

X<br />

Attribute lesen X (X) 199<br />

Erweiterte Attribute lesen X<br />

Dateien erstellen / Daten<br />

schreiben<br />

Ordner erstellen / Daten<br />

anhängen<br />

Attribute schreiben X<br />

Erweiterte Attribute<br />

schreiben<br />

Unterordner/<br />

Dateien löschen<br />

Löschen<br />

Berechtigungen lesen X X X<br />

Berechtigungen ändern<br />

Besitz übernehmen<br />

Tabelle 43: POSIX-Berechtigungen und Windows-Aggregationen<br />

Auf der Anwenderseite können mit den Windows-Dialogen durch Kombination der<br />

passenden NTFS-Berechtigungen die entsprechenden Kombinationen der POSIX-<br />

Berechtigungen erzeugt werden. Dabei ist zu beachten, dass das Setzen einer<br />

zusätzlichen NTFS-Berechtigung aus der Windows-Liste zum Setzen aller Berechtigungen<br />

des POSIX-Aggregats führt, zu dem auch das so gesetzte NTFS-Recht gehört.<br />

Wenn also beispielsweise für eine Datei, auf die bisher nur lesender Zugriff möglich war,<br />

in dem Dialog Berechtigungseintrag die Berechtigung Attribute schreiben gesetzt wird,<br />

so erweitert der Samba-Server automatisch die Rechte für Erweiterte Attribute schreiben,<br />

Daten schreiben und Daten anhängen. Nachdem also der Dialog mit OK beendet<br />

wurde, erscheint sofort beim nächsten Öffnen des Dialogfensters die neue, wesentlich<br />

erweiterte Rechteausstattung. Das Vorteilhafte daran ist, dass dieses Verhalten des<br />

Samba-Servers Fehlinterpretationen der einfachen Rechtedarstellung nicht zulässt.<br />

In der vereinfachten Darstellung der Sicherheitseinstellungen ist das Bild konsistent. Hier<br />

können die Berechtigungen Lesen und Schreiben einzeln und gemeinsam gesetzt<br />

werden sowie jeweils in Kombination mit Lesen/Ausführen. Letztere Sammelberechtigung<br />

kann nicht alleine gesetzt werden.<br />

199 Wird angezeigt, darf aber nicht gesetzt werden, sonst wird das gesamte Aggregat Lesen<br />

aktiviert.<br />

X<br />

X<br />

X


Die NTFS-Berechtigungen Unterordner/Dateien Löschen, Berechtigungen ändern und<br />

Besitzrechte übernehmen sind unter POSIX ACLs nicht abbildbar und führen beim Setzen<br />

daher zu keinerlei Resultat auf dem Samba-Server (in der Tabelle 43 abgegraut<br />

dargestellt). Bei Vollzugriff, also den kompletten Lese-, Schreib- und Ausführberechtigungen<br />

sind sie allerdings auch als gesetzt markiert.<br />

W<br />

I<br />

N<br />

D<br />

O<br />

W<br />

S<br />

Seite 244<br />

POSIX Berechtigungen<br />

Lesen Schreiben Lesen und<br />

Ausführen<br />

Lesen und<br />

Schreiben<br />

Lesen,<br />

Schreiben<br />

und Ausführen<br />

Vollzugriff X<br />

Ändern X<br />

Lesen/ Ausführen X X<br />

Ordnerinhalt<br />

auflisten<br />

(nur für Ordner)<br />

X<br />

(nur für<br />

Ordner)<br />

X<br />

(nur für<br />

Ordner)<br />

Lesen X X X X<br />

Schreiben X<br />

Tabelle 44: POSIX- und Windowsberechtigungen<br />

1.1.3 Abbildung der Vererbungsfunktion<br />

Die POSIX-ACL Implementation verfügt lediglich über passive Vererbung. Eine aktive<br />

Vererbung wie im NTFS ist nicht abbildbar. Samba bietet jedoch die Möglichkeit, auf<br />

einzelnen Shares die Vererbung von ACLs zu aktivieren. Hierbei werden allerdings nur<br />

die Default-ACLs vererbt, nicht die „normalen― Datei ACLs, wobei die Vererbung nur für<br />

neu erstellte Dateien gilt. In der Praxis führt dies aber fast nie zu Problemen, da das<br />

bestehende Rechtemodell mit einem Umstieg in der Regel evaluiert wird und diese<br />

anschließend genauso regelmäßig zu einer Restrukturierung und gern gesehenen<br />

Vereinfachung führen. Sollte trotzdem der Wunsch bestehen, das bestehende<br />

Rechtemodell zu übernehmen, dann kann es durch die „eingeschränkte― Vererbung<br />

vorkommen, dass entsprechende Attribute nach einer Migration von Hand durch den<br />

Administrator ersetzt werden müssen.<br />

1.1.4 Abbildung des Attributsystems<br />

Die Attribute, die unter Unix nicht vorhanden sind, können auf verschiedene Weise<br />

abgebildet werden. Dabei wird das Flag Schreibgeschützt nicht wirklich benötigt, weil es<br />

im normalen Berechtigungssystem bereits enthalten ist. Es wird daher für Dateien und<br />

Verzeichnisse ohne Schreibberechtigung automatisch angezeigt. Die Flags Archiv,<br />

Versteckt und System können durch das nicht verwendete Execute Bit des Unix-Dateisystems<br />

abgebildet werden und sind daher vorhanden. Die Attribute Komprimiert und<br />

Verschlüsselt sind nicht abbildbar. Sie können allerdings über spezielle Dienste unter<br />

Unix zur Verfügung gestellt werden.


1.1.5 Abbildung der Überwachungsfunktionen<br />

Das Auditing-System ist fest in Windows integriert. Es ist unter Unix mit anderen Mechanismen<br />

nachbildbar. Für den Samba-Server lässt sich das Auditing über ein VFS-Modul<br />

realisieren. Damit werden dann die Zugriffe auf Dateien und Verzeichnisse durch den<br />

Samba-Server protokolliert. Auf der Ebene des Dateisystems hat ein Auditing in dieser<br />

Form bislang nicht Einzug in den Linux-Kernel gefunden, obwohl mehrere Anläufe für<br />

eine Implementierung versucht wurden und in den vorhandenen Strukturen entsprechende<br />

Voraussetzungen für erweiterte Attribute bei den Linux-Dateisystemen vorhanden<br />

sind. In der Praxis scheint diese Funktionalität jedoch so wenig Bedeutung zu haben,<br />

dass alle Versuche bisher aus Mangel an Interesse nicht weiter aktiv verfolgt worden<br />

sind. Allerdings ist es über Security-Erweiterungen wie zum Beispiel SE-Linux<br />

durchaus möglich, zumindest ein teilweises Auditing auch für die unterhalb von Samba<br />

stattfindenden Dateisystemzugriffe zu realisieren.<br />

1.1.6 Zusammenfassung der wichtigsten Folgen bei Verwendung von Samba<br />

mit POSIX ACLs<br />

Für Schreiben als abstraktes Recht gilt:<br />

� zwischen Daten schreiben und anhängen wird nicht unterschieden<br />

� bei Ordnern wird ebenso nicht zwischen dem Erstellen von Ordnern und dem<br />

Erstellen von Dateien unterschieden<br />

� das Schreiben von Ordnern beziehungsweise Dateien und Attributen wird nicht<br />

unterschieden.<br />

Für das Lesen als abstraktes Recht gilt:<br />

� das Lesen von Ordnern beziehungsweise Dateien und von Attributen wird nicht<br />

unterschieden.<br />

� Prinzipiell gilt, dass das Lesen von Berechtigungen immer erlaubt ist. Generell<br />

sind weder Überwachung noch aktive Vererbung implementiert. Bei der Vererbungen<br />

gelten die Einschränkungen wie oben beschrieben.<br />

1.1.7 Benutzergruppen und Zugriffsrechte<br />

Insbesondere bei den von Arbeitsgruppen gemeinsam genutzten Freigaben spielt die<br />

Vergabe von Zugriffsrechten an Gruppen eine herausragende Rolle. Unter NT werden<br />

(Server-)lokale und globale Gruppen unterschieden. Lokale Gruppen können als Alias-<br />

Definitionen verstanden werden, die auf eine oder mehr globale Gruppen verweisen. Auf<br />

diese Weise können lokale Gruppen mehrere globale Gruppen enthalten. Unter Samba<br />

(wie unter UNIX / Linux allgemein) ist eine Verschachtelung von Gruppen nicht möglich.<br />

Mit Samba lassen sich lediglich alle UNIX-Gruppen 1:1 als globale Gruppen für Windows<br />

Clients und Member-Server darstellen.<br />

Diese globalen Gruppen können auf Windows-Member-Servern natürlich wieder in lokale<br />

Gruppen eingehen. Damit stehen auf solchen Servern weiterhin die Modelle B-G-L-R<br />

und B-G-R zur Verfügung, wie sie im Abschnitt II.E 1.4 beschrieben werden.<br />

Seite 245


Die Einführung eines Konzepts von lokalen Gruppen auch für Linux-Server ist bislang<br />

nicht geplant, sodass hier typischerweise nur das Modell B-G-R zum Einsatz kommt.<br />

Eine äquivalente Funktionalität lässt sich mit entsprechender Business-Logik in einer<br />

LDAP-basierten Gruppenverwaltung realisieren.<br />

1.1.8 Abschätzung der Auswirkungen für die Benutzer<br />

Bei der Abbildung der Windows-ACL auf die POSIX-ACL geht die feine Granularität<br />

verloren, in der die Rechte unter Windows modifiziert werden können. Allerdings werden<br />

in der Praxis überwiegend nur die wesentlich einfacheren Sammelberechtigungen der<br />

einfachen Sicherheitseinstellungen verwendet.<br />

Die weiteren, abgestuften Berechtigungen kommen nur in Einzelfällen zur Anwendung.<br />

Besonders die Unterscheidung zwischen den Attribut- und den Dateirechten wird<br />

äußerst selten verwendet.<br />

Auch die Berechtigung Daten anhängen wird nur in wenigen Fällen sinnvoll nutzbar sein.<br />

Diese Berechtigung kann bei Verwendung eines Extended 2/3 Dateisystems unter Linux<br />

auch als erweitertes Attribut auf der Kommandozeile für ausgewählte Dateien gesetzt<br />

werden.<br />

Durch die konsistente Abbildung des einfacheren Rechtemodells der POSIX ACLs wird<br />

das Bild der einfachen Sicherheitseinstellungen für den durchschnittlichen Benutzer zuverlässiger<br />

und für die Administratoren erheblich vereinfacht, ohne dabei wesentliche<br />

Funktionalität zu verlieren.<br />

Bestimmte Funktionen, wie die aktive Vererbung und Auditing des Dateisystems können<br />

nur teilweise, wie im obigen Text beschrieben, nachgebildet werden und bedürfen zur<br />

Abbildung gegebenenfalls zusätzliche Software.<br />

Die Sicherheit der Dateiablage unter Samba ist nur bedingt abhängig von den Funktionen,<br />

die Samba bietet. Dies liegt daran, dass Samba mit unterschiedlichen Unix Distributionen<br />

verbunden werden kann. Wenn diese „unsicher― eingestellt sind, so wirkt sich dies<br />

natürlich auch auf die Dateiablage aus. Mit Samba unter Linux ist der Zugriff auf Dateisysteme<br />

mit Festplattenverschlüsselung möglich.<br />

Zusammenfassen lässt sich sagen, mit Samba unter Linux ist es möglich, für heterogene<br />

Systemlandschaften eine zentrale Datenablage zu realisieren. Dabei müssen jedoch die<br />

unterschiedlichen Umsetzungen von Zugriffsrechten auf Dateien bei Windows und Linux<br />

mit Samba beachtet werden. Im Zusammenspiel mit den entsprechenden Verzeichnisdiensten<br />

ist auch eine Benutzerverwaltung und Verteilung von Zugriffsrechten in großen<br />

Netzwerken unproblematisch.<br />

Inwieweit die Änderung oder Entwicklung in der einen oder anderen Richtung als<br />

einfacher oder vorteilhafter bewertet oder empfunden wird, hängt nicht zuletzt von den<br />

beteiligten Personen selbst ab. Eine Migration zu Samba, Linux und Open Source<br />

eröffnet neue Freiheitsgrade. Ein solcher Schritt zur Emanzipation von den Vorgaben<br />

und Best Practices eines Herstellers bringt dem einzelnen Administrator neben mehr<br />

Freiheit auch mehr Eigenverantwortung.<br />

Seite 246


1.2 Linux-Server mit NFS<br />

NFS (Network File Service) ist ein Netzwerkprotokoll, das von SUN Microssystems entwickelt<br />

wurde, um im UNIX Umfeld Verzeichnisse und Dateien freizugeben. Seitdem<br />

SUN keine Weiterentwicklung des Protokolls betreibt, übernahm die IETF die Verantwortung<br />

zur Weiterentwicklung. NFS ist in den drei RFC 1094, RFC 1813 und RFC 3530<br />

beschrieben. Der RFC 1094 wurde im März 1989 von Sun Microsystems veröffentlicht.<br />

Bisher wurden folgende <strong>Version</strong>en veröffentlicht:<br />

� NFS 2<br />

� NFS 3<br />

� NFS 4<br />

NFS heißt zwar Filesystem (FS), ist aber eher ein Protokoll. NFS geht davon aus, dass<br />

es auf ein bestehendes Filesystem zurückgreifen kann. Dies können Filesysteme wie<br />

ReiserFS, EXT4 (Nachfolgeversion von EXT3) oder XFS sein. Über NFS lassen sich so<br />

auch verteilte File Systeme (Distributed File Systems) realisieren. Theoretisch könnten<br />

diese dann auch heterogen sein. In der <strong>Version</strong> 3 ist NFS noch zustandslos, was aus<br />

Sicherheitsaspekten jedoch nicht wünschenswert ist. Daher ist ein Einsatz von NFS ohne<br />

zusätzliche Schutzmechanismen nur in geschlossenen Netzen zu empfehlen. Clients<br />

benötigen zum Zugriff auf diese Freigaben immer einen NFS Client. Dieser ist bei allen<br />

Unix Clients implementiert. Für Microsoft Betriebssysteme ist ein NFS Client über das<br />

Microsoft Windows Services für UNIX (SFU) 3.5 Erweiterungspaket erhältlich. Dieses<br />

Paket kann unter Windows2000, Windows XP und Windows2003 R2 genutzt werden.<br />

NFS bietet die Möglichkeit des Zugriffs auf ein Dateisystem sowohl für Windows als auch<br />

für Unix Clients. Darüber hinaus besteht durch NFS die Möglichkeit, verteilte Filesysteme<br />

in einem Netzwerk anzubieten. Das heißt, der Anwender muss nicht wissen, auf welchen<br />

physikalischen Festplatten sich zum Beispiel ein Verzeichnis befindet. Der Anwender<br />

greift auf die Daten in dem Verzeichnis zu und das System übermittelt die Daten dann<br />

zum Anwenderrechner, nachdem die Daten von NFS logisch zusammengeführt wurden.<br />

Um auf ein NFS Laufwerk zugreifen zu können, muss der Anwender sich mit diesem<br />

verbinden. Diese Herstellung einer Verbindung wird „mounten― genannt. Wenn ein Laufwerk<br />

oder Verzeichnis gemountet ist, stehen dem Anwender alle dort befindlichen Daten<br />

zur Verfügung. Allerdings bietet NFS sehr unzureichende Zugriffsteuerungen auf die<br />

freigegeben Verzeichnisse, da NFS die Unix „mode bits― zur Zugriffssteuerung nutzt.<br />

Man kann zwar unter Linux mit NFS den Zugriff auf die einzelnen Dateien mit Hilfe der<br />

implementierten ACLs steuern, aber damit ist keine Steuerung der Freigabe möglich.<br />

Seit der <strong>Version</strong> NFSV4 ist das Protokoll nicht mehr zustandslos. Dadurch wird die Programmierung<br />

von Netzwerksicherungen insofern erheblich vereinfacht, indem sich das<br />

Protokoll den Zustand einer vorangegangenen Transaktion „merkt―. So lässt sich zum<br />

Beispiel festzustellen, ob ein bestimmter, nicht autorisierter Zugriff immer wieder versucht<br />

wird, der dann nach einer definierten Anzahl von Versuchen abgeblockt wird.<br />

Unter Windows und OS/2 wurde die Funktionalität von NFS über das sogenannte Server<br />

Message Block Protokoll (SMB) realisiert. Mit diesem Protokoll ist eine Benutzerauthentisierung<br />

möglich. NFS V3 authentifiziert nur den Client Rechner. Dies wurde mit<br />

Seite 247


der <strong>Version</strong> NFS V4 geändert, sodass unter NFS4 auch eine Benutzerauthentifizierung<br />

möglich ist.<br />

Linux Server mit NFSV3 sollten nur in geschlossenen Netzwerken, das heißt in Netzwerken<br />

ohne Verbindung zu öffentlichen Netzen, eingesetzt werden. Mit NFS4 ist jedoch<br />

auch eine Nutzung des Protokolls in offenen Netzen möglich.<br />

Um eine Zugriffssteuerung auf die freigegebenen Verzeichnisse zu gestatten, empfiehlt<br />

sich der Einsatz eines Linux Servers mit NFS in Kombination mit SAMBA beziehungsweise<br />

LDAP. Über die Sicherheitsmechanismen der Server wird die Schwachstelle im<br />

NFS geschlossen.<br />

Im Ergebnis ist es mit dem NFS Protokoll möglich, Datenfreigaben und verteilte Datei-<br />

Systeme in einer heterogenen Landschaft anzubieten. Allerdings müssen die vorhandenen<br />

sicherheitsrelevanten Schwächen des Protokolls berücksichtigt werden. Für<br />

geschlossene Systeme, zum Beispiel Testumgebungen kann der Einsatz von NFS<br />

sinnvoll sein, um den administrativen Aufwand gering zu halten.<br />

Für die Dateiservices innerhalb einer rein linuxbasierten Systemlandschaft wird das<br />

bewährte Network File System (NFS) empfohlen. NFS wird traditionell für die netzwerkgestützte<br />

Dateiablage in UNIX-Netzwerken eingesetzt. NFS ist das Standardprotokoll,<br />

wenn Verzeichnisse von verschiedenen Unix-Systemen gemeinsam genutzt<br />

werden sollen. Den Nutzern können mittels zentraler oder dezentraler Server die<br />

benötigten Verzeichnisbereiche zur Verfügung gestellt werden. Die exportierten<br />

Verzeichnisbäume werden auf den entsprechenden Arbeitsplatzrechner der Mitarbeiter<br />

automatisch eingebunden.<br />

Für eine physikalische Speicherung der Daten auf den Plattensystemen der eigentlichen<br />

Server werden die Dateisysteme XFS und EXT4 empfohlen. Beide Systeme unterstützen<br />

Journaling-Funktionalitäten, Quotas und die Vergabe von Zugriffberechtigungen auf<br />

Datei- und Verzeichnisebene.<br />

1.3 Linux-Server mit OpenAFS<br />

Entstanden ist OpenAFS aus dem von der Carnegie Mellon Universität entwickelten und<br />

von IBM weitergeführten AFS (Andrew File System). Da AFS zunächst keine weite Verbreitung<br />

fand, entschloss sich IBM zur Entwicklung und Freigabe einer <strong>Version</strong> für die<br />

Open Source Gemeinde. Zurzeit besitzt keine legale Einheit die Rechte am Source Code<br />

von AFS. Trotzdem findet es immer mehr Verbreitung. OpenAFS ist für alle gängigen<br />

Unix Distributionen sowie für Windows und Apple MAC OS X verfügbar.<br />

Die bei NFSv3 aus der Protokolldefinition stammenden und bekannten Schwachstellen<br />

wurden bei der Entwicklung von AFS berücksichtigt. Von Anfang an wurde bei der Entwicklung<br />

von AFS Wert darauf gelegt, diese oder ähnliche Schwachstellen nicht erneut<br />

zu implementieren. Die derzeit aktuelle <strong>Version</strong> ist die <strong>Version</strong> 1.5.25 200 .<br />

OpenAFS unterscheidet sich in seiner Architektur nicht von NFS. Das heißt, OpenAFS<br />

ist ebenfalls nach dem Client Server Prinzip aufgebaut und kann zum Aufbau von verteilten<br />

Datenablagesystemen genutzt werden.<br />

200 seit 20.09.2007; siehe http://www.openafs.org/).<br />

Seite 248


Das ganzheitliche Konzept von OpenAFS beinhaltet nicht nur die einfache Freigabe von<br />

Daten, sondern auch eine Kerberos basierte Authentifizierung, ferner die Datensicherung<br />

und eine für kryptografischen Komponenten nötige Synchronisation der Uhrzeit<br />

zwischen Clients und Servern. Das AFS-Netzwerkprokoll greift nicht auf das Format von<br />

Datenvolumen durch, auf dem die Daten abgelegt werden. Hierdurch kann die Dateistruktur<br />

des AFS Namensraums nicht über das Betriebssystem eingesehen werden und<br />

die gleichzeitige Freigabe von Daten über SMB oder NFS für bestimmte Daten ist nicht<br />

möglich.<br />

Der Zugriff auf eine OpenAFS Freigabe erfolgt immer über einen entsprechenden Open-<br />

AFS Client, der auf der entsprechenden Workstation / Client installiert sein muss.<br />

OpenAFS bietet die Möglichkeit einer differenzierten Benutzerverwaltung. So können<br />

nicht nur Berechtigungen für die Freigabe der Verzeichnisse vergeben werden, sondern<br />

auch für die Ausführung von Befehlen zur Dateibearbeitung. Das heißt, es ist möglich,<br />

einem Benutzer Leserechte und einem anderen Benutzer Änderungsrechte auf einem<br />

Verzeichnis einzuräumen. Diese Zugriffsteuerung erfolgt über ACLs und ignoriert die<br />

unter Unix über „mode bits― eingestellten Berechtigungen. Die Berechtigungen können<br />

auch zu Benutzergruppen zusammengefasst werden.<br />

Rückblickend lässt sich zusammenfassen, dass OpenAFS die Sicherheitslücken von<br />

NFS schließt, und damit der Einsatz von OpenAFS in offenen Netzen gegenüber dem<br />

des NFS Protokolls zu bevorzugen ist. Auch wenn der Source Code zur Zeit keiner<br />

rechtlichen Einheit zugeordnet ist, gibt es einen sogenannten Ältestenrat, der über den<br />

Code wacht. Diesem Rat gehören sowohl Vertreter mehrere Universitäten als auch<br />

Vertreter aus der Wirtschaft an.<br />

Je nach Umfang einer clientseitigen Linux-Migration, rücken auch NFS und AFS in den<br />

Fokus der Alternativbetrachtungen. NFS und AFS sind in UNIX-Netzen verbreitet, für die<br />

Einbindung von Windows-Clients ist jedoch die Installation von spezieller Software auf<br />

allen Clients erforderlich. Ein NFS-Client ist unter anderem in Microsoft Windows Services<br />

for UNIX (SFU <strong>3.0</strong>) enthalten. Ein AFS-Client ist kostenlos und als Open Source von<br />

OpenAFS.org erhältlich. Für den Einsatz von NFS oder AFS in einer Umgebung mit<br />

Windows-Clients sind in jedem Fall tief greifende konzeptuelle Änderungen im Vergleich<br />

zur Dateiablage mit Windows NT erforderlich.<br />

1.4 Windows NT 4.0/2000/2003 mit NTFS<br />

Das NTFS (New Technology File System) System wurde von Microsoft entwickelt, um<br />

architektonische Schwächen, die das FAT System hatte, zu beheben. Inzwischen hat<br />

das NTFS System in der Microsoft Welt FAT und seine Nachfolger so gut wie abgelöst.<br />

Auf älteren Clients wird FAT gegebenenfalls noch verwendet. Auf neu installierten<br />

Clients sollte immer NTFS in einer aktuellen <strong>Version</strong> installiert sein.<br />

Das Filesystem NTFS wurde von Microsoft bisher in folgenden <strong>Version</strong>en herausgebracht:<br />

� NTFS 1.x mit Windows NT 3.x<br />

� NTFS 2.x mit Windows NT 4<br />

Seite 249


� NTFS <strong>3.0</strong> mit Windows 2000 (NT 5)<br />

� NTFS 3.1 ist aktuelle <strong>Version</strong> unter Windows XP und 2003.<br />

Mit Windows Vista hat Microsoft keine neue <strong>Version</strong> von NTFS eingeführt.<br />

Häufig finden sich auch Bezeichnungen wie NTFS 4 und NTFS 5, dies sind aber keine<br />

offiziellen <strong>Version</strong>snummern. Diese Bezeichnungen beziehen sich auf die jeweilige <strong>Version</strong><br />

des Betriebssystem NT4 (Windows NT 4.0 Server / Workstation) beziehungsweise<br />

NT5 (Windows 2000 Server / Workstation), mit der die jeweilige <strong>Version</strong> des NTFS ausgeliefert<br />

wurde. Um die Vergleichbarkeit zum <strong>Migrationsleitfaden</strong> <strong>Version</strong> 2.1 zu gewährleisten,<br />

werden in diesem Kapitel die Bezeichnung NTF4 und NTF5 beibehalten.<br />

NTFS ist Bestandteil der jeweiligen Betriebssysteme und unterliegt damit den Lizenzbedingungen<br />

für diese.<br />

In NTFS werden alle abgelegten Daten als eine Datei behandelt. Diese wird MFT<br />

(Master File Table) genannt. Hier werden die Informationen hinterlegt, welche Datenblöcke<br />

der Festplatte zu welcher Datei gehören. Auch die Zugriffinformationen und die<br />

Datei-attribute sind hier abgelegt (weiterhin wird auch der Inhalt einer Datei als Attribut<br />

angesehen).<br />

Im Folgenden wird auf den Nachfolger von Windows NT4.0 Server, Windows 2000<br />

Server und Windows Server 2003 R2 hinsichtlich des Themas „File Service― eingegangen.<br />

Zunächst erfolgt eine Beschreibung des NTFS 4 Filesystems, welches die<br />

Grundlage für die heutige Dateiablage und -Verwaltung unter Windows bildet. Im<br />

Weiteren werden dann die Neuerungen durch NTFS 5 dargestellt.<br />

1.4.1 Eigenschaften<br />

NTFS 4 besitzt u.a. folgenden Eigenschaften:<br />

Jeder Ordner und jede Datei verfügt über eine sogenannte Access Control List (ACL),<br />

die an der Datei oder dem Ordner gespeichert wird. In der ACL stehen sogenannte<br />

Access Control Entries (ACE), in dem die SID des Gruppen- oder des Benutzerkontos<br />

und die Berechtigung stehen. Über die ACL erfolgt somit die Zugriffssteuerung, die<br />

insgesamt granular aufgebaut werden kann. Die ACL ist in die Bereiche SACL (System<br />

Access Control List) und DACL (Discretionary Access Control List) zu unterscheiden: In<br />

der DACL sind die SIDs der Gruppen und Benutzer abgelegt, die auf das Objekt<br />

zuzugreifen dürfen beziehungsweise daran gehindert werden. In der SACL ist festlegt,<br />

wie das Sicherheitssubsystem die Zugriffe auf das Objekt überwacht.<br />

NTFS 4 unterstützt im Prinzip keine Vererbung; lediglich beim Neuerstellen einer Datei<br />

werden die Rechte des Ordners in die ACL der Datei kopiert. Ändern sich die Rechte<br />

des Ordners, muss explizit das Durchschreiben in die ACLs der beinhalteten Dateien<br />

angeordnet werden. Eine Besonderheit ist zu beachten: Eine Datei, die sich im UNC-<br />

Pfad \\server\freigabe\ordner\subordner befindet, kann von einem Anwender gelesen<br />

werden, obwohl der Ordner „ordner― das Lesen verbietet, der Ordner „subordner― es<br />

aber zulässt.<br />

Bezüglich der Länge der Pfadnamen gibt es kein Limit. Unterstützt werden Dateinamen<br />

mit bis zu 255 Zeichen. Die verwendeten Zeichen dürfen theoretisch dem Unicode-<br />

Zeichensatz (16bit) bis auf wenige Ausnahmen (zum Beispiel *, \) entnommen werden.<br />

Seite 250


Zu jedem Ordner und jeder Datei wird ein Kurzname gespeichert, welcher der 8.3-Konvention<br />

entspricht und automatisch vom Betriebsystem generiert wird. Während bei der<br />

Speicherung dabei zwischen Groß- und Kleinschreibung unterschieden wird, ist dies<br />

beim Zugriff auf die Datei in der Regel nicht der Fall.<br />

Jeder Ordner und jede Datei verfügt über Attribute in Form von Flags (schreibgeschützt,<br />

Archiv, System, versteckt und komprimiert) und über Angaben zu den Zeiten der ersten<br />

Erstellung, der letzten Änderung und des letzten Zugriffs. Der Komprimierungsgrad ist<br />

stark abhängig vom Inhalt.<br />

NTFS unterstützt die Technologie von Multiple Streams. Die Einsatzhäufigkeit ist relativ<br />

gering. Alternative Daten Streams werden z.T. auch von Schadprogrammen genutzt, da<br />

viele Virenscanner diese Streams nicht untersuchen und die Schadprogramme daher<br />

unentdeckt bleiben. Multiple Streams müssen von der jeweiligen Anwendung unterstützt<br />

werden beziehungsweise in dieser programmiert sein. Multiple Streams ermöglichen<br />

unter anderem die Speicherung der Ressource Folk von Macintosh-Dateien.<br />

Seit dem Service Pack 4 für Windows NT 4.0 Server werden innerhalb von NTFS Quotas<br />

unterstützt. Die Vergabe und Kontrolle der Quoten basiert auf der Besitzer-<br />

Eigenschaft und umfasst das gesamte Volumen (logisches Laufwerk des File Servers).<br />

Durch diese technischen Beschränkungen ist der Einsatz eher als ein Sonderfall und<br />

weniger als die Regel in bestehenden Umgebungen einzustufen.<br />

Die maximale Dateigröße ist unter NTFS 4 auf 2 TB (Terabyte) und die Größe des logischen<br />

Laufwerkes beschränkt. Das logische Laufwerk kann maximal 2 TB (theoretisch<br />

16 Exabyte) umfassen. Die tatsächliche Netto-Datenmenge hängt von der Clustergröße<br />

ab, die bei der Formatierung verwendet wurde. Die Anzahl der Dateien ist auf 2 32 -1 beschränkt.<br />

NTFS ermöglicht ein Auditing (Überwachen) der erfolgten Zugriffe beziehungsweise der<br />

Zugriffs-versuche. Auf diese Weise können zum Beispiel wiederholte, ungewünschte<br />

Löschungen von Dateien diagnostiziert werden.<br />

NTFS formatierte Datenträger werden im laufenden Betrieb defragmentiert. Eine automatische<br />

Korrektur (Selbstheilung) unter Windows NT 4.0 erfolgt nicht. Zu diesem Zweck<br />

müssen Produkte von Drittherstellern eingesetzt werden.<br />

1.4.2 Rechtesystem des NTFS<br />

Windows kennt insgesamt 13 Berechtigungen, die einem Objekt im Dateisystem (Datei<br />

oder Verzeichnis) pro Benutzer oder Gruppe zugeordnet beziehungsweise entzogen<br />

werden können.<br />

Diese sind:<br />

� Ordner durchsuchen / Datei ausführen<br />

� Ordner auflisten / Datei lesen<br />

� Attribute lesen<br />

� Erweiterte Attribute lesen<br />

� Dateien erstellen / Daten schreiben<br />

Seite 251


� Ordner erstellen / Daten anhängen<br />

� Attribute schreiben<br />

� Erweiterte Attribute schreiben<br />

� Unterordner und Dateien löschen<br />

� Löschen<br />

� Berechtigungen lesen<br />

� Berechtigungen ändern<br />

� Besitzrechte übernehmen.<br />

Änderungen an Zugriffsrechten werden über den Dialog Eigenschaften und dort auf der<br />

Karteikarte Sicherheitseinstellungen vorgenommen. In der Absicht, die Komplexität des<br />

Systems aus 13 eng verwandten Einzelberechtigungen vor dem Durchschnittsbenutzer<br />

zu verbergen, werden in dieser Karteikarte vordefinierte Aggregate, sogenannte Sammelberechtigungen,<br />

aus sinnvollen Kombinationen der Einzelberechtigungen zur Auswahl<br />

angeboten. Für Dateien gibt es fünf, für Verzeichnisse sechs solcher Sammelberechtigungen,<br />

die jeweils zugelassen oder verweigert werden können. Erst im Dialog<br />

Berechtigungseintrag der über die Buttons Erweitert/Anzeigen/Bearbeiten in den Sicherheitseinstellungen<br />

erreichbar ist, werden die 13 einzelnen Berechtigungen komplett dargestellt.<br />

Dabei ist die bei den Sicherheitseinstellungen gebotene Sicht auf die Sammelberechtigungen<br />

äußerst problematisch, weil die Darstellung sehr schnell das Fehlen von Rechten<br />

suggerieren kann, obwohl sie in Wirklichkeit vorhanden sind. So entsteht beispielsweise<br />

aus einem Vollzugriff, bei dem allein die Berechtigung zum Schreiben der erweiterten<br />

Attribute nicht zugelassen ist, in der einfachen Darstellung bei den Sicherheitseinstellungen<br />

das Bild eines Rechteprofils, das nur das Lesen und Ausführen erlaubt. Die<br />

folgende Tabelle zeigt, welche Kombinationen von Berechtigungen zu welcher Darstellung<br />

als Sammelberechtigung führen. Wohlgemerkt, wenn nur ein einziges Recht in diesen<br />

Aggregationen nicht gesetzt ist, enthält die entsprechende Checkbox für die Sammelberechtigung<br />

kein Häkchen mehr.<br />

Ordner durchsuchen<br />

/ Datei ausführen<br />

Ordner auflisten /<br />

Daten lesen<br />

Vollzugriff<br />

Windows Sammelberechtigungen<br />

Ändern Lesen &<br />

Ausführen<br />

Seite 252<br />

Ordnerinhalt<br />

auflisten<br />

X X X X<br />

X X X X X<br />

Attribute lesen X X X X X<br />

Erweiterte Attribute<br />

lesen<br />

Dateien erstellen /<br />

Daten schreiben<br />

X X X X X<br />

Lesen Schreiben<br />

X X X


Ordner erstellen /<br />

Daten anhängen<br />

Vollzugriff<br />

Windows Sammelberechtigungen<br />

Ändern Lesen &<br />

Ausführen<br />

Seite 253<br />

Ordnerinhalt<br />

auflisten<br />

Lesen Schreiben<br />

X X X<br />

Attribute schreiben X X X<br />

Erweiterte Attribute<br />

schreiben<br />

Unterordner/Dateien<br />

löschen<br />

Löschen X X<br />

Berechtigungen<br />

lesen<br />

Berechtigungen<br />

ändern<br />

X X X<br />

X<br />

X X X X X X<br />

X<br />

Tabelle 45: Eigenschaften der Windows Sammelberechtigungen<br />

Aufgrund der beschriebenen Inkonsistenzen wird im Folgenden ausschließlich die<br />

erweiterte Ansicht im Dialog Berechtigungseintrag betrachtet.<br />

1.4.3 Attributsystem<br />

Zusätzlich zu den Berechtigungen wird für Datei- und Verzeichnisobjekte noch eine Anzahl<br />

von sogenannten Attributen und erweiterten Attributen verwaltet.<br />

Name Bit Bedeutung<br />

Archiv A Datei wurde seit dem letzten Zurücksetzen des Attributes verändert <br />

Schreibgeschützt<br />

R Datei ist schreibgeschützt<br />

Versteckt H Datei wird nicht angezeigt<br />

System S Datei ist für das System reserviert<br />

Komprimiert C Datei/ Ordner wird auf dem Medium komprimiert gespeichert<br />

Verschlüsselt E Datei/ Ordner wird auf dem Medium verschlüsselt gespeichert<br />

1.4.4 Überwachung<br />

Tabelle 46: Windows Attribute<br />

Windows verfügt über weitreichende Überwachungsmöglichkeiten auf der Datei- und<br />

Verzeichnisebene. So können alle Berechtigungen einzeln pro Benutzer oder Gruppe<br />

überwacht werden. Die daraus resultierenden Informationen werden im Sicherheitsprotokoll<br />

des Domänen-Controllers beziehungsweise des jeweiligen Windows 2000<br />

Rechners gespeichert, sofern in der Systemrichtlinie die Überwachungsrichtlinie freigegeben<br />

wird.


1.4.5 Zugriffssteuerung<br />

Die Zugriffssteuerung über das Netzwerk auf Dateien oder Ordner erfolgt in Windows NT<br />

Umgebungen über zwei Mechanismen:<br />

� Ordnerfreigabe (Share) und<br />

� NTFS-Rechte.<br />

Um über das Netzwerk auf eine Datei zugreifen zu können, muss einer der darüber liegenden<br />

Ordner freigegeben werden. Diese Freigabe wird ebenfalls mit einer ACL versehen,<br />

die in der Registry gespeichert wird. Die Rechte auf diese Freigabe beschränken<br />

sich auf die Stufen<br />

� Lesen<br />

� Ändern<br />

� und Vollzugriff.<br />

Diese Rechte gelten absolut, das heißt, dass darunter liegende NTFS-Rechte effektiv<br />

durch die Freigaberechte beschnitten werden. Beispiel: Das Leserecht auf Freigabeebene<br />

verhindert das Schreiben auch dann, wenn die NTFS-Rechte dies zulassen würden.<br />

Besonderes Augenmerk in Windows NT Umgebungen ist auf die Privilegien (Richtlinien<br />

für Benutzerrechte) zu richten, denn sie können hinsichtlich der File Services zum Beispiel<br />

durch „Besitz übernehmen von Dateien und Objekten― und „Sichern von Dateien<br />

und Ordnern― von Bedeutung sein.<br />

1.4.6 Benutzer und Gruppenkonzept<br />

Jeder Ordner und jede Datei ist einem Besitzer zugeordnet, der sowohl eine Gruppe als<br />

auch ein Benutzerkonto sein kann. Im Normalfall wird der erzeugende Benutzer der<br />

Besitzer. Ist der Benutzer Mitglied der Administratorengruppe, wird diese Gruppe der<br />

Besitzer.<br />

Eine systematische Zugriffssteuerung in der Windows NT Umgebung bevorzugt die Vergabe<br />

von Rechten an Gruppen. Die Vergabe von Rechten an einzelne Benutzerkonten<br />

sollte den benutzerspezifischen Dateiablagen vorbehalten bleiben.<br />

Innerhalb einer Windows NT Umgebung sind folgende Gruppentypen zu unterscheiden:<br />

� globale Gruppen<br />

� lokale Gruppen auf Member Servern<br />

� lokale Gruppen auf Domain Controllern<br />

Lokale Gruppen auf Domain Controllern unterscheiden sich insofern von denen auf<br />

Member Servern, als sie auf allen Domain Controllern der Domäne mit der gleichen SID<br />

vorhanden sind.<br />

Seite 254


Lokale Gruppen auf Member Servern dürfen mit den folgenden Gruppen (Group Nesting)<br />

verschachtelt sein:<br />

� den globalen Gruppen der eigenen Domäne<br />

� oder den globalen Gruppen der Domänen, denen die eigene vertraut.<br />

Globale Gruppen haben nur Benutzerkonten als Mitglieder.<br />

In einer Windows NT Domänenlandschaft sind zwei verschiedene „klassische― Zugriffsteuerungen<br />

bekannt:<br />

� B-G-L-R Methode:<br />

Der Benutzer ist Mitglied einer globalen Gruppe. Die ist wiederum Mitglied einer<br />

lokalen Gruppe eines File Server. Nur für diese lokale Gruppe sind NTFS Berechtigungen<br />

an einer Datei-Ressource gesetzt.<br />

� B-G-R Methode:<br />

Der Benutzer ist Mitglied einer globalen Gruppe. Nur für diese globale Gruppe<br />

sind NTFS Berechtigungen einer Datei-Ressource vergeben.<br />

Abbildung 27: B-G-L-R Methode<br />

Seite 255


Abbildung 28: B-G-R Methode<br />

Beide Methoden funktionieren nur dann ohne Sicherheitsrisiken, wenn die Zuordnung<br />

von Ressource und lokaler Gruppe (beziehungsweise globaler Gruppe) eindeutig ist.<br />

Das heißt, dass die Gruppe ausschließlich für diese Ressource verwendet wird.<br />

Werden die File Services durch einen Cluster realisiert, hat die Methode B-G-L-R den<br />

Nachteil, dass die lokalen Gruppen auf den Knotenservern nicht die identischen SIDs<br />

besitzen können. Abhilfe schafft hier nur die Konfiguration der Knoten als Domain Controller<br />

oder die Verwendung der Methode B-G-R.<br />

1.4.7 Funktionszuwachs<br />

Mit Windows 2000 Server und Windows Server 2003 R2 gehen hinsichtlich der File<br />

Services einige Neuerungen einher. Hierzu gehören u.a.:<br />

� Dateisystem NTFS 5<br />

� HSM-API<br />

� Vererbung<br />

� Verschlüsselung (EFS)<br />

� SMB over Native IP<br />

� Dynamische Datenträgerverwaltung<br />

� Defragmentierung<br />

� Gruppenverschachtelung<br />

� Remote Storage<br />

� Indexing Service<br />

Seite 256


� Distributed Link Tracking<br />

� DFS<br />

� Offline Folder<br />

� Folder Redirection.<br />

1.4.8 Dateisystem NTFS 5<br />

Das Dateisystem NTFS 5 bietet insgesamt folgende Verbesserungen:<br />

Erstmals ist es möglich, die Zugriffsrechte durch Vererbung zu verwalten. Das bedeutet,<br />

dass durch das Setzen von Rechten auf übergeordneten Ordnern diese auf untergeordneten<br />

Ordnern und Dateien wirksam werden, ohne das Durchschreiben (Einbrennen)<br />

durchführen zu müssen. Die Nachteile des Durchschreibens (Lastproblem, Löschen von<br />

speziellen Rechten in Unterordnern) entfallen somit.<br />

NTFS 5 verfügt über ein Change Journal, in dem die Änderungen protokolliert werden.<br />

NTFS 5 formatierte Datenträger verfügen über einen versteckten Ordner namens „System<br />

Volume Information―, auf den nur das Betriebssystem Zugriff hat und in dem die<br />

zusätzlichen Funktionen verwaltet werden.<br />

NTFS 5 bietet die Möglichkeit, Daten zu verschlüsseln. Das Encrypting File System<br />

(EFS) ermöglicht es Benutzern, Daten vor dem Lesen des Inhalts durch Dritte (auch der<br />

Administratoren) zu schützen. In Unternehmensnetzwerken ist hierzu eine PKI (Public<br />

Key Infrastructure) notwendig.<br />

Die Integration von Quotas im Dateisystem bleibt vorhanden, unterliegt aber weiterhin<br />

den Beschränkungen von NTFS 4.<br />

1.4.9 Protokolle<br />

Windows 2000 Server und Windows Server 2003 R2 unterstützen nach wie vor die oben<br />

genannten Protokolle. Seit Windows 2000 Server / Workstation ist es möglich, die Kommunikation<br />

über NetBIOS abzuschalten. Für die File Services bedeutet dies, dass das<br />

„Direct Hosting of SMB Over TCP/ IP― bei der Kommunikation über den Port 445 erfolgt.<br />

1.4.10 Datenträgerverwaltung<br />

Windows 2000 / 2003 (alle <strong>Version</strong>en) bieten ferner die Möglichkeit, physische Festplatten<br />

in das System einzubinden, ohne Laufwerksbuchstaben vergeben zu müssen.<br />

Diese dynamischen Datenträger können als Ordner in traditionellen Datenträgern eingebunden<br />

und bereitgestellt werden 201 . Windows 2000 / 2003 (alle <strong>Version</strong>en) liefern erstmals<br />

ein Werkzeug zum Defragmentieren von Datenträgern, wobei dies bei Nutzung des<br />

NTFS 5 File Systems nicht notwendig sein sollte.<br />

201 Eine detaillierte Beschreibung der Datenträgerverwaltung und ihrer verschiedenen Möglichkeiten<br />

findet sich unter: http://www.microsoft.com/de/de/default.aspx. Wird auf dieser Seite<br />

als Suchbegriff „Datenträgerverwaltung― eingegeben, führt dies direkt in das entsprechende<br />

Kapitel beim Microsoft TechNet.<br />

Seite 257


1.4.11 Änderungen bzgl. Zugriffsteuerung (Gruppenverwaltung)<br />

Seit Windows 2000 Server gibt es zwei unterschiedliche Gruppentypen:<br />

� Sicherheitsgruppen:<br />

Sicherheitsgruppen sind in DACLs (Discretionary Access Control Lists) aufgeführt,<br />

die Berechtigungen für Ressourcen und Objekte definieren. Eine Sicherheitsgruppe<br />

kann auch als E-Mail-Gruppe verwendet werden. Eine an die Gruppe<br />

gesendete E-Mail-Nachricht wird automatisch an alle Gruppenmitglieder verteilt.<br />

� Verteilergruppen:<br />

Für Verteilergruppen werden keine Sicherheitsfunktionen aktiviert. Sie können<br />

nicht in DACLs aufgelistet werden. Verteilergruppen können nur mit Unterstützung<br />

von E-Mail-Anwendungen, z. B. Microsoft Exchange, eine E-Mail an eine<br />

Gruppe von Benutzern senden. Wenn eine Gruppe nicht aus Sicherheitsgründen<br />

erforderlich ist, können sie anstelle einer Sicherheitsgruppe eine Verteilergruppe<br />

erstellen.<br />

Auch wenn Kontakte sowohl einer Sicherheitsgruppe als auch einer Verteilergruppe<br />

hinzugefügt werden können, ist es nicht möglich, diesen Kontakten Rechte und<br />

Berechtigungen zuzuweisen. Es können E-Mail-Nachrichten an die in einer Gruppe<br />

enthaltenen Kontakte gesendet werden.<br />

1.4.12 Konvertieren von Sicherheits- und Verteilergruppen<br />

Eine Gruppe kann von einer Sicherheitsgruppe in eine Verteilergruppe konvertiert<br />

werden und umgekehrt. Dies kann jederzeit erfolgen, solange die Domäne im<br />

einheitlichen Modus ausgeführt wird. Befindet sich eine Domäne im gemischten Modus,<br />

können keine Gruppen konvertiert werden.<br />

1.4.13 Verschachteln von Gruppen<br />

Durch die Verschachtelung können Gruppen zu Mitgliedern anderer Gruppen werden.<br />

Durch verschachtelte Gruppen lässt sich die Gruppenverwaltung vereinheitlichen, da<br />

sich die Anzahl der Mitgliedskonten erhöht, für die die jeweiligen Verwaltungsaufgaben<br />

ausgeführt werden. Zusätzlich wird der Replikationsdatenverkehr verringert, der durch<br />

die Replikation veränderter Gruppenmitgliedschaften entsteht.<br />

Die Verschachtelungsoptionen richten sich danach, ob die Domäne im einheitlichen oder<br />

im gemischten Modus ausgeführt wird. Bei Gruppen in Domänen im einheitlichen Modus<br />

oder bei Verteilergruppen in Domänen im gemischten Modus wird die Mitgliedschaft auf<br />

folgende Weise bestimmt:<br />

� Gruppen mit dem Bereich „Universal" können folgende Mitglieder enthalten: Konten,<br />

Computerkonten, andere Gruppen mit dem Bereich „Universal" und Gruppen<br />

mit dem Bereich „Global" einer beliebigen Domäne.<br />

� Gruppen mit dem Bereich „Global" können folgende Mitglieder enthalten: Konten<br />

derselben Domäne und andere Gruppen mit dem Bereich „Global" aus derselben<br />

Domäne.<br />

Seite 258


� Gruppen mit dem Bereich „Lokale Domäne" können folgende Mitglieder enthalten:<br />

Konten, Gruppen mit dem Bereich „Universal" und Gruppen mit dem Bereich<br />

„Global" einer beliebigen Domäne. Diesen Gruppen können innerhalb derselben<br />

Domäne auch andere Gruppen mit dem Bereich „Lokale Domäne" angehören.<br />

Sicherheitsgruppen in einer Domäne im gemischten Modus sind auf die folgenden Mitgliedstypen<br />

beschränkt:<br />

� Gruppen mit dem Bereich „Global" können ausschließlich Konten enthalten.<br />

� Zu den Mitgliedern von Gruppen mit dem Bereich „Lokale Domäne" können andere<br />

Gruppen mit dem Bereich „Global" sowie Konten zählen.<br />

Da der Gruppenbereich „Universal" ausschließlich in Windows 2000-Domänen im einheitlichen<br />

Modus unterstützt wird, können in Domänen im gemischten Modus keine Sicherheitsgruppen<br />

mit dem Bereich „Universal" erstellt werden.<br />

1.4.14 Remote Storage<br />

Remote Storage ist ein neuer Dienst der seit Windows 2000 Server angeboten wird und<br />

ermöglicht die Auslagerung von lange nicht genutzten Dateien auf Bandlaufwerke im<br />

Sinne eines HSM (Hierarchical Storage Management).<br />

1.4.15 Indexing Service<br />

Der Indexing Service kann optional für Dateiordner eingeschaltet werden, um die dort<br />

gespeicherten Dateien zu indizieren. Der erstellte Index ermöglicht eine schnellere Suche<br />

nach bestimmten Inhalten. Mit dem Indexdienst können folgende Typen von Dokumenten<br />

in verschiedenen Sprachen indiziert werden:<br />

� HTML<br />

� Text (Plain Text)<br />

� Microsoft Office 95 oder höher<br />

� MIME (Multipurpose Internet Mail Extension).<br />

1.4.16 Distributed Link Tracking<br />

Windows 2003 R2 File Server ermöglichen es, dass Anwendungen, die das Verknüpfen<br />

und Einbetten von Objekten unterstützen, so programmiert werden können, dass beim<br />

Verschieben der verknüpften Objekte Informationen über den aktuellen Speicherort vom<br />

Dateisystem abgerufen werden können.<br />

1.4.17 Distributed File System<br />

Das Distributed File System (DFS) konnte bereits unter Windows NT 4 durch zusätzliche<br />

Installationen auf Server und Client bereitgestellt werden. Bei Windows 2000 / 2003 sind<br />

diese Funktionalitäten sowohl auf Client- als auch auf Serverseite standardmäßig integriert<br />

und zusätzlich erweitert worden. DFS ermöglicht, dass Freigaben von Ordnern, die<br />

auf verschiedenen Servern verteilt sind, dem Client als Unterordner einer einzelnen<br />

Freigabe dargestellt werden. Damit wird eine Einsparung von Laufwerksbuchstaben hinsichtlich<br />

der Netzlaufwerke, die dem Anwender zugeordnet werden sollen, erzielt. Darü-<br />

Seite 259


er hinaus muss der Benutzer nicht wissen, wo seine Daten sich physikalisch befinden.<br />

In Windows 2000 / 2003 wurde DFS um die Integration von FRS (File Replication Service)<br />

dahingehend erweitert, dass die verknüpften Freigaben und deren Inhalte auf weitere<br />

Freigaben und anderen File Servern repliziert werden. Fällt ein Server und somit dessen<br />

Freigabe aus, dann stehen dem Client die Repliken zur Verfügung, ohne neue Netzwerkverbindungen<br />

aufbauen zu müssen. In Windows 2000 / 2003 können die Informationen<br />

über den DFS-Baum im Active Directory gespeichert und repliziert werden. Dadurch<br />

verfügt der Client nahezu jederzeit über die benötigten Verbindungsinformationen.<br />

1.4.18 Verbindungsherstellung<br />

Dem Anwender kann die Suche nach Freigaben erleichtert werden, indem die Freigaben<br />

im Active Directory veröffentlicht werden.<br />

1.4.19 Offline Folder und Folder Redirection<br />

Die Funktionalitäten „Offline Folder― und „Folder Redirection― sind primär keine Eigenschaften<br />

der File Services von Windows 2000 Server beziehungsweise Windows Server<br />

2003 R2, sondern Funktionalitäten des Client (zum Beispiel Windows 2000/Professional,<br />

Windows XP, Vista). Sie seien an dieser Stelle dennoch erwähnt, weil sie hinsichtlich der<br />

Datenhaltung prinzipiell relevant sind und mit dem File Server zusammenarbeiten müssen.<br />

Offline Folder stellen quasi den Nachfolger des „Aktenkoffers― von früheren Windows<br />

<strong>Version</strong>en dar. Anwender, die zum Beispiel über ein Notebook verfügen, können<br />

Ordner und Dateien, die normalerweise auf File Servern gespeichert werden, ohne<br />

Netzwerk-verbindung bearbeiten. Sobald eine Verbindung zum File Server besteht, werden<br />

diese Daten wieder abgeglichen (repliziert). Aufgrund dieser Replikation sind auf<br />

beiden Seiten (Client und Server) die jeweiligen Dateieigenschaften von großer Bedeutung,<br />

um einen fehlerfreien Abgleich zu ermöglichen.<br />

Mit der Funktionalität Folder Redirection trägt Windows 2000 / 2003 (alle <strong>Version</strong>en)<br />

dem Umstand Rechnung, dass die Größe von Benutzerprofilen auf Arbeitsplatzsystemen<br />

im laufenden Betrieb stark anwachsen kann. Dies geschieht zum Beispiel dann, wenn<br />

der Anwender dort unter „Eigene Dateien― seine Dateien speichert, die eigentlich auf File<br />

Servern abgelegt werden sollen. Seit Windows 2000 (alle <strong>Version</strong>en) ist es möglich, die<br />

Systemordner des Benutzerprofils („Eigene Dateien―, „Anwendungsdaten―) auf einen<br />

Netzwerkpfad zu „verbiegen―. Diese Ordner erscheinen dem Anwender transparent als<br />

lokale Ordner. Durch das Verschieben der Ordner auf File Server muss beachtet werden,<br />

dass die Zugriffsrechte gewahrt bleiben.<br />

1.4.20 Sicherheit<br />

NTFS bietet die Möglichkeit, Daten zu verschlüsseln. Um an Daten auf einer NTFS Datenpartition<br />

zu kommen, muss diese von einem Gerät gelesen werden, die das NTFS<br />

System unterstützt. Die Verwaltung der Zugriffskontrolle erfolgt über die Benutzerverwaltung<br />

des Betriebssystems.<br />

Seite 260


1.4.21 Fazit<br />

NTFS bietet alle Voraussetzungen, um eine sichere und benutzerbezogene Dateiblage<br />

zu realisieren. Einzig die Längenbeschränkung der Dateinamen inklusive ihrer Pfadangaben<br />

auf 255Zeichen kann in Spezialfällen zu Problemen führen, da dies dem Anwender<br />

nicht transparent ist und er bei der Datenablage keinen Warnhinweis erhält, falls er<br />

diese überschreitet. Dieser Umstand kann aber durch organisatorische Maßnahmen<br />

entsprechend berücksichtig werden.<br />

2 Migrationspfade<br />

Bevor auf die einzelnen Migrationspfade eingegangen wird, sollen vorab die Funktionen<br />

der einzelnen, im Kapitel II.E 1 beschriebenen Dateiablagesysteme gegenübergestellt<br />

werden.<br />

Bei der funktionalen Übersicht der alternativen Netzdateisysteme kommen indirekt auch<br />

Eigenschaften des darunter liegenden Serverdateisystems zum Tragen (zum Beispiel<br />

maximale Dateigröße oder Dateirechte). Für die linuxbasierten Server werden für diesen<br />

Vergleich das XFS und das EXT3 Dateisystem zugrunde gelegt.<br />

Funktion WinNT NTFS 5 Samba <strong>3.0</strong> NFS 4 AFS<br />

1.5.25<br />

Windows-Client ohne Zusatzsoftware<br />

X X X<br />

Länge der Dateinamen<br />

(Zeichen) 256 256 256 256 256<br />

Zeichensatz für Dateinamen Unicode Unicode Unicode ISO-Latin ISO-Latin<br />

Darstellung von Groß/ Kleinschreibung<br />

Unterscheidung von Groß/ Kleinschreibung<br />

X X X X X<br />

Seite 261<br />

einstellbar X X<br />

Disk Quotas X X X X<br />

Verschlüsselung EFS dateiweise<br />

clientseitig<br />

Kompression X X<br />

Maximale Dateigröße 204 2 TB 2 TB 2 TB 9 EB 205 2 GB<br />

Maximale Pfadlänge Unbegr. Unbegr. Unbegr. Unbegr. Unbegr.<br />

Änderungsjournal X (Eine Form<br />

von Auditing<br />

gibt es als<br />

Samba-<br />

VFS-Plugin<br />

202 Als Erweiterung (Patch) zum Beispiel für Ext2/3 Dateisysteme erhältlich<br />

203 Als Erweiterung (Patch) zum Beispiel für Ext2/3 Dateisysteme erhältlich<br />

204 TB Terabyte 1012, PB Petabyte 1015, EB Exabyte 1018<br />

205 NFSv3 mit XFS Dateisystem, je nach Architektur bis zu 9EB, für i386 max. 16TB<br />

202<br />

203


Funktion WinNT NTFS 5 Samba <strong>3.0</strong> NFS 4 AFS<br />

1.5.25<br />

vfs_full_<br />

audit)<br />

Propagierung der<br />

Freigaben im ActiveDirectory<br />

Verteiltes Dateisystem DFS DFS Standard Standard<br />

Dateireplikationsdienst FRS rsync rsync rsync<br />

Journaling<br />

X<br />

Seite 262<br />

X X<br />

DACL NTFS POSIX POSIX AFS<br />

SACL NTFS Samba Modul<br />

Typische Autorisierung über NT/ LM<br />

PDC<br />

AD / Kerberos<br />

NT/LM<br />

LDAP, wenn<br />

AD-Mitglied<br />

dann Kerberos<br />

Tabelle 47: Vergleich der Dateiserver<br />

X<br />

X<br />

NIS/ LDAP Kerberos<br />

<strong>Version</strong> 4<br />

Eine Migration der Dateiablage findet in der Regel durch das Kopieren von Daten von<br />

dem alten auf das neue System statt. Hierbei sind die oben beschriebenen Unterschiede<br />

bei den einzelnen Systemen zu beachten. Weiter ist bei allen Migrationspfaden zu beachten,<br />

dass gegebenenfalls wichtige Dateiinformationen, zum Beispiel das Erstellungsdatum<br />

einer Datei, verloren gehen können (unter Erstellungsdatum ist hier das Datum<br />

der ersten Erstellung der Datei zu verstehen). Es muss daher im Vorfeld einer Migration<br />

geklärt werden, ob und welche Dateieigenschaften, zum Beispiel aus rechtlichen Gründen,<br />

bei einer Migration unverändert bleiben müssen.<br />

Unverändert müssen zum Beispiel folgende Eigenschaften bleiben:<br />

� Datum der Ersterstellung der Datei<br />

� Pfadangabe der Ersterstellung<br />

� Name der Ersterstellung<br />

� Benutzername des Ersterstellers<br />

� Dateigröße<br />

� Übernahme der Änderungsverfolgung<br />

Dies kann zu einer Erhöhung der Komplexität führen, da das einfache Kopieren der<br />

Dateien in diesem Fall nicht möglich ist.<br />

Um eine Migration durchzuführen, empfiehlt sich statt des einfachen Kopierens der<br />

Daten (zum Beispiel mittels Browser) die Nutzung des rsync Befehls. Mit Samba 4 wird<br />

es künftig auch möglich sein, über diesen Befehl zum Beispiel das Attribut der


Dateiersterstellung zu übertragen. Dieses vereinfachte Vorgehen ist zurzeit noch nicht<br />

möglich, doch der rsync Befehl wird stetig weiter entwickelt 206 .<br />

Im Rahmen der Betrachtungen zur Migration der Dateiablage wird davon ausgegangen,<br />

dass auf den Clients keine Nutzdaten lokal gespeichert werden. Bei einer eventuellen<br />

Migration von Clients wird ein neues System mit identischer Funktionalität aufgesetzt,<br />

ohne dass Daten vom alten Client übernommen werden.<br />

Wenn eine große Zahl identisch ausgestatteter Clients zu migrieren ist, kommt ein festplattenloser<br />

Betrieb auf einem reinen Netzdateisystem in Frage. Dieser Spezialfall von<br />

netzwerkzentraler Dateiablage bietet insbesondere bei der Administration große Vorteile:<br />

Änderungen an der Client-Konfiguration werden nur ein einziges Mal auf dem Server<br />

ausgeführt und sind automatisch auf allen damit arbeitenden Clients wirksam. Für die<br />

Auswahl des Serverdienstes, auf dem ein „diskless Client― aufsetzt, müssen prinzipiell<br />

die gleichen Überlegungen angestellt werden wie bei der Auswahl des Serversystems<br />

für die zentrale Dateiablage allgemein.<br />

Eine Migration der Dateiablage kann stets als Chance genutzt werden, die Ablagestruktur,<br />

das Rechtesystem und die Daten auf ihre Funktionalität und Aktualität zu prüfen.<br />

Gegebenenfalls kann es sinnvoll sein, bei einer solchen Migration Daten zu archivieren<br />

beziehungsweise zu löschen.<br />

2.1 Migration von Windows Server NT 4 mit NTFS 4 nach Linux mit Samba<br />

(SMB/CIFS) und POSIX<br />

Bei der direkten Ablösung eines Windows NT Servers als Dateiablage unter Beibehaltung<br />

der Windows Clients bietet sich im Open Source Bereich Samba als erste Wahl an.<br />

Wie bereits im Abschnitt II.E 1.1 dargelegt, erfüllt ein Samba Server wie ein NT Server<br />

die Anforderungen an eine Dateiablage und im Zusammenspiel mit POSIX (siehe auch<br />

Abschnitt II.E 1.1) lassen sich die Rechtestrukturen wie unter Windows NT abbilden.<br />

Dies gilt auch für die erweiterten Rechte unter Windows, obwohl diese in der Praxis nur<br />

selten zur Anwendung kommen.<br />

Wenn hier von Abbildung die Rede ist, stellt sich auch die Frage, gehören die<br />

Betrachtungen zu Samba und POSIX nicht eigentlich in den vorliegenden Abschnitt? Die<br />

Autoren des <strong>Migrationsleitfaden</strong>s haben sich aus zwei Gründen für die vorliegende<br />

Strukturierung entschieden. Zum einen werden unter den Produkt- und Technologiebetrachtungen<br />

die Eigenschaften, Funktionen und Möglichkeiten der Produkte, der<br />

Technologien beschrieben. Zum zweiten werden diese Eigenschaften, Funktionen und<br />

Möglichkeiten im Falle von Samba im Zusammenspiel mit POSIX nicht nur bei der<br />

Migration einer NT-basierten Umgebung in eine gemischte Windows/Linux-Umgebung<br />

benötigt, sondern diese werden grundsätzlich benötigt, wenn eine solche Umgebung<br />

aufgebaut werden soll.<br />

An dieser Stelle sollen nun noch die Aspekte der reinen Migration betrachtet werden.<br />

Dies bedeutet dann aber wiederum nur, dass die Dateien von der einen Ablage-<br />

Umgebung in die neue Ablage-Umgebung gebracht werden müssen.<br />

206 http://rsync.samba.org/<br />

Seite 263


Bevor diese Überführung der Dateien erfolgt, sollte in jedem Migrationsprojekt, welche<br />

die Migration der Dateiablage zum Ziel hat, vor allem die bestehenden Rechtestrukturen<br />

der Dateiablage dahingehend geprüft werden, ob sie noch zeitgemäß und den Anforderungen<br />

entsprechend gestaltet sind. Eine Migration sollte, wie bereits in der Einleitung<br />

zu den Migrationspfaden der Dateiablage erwähnt, auch als Chance für eine Bereinigung<br />

beziehungsweise für einen Neuanfang gesehen werden.<br />

Solch eine Prüfung kann am Ende zu zwei unterschiedlichen Ergebnissen kommen:<br />

1. Die Rechtestruktur bedarf einer Änderung<br />

2. Die Rechtestruktur bedarf keiner Änderung und soll für die neue Dateiablage<br />

übernommen werden.<br />

Im ersten Fall sollte dann so vorgegangen werden, dass zunächst die neue Dateiablage<br />

aufgebaut und die neue Rechtestruktur implementiert werden. Anschließend können die<br />

Dateien der abzulösenden Dateiablage selektiv durch kopieren übernommen werden.<br />

Hierfür stehen Werkzeuge, wie zum Beispiel das Windowsprogramm „robocopy― 207 zur<br />

Verfügung.<br />

Im zweiten Fall kann die alte Dateiablage auf den neu aufgebauten Fileserver zum<br />

Beispiel auch mit robocopy vollständig übernommen werden.<br />

2.2 Von Windows Server 2000/2003 nach Linux Server (unter Beibehaltung von<br />

Active Directory)<br />

Bei einer Migration von Windows Server 2000/2003 nach Linux unter der Beibehaltung<br />

von Active Directory gelten für die Migration der Daten die gleichen Anmerkungen, die in<br />

den vorherigen Kapiteln beschrieben worden sind. Anwendungsgebiete einer solchen<br />

Migration sind zum Beispiel die Migration von Daten von Windows File Servern auf NAS<br />

(Network Attached Storage) oder SAN (Storage Area Network) Systeme. Diese Systeme<br />

stellen sich nach außen als Windows File Server dar, werden aber intern oft durch<br />

Unix/Linux Systeme verwaltet. Durch die Beibehaltung von Active Directory wird das<br />

Netzdateisystem weiter unter Windows verwaltet, jedoch per Samba unter Linux<br />

abgebildet beziehungsweise gespeichert. Diese Kombination von Verwaltung unter<br />

Windows und Dateiablage unter Linux kann in bestimmten Fällen zu nicht gewünschten<br />

Effekten führen. Einige Beispiele für diese negativen Effekte seien hier aufgeführt:<br />

� Länge von Dateinamen<br />

In der Praxis hat sich gezeigt, dass Windows Systeme Probleme haben, Dateinamen<br />

inklusive Pfadangabe von mehr als 256 Zeichen zu interpretieren, auch<br />

wenn laut Herstellerangaben die Pfadnamen unter NTFS unbegrenzt lang sein<br />

können. Die Ursachen hierfür können in Programmteilen von DLLs beziehungsweise<br />

Programmteilen von Drittherstellern liegen, da dort unter Umständen eine<br />

feste Pfadlänge programmiert wurde. Daher wird empfohlen, keine Dateinamen<br />

inklusive Pfadlänge von mehr als 240 Zeichen zu verwenden. Linux hingegen<br />

lässt auch längere Dateinamen zu. Wird nun vom Anwender eine Datei zum Beispiel<br />

über den NT-Explorer verschoben, so kann es dazu führen, dass die Ge-<br />

207 robocopy ist Teil der Windows Server 2003 Resource Kit Tools<br />

Seite 264


samtlänge der Datei incl. Pfadangabe länger als 256 Zeichen wird. Da das Filesystem<br />

unter Linux verwaltet wird, legt Linux diese Datei entsprechend ab. Es erfolgt<br />

keine Rückmeldung an den Anwender, dass die Dateilänge größer als 256<br />

Zeichen ist. Wird nun zu einem späteren Zeitpunkt zum Beispiel bei einer Datensicherung<br />

über Windows auf diese Datei zugegriffen, kann Windows diese nicht<br />

mehr finden. Hier muss dann die Datei vom Administrator verschoben oder kopiert<br />

werden, sodass der Dateiname incl. Pfadangabe kleiner als 256 Zeichen<br />

wird.<br />

� Unterschiedliche Sichten für Administratoren<br />

Dateiattribute werden unter Windows über den Explorer gesetzt und entsprechend<br />

angezeigt. Unter Linux werden diese Einstellungen nach den in<br />

Kapitel II.E 1.1 beschriebenen Verfahren umgesetzt. Betrachtet der Administrator<br />

die Attribute von Dateien unter Windows und unter Linux, so wird er die entsprechenden<br />

Unterschiede feststellen. Eine Überprüfung der Einstellungen, das<br />

heißt ob die Abbildung von Windows Attributen auf Linux Attribute korrekt<br />

durchgeführt wurde, bedarf der Interpretationsleistung des Administrators.<br />

� Vererbung von Attributen<br />

Bei der Vererbung von Attributen und Zugriffsrechten kann es unter Umständen<br />

zu ungewollten Vererbungen kommen. Dies ist insbesondere dann der Fall, wenn<br />

über mehrere Unterverzeichnisse Attribute beziehungsweise Zugriffsrechte vererbt<br />

werden sollen. Speziell bei der Vererbung von Zugriffsrechten ist es immer<br />

zu empfehlen, die korrekte Vererbung auch in tiefer liegende Unterverzeichnisse<br />

zu überprüfen.<br />

2.3 Von Linux NFS/OpenAFS nach Windows 2003 NTFS 5<br />

Wird eine Migration von Linux NFS/OpenAFS nach NTFS 5 durchgeführt, dann stellen<br />

die Abbildungen von Attributen und Zugriffsrechten keine Herausforderung für das NTFS<br />

5 System dar. Da das NTFS 5 System über komplexere Möglichkeiten zum Anlegen von<br />

Zugriffsrechten und Dateiattributen verfügt, können im ersten Ansatz alle Attribute und<br />

Zugriffsrechte 1:1 übernommen werden. (Siehe hierzu die Vergleichstabellen in Kapitel<br />

II.E 1.1) Eine Erweiterung oder der Aufbau von neuen Strukturen, z. B. der Zugriff über<br />

verschachtelte Benutzergruppen können nach der eigentlichen Datenmigration unter<br />

Windows durchgeführt beziehungsweise aufgebaut werden.<br />

Die im Kapitel II.E 1.1 beschriebene Thematik der langen Dateinamen inklusive<br />

Pfadangabe tritt bei einer Migration von Linux NFS/OpenAFS nach NTFS 5 noch stärker<br />

auf, da hier die Datei tatsächlich im NTFS 5 System physikalisch abgelegt wird. Das<br />

heißt, dass es hier beim Kopieren der Datei zur Verkürzung der Pfadangabe kommen<br />

kann. Dies kann dazu führen, dass die Datei im schlimmsten Fall nicht mehr zu öffnen<br />

ist. Auch die Empfehlung, dass der Dateiname inklusive Pfadangabe 240 Zeichen nicht<br />

überschreiten sollte, sollte bei einer Migration berücksichtigt werden. Gegebenenfalls<br />

müssen die Pfadnamen verkürzt werden. Eine weitere Problematik stellt die gegebenenfalls<br />

unterschiedliche Codierung von Zeichen im Dateiablagesystem dar. Linux Systeme<br />

können Dateinamen in von UTF-8 unterschiedlichen Zeichenkodierungen ablegen.<br />

Dies ist unter Windows nicht möglich. Windows verarbeitet Dateinamen immer in UTF-8.<br />

Seite 265


Dies kann zu unerwünschten Veränderungen bei einer Migration führen, denen durch<br />

vorherige Dateinamenkonvertierung auf der Linux-Seite zum Beispiel mittels convmv<br />

oder iconv entgegnet werden sollte. Außerdem ist darauf zu achten, dass die jeweilige<br />

Dateigröße 2 TB nicht überschreitet. In engem Zusammenhang mit der Dateiablage<br />

steht auch immer die Verbindung zur Benutzerverwaltung und zur Vergabe von<br />

Zugriffsrechten über Benutzer und Benutzergruppen. Die Übernahme der Benutzer und<br />

Benutzergruppen, zum Beispiel aus einem LDAP-Verzeichnis muss noch vor der Übernahme<br />

der Dateien und der Zugriffrechte geklärt und gegebenenfalls dann auch<br />

durchgeführt werden (siehe hierzu Abschnitt Authentifizierung und Verzeichnisdienste).<br />

Unter NFS und OpenAFS ist es durchaus üblich, dass verteilte Dateiablagen realisiert<br />

werden. Dies kann bei einer Migration dazu führen, dass die Daten innerhalb der Netzwerkinfrastruktur<br />

von verschiedenen Systemen zusammengeführt werden müssen. Hierbei<br />

ist darauf zu achten, dass keine Daten bei der Migration verloren gehen. Gegebenenfalls<br />

ist ein Rechner, der Bestandteil dieser verteilten Infrastruktur ist, während der<br />

Migration ausgeschaltet. Das heißt, dass nach der Migration in jedem Fall die Vollständigkeit<br />

der Daten zu überprüfen ist und sich die Verantwortlichen keinesfalls auf automatische<br />

Reports verlassen sollten. Zwar bietet Windows auch die Möglichkeit, verteilte<br />

Dateiablagesysteme aufzubauen, diese basieren aber immer auf einem NTFS System.<br />

Wird also eine komplette Migration von NFS /OpenAFS nach NTFS 5 durchgeführt,<br />

müssen alle Daten auf NTFS 5 Systeme transferiert werden. Hierbei ist es unerheblich,<br />

ob das Dateisystem unter NTFS ein verteiltes oder ein zentrales Ablagesystem ist.<br />

2.4 Von Windows Server NT4 nach Windows Server2000/2003<br />

Eine Datenmigration von NT4 Servern nach Windows2000/2003 Server stellt sich<br />

einfach dar, wenn sich die entsprechenden Server in derselben Infrastruktur befinden<br />

und sich auf den Servern NTFS Systeme mit dem gleichen <strong>Version</strong>stand befinden.<br />

Empfehlenswert ist, dass sich sowohl das Quellsystem als auch das Zielsystem auf dem<br />

gleichen <strong>Version</strong>sstand von NTFS befindet. Sollte dies nicht der Fall sein, empfiehlt sich<br />

vorab die Hebung der <strong>Version</strong>sstände der NTFS Systeme auf ein einheitliches Niveau.<br />

Dies gilt auch, wenn das Windows Filesystem ein FAT System ist. In jedem Fall sollte<br />

immer auf die aktuellste <strong>Version</strong> des NTFS Systems gewechselt werden. Wenn diese<br />

Voraussetzungen geschaffen sind, fallen im Prinzip außer dem Kopieren von Daten<br />

keine weiteren Tätigkeiten für die Migration an.<br />

Befinden sich die Server nicht in der gleichen Infrastruktur, das heißt der NT4 Server<br />

befindet sich zum Beispiel in einer Windows Domänenstruktur und der Windows 2003<br />

Server in einer Active Directory Struktur, so kann die Migration aufwändiger werden, weil<br />

die Zugriffsrechte nicht 1:1 übernommen werden können. In diesem Fall ergeben sich<br />

zwei Migrationszenarien:<br />

Seite 266


� Einbindung NT Server in eine vorhandene Active Directory Infrastruktur<br />

Bei diesem Szenario ist beziehungsweise wird der NT Server erst in die vorhandene<br />

Infrastruktur des Active Directory eingebunden, bevor die Migration der Dateiablage<br />

durchgeführt wird. Da hierbei die Zugriffsrechte entsprechend des Zielsystems<br />

angepasst werden können, kann im Anschluss die Migration durchgeführt<br />

werden.<br />

� Keine Einbindung des NT Servers in die Active Directory Infrastruktur<br />

Soll der NT Server nicht in eine Active Directory Struktur eingebunden werden,<br />

können die Daten zwar auch ohne Probleme übernommen werden, allerdings ist<br />

beim Datentransfer darauf zu achten, dass sich die Zugriffsrechte nicht ungewollt<br />

verändern.<br />

3 Bezüge<br />

3.1 Authentifizierungsdienst<br />

Wenn es um die Dateiablage geht, dann geht es auch immer um die Regelung der<br />

Zugriffsberechtigung. Es muss sichergestellt werden, dass jeder Benutzer und auch<br />

Anwendungen und Dienste nur dort Zugriff erhalten, wo dieser für sie vorgesehen ist.<br />

Interessant sind in diesem Zusammenhang sind die Möglichkeiten, die in Kombination<br />

mit Samba und OpenLDAP oder einem anderen LDAP-Verzeichnisdienst innerhalb<br />

heterogener Umgebungen (Linux- und Windows-basierte Umgebungen) bestehen.<br />

Daher sollte bei Überlegungen zur Migration von Dateiablagediensten auch immer das<br />

(Kapitel II.C ) berücksichtigt werden. Zunächst sind es die Technologiebetrachtungen mit<br />

den Abschnitten<br />

� „Linux und Samba mit OpenLDAP und Kerberos (MIT/Heimdal)―, II.C 1.1<br />

� „Fedora Directory Server (OSS-Lösung mit Multimasterfähigkeit)―, II.C 1.2<br />

� „Windows NT 4 Server als sogenannter Domänencontroller (DC)―, II.C 1.3<br />

� „Windows 2000/2003 Server mit Active Directory und Kerberos―, II.C 1.4<br />

die je nach Ausgangs- und Zielumgebung betrachtet werden sollten. Ergibt sich auch die<br />

Notwendigkeit der Migration des Authentisierungsdienstes, dann sind die passenden<br />

Abschnitte der Migrationspfade in Kapitel II.C 2 heranzuziehen.<br />

Seite 267


F Thema Druckdienste<br />

Das Thema „Drucken― wird in der IT-Welt oft vernachlässigt. Das betrifft alle Betriebssystem-Umgebungen<br />

gleichermaßen, sei es die Windows- oder die Unix-/ Linux-Welt.<br />

Doch Druckprobleme verursachen häufig die höchsten Reibungsverluste. So wird ein<br />

großer Teil der Administrationsaufwendungen für die Lösung alltäglicher Druckprobleme<br />

verwendet. Darüber hinaus ist Drucken in vielen Fällen eine „mission critical―-Anwendung,<br />

deren Ausfall zu finanziellen Verlusten führen und von den Verantwortlichen<br />

kreative Problemlösungen erfordern kann.<br />

Ein gewisser „Wildwuchs in der Infrastruktur― hinsichtlich der Druckdienste ist weit verbreitet.<br />

„Gewachsene Strukturen― haben an vielen Stellen zu zahlreichen Unverträglichkeiten<br />

geführt: Oft herrscht ein Durcheinander von Seitenbeschreibungssprachen<br />

(wie PostScript, PCL, PreScribe, ESC/P, PDF) vor. Die häufig „unfriedliche― Koexistenz<br />

von Druck- und Netzwerkprotokollen (wie LPR/ LPD, HP JetDirect, SMB/ MS-RPC) sorgt<br />

für vielerlei Probleme.<br />

Eine Migration von Druckdiensten auf eine neue Plattform wird nicht unbedingt ein möglichst<br />

genaues 1:1-Abbild der bestehenden Verhältnisse wiedergeben können. Es sollte<br />

jedoch als Chance wahrgenommen werden, bestehende Schwachstellen zu beheben.<br />

In den nachfolgenden Abschnitten wird auf die Druckdienste unter Linux und Windows<br />

näher eingegangen.<br />

1 Produkte / Technologien<br />

1.1 Allgemeine Betrachtungen<br />

In den nachfolgenden Abschnitten erfolgt zunächst die Betrachtung von wichtigen Punkten,<br />

die für alle dann anschließend betrachteten Produkte und Technologien gleichermaßen<br />

von Bedeutung sind. Hierzu gehören die Themen Drucker- und Seitenbeschreibungssprachen,<br />

die Druckprotokolle sowie die Funktionalitäten, die von einer professionellen<br />

Druckumgebung erwartet werden dürfen.<br />

1.1.1 Wichtige und sinnvolle Funktionalitäten und Anforderungen von und an<br />

Druckumgebungen<br />

Die nachfolgende Liste soll einen Eindruck darüber vermitteln, welche Anforderungen an<br />

eine Druckerumgebung gestellt werden können, die alle in enger Verbindung zu den<br />

benötigten Management- und Überwachungswerkzeugen stehen:<br />

1.1.1.1 Accounting<br />

Kostenkontrolle durch detaillierte Protokollierungsmöglichkeiten ist eine Funktion, die<br />

insbesondere mit Blick auf eine wirtschaftliche Nutzung besonders in großen Organisationen<br />

von Bedeutung ist.<br />

Seite 268


1.1.1.2 Quotas<br />

Die Funktion Quotas, also der Festsetzung von quantitativen Obergrenzen für Ausdrucke,<br />

kann sinnvoll und hilfreich für die Gewährleistung der Wirtschaftlichkeit der<br />

Druckdienste und zur Kostenkontrolle beziehungsweise –begrenzung eingesetzt werden.<br />

1.1.1.3 Job History<br />

Hiermit steht ein Überblick über die gesamten Druckvorgänge zur Verfügung. Am<br />

Jahresende liegen aussagekräftige Zahlen über Gesamtmenge (Budgetplanung),<br />

Verteilung auf Modelle und Orte (Optimierung der Ressourcenverteilung) Spitzenbelastungen<br />

(sinnvolle Neuinvestitionen) vor.<br />

1.1.1.4 Zuverlässigkeit<br />

Ein Mindestmaß an Ausfallsicherheit ist in der Regel eine wichtige Anforderung mit Blick<br />

auf die Zufriedenheit der Benutzer. Ausweichmöglichkeiten sollten leicht integrierbar sein<br />

– die Dienstbereitschaft der Printservices sollte auch ohne Anwesenheit von IT-Experten<br />

gewährleistet sein.<br />

1.1.1.5 Umleitung von Druckjobs<br />

Ein Ersatzdrucker sollte problemlos angesprochen werden können, ohne den Auftrag<br />

erneut vom Client abschicken zu müssen. (wichtig: falls der Ersatzdrucker ein anderer<br />

Typ ist, sollte er die vorliegende Druckdatei dennoch verarbeiten können).<br />

1.1.1.6 Erneutes Drucken<br />

In einer Umgebung mit zentraler Vervielfältigung sind häufig Nachdrucke abgeschlossener<br />

Druckaufträge erforderlich. Um „Printing on Demand― umzusetzen und die Auflage<br />

nachträglich zu erhöhen, oder um technische Probleme (zum Beispiel Papierstau/<br />

Stromausfall) und Bedienerfehler (zum Beispiel falsche Papierfarbe verwendet) auszugleichen,<br />

ist eine Funktion zum erneuten Nachdrucken sinnvoll.<br />

1.1.1.7 Drucken „auf Halten“<br />

Zeitversetztes oder „nächtliches― Drucken (automatisch gesteuerte Batch-Jobs), ist dann<br />

hilfreich, wenn es darum geht die Verfügbarkeit für höher priorisierte Druckaufträge zu<br />

verbessern und die Wartezeiten für die Anwender zu reduzieren. Die ist insbesondere für<br />

zentrale Druckdienstangebote in großen Organisationen eine wichtige Funktion.<br />

1.1.1.8 Verschlüsselung<br />

„Abhören― vertraulicher Daten sollte nicht möglich sein (auch nicht durch Abfangen von<br />

Druckdateien). Dies gilt nicht nur bei der Übertragung über Organisationsgrenzen hinweg<br />

sondern auch innerhalb von Organisationen, denn nicht jeder Mitarbeiter soll auf<br />

alle Daten Zugriff haben.<br />

1.1.1.9 Authentisierung<br />

Bestimmte Drucker und begrenzte „teure― Druckfunktionen (z.B. 1200 dpi im Vollbild-<br />

Modus auf Fotopapier) sollen oft nur für bestimmte Benutzergruppen zugänglich sein,<br />

dann ist die Möglichkeit der Authentisierung hilfreich.<br />

Seite 269


1.1.1.10 Ohne Spezialsoftware administrieren und zur Übersicht<br />

Idealerweise sollte die Druckinfrastruktur die Konfiguration und Kontrolle, wie zum<br />

Beispiel den schnellen Einblick in die Warteschlangen, über Webbrowser durchgängig<br />

unterstützen, um den schnellen und einheitlichen Zugriff, Flexibilität und Unabhängigkeit<br />

zu schaffen.<br />

In Abhängigkeit von den verwendeten Druckern lässt sich diese Möglichkeit umsetzen,<br />

dies gilt vor allem für die meisten PostScript-Drucker im professionellen Umfeld. Der<br />

Funktionsumfang dieser Browser-basierten Administrationsschnittstellen ist abhängig<br />

von dem, welche Funktionen die einzelnen Druckertypen unterstützen. Hierbei werden<br />

keine weiteren Werkzeuge benötigt. Es handelt sich um eine sehr flexible und portable<br />

Methode des Druckermanagements.<br />

Ein zusätzlicher Kommandozeilenzugang garantiert den Zugriff „von überall her― für<br />

Administratoren.<br />

Bezüglich der Überwachung bieten verschiedene PostScript-Drucker unter anderem die<br />

Möglichkeit Störungs-Emails zu konfigurieren, wobei die Meldungen auch als XML-Datei<br />

angehängt werden können und damit die Chance einer automatisierten Weiterverarbeitung<br />

bieten, um sie zum Beispiel mittels Skript auszuwerten und darauf hin bei Bedarf<br />

weitere Maßnahmen automatisch zu initiieren (zum Beispiel bei Papierstau den Hausmeister<br />

benachrichtigen). Diese Lösungen gibt es aber auch nicht „out of the box―, sie<br />

müssen erst definiert und dann implementiert werden. Weiterhin kann man sich mit vielen<br />

PostScript-Druckern im professionellen Bereich auch die Möglichkeiten von SNMP<br />

zunutze machen.<br />

Generell sollte angestrebt werden, möglichst wenige, plattformunabhägige flexible Werkzeuge<br />

in einer Gesamtlösung einzusetzen. Hierdurch werden insbesondere das Risiko<br />

von irrtümlichen Fehlbedienungen und Schulungsaufwand und -Kosten reduziert.<br />

Wesentlich ist, dass vor der Beschaffung von Druckern die Anforderungen hinsichtlich<br />

der Managementmöglichkeiten genau untersucht und definiert werden sollten, um darauf<br />

aufbauend geeignete Drucker zu beschaffen.<br />

1.1.1.11 Integration in heterogene Welten<br />

Eine Drucksoftware sollte multiprotokollfähig sein, denn in der Praxis kommt noch kein<br />

allgemein verwendeter Standard zum Einsatz – Multiprotokoll-Fähigkeit muss sowohl in<br />

Richtung Clients gegeben sein (die frei in der Wahl des Protokolls sein sollten, über das<br />

sie ihre Druckdaten schicken wollen) als auch Richtung Zieldrucker beziehungsweise<br />

second-level Print-Server (die oft zu „altmodisch― sind und deshalb bestimmte Konventionen<br />

verlangen). Zugleich muss eine umfassende Unterstützung des künftigen Standards<br />

IPP vorhanden sein.<br />

Seite 270


1.1.2 Unterstützung etablierter F<br />

208<br />

F Standards<br />

bei Druckdaten-Übertragung<br />

Die genannten funktionalen Anforderungen müssen durch die vorgeschlagenen technischen<br />

Lösungen erfüllt werden. Dabei ist vor allem eine entsprechende Offenheit durch<br />

die Konsolidierung auf bestehenden anerkannten offenen Standards anzustreben. Zu<br />

diesen Standards zählen zum einen die Druckprotokolle und zum anderen die Drucker-<br />

und Seitenbeschreibungssprachen.<br />

1.1.2.1 Druckprotokolle<br />

Die für einen Übergangszeitraum noch erforderliche Unterstützung althergebrachter oder<br />

proprietärer Protokolle (und Geräte, die darauf beruhen) sollte weiterhin gewährleistet<br />

sein. Nachfolgend werden die wichtigsten Protokolle vorgestellt:<br />

LPR/LPD<br />

Das LPR/LPD Protokoll wurde im August 1990 im RFC 1179 von L. McLaughlin III im<br />

Namen der Network Printing Working Group beschrieben. Früher wurde der Druckservice<br />

oft als zentraler Dienst eines Rechenzentrums erbracht. Bislang war es nicht<br />

üblich, dass Netzwerkdrucker (zum Beispiel als Etagendrucker oder Abteilungsdrucker)<br />

oder lokale Drucker in einer Organisationseinheit weit verbreitet waren. Durch die Entwicklung<br />

und des Einsatzes des LPR/LPD Protokolls war es den Systemadministratoren<br />

möglich, Ausdrucke in betriebsschwachen Zeiten durchzuführen. Der Anwender konnte<br />

so einen Druckjob anstoßen, ohne sich um den eigentlichen Ausdruck kümmern zu<br />

müssen. Die im Rechenzentrum erstellten Ausdrucke wurden dann entweder verteilt<br />

oder vom Anwender im Rechenzentrum abgeholt. In heutiger Zeit hat die Bedeutung des<br />

zentralen Drucks in einem Rechenzentrum jedoch an Bedeutung verloren. Trotzdem ist<br />

der Einsatz des Protokolls auf Grund der sich bietenden Möglichkeiten auch heute noch<br />

sinnvoll, da es zum Beispiel den Administratoren Transparenz über alle Druckaufträge<br />

innerhalb einer Organisation verschaffen kann.<br />

Der Protokollname LPR/LPD setzt sich aus den folgenden Abkürzungen zusammen:<br />

� LPR ist die Abkürzung für Line Printer Redirector und ist unter Unix der Befehl,<br />

um eine zu druckende Datei an einen Drucker zu senden.<br />

� LPD steht für Line Printer Daemon. Dieser Daemon nimmt über eine HTCPH-<br />

Verbindung Befehle entgegen, um einen lokal angeschlossenen HDruckerH zu<br />

steuern.<br />

LPR/LPD, das traditionelle Protokoll zur Druckdaten-Übertragung (vom Client zum Print-<br />

Server, von Server zu Server und vom Server zum Ziel(-netzwerk)-drucker, oder auch<br />

vom Client direkt zum Drucker), hat aber auch viele Nachteile. Es ist unverschlüsselt,<br />

unautorisiert, wenig zuverlässig und nicht bidirektional (zum Beispiel keine Rückmeldungen<br />

vom Drucker). Ferner ist es kein „richtiger― Standard, wodurch verschiedene Implementierungen<br />

möglich sind, die aufgrund von Inkompatibilitäten mitunter zu Schwierigkeiten<br />

führen.<br />

208 Sowohl offener als auch nicht offener Standard.<br />

Seite 271


IPP<br />

Internet Printing Protocol ist der Internetstandard für das Drucken sowohl im lokalen<br />

Netz (LAN) als auch im großräumigen Netz (WAN, Internet). Das Protokoll deckt alle<br />

denkbaren Kommunikationsmöglichkeiten ab (vom Client zum Server, vom Server zum<br />

Server, vom Server zum Zieldrucker und auch den direkten Weg vom Client zum Zieldrucker).<br />

Die letzte und einzig verbindliche Spezifikation ist IPP-1.1. Das IPP wurde von<br />

209<br />

einer Arbeitsgruppe (der PWGF<br />

F), bestehend aus Vertretern von Drucker-, Betriebssystem-<br />

und Software-Herstellern aus Europa, USA und Japan entworfen und von der IETF<br />

standardisiert. Es ist bereits in allen aktuellen Netzwerk-Druckern eingebaut. So lange<br />

allerdings noch „alte― LPR/LPD-Modelle im Einsatz sind (die auch noch auf Jahre hin<br />

funktionsfähig bleiben werden), wird die entsprechende Umstellung nur dort erfolgen, wo<br />

es unmittelbar sinnvoll ist. Die Nutzung von IPP ermöglicht sowohl die Nutzung von Verschlüsselungs-<br />

als auch Authentisierungsfunktionen, zum Beispiel bei der Verwendung<br />

unter CUPS, wie dies im Kapitel X‎II.A 1.2 X dargestellt<br />

netzwerkfähigen Druckern unterstützt.<br />

Socket/ AppSocket<br />

wird. IPP wird von den meisten<br />

AppSocket (oft besser bekannt als „HP JetDirect―) ist ein performantes Übertragungsprotokoll<br />

für Druckdaten. Es ist leistungsfähiger und zuverlässiger als LPR/LPD: es<br />

beinhaltet ein gewisses Maß an bidirektionaler Kommunikation und es ist schneller.<br />

Allerdings bietet es weder Verschlüsselung von Druckdaten noch Authentisierung von<br />

Nutzern. Die Status-Rückmeldungen vom Drucker erfolgen in der Praxis nur vom Server<br />

zum Drucker oder bei direktem Weg vom Client zum Drucker. Inzwischen wird das<br />

AppSocket Protokoll auch von anderen Herstellern als HP unterstützt.<br />

SMB/ CIFS<br />

Windows-Clients benutzen dieses Protokoll, um an Print-Server (oder andere Windows-<br />

Rechner, sofern diese „freigegebene― Drucker anbieten) Druckdaten zu übertragen. Der<br />

Weg vom nächsten Windows-Rechner zum Ziel(-netzwerk-)drucker muss dann häufig<br />

wieder über ein anderes Protokoll geregelt werden, es sei denn dieser ist lokal angeschlossen,<br />

zum Beispiel über Parallel-, USB-, FireWire- oder serielle Schnittstelle.<br />

MS-RPC<br />

Windows-Clients ab NT4 können dieses Protokoll verwenden, um Druckdaten an einen<br />

Windows-Print-Server (ab NT4) zu übertragen. Ebenso kann eine automatische Treiberinstallation<br />

auf den Clients über RPC-Methoden erfolgen, sofern der Print-Server die<br />

entsprechenden Dateien vorhält. (Das „Hochladen― der Treiber auf den Print-Server<br />

durch einen Administrator von einem Client-Rechner aus, basiert ebenfalls auf RPC). Da<br />

Samba SMB/CIFS beherrscht, kann dieses Protokoll auch für CUPS nutzbar gemacht<br />

werden.<br />

209 http://www.pwg.org/ipp/<br />

Seite 272


1.1.2.2 Die Druckerbeschreibungssprache PostScript Printer Description<br />

PostScript Printer Descriptions (PPD) sind Dateien, in welchen die speziellen Eigenschaften<br />

(Bildauflösungen, Papiergrößen und -fächer, Schriften, usw.) eines bestimmten<br />

PostScript Druckermodells beschrieben werden können. Diese PPD-Dateien sind keine<br />

Druckertreiber und sie werden in der Regel von den Druckerherstellern bereitgestellt. Mit<br />

ihrer Hilfe lassen sich bei Verwendung eines einheitlichen Treibers für alle PostScript-<br />

Drucker die in der Datei beschriebenen speziellen Eigenschaften eines Druckers<br />

ansteuern.<br />

Die Spezifikation der Druckerbeschreibungssprache PPD wurde ursprünglich von der<br />

Firma Adobe definiert und wird heute von nahezu jedem modernen Drucksystem unterstützt,<br />

welches PostScript-Drucker ansteuert kann.<br />

1.1.2.3 Die Seitenbeschreibungssprachen (PostScript)<br />

Die Seitenbeschreibungssprache PostScript (PS) ist eine Programmiersprache, die auf<br />

eine langjährige Entwicklung zurückblickt. Entwickelt wird PostScript durch die Firma<br />

210<br />

Adobe seit ihrer Gründung im Jahre 1982 F<br />

F als Ergebnis der Erfahrungen mit den<br />

211<br />

Quasi-Vorgängern, Design System (1976) und JaM (1978). F<br />

F Mit PostScript besteht die<br />

Möglichkeit in normierter Form und geräteunabhängig Grafiken, Schriften, geometrische<br />

Objekte und Rasterbilder innerhalb eines Dokuments anzuordnen. Die Beschreibung<br />

erfolgt dabei im PostScript-Format innerhalb sogenannten PostScript-Dateien, die an<br />

den jeweiligen PostScript-Drucker oder andere PostScript-fähige Ausgabegeräte, wie<br />

zum Beispiel Plotter, gesendet werden. PostScript-fähige Ausgabegeräte zeichnen sich<br />

vor allem dadurch aus, dass sie in der Lage sind diese Dateien, das heißt das Post-<br />

Script-Format zu interpretieren und in Rastergrafiken umzusetzen. Dafür sind diese<br />

Geräte mit einem entsprechenden Interpreter ausgestattet. Es gibt solche Interpreter<br />

auch reine Software-Implementierung, eine der wohl bekanntesten ist die Open Source<br />

212<br />

Software Ghostscript F<br />

F.<br />

1.2 Common Unix Printing System (CUPS)<br />

Das Common Unix Printing System (CUPS) wurde von Easy Software Products entwickelt.<br />

Es wurde als Nachfolger von älteren Drucksystemen, zum Beispiel LPD entworfen.<br />

Am 11. Juli 2007 gab Apple bekannt, die Rechte an CUPS gekauft zu haben.<br />

Seit MAC OS 10.2 (Tiger) hat Apple CUPS integriert. Die aktuelle <strong>Version</strong> von MAC OS<br />

213<br />

ist die <strong>Version</strong> 10.5 (Leopard). Aktuell F<br />

F ist CUPS in der <strong>Version</strong> 1.3.6 verfügbar. Und<br />

die <strong>Version</strong> 1.4 befindet sich in der Entwicklung.<br />

CUPS ist ein modulares, auf einer Client/Server-Architektur aufbauendes Drucksystem<br />

für Unix-artige Betriebssysteme. Es besteht aus einem Printspooler, einem Scheduler<br />

und einem Filtersystem, welches die Druckdaten in ein für den Drucker verständliches<br />

Format konvertiert, sowie einem Backendsystem, welches diese Daten zum Drucker<br />

sendet. Damit erlaubt es CUPS einem Computer als Druckserver zu agieren.<br />

210 Manche Quellen erwähnen auch 1983 oder 1984 als Beginn der Entwicklung.<br />

211 http://www.mathematik.uni-ulm.de/help/pstut/01_inh.html<br />

212 Hhttp://www.cs.wisc.edu/~ghost<br />

213 10. März 2008<br />

Seite 273


Der wesentliche Vorteil von CUPS ist, dass es ein standardisiertes und modularisiertes<br />

Drucksystem ist. Darüber hinaus ist CUPS eine Open Source Software und steht sowohl<br />

unter der GNU General Public License als auch der GNU Lesser General Public License<br />

(<strong>Version</strong> 2) zur Verfügung.<br />

In der aktuellen <strong>Version</strong> bietet CUPS auch die Unterstützung des IPv6 Standards und<br />

die Freigabe von Druckern über LDAP in der <strong>Version</strong> 3.<br />

In der folgenden Auflistung werden die potentiellen Architekturmöglichkeiten beim Einsatz<br />

von CUPS skizziert, wobei die Erhöhung der Ausfallsicherheit für viele Einsatzszenarien<br />

von entscheidender Bedeutung ist:<br />

1.2.1 Server<br />

Jeder CUPS-Rechner, der direkt mit einem Drucker kommuniziert, kann die Druckfunktion<br />

anderen Rechnern als Dienst anbieten und fungiert somit als CUPS-Server. Voraussetzung<br />

dafür sind die entsprechenden PPDs und Filter für die druckgerechte Aufbereitung<br />

der Druckdateien.<br />

1.2.2 Client<br />

Jeder Rechner, der Druckdateien an einen Server weiterschickt, ist ein CUPS-Client. Ein<br />

Client benötigt lokal keine Filter oder PPDs. Wenn jedoch auf dem Client festgelegt werden<br />

soll, welche Druckmöglichkeiten beim Drucken bestehen, werden die PPDs vom<br />

Server automatisch auf den Client übertragen.<br />

1.2.3 Zero-Administration für native CUPS Clients<br />

CUPS-Server verbreiten innerhalb des Netzwerkes Informationen über die installierten<br />

Drucker an die Clients. Damit wissen die Clients, welche Drucker im Netzwerk<br />

verwendet werden können. Die Informationen werden mittels UDP-Broadcasting<br />

publiziert. Alternativ kann der Client gezielt die Informationen bei den Servern<br />

nachfragen (Polling). Das Polling kann auch gezielt bei Servern eingesetzt werden, die<br />

durch Router getrennt sind. Server, die in unterschiedlichen Netzen stehen, können als<br />

BrowseRelay konfiguriert werden und die Daten über die verfügbaren Drucker abholen<br />

und an die Clients der eigenen Broadcast-Domäne weiterleiten.<br />

1.2.4 Clustering für Ausfallsicherheit und Failover<br />

Zwei oder mehrere CUPS-Server können so konfiguriert werden, dass Ausfallsicherheit<br />

bezüglich der Druckdienste implementiert werden kann. Dieses Ziel kann erreicht<br />

werden, wenn die Server mit denselben Druckern und Druckernamen konfiguriert<br />

werden. Auf den CUPS-Servern werden automatisch implizite Klassen gebildet, die aus<br />

den Druckern mit demselben Namen bestehen. Der Server, der zuerst bereit ist,<br />

übernimmt dann den Druckauftrag des Clients und schickt ihn an den Drucker. Diese<br />

Konfiguration kann auch durch die manuelle Bildung von Klassen hergestellt werden,<br />

wobei diese Klassen auch aus Druckern mit unterschiedlichen Namen bestehen können.<br />

Seite 274


1.2.5 Druck und Druckeransteuerung<br />

Die Funktionalität von CUPS ist durch die Implementierung von IPP plattformübergreifend<br />

angelegt. Das IPP wird als Protokoll zwischen den CUPS-Servern, -Clients und<br />

modernen Druckern mit direkter IPP-Unterstützung als Medium der Kommunikation- und<br />

Datenübertragung verwendet.<br />

Unter Verwendung von IPP kann unter CUPS die Kommunikation zwischen Client- und<br />

dem Serversystem in verschlüsselter Form erfolgen. Für die Übertragung der Daten<br />

kann SSL 3 oder TLS genutzt werden. Dies kann in Firmen und Behörden, wo vertrauliche<br />

Dokumente ausgedruckt werden, von besonderer Bedeutung sein. Durch diese<br />

Maßnahmen ist die eigentliche Kommunikation verschlüsselt. Bisher kann CUPS Zertifikate<br />

nicht validieren oder Certification Revocation Lists (Zertifikatssperrlisten) prüfen.<br />

Nach einer erfolgreichen „Man in the middle― Attacke und dem Vorzeigen eines beliebigen<br />

Zertifikats bietet TLS keinen Schutz mehr. Die Fähigkeit Zertifikate zu prüfen ist aber<br />

einfach nachzurüsten.<br />

Bei der Kommunikation mit herkömmlichen Druckern oder Print-Servern können CUPS-<br />

Module, sogenannte „BackEnds―, eingesetzt werden Diese Module ermöglichen die<br />

Kommunikation mittels anderer Protokolle. In XAbbildung 29 wird die Verwendung der<br />

Protokolle an den jeweiligen Übergängen dargestellt.<br />

Abbildung 29: Drucken unter CUPSF<br />

Für die Druckeransteuerung verwendet CUPS die in Abschnitt II.F 1.1.2.2 X beschriebene<br />

PostScript Printer Descriptions (PPD) und dies nicht nur für PostScript-fähige Drucker.<br />

214<br />

Hhttp://www.linuxprinting.org/kpfeifle/LinuxKongress2002/Tutorial/ H<br />

Seite 275<br />

214


CUPS ist in der Lage diese auch für Drucker ohne eigenen eigenen PostScript-<br />

Interpreter einzusetzen, um damit die entsprechenden Konfigurationseinstellungen über<br />

das Web-Frontend oder über die Konfigurationsmasken der Clients zu ermöglichen.<br />

Für Drucker, die nicht PostScript-fähig sind, konvertiert der CUPS-Server dann die vom<br />

Client gelieferten Daten über entsprechende Filter in die jeweilige hersteller- und gerätespezifische<br />

Seitenbeschreibungssprache.<br />

Solche Filter zur Konvertierung von PostScript werden unter Linux u.a. auch mit<br />

Ghostscript umfangreich zur Verfügung gestellt. CUPS selbst integriert eine angepasste<br />

<strong>Version</strong> von Ghostscript.<br />

Für die Verwendung in CUPS können die PPD-Dateien benutzer- und anwendungsspezifisch<br />

angepasst werden. Informationen über eigene CUPS Erweiterungen zu<br />

215<br />

Adobes PPD können im Internet nachgeschlagen werden F<br />

F.<br />

1.2.5.1 Direkter Druck vom Arbeitsplatzsystem<br />

Ein direkter Druck von einem Client auf einen Drucker ist unter CUPS auf Grund der<br />

Architektur nicht vorgesehen. Es besteht aber die Möglichkeit einen CUPS-Server und<br />

einen Client gleichzeitig auf einem Unix-basierten (z.B. Linux oder Mac OS X) Arbeitsplatzrechner<br />

zu nutzen. Damit können dann Dateien vom Client aus auf einem direkt<br />

angeschlossenen Drucker ausgedruckt werden.<br />

1.2.5.2 Druck via Print-Server<br />

216<br />

Der Druckauftrag eines Client wird an einen HSchedulerHF<br />

F gesendet, der die zu druckenden<br />

Daten mittels Filter in das HPostScriptH-Format konvertiert. Anschließend werden<br />

diese Daten zum einem „Backend― gesendet, welches die Daten entweder auf dem<br />

entsprechenden Drucker druckt (und die PostScript-Daten dafür umwandelt, wenn der<br />

Drucker kein PostScript-Drucker ist) oder übermittelt sie an einen anderen CUPS-Server.<br />

Solange CUPS ohne Samba eingesetzt wird bestehen für Windows-basierte Clients nur<br />

eingeschränkte Möglichkeiten über CUPS alleine drucken zu können, da sie nicht auf die<br />

Druckerfreigabe zugreifen können. Da über eine entsprechende CUPS Software-<br />

Bibliothek eine optimale Integration von CUPS in Samba verfügbar ist (siehe auch<br />

Abschnitt X‎II.A 1.3 X), kann ein Samba-Print-Server seine ankommenden Druckaufträge<br />

(von Windows-basierten Clients) per IPP an einen CUPS-Print-Server weiterleiten. Das<br />

Ganze erfolgt für die Anwender völlig transparent.<br />

Bei einem Einsatz von Windows 2000 (Workstation und Server) oder höheren <strong>Version</strong>en<br />

von Windows ist ein Drucken über CUPS ohne Samba möglich, wenn das IPP Protokoll<br />

genutzt wird. IPP wird, wie bereits weiter oben erwähnt, von den meisten netzwerkfähigen<br />

Druckern unterstützt.<br />

Um die volle Funktionalität von CUPS nutzen zu können kann es notwendig sein einen<br />

217<br />

Hotfix von Microsoft einzuspielenF<br />

F.<br />

215<br />

Hhttp://www.cups.org/documentation.php/spec-ppd.html<br />

216<br />

Ein Steuerungsprogramm welches die zeitliche Ausführung mehrerer (Druck)Prozesse<br />

regelt.<br />

217<br />

Hhttp://support.microsoft.com/kb/884897/de<br />

Seite 276


1.2.6 Technische Umsetzung der Treiberfunktion<br />

Der folgende Abschnitt bezieht sich auf die Kommunikation mit Druckern, die kein Post-<br />

Script unterstützen. Bei Druckern, die PostScript unterstützen, werden die Daten im<br />

PostScript-Format direkt an den Drucker gesendet, der dann die Aufbereitung der Daten<br />

mittels integriertem Interpreter zum Ausdruck selbst vornimmt.<br />

Die Umsetzung der Druckdatei in druckergerechte Bitmaps kann bei Druckern, die keine<br />

PostScript-Drucker sind, über zwei unterschiedliche Modelle realisiert werden:<br />

� Die komplett clientseitige Ausführung der Treiberfunktionen<br />

Hierbei wird die Druckdatei auf dem Client druckfertig aufbereitet. Der Print-<br />

Server hat reine Spooling-Funktionen für „raw― Druckdaten. Treiber können dem<br />

Client zum Download und zur automatischen Installation angeboten werden.<br />

� Die Druckdaten-Aufbereitung erfolgt auf dem Print-Server<br />

Hierbei werden die Druckdaten von den Clients im PostScript-Format an den<br />

Print-Server gesendet. Auf den Clients wird hierzu ein entsprechender Post-<br />

Script-Treiber benötigt, der vom Server zur automatischen Installation angeboten<br />

werden kann. Die aufbereiteten Druck-Daten werden vom Server an den gewünschten<br />

Drucker weitergeleitet. Sofern es sich um einen Nicht-PostScript-<br />

Drucker handelt, erfolgt die Druckaufbereitung mittels spezieller Software (siehe.<br />

Abschnitt II.F 1.1.2.3).<br />

Das zweite Modell, das heißt die Aufbereitung der Druckdaten auf dem Printserver, bietet<br />

gegenüber dem ersten Modell mehrere Vorteile:<br />

� Es unterstützt zusätzlich die meisten gängigen Nicht-PostScript-Drucker (abhängig<br />

von der Unterstützung durch Ghostscript oder andere Treiberpakete).<br />

� Automatisches Accounting<br />

Über jede Seite werden Druckzeit, Auflage, Zieldrucker, Druck-ID, Anwendername,<br />

und Absender-IP automatisch mitgeloggt und stehen für spätere Auswertungen<br />

(Kostenkontrolle, Statistiken) zur Verfügung.<br />

� Quotierungsoption<br />

Druck-Quotas (nach Anzahl der Seiten und/oder Größe der Druckdaten-Menge)<br />

können den Nutzern pro Drucker zugeordnet werden.<br />

� Reprint-Funktion<br />

Aufträge können über einen gewissen Zeitraum aufbewahrt und zur Verfügung<br />

gestellt werden, wenn ein Neu- oder Nachdruck erforderlich sein sollte (ohne<br />

dass der Client die Datei nochmals suchen, öffnen und abschicken muss).<br />

� Redirect-Funktion<br />

Druckdateien können jederzeit auf einen anderen Zieldrucker umgeleitet werden,<br />

selbst dann, wenn der ursprüngliche Drucker ein PostScript-Modell war und der<br />

neue Drucker ein nicht-PostScript-Gerät ist. Druckoptionen können modellgerecht<br />

auf das neue Zielgerät angepasst werden.<br />

� Treiber-Konsolidierung<br />

Bei nicht PostScript Druckern nutzen alle Clients im Endeffekt denselben Core-<br />

PostScript-Treiber, der nur durch eine ASCII-Datei, die „PPD―, modifiziert wird.<br />

Seite 277


Demgegenüber stehen jedoch folgende Einschränkungen:<br />

� Erhöhter Ressourcenbedarf<br />

Die zentrale Druckdatenaufbereitung auf dem Server erfordert mehr RAM, CPU<br />

und HD-Platz. Dieser kann jedoch zuverlässig im Voraus ermittelt werden, wenn<br />

das erwartete Druckaufkommen bekannt ist. Bei Druckern die PostScript-Daten<br />

verwenden können, wird die PostScript-Datei einmalig erzeugt und dann weitergeleitet.<br />

� Eventuell leichte Einschränkungen bei älteren Druckermodellen<br />

Zwar wird die Mehrzahl der gängigen Druckermodelle unterstützt – allerdings gibt<br />

es, einige wenige ältere Geräte, vor allem im Heimanwenderbereich, bei welchen<br />

dies nicht der Fall ist. Eine Liste der unterstützten Hersteller und Modelle kann<br />

218<br />

der „Linuxpriniting.org―-DatenbankF<br />

F entnommen werden. Gegebenenfalls kann<br />

man für PostScript-fähige Drucker beim Hersteller einen Treiber für Mac OS 9<br />

oder Mac OS X laden und dann die PPD extrahieren.<br />

1.2.7 Filter<br />

CUPS verwendet intern ein modular aufgebautes Filtersystem. Es setzt auf offenen<br />

Schnittstellen auf und kann jederzeit erweitert werden. Dabei können beliebige<br />

Scriptsprachen (Shell, Perl, Python) oder Programmiersprachen (C, C++, Java etc.) zum<br />

Einsatz kommen. Die Einbindung proprietärer Binär-Programme ist über Wrapper-<br />

Skripte auf einfache Weise möglich.<br />

1.2.8 BackEnds<br />

Neue BackEnds sind leicht „andockbar―; sei es zur umgebungsspezifischen Anpassung<br />

an spezielle Anforderungen (zum Beispiel automatische Replikation bestimmter Druckaufträge<br />

in einer woanders lokalisierten Abteilung, zum Beispiel zwecks Ablage von<br />

Geschäftsbriefen im Archiv) oder weil technologische Neuerungen dieses Vorgehen<br />

attraktiv machen (Wireless LAN, Bluetooth, FireWire).<br />

1.2.9 Zugriffssteuerung<br />

Die Zugriffssteuerung für die von Print-Servern betriebenen Netzwerkdrucker wird vom<br />

CUPS Print-Server geregelt, sofern diese nicht über einen Verzeichnisdienst gesteuert<br />

wird. Dabei unterstützt CUPS auch die Authentifizierung auf Basis des Kerberos-<br />

219<br />

ProtokollsF<br />

F.<br />

218 http://www.linuxprinting.org/show_driver.cgi?driver=hpijs<br />

219 http://www.cups.org/documentation.php/kerberos.html<br />

Seite 278


1.2.10 Werkzeuge<br />

CUPS hat ein „eingebautes― Web-Interface, das über die URL „http://CUPS-<br />

DRUCKSERVER:631/― erreichbar ist. Es ermöglicht den informativen Zugang aller<br />

Nutzer zu den Funktionen des Print-Servers. Benutzer können in Abhängigkeit von der<br />

Konfiguration den Status von Druckaufträgen überwachen sowie Druckaufträge<br />

abbrechen, neu starten oder alte Aufträge nachdrucken und so weiter.<br />

Über das Web-Interface kann man Drucker(-Warteschlangen) neu anlegen, löschen,<br />

umkonfigurieren, starten, stoppen, schließen oder öffnen sowie Druckaufträge stornieren,<br />

diese auf Halde legen oder neu starten. Die Möglichkeiten zur Verwendung des<br />

Web-Interface können durch Konfiguration des CUPS-Servers eingeschränkt beziehungsweise<br />

erweitert werden. Das Web-Interface unterliegt denselben Zugangskontrollen<br />

wie die allgemeinen CUPS-Ressourcen. Jedes Objekt des Print-Servers (Zugriff<br />

auf eigene Jobs oder einzelne Drucker, Zugriff auf alle Drucker oder alle Jobs usw.)<br />

lässt sich mit differenzierten Zugriffsrechten versehen: zum Beispiel „User Müller darf<br />

administrieren, aber nur wenn er von Rechner A oder B zugreift―, oder „Alle User dürfen<br />

eigene Druckjobs löschen, aber keine fremden―.<br />

In Abhängigkeit der vom Drucker unterstützten Protokolle und den auf dem CUPS Server<br />

installierten Druckertreibern ist eine Überwachung der Drucker möglich. Hierunter<br />

wird verstanden, dass das CUPS System u.a. folgende Warnungen der Drucker erkennt<br />

und meldet:<br />

� Füllstandsanzeige der Papierschächte<br />

� Füllstandsanzeige von Toner / Tintenpatronen<br />

� Fehlermeldungen der Drucker (zum Beispiel Papierstau)<br />

� Status des Druckers (zum Beispiel Online, Offline)<br />

Die Ursachen für die oben genannten Warnmeldungen lassen sich in den meisten Fällen<br />

nur direkt am Drucker beheben.<br />

Darüber hinaus stehen unabhängig davon die „eingebauten― Werkzeuge professioneller<br />

Drucker zur Verfügung, wie sie im Abschnitt XII.F 1.1.1.10 X angesprochen werden.<br />

1.2.11 Schnittstellen<br />

Sobald ein System TCP/IP unterstützt, bildet CUPS eine vielseitige Schnittstelle für<br />

Druckdienste zu allen gängigen Druckern und Clientsystemen. Dadurch lassen sich heterogene<br />

und sehr flexible Drucknetzwerke aufbauen, die auch eine gewisse Zukunftssicherheit<br />

bieten, solange das TCP/IP Protokoll genutzt wird. Drucker, die kein TCP/IP<br />

unterstützen können mit CUPS nicht direkt angesprochen werden. Bei Bedarf kann dies<br />

jedoch über entsprechende Druckerboxen realisiert werden. Beim Einsatz von CUPS<br />

kann auch nach Druckern „gebrowst― werden. Diese Kommunikation findet über das<br />

UDP Protokoll (Port631) statt.<br />

Es ist darauf zu achten, dass die Kommunikation mit dem CUPS Server entweder über<br />

die IP Adresse oder den vollqualifizierten Domainnamen des Servers erfolgt. Windows<br />

Clients können in einer reinen CUPS Umgebung nicht über Druckerfreigaben kommunizieren.<br />

Seite 279


1.2.12 Fazit<br />

Unter Linux ist CUPS der de-facto Standard aller großen Distributionen (Suse, Debian,<br />

RedHat, usw.). CUPS ist das System der Wahl, sowohl in homogenen Linux-<br />

Systemlandschaften als auch in heterogenen Systemlandschaften mit windowsbasierten<br />

Clientsystemen.<br />

Die Funktionalität von CUPS ist durch die Implementierung von IPP (Internet Printing<br />

Protocol) plattformübergreifend angelegt. CUPS unterstützt aber auch alle weiteren relevanten<br />

Druckprotokolle wie LPR/LPD, Socket/AppSocket, SMB/CIFS und MS-RPC (in<br />

Kombination mit Samba).<br />

Darüber hinaus bietet CUPS verschiedene Möglichkeiten, Datensicherheit auch beim<br />

Drucken zu gewährleisten. Hierzu gehören die SSL-verschlüsselte Übertragung bei IPP-<br />

Verwendung oder auch die Benutzer-Authentifizierung im Zusammenspiel mit Samba<br />

oder Kerberos. Dies hat auch im Hinblick auf das Accounting von Druckerzugängen<br />

große Vorteile.<br />

Im Vorfeld einer Migration sollte in jedem Fall die Unterstützung der eingesetzten<br />

Druckermodelle überprüft werden. Dies gilt insbesondere, wenn die Druckaufbereitung<br />

komplett auf den Print-Servern erfolgen soll, da in wenigen, vereinzelten Fällen eine<br />

Unterstützung nicht gegeben sein könnte.<br />

1.3 Common Unix Printing System (CUPS) mit Samba<br />

CUPS lässt sich aufgrund der Tatsache, dass seine Funktionen in einer Library (Software-Bibliothek)<br />

implementiert wurden, sehr gut integrieren. Dadurch können andere<br />

Programme seine Funktionen nutzen, indem sie gegen diese Bibliothek „linken―. Samba<br />

macht davon Gebrauch. Per Default ist Samba gegen libcups.so gelinkt. Ein Samba-<br />

Print-Server kann dadurch seine ankommenden Druckaufträge per IPP an CUPS-Print-<br />

Server weiterleiten. Diese CUPS Print-Server können auf anderen, für den Druckdienst<br />

dezidierten Hosts installiert sein oder auf demselben wie Samba. Die Verwendung von<br />

IPP geschieht hierbei transparent für den Administrator oder Nutzer und erfordert keine<br />

weitere Konfiguration.<br />

1.3.1 Möglichkeiten des Zusammenspiels von SAMBA und CUPS<br />

1.3.1.1 Treiber-Download & -Installation durch Clients mit „Point & Print“<br />

Die CUPS/Samba-Kombination unterstützt den automatisierten Treiber-Download zu<br />

Windows-Clients mittels „Point and Print―. Samba muss hierfür so konfiguriert sein, dass<br />

es einen NT-Print-Server nachbildet. Die Konfiguration ist in der Samba HOWTO Collection<br />

detailliert beschrieben und kann leicht realisiert werden. Auch das Hochladen von<br />

Treibern durch einen Administrator von einer Client-Maschine aus wird unterstützt.<br />

Die Druckertreiber liegen hierbei auf dem Samba-Server. Sie werden automatisch im<br />

Hintergrund auf den Windows Client-Systemen installiert, sobald der Nutzer erstmals<br />

den Drucker in der Netzwerkumgebung sucht oder erkennt und (per „Rechts-Mausklick―)<br />

im Kontext-Menü „Verbinden...― auswählt.<br />

Seite 280


1.3.1.2 Automatische Treiberinstallation per Logon-Scripts<br />

Noch komfortabler wird es für Benutzer und Administratoren innerhalb einer Domäne,<br />

wenn „Logon-Scripts― eingesetzt werden. In diesem Logon-Script muss nur die Zeile<br />

„rundll32 printui.dll,PrintUIEntry /in /n„\\SAMBASERVERNAME\druckerfreigabename―<br />

vorkommen. Hierdurch wird der entsprechende Drucker automatisch für den sich einloggenden<br />

Benutzer installiert (weitere diesbezügliche Möglichkeiten sind die Installation<br />

mehrerer Drucker, die Setzung eines Standard-Druckers, die Löschung hinfällig gewordener<br />

Druckerwarteschlangen usw.). Die vorgenannte Möglichkeit offeriert eine komfortable<br />

Administration der Druckertreiber und eine Verringerung der Aufwände für die Administratoren.<br />

Verschiedene Benutzer-Gruppen können über verschiedene Logon-<br />

Scripts verschieden angepasste Umgebungen erhalten.<br />

1.3.2 Sicherheit und Authentisierung<br />

Die Kommunikation zwischen dem Client- und Serversystem kann auch hier in verschlüsselter<br />

Form erfolgen, sofern IPP verwendet wird.<br />

Windows-Clients authentisieren sich typischerweise nicht bei CUPS, sondern bei Samba.<br />

Diese Authentisierung wird automatisch genutzt, wenn über Samba gedruckt wird.<br />

Die Rechteverwaltung wird dabei von Samba übernommen. Es ist dann lediglich auf<br />

geeignete Weise sicherzustellen, dass der Samba-Server zur Benutzung des CUPS-<br />

Print-Servers autorisiert ist. Hierbei ist zu beachten, dass ohne den Einsatz von IPP<br />

keine Verschlüsselung auf dem gesamten Kommunikationsweg vom Client zum Drucker<br />

gewährleistet wird. Dies ist in Bereichen mit einem hohen Sicherheitsbedürfnis nicht<br />

akzeptabel. Daher ist in solchen Bereichen vom Einsatz vom SMB/RPC Protokoll abzusehen,<br />

da diese keine Verschlüsselung gewährleisten.<br />

1.3.3 Publikation von CUPS-Druckern in LDAP und Active Directory<br />

Samba kann seine Dienste in einem LDAP- oder Active Directory-Verzeichnis eintragen.<br />

Davon profitieren selbstverständlich auch CUPS-Drucker und CUPS-Print-Server.<br />

Weitere Ausbaustufen der Integration in eine AD- (oder in eine diese weitgehend nachbildende<br />

LDAP-) Umgebung sind möglich.<br />

1.3.4 Fazit<br />

Die Kombination von CUPS und SAMBA stellt für Windows Clients eine leistungsfähige<br />

Printserverarchitektur zur Verfügung. Durch die Nutzung von sogenannten PPD-Dateien<br />

(PostScript Printer Discription Datei), die auch von Windows verwendet werden können,<br />

ist es möglich, dass alle Druckclients unabhängig von Ihrer Einstellung gleiche Ausdrucke<br />

erzeugen.<br />

Auch unterschiedliche Druckertreiber auf den Clients spielen keine Rolle, da unter CUPS<br />

der Ausdruck erst auf dem Server aufbereitet und dadurch immer der gleiche Druckertreiber<br />

genutzt wird. Dies ist so unter Windows nicht möglich, da immer ein Teil der<br />

Druckaufbereitung auf dem Windows Client stattfindet und somit von dem auf dem Client<br />

installierten Drucktreiber abhängig ist.<br />

Seite 281


CUPS ohne Samba kann zwar auch mit Windows Clients kommunizieren, doch die<br />

Clients können das SMB Protokoll nicht nutzen und die Druckerfreigaben sind nicht im<br />

Windows Explorer sichtbar.<br />

1.4 Windows Print Services<br />

Die in Kapitel XII.F 1.1.2.1 X beschriebene und aus dem Unix-und Mainframebereich bekannte<br />

und allgemeingültige LPR/LPD Protokoll hat mit Windows NT und den Nachfolgeversionen<br />

Einzug in die Windows Welt gefunden. Es wird auf Windows Print-Servern<br />

als Standard zur Kommunikation zwischen Server und Druckergerät verwendet.<br />

Eigenschaften des LPR/LPD Protokolls treffen auch bei der Verwendung unter Windows<br />

zu und stellen daher keinen Unterschied zu den im Unix-Bereich vorhandenen Umsetzungen<br />

des Protokolls dar.<br />

Die Kommunikation zwischen einem Windows Rechner und einem Drucker wird über<br />

einen sogenannten LPR-Port realisiert, der unter Windows eingerichtet wird und der über<br />

das LPD Protokoll angesprochen wird. Die Kommunikation erfolgt dabei ausschließlich<br />

über TCP/IP.<br />

Über das LPD/LPR Protokoll können dann von einem Client aus sowohl Print-Server, als<br />

auch Drucker direkt angesprochen werden, sofern diese mit dem Netzwerk verbunden<br />

oder direkt an dem Client angeschlossen sind.<br />

Darüber hinaus können auch andere Protokolle, wie zum Beispiel JetDirect/Appsocket<br />

genutzt werden, um Drucker anzusteuern.<br />

Seit Windows 2000 besteht auch die Möglichkeit über IPP (siehe Abschnitt II.F 1.1.2.1 X)<br />

zu drucken, sofern der jeweilige Drucker das Protokoll unterstützt. Damit besteht auch<br />

die Möglichkeit quasi „ganz natürlich― über CUPS-Server drucken. Allerdings wird derzeit<br />

durch Microsoft nur eine Implementierung der IPP-<strong>Version</strong> 1.0 angeboten, die bei der<br />

IETF nie „recommended standard― wurde, sondern nur einen Diskussions-Zwischenstand<br />

widerspiegelte und zum Beispiel den wichtigen Aspekt der Verschlüsselung von<br />

Druckdaten und der Authentisierung von Benutzern noch nicht definiert hatte. Somit<br />

muss ein CUPS-Server auf Authentisierung verzichten, will man ihn direkt vom Windows-Client<br />

aus nutzen.<br />

Die Verbindung zwischen einem Windows-Client und einem Print-Server wird typischerweise<br />

über SMB (Server Message Block) oder RPC (Remote Procedure Call) unter Windows<br />

hergestellt. RPC-Verbindungen werden dabei bevorzugt, da sie die Funktionen der<br />

Point & Print-Methode (siehe Abschnitt II.F 1.4.3 X) unterstützen. SMB wird dagegen eher<br />

für die Verbindung von Clients mit älteren Windows Betriebssystemen (Windows 98 und<br />

220<br />

früher) verwendet F<br />

F. Die Kommunikation zwischen Clients und Print-Server kann dabei<br />

auf verschiedenen Transportprotokollen basieren, wie zum Beispiel:<br />

220<br />

siehe auch „Microsoft Windows 2003, Printer Connectivity Technical Overview―, Microsoft<br />

Corporation, Published: March 2003,<br />

http://www.microsoft.com/windowsserver2003/techinfo/overview/connectivity.mspx<br />

Seite 282


� TCP/IP<br />

� NetBEUI<br />

� SPX/IPX<br />

Mit Windows Server 2000/2003 werden folgende weitere Funktionalitäten der Windows<br />

Druckdienste bereitgestellt:<br />

� Standard TCP/IP Port Monitor (SPM)<br />

SPM ist kompatibel mit SNMP und liefert im Vergleich zu LPR die Möglichkeit,<br />

detaillierte Statusinformationen abzurufen.<br />

SPM kann sowohl das Druckerserverprotokoll RAW als auch LPR verwenden.<br />

Standard für die meisten Druckgeräte ist RAW.<br />

� Internet Printing<br />

Wie bereits erwähnt besteht seit Windows Server 2000 die Option, Drucker im<br />

Web zu veröffentlichen und die Installation zu ermöglichen sowie über IPP zu<br />

221<br />

drucken F<br />

F.<br />

� Veröffentlichung im Active Directory (AD)<br />

Mit Hilfe des AD kann die Druckerfreigabe auf Windows Servern (NT/2000/2003)<br />

veröffentlicht werden, ohne dass der Anwender wissen muss, auf welchem Server<br />

sich die Druckerfreigabe befindet.<br />

� Gemischte Umgebungen<br />

Auf Windows 2000/2003 Servern können Treiber für Windows NT Clients hinterlegt<br />

werden. Die Übertragung der gerätespezifischen Einstellungen kann allerdings<br />

scheitern, wenn herstellerspezifische Treiber eingesetzt werden (müssen).<br />

Ursache hierfür ist die Verlagerung der Druckertreiber vom Kernel Mode unter NT<br />

in den User Mode unter Windows 2000/2003.<br />

1.4.1 Direkter Druck vom Arbeitsplatzsystem<br />

Der direkte Druck (siehe Abbildung 30 X, Pfeil 1) erfolgt über LPR/LPD. Zu diesem Zweck<br />

muss auf dem Arbeitsplatzsystem unter Windows der TCP/IP Print-Server installiert<br />

222<br />

seinF<br />

F. Auf dem Arbeitsplatzsystem wird ein sogenannter LPR-Port als Anschluss konfiguriert.<br />

Zu diesem Zweck muss die IP-Adresse oder ein entsprechender vollqualifizierter<br />

Hostname des Zieldruckers eingetragen werden. Zudem erfolgt die Aufforderung, ein<br />

Druckermodell und somit den entsprechenden Druckertreiber auszuwählen. Hierbei wird<br />

dann der ausgewählte Druckertreiber auf dem Client installiert. Diese Methode wird häufig<br />

verwendet, wenn die Benutzer zwischen vielen Standorten einer Organisation wechseln<br />

und keine Verwaltung der Netzwerkressourcen zum Beispiel über einen Verzeichnisdienst<br />

genutzt wird.<br />

221<br />

siehe auch „Microsoft Windows 2003, Printer Connectivity Technical Overview―, Microsoft<br />

Corporation, Published: March 2003,<br />

http://www.microsoft.com/windowsserver2003/techinfo/overview/connectivity.mspx<br />

222<br />

Windows 9x Systeme müssen hierfür eine Software von Drittherstellern verwenden.<br />

Seite 283


Voraussetzung für diese Methode ist, dass der entsprechende Drucker entweder mit<br />

einer Netzwerkkarte und IP Adresse oder über einen Print-Server an das Netzwerk angebunden<br />

ist. Beim Einsatz eines Print-Servers wird am Client die IP Adresse oder der<br />

vollqualifizierte Name des Servers eingetragen. Die Kommunikation zwischen dem Print-<br />

Server und dem Drucker erfolgt in der Regel über einen parallelen, seriellen oder USB<br />

Port. Ist ein Drucker direkt an einen Client oder über eine Printbox angebunden, kann<br />

der Client die Funktion eines Print-Servers, der die Druckaufträge dann direkt an den<br />

Drucker versendet, übernehmen. Eine Anbindung an einen Standort-Print-Server kann<br />

somit entfallen.<br />

1.4.2 Druck via Print-Server<br />

Unter Print-Server wird in diesem Abschnitt ein Windows Server (NT und folgende) verstanden,<br />

auf dem die Druckertreiber installiert sind. Dieser Server nimmt Druckaufträge<br />

entgegen und verteilt diese an die entsprechenden Drucker. Der Drucker kann sowohl<br />

über das Netzwerk mit dem Server kommunizieren oder auch als lokaler Drucker direkt<br />

mit dem Server verbunden sein.<br />

Der Druck vom Arbeitsplatzsystem über einen Print-Server erfordert zwei Datenströme:<br />

� die Übertragung der Daten vom Arbeitsplatzsystem zum Print-Server<br />

(siehe Abbildung 30 X, Pfeil 2a)<br />

� die Übertragung der Daten vom Server zum Druckgerät<br />

(siehe Abbildung 30 X, Pfeil 2b)<br />

Die Übertragung der Daten vom Server zum Druckgerät basiert in der Regel auf<br />

LPR/LPD (siehe Abschnitt II.F 1.4.1).<br />

Die Übertragung der Daten zwischen Arbeitsplatzsystem und Print-Server kann auf unterschiedliche<br />

Weise erfolgen. Serverseitig müssen hierfür zwei grundlegende Voraussetzungen<br />

erfüllt sein, damit ein Client einen bestimmten Drucker über den Server ansprechen<br />

kann:<br />

1. Der Drucker ist auf dem Print-Server eingerichtet (LPR-Port oder lokaler Anschluss,<br />

Druckertreiber).<br />

2. Der Drucker ist freigegeben.<br />

Die Freigabe ermöglicht in Windows Netzwerken unter anderem, dass der Drucker über<br />

die Suchfunktion des Windows Explorers oder über die Suchfunktion des Active<br />

Directory gefunden werden kann.<br />

Die Kommunikation zwischen Windows-Client und Print-Server (Druckerfreigabe) kann<br />

auf drei verschiedenen Wegen erfolgen:<br />

� Mittels des Befehls NET USE kann ein bestehender lokaler LPT-Port auf die<br />

Druckerfreigabe umgeleitet werden (Beispiel: net use LPT3 H\\servername\H<br />

druckerfreigabename).<br />

Diese Methode erfordert, dass der Anwender einen Drucker (Druckertreiber) auf<br />

dem LPT-Port installiert und lokal konfiguriert. Dies ist erforderlich, wenn aus<br />

DOS-Anwendungen heraus gedruckt werden muss. Die Druckdaten werden im<br />

RAW-Format gesendet. Das heißt, dass die gesendeten Daten unmittelbar vom<br />

Seite 284


Druckgerät verwertet werden können. Diese Methode wird häufig von Windows<br />

9x Systemen verwendet, wenn diese nicht über andere Funktionalitäten (zum<br />

Beispiel Novell Netware) auf die Netzwerkdrucker zugreifen können.<br />

� Es kann ein neuer LPR-Port eingerichtet werden, der als Zieladresse den Print-<br />

Server und den Namen der Druckerfreigabe beinhaltet. Die Druckdaten werden<br />

ebenfalls im RAW-Format gesendet.<br />

� Mittels der sogenannten „Point & Print―-Methode kann auf dem Arbeitsplatzsystem<br />

ein Netzwerkdrucker eingerichtet werden. Vorteil dieser Methode ist, dass<br />

eine manuelle Konfiguration oder Druckertreiberinstallation für den Anwender<br />

entfällt. Die Druckdaten werden im EMF-Format (Enhanced Meta Format) gesendet.<br />

Sie können vom Druckgerät nicht verwertet werden, sondern müssen auf<br />

dem Windows-Print-Server aufbereitet werden. Die „Point & Print―-Methode wird<br />

im folgenden Abschnitt genauer beschrieben.<br />

Abbildung 30: Allgemein: Drucken unter Windows<br />

Bei den bisher vorgestellten Methoden wird immer davon ausgegangen, dass es sich bei<br />

den Clients auch um Windows-basierte Clients handelt. Grundsätzlich besteht auch die<br />

Möglichkeit von Linux oder anderen Unix-basierten Clients aus auf Drucker, die über<br />

einen Windows Print-Server bereitgestellt werden zuzugreifen. Dabei kann man verschiedene<br />

Methoden verwenden. Zum einen besteht die Möglichkeit über einen installierten<br />

SMB-Client (Samba-Client) auf die Windowsdrucker zuzugreifen. Die meisten<br />

Desktop-Systeme (z.B. KDE, Gnome) beziehungsweise Linux-Distributionen (z.B. Red-<br />

Hat) bieten hierfür auch entsprechende Benutzer-/Administratorschnittstellen, über welche<br />

die Drucker ausgewählt werden können. Unter Verwendung der Windows Print Services<br />

for Unix (Unterstützung von LPD) auf einem Print-Server besteht auch die Möglichkeit<br />

über eine LPD-fähige Software auf den Linux-Clients Druckaufträge an Windows<br />

zu versenden. Wenn man auf dem Linux-Client einen CUPS-Server installiert hat man<br />

letztendlich die Wahl zwischen den zuvor gewählten Möglichkeiten (LPD und SMB) sowie<br />

mit Einschränkung auch der Nutzung von IPP (siehe auch XAbbildung 1X), sofern der<br />

Print-Server auf Windows Server 2000 oder höher basiert. Mit der Verwendung von<br />

CUPS stehen dann auch weitere Managementfunktionen zur Verfügung, wie zum Bei-<br />

Seite 285


spiel das Löschen von Druckaufträgen. Demgegenüber steht allerdings, dass ein CUPS-<br />

Server die Leistung des Clients gegebenenfalls negativ beeinflusst. Handelt es sich bei<br />

dem anzusteuernden Drucker um einen professionellen netzwerkfähigen Drucker, muss<br />

man erst gar nicht den Umweg über den Windows Print-Server gehen, sondern kann<br />

diesen über CUPS direkt ansteuern.<br />

1.4.3 „Point & Print“-Methode<br />

Microsoft setzt bei der Kommunikation von Print Client und Server auf das Protokoll RPC<br />

(Remote Procedure Call) und verwirklicht damit die sogenannte Point & Print-<br />

Technologie. Diese ermöglicht es zum einen, die Druckertreiber vom Server auf den<br />

Client zu übertragen und die gerätespezifischen Einstellungen (Papierschächte, Standard-Papierformate)<br />

an den Client zu übermitteln. Zum anderen wird dadurch ein Teil<br />

des Rendering-Prozesses auf den Server verlagert, sodass der Client bei der Druckaufbereitung<br />

entlastet wird. Einerseits macht sich diese Entlastung insbesondere beim Einsatz<br />

von Terminal Servern positiv auf dem Client bemerkbar. Andererseits wirkt sich die<br />

Verlagerung des Renderingprozesses auf den Server auf dessen Leistungsverhalten<br />

bemerkbar negativ aus.<br />

Zu beachten ist, dass bei dieser Methode ein Teil des Druckvorgangs auf dem Client und<br />

ein weiterer Teil auf dem Server ausgeführt werden. Daher müssen die „Teil-Treiber― auf<br />

dem Server und dem Client identische <strong>Version</strong>en besitzen, da andernfalls Probleme bis<br />

hin zur Unbenutzbarkeit des gesamten Netzwerks auftreten können. Stellt ein Client fest,<br />

dass der Treiber auf dem Server neuer ist als der lokale, so wird er automatisch auch auf<br />

dem Client aktualisiert. Wenn auf dem Server jedoch ein älterer Treiber als auf dem<br />

Client installiert ist, kann es zu Fehlermeldungen oder einem Systemabsturz kommen,<br />

wenn auf dem Client versucht wird zu drucken oder den „Eigenschaften―-Dialog zu<br />

öffnen. Dieser Zustand kann zum Beispiel dann entstehen, wenn der Treiber auf dem<br />

Server erst aktualisiert wird und danach die Treiber der Clients, wenn sie Verbindung mit<br />

dem Server aufnehmen. Wird nun der Treiber auf dem Server aus irgendwelchen<br />

Gründen, zum Beispiel wegen eines versteckten Fehlers, auf eine ältere <strong>Version</strong> gesetzt,<br />

kommt es zu diesem Problem. Das gleiche Problem tritt auf, wenn auf einem Client<br />

manuell eine neuere Treiberversion installiert wurde.<br />

Dieses Problem kann eventuell über entsprechende Softwareverteilungsmechanismen<br />

gelöst werden.<br />

1.4.4 Zusätzliche proprietäre Druckerports<br />

Um einige Lücken des LPR/LPD Protokolls zu schließen, sind von namhaften Druckerherstellern<br />

zusätzliche Ports für Windows Systeme ab Windows NT implementiert worden,<br />

zum Beispiel:<br />

� Hewlett Packard Network Port print monitor (Hpmon.dll),<br />

� Macintosh print monitor (Sfmmon.dll),<br />

� Digital Network Port print monitor (Decpsmon.dll),<br />

� LexMark Mark Vision print monitor (Lexmon.dll) und<br />

� NetWare Print Monitor (Nwmon.dll).<br />

Seite 286


Diese Ports ermöglichen im Gegensatz zu LPD/LPR in der Regel eine bidirektionale<br />

Kommunikation mit den Druckern oder Druckerboxen und damit unter anderem die Möglichkeit<br />

die Druckerwartung vom Endgeräte beziehungsweise vom Server aus vorzunehmen.<br />

Hierzu werden Programme von einem Server oder Endgerät ausgeführt, mit<br />

deren Hilfe Druckerstörungen, für die keine Vor-Ort-Tätigkeit erforderlich ist, zu beheben.<br />

Zu solchen durchführbaren Wartungsfunktionen zählen unter anderem:<br />

� Reinigung von Druckdüsen bei Tintenstrahldruckern<br />

� Reinigung der Papierführung<br />

� Ausrichtung von Druckköpfen<br />

� Rücksetzung von Fehlermeldungen<br />

� Auslesen von Verbrauchsdaten, zum Beispiel Anzahl gedruckter Seiten<br />

� Update der Systemsoftware im Drucker<br />

Weiterhin sind diese Ports sind gegenüber dem LPR-Port in der Lage, auch noch andere<br />

Transportprotokolle zu nutzen, wie:<br />

� DLC (Data Link Control),<br />

� IPX (Internetwork Packet eXchange) und<br />

� AppleTalk.<br />

Diese von den Herstellern zur Verfügung gestellten, proprietären Softwareprodukte beseitigen<br />

jedoch nicht das Problem der fehlenden Verschlüsselung beim Drucken unter<br />

Windows.<br />

1.4.5 Werkzeuge<br />

Die Administrationswerkzeuge von Print-Servern unter Windows beschränken sich auf<br />

die Verwaltung der Druckerfreigaben und der Druckertreiber.<br />

Darüber hinaus bestehen aber auch die Möglichkeit der Nutzung der unter XII.F 1.1.1.10 X<br />

aufgeführten unabhängigen und flexiblen Möglichkeiten, sofern die verwendeten Drucker<br />

diese unterstützen.<br />

Weiterhin werden von vielen Druckerherstellern oder Anbietern von Systemmanagementsoftware<br />

proprietäre Softwarelösungen zum Management der Geräte angeboten.<br />

Die folgende Auflistung liefert einige Beispiele an Software von Druckerherstellern und<br />

anderen Verwaltungs- und Überwachungsmöglichkeiten:<br />

� MarkVision von LexMark.<br />

� JetAdmin von HP - HP Laserdrucker können auch per telnet administriert werden,<br />

was aber wegen der fehlenden Verschlüsselungsmöglichkeit nur im Notfall<br />

benutzt werden sollte.<br />

� Viele Hersteller bieten auch ein Web-Interface über http oder https für die<br />

Administration an.<br />

� SMTP zum Versand von Störmeldungen an eine zentrale Managementkonsole<br />

wird auch von den meisten Herstellern unterstützt.<br />

Seite 287


Ähnlich wie bei Netzlaufwerken ist die automatische Verbindung zu Druckern beim Login<br />

des Anwenders gewünscht. Dies kann bei Windows 9x Clients entweder via VB-Script<br />

oder Tools wie con2prt.exe realisiert werden. Das Setzen von Berechtigungen auf Druckerfreigaben<br />

per logon Skript oder Benutzerprofile ist nicht möglich.<br />

Hinsichtlich der Vergabe von Berechtigungen auf Druckerfreigaben sind Skriptprogramme<br />

(Perl) denkbar.<br />

Ab Windows NT4 WS oder höher können die Druckfreigaben entweder per Logonscript<br />

oder über (servergestützte) Benutzerprofile beim Starten von Windows zur Verfügung<br />

gestellt werden.<br />

1.4.6 Zugriffssteuerung<br />

Die Zugriffssteuerung auf die von Print-Servern bereitgestellten Netzwerkdrucker (Freigaben)<br />

wird von diesen geregelt, sofern dies nicht über einen Verzeichnisdienst gesteuert<br />

wird. Die Rechte auf die Freigabe sind begrenzt auf die Stufen:<br />

� Drucken,<br />

� Drucker verwalten und<br />

� Dokumente verwalten.<br />

Eine Authentifizierung von Windows Clients beziehungsweise Anwendern ist unter<br />

Windows Server 2003 R2 möglich. Hierzu muss das SMB/CIFS Protokoll deaktiviert<br />

223<br />

sein.F<br />

F Hierdurch wird jedoch die Verwaltung der Print-Server durch die Administratoren<br />

erschwert, da dann nicht mehr alle Zugriffsmöglichkeiten über das Netzwerk auf den<br />

Printserver gegeben sind.<br />

Für Druckdienste sieht Microsoft im Standard keine Verschlüsselungsmechanismen vor.<br />

Allerdings bietet die .NET Umgebung Verschlüsselungsmechanismen an, die auch zur<br />

Verschlüsselung im Bereich von Netzwerkdruckern angewendet werden können. Hierzu<br />

ist es notwendig eine .NET Umgebung aufzubauen, das heißt, diese entsprechend auf<br />

224<br />

den Microsoft Servern und den Clients zu installieren. F<br />

F<br />

1.4.7 Schnittstellen<br />

Bei der Anbindung von Druckern sind die logischen und die physikalischen Schnittstellen<br />

zu betrachten. Die logischen Schnittstellen bilden die Druckertreiber. Physikalische<br />

Schnittstellen werden genutzt, um Drucker mit anderen Geräten zu verbinden. Dies sind<br />

zum einen Schnittstellen für die direkte Verbindungen zwischen Drucker und PC, zum<br />

Beispiel serielle, parallele Schnittstelle oder USB, und zum anderen Schnittstellen für die<br />

Verbindung zu einem Netzwerk, zum Beispiel Ethernet oder WLAN.<br />

Die Methoden, die Microsoft Windows zum Drucken anbietet, sind in einer homogenen<br />

Microsoftlandschaft gut auf einander abgestimmt.<br />

223 http://www.microsoft.com/germany/technet/sicherheit/prodtech/windowsserver2003/<br />

w2003hg/s3sgch08.mspx<br />

224 http://www.microsoft.com/germany/msdn/library/security/<br />

SymmetrischeUndAsymmetrischeVerschluesselung.mspx?mfr=true<br />

Seite 288


Setzt man die Microsoft Printserver in einer heterogenen Landschaft zur Verwaltung von<br />

zentralen Druckdiensten ein, benötigt man weitere Systeme, wie zum Beispiel einen<br />

Samba Server.<br />

1.4.8 Fazit<br />

Die unter Windows implementierten Methoden zum Drucken funktionieren zuverlässig<br />

mit allen gängigen Druckern. Alle namhaften Druckerhersteller stellen Werkzeuge und<br />

Druckertreiber für Windows zur Verfügung, mit denen sich die Drucker administrieren<br />

lassen. Allerdings gibt es kein allgemein gültiges Administrationswerkzeug unter Windows,<br />

sodass die Anzahl der zu installierenden Software für Druckeradministration mit<br />

der Anzahl der unterschiedlichen Drucker beziehungsweise Druckerhersteller und damit<br />

der Administrationsaufwand zunimmt. Dem gegenüber stehen professionelle Drucker<br />

(überwiegend PostScript-Drucker), welche das Management und die Überwachung über<br />

Standardbrowser (HTTPS) und andere Standardprotokolle, wie SMTP oder SNMP, unterstützen<br />

und damit eine einfache und kosteneffiziente Administration komplexer Netze<br />

ermöglichen.<br />

Bezüglich der „Point & Print―-Methode, wie sie im Abschnitt XII.F 1.4.3 dargestellt wird ist<br />

anzumerken, dass beim Einsatz von PostScript-Druckern, wie im professionellen Umfeld<br />

üblich, diese Vorgehensweise doch problematisch zu sein scheint. Die Komplexität der<br />

„Point & Print―-Methode bringt zum einen keinen Mehrwert, schafft es aber, den Clients<br />

die volle Funktionalität des Druckers vorzuenthalten, wenn der Server mit Samba läuft.<br />

Durch die „Verteilung― der Treiberfunktionen erreicht es Microsoft, dass die volle Funktionalität<br />

auch an die eigene Plattform gebunden bleibt. Bei der Verwendung von „Point<br />

& Print― in Verbindung mit Samba sind die Zusatzfunktionen je nach Druckerhersteller<br />

stark (z.B. HP) bis nur minimal (z.B. Konica-Minolta) eingeschränkt. Hierauf sollte bei der<br />

Auswahl der Drucker geachtet werden. Es treten vergleichbare Effekte auf, wie sie im<br />

folgenden Knowledgebase-Artikel beschrieben werden: http://support.microsoft.com/kb/-<br />

884897/de.<br />

2 Migrationspfade<br />

Einleitend sollen einige allgemein gültige Punkte erwähnt werden, die bei einer Migration<br />

der Druckdienste zu beachten sind beziehungsweise Gültigkeit besitzen.<br />

Die Ablösung einer Druckumgebung kann in der Regel ohne große Beeinträchtigungen<br />

des Betriebs erfolgen, da die neue Druckumgebung parallel zu der bestehenden Druckumgebung<br />

aufgebaut und in Betrieb genommen werden kann. In der Regel beschränkt<br />

sich dieser Neuaufbau auf die Implementierung des Druckservers. Clients und Drucker<br />

können im Normalfall übernommen werden. Es kann jedoch vorkommen, dass insbesondere<br />

für ältere Drucker keine Druckertreiber für die neue Druckumgebung zur Verfügung<br />

stehen. In einem solchen Fall muss entweder auf allgemeingültige Druckertreiber<br />

zurückgegriffen werden, wobei evtl. bestimmte druckerspezifische Funktionen nicht mehr<br />

nutzbar sind, oder aber die älteren Geräte müssen ausgetauscht werden. Weiterhin<br />

müssen gegebenenfalls die Druckwarteschlangen auf den Clients neu eingerichtet werden.<br />

Dies kann automatisiert über Login Scripte oder Benutzerprofile erfolgen.<br />

In Bezug auf die möglicherweise notwendige Anpassung der Warteschlangen auf Linux-<br />

Arbeitsplatzrechnern muss auf jeden Fall deutlich zwischen Linux und Windows differen-<br />

Seite 289


ziert werden: Bei Linux sind der Regel keine Anpassungen erforderlich. Unter Windows<br />

geht das über logon-Skripte bei der nächsten Anmeldung.<br />

Insgesamt wird eine Migration von Druckdiensten auf eine neue Plattform nicht unbedingt<br />

ein genaues 1:1-Abbild der bestehenden Verhältnisse wiedergeben können. Eine<br />

Migration sollte jedoch als Chance wahrgenommen werden, bestehende Schwachstellen<br />

zu beheben.<br />

Eine Migration von einer in die andere Systemlandschaft ist deutlich einfacher, wenn die<br />

im Einsatz befindlichen Drucker folgende Merkmale haben:<br />

� PostScript-fähig<br />

� Administration über Standardbrowser per HTTPS<br />

� Versand von Störungsmeldungen per E-Mail, vorzugsweise in einem automatisiert<br />

verarbeitbaren Format (zum Beispiel XML)<br />

� Die Treiber für Windows müssen so aufgebaut sein, dass alle Optionen auch<br />

über Samba verfügbar sind (wie zum Beispiel bei Konica/Minolta, nicht bei HP)<br />

� Sie sollen IPP mit SSL/TLS-Verschlüsselung unterstützen<br />

2.1 Migration von Windows Print Services nach CUPS in Kombination mit<br />

Samba unter Linux<br />

Eine mögliche Motivation zur Migration der Windows Druckdienste nach CUPS kann<br />

darin bestehen, dass ältere Geräte, die auf Grund ihrer spezifischen Druckeigenschaften<br />

benötigt werden, von neueren Windows-Betriebssystemen nicht mehr beziehungsweise<br />

nur unzureichend unterstützt werden, weil die Hersteller keine Druckertreiber mehr zur<br />

Verfügung stellen. In diesem Fall kann über CUPS und den Einsatz von PostScript-<br />

Dateien auch auf Druckern gedruckt werden, die kein PostScript unterstützen, da hier<br />

der CUPS Server diese PostScript-Datei entsprechend umwandelt. Weiterhin können die<br />

sogenannten PPD-Dateien verwendet werden, so wie dies im Kapitel XII.F 1.1.2.2 X beschrieben<br />

ist. Diese werden von fast allen Herstellern angeboten.<br />

Da CUPS auf TCP/IP aufsetzt, kann mit einer Migration zu CUPS auch die Schaffung<br />

einer homogenen, rein TCP/IP basierten IT-Infrastruktur unterstützt werden. Dazu sollte<br />

jedoch sicherstellt werden, dass keine Endgeräte das WINS Protokoll nutzen, um mit<br />

Druckservern zu kommunizieren. Gegebenenfalls ist es sinnvoll, solche Endgeräte<br />

auszutauschen beziehungsweise umzukonfigurieren, sofern dies möglich ist. In einigen<br />

Fällen wie zum Beispiel bei Windows 95 und 98 lässt sich dies nicht vermeiden. In<br />

diesen Fällen ist zu überlegen, ob ein Austausch dieser Geräte beziehungsweise ein<br />

Wechsel des Betriebssystems sinnvoll und machbar ist. Kann aufgrund von anderen<br />

Abhängigkeiten nicht auf den WINS Dienst verzichtet werden, erfordert die Umstellung<br />

der Druckdienste von Windows nach CUPS den Aufbau und die Nutzung eines Samba<br />

Servers. Mit dessen Hilfe kann dann die Kommunikation mit dem CUPS Server<br />

sichergestellt werden.<br />

Wird WINS jedoch nicht benötigt, kann die Verbindung direkt über TCP/IP hergestellt<br />

werden, wobei die IP-Adresse bei der Einrichtung eines entsprechenden Ports auf Win-<br />

Seite 290


dowsrechnern benötigt wird. Um eine Auflösung der Druckernamen zu ermöglichen, wird<br />

für die Windowsrechner dann doch wieder der Einsatz von Samba benötigt.<br />

Die Einführung von CUPS selbst erfordert die Implementierung mindestens eines Rechners<br />

im Netzwerk, der als CUPS Server fungiert. In Abhängigkeit von der Größe der<br />

Druckumgebung sollte dieses Gerät ein eigenständiger Server sein, also keine weiteren<br />

Funktionen übernehmen. Darüber hinaus kann, je nach Verfügbarkeitsanforderung, auch<br />

eine ausfallsichere Lösung mit mehreren Servern aufgebaut werden.<br />

2.2 Migration von CUPS in Kombination mit Samba unter Linux nach Windows<br />

Print Services<br />

Die in der Einleitung beschriebenen Sachverhalte haben auch bei der Migration einer<br />

Druckumgebung von CUPS nach Windows ihre Gültigkeit. Allerdings muss bei einem<br />

Migrationspfad, wie er hier betrachtet wird, besonders genau darauf geachtet werden,<br />

dass alle Geräte, die in die neue Drucklandschaft eingebunden werden, auch mit den<br />

Microsoft-Druckservern kommunizieren können. Dies gilt sowohl für die Drucker als auch<br />

für die im Netzwerk vorhanden Clients. Insbesondere bei älteren Druckern, die nicht<br />

mehr vom Hersteller unterstützt werden, kann eine Migration zu Problemen führen. Dies<br />

ist zum Beispiel der Fall, wenn kein Gerätetreiber für Windows für das entsprechende<br />

Gerät verfügbar ist.<br />

2.3 Migration von Windows NT4/2000 Print Services nach Windows 2003 Print<br />

Services<br />

Für eine Migration von NT4 auf Server2000 / Server 2003 wird von MS ein Migrationstool<br />

PrintMig angeboten. Dieses unterstützt die Portierung aller Druckwarteschlangen,<br />

Druckernamen und sofern vorhanden, auch Treiber. Dabei ist darauf zu achten, dass ein<br />

zukunftsfähiges Konzept entwickelt wird, das die Verwendung von NT4 Treibern in der<br />

neuen Umgebung ausschließt.<br />

Die aktuelle <strong>Version</strong> des Migrationstools ist PrintMig <strong>Version</strong> 3.1.<br />

3 Bezüge<br />

3.1 Systemmanagement und -überwachung<br />

Der wichtigste Bezug besteht zum Themenblock des Systemmanagements und der Systemüberwachung<br />

(Kapitel II.G „Thema System-Überwachungs- und -Management-<br />

Dienste―). Hier sind es vor allem die Bordmittel, die mit den Betriebssystemen zur Verfügung<br />

gestellt werden (siehe Einleitung der Technologiebetrachtung zum Kapitel II.G<br />

„Thema System-Überwachungs- und -Management-Dienste―).<br />

Weiterhin sind es die großen integrierten Lösungen der Anbieter wie HP und IBM, die<br />

auch für die Überwachung und das Management der Druckerinfrastruktur entsprechende<br />

Lösungen liefern (siehe Kapitel II.G.1.3 „HP OpenView― und II.G.1.4 „IBM Tivoli―)<br />

Als Open Source Werkzeug für das Systemmonitoring spielen auch die Möglichkeiten<br />

und Funktionen von Nagios eine wichtige Rolle (siehe Kapitel II.G.1.1.1 „System-<br />

Monitoring mit Nagios―)<br />

Seite 291


3.2 Authentifizierung und Verzeichnisdienste<br />

Ein ebenso wichtiger Bezug besteht mit Blick auf das Thema Sicherheit zu den Authentisierungs-<br />

und Verzeichnisdiensten. Hier sind es vor allem die Möglichkeiten im Zusammenhang<br />

mit Samba in gemischten Umgebungen (siehe Kapitel II.C.1.1 „Linux und<br />

Samba mit OpenLDAP und Kerberos (MIT/Heimdal)―) und Kerberos (siehe Kapitel II.C<br />

1.1 und insbesondere II.C.1.1.3 „Heimdal-Kerberos /MIT Kerberos 5― sowie II.C.1.4.1<br />

„Kerberos―) sowohl unter Windows als auch unter Linux und vor allem wenn es darum<br />

geht Single Sign-On Lösungen zu schaffen.<br />

3.3 Netzwerkdienste<br />

Der Bezug zu den Netzwerkdiensten (siehe Abschnitt II.D „Thema Netzwerkdienste―)<br />

ergibt sich aus den Sicherheitsanforderungen bezüglich der Kommunikation mit den<br />

Druckern über das Netz. Hier sind es vor allem die verschiedenen Möglichkeiten der<br />

Verschlüsselung von Kommunikationsverbindungen.<br />

Seite 292


G Thema System-Überwachungs- und -Management-Dienste<br />

1 Produkte / Technologien<br />

Systemüberwachungs- und Systemmanagementdienstprogramme stellen Funktionen<br />

zur Verfügung, die das Administrieren, Pflegen und Entstören von Endgeräten vereinfachen.<br />

Unter einem Endgerät wird jedes Gerät verstanden, das mit einem Netzwerk verbunden<br />

ist. Zum Systemmanagement gehören im Wesentlichen folgende Funktionen:<br />

� Bereitstellung von Applikationssoftware (Softwareverteilung)<br />

� Bereitstellung von Betriebssystemen und Betriebssystempatches<br />

� Überwachung von Systemen und deren Status (auch agentenlos)<br />

� Berichte erstellen<br />

� Fernsteuerung von Systemen<br />

Die meisten Unixbetriebssysteme bieten schon als Bordmittel eine Reihe von einfachen<br />

Werkzeugen, mit denen man, wenn man sie geschickt einsetzt, sehr komplexe Aufgaben<br />

erledigen kann. Die meisten der nachfolgend aufgeführten Werkzeuge gibt es als Bordmittel<br />

auch unter Windows oder es gibt entsprechende frei verfügbare Tools, wie zum<br />

Beispiel die SSH-Implementierung „PuTTY― oder andere, die auf der folgenden Webseite<br />

vorgestellt werden (http://www.openssh.org/de/windows.html).<br />

� cron<br />

� at<br />

sss Cronist ein sogenannter Dämon und wird über den crontab Befehl gesteuert.<br />

Dieser Dämon dient dazu, zeitlich immer wiederkehrende Aufgaben vom System<br />

automatisch ausführen zu lassen. Diese Aufgabe können Batchjobs, ausführbare<br />

Programme, ausführbare Skriptdateien und so weiter sein. Crontab ist nicht nur<br />

der Befehl, mit dem der cron Dämon gesteuert werden kann, sondern bezeichnet<br />

auch gleichzeitig die Liste von Aufgaben, die durch den cron Dämon gestartet<br />

werden sollen. In dieser Liste sind sowohl die Aufgaben als auch der Ausführungszeitpunkt<br />

hinterlegt. Der cron Dämon prüft diese Liste alle 60 Sekunden ab,<br />

ob es eine auszuführende Aufgabe gibt und führt diese dann entsprechend aus.<br />

In den unterschiedlichen Linux Distributionen ist der cron Dämon auch unterschiedlich<br />

implementiert. Die Unterschiede liegen vor allem in den Möglichkeiten,<br />

den Aufgaben Parameter zuzuweisen. Die meisten Linux-Distributionen enthalten<br />

gegenwärtig Vixie-cron.<br />

Der at Befehl dient ähnlich wie der cron Dämon zur zeitlichen Steuerung von<br />

Aufgaben. Der at Befehl wird verwendet um eine Aufgabe, die genau einmal ausgeführt<br />

wird, mit einem Zeitstempel zu versehen. Diese Aufgabe wird anhand<br />

dieses Zeitstempels vom System zu diesem Zeitpunkt ausgeführt. Jede Aufgabe<br />

muss jeweils mit einem neuen at Befehl dem System bekannt gemacht werden.<br />

Im Umfeld des at Befehls sind noch zwei weitere Befehle definiert, die zur zeitlichen<br />

Steuerung von Aufgaben dienen. Der atq-Befehl zeigt alle mit dem at-Befehl<br />

Seite 293


eingerichteten Aufgaben und sortiert diese nach dem Benutzer, der sie eingestellt<br />

hat. Der atrm-Befehl löscht die Aufgaben anhand ihrer vom System eindeutig<br />

vergebenen Nummer.<br />

� Ssh<br />

ssh (secure shell) steht sowohl für den Namen des Protokolls als auch für die<br />

Implementation eines secure shell Clients. Bei Linux ist dieser fest im Linux<br />

implementiert. ssh dient dazu, eine sichere Verbindung zwischen zwei Rechnern<br />

beziehungsweise Benutzern herzustellen. So wird zum Beispiel eine Konsole an<br />

einem Linux Rechner auch als Benutzer angesehen und alle Befehle, die an<br />

dieser Konsole abgesetzt werden, werden in dem ssh Client abgesetzt, der den<br />

Befehl entsprechend ans System weiterleitet. Über eine ssh Verbindung kann<br />

jeder Linux Rechner administriert, verwalten und überwacht werden, sofern die<br />

entsprechenden Berechtigungen vorliegen. Da SSH1 auch weiterhin anfällig für<br />

„man-in-the-middle― Angriffe ist, sollte immer SSH2 verwendet werden. Die SSH2<br />

Shell steht auch übergreifend anderen auf Unix basierenden Betriebssystemen<br />

zur Verfügung.<br />

� SNMP<br />

Das Netzwerkprotokoll Simple Network Management Protocol (SNMP) wurde von<br />

der IETF entwickelt, um aktive Netzwerkkomponenten (zum Beispiel Router, Server,<br />

Switches, Drucker, Computer usw.) überwachen und steuern zu können.<br />

Durch das Protokoll wird die Kommunikation zwischen den überwachten Geräten<br />

und einer Überwachungsstation geregelt. SNMP wurde so ausgelegt, dass jedes<br />

netzwerkfähige Gerät, bei dem das TCP/IP Protokoll aktiviert ist, überwacht werden<br />

kann.<br />

Die aktuelle <strong>Version</strong> ist SNMPv3. Diese ist in den RFCs 3410 ff. beschrieben und<br />

bietet im Gegensatz zu seinen Vorgängern auch Sicherheitsmechanismen an.<br />

Diese sind Verschlüsselung und eine verbesserte Authentifizierung. Eine ausführliche<br />

Beschreibung kann man auf der Web Seite des BSI 225 finden.<br />

Viele Systemhersteller haben in ihren Produkten zur Unterstützung der Systemüberwachung<br />

die Übermittlung sogenannter „snmp-Traps― implementiert. In der<br />

Regel sind diese Traps auch dokumentiert, sodass sie mit Hilfe der Systemüberwachung<br />

ausgewertet werden können.<br />

Auf das Monitoring und die Analyse von Netzwerktraffic ist MRTG/RRD spezialisiert.<br />

MRTG nutzt SNMP, um Verkehrsdaten von den verschiedensten Netzwerkkomponenten<br />

zu sammeln und zu speichern. Die Auswertung und grafische Aufbereitung<br />

kann entweder intern durch MRTG oder extern durch RRD erfolgen.<br />

Für MRTG stehen über 350 Templates zur direkten Anbindung verschiedenster<br />

SNMP-fähiger Netzwerkkomponenten und -dienste zur Verfügung.<br />

Ein weiteres Tool zur Trafficanalyse und -visualisierung ist NeTraMet das ebenfalls<br />

mit SNMP arbeitet.<br />

225 http://www.bsi.de/gshb/deutsch/m/m02144.htm<br />

Seite 294


Scotty ist ein weiteres Tool für Visualisierung und Management von lokalen Netzen,<br />

das ebenfalls mit SNMP arbeitet und auch die Änderung von SNMPzugänglichen<br />

Parametern auf den entfernten Netzkomponenten erlaubt.<br />

� Ping<br />

Der Ping-Befehl ist Standard bei allen Unix Distributionen und bei Windows.<br />

Dieser Befehl schickt ein Datenpaket an eine Zieladresse. Dies kann eine IP-<br />

Adresse oder ein DNS Name sein. Ist das Zielgerät eingeschaltet und mit dem<br />

Netzwerk verbunden, schickt dieses System ein Datenpaket an den Absender<br />

zurück, der dies registriert. Hierbei wird auch die Zeit des Datentransfers<br />

gemessen. Mit dem Ping-Befehl können somit auf einfache Weise der Verbindungsstatus<br />

eines an einem Netzwerk angeschlossenen Gerät festgestellt und in<br />

geringem Maße auch Netzwerkleistungsmessungen durchgeführt werden. In<br />

vielen Fällen wird Ping zur agentenlosen Überwachung von Systemen genutzt.<br />

� syslog<br />

syslog ist ein De-facto-Standard zur Übermittlung von Log-Meldungen. Der Begriff<br />

wird in mehreren Varianten genutzt, zum einen als Bezeichnung des syslog-<br />

Netzwerkprotokoll, zum anderen für die Anwendungen oder Bibliotheken, die syslog-Meldungen<br />

senden oder empfangen.<br />

syslog ist ein einfaches Client Server Protokoll, bei dem der Client kleine Datenpakete<br />

an den Server verschickt.<br />

Typischerweise wird syslog für Computersystem-Management und Sicherheits-<br />

Überwachung eingesetzt.<br />

1.1 Systemmanagement mit OSS – Nagios, u.a., Linux<br />

In der OSS Welt gibt es keine hoch integrierte Systemmanagementsoftware vergleichbar<br />

mit HPOpenView oder Tivoli Konfiguration Manager, die alle Belange des Systemmanagements<br />

über ein großes Paket entsprechender Module abdeckt. Es gibt jedoch zahlreiche<br />

Tools, die im Wettbewerb mit vergleichbaren Modulen integrierter Systeme bestehen<br />

und die entsprechenden Aufgaben des Systemmanagements gut abdecken. Diese<br />

Tools, sogenannte Bordmittel, können mit einander kombiniert werden, sodass auch in<br />

der OSS Welt ein leistungsstarkes und vor allem kostengünstiges Systemmanagement<br />

aufgebaut werden kann. Einzelne Linux Distributionen bieten unterschiedliche Funktionen<br />

für Systemmanagement. Zum Beispiel liefert Debian seine Softwareverteilung gleich<br />

mit, in welche allerdings nur Debian basierte Rechner integriert werden können.<br />

1.1.1 System-Monitoring mit Nagios<br />

Nagios wurde für den Betrieb unter Linux entwickelt, kann jedoch auch unter fast allen<br />

anderen Unix Distributionen angewandt werden. Die aktuelle <strong>Version</strong> von Nagios ist die<br />

<strong>Version</strong> 2.9 226 . Die <strong>Version</strong> <strong>3.0</strong> liegt derzeit als Beta-<strong>Version</strong> <strong>3.0</strong>b1 vor. Der frühere Name<br />

von Nagios war NetSaint. Nagios und das Nagios-Logo sind eingetragene Warenzeichen<br />

von Ethan Galstad. Ethan Galstad ist der führende Entwickler für Nagios. Ausführ-<br />

226 Stand 01.11.2007<br />

Seite 295


liche Information sowie aktuelle Entwicklungen finden sich auf der Nagios Homepage 227 .<br />

Nagios wird unter der „GNU General Public License <strong>Version</strong> 2― von der „Free Software<br />

Foundation― veröffentlicht.<br />

Aktuell wird Nagios von ca. 2000 registrierten Benutzern verwendet, die ca. 350.000<br />

Clients damit überwachen 228 .<br />

Nagios ist ein Rechner- und Servicemonitor, der zur Erkennung von Störungen<br />

(unerwartetes Ereignis im Betrieb) und Problemen (häufig auftretende Störungen ohne<br />

bekannte Fehlerbehebung) entwickelt wurde. Darüber hinaus überwacht Nagios auch<br />

Drucker und aktive Netzwerkkomponenten. Der Überwachungsdämon führt in definierten<br />

zeitlichen Abständen Abfragen und Kontrollen an Rechnern und Diensten durch, die<br />

über externe „Plugins" eine Statusrückmeldung an Nagios geben. Beim Entdecken einer<br />

Störung kann der Dämon eine Meldung an definierte Stellen, zum Beispiel einen<br />

Administratoraccount über verschiedene Wege (email, instant message, SMS, etc.),<br />

schicken. Aktuelle Statusmeldungen, Logfiles und Berichte können über ein WEB<br />

Interface abgefragt werden. Nagios lässt sich auch in der Form konfigurieren, dass das<br />

System einen Versuch unternehmen kann, um einen aufgetretenen Fehler selbständig<br />

zu beheben, zum Beispiel durch einen Neustart eines Dienstes.<br />

Nagios ist auch auf die Visualisierung der Netztopologie und die Überwachung von<br />

Diensten auf Servern mit anderen Betriebssystemen spezialisiert. Anhand von definierbaren<br />

Schwellenwerten reagiert Nagios zum Beispiel auf gefundene Fehler oder eintretende<br />

Ereignisse.<br />

Nagios benutzt Plug-Ins zur aktiven oder passiven Überwachung verschiedenster<br />

Dienste und Systemparameter. So können zum Beispiel typische Netzwerkdienste wie<br />

Web, Mail, LDAP, verschiedene RDBMS oder Samba überwacht werden. Außerdem gibt<br />

es Plug-Ins für die Überwachung von Systemparametern wie CPU-Last, Festplattenplatz<br />

aber auch für die Daten der Hardwaresensoren (Temperatur, Stromversorgung und<br />

Lüfterdrehzahl). Einfache Schnittstellen und Templates erlauben die schnelle Entwicklung<br />

eigener Plug-Ins.<br />

Nagios bietet zahlreiche Funktionen und Eigenschaften zum Überwachen der IT-<br />

Infrastruktur, den IT-Diensten und zur Administration von Nagios selbst. Die wichtigsten<br />

Funktionen sind nachfolgend aufgelistet:<br />

� Überwachung von Netzwerkdiensten (SMTP, POP3, HTTP, NNTP, PING, etc.)<br />

� Überwachung von Rechnerkomponenten (Prozessorlast, Festplatten- und Speicherauslastung,<br />

laufende Prozesse, Logfiles, etc.) über smnp<br />

� Überwachung von physikalischen Eigenschaften, wie zum Beispiel Temperatur<br />

� Hinterlegung von Kontaktinformationen zur Meldung von Störungen und deren<br />

Behebung (via email, pager, oder über andere benutzerdefinierte Wege)<br />

227 http://www.nagios.org/<br />

228 http://www.nagios.org/userprofiles/quickstats.php<br />

Seite 296


� Benachrichtigung unterschiedlicher definierter Benutzergruppen im Eskalationsfall<br />

� Möglichkeit zur Definition von automatisierten Ereignismanagern, die auf ein<br />

Ereignis reagieren können, zum Beispiel Neustart eines Servers, wenn ein<br />

Serverdienst als gestört gemeldet wird<br />

� Nagios unterstützt den Aufbau mehrerer Nagioskonsolen, die die gleichen Überwachungsfunktionen<br />

haben. Damit lassen sich eine erhöhte Ausfallsicherheit und<br />

die Lastverteilung realisieren<br />

� Kommandozeilen Interface für schnelle Änderungen an den Überwachungsparametern<br />

und den Ereignismanagern<br />

� Beibehaltung von Statusmeldungen bei Neustarts des Programms<br />

� Hinterlegung von geplanten Betriebsunterbrechungen zum Beispiel für<br />

Wartungsarbeiten<br />

� Möglichkeit der Störungsmeldung auch per WEB Interface<br />

� WEB Interface zum Anzeigen von aktuellem Netzwerkstatus, von Meldungs- und<br />

Störungshistorie, Logfiles, etc.<br />

� Einfache Benutzerverwaltung<br />

Beispiele für die Benutzeroberfläche und eine Installationsanleitung finden sich auf der<br />

Website von Nagios 229 .<br />

Der Installations- und Einrichtungsaufwand für eine Standardinstallation kann als vergleichsweise<br />

gering angesehen werden 230 .<br />

Nagios ist zwar für Linux entwickelt worden, doch mit Nagios können auch heterogene<br />

Netzwerke überwacht werden, in denen zum Beispiel eine Mischung von Linux, Unix und<br />

Windows Systemen zum Einsatz kommt. Nagios bietet eine einfache Plug-In Architektur,<br />

die es erlaubt, auch eigene Plug-Ins zu entwickeln und in Nagios einzubinden<br />

1.1.2 Open Source Softwareverteilungssysteme<br />

1.1.2.1 Opsi<br />

Opsi ist ein Produkt der Firma uib 231 in Mainz und steht unter der GPL und ist somit frei<br />

verfügbar. Opsi unterstützt die Softwareverteilung auf Windows 2000, Windows XP und<br />

Linux Systemen. Seit über 9 Jahren wird opsi eingesetzt und weiterentwickelt. Opsi ist<br />

seit dem 06.09.2007 in der <strong>Version</strong> 3.1 freigegeben.<br />

229 http://www.nagios.org/about/screenshots.php,<br />

http://nagios.sourceforge.net/docs/3_0/quickstart.html<br />

230 Die Installationsanleitung kann unter folgendem Link im Internet eingesehen werden:<br />

http://nagios.sourceforge.net/docs/3_0/quickstart.html.<br />

231 http://www.uib.de/www/home/index.html<br />

Seite 297


Die Funktionalitäten von opsi umfassen die Softwareverteilung mit<br />

� Standard-Softwarepaketen,<br />

� Software-Updates,<br />

� Microsoft-Servicepacks,<br />

� Microsoft Security-Patches und<br />

� Inventarisierung.<br />

1.1.2.2 m23<br />

m23 232 ist ein Softwareverteilungssystem für Debian Gnu Linux Systeme, das genau wie<br />

Opsi unter der GPL steht. m23 ist nicht für heterogene Systemumgebungen geeignet,<br />

was aber in einer homogenen Debian-Umgebung kein Nachteil sein muss. m23 ist wie<br />

die meisten Softwareverteilungssysteme ein Client/Server basiertes System und beinhaltet<br />

Funktionalitäten wie<br />

� Erstinstallationen, inklusive Partitionierung und Hardwareerkennung,<br />

� Verteilung von System- und Anwendungssoftware,<br />

� Wiederherstellung von Clients,<br />

� Softwareupdates und<br />

� Inventarisierung (Hardwareerkennung).<br />

Damit deckt m23 die wesentlichen Funktionalitäten ab, die auch von den meisten proprietären<br />

Systemen bereitgestellt werden.<br />

1.1.3 Fazit<br />

Zusammenfassend gilt, dass es mit den in der OSS Welt kostenfreien Softwareprodukten<br />

möglich ist, eine komplexe und gut funktionierende System-Management-Umgebung<br />

aufzubauen. Die Kombination von unterschiedlichen Produkten führt zu einer weitgehenden<br />

Herstellerunabhängigkeit und gestaltet einen Wechsel von einer Software zur<br />

anderen kostenneutral in Bezug auf die Lizenzkosten. Auch die Kombination von einzelnen<br />

Funktionen aus dem Bereich kostenpflichtiger Software mit OSS Software erscheint<br />

durchaus sinnvoll. Zum Beispiel wird in vielen Organisationen HP OpenView als Netzwerkmanagementsystem<br />

verwendet. Dies kann weiter genutzt werden, um parallel eine<br />

Softwareverteilung mit einem OSS Werkzeug aufzubauen. Nagios als Monotoringwerkzeug<br />

und opsi als Werkzeug zur Softwareverteilung haben im Einsatz bewiesen, dass<br />

sie im Speziellen auch für große IT-Infrastruktur-Umgebungen gut einsetzbar sind.<br />

Für kleinere und mittlere Behörden sind die anderen OSS Werkzeuge und insbesondere<br />

die Bordwerkzeuge, die einleitend aufgeführt wurden, prinzipiell gut geeignet.<br />

Die OSS Werkzeuge bieten vor allem einen hohen Grad an Flexibilität und sind gut individuell<br />

anpassbar. Dies führt in der Regel zu einer hohen Akzeptanz der Lösung und zu<br />

232 http://m23.sourceforge.net/PostNuke-0.726/html/index.php<br />

Seite 298


einer höheren Motivation bei den Mitarbeitern, sich mit den Thema des Systemmanagements<br />

auseinander zu setzten.<br />

1.2 Microsoft Systems Management Server (SMS) 2.0/2003 und Microsoft<br />

Operations Manager (MOM)<br />

Nachfolgend werden die beiden Management Tools betrachtet:<br />

� Systems Management Server (SMS), für die Softwareverteilung<br />

� Microsoft Operations Manager (MOM), für Systemüberwachung und –<br />

management<br />

Der System Management Server (SMS) wurde zeitnah mit dem Erscheinen von Windows<br />

NT 4 auf den Markt gebracht. Als Endversion dieser Generation ist SMS in der<br />

<strong>Version</strong> 1.2 anzusehen. Im Jahr 1999 erschien die <strong>Version</strong> 2.0. Die aktuelle <strong>Version</strong> ist<br />

der SMS 2003 R2. Diese <strong>Version</strong> wird im Folgenden näher betrachtet. Seit Neuestem<br />

liegt SMS in der <strong>Version</strong> Microsoft System Center Configuration Manager (SCCM) 2007<br />

vor.<br />

Microsoft Operations Manager 2005 liegt seit kurzem in der <strong>Version</strong> System Centre<br />

Operations Manager (SCOM) 2007 vor. Zu SCCM 2007 und SCOM 2007 liegen bisher<br />

keine Erfahrungswerte vor, sodass diese <strong>Version</strong>en hier nicht weiter betrachtet werden.<br />

SMS und MOM sind kostenpflichtige Produkte der Firma Microsoft. Lizenziert wird die<br />

Server Software. Darüber hinaus wird für jeden Client, der eine Komponente des SMS<br />

oder MOM benötigt, eine Clientlizenz benötigt. Im Detail stellt sich dies wie folgt dar:<br />

Produkt Lizenzierung<br />

Microsoft Systems Management<br />

Server 2003<br />

Microsoft Systems Management<br />

Server 2003 Device CML (Configuration<br />

Management License) 1<br />

Microsoft Systems Management<br />

Server 2003 mit SQL Server 2000-<br />

Technologie<br />

Für jede erworbene Lizenz kann eine Kopie der Serversoftware<br />

auf einem einzigen Server installiert und<br />

genutzt werden.<br />

Erlaubt es einem Gerät (einem einzelnen Server,<br />

einem einzelnen Personal Computer, einer Workstation,<br />

einem Terminal, einem Handheld Computer,<br />

Pager, Telefon, Personal Digital Assistant oder anderem<br />

elektronischen Gerät), von Microsoft Systems<br />

Management Server 2003 verwaltet zu werden.<br />

Erlaubt es, eine Kopie von Microsoft Systems Management<br />

Server 2003 Software auf einem einzigen<br />

Server zu installieren, und erlaubt, eine Kopie der<br />

Serversoftware von Microsoft SQL Server 2000 auf<br />

einem einzigen Server zu installieren und zu verwenden.<br />

Die SQL Server-Software darf nur verwendet werden,<br />

um ihre Systems Management Server Primary Site<br />

Server und/oder Operations Manager als Teil Ihrer<br />

Systemverwaltungssoftware zu unterstützen.<br />

Tabelle 48: Lizensierung der Microsoft System-Management-Komponenten<br />

Seite 299


SMS und MOM sind eigenständige Softwareprodukte der Firma Microsoft. Sie sind in die<br />

Microsoft Landschaft integriert und benötigen zusätzliche Komponenten (zum Beispiel<br />

SQL Server und MS Server), um lauffähig zu sein. SMS und MOM können nicht als<br />

eigenständige Applikationen für andere Betriebssysteme, zum Beispiel Linux, erworben<br />

werden.<br />

SMS 2003 R2 kann in Großumgebungen mit über 250.000 Clients eingesetzt werden,<br />

wobei ein einzelner Server bis zu 25.000 Clients verwalten kann.<br />

Die in der Einleitung beschriebenen Grundfunktionen von System-Management-Systemen<br />

werden mit SMS und MOM vollständig abgedeckt. Die Funktionen werden nicht<br />

als eigenständige Module vertrieben, das heißt, die Funktionen sind in die SMS und<br />

MOM Software eingebunden.<br />

Der SMS / MOM Client kann auf folgenden Betriebssystemen installiert werden:<br />

� Microsoft Windows 98<br />

� Windows NT® Workstation 4.0<br />

� Windows NT Server 4.0<br />

� Windows NT Server 4.0 Enterprise Edition mit Service Pack 6 oder höher<br />

� Windows 2000 Professional<br />

� Windows 2000 Server<br />

� Windows 2000 Advanced Server<br />

� Windows 2000 Datacenter Server<br />

� Windows XP Professional<br />

� Windows XP Embedded mit Service Pack 1 oder höher<br />

� Windows Server 2003 Standard Edition<br />

� Windows Server 2003 Enterprise Edition<br />

� Windows Server 2003 Datacenter Edition<br />

Das im <strong>Migrationsleitfaden</strong> V2.1 beschriebene Add-On namens Vintela Management<br />

Extensions (VMX), mit dessen Hilfe auch Linux-, Unix- und Mac-Systeme (OS X) unterstützt<br />

werden können, wird in dieser Art nicht mehr angeboten. Für SMS 2003 gibt es ein<br />

lizenzpflichtiges Add-On mit dem Namen Quest 233 Management Xtensions for SMS 2003<br />

der Firma Quest Software, das die oben genannte Unterstützung anbietet.<br />

Das Add-On unterstützt im Standard folgende Funktionen:<br />

� Softwarepatchverteilung<br />

� Softwareverteilung<br />

� Inventarisierung (Hardware und Software)<br />

� Softwaremessungen<br />

233 http://www.quest.com/<br />

Seite 300


� Entdecken von Systemen<br />

� Remote Werkzeuge<br />

� Reporting<br />

Damit eignet sich SMS in der Kombination mit Quest Management Xtensions für SMS<br />

2003 durchaus auch für den Einsatz in heterogenen Systemlandschaften.<br />

Für den Betrieb einer MOM 2005 Umgebung müssen folgende Komponenten auf einem<br />

oder mehreren Servern installiert werden:<br />

� Microsoft Operations Manager 2005-Managementserver<br />

� Microsoft Operations Manager 2005-Datenbank<br />

� Microsoft Operations Manager 2005-Administratorkonsole und die<br />

Operatorkonsole<br />

� Microsoft Operations Manager 2005-Reportingserver<br />

Die minimalen Hardwareanforderungen und weiteren Empfehlungen zur Installation<br />

dieser Umgebung können auf der Microsoft-Homepage nachgeschlagen werden. 234<br />

Mit MOM 2005 können zahlreiche Systeme überwacht werden. Welche Konfigurationen<br />

unterstützt werden, kann auf der Webseite 235 „Unterstützte Konfigurationen für Microsoft<br />

Operations Manager 2005― von Microsoft nachgeschlagen werden 236 :<br />

Über weitere Management Packs, die von Microsoft und Drittherstellern erhältlich sind,<br />

kann die Überwachung auf viele andere Systeme (nicht nur Betriebssysteme, sondern<br />

zum Beispiel auch Storagesysteme oder aktive Netzwerkkomponenten) ausgeweitet<br />

werden. Eine Liste mit über 200 Management Packs von Microsoft und Drittherstellern<br />

mit Beschreibung des Management Packs und Quellenangabe des Herstellers ist bei<br />

Microsoft aufgelistet. 237<br />

Einige sind hier aufgeführt:<br />

� Exchange 5.5/2000/2003<br />

� SQL Server 2000 / 2005<br />

� Windows DHCP Server Service 200 / 2003I<br />

� Commerce Server 2007<br />

� Windows Print Server 2000 / 2003<br />

� Windows Terminal Services 2000 / 2003<br />

� Proxy Server 2.0<br />

� Windows DNS Server Service 2000 / 2003<br />

� Windows Internet Information Server 2000/ 2003<br />

234 http://www.microsoft.com/germany/mom/uebersicht/systemanforderungen.mspx<br />

235 http://www.microsoft.com/germany/technet/datenbank/articles/600585.mspx#EEC<br />

236 http://www.microsoft.com/germany/technet/datenbank/articles/600585.mspx#EEC<br />

237 http://www.microsoft.com/technet/prodtechnol/mom/catalog/catalog.aspx?vs=2005<br />

Seite 301


� Windows Active Directory 2000 / 2003<br />

� SMP for Linux Server<br />

� Virtual Agent for: Mandrake Linux, Open BSD, Red Hat Linux, Sun Solaris, SuSe<br />

Linux<br />

� SMP – Cisco für: Switches, Router und Concentrators<br />

Wie auch für SMS 2003 R2 gibt es für MOM 2005 ein lizenzpflichtiges Add On mit dem<br />

Namen Quest Management Xtensions for MOM der Firma Quest Software, das die<br />

Funktionen von MOM zur Überwachung der Betriebssysteme AIX, Solaris, HP-UX, RED<br />

HAT und Suse erweitert.<br />

Das Add-On unterstützt folgende Funktionen:<br />

� Reporting<br />

� Ereignis- und Leistungsmanagement<br />

� Applikation Monitoring<br />

SMS und MOM bieten, wie beschrieben, umfangreiche Möglichkeiten, um Schnittstellen<br />

von Drittanbietern einzubinden. Weiter sind die Produkte komplett in die Microsoft Welt<br />

eingebunden und arbeiten mit allen Microsoft Produkten zusammen.<br />

Somit lässt sich zusammenfassend festhalten, dass die Kombination von SMS und MOM<br />

in einer homogenen Microsoftlandschaft durch die Integration in die MS Landschaft eine<br />

gute Lösung für die Verwaltung von Computerressourcen ist. Darüber hinaus besteht die<br />

Möglichkeit, Geräte wie zum Beispiel PDAs in SMS oder MOM einzubinden und diese<br />

mit Software zu versorgen oder zu überwachen. Dies ist in der Regel leicht realisierbar.<br />

1.3 HP OpenView<br />

HP bietet unter dem Namen OpenView eine Produktfamilie an, die in ihrer Funktionalität<br />

weit umfangreicher ist, als die Funktionen des System-Management(systems). Entstanden<br />

ist HP OpenView aus dem HP OpenView Node Manager 238 . Dieses Programm wurde<br />

früher nur zur Überwachung und Administration von Netzwerken genutzt.<br />

HP OpenView ist kostenpflichtig und kann über HP oder seine Vertriebspartner bezogen<br />

werden.<br />

OpenView wird in zwei <strong>Version</strong>en angeboten. Die eine <strong>Version</strong> ist der Management Server,<br />

die zweite ist eine Java Implementation der Management Server genannten Java<br />

Konsole.<br />

Der Management Server kann auf folgenden Betriebssystemen installiert werden:<br />

� HP-UX (PA-RISC, Itanium)<br />

� Solaris (SPARC)<br />

238 https://h10078.www1.hp.com/cda/hpms/display/main/hpms_content.jsp?zn=bto&cp=1-11-<br />

15-119^1155_4000_100_<br />

Seite 302


Bei beiden Installationen ist der Einsatz einer Oracle Datenbank notwendig.<br />

Die Java Konsole kann laut Herstellerangaben auf nachfolgend genannten Betriebssystemen<br />

installiert werden, wobei hier immer eine Java Runtime Umgebung installiert werden<br />

muss:<br />

� HP-UX<br />

� Sun Solaris<br />

� Microsoft Windows<br />

� Red Hat Linux<br />

Auch HP OpenView enthält Module für Storage- und Prozess-Management. Die HP<br />

OpenView Module können einzeln verwendet und entsprechend kombiniert werden.<br />

Somit können mit HP OpenView alle Anforderungen an eine System-Managementsoftware<br />

abgedeckt werden.<br />

Folgende Client Betriebssysteme werden u.a. durch OpenView unterstützt:<br />

� HP-UX, Sun Solaris<br />

� Microsoft Windows<br />

� IBM AIX<br />

� Tru64 UNIX<br />

� Red Hat Linux<br />

� SuSE Linux<br />

� Turbo Linux<br />

� Debian Linux<br />

� Novell Netware<br />

� OpenVMS<br />

� HTTPS-based agents<br />

� HP NonStop Servers<br />

� IBM OS/390<br />

� z/OS<br />

� IBM OS/400<br />

HP OpenView bietet für alle gängigen Systeme Module und Erweiterungen für System-<br />

Management-Funktionen an. Auf Grund der Historie von HP OpenView als verbreitetes<br />

Werkzeug für Netzwerkmanagement wird HP-OpenView in vielen Organisationen inzwischen<br />

auch als System-Management-System eingesetzt.<br />

Damit bietet HP-OpenView eine erprobte System-Management-Umgebung, mit der die<br />

Belange des System-Managements in heterogenen Landschaften gut abgedeckt werden<br />

können.<br />

Seite 303


1.4 IBM Tivoli System-Management<br />

Tivoli 239 wurde von der gleichnamigen Firma als System-Management und Storagemanagement<br />

System entwickelt. In den 90er Jahren kaufte IBM die Firma Tivoli auf, die<br />

inzwischen eine 100%ige Tochter von IBM ist. IBM hat die Tivoli Produktpalette erheblich<br />

erweitert. Inzwischen besteht die Tivoli Produktfamilie aus über 70 einzelnen Modulen.<br />

Diese umfassen auch Storagelösungen und Module für Prozessmanagement. In<br />

diesem Kapitel werden nur diejenigen Funktionen betrachtet, die notwendig sind, um die<br />

in der Einleitung dieses Kapitels beschriebenen Funktionalitäten abzubilden. Für IBM<br />

Tivoli gibt es eine umfangreiche Online Dokumentation.<br />

Tivoli ist ein kostenpflichtiges Produkt. Hierbei werden pro eingesetztes Modul und je<br />

Client Lizenzgebühren erhoben.<br />

Tivoli ist kein monolithisches Programm. Es besteht aus vielen einzelnen Modulen, die<br />

entsprechend ihrer Funktion kombiniert werden können. Mit seinen über 70 Modulen<br />

bietet es alle Funktionen, die für die Durchführung von System-Management benötigt<br />

werden. In welchen Kombinationen die Module für die einzelnen Einsatzgebiete erforderlich<br />

sind, sollte mit Hilfe des Herstellers erarbeitet werden. Dies gilt insbesondere bei der<br />

Einführung eines entsprechenden Systems.<br />

Alle Tivoli Module unterstützen die Überwachung und Administration folgender Betriebssysteme:<br />

� AIX<br />

� HP-UX<br />

� Linux<br />

� SUN Solaris<br />

� Windows NT<br />

� Windows 2000<br />

� Windows 2003<br />

Tivoli bietet für alle gängigen Systeme Module und Erweiterungen für System-<br />

Managementfunktionen an.<br />

Damit ist festzuhalten, dass Tivoli in einer heterogenen Landschaft ein bewährtes System-Management-Programmpaket<br />

ist, welches sich seit Jahren im Einsatz befindet. Aufgrund<br />

der Lizenzbedingungen kann bei großen Netzwerken die Ermittlung der Kosten<br />

jedoch schwierig sein, da bei einer Vielzahl von Modulen diese gegebenenfalls separat<br />

für jeden Client und jedes Modul lizenziert werden müssen.<br />

2 Migrationspfade<br />

Eine Migration von System-Management-Software kann je nach Umfang der eingesetzten<br />

Funktionen und der Größe der Netzwerkinfrastruktur ein sehr umfangreiches und<br />

komplexes Vorhaben sein. Gerade dann, wenn nicht nur Anwendungen zur Überwa-<br />

239 http://www-306.ibm.com/software/de/tivoli/<br />

Seite 304


chung, sondern auch Anwendungen für SW-Verteilung, Fernsteuerung und so weiter<br />

eingesetzt werden, ist eine Migration sehr zeitaufwendig und Bedarf einer sorgfältigen<br />

Planung. Zum Beispiel ist es nur sehr schwer möglich, von einem Softwareverteilungssystem<br />

auf ein anderes zu wechseln, ohne dass die einzelnen Pakete zur Softwareverteilung<br />

neu erstellt werden müssen. Am Unkritischsten ist die Migration der Anwendungen<br />

für Überwachungsfunktionen. Für die im Kapitel Technologie beschriebenen Softwaregruppen<br />

sind dies:<br />

� Nagios<br />

� IBM Tivoli Monitoring<br />

� HP OpenView Node Manager<br />

� Microsoft SMS<br />

Eine Migration von Systemmanagementsoftware sollte stets auch unter einem gesamtwirtschaftlichen<br />

Aspekt betrachtete werden. Konkret: Es sind nicht nur die Aufwendungen<br />

für die Migration zu betrachten, sondern auch die positiven oder negativen Auswirkungen<br />

auf die Betriebskosten nach einer Migration. Sicherlich stellt sich zunächst die<br />

grundlegende Frage, ob beziehungsweise warum von einer proprietären Lösung zu einer<br />

anderen proprietären gewechselt werden sollte, zum Beispiel von IBM nach HP oder von<br />

HP nach Microsoft. Die Argumente für und wider eine solche Migration sind im Vorfeld<br />

eindeutig herauszuarbeiten. Hingegen ist eine Migration hin zu OSS Software unter rein<br />

finanziellen Aspekten sicherlich immer reizvoll.<br />

2.1 Migration von Tivoli System-Management nach HP Open View<br />

Die Migration von Tivoli System-Management nach HP OpenView stellt eine Migration<br />

von einem proprietären System in ein anderes proprietäres System dar. Hierbei bietet<br />

HP auch Unterstützung für eine solche Migration an. Aufgrund der Komplexität der beiden<br />

Produktfamilien ist aber genau darauf zu achten, welche Unterstützungsleistung<br />

tatsächlich benötigt wird. So bietet HP u.a. ein Migrationstool an, welches die Migration<br />

von IBM Tivoli Service Desk nach HP OpenView Service Desk unterstützt. Beide Programme<br />

dienen nicht zur Unterstützung des System-Managements, sondern zur Unterstützung<br />

von Service Desk Funktionalitäten. Sie gehören dennoch zur gleichen Produktfamilie<br />

des System-Managements. Eine Migration von IBM Tivoli nach HP OpenView<br />

stellt sich in der Regel als Neuaufbau eines HP OpenView Systems und der späteren<br />

Abschaltung des IBM Tivoli Systems dar. Dies hat mehrere, nachfolgend kurz aufgeführte<br />

Gründe:<br />

� Geringe Unterbrechungen des Systemmanagements während der Migrationszeit<br />

� Chance zur Neukonzeption der Überwachungsfunktionen und Regeln<br />

� Überprüfung der neuen Überwachungslandschaft durch Vergleich mit bestehenden<br />

Daten<br />

� Möglichkeit zur Abschaltung des alten Überwachungssystems, wenn das neue<br />

System voll funktional und abgenommen ist<br />

� Möglichkeit, die IBM Tivoli Clients nacheinander gegen die HP OpenView Clients<br />

auszutauschen.<br />

Seite 305


Diese Vorgehensweise birgt allerdings das finanzielle Risiko, dass während der gesamten<br />

Migrationszeit, die gegebenenfalls auch länger als geplant sein kann, evtl. anfallende<br />

Lizenzkosten, SW-Wartungskosten und Supportkosten für beide Systeme entrichten<br />

werden müssen.<br />

2.2 Migration von proprietärer Systemüberwachungssoftware nach Nagios<br />

Obwohl in diesem Kapitel nur auf die eingangs erwähnte Migration von Systemüberwachungssoftware<br />

fokussiert wird, seien vorab einige allgemeine Anmerkungen zur Migration<br />

von System-Managementsoftware nach OSS aufgeführt.<br />

Beim System-Management folgen die meisten OSS-Betriebssysteme entsprechend ihrer<br />

Herkunft dem UNIX-Weg. Als Mehrbenutzer- und Netzwerksysteme sind die Funktionen<br />

für das zentrale System-Management bei den OSS-Systemen sehr vielfältig und in<br />

einigen Bereichen das Vorbild und nicht die ersetzende Alternative zu einer Windows-<br />

Lösung. Für Administratoren und Betriebsorganisation sind bei einer Migration auch<br />

konzeptionelle Änderungen zu erwarten, die insbesondere bezüglich der Sicherheit<br />

große Fortschritte ermöglichen. Die Sicherheit und Zuverlässigkeit, die den Linux-<br />

Systemen allgemein zugeschrieben wird, ist nicht zuletzt das Resultat des System-<br />

Managements.<br />

Für diejenigen Personen, die mit dem System-Management betraut sind, bedeutet ein<br />

Migrationsprojekt deutliche Veränderungen. Sowohl die Möglichkeiten zur Analyse als<br />

auch die Optionen zur Anpassung und Korrektur der OSS-Systeme erlauben den Systemadministratoren<br />

höhere Freiheitsgrade, als vergleichsweise bei einem geschlossenen<br />

Windows-System gegeben sind. Diese Freiheit kann dazu genutzt werden, sich von<br />

Herstellern und externen Dienstleistern zu emanzipieren und gleichzeitig die Qualifikation<br />

der eigenen Mitarbeiter zu erhöhen. Die Transparenz der offenen OSS-Systeme erleichtert<br />

das grundsätzliche und tiefgreifende Verständnis von Funktion und Abhängigkeiten<br />

der verschiedenen Komponenten in einer modernen IT-Infrastruktur.<br />

Bei der Migration von Systemüberwachungssoftware nach Nagios sollte man die Möglichkeit<br />

nutzen, zuerst das Nagios System aufzubauen und erst danach das proprietäre<br />

System abzuschalten. Zumal sich hierbei das finanzielle Risiko auf die Bereitstellung<br />

einer Hardware-Plattform beschränkt, die während des Migrationszeitraums parallel zur<br />

Verfügung gestellt werden muss.<br />

2.3 Migration von SMS 2.0 nach SMS 2003<br />

Der System Management Server 2003 (SMS) ist die Nachfolgeversion des System Management<br />

Server 2.0. SMS 2003 beinhaltet im Wesentlichen die gleichen Funktionalitäten<br />

wie der SMS 2.0, die aber auf fast allen Ebenen verbessert wurden. Zur Migration<br />

bietet Microsoft umfangreiche Unterstützung auf seinen Webseiten an 240 .<br />

Eine Migration kann über mehrere Wege erfolgen, zum einen über „Bordmittel―, durch<br />

Kopieren, und durch generierte Reports und zum anderen durch das SMS Migration Tool<br />

240 http://www.microsoft.com/germany/aktionen/partnerfinden/solutionfinder/ default.mspx?solutionid=9ae215677c5d4379ab02f86a817c0523<br />

Seite 306


(CCSMT) das von Microsoft zur Verfügung gestellt wird. Dieses Tool wird von Computacenter<br />

im Rahmen des Solution Finder Programms von Microsoft angeboten 241 .<br />

Die Komplexität einer Migration von SMS2.0 zu SMS 2003 ist sicherlich als gering anzusehen.<br />

Dennoch ist ein erheblicher zeitlicher Aufwand notwendig, der bei der Planung<br />

nicht unterschätzt werden darf.<br />

3 Bezüge<br />

3.1 Netzwerkdienste<br />

System-Überwachungs- und Management-Dienste sind komplexe Werkzeuge, die mit<br />

den Anwendungen und Protokollen, die von ihnen überwacht werden, in Verbindung<br />

stehen müssen. Diese Interaktion geschieht in der Regel über eigene Protokolle, die in<br />

Netzwerken weitergeleitet werden. Je nach Technologie entstehen hierdurch Bezüge zu<br />

dem Thema Netzwerkdienste (Kapitel II.C 3.1). Die darin beschriebenen Netzwerkdienste<br />

können in vielen LANs grundlegende Verantwortung für die Identifikation von Rechnern<br />

in Netzwerken tragen und sind somit auch für Systemüberwachungsdienste von<br />

Bedeutung.<br />

3.2 Webserver<br />

Systemüberwachungsdienste stellen ihre gewonnenen Überwachungsdaten gelegentlich<br />

im HTML oder XML Format auf Massenspeichern ab (z.B. MRTG). Diese Daten werden<br />

häufig von einem Webserver an einer bestimmten Webadresse passwortgeschützt veröffentlicht.<br />

Da dieser Art von Anwendungen auch sicherheitsrelevante Überwachung zur<br />

Aufgabe hat, werden die Überwachungsdaten gelegentlich auf externe Geräte oder<br />

Computer übertragen, um diese im Falle eines Dateneinbruchs vor Manipulation zu<br />

schützen. Es entstehen hierdurch je nach Anwendung und Installation Bezüge zu den<br />

Themen Webserver (siehe II.A ).<br />

241 http://www.microsoft.com/germany/mittelstand/partner/ partnerfinder.mspx?solutionid=9ae215677c5d4379ab02f86a817c0523<br />

Seite 307


III. Modul Anwendungen<br />

A Thema Messaging und Groupware<br />

Eine Software, welche die Zusammenarbeit in einer Gruppe über räumliche und zeitliche<br />

Distanzen hinweg ermöglicht, wird als Groupware bezeichnet. Groupware-Systeme vereinen<br />

eine Reihe von Funktionalitäten und Diensten unter einem Dach. Klassisch sind<br />

dies<br />

� E-Mail-Austausch,<br />

� Adressbuch,<br />

� Kalender mit Terminplanungsfunktionalitäten für persönliche Termine und innerhalb<br />

von Gruppen (Gruppen-Kalender),<br />

� Notiz- und Aufgabenverwaltung<br />

� Öffentliche/Gruppen-Ordner<br />

Einige der hier betrachteten Groupware-Systeme stellen darüber hinaus auch Funktionen<br />

wie Ressourcenverwaltung oder Foren zur Verfügung.<br />

In den folgenden Abschnitten werden verschiedene dieser Systeme betrachtet.<br />

1 Produkte / Technologien<br />

1.1 OpenGroupware.org<br />

OpenGroupware.org (OGo) 242 ist eine der ältesten Groupware-Lösungen auf dem Markt<br />

und – ähnlich wie andere Open Source Software Lösungen – aus einem ehemals proprietärem<br />

Produkt, „Skyrix― der Skyrix Software AG 243 ,entstanden. Im Sommer 2003 hat<br />

die SKYRIX Software AG 244 das gleichnamige Produkt unter den Lizenzbedingungen der<br />

GNU GPL/LGPL freigegeben. Seit diesem Zeitpunkt wird die Software unter dem Namen<br />

OpenGroupware.org als Community-Projekt weiterentwickelt.<br />

Neben Opengroupware.org mit seiner eigenen webbasierte Benutzeroberfläche gibt es<br />

von Skyrix noch den ZideLook Connector, mit dem Outlook Clients angebunden werden<br />

können. Weiterhin kann auf den OpenGroupware-Server durch sogenannte „native<br />

Clients― wie z. B. Microsoft Outlook, Mozilla Calendar oder Apple iCal.app zugegriffen<br />

werden.<br />

Als „instantOGo― gibt es auch eine vollständige Linux-Distribution mit Betriebssystem,<br />

Groupwarekomponenten und Hilfsprogrammen.<br />

242 http://www.opengroupware.org<br />

243 http://www.skyrix.de<br />

244 Skyrix ist ein kleines Unternehmen mit Sitz in Magdeburg (ca. 15 Mitarbeiter).<br />

Seite 308


Der ZideLook Connector sowie instantOGo 245 werden von Skyrix genau wie der Support<br />

und die Wartung zu OpenGroupware.org kostenpflichtig angeboten.<br />

OpenGroupware.org wird am häufigsten in der Dienstleistungsbranche und in der öffentlichen<br />

Verwaltung eingesetzt. Über die Zahl der Installationen liegt keine Information vor,<br />

da die Software frei heruntergeladen und ohne Registrierung installiert werden kann.<br />

Derzeit liegt OpenGroupware.org in der <strong>Version</strong> 1.0.0 vom Januar 2007 vor, ZideLook,<br />

der Outlook-Konnektor von Skyrix, in der <strong>Version</strong> 2.1 vom Juni 2007 und InstantOGo in<br />

der <strong>Version</strong> 2.0 vom Mai 2007.<br />

Die folgende Abbildung zeigt die grundlegende Architektur des Groupwaresystems im<br />

Zusammenspiel mit anderen OSS Komponenten.<br />

Abbildung 31: OpenGroupware-Architektur 246<br />

OpenGroupware.org ist eine Server-Anwendung, die von Anwendern über Web-Browser<br />

bedient wird. Es stehen zusätzlich Schnittstellen für die Mehrzahl der am weitesten<br />

verbreiteten Groupwareclients zur Verfügung (s.o.).<br />

Derzeit stehen Pakete für die Installation auf x86-Linux Distributionen von Debian, Suse,<br />

RedHat und Mandrake sowie für FreeBSD zur Verfügung. Neben der Kernanwendung,<br />

die in Objective-C geschrieben wurde, setzt OpenGroupware.org auf bewährte Standardkomponenten<br />

wie PostgreSQL, Apache oder Cyrus IMAP.<br />

245 Weitere Information unter http://instantogo.com.<br />

246 Quelle: http://www.opengroupware.org/en/devs/docs/OGoArchitecture.html<br />

Seite 309


Der Server bietet folgende Funktionen:<br />

� Gruppenterminplanung,<br />

� Kontakte (Personen, Unternehmen),<br />

� Ressourcen-Management,<br />

� Aufgabenverwaltung (Task-Management),<br />

� Projektcontainer zur Verwaltung von Dokumenten (inklusive <strong>Version</strong>ierung),<br />

Notizen und Aufgaben,<br />

� E-Mail (mit zusätzlichem Mailserver, beispielsweise dem Cyrus IMAP),<br />

� umfassendes Rechte-Management für Kontakte, Termine, Aufgaben und<br />

Projekte,<br />

� Palm-Synchronisation,<br />

� CTI API zur Integration von TK-Anlagen.<br />

Das Backend zeichnet sich durch eine modulare Architektur und vor allem durch das<br />

Vorhandensein einer umfangreichen XML-RPC API aus. Mit dieser API können nahezu<br />

alle Funktionalitäten, die über die webbasierte Nutzerschnittstelle oder andere Clients<br />

genutzt werden können, ausgeführt werden.<br />

Zur Unterstützung einer großen Anzahl von parallel arbeitenden Nutzern besteht die<br />

Möglichkeit der horizontalen Skalierung, zum Beispiel durch die Verwendung der Software<br />

Loadbalancer 247 . Diese Software verteilt die einzelnen OGo Prozesse je nach Lastsituation<br />

auf verschiedene Knoten im Clusterverbund. Dieses Verfahren kann auch zur<br />

Gewährleistung von Ausfallsicherheit genutzt werden.<br />

Die Webschnittstelle ist die primäre Benutzerschnittstelle des OpenGroupware.org-<br />

Servers. Der Anwender verfügt über die Möglichkeit, die Ansichten der Weboberfläche<br />

seinen persönlichen Bedürfnissen anzupassen. Zentrale Komponenten zur Organisation<br />

von Gruppen- und Einzelterminen, Ressourcen und Kontakten sind ebenso integriert wie<br />

Projektcontainer, die sowohl Aufgaben, Notizen und Dokumente aufnehmen und entsprechend<br />

der vergebenen Zugriffsrechte den Teammitgliedern zur Verfügung stehen. In<br />

jedem Projektcontainer lassen sich beliebige Ordnerstrukturen erzeugen, in denen<br />

Dokumente mittels eines Check-In/Check-Out-Verfahrens versioniert gespeichert und ab<br />

OGo 1.0 zusätzlich über WebDAV zur Verfügung gestellt werden. Über den eingebauten<br />

WebMailClient wird der Zugriff auf IMAP4-Postfächer ermöglicht, wobei auch serverseitige<br />

Filter, Abwesenheitsnotizen und Mailquotas über den Webbrowser verwaltet<br />

werden können, sofern diese Funktionen vom IMAP Server unterstützt werden 248 .<br />

Outlook-Anwender benötigen einen proprietären und kostenpflichtigen Konnektor, der<br />

von der SKYRIX Software AG unter dem Produktnamen „ZideLook― angeboten wird. Die<br />

Lösung besteht aus einem „MAPI Storage Provider"-Plugin für Outlook und einem<br />

zusätzlichen Servermodul für OpenGroupware.org. Zwischen Server und Client erfolgt<br />

keine Synchronisation der Daten sondern ein Direktzugriff auf die „live" Daten des<br />

247 Der Loadbalancer steht im Rahmen des Wartungsvertrages zur Verfügung.<br />

248 Es empfiehlt sich beispielsweise die Verwendung des Cyrus IMAP Servers.<br />

Seite 310


Groupware-Servers. Das ZideLook-Plugin übersetzt dabei die MAPI Aufrufe von Outlook<br />

in Aufrufe gemäß dem standardisierten WebDAV Protokoll und sendet sie an den<br />

ZideStore Server. Dieser liefert die OGo-Groupware-Daten im XML-Format aus. Der<br />

noch fehlende Replikationsmechanismus schränkt jedoch die Nutzung für mobile<br />

Anwender ein. ZideLook ermöglicht den Zugriff auf den privaten Kalender, auf die private<br />

Aufgabenliste, auf Gruppenkalender und Gruppen-Aufgabenlisten sowie auf öffentliche<br />

(globale) und private Kontakte. Aktuell werden die Outlook <strong>Version</strong>en 2000, XP und<br />

2003 offiziell unterstützt.<br />

PalmOS-basierte PDAs und Smartphones können direkt über den in OGo enthaltenen<br />

NetworkHotSync Daemon serverseitig angebunden werden. Alle Einstellungen zur<br />

Übernahme von Kontakten, Terminen und Aufgaben kann der Anwender dabei über die<br />

Webschnittstelle vornehmen. Neben dem Abgleich über die klassische USB-Dockingstation<br />

ist auch die Datenübermittlung im mobilen Betrieb über Handys mittels IrDA,<br />

Bluetooth und WLAN möglich. Anwendern von PocketPC beziehungsweise WindowsCE<br />

Endgeräten oder aktuellen Smartphones steht derzeit nur die Anbindung über den<br />

MS Outlook Client zur Verfügung.<br />

Je nach Einsatzszenario erfolgt die Administration über die Webschnittstelle oder direkt<br />

mittels der Kommandozeile auf den Servern. So sind die Verwaltung von Nutzern,<br />

Teams, Ressourcen für die Terminplanung oder die Verwaltung von Kategorien für das<br />

Kontaktmanagement einfach und auch von Anwendern ohne Linuxerfahrung über den<br />

Browser realisierbar. Durch die Verwendung von Nutzer-Vorlagen lassen sich einmal<br />

definierte Benutzerprofile auf neu einzurichtende Nutzer vererben. Alternativ bietet sich<br />

bei der Integration großer Nutzerzahlen die Verwendung eines LDAP-basierten<br />

Verzeichnisdienstes an, der über das XML-RPC API integriert werden kann. Diese<br />

Schnittstelle ermöglicht darüber hinaus den skriptgesteuerten Zugriff auf nahezu alle<br />

Funktionalitäten des OGo Applicationservers und stellt somit eine Möglichkeit zur Automatisierung<br />

komplexer Initialisierungsprozesse dar.<br />

Das Design der Weboberfläche ist vollständig in Templates beschrieben, wobei beliebig<br />

viele dieser Template-Sets angelegt werden können und dem Nutzer dann wahlweise<br />

zur Verfügung stehen. Auf diesem Weg kann der Administrator auch sehr einfach<br />

gewünschte Anpassungen an existierende Corporate Design Festlegungen vornehmen.<br />

Diese einfache Möglichkeit wird außerdem zur Lokalisierung der Weboberfläche benutzt,<br />

die bereits heute in 13 Sprachen zur Verfügung steht.<br />

OpenGroupware.org unterstützt die Verschlüsselung des Datentransfers zwischen<br />

Server und dem jeweils verwendeten Clientsystem über SSL. Für die Anbindung von<br />

Outlook und PalmOS Endgeräten ist der Einsatz eines geeigneten SSL-Tunnels zu<br />

empfehlen. Dies gilt auch für die Kommunikation zwischen den einzelnen Servern,<br />

sofern einzelne Komponenten wie beispielsweise der IMAP-, LDAP- oder SQL-Server<br />

zwecks Lastverteilung auf separaten Servern betrieben werden sollen und diese über ein<br />

als unsicher einzuschätzendes Netz miteinander verbunden sind.<br />

OpenGroupware.org unterstützt derzeit keine S/MIME beziehungsweise PGP Mailverschlüsselung<br />

im webbasierten Mailclient. Eine entsprechende Erweiterung ist geplant.<br />

OpenGroupware.org besitzt keinen eigenen Spam- oder Virenschutz, jedoch können alle<br />

zum jeweiligen MTA kompatiblen Spam- und Antivirenprogramme verwendet werden.<br />

Seite 311


Neben der Webschnittstelle und dem proprietären Outlook-Konnektor ZideLook steht<br />

eine XML-RPC-Schnittstelle mit umfangreichen Möglichkeiten zur Verfügung. Es existieren<br />

dazu auch Werkzeuge, die allerdings bisher nur im Projektgeschäft verwendet<br />

wurden.<br />

Da OGo einen Standard-Mailserver wie Cyrus-IMAP und Postfix-SMTP einbindet,<br />

werden alle gängigen Protokolle unterstützt. OpenLDAP ist über XML-RPC integriert,<br />

somit steht auch eine LDAP-Schnittstelle zur Anbindung von Active Directory und LDAP-<br />

Directories bereit.<br />

Über die MAPI-Schnittstelle von ZideLook kann auf Termine, Kontakte und Aufgaben<br />

zugegriffen werden. Da die MAPI-Nachrichten aus Outlook dekodiert und im SQL-<br />

Backend abgelegt werden, stehen sie auch anderen Clients sowie der Weboberfläche<br />

zur Verfügung.<br />

Der Datenaustausch findet über die Clients statt; damit werden alle in den Clients integrierten<br />

Formaten unterstützt, zum Beispiel die von Outlook (ab <strong>Version</strong> 2000).<br />

Zusammenfassend ist festzuhalten: OpenGroupware.org verfügt über Groupware-<br />

Funktionen mit einer mächtigen Weboberfläche, die über die Funktionalität von Outlook<br />

hinausgeht. Es werden Anbindungsmöglichkeiten an gängige Clients wie Outlook unter<br />

Windows und Evolution unter Linux angeboten. Die Synchronisation mit mobilen Endgeräten<br />

ist dann schwierig, wenn nicht mit Outlook als Client synchronisiert wird.<br />

Über die XML-RPC-Schnittstelle und über direkten Zugriff auf die SQL-Datenbank ist ein<br />

Datenaustausch mit anderen Systemen möglich; gängige Protokolle wie SSL, LDAP,<br />

MAPI, IMAP, SMTP werden unterstützt.<br />

1.2 OpenXchange<br />

Open-Xchange Server 5 unterstützt Teamarbeit mit Basisdiensten wie E-Mail, Termin-<br />

und Kontaktverwaltung. Darüber hinaus liefert Open-Xchange integrierte Module zum<br />

Dokumentenaustausch, zur Aufgaben- und Projektsteuerung, zum Aufbau einer<br />

Wissensdatenbank und eines Forums.<br />

Mit Open-Xchange OXtender werden Offline-Clients wie Microsoft Outlook angebunden<br />

und die Synchronisierung mit Smartphones und Palm Pocket PCs realisiert.<br />

Im August 2004 wurde die ursprünglich proprietäre Groupware-Komponente Comfire<br />

unter dem Namen Open-Xchange als freie Software unter GPL zur Verfügung 249 gestellt<br />

und nach dem OpenSource-Modell weiterentwickelt. Open-Xchange wird in Deutschland<br />

an den Standorten Olpe und Nürnberg entwickelt und ist darüber hinaus in den USA in<br />

Tarrytown, New York, vertreten.<br />

Ein weltweites Partnernetzwerk 250 bietet neben integrierten Open-Xchange-Lösungen<br />

auch die Kompetenz zur Unterstützung bei der Planung, Implementierung und dem<br />

Support von komplexen Integrationsprojekten.<br />

249 http://www.open-xchange.com/header/community_area.html<br />

250 http://www.open-xchange.com/DE/header/partner/partner_suchen.html<br />

Seite 312


Für das Jahr 2006 nennt Open-Xchange mehr als 2000 registrierte Installationen des<br />

Open-Xchange Server 5 im deutschsprachigen Raum. Zum Kundenkreis 251 von Open-<br />

Xchange gehören Unternehmen, Bildungseinrichtungen und Behörden mit z.T. mehreren<br />

Tausend Endbenutzern pro Organisation.<br />

Seit Februar 2007 bietet der Webhoster 1&1 252 den webbasierten Groupware-Dienst<br />

MailXchange auf Basis von Open-Xchange an. Mit dieser Lösung werden Zielgruppen<br />

wie Freiberufler und kleine Unternehmen angesprochen.<br />

Im April 2005 wurde Open-Xchange Server 0.8.0 fertiggestellt. Seitdem folgten mehrere<br />

<strong>Version</strong>en 253 und Service Packs. Im März 2007 erfolgte die Veröffentlichung der <strong>Version</strong><br />

Open-Xchange Server 0.8.6 und im Juni 2007 stellte Open-Xchange das Service Pack 3<br />

seinen Anwendern zu Verfügung. Open-Xchange Server 0.8.x läuft unter der kostenlosen<br />

GNU General Public License, <strong>Version</strong> 2 der Free Software Foundation. Zusätzlich<br />

stellt Open-Xchange für die Anbindung von MS Outlook an Open-Xchange Server 0.8.x<br />

eine kostenlose GPL-<strong>Version</strong> des OXtender zur Verfügung.<br />

Mit Open-Xchange Community Edition wird Open-Xchange als kostenlose GPL-<strong>Version</strong><br />

angeboten, die zusätzlich die Creative Commons Attribution-NonCommercial-<br />

ShareAlike 2.5 254 vereinbart. Diese Edition von Open-Xchange bietet gegenüber Open-<br />

Xchange Server 0.8.x eine optimierte Server-Architektur und einen AJAX-basierten<br />

Webclient, jedoch zurzeit nicht die Funktionen Forum, Projekte and Pinnwand. Außerdem<br />

ist die Anbindung von Offline-Clients über OXtender nicht möglich. Installations-<br />

und Konfigurationshinweise findet man im Wiki 255 von Open-Xchange. Falls weiterreichende<br />

Unterstützung erforderlich ist, steht das Open-Xchange Forum zur Verfügung.<br />

Zusätzlich werden die Produkte Open-Xchange Server 5, Open-Xchange Express Edition<br />

und Open-Xchange Hosting Edition angeboten. Der propietäre Open-Xchange Server<br />

5 bietet über den Umfang der kostenlosen GPL-<strong>Version</strong> und hinaus Werkzeuge für die<br />

Installation und Administration sowie eine Dokumentation für Benutzer den Zugang für<br />

ein Jahr zu den Leistungen des Open-Xchange Maintenance Portals. Das Maintenance<br />

Portal stellt kontinuierlich weitergehende Funktionalitäten in Form von regelmäßigen<br />

Updates zur Verfügung sowie Dokumentationen für Endanwender und Administratoren.<br />

Darüber hinaus bietet Open-Xchange seinen Kunden Installations-Support per E-Mail<br />

ohne sowie mit garantierten Antwortzeiten.<br />

Das Produkt Open-Xchange Express Edition 256 ist eine Komplettlösung und enthält neben<br />

dem Betriebssystem (optimiertes Ubuntu), auch E-Mailserver (Cyrus IMAP & Postfix),<br />

Collaborationserver, Webserver (Apache), Datenbank (MySQL), Dokumentenverwaltung,<br />

Installationswerkzeug, Administratormodul, Backup, automatischen Update-<br />

Dienst, Anti-Virenschutz (ClamAv) und Anti-Spam (SpamAssassin).<br />

251 http://www.open-xchange.com/DE/header/unternehmen/news_presse/referenzen.html<br />

252 http://www.1und1.de/<br />

253 http://www.open-xchange.com/wiki/index.php?title=<strong>Version</strong>ing_and_Numbering<br />

254 http://www.open-xchange.com/header/community_area/faqs_ox_community_project.html<br />

255 http://www.open-xchange.com/main_entry/community_area/wiki.html<br />

256 http://www.open-xchange.com/fileadmin/downloads/oxee/Tech_Fact_Sheet_DE.pdf<br />

Seite 313


Für Internet Service Provider und Webhosting-Anbieter bietet Open-Xchange mit der<br />

Open-Xchange Hosting Edition Werkzeuge zur Systemüberwachung und für optimierte<br />

Lastverteilung, Geschwindigkeit, Clustering und Skalierbarkeit.<br />

Open-Xchange Server 5 unterstützt die beiden Linux-Betriebssysteme Red Hat Enterprise<br />

Linux 4 und Suse Linux Enterprise Server 9. Da Novell eine geeignete <strong>Version</strong><br />

seines Enterprise-Linux Betriebssystems kostenlos per Download zur Verfügung stellt,<br />

wird an dieser Stelle auch die dazu abgestimmte <strong>Version</strong> des Open-Xchange Servers<br />

angeboten.<br />

Die aktuelle Preisliste 257 mit Behördentarifen kann auf den Unternehmensseiten von<br />

Open-Xchange eingesehen werden.<br />

Die Architektur von Open-Xchange Server 5 basiert vollständig auf offenen Standards<br />

und Protokollen. Die gesamte Lösung besteht aus unterschiedlichen modularen Software-Einheiten,<br />

die im Zusammenspiel die Mail- und Groupware-Funktionalitäten realisieren.<br />

Die Basis der Groupware-Lösung bildet der Java-basierte Open-Xchange Application-Server.<br />

Abbildung 32: Open-Xchange Architektur 258<br />

Aufgrund der modularen und offenen Architektur kann Open-Xchange Server in<br />

bestehende IT-Umgebungen integriert werden und ermöglicht somit eine Erweiterung<br />

bestehender Systeme. Über standardisierte Schnittstellen kann die Server-Funktionalität<br />

an unterschiedliche Bedürfnisse angepasst werden. Über die sogenannten OXtender<br />

lassen sich bei Bedarf zusätzliche Funktionen und Programme von Drittanbietern<br />

anbinden. Beispiele hierfür sind OXtender für MS Outlook, Palm OS, Samba Services<br />

und SynchML.<br />

257 http://www.open-xchange.com/fileadmin/downloads/pricelist.pdf<br />

258 Quelle: OPENXCHANGE Server 5.0, Architecture, Integration and Interfaces, High Level<br />

Overview V 0.92, Stephan Martin, Senior System Architect<br />

http://www.proite.de/fileadmin/user_upload/produkt-bilder/ox/Open-Xchange-OX-<br />

Architecture.pdf (Stand 27.10.2007)<br />

Seite 314


Besonders vorteilhaft ist die Skalierbarkeit aufgrund der Möglichkeit, Komponenten auf<br />

verschiedene Server-Systeme zu verteilen. Zusätzlich können Komponenten auf<br />

mehrere Server repliziert werden.<br />

Nachfolgend sollen nur jene Softwarepakete betrachtet werden, die im unmittelbaren<br />

Zusammenhang mit der Groupware-Funktionalität stehen. Die gesamte Lösung besteht<br />

aus unterschiedlichen modularen Software-Einheiten, die im Zusammenspiel die Mail-<br />

und Groupware-Funktionen realisieren. Die Basis der Groupware-Lösung bildet der<br />

Java-basierte Open-Xchange Application Server.<br />

Komponenten Aufgaben<br />

Postfix Mail-Transfer-Agent (MTA)<br />

Cyrus IMAP Realisiert die IMAP-Funktionalität<br />

OpenLDAP Zentraler Verzeichnisdienst für die Nutzerverwaltung<br />

Postgres SQL Datenbank zur Verwaltung der Groupware-Daten<br />

Apache – Tomcat Realisierung des Webfrontends (Mail, Groupware)<br />

Tabelle 49: Mögliche Komponenten der Open-Xchange-Lösung<br />

Die Serverkomponenten bieten umfangreiche Mail- und Groupware-Funktionalitäten.<br />

Den Benutzern stehen unterschiedliche Funktionen zur Verfügung:<br />

� E-Mails empfangen und versenden,<br />

� Terminverwaltung,<br />

� Adressenverwaltung,<br />

� Aufgabenverwaltung,<br />

� Notizfunktionen,<br />

� Dokumentenmanagement (<strong>Version</strong>skontrolle und Ordnerstruktur),<br />

� Projekt-Management,<br />

� Konfigurierbare Wissensdatenbank mit Volltextsuche,<br />

� Gruppenbasiertes Diskussionsforum.<br />

In Hinblick auf die Unterstützung unterschiedlicher Client-Systeme muss zwischen der<br />

Mail- und der Groupware-Funktionalität unterschieden werden. Der Zugriff auf die Mailfunktionalitäten<br />

kann mittels aller POP3- und IMAP-fähigen Clients erfolgen. Zusätzlich<br />

können die Benutzer über eine speziell integrierte Webmail-Lösung auf ihre Mails zugreifen.<br />

Die Nutzung der oben aufgeführten Mail- und Groupware-Funktionalitäten kann vollständig<br />

über den browserbasierter Zugriff per Web-Portal erfolgen. Den Benutzern stehen in<br />

allen Funktions-Modulen die LDAP-basierten Adressbücher, die Möglichkeit der Rechtevergabe<br />

und Suchfunktionalitäten zur Verfügung. Bei der Nutzung der Terminvereinbarungsfunktion<br />

erfolgt eine automatische serverseitige Analyse der bereitstehenden<br />

Seite 315


Ressourcen für den jeweiligen Zeitraum. Die webbasierten Angebote erlauben den Anwendern<br />

die Nutzung umfassender Gruppen-Funktionalitäten.<br />

Weiterhin können Clientanwendungen von Drittanbietern mit dem Groupwareserver<br />

kommunizieren, sofern sie Protokolle wie IMAP, LDAP und WebDAV oder das iCal-<br />

Format unterstützen.<br />

Für die verschlüsselte Übertragung kann auf OpenSSL zurückgegriffen werden.<br />

OpenSSL realisiert die Datenverschlüsselung zwischen den Applikationen und Komponenten.<br />

IMAP und POP3 können mittels SSL-Tunnel und SMTP mittels TLS sicher übertragen<br />

werden.<br />

Die Komplettlösung Open-Xchange Express Edition bietet einen integrierten Anti-Virus<br />

und Anti-Spam Schutz.<br />

Der Open-XChange Server ist auf offenen Standards wie XML-RPC, WebDAV (XML),<br />

LDAP, Tirgger, iCal und HTTP/S gebaut 259 . Zum Zugriff und zur Erweiterung des Open-<br />

Xchange Servers stehen die Programmierschnittstellen HTTP API, WebDAV API,<br />

Oxmapi und Open-Xchange Hyperion CLT zur Verfügung 260 :<br />

� HTTP API 261 wird von dem neuen AJAX-basierten Webclient genutzt. Der Daten-<br />

austausch erfolgt in JavaScript Object Notation (JSON) über HTTP GET, POST<br />

und PUT requests.<br />

� WebDAV API 262 wird von externen Client-Anwendungen zur Modifikation von<br />

Objekten auf dem Open-Xchange Server verwendet. Es basiert auf WebDAV-<br />

Standard mit Erweiterungen für den Open-Xchange Server.<br />

� Oxmapi 263 ist eine Windows Library zur Kommunikation von Windows-<br />

Anwendungen mit dem Server.<br />

� Open-Xchange Hyperion CLT 264 sind Shell-Scripts, die Administration des<br />

Servers erlauben.<br />

Zusammenfassend heißt das, dass die Groupware-Lösung Open-Xchange ein modular<br />

aufgebautes Groupware-System anbietet, bei dem die einzelnen Module auf bewährten<br />

Open Source Komponenten basieren. Als Groupware-Komponente wird der Javabasierte<br />

Applikationsserver integriert, der im Zusammenspiel mit den anderen Komponenten<br />

den Benutzern umfangreiche Groupware-Funktionalitäten bietet. Die einzelnen<br />

Server-Komponenten können auf verschiedene Systeme verteilt werden, wodurch die<br />

Skalierbarkeit von Open-Xchange gewährleistet ist. Offene Standards und die Bereitstellung<br />

von diversen Schnittstellen erlauben die Erweiterung des Open-Xchange Servers<br />

durch Drittanbieter und die Integration in bestehende IT-Landschaften. Der Benutzerzugriff<br />

auf die entsprechenden Groupware-Informationen kann entweder webbasiert oder<br />

mittels sogenannter Fat-Clients erfolgen (Kontact, usw.). Die Open-Xchange Express<br />

259 http://www.osedge.com/?q=node/22<br />

260 http://www.open-xchange.com/wiki/index.php?title=Interfaces<br />

261 http://typo3.open-xchange.com/wiki/index.php?title=HTTP_API<br />

262 http://www.open-xchange.com/wiki/index.php?title=Oxwebdavapi<br />

263 http://www.open-xchange.com/wiki/index.php?title=Oxmapi<br />

264 http://www.open-xchange.com/wiki/index.php?title=Open-Xchange_Hyperion_CLT<br />

Seite 316


Edition ist eine umfassende Komplettlösung, die neben einem AJAX-basierten Webclient<br />

auch die MS Outlook Anbindung sowie ein Administratormodul beinhaltet.<br />

1.3 eGroupWare<br />

Basierend auf einer Abspaltung des unter der GPL stehenden Groupwaresystems<br />

phpGroupware entstand im Jahre 2003 das eigenständige Projekt eGroupWare 265 . Die<br />

Abspaltung hatte zum Ziel, den Entwicklungsprozess offener zu gestalten und insbesondere<br />

für eine breite Community zu öffnen; dieses Bestreben zeigt auch die 2005 aufges-<br />

tellte Satzung über die Organisation des gesamten Projektes. Die aufgestellten Regeln<br />

beschreiben hier u.a. die genaue Vorgehensweise, wie Änderungen in der Entwicklung<br />

der Software bestimmt und bekanntgemacht werden müssen.<br />

Auf Basis einer Auswertung freiwilliger Angaben 266 von Unternehmen und Organisationen,<br />

welche auf der Webpräsenz des eGroupWare-Projekts einzusehen sind, ergibt<br />

sich folgendes Bild: Insgesamt sind mind. 45 Organisationen und Unternehmen aufgelistet,<br />

die eGroupWare nutzen. In Summe beläuft sich die Anzahl der Nutzer auf insgesamt<br />

ca. 8000, wobei die Mehrzahl der Organisationen und Unternehmen eine Nutzerzahl von<br />

weniger als 50 Personen angibt. Aus den Angaben ebenfalls ersichtlich ist der internationale<br />

Einsatz der Groupware-Lösung. Eine deutliche Mehrheit entfällt auf europäische<br />

Länder, aber auch einige Staaten aus Nord-, Süd-, und Mittelamerika sowie China beziehungsweise<br />

Südostasien werden als Standorte angegeben.<br />

Ab Mitte 2007 lautet die aktuelle <strong>Version</strong>snummer der Software: 1.4.<br />

Diese <strong>Version</strong> zeichnet sich gegenüber der Vorgängerversion (1.2.) u.a. durch folgende<br />

relevante Änderungen aus:<br />

� Neuimplementierung des Adressbuchs (Gruppen, Organisations-Ansicht, LDAP-<br />

Support)<br />

� Neue Nachverfolgungskomponente (Trackersoftware)<br />

� Neues Backend für IMAP, Verbesserungen der Mailkomponente.<br />

Nach Angaben der Projektseite ist mit der nächsten <strong>Version</strong> (1.6) im 1.Halbjahr 2008 zu<br />

rechnen.<br />

Die Software steht unter der GNU General Public License (GPL2 267 ). Kostenfreien<br />

Support bietet die Community via Handbuch, Mailinglist oder IRC-Chat an. Kostenpflichtigen<br />

Support und Unterstützung bieten die in Deutschland ansässigen Unternehmen<br />

Outdoor Unlimited Training GmbH (Kaiserslautern), Metaways Infosystems GmbH<br />

(Tremsbüttel) und CWTech Freie Netzwerk Systeme (Haiger).<br />

Als Vertreter einer webbasierten Groupware-Lösung ist die Hauptschnittstelle zu<br />

eGroupWare ein Standard-Webbrowser (Internet-Explorer, Firefox). Die Generierung der<br />

dynamisch erzeugten Inhalte geschieht auf Basis der Skriptsprache PHP. Die Inhalte<br />

werden mittels eines Webservers (Apache, IIS oder Roxen) zur Verfügung gestellt, die<br />

265 Weiterführende Informationen zu eGroupware: http://www.egroupware.org/<br />

266 http://www.egroupware.org/references<br />

267 http://opensource.org/licenses/gpl-license.php<br />

Seite 317


Datenverwaltung und -haltung kann in einer MySQL-Datenbank erfolgen. Als Datenbanksysteme<br />

können aber auch PostgreSQL, Oracle und Sybase gewählt und für die<br />

Adressverwaltung ein LDAP-Directory eingesetzt werden (siehe Abbildung 8).<br />

Abbildung 33: eGroupWare-Architektur 268<br />

Für die E-Mail-Funktionalität lassen sich beliebige Mailserver einsetzen, diese müssen<br />

die Protokolle SMTP und POP3/ IMAP unterstützen.<br />

eGroupWare ist ein betriebssystemunabhängiges und modular aufgebautes System. Bei<br />

der Integration kann zwischen zahlreichen Modulen ausgewählt werden. So stehen neben<br />

denen zur Realisierung klassischer Groupware-Funktionalitäten (Email, Kalender,<br />

Adressbuch etc.) noch weitere Module bereit. Die Module können konfiguriert werden.<br />

Module Funktion<br />

Addressbook Kontakt-Manager<br />

FelaMiMail E-Mail-Client, unterstütz u.a. Filterregeln, Abwesenheitsprofile<br />

und Freigaben von Email-Ordnern<br />

Kalender Kalender, der auch Terminierung von Gruppen, Ressourcen<br />

und Kontakten unterstützt<br />

InfoLog ToDo-Listen, Notizen und Telefonnotizen, CRM<br />

Projektmanager Integrierte Projektverwaltung<br />

SiteMgr Webseiten Bearbeitungssystem mit Zugriffskontrolle<br />

Dateiverwaltung Dateiverwaltung, basierend auf files, sql-db oder webdav<br />

268 Quelle: http://www.egroupware.org/?category_id=90<br />

Seite 318


Module Funktion<br />

Stundenzettel Zeiterfassung<br />

Verfolgungssystem Trouble Ticket System<br />

Wiki Integriertes Wiki<br />

Wissensdatenbank Forum<br />

Workflow Engines Ablauforganisation<br />

Umfragen Erstellen und Auswerten von Umfrage<br />

Chatte Synchrone-Kommunikation<br />

Tabelle 50: Auswahl an eGroupWare-Modulen<br />

Die Weboberfläche von eGroupWare basiert auf einem Template-System, es kann zwischen<br />

drei Typen für die Layout-Beschreibungen (XML, eTemplates, HTML) unterschieden<br />

werden. Diese Flexibilität erlaubt es das vorhandene Standardsystem an die jeweiligen<br />

Einsatzumgebungen anzupassen, so ist zum Beispiel eine Anpassung an das CD<br />

möglich.<br />

Das Groupware-System bietet eine sichere Übertragung von Inhalten und sichere<br />

Authentifizierung von Nutzern. Dabei unterstützen die Einzelkomponenten des<br />

Groupware-Sytems wie Webserver (zum Beispiel Apache, IIS und Roxen) das HTTPS-<br />

Protokoll. Ferner bieten IMAP-Server wie Cyrus IMAP, Courier IMAP etc. auch<br />

Verschlüsselungsmöglichkeiten (TLS, SSL) für die Authentifizierung und den Datenaustausch<br />

an. Das System selbst bietet auch ein eigenes Benutzersystem an, das den<br />

browserbasierten Zugriff auf den persönlichen Arbeitsbereich reglementiert.<br />

Zur Integration verschiedener PIM-Clients (Personal Information Manager) werden zusätzlich<br />

die folgenden Schnittstellen angeboten:<br />

� XML-RPC-API<br />

bietet Remote-Zugriff auf Funktionen des Groupwaresystems<br />

� SOAP<br />

ermöglicht den Aufbau von Serviceorientierten Anwendungen<br />

� SyncML<br />

als Beschreibungssprache, die genutzt werden kann, um Daten zwischen<br />

verschiedenen Clients auszutauschen<br />

� GroupDAV<br />

umfasst die vereinfachte <strong>Version</strong> des WebDAV-Protokolls und dient zum Beispiel<br />

dem Austausch von Kalendern, Aufgabenlisten und Kontaktlisten<br />

� IMAP<br />

als ein Protokoll zum Abruf von Emails, etc.<br />

� iCalendar<br />

als ein gängiges Format zur Beschreibung von Kalender-Daten.<br />

Seite 319


Laut Projektseite 269 ist eine Synchronisierung von Kalender, Adressbuch und InfoLog-<br />

Daten mit verschiedenen PIM-Clients möglich. Zurzeit werden die folgenden Clientapplikationen<br />

unterstützt:<br />

� Kontact<br />

� Evolution<br />

� Outlook<br />

� Mozilla Sunbird<br />

� Apple iCal<br />

� PDA (via Synthesis und Funambol).<br />

Am Beispiel von MS-Outlook ist laut Dokumentation der eGroupWare-Projektseite eine<br />

Synchronisation mit eGroupWare unter Zuhilfenahme der Schnittstellen XML-RPC-API<br />

(nur via Plugin 270 ), SyncML und iCalendar möglich.<br />

Zusammenfassend ist festzuhalten: eGroupWare ist ein modular aufgebautes System,<br />

das standardmäßige Groupware-Funktionalitäten wie Email, Kalender und Adressbuch<br />

bereitstellt sowie weitere Funktionalität wie ToDo-Listen, Stundenzettel, Umfragen etc. in<br />

zusätzlichen Modulen anbietet. Ein Zugriff auf die komplette Funktionalität des Groupware-Systems<br />

ist nur im Onlinebetrieb und aus autorisierten Netzen heraus möglich. Der<br />

Einsatz dieser auf den Webbrowser fokussierten Groupware Lösung bietet jedoch viele<br />

Vorteile:<br />

� Ein Zugriff über Webbrowser ist möglich, ebenso der gesicherte Zugriff über<br />

HTTPS von außen.<br />

� Die Installation eines speziellen Clients ist nicht notwendig.<br />

� Die Betriebssystemunabhängigkeit bietet insbesondere in heterogenen Client-<br />

Landschaften Vorteile.<br />

� Die Softwareaktualisierung erfolgt nur auf dem Server.<br />

1.4 Zarafa<br />

Die niederländische Firma ConecTUX entwickelt und vertreibt das Groupware-Produkt<br />

Zarafa 271 . Vor fünf Jahren wurde mit der Entwicklung begonnen. Der Sitz der Zarafa-<br />

Tochtergesellschaft (Zarafa Deutschland GmbH) für den deutschsprachigen Raum ist<br />

Hannover.<br />

Das Groupware-Produkt Zarafa wird derzeit von mehr als 1000 Unternehmen genutzt 272 .<br />

In den vergangenen 12 Monaten wurden 1200 Server verkauft. Die von der Benutzerzahl<br />

her derzeit größte Installation bedient rund 1500 Benutzer, die die gesamte Groupware-<br />

Funktionalität inklusive Outlook nutzen.<br />

269 Überblick Synchronisation - http://www.egroupware.org/sync<br />

270 eGWOsync - http://www.egroupware.org/wiki?wikipage=synchronisation%20outlook<br />

271 http://www.zarafaserver.de/<br />

272 http://www.zarafaserver.de<br />

Seite 320


Zarafa wird in Deutschland, Österreich, der Schweiz, den Benelux-Ländern sowie Groß-<br />

britannien und Frankreich vertrieben. Demnächst soll Skandinavien als Markt hinzukommen.<br />

273<br />

Aktuell liegt das Groupware-Produkt Zarafa in der <strong>Version</strong> 5.10 vor, die Mitte 2007 freigegeben<br />

wurde. Die <strong>Version</strong> 5.0 wurde Ende 2006 freigegeben, davor stand ab Mitte<br />

2006 die <strong>Version</strong> 4.2 zur Verfügung.<br />

Zarafa ist für zwei verschiedene Linux-<strong>Version</strong>en erhältlich: EasyLinux und OpenLinux.<br />

Für alle vorhandenen <strong>Version</strong>en von Zarafa sind die Preise gleich. Die Basis-Lizenz<br />

umfasst fünf Benutzer und kann in Schritten zu je fünf Benutzern erweitert werden.<br />

Rabatte werden für Lizenzen ab 100 Benutzern gewährt. Angaben zu Preisen und<br />

Lizenzen finden sich auf der entsprechenden Webseite 274 .<br />

Eine kostenlose Testversion kann aus dem Web bezogen und für 30 Tage genutzt werden,<br />

eine Online-Demo steht im Web zur Verfügung 275 . Zarafa steht für verschiedene<br />

Linux-Distributionen wie Debian, Fedora, RedHat, SuSE, OpenSUSE oder Ubuntu zur<br />

Verfügung 276 .<br />

Zarafa hat eine Client-Server-Architektur. Der Server ist eine Eigenentwicklung, wurde in<br />

C++ implementiert und läuft unter allen gängigen Linux-Distributionen. Mit WebAccess<br />

steht ein eigenentwickelter Client zum webbasierten Zugriff auf die Groupware-<br />

Funktionen zur Verfügung.<br />

Abbildung 34: Technische Zusammenhänge in Zarafa 277<br />

273 Firmenauskunft<br />

274 http://www.zarafaserver.de/prices.html<br />

275 http://www.zarafaserver.de<br />

276 http://download.zarafa.com/zarafa/en/zarafa_technical.pdf<br />

277 Quelle: http://www.zarafaserver.de/technical-explanation.html (Stand 27.10.2007)<br />

Seite 321


Zarafa basiert auf Open Source-Komponenten und Offenen Standards: gSOAP, MAPI,<br />

PHP, MySQL und Apache. Die Gesamtfunktionalität von Zarafa wird durch das<br />

Zusammenspiel mehrerer Komponenten erreicht, die Basisfunktionalität ist ohne die<br />

optionalen Komponenten verfügbar. Die Abbildung 34 zeigt die technischen Zusammenhänge<br />

in Zarafa.<br />

Der Zarafa-Server speichert alle Daten in einer SQL-Datenbank und verwaltet die Verbindungen<br />

der Clients wie Outlook oder WebAccess. Die Verbindung der Clients erfolgt<br />

über SOAP und der Zugang zu den angeforderten Daten wird auf seine Berechtigung<br />

geprüft. Für Outlook-Verbindungen ist immer mindestens eine Verbindung geöffnet, um<br />

Benachrichtigungen über Ereignisse zu versenden.<br />

Die Server-Einstellungen sind in einer Konfigurationsdatei einstellbar. So kann zum Beispiel<br />

festgelegt werden, wie die Authentifizierung mit dem Datenbankserver erfolgt oder<br />

wie detailliert Systemnachrichten aufzuzeichnen sind (message logs). Der Server benötigt<br />

mindestens 512 MB RAM, für hohe Lasten mehr. Es wird wenigstens eine moderne<br />

CPU empfohlen. Benötigte Software ist glibc 2.3.x, MySQL 4.1 und ein Web-Server mit<br />

PHP-Support. Die folgende Tabelle zeigt die Komponenten von Zarafa:<br />

Komponenten Aufgaben<br />

Zarafa Server Verbindet Clients über SOAP und speichert Daten in SQL-<br />

Datenbank<br />

Zarafa Client Nutzung von Outlook über MAPI-Konnektor; Verbindung zum Server<br />

erfolgt über SOAP<br />

Zarafa Dagent & Spooler<br />

Senden und empfangen von Emails mit der „externen Welt―<br />

Zarafa Admin Administrator-Werkzeug zur Verwaltung von Benutzern, Benutzerinformationen<br />

und Gruppen<br />

Zarafa Gateway Optionale Komponente für POP3 und IMAP<br />

Zarafa Monitor Überwacht Benutzer-Speicher und Quota-Überschreitungen<br />

Zarafa Caldav Optionale Komponente für iCal-Unterstützung<br />

Zarafa Backup Erzeugen von Backups<br />

Zarafa Migrate Migrations-Werkzeug zum migrieren von existierenden Exchange-<br />

und pst-Umgebungen<br />

Apache / PHP Webserver für das Webfrontend<br />

PHP MAPI Erweiterung Plug-in das MAPI-Funktionen für PHP-Entwickler zugreifbar macht<br />

Tabelle 51: Zarafa Komponenten<br />

Zur Verwaltung von Benutzern, Benutzerinformationen und Gruppen steht ein eigenes,<br />

zeilenorientiertes Administrator-Werkzeug (Shell) zur Verfügung. Für die RedHat- und<br />

Centos-Distributionen gibt es einen LDAP-basierten grafischen Benutzer-Editor, siehe<br />

die nachfolgende Abbildung.<br />

Seite 322


Abbildung 35: LDAP-basierter grafischer Benutzer-Editor<br />

Unter Windows 2000/XP werden die Clients Outlook 2000, 2003 oder XP benötigt. Sie<br />

verbinden sich über das Netzwerk mit dem Server. Da SOAP benutzt wird, sind die Verbindungen<br />

für Webserver und Proxy transparent. Es werden die folgenden Grundfunktionen<br />

unterstützt, die Outlook anbietet, ohne dass ein MS Exchange-Server benötigt<br />

wird:<br />

� Gemeinsames Verwenden von Email und Kalender<br />

� WebAccess: Zugriff auf Outlook-Daten über Web-Interface<br />

� Outlook-Nutzung von außerhalb des Firmen-Netzwerkes<br />

� Gemeinsames Verwalten von Geschäftskontakten<br />

� Verteilerlisten<br />

� Persönliche und gemeinsam genutzte Aufgabenlisten<br />

� Synchronisation für Handheld (PDA) und Laptop<br />

� Konfiguration von Zugriffsrechten über WebAccess.<br />

Zudem existiert eine iCal-Unterstützung zur Synchronisation des Kalenders (Sunbird,<br />

Mac OSX iCal).<br />

Mit Z-Push 278 hat Zarafa eine Implementierung des Active-Sync Protokolls als Open<br />

Source Software unter GPL freigegeben. Damit soll die Software ähnliche Funktionen<br />

bieten wie die proprietären Lösungen von Blackberry mit BES und Microsoft mit<br />

Exchange. Bislang scheint es noch keine SSL-Variante zu geben, sodass die Entwickler<br />

von einer Verwendung außerhalb des lokalen Netzes abraten.<br />

278 http://z-push.sourceforge.net/ (Stand 27.10.2007)<br />

Seite 323


Die Datenübertragung von Clients zum Server kann über eine verschlüsselte SSL-<br />

Verbindung und HTTPS erfolgen. Dies erfordert serverseitig eine entsprechende Konfiguration.<br />

Zugriffsrechte schützen vor unberechtigtem Zugriff auf Daten.<br />

Alle Anwendungen, die sich mit dem Zarafa-Server verbinden, nutzen den MAPI-Layer,<br />

der im MAPI-provider implementiert ist (siehe Abschnitt Architektur). Aufgrund dieser<br />

Tatsache ist davon auszugehen, dass alle MAPI-fähigen Anwendungen mit dem Zarafa<br />

interoperabel sein.<br />

Daneben steht mit der PHP-MAPI-Extension ein sehr umfangreicher Satz von Befehlen<br />

und Schnittstellen aus Microsofts MAPI-Welt unter PHP zur Verfügung. Diese Schnittstelle<br />

erfordert vom PHP-Entwickler, dass er auch über Grundwissen zu MAPI verfügt.<br />

Zusammenfassend kann festgehalten werden: Zarafa ist eine Alternative zur Nutzung<br />

von Microsoft Exchange, das heißt eine Lösung, die die Kommunikation zwischen<br />

Outlook und einem Server anbietet. Der Server läuft unter allen gängigen Linux-<br />

Distributionen. Zarafa bietet im Rahmen von MAPI eine funktionale Outlook-<br />

Unterstützung und einen entsprechenden Webclient (WebAccess). Eine PHP-MAPI-<br />

Extension stellt wichtige Funktionen für Entwickler zur Verfügung.<br />

1.5 Kolab<br />

Das Bundesamt für Sicherheit in der Informationstechnik (BSI) beauftragte 2002 ein Firmenkonsortium,<br />

eine freie Groupware-Lösung für den Einsatz im BSI zu erstellen. Darauf<br />

aufbauend entwickelte sich zunächst das Kolab-Projekt 279 , das Ende 2004 die zweite<br />

Generation der Software fertiggestellt hat.<br />

Als maximale Nutzerzahlen werden vom Kolab-Projekt einige Tausend Nutzer für einen<br />

einfachen, voll integrierten Server empfohlen. Auf der Projektwebseite finden sich keine<br />

direkten Referenzen zur Verbreitung von Kolab. Recherchen ergaben allerdings, dass<br />

zum Beispiel der Brandenburgische Landesbetrieb BLB 280 das Kolab-Groupwaresystem<br />

für mehr als 600 Bildschirmarbeitsplätze einsetzt.<br />

Im Jahre 2002 wurde Kolab konzipiert und im Juli 2003 die stabile <strong>Version</strong> 1 des Systems<br />

veröffentlicht. Nach einer Generalüberholung wurde Kolab 2.0 im Juni 2005 unter<br />

anderem mit der Neuerung des Kolab XML Format eingeführt. Aktuell ist die <strong>Version</strong> 2.1<br />

seit Mitte 2007 verfügbar, die Veröffentlichung <strong>Version</strong> 2.2 ist für Anfang 2008 geplant.<br />

Eine Nutzung der Kolab Groupware-Lösung ist aufgrund der bestehenden OSS-Lizenz<br />

(GPL) ohne Zahlung von Lizenzgebühren möglich; zur Unterstützung der Nutzer werden<br />

auch kostenpflichtige Dienstleistungen angeboten. Support, Planung und Service für das<br />

Kolab-System sind kostenpflichtig über das Kolab-Konsortium 281 verfügbar. Desweiteren<br />

erlaubt es die freie Lizenz (GPL) jedem, Erweiterungen, Verbesserungen und Veränderungen<br />

an Kolab vorzunehmen.<br />

279 http://www.kolab.org/<br />

280 http://www.kbst.bund.de/cln_028/nn_837410/SharedDocs/Projekte/OSS/ kolab__einsatz__im__land__brandenburg.html<br />

281 http://www.kolab-konsortium.de/<br />

Seite 324


Die zentrale Komponente ist der Kolab-Server, die wiederum auf eine Reihe weiterer<br />

freier Komponenten zurückgreift. Die einzelnen Komponenten werden in den folgenden<br />

Tabellen aufgeführt.<br />

Komponenten Aufgaben<br />

Cyrus IMAP IMAP / POP3 Mailserver<br />

Cyrus SASL2 Authentifizierung<br />

OpenLDAP2 Verzeichnisdienst, zum Beispiel für die Nutzerverwaltung<br />

Postfix Mail-Transfer-Agent<br />

Apache / PHP Webserver für das Webfrontend<br />

Horde-<br />

Framework 282<br />

Webclient (ab Kolab 2.2 integriert)<br />

Tabelle 52: Zentrale Kolab-Server-Komponenten<br />

Komponente Aufgabe<br />

Amavisd-New Ansteuerung von Spamfilter und Virenscanner<br />

zum Beispiel ClamAV<br />

zum Beispiel SpamAssassin<br />

Virenscanner<br />

Spamfilter<br />

Tabelle 53: Optionale Kolab Server-Komponenten<br />

Das Softwarepaket des Kolab-Servers wird als sog. OpenPKG 283 -Paket angeboten und<br />

ist somit auf verschiedenen UNIX-basierten Betriebssystemen wie z. B. Solaris, BSD<br />

und auch Linux ohne weiteres lauffähig.<br />

Zurzeit existieren verschiedene integrierte Server, die Kolab als Server-Komponente für<br />

E-Mail-, Groupware- und PIM-Funktionen anbieten. ClarkConnect 284 z. B. kombiniert den<br />

Kolab-Server mit verschiedenen anderen Funktionen und Diensten (u. a. Firewall, VPN,<br />

Backuplösungen) zu einem vollständigen Intranetserver, das als eigenständiges System<br />

(inklusive Linux-Betriebssystem) vertrieben wird. Weitere integrierte Lösungen auf Basis<br />

von Kolab sind z. B.: Univention Groupware Server (UGS) 285 , Intranator Business Server<br />

286 , Pardalays 287 .<br />

282 http://www.horde.org/<br />

283 http://www.openpkg.org/<br />

284 http://www.clarkconnect.com/<br />

285 http://www.univention.com/ugs.html<br />

286 http://www.intra2net.com/de/produkte/business_server.php<br />

287 http://www.pardus.de/products.html<br />

Seite 325


Die Kolab-Lösung baut auf einem Client-Server-Ansatz auf, der eine asynchrone<br />

Nutzung der Groupware-Funktionalitäten durch die Benutzer gewährleistet. Diese haben<br />

zum Beispiel die Möglichkeit, E-Mails, Termine, Kontakte und persönliche Aufgaben mit<br />

der entsprechenden Client-Software offline zu nutzen, das heißt ohne dass eine<br />

Verbindung zum Kolab-Server besteht. Die Änderungen werden durch eine spätere<br />

Daten-Synchronisation mit dem Server abgeglichen.<br />

Kolab ist eine plattformübergreifende Groupware-Lösung, die sowohl mit Linux-Clients<br />

als auch mit Windows-Clients nutzbar ist. Die Funktionalitäten sind mit der Outlook / Exchange-Kombination<br />

von Microsoft vergleichbar. Das Clientsystem Outlook wird mit Hilfe<br />

eines Plugins zum vollwertigen Kolab-Client und bietet so die gleiche Funktionalität wie<br />

der Linux-Client Kontact.<br />

Die hohe Skalierbarkeit der Kolab-Lösung beruht im Wesentlichen auf den folgenden<br />

Eigenschaften:<br />

� Möglichkeit, die einzelnen Kolab-Serverkomponenten (siehe Tabellen 4 und 5)<br />

auf einzelnen Servern zu betreiben: Ein Verbund aus Servern bildet somit einen<br />

einzigen geclusterten Kolab-Server.<br />

� Clusterfähigkeiten von Cyrus IMAP, OpenLDAP und Postfix: Ein Verbund von<br />

Servern bildet eine einzelne geclusterte Kolab-Serverkomponente.<br />

� Multilokationsfähigkeit: Mehrere Kolab-Server bilden einen Verbund; jeder<br />

einzelne Kolab-Server bedient eine feste Teilmenge aller Groupware-Nutzer des<br />

Verbundes.<br />

Eigentlich wurde aber die Multilokationsfähigfahigkeit (Möglichkeit von Mehrfachstandorten)<br />

eines Kolab-Server Verbundes primär nicht zur Erhöhung der Skalierbarkeit<br />

geschaffen, sondern um einen Kolab-Server Verbund räumlich über mehrere entfernte<br />

Standorte verteilt betreiben zu können.<br />

Für den produktiven Einsatz ist auch die Möglichkeit der einfachen Sicherung und<br />

Wiederherstellung von Daten entscheidend. Die Architektur des gesamten Kolab-<br />

Systems vereinfacht die Backup- und Recoverymöglichkeiten stark: Die Mailboxen<br />

werden als gewöhnliche Verzeichnisse im Dateisystem des Kolab-Servers abgebildet<br />

und sind somit mit üblichen dateisystembasierten Backupwerkzeugen handhabbar.<br />

Neben kompletten Mailboxen können mit denselben Backupwerkzeugen auch einzelne<br />

E-Mails, Termine etc. gesichert und wiederhergestellt werden, da sie als einzelne<br />

gewöhnliche Dateien abgelegt werden.<br />

Neuerungen bei Kolab 2 sind u. a.:<br />

� die Möglichkeit für Mehrfachstandorte (Multilokationsfähigkeit)<br />

� die explizite Vergabe von Zugriffsrechten<br />

� die gemeinsame Bearbeitungsmöglichkeit für Verzeichnisse<br />

� die volle Mehrkontenfähigkeit<br />

� die automatische Annahme von Terminen<br />

� einfachere Integration externer Verzeichnisdienste (LDAP)<br />

Seite 326


� Verwaltung mehrerer Maildomänen (ab 2.1)<br />

� Horde-Framework als Standard Webclient (optional ab 2.1, fest integriert ab 2.2)<br />

Der Zugriff auf Kolabs Mail- und Groupware-Funktionalitäten kann sowohl unter<br />

Windows- als auch unter Linux erfolgen: unter Linux ist die Referenz-Clientsoftware<br />

Kontact, unter Windows wurde bei Kolab 1 Outlook 2000 mit Kolab-Plugin als Referenz-<br />

Client verwendet, bei Kolab 2 ist es Outlook 2003. Zudem werden andere Client-<br />

Applikationen, wie z. B. Mozilla Thunderbird, zunehmend zu vollwertigen Kolab-Clients<br />

ausgebaut.<br />

Für Kolab-Installationen hat sich der seit Oktober 2003 am Markt befindliche Toltec<br />

Connector der Firma Radley Network Technologies CCs 288 bewährt. Der Toltec<br />

Connector ist ein kostenpflichtiges proprietäres Produkt und muss zusätzlich zu Outlook<br />

installiert werden. Der Connector ermöglicht einem Outlook-Client 289 , seine Daten auf<br />

einem Kolab-Server zu speichern. Es stehen auf dem Markt auch noch andere<br />

Connectoren 290 zur Verfügung, diese wurden jedoch im Rahmen der Evaluierung nicht<br />

gesondert betrachtet. Ebenfalls von der Firma Toltec angeboten wird ein LDAP-<br />

Adressbuch für Outlook, das z. B. auf den jeweiligen OpenLDAP-Server von Kolab zugreifen<br />

kann.<br />

Für den Zugriff auf die Groupware-Funktionalitäten steht den Nutzern von linuxbasierten<br />

Arbeitsplätzen der Kontact Client zur Verfügung. Dieser Linux-Client ist eine verbesserte<br />

und erweiterte <strong>Version</strong> von KDEs Kontact, der die Möglichkeiten von KMail, KOrganizer,<br />

KAddressbook und weiteren Komponenten des KDE-PIM-Projektes unter einer einheitlichen<br />

grafischen Oberfläche zusammenfasst. Der Client fügt sich sehr gut in die KDE-<br />

Oberfläche ein und ist von Nutzern intuitiv zu bedienen. Kontact unterstützt u.a. die Protokolle<br />

POP3 und disconnected IMAP4. Unterstützt wird auch das Filtern eingehender E-<br />

Mails (Spam, Viren usw.) auf der Clientseite. Darüber hinaus wird seit März 2007 verstärkt<br />

an einer browserbasierten Clientanwendung gearbeitet, die auf das Horde-<br />

Framework 291 aufsetzt und zukünftig (ab <strong>Version</strong> 2.2) als Standard Kolab Webclient eingesetzt<br />

werden soll.<br />

Neben dem Kolab-Webclient existiert auch eine webbasierte Administrations-Oberfläche,<br />

die folgende Aktionen bereitstellt:<br />

� Nutzer- und globale Adressbuchverwaltung<br />

� Verwaltung der öffentlicher Ordner<br />

� Verwaltung der Ressourcen- und Gruppenkonten<br />

288 http://www.toltec.co.za/<br />

289 Laut Hersteller Outlook 2000,, XP, 2003 und 2007<br />

290 KONSEC Konnektor (http://www.konsec.com/),<br />

Bynari Insight Connector (http://www.bynari.net/)<br />

291 http://www.horde.org/<br />

Seite 327


� Teilweise Administration der Serverdienste<br />

� Abwesenheitsbenachrichtigungen und Weiterleitungen<br />

Die webbasierte Administrations-Oberfläche stellt in erster Linie Funktion für den Zugriff<br />

auf wiederkehrende Aufgaben (z. B. Nutzer anlegen) bereit, weitergehende Anpassungen<br />

müssen direkt an den entsprechenden Server-Komponenten vorgenommen werden.<br />

Hier verfolgt die Kolab-Architektur einen zweischichtigen Ansatz, der zum einen einzelne<br />

Funktion zu einer Aktivität vereint, aber gleichzeitig die Mächtigkeit jedes einzelnen Systems<br />

darüber hinaus bereitstellt.<br />

Der einzelne Benutzer hat überdies auch die Möglichkeit, bestimmte Änderungen direkt<br />

über die webbasierte Administrations-Oberfläche vorzunehmen. So können die Benutzer<br />

ihre persönlichen Daten modifizieren und beispielsweise zusätzliche Mail-Adressen (sog.<br />

Mail-Aliases) hinzufügen.<br />

Die folgende Auflistung benennt die wichtigsten Funktionalitäten der Groupware-Lösung:<br />

� E-Mails empfangen und senden<br />

� Kontaktverwaltung<br />

� Rechtevergabe auf IMAP-Ordnern (IMAP-ACLs)<br />

� Gemeinsame Bearbeitung von freigegebenen Ordnern mit z. B. E-Mails,<br />

Terminen, Kontakten, Aufgaben etc.<br />

� Globale Adressbücher<br />

� Gruppenkalender und –termine<br />

� Gruppenordner („Shared Folders―)<br />

� Ressourcenverwaltung (Buchung von Räumen, Beamer, Fahrzeugen etc.)<br />

� Persönliche Notizen und Aufgaben (die auch gemeinsam nutzbar sind)<br />

� Frei- / Belegt-Listen (FreeBusy-Lists)<br />

� Erweiterte Frei- / Belegt-Listen (XFB)<br />

� Weiterleitungen in andere Postfächer<br />

� Abwesenheitsbenachrichtigungen<br />

� Funktionspostfächer mit mehreren unterschiedlich Zugriffsberechtigten<br />

� Lesebestätigungen<br />

� PDA-Synchronisation via PIM-Client<br />

� Volle Offlinefähigkeit der Clients durch Kolab-Design gegeben<br />

Mit dem Kolab Format existiert für das Groupwaresystem ein offenes Austauschformat,<br />

das es erlaubt, verschiedene sog. Kolab-Objekte (Notizen, Adressen etc.) zu beschreiben<br />

und diese im Kolab-IMAP-Server abzulegen. Die oben genannten Konnektoren nutzen<br />

dieses Format zur Kommunikation mit dem Server.<br />

Seite 328


Auf die Integration von Sicherheitsstandards wurde bei der Entwicklung besonderer Wert<br />

gelegt. Die Kommunikation zwischen den Client-Systemen und dem Server kann vollständig<br />

verschlüsselt (SSL/ TLS) geschehen. Die verschlüsselte Kommunikation kann<br />

u.a. mittels der Protokolle<br />

� IMAPS<br />

� SMTP über TLS und<br />

� HTTPS<br />

realisiert werden. Der Linux-Client unterstützt die Ende-zu-Ende-Sicherheit sowie elektronische<br />

Signaturen auf Basis internationaler Standards (S/MIME, X.509v3), die Implementierung<br />

Ägypten 292 ist vom BSI erfolgreich auf Interoperabilität 293 getestet worden.<br />

Für die administrativen Belange sind drei spezielle Nutzergruppen mit besonderen Rechten<br />

vorgesehen. Es wird zwischen folgenden Gruppen unterschieden:<br />

� Administratoren<br />

� Maintainer<br />

� User (Benutzer)<br />

Die Administration kann - entsprechend der unterschiedlichen Berechtigungen - über die<br />

Verwendung der webbasierten Administrationsoberfläche erfolgen. Einfache administrative<br />

Aufgaben können mittels des Web-Frontends realisiert werden, bei komplexen<br />

Tätigkeiten sind die entsprechenden Konfigurationsdateien auf dem Kolab-Server<br />

anzupassen.<br />

Damit kann zusammenfassend festgestellt werden, dass Kolab eine plattformübergreifende<br />

Groupware-Lösung ist, die mit der Outlook/Exchange-Kombination von Microsoft<br />

vergleichbar ist. Der Aufbau der Kolab-Architektur basiert auf ausgereiften Einzelkomponenten<br />

wie zum Beispiel Cyrus-IMAP oder Apache-Webserver, was auf eine hohe Skalierbarkeit<br />

des Gesamtsystems schließen lässt. Für den Austausch zwischen Client und<br />

Server existiert neben Standardprotokollen wie HTTP, LDAP, IMAP auch ein offenes<br />

Austauschformat, das es erlaubt, verschiedene PIM-Clientapplikationen (u. U. per Konnektor)<br />

mit dem Kolab-Groupwaresystem zu verbinden.<br />

1.6 Scalix<br />

Scalix ist eine Groupware- und Messaging-Plattform, die ursprünglich von der Scalix<br />

Corporation in Kalifornien entwickelt wurde. Im Juli 2007 kaufte XANDROS, ein kanadisches<br />

Unternehmen, Scalix. XANDROS gehört zu den größten Unternehmen für linuxbasierte<br />

Email-, Kalender- und Messaging-Software.<br />

Das System wird derzeit von mehr als 670 Unternehmen in mehr als 55 Ländern genutzt<br />

294 . Aktuell liegt Scalix in der <strong>Version</strong> 11.0.4 vom 3.5.2007 vor. Die Release Notes<br />

zur aktuellen <strong>Version</strong> sind im Web abrufbar 295 .<br />

292 Ägypten: http://www.gnupg.org/aegypten/index.de.html<br />

293 Sphinx-Interoperabilitätstests:<br />

http://www.bsi.bund.de/fachthem/verwpki/interoptests/testberichte.htm<br />

294 http://www.scalix.com/about/<br />

Seite 329


Scalix liegt in drei Editionen vor:<br />

� Enterprise Edition,<br />

� Small Business Edition,<br />

� Community Edition.<br />

Die Enterprise Edition wird pro Benutzer mit einem Mindestvolumen von 25 Benutzern<br />

lizenziert. Die Small Business Edition umfasst standardmäßig 50 Benutzer, kann aber in<br />

25er Schritten erweitert werden. Die Community Edition kann mit max. 25 Benutzern zu<br />

Eignungstests genutzt werden. Die Funktionsunterschiede zwischen den einzelnen<br />

Editionen werden unten in einer Tabelle verglichen.<br />

Scalix steht auch innerhalb von integrierten Server-Lösungen zur Verfügung.<br />

Mit „Scalix für UCS" bietet Univention das Groupwaresystem Scalix als optional installierbare<br />

Komponente für die Linux Komplettlösung Univention Corporate Server an.<br />

Der auf Open-Source-Komponenten aufgebaute „open-sbs― Small Business Server ist<br />

eine softwarebasierte Out-of-the-Box-Server-Lösung. Er ist speziell auf kleine Firmen<br />

und Büros mit wenigen Arbeitsplätzen ausgerichtet und wendet sich an dort tätige Netzwerk-Administratoren<br />

oder den betreuenden IT-Dienstleister. Mit open-sbs steht durch<br />

die Kombination mit Scalix eine preisgünstige Alternative zu einem Microsoft Exchange<br />

Server mit mehr Funktionalität zur Verfügung. Der open-sbs bietet unter anderem eine<br />

integrierte Firewall, Viren-Sicherheit, lernenden Spam-Schutz, VPN, Fernzugriff und automatisierte<br />

Sicherheits-Updates. Die Installation ist automatisiert - in wenigen Minuten<br />

soll der Server startbereit aufgesetzt sein.<br />

Scalix verwendet einen selbstentwickelten Server-Kern, der aus den Elementen<br />

Message Store, Directory und Routing besteht. Der Message Store basiert auf einer<br />

Standard-Linux-Filesystemstruktur, skaliert bis in den Terabyte-Bereich und kann auf<br />

Basis jedes Linux-Filesystems sowie auf Raids oder logischen Volumes angelegt<br />

werden. Dabei wird jede Nachricht ungeachtet der Zahl der Empfänger nur einmal<br />

gespeichert. Große Attachments, die an mehrere User verschickt werden, nehmen somit<br />

nur einfachen Speicherplatz in Anspruch. Der Verzeichnisdienst ist ebenfalls eine<br />

Eigenentwicklung, der nach außen über eine LDAP-Schnittstelle verfügbar gemacht<br />

wird. Der Router basiert auf dem X.400-Standard, verarbeitet aber auch andere<br />

Adressformate. Das Internet-Gateway lässt eine Konvertierung der Nachrichten in<br />

MIME- und TNEF-Format zu, letzteres spielt vor allem bei der Querverbindung mit MS-<br />

Exchange eine Rolle, da hier Nachrichten mit allen Sondermerkmalen ausgetauscht<br />

werden können.<br />

295 http://downloads.scalix.com/.community/11.0.4/RELEASE_NOTES.html<br />

Seite 330


Abbildung 36: Scalix-Plattform<br />

Eine laufende Scalix-Instanz nimmt ohne angemeldete Benutzer etwa 30 MB RAM in<br />

Anspruch. Die Grundanforderungen an die Hardware sind moderat, ein 2-CPU-Intel-<br />

System mit 2 GB RAM ist im Regelfall für 5000 Benutzer ausreichend.<br />

Als Betriebssystemplattform wird ausschließlich Linux verwendet, dabei werden die<br />

Distributionen von RedHat und Suse auf i386- und zSeries-Plattformen unterstützt:<br />

� Red Hat Enterprise Linux ES<br />

� SUSE Linux Enterprise Server<br />

� Fedora Core<br />

� SUSE Linux<br />

Scalix unterstützt auf der Windows-Plattform den Outlook-Client von Microsoft (2000,<br />

XP, 2003) in deutscher und englischer Sprache. Die MAPI-Anbindung ist dabei eine im<br />

„Workgroup―-Modus laufende Online-MAPI; eine lokale Datenspeicherung auf dem<br />

Client findet nicht statt. Die Funktionalität der Offline-Arbeiten kann jedoch eingerichtet<br />

werden. Regeln und Abwesenheitsbenachrichtigungen werden auf dem Client eingerichtet<br />

und serverseitig ausgeführt. Besprechungsplanungen mit Frei/Belegt-Funktion, automatisches<br />

Buchen von Ressourcen, Zugriff auf fremde Mailboxen über Delegation sowie<br />

die Rechtevergabe auf private und öffentliche Ordner werden analog zu Microsoft Exchange<br />

gehandhabt, lediglich serverbasierte Formulare werden nicht unterstützt. Das<br />

„Look & Feel― von Outlook im Zusammenspiel mit Exchange wird dabei weitestgehend<br />

beibehalten.<br />

Scalix bietet weiterhin einen eigenen Webclient an. Dieser verfügt über Drop-Down-<br />

Menüs, Drag-und-Drop-Funktionalität und eine Darstellung, die an eine echte Windows-<br />

Applikation erinnert. Dabei kommen in „Scalix Web Access― (SWA) lediglich JavaScript<br />

und dynamisches HTML (DHTML) zum Einsatz. Technologien wie Java-Applets oder<br />

ActiveX-Elemente werden nicht eingesetzt, sodass der Webclient auch in sicheren<br />

Netzwerkumgebungen und im Zusammenhang mit Firewalls eingesetzt werden kann.<br />

Als Browser werden Internet Explorer und Mozilla beziehungsweise Firefox auf den<br />

Client-Plattformen Windows, Linux und Apple Mac OS/X unterstützt.<br />

Seite 331


Standard POP/IMAP-Clients wie Mozilla Thunderbird, Outlook Express oder Ximian<br />

Evolution können ebenfalls angebunden werden, das Adressbuch wird dabei über LDAP<br />

angesprochen.<br />

Scalix Enterprise Edition unterstützt alle führenden Anbieter von drahtlosen Endgeräten<br />

über optionale Lösungen von Drittanbietern. Die Software NotifyLink der Firma Notify<br />

Technology Corporation ermöglicht Nutzern den Zugriff auf alle Scalix Email und PIM<br />

Funktionen (Kalender, Kontakte, Aufgaben und Notizen) über drahtlose Technologie an,<br />

zum Beispiel Palm OS, Windows Mobile Geräte und Blackberrys 296 .<br />

Abbildung 37: Scalix-Clientsysteme 297<br />

PDAs und Handhelds können derzeit über den Outlook-Client angebunden werden. Für<br />

die Blackberry-Plattform steht in Zusammenarbeit mit Drittherstellern eine serverbasierte<br />

Anbindung zur Verfügung. Die nachfolgende Abbildung zeigt einen Funktionsüberblick<br />

über die drei verfügbaren Editionen:<br />

296 http://www.scalix.com/documents/Scalix_DS_Enterprise_v3.pdf<br />

297 http://www.scalix.com/enterprise/products/architecture.php<br />

Seite 332


Abbildung 38: Scalix – <strong>Version</strong>en/Funktionsüberblick 298<br />

Eine rollenbasierte Administration ermöglicht das sichere Delegieren von Verwaltungsaufgaben<br />

an andere Benutzer mit vordefinierten Administrationsrechten. Diese erfolgt<br />

über die Scalix Management Console, die eine Benutzeroberfläche für die System- und<br />

Benutzerverwaltung anbietet. Sie verbindet die Möglichkeiten einer intuitiven grafischen<br />

Oberfläche mit dem Komfort eines Webbrowsers, der jederzeit und überall verfügbar ist.<br />

Die AJAX-basierte Management Console ermöglicht Mailadministratoren die Verwaltung<br />

von Serverprozessen, Nachrichtenwarteschlangen und Standardeinstellungen bis hin zur<br />

Überwachung des Message Store, der Konfiguration von Postfächern und Kennwortrichtlinien.<br />

Ebenfalls integriert sind die Überwachung des Systemstatus' sowie die Erstellung<br />

von Aktivitäts- und Fehlerprotokollen.<br />

Neben der Benutzeroberfläche stehen bei Bedarf alle Verwaltungsaufgaben über eine<br />

Befehlszeilenschnittstelle zur Verfügung. Hierfür werden 250 Befehlszeilen-Skripte angeboten.<br />

Die Kommunikation zwischen den Clients und dem Server kann vollständig verschlüsselt<br />

(SSL/TSL) erfolgen. Die verschlüsselte Kommunikation kann mittels der Protokolle<br />

IMAPS, LDAPS und POP3S realisiert werden.<br />

Der Scalix Mail Server lässt sich mit jedem LDAP-basierten Verzeichnis integrieren, zum<br />

Beispiel mit Microsoft Active Directory, Novell eDirectory, RedHat/Fedora Directory<br />

Server, OpenLDAP und anderen. Eine Integration mit anderen Systemen ist über<br />

Management Services - SOAP-basierte APIs möglich, über die andere Anwendungen<br />

Funktionen im Scalix-Produkt aufrufen können.<br />

298 http://de.scalix.com/enterprise/editions/compare.php<br />

Seite 333


Abbildung 39: Scalix- Integration<br />

Zusammenfassend ist festzuhalten: Durch die in der Enterprise Edition verfügbare Möglichkeit,<br />

das System auf mehreren Servern zu betreiben, zeichnet sich Scalix durch eine<br />

große Skalierbarkeit (mehr als 10000 User pro Server möglich) aus. Das Konzept<br />

„Clients of Choice― ermöglicht die gleichzeitige Anbindung verschiedener Arbeitsplatztypen.<br />

Die SOAP-basierten APIs bieten zusätzliche Möglichkeiten, das Produkt mit bestehenden<br />

Infrastrukturen zu integrieren. Vorteilhaft ist ebenfalls die mögliche Koexistenz<br />

mit Exchange durch die Konvertierungsmöglichkeiten des Internet-Gateways.<br />

1.7 Microsoft Exchange Server 2007<br />

Der Microsoft Exchange Server 2007 blickt auf eine Reihe von Entwicklungsschritten in<br />

der Vergangenheit zurück. Die erste <strong>Version</strong>, Exchange Server 4.0, erschien 1996 als<br />

Nachfolger von Microsoft Mail (<strong>Version</strong> 3.5). In der Folge erschienen Exchange Server<br />

5.0 (1997), Exchange Server 5.5 (1998), Exchange Server 2000 und Exchange Server<br />

2003. Dieser ist die Vorgängerversion der aktuellen <strong>Version</strong>, Exchange Server 2007.<br />

Der Microsoft Exchange Server besitzt in seinem Marktsegment einen Marktanteil von<br />

ca. 34 % 299 . Ein Exchange Server kann entweder direkt über Microsoft lizensiert und<br />

eigenständig eingerichtet oder aber als Dienst über einen Drittanbieter lizenziert und<br />

bereitgestellt werden.<br />

Von Microsoft wird Exchange nach dem Server / Client Access License (CAL) Modell<br />

vertrieben. Danach wird für jedes Betriebssystem mit installiertem Exchange Server eine<br />

eigene Serverlizenz benötigt. Zusätzlich wird für jeden Benutzer des Exchange Servers<br />

eine eigene CAL benötigt.<br />

299 The Radicati Group, Inc.'s latest study, ―Microsoft Exchange Server and Outlook Analysis,<br />

2007-2011"<br />

Seite 334


Serverlizenzen für Exchange Server 2007 gibt es in zwei verschiedenen Varianten:<br />

� Standard Edition<br />

Diese unterstützt einen Exchange Cluster mit bis zu fünf Knoten<br />

� Enterprise Edition.<br />

Diese unterstützt bis zu 50 Knoten<br />

Ebenso gibt es auch die CAL in zwei <strong>Version</strong>en:<br />

� Standard CAL<br />

Hierin sind die Standfunktionen Email, Kalender, Kontaktverwaltung, Aufgabenverwaltung,<br />

Journalführung, Notizen, Outlook Web Access und Exchange ActiveSync<br />

enthalten.<br />

� Enterprise CAL.<br />

Diese enthält neben den Standardfeatures noch zusätzliche Dienste wie etwa<br />

das Unified Messaging zum Empfangen und Versenden von Sprachnachrichten<br />

oder Faxnachrichten.<br />

Alternativ kann Exchange auch in Form des Windows Small Business Server (SBS)<br />

Paketes erworben werden. Dieses beinhaltet sämtliche für den Betrieb von Exchange<br />

2007 notwendigen Microsoft Technologien.<br />

Rückblickend hat mit der <strong>Version</strong> 2000 ein grundlegender Wechsel in der Architektur des<br />

Exchange Servers stattgefunden. Seit der <strong>Version</strong> Exchange Server 2000 ist Active<br />

Directory ein fester Bestandteil jeder Installation. Gleichzeitig wurde in <strong>Version</strong> 2000<br />

erstmals die optionale Einrichtung von reinen Front-end Exchange Servern eingeführt,<br />

die verschiedene Aufgaben zur Reduktion der Last auf den Mailbox Servern übernehmen.<br />

In Exchange Server 2007 wurde diese Unterteilung des Servers in verschiedene Aufgaben<br />

auf nun insgesamt fünf modulare Serverrollen erweitert. Von dieser Aufteilung verspricht<br />

sich Microsoft eine Verbesserung in den Bereichen Installation, Management,<br />

Sicherheit und Skalierbarkeit einer Exchange Server Installation.<br />

In Exchange Server 2007 wurde ein Rollenkonzept mit fünf verschiedenen Rollen eingeführt,<br />

deren Zusammenspiel in Abbildung 40 gezeigt wird. Mit Ausnahme der Edge<br />

Transport Rolle können dabei alle Rollen auf dem gleichen Server installiert werden. Der<br />

Edge Transport Server überwacht als eine Art Türsteher den externen Datenverkehr und<br />

muss aus Sicherheitsgründen außerhalb des lokalen Netzwerkes installiert werden.<br />

Jeder Exchange Server in einem Cluster von Exchange Server erhält während der Installation<br />

eine oder mehrere der folgenden Rollen zugewiesen:<br />

� Client Access Rolle:<br />

Seine Aufgabe ist es, den Internet Traffic zu analysieren und an den korrekten<br />

Mailbox Server weiterzuleiten.<br />

� Mailbox Rolle:<br />

Server in dieser Rolle verwalten die Postfächer der Benutzer. Postfächer sind in<br />

Datenbanken gespeichert, die jederzeit repliziert oder geclustert werden können.<br />

Seite 335


� Hub Transport Rolle:<br />

Leistet das interne Routing aller Nachrichten, die von Edge- oder Unifed Messaging<br />

Servern innerhalb des gleichen Mailbox Servers gesendet werden.<br />

� Unified Messaging Rolle:<br />

Diese Rolle erlaubt die Integration von PBX 300 und damit den Versand von Fax<br />

und Sprachnachrichten an Exchange Postfächer.<br />

� Edge Transport Rolle:<br />

Server in dieser Rolle müssen außerhalb des Intranets eingerichtet werden. Ihre<br />

Aufgabe ist die Überwachung und Filterung des externen Datenverkehrs.<br />

Abbildung 40: Zusammenspiel der Server Rollen 301<br />

Exchange unterstützt die standardisierten Protokolle SMTP, POP3, IMAP und NNTP.<br />

Das Mail Application Programming Interface (MAPI) stellt eine umfangreiche Schnittstelle<br />

für Clients dar, um mit dem Exchange Server 2007 zu kommunizieren. Nur Clients,<br />

die die MAPI-Schnittstelle unterstützen, können den vollen Funktionsumfang von Exchange<br />

nutzen. Da diese Schnittstelle nicht vollständig offen gelegt ist, sind die einzigen<br />

voll kompatiblen Clients Microsoft-Produkte.<br />

Durch die Integration von HTTP können Dokumente in öffentlichen Ordnern über das<br />

Internet zugänglich gemacht werden. Komplexere Dokumenten-Management-<br />

Funktionen werden jedoch erst nach Anbindung einer Sharepoint Installation ermöglicht.<br />

Durch die Verwendung des Microsoft Internet Information Server (IIS) und des Exchange<br />

Servers 2007 können die Benutzer durch Outlook Web Access (OWA) auf Funktionalitäten<br />

zurückgreifen, die sonst nur mit dem Outlook-Client möglich wären. Die Nutzer können<br />

beispielsweise private und öffentliche Ordner einsehen, Emails versenden und empfangen<br />

und ihre Aufgaben verwalten. Der vollständige Funktionsumfang ist jedoch nur im<br />

Zusammenspiel mit dem Microsoft Internet Explorer nutzbar.<br />

300 Private Branch Exchanger<br />

301 Quelle: An Overview of Microsoft Exchange Server 2007, Microsoft White Paper,<br />

http://www.microsoft.com/exchange/evaluation/ex2007intro.mspx, letzter Zugriff:<br />

04.09.2007<br />

Seite 336


Aus Sicht des Nutzers stellt Exchange die folgenden Funktionalitäten zur Verfügung:<br />

� Empfang und Versand von Email-, Sprach- und Faxnachrichten<br />

� Aufgabenverwaltung<br />

� Terminverwaltung<br />

� Adresslisten (allgemeine Adressbücher und persönliche Kontakte)<br />

� Journalführung<br />

� Notizen.<br />

Der Zugriff wird ermöglicht durch:<br />

� Email Clients (z. B. Outlook, Thunderbird, Netscape, etc.)<br />

� Webzugriff per OWA<br />

� Mobiler Zugriff per Active Sync.<br />

Exchange Server 2007 nutzt das SMTP Protokoll zum Übermitteln von Nachrichten<br />

innerhalb einer Organisation. Der Nachrichtenaustausch zwischen den Servern wird<br />

standardmäßig per Transport Layer Security (TLS) verschlüsselt. Standardmäßig<br />

werden auch verschlüsselte Remote Procedure Calls (RPC) für Outlook Verbindungen<br />

verwendet. Die Kommunikation mit anderen Clients wird per Secure Sockets Layer<br />

(SSL) verschlüsselt. Als Authentifizierungsmechanismus kommt Kerberos zum Einsatz.<br />

Zum Schutz vor Viren, Phishing und Spam-Mails übernimmt der Edge Server eine<br />

wichtige Funktion, er kann Nachrichten schon vor Eintreten in das Organisationsnetz auf<br />

Spam oder Viren prüfen 302 . Hierfür setzt Microsoft das eigene Produkt ForeFront 303<br />

Security for Exchange Server (ForeFront) ein. Dieses kann auch auf Hub Transport<br />

Servern installiert und genutzt werden. ForeFront sieht die simultane Nutzung von bis zu<br />

fünf Scan-Engines vor. Zur Auswahl stehen hier Scan-Engines mehrerer Hersteller, die<br />

jedoch zusätzlich lizensiert werden müssen. Dies sind zum Beispiel für die Virenabwehr<br />

u.a. die Scan-Engines CA InoculateIT, CA Vet, Norman und Sophos 304<br />

Mit Hilfe eines Software Developer Kits können eigene Lösungen auf Exchange Server<br />

2007 Basis entwickelt werden. Microsoft bietet dazu einen Exchange-Namespace für<br />

das .NET Framework an, mit dessen Hilfe Exchange Funktionen in einer .NET Programmiersprache<br />

genutzt werden können. Mit Hilfe des SDKs ist auch die Anbindung<br />

externer Software an Microsoft Exchange möglich.<br />

Weiterhin bietet der Exchange Server 2007 eine Reihe von Standard-Webservices an,<br />

mit denen die Funktionalitäten von Exchange von einer beliebigen Applikation aus aufgerufen<br />

werden können.<br />

302 http://technet.microsoft.com/en-us/library/aa996551.aspx (Stand 01.11.2007)<br />

303 http://www.microsoft.com/technet/forefront/serversecurity/exchange/scanning/e25af7f6-<br />

8f6a-420a-8a8a-2360eec4c75a.mspx?mfr=true (Stand 01.11.2007)<br />

304 http://www.microsoft.com/antigen/prodinfo/antigen-faq.mspx (Stand 01.11.2007)<br />

Seite 337


Standardmäßig können Exchange und Outlook mit anderen Microsoft Produkten<br />

zusammenarbeiten. Beispiele dafür sind:<br />

� Die Windows Sharepoint Services (WSS <strong>3.0</strong>) bieten als kostenfreier Bestandteil<br />

des Windows Server 2003 Dokumenten-Management-Funktionalitäten auf Basis<br />

des IIS Servers an. Die Integration mit Sharepoint ermöglicht den Check-in und<br />

Check-out von Dokumenten in Sharepoint-Bibliotheken mit <strong>Version</strong>skontrolle.<br />

� In Form des Microsoft Office Sharepoint Server (MOSS) bietet Microsoft eine<br />

Lösung zur Erstellung umfangreicher Unternehmensportale an. Den Benutzern<br />

können hier Informationen des Exchange Servers auf personalisierten Webseiten<br />

zur Verfügung gestellt werden.<br />

� Seit der Exchange Server 2000 <strong>Version</strong> ist die Instant-Messaging-Komponente in<br />

ein eigenes Produkt ausgegliedert worden. Echtzeit-Kooperationsfunktionalität<br />

wird nun durch separate Installation des Office Live Communication Servers integriert.<br />

Zusammengefasst heißt das: Der Exchange Server 2007 ist einer der Marktführer in<br />

seinem Sektor. Er verfügt über wichtige Funktionen und besitzt in Form von Outlook<br />

einen leistungsfähigen Clienten. Per OWA präsentiert Exchange dem Nutzer auch ohne<br />

installierten Client seine persönlichen Daten komfortabel in einer Outlook-ähnlichen<br />

Oberfläche, die über einen Webbrowser erreicht und dargestellt wird. Zusammen mit der<br />

Möglichkeit des Zugriffs von mobilen Endgeräten aus, kommt Microsoft damit seinem<br />

Ziel des Anywhere Access sehr nah.<br />

Das Festhalten an geschlossenen eigenen Microsoft-Protokollen verhindert jedoch eine<br />

reibungslose Integration von Exchange mit Produkten außerhalb der Microsoft Welt. Die<br />

ausschließliche und enge Verflechtung mit anderen Microsoft Produkten macht im<br />

Gegenteil sogar oft von anderer Software des Herstellers abhängig. So ist zum Beispiel<br />

für den Einsatz von Exchange die Anschaffung eines Windows Server Betriebssystem<br />

unumgänglich.<br />

1.8 Lotus Notes<br />

Lotus Notes ist ein dokumentenorientiertes, verteiltes Datenbanksystem mit sehr enger<br />

E-Mail-Anbindung. Es wurde seit 1984 von Iris Associates entwickelt, einer späteren<br />

Tochterfirma der Lotus Development Corporation resp. von IBM. Das ursprünglich Lotus<br />

Notes genannte Produkt wurde auf Serverseite mit <strong>Version</strong> 4.5 umbenannt in Lotus<br />

Domino.<br />

Lediglich die Client-Software für Endnutzer (nicht jedoch jene für Entwickler und Administratoren)<br />

trägt noch den Namen Lotus Notes. Bei den Datenbanken findet sich sowohl<br />

die Bezeichnung Notes-Datenbank als auch Domino-Datenbank. In Kombination mit der<br />

Notes-Datenbank beziehungsweise dem neu veröffentlichten Produkt Quickr präsentiert<br />

es eine Kooperationsumgebung im Sinne der Teaming/Workgroup-Software Kategorie.<br />

Da der Notes Client im engeren Sinne aber ein Groupware/Messaging Produkt ist, wird<br />

es hier erwähnt. Etwa Mitte 2007 veröffentlichte IBM Notes in der <strong>Version</strong> 8, die nun auf<br />

der Eclipse Technology basiert.<br />

Seite 338


Die Funktionalität des Notes-Clients umfasst folgende Groupwareanwendungen:<br />

� Mail<br />

� Kalender<br />

� Kontakte<br />

� ToDo Listen<br />

� Instant Messaging/Presence (Sametime)<br />

Zusätzlich stehen Büroanwendungen (Präsentationen, Kalkulationen und Dokumente)<br />

zur Verfügung.<br />

Der Client wurde mit der neuen <strong>Version</strong> vollständig überarbeitet und steht sowohl als<br />

eigener Client als auch als Web-Client zur Verfügung. Neben der Interfaceüberarbeitung<br />

bietet die neue <strong>Version</strong> zwei Besonderheiten, auf die im Folgenden kurz eingegangen<br />

wird.<br />

Eine Besonderheit der neuen <strong>Version</strong> ist die Aktivitätsorientierung. Dazu stellt der Client<br />

eine Activity-Sidebar zur Verfügung, mit deren Hilfe der Benutzer Aktivitäten einrichten<br />

kann. Diesen Aktivitäten können dann andere Objekte der Notes Umgebung (Mails,<br />

Termine, Todos, Dokumente etc.) zugewiesen werden. Damit soll das persönliche Informationsmanagement<br />

vereinfacht werden.<br />

Abbildung 41: Notes Architektur<br />

Zur Integration mit anderen Anwendungen setzt IBM auf den offenen Standard des Eclipse<br />

Application Development Frameworks sowie einer komponentenbasierten Serviceorientierten<br />

Architektur. Damit können sogenannte Composite Applications entwickelt<br />

werden, die die Einbindung externer Anwendungsdaten in den Notes Client ermöglichen.<br />

Die vorhergehende Abbildung 41 aus dem Beta Reviewer‘s Guide illustriert das entsprechende<br />

Zusammenspiel des Notes Client mit dem WebSphere Portal und dem Domino<br />

Server.<br />

Seite 339


Mit der neuen <strong>Version</strong> 8 hat IBM der schon seit Jahren auf dem Markt befindlichen Notes<br />

Groupware ein neues Gesicht gegeben. Dabei wurde mit der Aktivitätsorientierung ein<br />

besonderes Merkmal eingeführt. Der mit dem Web 2.0 verbundene Trend zur Unterstützung<br />

von Mashups 305 wird mit dem Konzept der Composite Applications unterstützt. Seine<br />

volle Stärke zeigt Notes in Kombination mit Domino, da damit über das Messaging<br />

hinaus Kooperationsprozesse und Workflows unterstützt und automatisiert werden können.<br />

2 Migrationspfade<br />

Die im folgenden Kapitel untersuchten Migrationspfade beschränken sich auf ausgewählte<br />

Systeme und berücksichtigen verschiedene Aspekte einer Migration. Die untersuchten<br />

Migrationspfade sollen Möglichkeiten aufzeigen, wie zwischen verschiedenen<br />

Systemen (z. B. proprietären und OpenSource-Systemen), verschiedenen <strong>Version</strong>en<br />

eines einzelnen Systems und zwischen Systemen mit unterschiedlichen Benutzungsschnittstellen<br />

beziehungsweise -konzepten migriert werden kann.<br />

Jeder der folgenden Abschnitte beschreibt, wie zwischen verschiedenen Groupware-<br />

Systemen Daten ausgetauscht werden können und welche Hilfsmittel hierzu nötig sind.<br />

Der Fokus eines jeden Migrationspfades richtet sich auf das Aufzeigen möglicher<br />

Schnittstellen, die es erlauben, essentielle Informationseinheiten wie<br />

� E-Mails<br />

� Adressdaten<br />

� Kalenderinformationen<br />

effizient zwischen Systemen zu transferieren. Die aufgezeigten Migrationspfade zielen<br />

sowohl auf eine direkte Server- zu Servermigration als auch auf eine indirekte Migration<br />

mit Hilfe eines Clients wie zum Beispiel Outlook oder Kontact ab. Die indirekte Migration<br />

nutzt primär die vorhanden Clientanwendung für den Abgleich von Daten und wird insbesondere<br />

dann notwendig, sobald Informationseinheiten wie die oben aufgelisteten<br />

(z. B. Email oder Kontakte) lokal in der jeweiligen Anwendung gespeichert wurden. Die<br />

Frage, wann eine direkte beziehungsweise indirekte Migration gewählt werden sollte,<br />

hängt sowohl von der Anzahl an Nutzern als auch von der Verfügbarkeit an Zusatzsoftware<br />

ab. Ist die indirekte Migration für den einzelnen Nutzer leicht zu bewerkstelligen,<br />

sollte zwischen dem Aufwand einer direkten Migration, welche den Einsatz eines Experten<br />

mit sich zieht, und einer indirekten Migration, welche jeden Nutzer mit einbezieht,<br />

sorgfältig abgewogen werden. Ferner sollte bei einer Migration auch berücksichtigt werden,<br />

ob gewisse Daten weiterhin auf der Clientseite verbleiben oder in die neue Groupware<br />

überführt werden.<br />

2.1 Migration von MS Exchange 5.5/2003 nach Kolab 2<br />

Dieses Kapitel beschreibt die Migration von Microsoft-Exchange 5.5/2003 zu Kolab2.<br />

Aufgrund der teilweise großen Unterschiede der Exchange-<strong>Version</strong>en 5.5 und 2003 werden<br />

generelle Unterschiede in der Handhabung im Text angesprochen.<br />

305 Die Einbindung externer dynamischer Elemente in eine Webseite.<br />

Seite 340


Eine indirekte Migration via Client ist in diesem Migrationspfad möglich. Mit Hilfe von<br />

Konnektoren (siehe hierzu Kapitel III.A 1.5), die eine Verbindung zum Kolab-Server<br />

aufbauen, ist es möglich direkt aus der Clientanwendung wie zum Beispiel Outlook die<br />

Email-, Kontakt- und Kalenderdaten von Exchange 5.5/2003 nach Kolab 2 zu überführen.<br />

Dies schließt auch die optionale Migration lokaler Daten ein und ermöglicht<br />

darüber hinaus auch die Migration von Client zu Client (zum Beispiel von Outlook zu<br />

Kontact). Darüberhinaus eignet sich die OpenSource basierte und plattformunabhängige<br />

Anwendung „kdepimpi― 306 für den Transfer von einem System zum anderen.<br />

2.1.1 Migration der Adress- und Verzeichnisdaten<br />

Im Falle eines Windows Exchange Servers 2003 werden die Adress- und Verzeichnisdaten<br />

im Active Directory des Windows Server Betriebssystems verwaltet. Active Directory<br />

hat einen ähnlichen Aufbau wie LDAP. Microsoft bietet verschiedene Tools an, mit<br />

deren Hilfe Daten aus dem Active Directory exportiert und in den Kolab LDAP-Server<br />

integriert werden können. Das Kommandozeilen Tool LDIFDE ist hierbei hilfreich und<br />

exportiert die Daten aus dem Active Directory Server in das LDAP Data Interchange<br />

Format (LDIF), welches wiederum vom LDAP-Server importiert werden kann.<br />

Eine Extraktion der Daten aus Exchange kann alternativ mit Hilfe des Exchange Migration<br />

Wizards durchgeführt werden. Der Exchange Migration Wizard existiert seit Exchange<br />

2000 als separates Tool und erlaubt es, Daten einer alten Exchange Installation in<br />

einer Ordnerstruktur zu speichern. In der <strong>Version</strong> Exchange 5.5 ist es möglich, den<br />

LDAP-Dienst direkt zu aktivieren, sodass per LDAP Adress- und Verzeichnisdaten ausgelesen<br />

werden können 307 .<br />

Auf Basis des LDIF-Formates können die Adress- und Verzeichnisdaten in die Systemkomponente<br />

OpenLDAP des Kolab-Servers übernommen werden. Das offene Format<br />

der LDIF-Spezifikation erlaubt es zudem, die Daten vor der Migration in das Zielsystem<br />

zu bearbeiten. Aufgrund der nachvollziehbaren Struktur des Formates ist sowohl eine<br />

manuelle als auch automatische Modifikation der Daten möglich.<br />

Die Migration hin zum Kolab LDAP-Server kann mit verschiedenen Anwendungen und<br />

Benutzungsschnittstellen erfolgen. Neben den Standardtools des OpenLDAP-Servers<br />

existieren Desktop-Anwendungen wie zum Beispiel der javabasierte JXPlorer 308 und<br />

auch webbasierte Lösungen wie zum Beispiel „phpLDAPadmin― 309 , die neben Im- und<br />

Export des LDIF-Formates auch eine Administration des OpenLDAP-Servers erlauben.<br />

Hierbei ist anzumerken, dass für die webbasierte Lösungen meist ein eigens eingerichteter<br />

Webserver betrieben werden muss. Die Struktur eines LDAP-Verzeichnisses ist individuell<br />

anpassbar und kann durch den Einsatz von Schemata auf organisationsspezifische<br />

Bedürfnisse zugeschnitten werden. Aufgrund der flexiblen Struktur eines<br />

LDAP-Verzeichnisses sollte im Vorfeld einer Migration im Einzelfall analysiert werden,<br />

welche Attribute und Eigenschaften des Verzeichnisses angepasst werden müssen, um<br />

die semantischen Zusammenhänge des Verzeichnisses beizubehalten.<br />

306<br />

http://sourceforge.net/project/showfiles.php?group_id=104103<br />

307<br />

http://www.selfadsi.de/att55mbx.htm<br />

308<br />

309<br />

http://www.jxplorer.org/<br />

http://phpldapadmin.sourceforge.net/<br />

Seite 341


Für die Migration von Kontaktdaten, die direkt in der Client-Anwendung gespeichert werden,<br />

bestehen für Adressdaten ebenfalls Standardformate (zum Beispiel vCard-Format),<br />

die zwischen verschiedenen Anwendungen ausgetauscht werden können. Darüberhinaus<br />

sei hier auf die o.g. Möglichkeit des Einsatzes von Konnektoren verwiesen.<br />

2.1.2 Migration von E-Mail<br />

Die Synchronisation der E-Mail-Daten kann sowohl auf der Client- als auch auf der<br />

Serverseite erfolgen. Besonders bei der vorherigen Benutzung des POP3-Protokolls<br />

bietet sich eine clientseitige Nutzung des eigenen E-Mail-Programms (zum Beispiel<br />

Outlook) an, um gegebenenfalls alle Nachrichten auf den IMAP-Server zu migrieren. Für<br />

eine server-seitige Synchronisierung via IMAP bietet sich das Kommandozeilenprogramm<br />

„imapsync― 310 an, welches zwei verschiedene IMAP-Konten miteinander<br />

synchronisieren kann. Lösungen für die serverseitige Synchronisierung wie zum Beispiel<br />

imapsync setzen allerdings voraus, dass die jeweiligen Nutzerdaten für die Migrationsmaßnahme<br />

bereitgestellt werden. Überdies kann es auch vorkommen, dass der Mail-<br />

Status (z. B. gelesen, ungelesen) nicht immer mitgesichert wird.<br />

Zur Extraktion der E-Mail Postfächer kann ebenfalls der o. g. Migration Wizard genutzt<br />

werden. Eine weitere Alternative besteht in der Nutzung des Microsoft Werkzeuges<br />

ExMerge zusammen mit dem Tool Readpst 311 . Mit Hilfe von ExMerge können serverseitig<br />

komplette Postfächer in PST Dateien gespeichert werden. Readpst konvertiert<br />

diese in das mbox-Format, die IMAP-Komponente von Kolab kann dieses Format<br />

nutzen, um die Daten in die einzelnen Postfächer zu überführen.<br />

Neben den hier beschriebenen Ansätzen zur Migration zwischen MS-Exchange und Kolab2<br />

bietet die Firma Toltec ein Migrations-Tool 312 an, welches E-Mail, Kalender, Kontakte<br />

und andere Daten zwischen MS-Exchange und Kolab2 migrieren kann.<br />

2.1.3 Migration der Kalender<br />

Die Webschnittstelle des Kolab-Servers (Horde/Kronolith) bietet über eine Export/Import<br />

Funktion die Möglichkeit, Kalenderinformationen direkt in das System zu überführen.<br />

Hierfür kann das verbreitete Datenformat iCalendar benutzt werden, welches von vielen<br />

Clientanwendungen (zum Beispiel Outlook) als Exportformat angeboten wird. Ebenfalls<br />

bietet Outlook in der Kombination mit den erwähnten Konnektoren (siehe Kapitel III.A<br />

1.5) die Möglichkeit, Kalenderdaten manuell zwischen zwei Servern auszutauschen und<br />

so ein explizites im- beziehungsweise exportieren zu umgehen.<br />

2.1.4 Fazit<br />

Zusammenfassend lässt sich festhalten: Das Kommandozeilenprogramm „imapsync― ist<br />

relativ einfach in eigenentwickelte Skripte zu integrieren, was einen hohen Grad an Automatisierung<br />

zulässt.<br />

Ähnliches gilt für die Synchronisation von Adress- und Verzeichnisdaten. Hier ist es<br />

möglich, mit Hilfe eines grafischen Webclients die Daten zentral in das jeweilige Aus-<br />

310 http://www.linux-france.org/prj/imapsync/README<br />

311 http://alioth.debian.org/projects/libpst/<br />

312 http://www.toltec.co.za/migration.html<br />

Seite 342


tauschformat zu übertragen. Bei der hier beschriebenen Migration ist die Referenz für<br />

beide Systeme der Outlook-Client. Hierbei sollte jedoch beachtet werden, dass sich der<br />

Einsatz von Outlook ohne Verwendung von Zusatzsoftware lediglich auf den Abruf von<br />

E-Mail-Daten via IMAP-Protokoll beschränkt. Eine volle Ausschöpfung der bereitgestellten<br />

Funktion des Kolab-Servers ist erst unter Verwendung der in Kapitel III.A 1.5<br />

erwähnten Konnektoren möglich. Ferner ist der Einsatz eigener Formulare innerhalb des<br />

Outlook-Clients nicht mehr möglich. Bezüglich der Zusatzsoftware kann im Leitfaden<br />

keine generelle Aussage getroffen werden, dies ist im Einzelfall zu prüfen.<br />

2.2 Migration von Kolab 2 nach MS Exchange 2007<br />

Dieser Abschnitt beschreibt die Migration von Kolab2 zu Exchange 2007. Äquivalent zu<br />

der oben beschriebenen indirekten Migration besteht auch hier die Möglichkeit, mit Hilfe<br />

von Konnektoren (siehe hierzu Kapitel III.A 1.5), Email, Kontakt- und Kalender-Daten<br />

relativ einfach von Kolab 2 nach MS Exchange 2007 zu überführen.<br />

2.2.1 Migration der Adress- und Verzeichnisdaten<br />

Vergleichbar der Migration von MS-Exchange 5.5/2003 zu Kolab 2 kann für die Migration<br />

auf MS-Exchange 2007 ebenfalls auf das LDIF-Format zurückgegriffen werden. Die<br />

Standardtools des OpenLDAP-Servers und insbesondere die bereits erwähnte Desktop-<br />

beziehungsweise Webanwendungen „JXplorer― beziehungsweise „phpLDAPadmin― (siehe<br />

oben) können für den Export der Adress- und Verzeichnisdaten genutzt werden. Die<br />

Struktur des LDAP-Verzeichnisses des Kolab-Servers muss durch eine Transformation<br />

der Verzeichnis-zusammenhänge auf das Schema des Exchange Servers angepasst<br />

werden.<br />

Darüber hinaus besteht die Möglichkeit, lokal gespeicherte Adressdaten via Konnektor<br />

oder mit Hilfe des vCard-Formats auf der Clientseite zu exportieren. Mit Hilfe des Werkzeuges<br />

LDIFDE können diese Daten in das Active Directory des Windows Servers geschrieben<br />

und damit von Exchange 2007 genutzt werden.<br />

2.2.2 Migration von E-Mail<br />

Die Migration der E-Mail-Daten kann sowohl auf der Client- als auch auf der Serverseite<br />

erfolgen. Neben der Möglichkeit einer indirekten Migration mit Hilfe eins Clients (zum<br />

Beispiel Outlook oder Kontact) ist es auch möglich, eine serverseitige Synchronisierung<br />

via IMAP durchzuführen. Hierfür bietet sich ebenfalls das (siehe Abschnitt III.A 2.1.2)<br />

Kommandozeilenprogramm „imapsync― 313 an, welches zwei verschiedene IMAP-Konten<br />

miteinander synchronisieren kann. Für diese Art der Synchronisierung muss der MS-<br />

Exchange-Server gewährleisten, dass auf die E-Mailaccounts mittels IMAP-Protokoll<br />

zugegriffen werden kann.<br />

Eine andere Methode besteht darin, die im MBOX Format vorliegenden Postfächer des<br />

Kolab Servers in PST (Personal Storage Table) Dateien zu konvertieren. Diese können<br />

mit Hilfe von ExMerge oder des Exchange Migration Wizards in Exchange 2007 verfügbar<br />

gemacht werden. Für diesen Arbeitsschritt existieren verschiedene kostenfreie oder<br />

313 http://www.linux-france.org/prj/imapsync/README<br />

Seite 343


kostenpflichtige Werkzeuge 314 , von denen jedoch einige zunächst in das Zwischenformat<br />

EML (Outlook Express Electronic Mail) zu konvertieren sind. Diese Methode ist insbesondere<br />

dann interessant, wenn eine große Anzahl an Postfächern migriert werden<br />

muss.<br />

2.2.3 Migration der Kalender<br />

Über die Webschnittstelle des Kolab-Servers (Horde/Kronolith) können Nutzer- und<br />

Gruppenspezifische Kalender über eine Export Funktion mit Hilfe des iCalendar-Formats<br />

direkt in andere Anwendungen überführt werden. Ebenso eignet sich der Einsatz von<br />

Konnektoren (zum Beispiel der Toltec-Connector) zum Transferieren der Kalenderdaten<br />

zum Beispiel via Outlook von Kolab nach MS-Exchange 2007.<br />

2.2.4 Fazit<br />

Zusammenfassend ist zu bemerken: Der Aufwand der Migration hängt stark von der Art<br />

der zu migrierenden Daten ab. So lässt sich beispielsweise das Kommandozeilenprogramm<br />

„imapsync― relativ einfach in eigenentwickelte Skripte integrieren, die einen<br />

höheren Grad an Automatisierung zulassen. Der Aufwand für die Synchronisation von<br />

Adress- und Verzeichnisdaten ist abhängig vom Grad der Anpassung des LDAP-<br />

Verzeichnisses und der damit verbundenen Transformation. Mit Hilfe diverser Clientanwendungen<br />

ist es möglich, die Daten zentral in das jeweilige System zu übertragen<br />

und somit den Prozess vor und nach der Transformation zu vereinfachen. Manueller<br />

Aufwand ist auch bei der Migration der Kalenderdaten zu bedenken. Dieser ist aber von<br />

der Anzahl der Kalender abhängig, die im Kolab-Server verwaltet werden. Alternativ<br />

können auch hier Client- beziehungsweise nutzerbasierte Migrationsszenarien (zum Beispiel<br />

via Outlook und integriertem Konnektor) den Aufwand minimieren.<br />

2.3 Migration von MS Exchange 5.5 nach MS Exchange 2007<br />

Da die <strong>Version</strong>en Exchange 5.5, Exchange 2000, Exchange 2003 und Exchange 2007<br />

jeweils auf Basis der vorherigen <strong>Version</strong> entwickelt wurden, besteht neben der Möglichkeit<br />

einer Migration auch die Möglichkeit der Transition. Eine Transition entspricht dabei<br />

einem Upgrade einer existierenden Exchange Organisation auf eine neuere <strong>Version</strong>.<br />

Eine Migration liegt vor, wenn von einer existierenden auf eine neue Exchange Organisation<br />

gewechselt wird, ohne die bisherigen Konfigurationsdaten der existierenden Exchange<br />

Installation zu verwenden. Dieses Szenario tritt häufig bei der Zusammenführung<br />

zweier bislang getrennt agierender Installationen auf.<br />

Allgemein ist es nicht möglich, eine direkte Transition oder Migration von Exchange 5.5<br />

auf Exchange 2007 vorzunehmen. Der gängige Weg besteht hier darin, zuerst zu<br />

Exchange 2003 zu migrieren und anschließend eine Transition von Exchange 2003 auf<br />

Exchange 2007 durchzuführen. Mehr Informationen hierzu sind im Microsoft TechNet 315<br />

zu finden.<br />

314 http://www.aid4mail.com/<br />

315 http://technet.microsoft.com/en-us/library/aa997461.aspx<br />

Seite 344


2.3.1 Durchführung einer Transition<br />

Eine Transition von Exchange 2003 nach Exchange 2007 kann nicht in Form eines<br />

reinen Updates auf Basis der existierenden Installation erfolgen. Stattdessen muss<br />

zunächst immer innerhalb der gleichen Organisation Exchange 2007 parallel installiert<br />

werden. Dies führt dazu, dass es bei einer Transition immer zu einer zwischenzeitlichen<br />

Koexistenz der alten und neuen Exchange Installationen kommt.<br />

Sobald Exchange 2007 innerhalb der gleichen Organisation installiert ist, können die<br />

Daten der veralteten Exchange <strong>Version</strong> in die neue Installation von Exchange 2007 kopiert<br />

werden. Als Werkzeuge werden dabei im Wesentlichen die Exchange Management<br />

Console und der Exchange System Manager genutzt. Es existieren zahlreiche Anleitungen<br />

316 , die diesen Prozess im Detail beschreiben.<br />

2.3.2 Durchführung einer Migration<br />

Der Migrationsprozess auf ein neues Exchange 2007 System beinhaltet die Installation<br />

einer komplett neuen Exchange 2007 Organisation. Anschließend müssen sämtliche<br />

Inhalte (Postfächer, Kalender, Öffentliche Ordner, Benutzer etc.) des alten System nach<br />

Exchange 2007 migriert werden. Zur Automatisierung der Migration der Postfächer bietet<br />

Microsoft kostenfrei den Exchange Migration Wizard 317 an. Zur Migration der Inhalte des<br />

Active Directory stellt Microsoft die Tools LDIFDE und CSVDE zur Verfügung.<br />

Alternativ zu diesen relativ einfachen Werkzeugen, die Microsoft selber zur Verfügung<br />

stellt, existieren mehrere komplexe Werkzeuge von Drittanbietern, die diesen Prozess<br />

noch weiter vereinfachen und automatisieren.<br />

2.3.3 Fazit<br />

Zusammengefasst bedeutet dies: Da es sich bei einer Migration einer alten Exchange<br />

<strong>Version</strong> auf das neue Exchange 2007 um eine Migration innerhalb der gleichen Produktfamilie<br />

handelt, ist eine weitestgehend verlustfreie Migration der bestehenden Daten<br />

möglich. Microsoft bietet im Internet zahlreiche Anleitungen, wie diese Migration in verschiedenen<br />

Ausgangssituationen im Detail durchzuführen ist 318 .<br />

Eine direkte Migration von Exchange 5.5 auf Exchange 2007 ist jedoch nicht möglich. In<br />

diesem Fall sind zwei Migrationen hintereinander durchzuführen. Dieses Vorgehen ist<br />

entsprechend mit dem doppelten Aufwand verbunden, vergleichbar einer Migration von<br />

Exchange 2003 auf Exchange 2007.<br />

316 http://www.msexchange.org/tutorials/Transitioning-Exchange-2000-2003-Exchange-Server-<br />

2007-Part1.html<br />

317 http://support.microsoft.com/kb/328871<br />

318 http://technet.microsoft.com/en-us/library/bb124008.aspx<br />

Seite 345


Die folgende Tabelle fasst die möglichen Migrations- und Transitionspfade zusammen:<br />

Altes System<br />

Transition zu<br />

einer Exchange<br />

2007 Organisation<br />

Exchange Server 5.5 Nicht unterstützt<br />

Exchange 2003 Unterstützt Unterstützt<br />

Exchange 2000 Unterstützt Unterstützt<br />

Seite 346<br />

Migration auf Exchange 2007<br />

Unterstützt, es muss jedoch erst von Exchange<br />

5.5 nach Exchange 2003 oder Exchange 2000<br />

migriert werden. Anschließend muss eine Transition<br />

von Exchange 2003 oder Exchange<br />

2000 nach Exchange 2007 durchgeführt werden.<br />

Tabelle 54: Mögliche Migrations- und Transitionspfade<br />

2.4 Migration von eGroupware nach Lotus Notes 8<br />

Nachfolgend werden die Möglichkeiten zur Migration von eGroupware nach Lotus<br />

Notes 8/Lotus Domino 6 vorgestellt. Hierbei wird neben den Möglichkeiten zum Export<br />

und Import der Daten auch die Integration von externen Verzeichnisdiensten und Mailservern<br />

betrachtet.<br />

2.4.1 Export der Daten aus eGroupware<br />

Auf der Benutzerseite unterstützt eGroupware lediglich den Export der Kalenderdaten im<br />

iCal-Format. Serverseitig existieren zurzeit keine Exportwerkzeuge, da dies lt. Aussage<br />

der Firma Outdoor Unlimited Training GmbH 319 bisher von Kunden nicht anfordert wurde.<br />

Aufgrund der offenen Architektur und der Verwendung von Standards wird jedoch eine<br />

Vielzahl der Daten außerhalb von eGroupware verwaltet und damit in anderen Systemlösungen<br />

wie Lotus Notes 8/Lotus Domino nutzbar.<br />

2.4.2 Datenverwaltung in externen Verzeichnisdiensten<br />

Zur Datenverwaltung ist die Integration von externen Verzeichnisdiensten in eGroupware<br />

möglich. Dies betrifft zunächst die Benutzerverwaltung. Die Speicherung und Administration<br />

der Benutzerdaten und die Authentisierung von Benutzern kann vollständig über<br />

LDAP erfolgen. Zur externen Dateiverwaltung steht die Speicherung entweder im File-<br />

System oder auf einem Webserver mit WebDAV-Unterstützung zur Verfügung. Mit der<br />

Integration von GroupDAV 320 erlaubt eGroupware die externe Bereitstellung und den<br />

Austausch von Kalendern, Aufgabenlisten, Kontaktlisten und Notizen.<br />

319 http://www.outdoor-training.de/<br />

320 http://www.egroupware.org/index.php?page_name=sync&wikipage=GroupDAV


2.4.3 Datenexport per XML-RPC<br />

Für den externen Zugriff auf Funktionen und Daten des Adressbuchs und des Kalenders,<br />

der Aufgabenlisten, Kontaktlisten sowie Notizen bietet eGroupware eine XML-RPC-<br />

API 321 . Somit ist es möglich, eine Anwendung zu implementieren, die über HTTP die<br />

Daten im XML-Format extrahiert und für den Import in Lotus Domino aufbereitet.<br />

2.4.4 Migration von E-Mail<br />

Die E-Mail-Funktionalität wird in eGroupware nicht über eine eigene Mailserver-<br />

Komponente, sondern über die Einbindung beliebiger SMTP und POP3/IMAP fähiger<br />

Mailserver bereit gestellt. Die in Lotus Domino integrierte Email-Server-Komponente<br />

bietet das POP3 und IMAP-Protokoll für die Übermittlung von E-Mail-Daten an. Für eine<br />

Synchronisation der Email-Postfächer sei auf die bereits oben erwähnte Möglichkeiten<br />

(zum Beispiel via Kommandozeilenprogramm „imapsync―) hingewiesen.<br />

2.4.5 Import der Daten in Lotus Notes 8/Lotus Domino 6<br />

Für die Migration von existierenden Groupware-Systemen auf Lotus Notes 8/Lotus<br />

Domino bietet Lotus Werkzeuge, die sowohl auf der Benutzerseite als auch auf der<br />

Server-Seite für die Migration von eGroupware nach Lotus Notes/Domino verwendet<br />

werden können.<br />

2.4.6 Datenimport auf Benutzerseite<br />

Auf Benutzerseite ist in Lotus Notes 8 der Import von Kalenderdaten im iCal-Format aus<br />

eGroupware problemlos. Ebenso besteht die Möglichkeit, Adressbuchdaten im VCard-<br />

Format in Lotus Notes 8 zu importieren. Bei der Evaluierung der Export-Werkzeuge von<br />

eGroupware konnte allerdings nicht sicher geklärt werden, ob eGroupware das Exportieren<br />

von Adressbuchdaten im vCard-Format auf Benutzerseite anbietet. Grundsätzlich<br />

ist jedoch festzuhalten, dass der Import durch den einzelnen Benutzer nur bei kleineren<br />

Datenvolumina sinnvoll ist.<br />

2.4.7 Integration von externen Verzeichnisdiensten in Lotus Domino 6<br />

Die Migration der Benutzerkonten von eGroupware nach Lotus Domino ist möglich, sofern<br />

die Benutzerverwaltung in eGroupware durch die Integration eines LDAP-<br />

Verzeichnisses realisiert ist. Mit Lotus Domino 6 stehen Funktionen zur Migration von<br />

existierenden LDAP-konformen Benutzerverzeichnissen auf Lotus Domino zur Verfügung.<br />

Der LDAP Domino Upgrade Service 322 bietet diverse Migrationsoptionen, u.a. die<br />

Erweiterung des LDAP-Schemas. Es ist anzumerken, dass für die Nutzung der Lotus<br />

Notes E-Mail-Funktionalität jeder migrierte Benutzer auch mit einer Notes ID in Lotus<br />

Domino registriert sein muss. Zusätzlich können mit IBM Tivoli Directory Integrator 323<br />

externe LDAP-Verzeichnisse integriert und synchronisiert werden. Auch hier sind die<br />

321 http://www.egroupware.org/index.php?page_name=sync&wikipage=xmlrpc<br />

322 http://www-12.lotus.com/ldd/doc/domino_notes/6.5/help65_admin.nsf/<br />

b3266a3c17f9bb7085256b870069c0a9/bfd815f921a50c8d85256d9b004b022b?OpenDocu<br />

ment<br />

323 http://www.ibm.com/developerworks/lotus/library/lwp-msad/<br />

Seite 347


ereits erwähnten Einschränkungen bezüglich variierender Schemata des LDAP-Verzeichnisses<br />

zu beachten (siehe Kapitel III.A 2.1 und III.A 2.2).<br />

Lotus Domino 6 bietet einen integrierten Web-Server, der auch die Integration von Web-<br />

DAV 324 erlaubt. Somit kann zur Migration der in eGroupware verwalteten Dokumente die<br />

WebDAV Integration auf beiden Seiten genutzt werden. Mit Hilfe des Domino Designers<br />

kann das Design der in WebDAV verwalteten Dokumente gestaltet werden.<br />

2.4.8 Datenimport auf Server-Seite<br />

Beginnend mit Lotus Domino 6 liefert IBM mit Lotus XML Toolkit 325 eine Sammlung von<br />

integrierten Klassen für Lotus Script, Java und C++, die den Datenimport und -export der<br />

Datenbankinhalte erlauben. Mittels dieser Programmierschnittstelle können Daten und<br />

Design aus existierenden Domino-Datenbanken auf der Basis von DXL (Domino XML)<br />

extrahiert, modifiziert (via DOM und XSLT-Prozessor) und wieder importiert werden.<br />

Hinsichtlich der Migration der in eGroupware verwalteten Kalender, Aufgabenlisten, Kontaktlisten<br />

und Notizen können die Daten unter Verwendung der XML-RPC-Schnittstelle<br />

aus eGroupware im XML-Format ausgelesen, nach DXL transformiert und anschließend<br />

in Lotus Domino importiert werden. DXL verfügt über detaillierte Gestaltungselemente.<br />

2.4.9 Fazit<br />

Zusammengefasst heißt das: Aufgrund der Verwaltung der Benutzer, E-Mails, Dokumente,<br />

Kalender, Adressbücher und Aufgabenlisten außerhalb von eGroupware und<br />

ihren Austausch über standardisierte Protokolle wie iCal, LDAP, WebDAV und XML-RPC<br />

ist der Export der Daten grundsätzlich möglich.<br />

Auf Benutzerseite wird der Import der Kalenderdaten in Lotus Notes 8 im iCal-Format<br />

unterstützt. Der LDAP Domino Upgrade Service und der IBM Tivoli Directory Integrator<br />

ermöglichen die Migration der LDAP-konformen Benutzerkonten beziehungsweise die<br />

Integration des in eGroupware integrierten LDAP-Systems. Mit der Aktivierung von<br />

WebDAV in Lotus Domino ist der Austausch von Dokumenten möglich, falls die Dokumentenverwaltung<br />

einer eGroupware-Installation über WebDAV realisiert ist. Ebenso<br />

kann der SMTP-fähige Mailserver einer eGroupware-Installation in Lotus Domino eingebunden<br />

werden. Unter Verwendung der Programmierschnittstellen in eGroupware und<br />

Lotus Domino können Anwendungen entwickelt werden, die den Datenexport aus eGroupware<br />

und den Import in Lotus Domino serverseitig realisieren.<br />

Allerdings ist anzumerken, dass eGroupware neben den aufgeführten Daten auch Informationen<br />

wie Projektdaten, Umfragen, Diskussionen etc. verwaltet, welche intern in Datenbanksystemen<br />

gehalten werden und daher nicht problemlos exportierbar und für externe<br />

Anwendungen zugänglich sind.<br />

IBM Business-Partner 326 bieten eine Vielzahl von Dienstleistungen zur Migration nach<br />

Lotus Notes/Domino.<br />

324 http://www-12.lotus.com/ldd/doc/domino_notes/Rnext/help6_admin.nsf/f4b82fbb75e942<br />

a6852566ac0037f284/9ba6f9d0158ccf7c85256c1d00397996?OpenDocument<br />

325 http://www.ibm.com/developerworks/lotus/downloads/toolkits.html#notesdomino<br />

326 http://www-304.ibm.com/jct03004c/businesscenter/smb/de/de/partnerfinder<br />

Seite 348


2.5 Scalix nach eGroupware<br />

Dieses Kapitel beschreibt die Migration von Scalix 11.2 nach eGroupWare 1.4. Hierbei<br />

wird neben der Möglichkeit zum Export und Import der Daten auch die Integration von<br />

externen Verzeichnisdiensten und Mailservern betrachtet.<br />

Aufgrund der Systemkomplexität beider Systeme bei der Datenhaltung ist zu beachten,<br />

dass globale Migrationsstrategien, das heißt „von Datenbank zu Datenbank auf Knopfdruck―<br />

schwer realisierbar sind und in jedem Fall eine Einzelfallbetrachtung erfordern.<br />

2.5.1 Datenmigration<br />

eGroupWare 327 trägt dem Thema Datenmigration insofern Rechnung, indem auf Modulebene<br />

(Modul = eine Softwarefunktion wie zum Beispiel Kalender, Adressbuch, Aufgaben-<br />

und Projektmanager) standardisierte Datenaustauschverfahren unterstützt werden:<br />

iCal: Kalenderinformationen, vCard: Adressinformationen; CSV: Kalender-, Adress-,<br />

Aufgabenverwaltung, SyncML, GroupDAV; iCalServer: Kalender-, Adress-, Aufgabenverwaltung<br />

328 ; WebDAV: File- und Foldermanagement.<br />

Im Ergebnis bedeutet das, dass eine Migrationsstrategie sowohl am Benutzer als auch<br />

an der Dateninstanz ansetzen kann. Das heißt der einzelne Benutzer kann seine Daten<br />

mit Hilfe der o.g. Werkzeuge eigenverantwortlich migrieren oder das Ausgangssystem<br />

wird durch die Systemadministration insgesamt migriert wird.<br />

2.5.2 Adress- und Verzeichnisdaten<br />

Die Migration von Adressdaten aus Scalix kann über die Extraktion der individuellen<br />

Benutzerkontakte per Benutzer im LDIF-Format (LDAP Data Interchange Format)<br />

erfolgen. Die erzeugten LDIF-Dateien können vor dem Import nach eGroupWare mit<br />

Shellskripten nach eigenen Vorgaben modifiziert werden. Das offene Format der LDIF-<br />

Spezifikation erlaubt es, Daten vor der Migration in das Zielsystem zu bearbeiten.<br />

Aufgrund der nachvollziehbaren Struktur des Formates ist sowohl eine manuelle als<br />

auch eine automatische Modifikation der Daten möglich. Die zentrale Migration der<br />

Daten kann mit verschiedenen Anwendungen und Benutzungsschnittstellen erfolgen.<br />

eGroupWare-Anwender werden in der Datenbank verwaltet und können sich konfigurierbar<br />

sowohl an der Datenbank als auch an existierenden Authentisierungs-Systemen<br />

anmelden. Durch die von eGroupWare verwendeten Technologien (zum Beispiel PHP,<br />

Apache-Webserver, MySQL-Datenbank u.a.) ist das System plattformunabhängig und<br />

sowohl auf Linux- wie auch auf Microsoft-Systemen lauffähig. Das bedeutet für die<br />

Authentisierung, dass sowohl LDAP als auch zum Beispiel MS-ADS unterstützt werden.<br />

Ein wichtiges Begleitfeature einer LDAP-Strategie dabei ist, dass zum Beispiel eGroup-<br />

Ware-Adressdaten im LDAP gespeichert werden und auf diese Weise weiteren<br />

Anwendungen zugänglich gemacht werden können.<br />

Eine LDAP-Anbindung kann rein zur Authentifizierung (wie auch IMAP, ADS, HTTP,<br />

PAM etc.) oder als „Accountstorage" genutzt werden. Bei letzterem werden die<br />

Benutzerdaten einschl. Gruppenzugehörigkeiten in LDAP verwaltet und stehen damit<br />

327 www.egroupware.org<br />

328 www.egroupware.org/sync<br />

Seite 349


auch anderen Servern (IMAP, SMTP, Samba etc.) zur Verfügung. Mit Cyrus oder DB-<br />

Mail als IMAP Server und einem SMTP-Server der LDAP (zum Beispiel Postfix) können<br />

die Benutzerdaten des Mailservers komplett aus der eGroupWare heraus verwaltet<br />

werden (Alias, Weiterleitung, Quota, Folder ACL, Sieve-Filter und Urlaubsbenachrichtigungen).<br />

2.5.3 E-Mail<br />

eGroupWare beinhaltet einen eigenen E-Mail-Client. Durch die Abbildung der Software<br />

als Webanwendung im Browser arbeitet der E-Mail-Client als Webmailer. Dieser Webmailer<br />

ist ein reiner IMAP-Client, POP3 wird nicht unterstützt. Hinsichtlich der originären<br />

E-Mail-Funktion werden zahlreiche bekannte Mailserver unterstützt. Für die Nutzung in<br />

eGroupWare verwaltbarer Funktionen wie zum Beispiel Filter- und Abwesenheitsregeln<br />

sowie Zugriffsberechtigungen für die Zusammenarbeit von Benutzern in gemeinsamen<br />

Mailordnern ist die Auswahl unterstützter Mailserver geringer. Volle Funktionalität steht<br />

derzeit u.a. für DBMail und Cyrus-Mailserver zur Verfügung. eGroupWare nutzt zum<br />

Versenden von Mails (u.a. auch für Aufgaben- und Termin-Notificationmessages) das<br />

SMTP des mit der Groupware verbundenen Mailservers.<br />

Für eine serverseitige Synchronisierung via IMAP von Scalix nach eGroupware bietet<br />

sich das Kommandozeilenprogramm „imapsync― 329 an, welches zwei verschiedene<br />

IMAP-Konten miteinander synchronisieren kann. Bei der Migration von IMAP-Postfächern<br />

kann es jedoch vorkommen, dass der Mail-Status nicht immer mitgesichert wird.<br />

2.5.4 Kalender<br />

Die Migration von Kalenderdaten erfolgt pro Benutzer via API im iCal-Format, das heißt<br />

sowohl die Extraktion aus Scalix als auch der Import nach eGroupware basieren auf der<br />

Basis von iCal-Files. Eine Aufbereitung dieser Daten kann mittels der API erfolgen.<br />

2.5.5 Fazit<br />

Zusammenfassend ist festzuhalten: Der Aufwand der Migration hängt stark von der Art<br />

der zu migrierenden Daten ab. So lässt sich beispielsweise das Kommandozeilenprogramms<br />

„imapsync― relativ einfach in eigenentwickelte Skripte integrieren, die einen höheren<br />

Grad an Automatisierung zulassen. Ähnliches gilt für die Synchronisation von Adress-<br />

und Verzeichnisdaten.<br />

Bei der Datenmigration nach eGroupWare sind keine Überlegungen hinsichtlich der<br />

Clientseite erforderlich. Wichtig ist jedoch, dass bei der Migration die bisherigen individuellen<br />

Rechte des Benutzers an seinem Altverfahren nach eGroupWare überführt werden<br />

müssen.<br />

329 http://www.linux-france.org/prj/imapsync/README<br />

Seite 350


3 Bezüge<br />

3.1 Webserver und Netzwerkdienste<br />

Es können je nach Groupwareanwendung Bezüge zu verschiedenen Systemkomponenten<br />

vorhanden sein. Besonders die Produkte von Microsoft sind in der Regel hoch integriert<br />

und verwenden unter Anderem in manchen Installationen Funktionalitäten der Microsoft<br />

Internet Information Services. Hierzu ist das Kapitel zum Thema Webserver (Kapitel<br />

II.B 1.2) zu berücksichtigen.<br />

Die Anwendung Kolab ist eine modulare Integration von verschiedenen Open Source<br />

Anwendungen. Unter anderem handelt es sich um den Webserver Apache und verschiedene<br />

Mailserver. Hierdurch entstehen Bezüge zu den folgenden Kapiteln:<br />

� B Thema Webserver, Apache HTTP Server (Kapitel II.B 1.1)<br />

� D 1.2 Thema Netzwerkdienste (Kapitel II.D )<br />

3.2 Authentisierungs- und Verzeichnisdienste<br />

� Häufig ist es von hohem Nutzen, die Verwaltung von Benutzern und Benutzergruppen<br />

sowie die Rechteverwaltung in Groupware mit vorhandenen Authentisierungs-<br />

und Verzeichnisdiensten zu koppeln. Hieraus entstehen Bezüge zum<br />

Thema Authentisierungs- und Verzeichnisdienste, Kapitel II.C.<br />

3.3 Backend-Integration<br />

Es werden Groupwarelösungen gelegentlich über vorhandene Schnittstellen durch selbst<br />

erstellte Programme oder Plugins erweitert, um die Funktionalitäten besonderen Anforderungen<br />

anzupassen. Hieraus entstehen Bezüge zu dem Thema Backend-Integration,<br />

Kapitel III.D .<br />

Seite 351


B Thema Teaming-/Workgroup Software<br />

1 Produkte / Technologien<br />

Teamingsoftware oder Kollaborationsplattformen, wie sie auch gerne bezeichnet<br />

werden, stehen hoch im Kurs, sowohl bei den Softwareherstellern als auch bei den IT-<br />

Verantwortlichen in den Organisationen. Macht es doch den Anschein, dass man mit<br />

dem Kauf eines Softwarepaketes alle oder einen großen Teil seiner Sorgen los wird.<br />

Denn man bekommt ja nicht nur ein einzelnes Produkt, sondern viele in einem. Meist<br />

enthalten die angebotenen Systeme Content Management, eine Portallösung, ein<br />

Dokumenten Management, Wissensmanagement, Suchmaschine und auch noch<br />

Collaboration.<br />

Dass dem nicht so ist, dürfte eigentlich jedem Leser klar sein. Warum sollte ein<br />

Hersteller eins für fünf verkaufen, wenn er fünf verkaufen könnte. Bei den Kollaborationsplattformen<br />

geht es ist erster Linie um die Unterstützung der Zusammenarbeit in Teams,<br />

sei es in internen oder übergreifenden Projekten oder innerhalb von Organisationseinheiten<br />

oder anderen Teamkonstellationen. Für diese Zusammenarbeit benötigt man<br />

kein klassisches Content oder Web Content System und auch kein klassisches<br />

Dokumenten Management System. Daher wird man mit einem Microsoft Office Share<br />

Point Server oder einem Lotus Quickr oder einem Novell Teaming + Meeting nicht die<br />

vollständige Funktionalität solch klassischer Systeme bekommen. Beispielhaft soll dies<br />

an Dokumentenmanagementfunktionen (DMS) verdeutlicht werden. Klassische Funktionen<br />

eines DMS sind:<br />

� Visualisierung von Ordnungsstrukturen (Umsetzung von Aktenplänen)<br />

� Eingangskorb / Ausgangskorb<br />

� Gemeinsame Dokumentenbearbeitung (Check in / Check out) 330<br />

� <strong>Version</strong>ierung<br />

� Metadatenverwaltung<br />

� Abbildung von Aktenlaufplänen<br />

Was davon übrig bleibt in Kollaborationsplattformen sind in der Regel:<br />

� Gemeinsame Dokumentenbearbeitung (Check in / Check out)<br />

� <strong>Version</strong>ierung<br />

� Metadatenverwaltung<br />

Dies scheint auch logisch zu sein, wenn man sich verdeutlicht, welche Aufgaben und<br />

Aktivitäten bei der Zusammenarbeit in Teams unterstützt werden müssen. Die nachfolgende<br />

Auflistung erhebt dabei keinen Anspruch auf Vollständigkeit:<br />

330 Über die Funktion „Check out― wird sichergestellt, dass nicht zur selben Zeit mehrere Personen<br />

ein und das gleiche Dokument bearbeiten. Über „Check in― wird ein Dokument wieder<br />

für die weitere gemeinsame Bearbeitung freigegeben.<br />

Seite 352


� Teams bilden<br />

� Teammitglieder Funktionen zuordnen<br />

� Aufgaben verteilen und deren Erfüllung überwachen<br />

� Zeitpläne definieren und überwachen<br />

� Ergebnisse entwerfen, bearbeiten, prüfen, freigeben, veröffentlichen und wiederfinden<br />

� Prozesse für die Erfüllung von Aufgaben und der Erarbeitung von Ergebnissen<br />

(Dokumenten, Daten und Informationen) definieren und umsetzen<br />

� Nachvollziehbarkeit sicherstellen<br />

� usw.<br />

o <strong>Version</strong>ierung/Archivierung<br />

o Protokollierung<br />

o Projekttagebuch führen<br />

Gerade für die gemeinsame Arbeit an Dokumenten innerhalb eines Teams werden<br />

Funktionen wie Check in und Check out benötigt, um sicherzustellen, dass es nicht zu<br />

überschneidenden Bearbeitung und dadurch zu Informationsverlust kommt. Für die<br />

Nachvollziehbarkeit der Arbeit benötigt man eine <strong>Version</strong>ierung und einfache Archivierung<br />

von alten <strong>Version</strong>en sowie die Zuordnung und Verwaltung von Metadaten für die<br />

Klassifizierung und das Wiederfinden von Dokumenten. In einem Team benötigt man in<br />

der Regel aber keinen Eingangs- und Ausgangskorb und auch keine Aktenpläne.<br />

Die Konsequenz aus dieser Erkenntnis sollte also sein: Wer ein klassisches DMS benötigt,<br />

sollte hierfür keine Kollaborationsplattform erwerben und einsetzen. Diese Erkenntnis<br />

gilt in gleichem Maße auch für die anderen Systeme. Eine Kollaborationsplattform<br />

sollte eine Organisation für die Unterstützung der Zusammenarbeit in Teams beschaffen<br />

und einsetzen.<br />

Der zweite Punkt, der im Zusammenhang mit Teamingsoftware angesprochen werden<br />

muss, ist die Empfehlung, den Einsatz einer solchen Software sehr gut vorzubereiten.<br />

Dies beinhaltet auch die detaillierte Definition der Anforderungen und die genaue Prüfung<br />

im Rahmen der Beschaffung, dass diese Anforderungen erfüllt sind. Denn wie sich<br />

in den nachfolgenden Betrachtungen gezeigt hat, lassen sich die Unterschiede nicht<br />

immer so deutlich herausschälen, da sie sich am Detail festmachen.<br />

Die Empfehlung der guten Vorbereitung muss ausgesprochen werden, da ansonsten die<br />

getätigte Investition zur Fehlinvestion wird oder die Plattform im Chaos der Arbeitsbereiche<br />

versinkt.<br />

Die Hersteller solcher Teaminglösungen versprechen durchweg schnelle und einfache<br />

Lösungen für die Einrichtung eines Teamarbeitsbereiches. Mit zwei, drei Klicks hat man<br />

alles, was man braucht, zusammengeklickt. Die Standardstrukturen sind dabei in fast<br />

allen Lösungen ähnlich aufgebaut: ein Wiki, ein Blog, eine Bibliothek, ein Kalender und<br />

fertig ist der Arbeitsbereich. Gegebenenfalls noch drei Standardworkflows dazu gepackt.<br />

Seite 353


Schön ist, dass in ebenfalls fast allen Lösungen diese Standardstrukturen mehr oder<br />

weniger einfach und mit Toolunterstützung, die zwar nochmal kostet, auch angepasst<br />

und erweitert werden können. Diese Möglichkeiten sollten unbedingt genutzt werden und<br />

umso besser dies vorbereitet und umso umfassender die Anpassungen im Vorfeld<br />

durchgeführt werden, umso einfacher ist es später, die für die eigene Organisation passenden<br />

Arbeitsbereiche bereitzustellen. Hierzu gehört im Vorfeld unter anderem:<br />

� die benötigten Dokumententypen 331 , -formate und -standards festzulegen<br />

� die unterschiedlichen Strukturen der Arbeitsbereiche mit den benötigten<br />

Funktionen zu definieren<br />

� die richtigen Attribute für Metadaten zu definieren<br />

� die benötigten Prozesse aufzunehmen und in eigene Standardworkflows zu<br />

überführen<br />

Ein weiterer wichtiger Punkt in diesem Zusammenhang ist es, dafür Sorge zu tragen,<br />

dass im Nachgang bei der Nutzung der definierten Strukturen diese nicht mehr wahllos<br />

zu ändern. Dies sollte nur bei Bedarf und durch dafür verantwortliche Mitglieder eines<br />

Teams vorgenommen werden. Dazu müssen die Rollen klar verteilt und die Zugriffsrechte<br />

entsprechend gesetzt sein. Daher sollten auch die notwendigen Rechtestrukturen vorher<br />

überprüft und festgelegt werden. Individuelle Änderungen für einzelne Teambereiche<br />

sind immer machbar.<br />

Weiterhin sollten insbesondere die für die Arbeitsbereichsstrukturen verantwortlichen<br />

Mitarbeiter aber auch die anderen Benutzer zuvor entsprechend gut geschult werden.<br />

Abschließend soll an dieser Stelle noch eine Frage in den Raum gestellt werden, die von<br />

den Lesern selbst beantwortet und vor allem bei der Vorbereitung und Beschaffung berücksichtigt<br />

werden muss. Die Arbeit von Teams ist in den meisten Fällen nicht auf<br />

Dauer ausgelegt, daher stellt sich die Frage: Was soll nach der Auflösung eines Teams<br />

mit den Inhalten des Arbeitsbereiches dieses Teams passieren?<br />

1.1 Mindquarry<br />

Die Teaming und Workgroupsoftware Mindquarry entstand 2006 auf studentische Initiative<br />

am Hasso Plattner Institut der Universität Potsdam. Deren Intention lag darin, ein<br />

Werkzeug für Arbeitsgruppen anzufertigen, das die für Gruppenarbeit zeitintensive und<br />

unpraktische Kommunikation allein per E-Mail ergänzt, ohne die Komplexität in der<br />

Handhabung, Konfiguration und Wartung der meisten Lösungen aus diesem Bereich zu<br />

kopieren. Das Ergebnis dieser Bemühungen ist eine einfach zu installierende Software,<br />

die verschiedene Dienste für Gruppenarbeit in einer aufgeräumten Oberfläche zusammenfasst.<br />

Zu diesen Diensten gehören Werkzeuge für Filesharing, Nachrichten- und<br />

Diskussionsdienste, Benutzerverwaltung und einfache Projektverwaltungsinstrumente.<br />

Mindquarry entstand als freie Software unter der Mozilla Public License (MPL). Kostenpflichtige<br />

Supportangebote und das Hosting eines kostenpflichtigen Serverdienstes für<br />

Arbeitsgruppen waren durch eine GmbH der Entwickler geplant, wurden aus Mangel an<br />

331 Hier kann man zum Beispiel unterscheiden zwischen Dateien, Blogeinträgen, E-Mails usw.<br />

Seite 354


Risikokapital Ende 2007 jedoch eingestellt. Die Entwicklung von Mindquarry wird seitdem<br />

als klassisches Open Source Projekt durch eine Community fortgesetzt.<br />

1.1.1 Technologie/Architektur<br />

Architektur<br />

Mindquarry besteht hauptsächlich aus modular zusammengesetzten Serveranwendungen,<br />

die sämtliche Daten und Informationen zentral verwalten, ein Webinterface zur<br />

Verfügung stellen und verschiedene Standardschnittstellen anbieten sowie aus einer<br />

Clientanwendung und Plugins, mit deren Hilfe Arbeitsgruppen auf diese Daten zugreifen<br />

und kommunizieren können.<br />

Die Serversoftware wurde als klassische Middleware konzipiert. Sie greift auf eine Reihe<br />

von vorhandenen Technologien (Bibliotheken) und Produkten zurück und verbindet<br />

diese unter einer einfachen Benutzeroberfläche zu dem Gesamtprodukt. Die zentrale<br />

Serveranwendung wurde in der plattformunabhängigen Programmiersprache Java<br />

(<strong>Version</strong> 5, SDK) implementiert. Zusätzlich wurde bei der Programmierung auf eine<br />

Reihe von frei verfügbaren Bibliotheken und Technologien zurückgegriffen: Das Toolkit<br />

„Apache Jackrabbit" wurde für die Programmierung der integrierten Dokumentenverwaltung<br />

genutzt, „Apache Cocoon" wurde als Framework für die Entwicklung der<br />

Webfunktionalitäten verwendet und das „Dojo Toolkit" für die Entwicklung der<br />

Weboberfläche. SWT (Eclipse) wurde für die Programmierung der Clientprogramme<br />

eingesetzt, mit deren Hilfe die Funktionen Dateimanagement und Taskmanagement<br />

unterstützt werden.<br />

Auf der Abbildung 42 sind alle Bestandteile einer vollständigen Installation dargestellt,<br />

inklusive eines für Document-Management-Funktionalität benötigten Apache Webservers<br />

mit dem Erweiterungsmodul mod_perl.<br />

Der Mindquarry Desktop Client kommuniziert mit der Serverapplikation über HTTP und<br />

synchronisiert sich mit dem Collaboration Server über einfache PUT Requests (HTTP).<br />

Zusätzlich werden lokal gespeicherte Dateien im Workspace des Dateisystems mit den<br />

Inhalten der verteilten Dokumente auf dem Server über Subversion WebDAV Protokoll<br />

aktualisiert. Zu diesem Zweck verwendet der Client die Subversion Client Library, die mit<br />

dem mod_dav_svn Modul des Apache Webservers kommuniziert. Um also diese Funktion<br />

nutzen zu können, muss der Apache Webserver installiert werden. Wie sich dies in<br />

die Gesamtarchitektur einfügt, wird nachfolgend beschrieben.<br />

SSL und Document Management werden durch entsprechende Apache Module ermöglicht:<br />

mod_dav_svn für Subversion und mod_proxy für die Verschlüsselung. Für die interne<br />

Synchronisierung der Benutzerrechte von Subversion, für die WebDAV Funktion,<br />

mit deren Hilfe ein Webbrowser wie ein Dateimanager auf Dateien zugreifen kann, und<br />

der in Mindquarry realisierten Rechtevergabe wird auf das mod_perl Modul zurückgegriffen,<br />

welches die Skriptsprache Perl beinhaltet, in der diese Funktionen programmiert<br />

worden sind.<br />

Seite 355


Abbildung 42: Architektur Mindquarry<br />

Die zentrale Webapplikation von Mindquarry wird als Java-Servlet durch das spring basierte<br />

Cocoon Framework unterstützt. Um Mindquarry laufen lassen zu können, wird ein<br />

entsprechender Servlet-Container beziehungsweise Applicationserver benötigt. Dieser<br />

muss kompatibel sein zur Java-Servlet-API 2.4 beziehungsweise diese unterstützen. In<br />

der Windows-Variante wird bei der Installation der Jetty Servlet-Container mit installiert.<br />

Für eine Linuxinstallation muss ein entsprechender Container, zum Beispiel Tomcat,<br />

separat installiert werden. Laut den Entwicklern von Mindquarry ist es sinnvoll dieser<br />

Architektur noch den Apache Webserver davor zu setzen, sodass die die Zugriffe auf<br />

Mindquarry über den Webserver erfolgen, dies hat den Vorteil, dass sowohl die Funktion<br />

der Dateisynchronisation (siehe weiter oben) mit den Clients als auch alle anderen Funk-<br />

Seite 356


tionen des Webservers genutzt werden können, Mindquarry mit den nativen Clients und<br />

Webbrowsern über HTTP sowie über das Apache JServ Protocol.(AJP).<br />

Die verschiedenen Bestandteile der Webapplikation sind innerhalb des Cocoon Frameworks<br />

in sitemaps servlets aufgeteilt. Diese sind jeweils über URLs durch HTTP-<br />

Requests ansteuerbar und verhalten sich wie selbstständige kleine Webapplikationen.<br />

Der HTTP-Response dieser Sitemaps enthält entweder HTML, inklusive Javascript,<br />

Bilddaten und CSS, oder in XML verpackte Informationen für Mindquarry-Clients oder<br />

RSS-Feeds.<br />

Die Funktionalität zur Volltextsuche wurde mit Apache Solr implementiert, einem Open<br />

Source Search Server, welcher auf der Lucene Java Search Library basiert. Mindquarry<br />

sendet alle in Mindquarry anfallenden Informationen an Solr, das aus diesen Daten<br />

einen jederzeit aktuellen Lucene Index bereitstellt. Suchanfragen von Benutzern über<br />

das Webinterface werden direkt an das Solr Servlet weitergeleitet. Die Volltextsuche<br />

erstreckt sich über die Inhalte des Wikis und alle Tasks. Zusätzlich wird das Repository<br />

indiziert und kann durchsucht werden. Es werden dabei alle herkömmlichen offenen und<br />

proprietären Formate berücksichtigt, inklusive PDF, Microsoft Powerpoint und Microsoft<br />

Word.<br />

Die Speicherung sämtlicher Benutzerdaten und Dokumente geschieht durch Programmteile,<br />

die auf Apache Jackrabbit zurückgreifen, einer vollständigen Implementation eines<br />

Content Repositorys als Java API (JCR). Diese fungiert in Mindquarry als Datenbank,<br />

die Daten in einer Baumstruktur hierarchisch ablegt. Dieses Java Content Repository ist<br />

ein relationales DBMS und wird in Mindquarry als Backend für die Datenspeicherung<br />

verwendet. Mindquarry erweiterte die JCR Library durch einen Suchalgorithmus, der<br />

XPath-konforme Anfragen (XML Path Language) vollständig bedienen kann.<br />

Für die <strong>Version</strong>ierung und Revision von Dokumentenänderungen greift Mindquarry auf<br />

Subversion zurück, einer Open Source Lösung für derartige Aufgaben, die ein versioniertes<br />

Filesystem abbildet. Subversion überprüft Änderungen an Datenbeständen auf<br />

Clientbasis und funktioniert entsprechend auch offline durch zeitlich verschobene Synchronisation.<br />

Bei Verwendung des Webinterfaces kommuniziert Mindquarry selbst über<br />

Subversion Clients mit den Revisionsdaten von Subversion, während die Synchronisierung<br />

lokaler Arbeitsplätze durch Mindquarry Clients über das Apache mod_dav_svn Modul<br />

erfolgt.<br />

Es ist geplant, Mindquarry zu einem vollwertigen Collaborationserver zu erweitern, indem<br />

der Apache James Mail Server als eigenständiger MTU integriert wird, sodass<br />

Maildienste (Mailinglisten usw.) in den Mindquarry Funktionen (Subversion, Volltextsuche,<br />

usw.) integriert werden können.<br />

Für eine Installation des Mindquarry Servers müssen zusätzlich eine Java SDK ab<br />

<strong>Version</strong> 5 und ein Apache 2 mit mod_perl sowie Subversion installiert sein. Alle anderen<br />

Bestandteile werden mit dem Mindquarry-Softwarepaket geliefert. Für Installationen<br />

unter Windows ist ein Installationspaket (XAMPP) verfügbar, das alle Voraussetzungen<br />

für Mindquarry beinhaltet.<br />

Als Hardwarevoraussetzung werden lediglich 256 MB RAM und 100 MB freier Speicher<br />

für die reine Software, exklusive anfallender Daten auf einer Festplatte genannt.<br />

Seite 357


1.1.1.1 Protokolle und Schnittstellen<br />

Sämtliche Programmierschnittstellen (API) und Protokolle, die in Mindquarry Verwendung<br />

finden, sind vollständig offengelegt und dokumentiert. Die Kommunikation zwischen<br />

einzelnen Bestandteilen und zwischen Clients und Servern geschieht vorwiegend<br />

per HTTP, über das XML und HTML Daten versendet werden.<br />

Als Protokoll zwischen Apache Webserver und Cocoon Servlet wird AJP verwendet. Per<br />

JCR wird Apache Jackrabbit adressiert und die Anbindung der relationalen Datenbank<br />

geschieht über JDBC. Der Lucene Index für alle relevanten Information Retrieval Funktionen<br />

wird über die JSON API angesprochen. Der geplante MTU kommuniziert standardgemäß<br />

per SMTP und kann durch Mailclients über Pop3 und IMAP abgefragt werden.<br />

Die Verwendung von Mindquarry kann problemlos über dessen Webinterface stattfinden.<br />

Dazu werden lediglich herkömmliche Webbrowser benötigt. Zusätzlich existieren Clientprogramme<br />

zu Mindquarry, die lokal installiert werden können. Mit Hilfe dieser Clients<br />

können definierte Bereiche auf der lokalen Festplatte automatisch mit den Daten auf<br />

dem zentralen Server synchronisiert werden. Derartige Clients existieren sowohl für MS<br />

Windows als auch für Linux und Mac OS. Aufgrund ihrer Implementierung als Java-<br />

Anwendungen ist eine Portierung zu weiteren Plattformen problemlos möglich.<br />

Mindquarry bietet die Möglichkeit, Benutzer über einen RSS Feed über aktuelle Änderungen<br />

und Meldungen auf dem Laufenden zu sein. Entsprechende RSS Feed Reader<br />

gibt es in großer Anzahl ebenfalls als Open Source Lösung, und sie sind in den meisten<br />

aktuellen Webbrowsern integriert.<br />

Die Architektur kann daher in jeder Hinsicht als modular und offen angesehen werden,<br />

sodass deren Erweiterung und Anpassung über die genannten Schnittstellen potentiell<br />

kein Problem darstellt.<br />

1.1.1.2 Sicherheitsaspekte<br />

Sämtliche Zugriff auf den Mindquarry Server können per SSL, optional durch Verwendung<br />

des mod_proxy Moduls im Apache Webserver verschlüsselt werden.<br />

Innerhalb des Mindquarry Interfaces können Benutzerrechte definiert werden, sodass die<br />

Zugriffe und Funktionen für Benutzergruppen und einzelne Benutzer nach Bedarf definiert<br />

werden können.<br />

Der Server an sich bietet keine besonderen Sicherheitsmechanismen. Die Daten liegen<br />

unverschlüsselt auf dem Server und Zugriffe auf Repositories, Indizes usw. können über<br />

die wohlbekannten Schnittstellen aufgrund der modularen Architektur stattfinden. Daher<br />

sollten beim Aufbau einer solchen Architektur die folgenden Dokumente des Bundesamtes<br />

für Sicherheit in der Informationstechnik zu Rate gezogen werden:<br />

� „Sicherheitsuntersuchung des Apache Jakarta Tomcat Servlet Containers―,<br />

Bundesamt für Sicherheit in der Informationstechnik, Bonn 2006,<br />

http://www.bsi.de/literat/studien/tomcat/index.htm<br />

� „Web 2.0 – Sicherheitsaspekte neuer Anwendungen und Nutzungsformen des<br />

Mediums World Wide Web und ihrer Implementierung―,<br />

Seite 358


Bundesamt für Sicherheit in der Informationstechnik, Bonn 2007,<br />

http://www.bsi.bund.de/literat/studien/web20/index.htm<br />

� Baustein 5.11 Apache-Webserver der IT-Grundschutzkataloge,<br />

http://www.bsi.bund.de/gshb/deutsch/baust/b05011.htm<br />

Die Verwendung innerhalb geschlossener LANs ist ohne großen Aufwand möglich, jedoch<br />

der gesicherte Zugriff aus dem Internet sollte aus den genannten Gründen nur über<br />

Firewalls und Proxies stattfinden, um neben dem prinzipiellen Sicherheitsgewinn einer<br />

solchen Lösung auch eine empfehlenswerte Verschlüsselung über SSL gewährleisten zu<br />

können. Organisationsübergreifende Zusammenarbeit ist über verschlüsselten Zugriff<br />

möglich und kann aufgrund der verwendeten Standardprotokolle für die Webanwendung<br />

und die Desktopclients eingesetzt werden. Eine höhere Sicherheit bei der Zusammenarbeit<br />

über verschiedene LANs hinweg kann über VPNs oder allgemein verschlüsselte<br />

Netzwerkverbindungen (z.B. Stunnel) realisiert werden, die ebenfalls über die gesamte<br />

Anwendung hinweg transparent einsetzbar sind.<br />

Aus Sicht der IT-Sicherheit sollte auch noch mal darauf hingewiesen werden, dass im<br />

Rahmen der Volltextsuche das Dokumentenrepository indiziert wird, wobei alle herkömmlichen<br />

offenen und proprietären Formate berücksichtigt werden, inklusive PDF,<br />

Microsoft Powerpoint und Microsoft Word.<br />

1.1.2 Funktionalitäten<br />

Das Ziel der Programmierer von Mindquarry war es, ein einfach zu benutzendes Werkzeug<br />

zu erstellen, das Arbeitsgruppen hilft, sich zu koordinieren, Arbeitsergebnisse auszutauschen,<br />

diese zu verwalten und zu überprüfen. Zu diesem Zweck wurden einige<br />

modulare Funktionen erstellt, die gemeinsam die Teamingsoftware Mindquarry bilden.<br />

Eine Arbeitsgruppe wird in Mindquarry als Team bezeichnet. Teams bestehen aus<br />

Gruppen von einzelnen Usern und können von Benutzern mit entsprechenden Rechten<br />

zusammengestellt werden. Teams und User sind umfangreich definierbar. Innerhalb der<br />

Teamübersichten können Aktivitäten und Aufgaben personenbezogen angezeigt werden.<br />

Es können für ein Projekt auch verschiedene Teams zusammengestellt und verwaltet<br />

werden. Innerhalb eines Teams haben alle Benutzer gleichberechtigte Zugriffsrechte.<br />

Eine Rechteverwaltung auf Benutzerebene ist in Planung.<br />

Mindquarry beinhaltet eine Aufgabenverwaltung. Gruppen und einzelnen Teammitgliedern<br />

können Aufgaben zugewiesen werden, die Eigenschaften wie Status (new, runnning,<br />

done, usw.) oder Priorität (high, low, usw.) besitzen. In einer Aufgabenübersicht<br />

können Aufgaben nach verschiedenen Kriterien sortiert werden und als iCal oder PDF<br />

exportiert werden. Es können mehrere Teammitglieder einer Aufgabe zugeordnet werden.<br />

Aufgaben können untereinander verknüpft werden, sodass auch komplexe Projektplanung<br />

möglich ist. Erledigte Aufgaben werden in einem Archiv zur späteren Sichtung<br />

abgelegt. Diverse Ansichten können über den Fortschritt eines gesamten Projektes Auskunft<br />

geben, indem zum Beispiel alle laufenden oder noch nicht zugewiesenen Aufgaben<br />

aufgelistet werden. Aufgabenänderungen werden versioniert und können entsprechend<br />

abgefragt werden. Der Fortschritt und Änderungen werden allen Projektmitgliedern über<br />

RSS/Atom Feeds mitgeteilt.<br />

Seite 359


Als offenes Forum für Teams dient ein Wiki. Benutzer können Rich-Text Einträge vornehmen<br />

und verändern sowie Grafiken und Tabellen einfügen, die von allen Projektmitgliedern<br />

gelesen und wiederum verändert werden können. Über verschiedene Filteransichten<br />

können Veränderungen und Teams zugewiesene Wikis verfolgt werden. Einträge<br />

und Änderungen im Wiki werden protokolliert und den Projektmitgliedern über RSS/Atom<br />

Feeds in Echtzeit mitgeteilt. Eine Exportfunktion ermöglicht die Ausgabe des Inhalts als<br />

OPML (Open Processor Markup Language) Datei.<br />

Für den Austausch und die gemeinsame Nutzung von Dateien existiert ein zentraler Dateiserver,<br />

der über das Webfrontend und die Desktop Clientanwendungen synchronisiert<br />

wird. Die Art und das Format von Dateien (Textdaten, Bilddaten, Officedateien, usw.)<br />

haben keinen Einfluss auf die Funktionen des Servers. Dateien werden automatisch bei<br />

einer Synchronisierung auf die neueste <strong>Version</strong> aktualisiert und dafür zu löschende Dateien<br />

werden mit <strong>Version</strong>sinformationen archiviert. Zu den <strong>Version</strong>sinformationen gehören<br />

Zeitstempel der Änderung, Benutzerangaben und automatische <strong>Version</strong>snummern.<br />

Informationen über aktuelle Änderungen werden ebenfalls per RSS/Atom Feeds veröffentlicht.<br />

Verschiedene Ansichten können über Webbrowser dargestellt werden und<br />

funktionieren über aktuelle Webbrowser auch als WebDAV Anwendung.<br />

Insgesamt werden sämtliche Änderungen innerhalb der verschiedenen Funktionalitäten<br />

von Mindquarry protokolliert und archiviert. Mindquarry verfügt derzeit nicht über eine<br />

klassische Kalenderfunktion, aber über eine Zeitleistendarstellung können sämtliche<br />

Änderungen terminlich nachvollzogen werden. Über einen RSS Feed können Angaben<br />

zu diesen Änderungen durch die Arbeitsgruppen zeitnah verfolgt werden.<br />

Durch den Aufbau der verwendeten Technologien ist eine Offline-Verwendung und nachträgliche<br />

Synchronisation von Dateien problemlos möglich.<br />

Der Umfang der Funktionalitäten bleibt durch den Ansatz der einfachen Benutzbarkeit<br />

hinter den Möglichkeiten vergleichbarer Anwendungen zurück, insbesondere was die<br />

Verwendung von Workflow und Dokumenten Management Funktionen betrifft. Mindquarry<br />

deckt aber die häufigsten Anwendungsanforderungen für kleinere bis mittlere Projekte<br />

effizient ab, ohne die Notwendigkeit, Benutzer in komplexe Bedienkonzepte einführen zu<br />

müssen.<br />

Hauptfunktion Details<br />

Benutzerverwaltung Benutzer und Teams umfangreich definierbar. Das Rechtesystem<br />

kennt in der aktuellen Implementierung lediglich<br />

Rechte auf Teamebene.<br />

Dateiverwaltung mit <strong>Version</strong>ierung<br />

und Metadaten<br />

Dokumente werden über Clients synchronisiert.<br />

Automatische Archivierung mit Metainformationen.<br />

<strong>Version</strong>ierung über Zeitstempel und Bearbeiterinfo.<br />

Termin- und Aufgabenplanung Aufgaben mit grundlegenden Metainformationen (Status,<br />

Bearbeiter, Priorität und Termine) können festgelegt, untereinander<br />

verknüpft und verfolgt werden.<br />

Besonderheiten Projektbezogene Wiki-Funktion für unkomplizierte Diskussionen<br />

Seite 360


Hauptfunktion Details<br />

Aktuelle Projektinformationen über RSS /Atom Feeds<br />

Suchfunktion Die Suche über ein gesamtes Projekt wird über das Webinterface<br />

bereitgestellt. Es handelt sich hierbei um eine<br />

Volltextsuche über die Bereiche Wiki, Aufgabenplanung<br />

und über das zentrale Repository mit Dateien.<br />

1.1.3 Fazit<br />

Tabelle 55: Funktionen von Mindquarry<br />

Mindquarry verbindet einige Open Source Produkte zu einer Teamingsoftware, die vor<br />

allem durch praktische Funktionen und einfache Handhabung positive Akzente setzen<br />

kann. Es bietet sich für einfache Projektorganisation in kleinen und mittleren Arbeitsgruppen<br />

an. Durch die einfache Installation und Bedienbarkeit im Zusammenhang mit<br />

der freien Lizenz bietet sich Mindquarry auch als ad-hoc Lösung ohne besondere Vorkenntnisse<br />

und Voraussetzungen an.<br />

Sämtliche gespeicherte Daten liegen sowohl im Originalformat und als XML kodierte<br />

Informationen vor und können somit auch manuell oder über andere Programme (ohne<br />

Mindquarry) genutzt werden. Dies ist ebenfalls von Vorteil mit Blick auf mögliche zukünftige<br />

Migrationen, insbesondere, wenn es um ablösende Migrationen und die Übernahme<br />

der Daten in neue Umgebungen geht. Durch den Einsatz von offenen Protokollen und<br />

Programmierschnittstellen ist es zudem möglich, die Funktionalität von Mindquarry an<br />

besondere Behördenbedürfnisse, für DMS oder andere spezielle Gegebenheiten zu erweitern.<br />

Nachteilig ist, dass Mindquarry keine besonderen Schutzmechanismen gegen unberechtigte<br />

Zugriffe und ein sehr grobes Autorisierungsmodell bietet. Aus diesem Grund ist eine<br />

besondere organisatorische und administrative Sorgfalt bei der Serverinstallation und<br />

-benutzung notwendig. Hilfreich sind hier die Hinweise des Bundesamt für Sicherheit in<br />

der Informationstechnik zur „Sicherheit im Internet― 332 und zu Web 2.0 333 .<br />

Lobenswert zu erwähnen ist, dass die volle Funktionalität auch ohne eine Freigabe von<br />

aktiven Inhalten genutzt werden kann.<br />

1.2 Microsoft SharePoint Server und –Services<br />

Microsoft bietet unter der Bezeichnung SharePoint schon seit 2001 verschiedene Produkte<br />

an, die durch stetige Konsolidierung zum aktuellen Produkt überführt wurden 334 .<br />

Die nachfolgende Tabelle zeigt die Entwicklung seit der erstmaligen Veröffentlichung von<br />

SharePoint Produkten im Jahre 2001.<br />

332 http://www.bsi.de/fachthem/sinet/allgemeines/sinetstd.htm<br />

333 http://www.bsi.de/literat/studien/web20/index.htm<br />

334 SharePoint Historie http://www.it-innovations.de/is/sharepoint+competencecenter/office+sharepoint+server+2007.htm<br />

Seite 361


Jahr Entwicklung/Veröffentlichung<br />

Services-Linie Server-Linie<br />

2001 SharePoint Team Services v1 SharePoint Portal Server 2001<br />

2003 Windows SharePoint Services v2 Office SharePoint Portal Server 2003<br />

2006 Windows SharePoint Services v3<br />

Tabelle 56: SharePoint-Historie<br />

Seite 362<br />

Microsoft Office SharePoint Server<br />

2007 335<br />

Microsoft bietet aktuell unter der Bezeichnung SharePoint die Produkte Windows Share-<br />

Point Services <strong>3.0</strong> und den Microsoft Office SharePoint Server 2007 an.<br />

Die Windows SharePoint Services (WSS) in der <strong>Version</strong> <strong>3.0</strong> sind Bestandteil des Windows<br />

Server 2003 Betriebssystems und müssen nicht zusätzlich lizenziert und vergütet<br />

werden 336 . Hiermit bietet Microsoft eine Sammlung von Werkzeugen und Funktionen zur<br />

Unterstützung der Zusammenarbeit (Kollaboration) verteilter Teams sowie den Einsatz<br />

von individuell programmierten Workflows an. Die WSS eignen sich dabei vor allem für<br />

kleine Gruppen bis hin zu kleinen Unternehmen.<br />

Den Kern dieser Funktionalitäten der WSS sind anpassbare Listen. Dies sind z.B. Aufgabenlisten<br />

im Team, Kalender, Dokumentenbibliotheken (Dateiablage mit erweiterten<br />

Eigenschaften), Adresslisten. Weitere Listen können selbst als sogenannte benutzerdefinierte<br />

Listen erstellt werden oder aus Drittsystemen eingebunden werden 337 .<br />

Für Unternehmen mit weitergehenden Anforderungen, die durch die WSS nicht erfüllt<br />

werden, stehen weitere Ausbaustufen zur Verfügung, die unter der Bezeichnung Microsoft<br />

Office SharePoint Server 2007 (MOSS 2007) bekannt sind.<br />

Der MOSS 2007 wird in folgenden Editionen angeboten:<br />

� MOSS 2007, Standard Edition (MOSS SE)<br />

� MOSS 2007, Enterprise Edition (MOSS EE)<br />

� MOSS 2007 for Search, Standard Edition<br />

� MOSS 2007 for Search, Enterprise Edition<br />

Da die WSS die Basis für den MOSS 2007 bilden, sind alle Funktionen des WSS bereits<br />

integraler Bestandteil des MOSS 2007.<br />

335<br />

Microsoft Office SharePoint Server 2007 entsteht aus der Zusammenführung und<br />

Weiterentwicklung des Office SharePoint Portal Server 2003 und dem Content<br />

Management Server 2002.<br />

336<br />

WSS setzt mindestens Windows Server 2003 mit den zugehörigen Client Access License<br />

(CAL) voraus.<br />

337<br />

Microsoft Windows SharePoint Services<br />

http://de.wikipedia.org/wiki/Windows_SharePoint_Services


WSS<br />

Seite 363<br />

MOSS<br />

Abbildung 43: Beziehung zwischen MSS <strong>3.0</strong> und MOSS 2007<br />

Die MOSS 2007 Standard Edition unterscheidet sich im Wesentlichen zur Enterprise<br />

Edition dadurch, dass ihr die Forms Services, Excel Services und der Business Data<br />

Catalog (BDC) fehlen, der die Integration von externen Daten in den SharePoint ermöglicht.<br />

Die MOSS 2007 for Search Editionen sind für Firmen gedacht, die vorwiegend eine Enterprise<br />

Suche einsetzen wollen und nicht ein Kollaborations-Portal, daher werden diese<br />

Editionen im Weiteren nicht betrachtet.<br />

1.2.1 Technologie / Architektur<br />

Die unabdingbaren Voraussetzungen für eine MOSS-Installation sind die nachfolgend<br />

aufgeführten anderen Microsoft Produkte:<br />

� Windows Server 2003 (2008) als Betriebssystem<br />

� Internet Information Services (IIS) als Web Server<br />

� .NET Framework 2.0 für den SharePoint und .NET <strong>3.0</strong> für die Windows Workflow<br />

Foundation [WF]<br />

� SQL Server 2005 (2008) als SharePoint Repository<br />

Eine detaillierte Darstellung der vollständigen Systemanforderungen liefert Microsoft auf<br />

seinen Webseiten 338 .<br />

1.2.1.1 Architektur<br />

Die nachfolgende Abbildung verdeutlicht die logische SharePoint-Architektur. Dabei liefern<br />

auf der Infrastrukturebene die Datenbank-, Such und Workflowdienste zusammen<br />

mit dem ASP.NET Framework die Grundlage für alle weiteren Dienste. In der Regel gehören<br />

hier dann auch das Betriebssystem selbst und Active Directory dazu. Aus der Abbildung<br />

wird dann auch deutlich, dass MOSS 2007 auf den WSS <strong>3.0</strong> aufsetzt.<br />

338 http://office.microsoft.com/de-de/help/HA101945391031.aspx


Kollaboration Portal Suche<br />

APPLIKATIONEN & DIENSTE (MOSS 2007)<br />

Seite 364<br />

Content<br />

Management<br />

Workflows<br />

Business<br />

Intelligence<br />

Shared Services<br />

(Site Model, Indexierung/Suche, Geschäftsdatenkatalog, Profil Dienste, Zielgruppen gerechte Ansprache,<br />

Nutzungsanalysen, Single Sign-on Service)<br />

PLATFORM DIENSTE (WSS V3)<br />

Archivierung Sicherheit Management Entwicklung Site Model Erweiterbarkeit<br />

OPERATING SYSTEM DIENSTE<br />

ASP.Net: Web Parts, Personalisierung, Master Seiten, Anbieter Framework (Sicherheit, etc.)<br />

Datenbanken Dienste<br />

Server-Topologien<br />

Such Dienste<br />

Abbildung 44: logische Architektur – SharePoint<br />

Windows Worklfow Foundation<br />

MOSS 2007 unterstützt verschiedene Architekturmodelle bezüglich der Server-<br />

Topologie, abhängig von der Größe der Instanz und deren Durchsatz und den Anforderungen<br />

an die Ausfallsicherheit. Der Standard für SharePoint Instanzen heißt Farm, diese<br />

gibt es als sogenannte „Small―, „Medium― und „Large― Farm. Ein „single― Server wird<br />

nur zu Entwicklungs- oder Testzwecken installiert, da ein weiterer Ausbau nur bedingt<br />

machbar ist.<br />

Die nachfolgende Abbildung zeigt die verschiedenen Varianten, die Microsoft als Basis-<br />

Topologien vorsieht.<br />

Small Farm<br />

Jeder<br />

(load-balanced)<br />

Server<br />

beinhaltet<br />

- Web front end<br />

- Anwendungen<br />

Dedizierter<br />

SQL Server<br />

Medium Farm<br />

Server mit<br />

- Web front<br />

ends<br />

- Anwendungen<br />

Anwendungsserver<br />

SQL Server<br />

Cluster<br />

Large Farm<br />

Index Suche Excel Project<br />

SQL Server<br />

Cluster<br />

Abbildung 45: Topologien von Sharepoint Server Farmen<br />

Web front end<br />

Server<br />

(load balanced)<br />

Anwendungsserver


1.2.1.2 Protokolle und Schnittstellen<br />

Clients<br />

Der Zugriff auf SharePoint Umgebungen kann je nach Bedarf mittels unterschiedlicher<br />

Clients, Protokolle und Schnittstellen vorgenommen werden.<br />

Zu den verfügbaren Clients gehören vor allem alle Anwendungen aus der MS Office<br />

2007 Suite. Hierzu gehören u.a.:<br />

� Microsoft Office 2007 (Word, Excel, PowerPoint, Access, Outlook, InfoPath,<br />

OneNote)<br />

� Project 2007<br />

� Visio 2007<br />

� Publisher 2007<br />

� Office Communicator 2007 (Client für Office Communications Server 2007<br />

[OCS])<br />

Hier können generell auch andere, nicht Microsoft Anwendungen, wie zum Beispiel<br />

OpenOffice.org, verwendet werden. Bei diesen Anwendungen ist aber in der Regel der<br />

Grad der Integration nicht in dem Maße gegeben wie er für die Microsoft Produkte verfügbar<br />

ist. So steht in OpenOffice.org (OOo) zum Beispiel keine Workflowintegration zur<br />

Verfügung, das bedeutet, es gibt keinen Menüpunkt oder Button in OOo über welchen<br />

ein Workflow ausgewählt und gestartet werden kann. Die Funktion der gemeinsamen<br />

Dokumentenbearbeitung steht aber auch bei Verwendung anderer Anwendungen zur<br />

Verfügung, da beim Öffnen eines Dokumentes automatisch die Funktion „Check out―<br />

angewendet wird. Das ―einchecken‖ geht dann über das erneute Hochladen des geänderten<br />

Dokumentes.<br />

Weitere Microsoft Clients, die verwendet werden können, sind zum Beispiel:<br />

� SharePoint Designer 2007<br />

� Internet Explorer 7 oder andere Web-Browser<br />

� Alle WebDAV 339 -fähigen Clients, sofern WebDAV entsprechend eingerichtet<br />

wurde<br />

Anmerkung:<br />

Bezüglich der Browserunterstützung unterscheidet Microsoft zwischen zwei Ebenen (Level<br />

1 und 2). Zu den Level 1 Browsern gehören gemäß Microsoft die Browser, welche<br />

die Vorteile der erweiterten Funktionen von ActiveX-Steuerelementen nutzen und unterstützen.<br />

Sie eröffnen die volle Funktionalität von SharePoint Umgebungen einschließlich<br />

der Administrationsumgebung. Level 2 Browser bieten laut Microsoft grundlegende<br />

Funktionalität, sodass die Benutzer Lese- und Schreibzugriff auf SharePoint Umgebungen<br />

und Administrationsumgebung durchführen können. Dies und Näheres zu den un-<br />

339 Web-based Distributed Authoring and <strong>Version</strong>ing<br />

Seite 365


terstützten Funktionen von verschiedenen Browsern erfährt man im Dokument „Microsoft<br />

Office SharePoint Server 2007 - Getting Started with Office SharePoint Server― 340 .<br />

Schnittstellen und Protokolle für den direkten Zugriff<br />

Als Schnittstellen und Protokolle für den direkten Zugriff stehen zur Verfügung:<br />

� HTTP oder HTTPS<br />

� FTP, sofern dies im Server eingerichtet beziehungsweise erlaubt wird<br />

� WebDAV, die SharePoint Bereiche können dabei z.B. durch eintragen der entsprechenden<br />

URL im Windows Explorer geöffnet werden oder in den Verzeichnisbaum<br />

wie ein lokales Verzeichnis eingebunden werden.<br />

Schnittstellen und Protokolle für die Anbindung anderer Systeme<br />

Für die Anbindung anderer Systeme stehen folgende Schnittstellen zur Verfügung:<br />

� SharePoint API über Visual Studio mit den Entwicklungserweiterungen für<br />

SharePoint<br />

� Web Services (SharePoint Web Services, die mit den Erweiterung von Visual<br />

Studio für SharePoint zur Verfügung gestellt werden, aber auch selbst programmierte<br />

Web Services)<br />

� WebDAV zur Anbindung von WebDAV-fähigen Clients, wie z.B. MS Word oder<br />

der Windows Explorer<br />

Bezüglich der Web Service Schnittstelle ist anzumerken, dass auf Seiten SharePoint<br />

diese Web Services auf .NET basieren müssen. Auf der anderen Seite können beliebige<br />

Technologien (J2EE, .NET) verwendet werden.<br />

Dateiformate<br />

Grundsätzlich können alle Dateiformate in einer SharePoint Umgebung verwendet<br />

werden, die auch sonst unter Windows verwendet werden können. Dateien beliebiger<br />

Formate können entweder über die Web-basierte Benutzerschnittstelle in die SharePoint<br />

Umgebung hochgeladen werden oder über eingebundene WebDAV-Ordner mit Hilfe<br />

eines Dateimanagers übertragen werden. Die Zuordnung zu Anwendungen, mit denen<br />

man die Dateien betrachten und bearbeiten kann, erfolgt über die entsprechenden<br />

MIME-Typen. Unterschiede bestehen im Wesentlichen bezüglich des Grades der<br />

Integration und gegebenenfalls auch bezüglich der Nutzbarkeit von damit verbundenen<br />

Funktionen.<br />

1.2.1.3 Sicherheitsaspekte<br />

Zur Gewährleistung der IT-Sicherheit für eine SharePoint Umgebung werden unterschiedliche<br />

Maßnahmen und Möglichkeiten von Microsoft zur Verfügung gestellt, die je<br />

nach Ausprägung und Nutzung (z.B. nur im Intranet oder auch über das Internet) von<br />

SharePoint und den damit verbundenen unterschiedlichen Sicherheitsanforderungen<br />

genutzt werden können. Im Rahmen des <strong>Migrationsleitfaden</strong>s ist es nicht möglich und es<br />

340 Microsoft Corporation, Published: May 2007, Author: Windows SharePoint Services IT User<br />

Assistance (o12ITdx@microsoft.com) (siehe http://go.microsoft.com/fwlink/?LinkID=91741)<br />

Seite 366


ist auch nicht die Aufgabe des Leitfadens diese alle im Detail zu betrachten. Eine umfangreiche<br />

Darstellung liefert Microsoft auf den TechNet-Seiten des folgenden Links:<br />

http://technet.microsoft.com/en-us/library/cc263518.aspx<br />

Hier gibt es auch ein ca. 300 seitiges Werk zum herunterladen, das viele Aspekte beschreibt.<br />

Die wesentlichen Sicherheitsmaßnahmen lassen sich in drei Gruppen einteilen:<br />

� Autorisierungsmodelle<br />

� Authentisierungsmöglichkeiten<br />

� Verschlüsselung und Netzwerktopologie<br />

Überdies hinaus gibt es zusätzliche Möglichkeiten, deren Bedarf im Einzelfall geprüft<br />

werden muss. Die folgenden Darstellungen zeigen nur einen Ausschnitt.<br />

Autorisierungsmodelle<br />

Hierzu besteht entsprechend der Inhaltsstrukturen und Benutzerstrukturen einer Share-<br />

Point Umgebung die Möglichkeit unterschiedliche Zugriffsberechtigungen zu vergeben.<br />

Das bedeutet, dass für jedes Inhaltsstrukturelement (Site, Liste, Bibliothek, Ordner, Dokument<br />

usw. (siehe auch Abschnitt III.B 1.2.2.1)) und für jeden Benutzer und jede Benutzergruppe<br />

detaillierte Zugriffsberechtigungen vergeben werden können. Die Berechtigungen<br />

vererben sich dabei von oben nach unten, zum Beispiel erben die Inhalte einer<br />

Site die Berechtigung zu dieser, wenn neue Inhalte angelegt werden. Diese können<br />

dann individuell wieder angepasst werden, sofern dies sinnvoll ist.<br />

Benutzergruppen sind Autorisierungsgruppen und werden dazu verwendet, um Benutzer<br />

unterschiedlichen Umfang an Zugriffsberechtigungen zuzuweisen. Die folgende Tabelle<br />

zeigt einige Beispiel für Autorisierungsgruppen:<br />

Gruppen Standard-Autorisierung<br />

Restricted Readers Nur Leserecht auf eine Site und eingeschränkte<br />

Zugriffsrechte auf spezifische Listen<br />

Home Visitors Leserecht<br />

Home Members Beiträge erstellen<br />

Approvers Freigaben und eingeschränkten Zugriff<br />

Home Owners Vollen Zugriff<br />

Site collection administrators Administration einer Site Collection<br />

(siehe Abschnitt III.B 1.2.2.1)<br />

Farm administrators Legen fest, welche Administratoren welche Server und<br />

Server Framen administrieren dürfen<br />

Administrators Server- und Farmadministrationsrechte<br />

Tabelle 57: Beispiele für Autorisierungsgruppen in SharePoint<br />

Seite 367


Darüber hinaus besteht die Möglichkeit selbst weitere Gruppen zu definieren, zum Beispiel<br />

für externe Benutzer.<br />

Authentisierung / Benutzerverwaltung<br />

MOSS bietet die Möglichkeit vorhandene Benutzerverzeichnisse, wie zum Beispiel Active<br />

Directory (AD), aber auch andere Standard LDAP-Verzeichnisse, wie z.B. Novell eDirectory<br />

341 oder OpenLDAP für die Benutzerverwaltung zu integrieren. Alternativ oder<br />

parallel können Benutzer auch direkt auf einem SharePoint Server verwaltet werden.<br />

Dies kann von Interesse sein, wenn es darum geht, externe Benutzer in einem Team zu<br />

integrieren, ohne diese in der internen zentralen Benutzerverwaltung führen zu müssen.<br />

Dementsprechend bietet SharePoint außer der Authentisierung via Active Directory (AD)<br />

oder direkt am SharePoint Server auch die Möglichkeit der Authentisierung gegenüber<br />

einem anderen integrierten LDAP-Verzeichnis.<br />

Weiterhin besteht auch die Möglichkeit sogenannte Authentication Provider, basierend<br />

auf dem „ASP.NET Authentication Providermodel― 342 zu integrieren.<br />

Die gängigsten Provider im SharePoint Umfeld sind<br />

� SQL membership provider<br />

� AD membership provider<br />

� LDAP membership provider<br />

� Web Single Sign On (SSO) mit den Active Directory Federation Services (AD FS)<br />

Über das .Net Framework lassen sich für weitere Anwendungen und Dienste dem Provider<br />

Modell entsprechend programmieren.<br />

MOSS 2007 unterstützt auch die Authentisierung mittels Kerberos, sofern die Authentisierung<br />

gegenüber AD erfolgt.<br />

Die Nutzung dieser unterschiedlichen Möglichkeiten bringt für den Anwender, der sich<br />

korrekt authentisiert hat, keine funktionalen Einschränkungen innerhalb der SharePoint<br />

Umgebung, sofern diese nicht aufgrund der gesetzten Zugriffsrechte beabsichtigt sind.<br />

Allerdings bieten die verschiedenen Authentisierungsmethoden für die Authentisierung<br />

selbst unterschiedliche Funktionalitäten. So stehen zum Beispiel bei Nutzung eines<br />

OpenLDAP-Verzeichnisses nicht die Funktionalitäten eines Active Directory zur Verfügung.<br />

Welches Verfahren unter welchen Voraussetzungen das am besten geeignete ist,<br />

muss jede Organisation für sich entscheiden 343 . Bei der Entscheidung sollte sicherlich<br />

auch noch der folgende Abschnitt berücksichtigt werden.<br />

Verschlüsselung und Netzwerktopologie<br />

Mit Blick auf die Authentisierungsmethoden ist es möglich eine SharePoint Umgebung<br />

über die Netz- und Farmtopologie in verschiedene Sicherheitszonen (z.B. Intranet, Inter-<br />

341 http://www.setfocus.com/technicalarticles/nickkellett/MOSS2007-and-Novell-LDAP-<br />

Authentication_pg1.aspx<br />

342 http://msdn2.microsoft.com/en-us/library/aa479030.aspx<br />

343 Microsoft bietet auf den Webseiten zu folgendem Link Hilfestellungen an:<br />

http://technet.microsoft.com/en-us/library/cc263434.aspx<br />

Seite 368


netauftritt, Partner Web) aufzuteilen und für die verschiedenen Zonen z.B. unterschiedliche<br />

Authentisierungsmethoden mit unterschiedlichem Grad an Sicherheit zu verwenden.<br />

Die Idee dabei ist auch, Inhalte entsprechend in den unterschiedlichen Zonen mit unterschiedlichen<br />

Zugriffsrechten bereitzustellen. Weiterhin kann für jede Zone auch ein unterschiedlicher<br />

Umfang an Funktionalität zur Verfügung gestellt werden (z.B. für die Zone<br />

Internetauftritt nur eine eingeschränkte Suchfunktion).<br />

Zur Verschlüsselung der Datenübertragung zwischen den SharePoint Servern, den Servern<br />

und den Client-Geräten können IPSec und SSL verwendet werden.<br />

Sonstiges<br />

Problematisch ist, dass die volle Funktionalität nur genutzt werden kann, wenn aktive<br />

Inhalte zugelassen werden. Dies ist aus Sicht der IT-Sicherheit bedenklich. Hier sollten<br />

in jedem Fall die Hinweise des Bundesamt für Sicherheit in der Informationstechnik zur<br />

„Sicherheit im Internet― 344 , zum Umgang mit aktiven Inhalten 345 und zu Web 2.0 346 berücksichtigt<br />

werden.<br />

1.2.2 Funktionalitäten<br />

Den Funktionsumfang, den die Microsoft SharePoint Technologie bietet, wird von Microsoft<br />

347 im Allgemeinen wie folgt dargestellt (siehe Abbildung 46):<br />

Abbildung 46: Funktionalität von MOSS 2007<br />

344 http://www.bsi.de/fachthem/sinet/allgemeines/sinetstd.htm<br />

345 http://www.bsi.de/fachthem/sinet/gefahr/aktiveinhalte/index.htm<br />

346 http://www.bsi.de/literat/studien/web20/index.htm<br />

347 7TN25 Tech@Night Office 2007 und Office SharePoint Server 2007 Zusammenarbeit<br />

leicht gemacht http://live.sharepointcommunity.de/wiki/Wiki-Seiten/7TN25.aspx<br />

Seite 369


Die oben genannten Funktionen werden durch die verschiedenen SharePoint Editionen<br />

zum Teil oder komplett unterstützt. Die nachfolgende Abbildung stellt im Überblick dar,<br />

welche Funktionen durch welche Edition zur Verfügung gestellt werden. 348<br />

Office SharePoint<br />

Server Enterprise CAL<br />

Office SharePoint<br />

Server CAL<br />

Projektmgmt Team<br />

Zusammen-<br />

•Issue<br />

Tracking<br />

•Projekt<br />

Arbeitsbereichearbeit•Arbeitsbereiche<br />

und Tools<br />

•Blogs<br />

Workflow Dokument &<br />

Web Content<br />

Management<br />

•5 Workflows<br />

mitgeliefert<br />

•Reporting<br />

für ECM<br />

•Windows<br />

Workflow<br />

Foundation<br />

•Admin und<br />

Deployment<br />

•Status und<br />

Historie<br />

•Policy<br />

•Verwaltung<br />

•Auditing<br />

•Records<br />

Management<br />

•Web CM<br />

•Framework:<br />

Repository,<br />

<strong>Version</strong>ierung,<br />

Metadaten<br />

•Basis<br />

Dokumentenmanagement<br />

Site-Modell,<br />

Sicherheit<br />

und<br />

Verwaltung<br />

•Personalisierung<br />

•Deployment<br />

•Site Manager<br />

•Site und<br />

Rollenmanagement<br />

Infrastruktur<br />

Seite 370<br />

Search<br />

• Business<br />

Data<br />

Catalog<br />

•Erweiterbare<br />

und<br />

anpassbare<br />

Suche nach<br />

Unternehmens<br />

-daten und<br />

Personen<br />

•Textsuche<br />

in<br />

Teamsites<br />

Datenintegration<br />

•Business<br />

Data<br />

Catalog<br />

•Webpart<br />

Integration<br />

Abbildung 47: Funktionalitäten der verschiedenen SharePoint Editionen<br />

E-Forms Datenmanagement&<br />

•Verwaltung,<br />

Publishing,<br />

Prozess-<br />

Erzeugung<br />

und<br />

Abschluss<br />

Reporting<br />

Windows SharePoint<br />

Services**<br />

•Spreadsheet<br />

Publishing &<br />

Berechnung<br />

•Report<br />

Center<br />

**Included with Windows Server and CAL licenses<br />

Zum besseren Verständnis, der nachfolgenden Tabelle soll noch einmal auf Abbildung<br />

43 verwiesen werden, die deutlich macht, dass WSS <strong>3.0</strong> Bestandteil von MOSS ist und<br />

damit alle Funktionen, die durch WSS bereitgestellt werden auch durch MOSS bereitgestellt<br />

werden.<br />

Funktionsbereiche<br />

Services<br />

Web<br />

Content<br />

Services<br />

WSS MOSS Standard MOSS Enterprise<br />

� Zentrale Administration<br />

� Site Administration<br />

� Eingehende Emails<br />

� WSS Suche<br />

� WSS WebApplikation<br />

- -<br />

-<br />

Details<br />

� Publizieren<br />

� Content Verteilung<br />

� Variations<br />

(Mehrsprachigkeit)<br />

348 Die Abbildung 47 hat keinen Anspruch auf Vollständigkeit<br />

incl. incl.<br />

� EXCEL Service<br />

� InfoPath Forms Service<br />

� Business Data Catalog<br />

incl.


Funktionsbereiche<br />

Portal<br />

Services<br />

Features<br />

Website<br />

vorlagen<br />

Site<br />

Templates<br />

WSS MOSS Standard MOSS Enterprise<br />

� Mobility Shortcut URL<br />

� Team-Zusammenarbeitslisten<br />

� Standard Inhaltstyp<br />

Definitionen<br />

� Standard Feld -<br />

definitionen<br />

� Issue Tracking<br />

� Workflows<br />

� Ereignismeldungen<br />

(Alerts)<br />

� Diskussionen<br />

-<br />

� RSS Feeds<br />

� Daten Verbindung<br />

Bibliothek<br />

� Leere Website<br />

� Team Website<br />

� Dokument<br />

Arbeitsbereich<br />

� Wiki Website<br />

� Blog<br />

� Besprechung<br />

Arbeitsbereich<br />

� Profile<br />

Seite 371<br />

Details<br />

� Personalisierung<br />

� Zielgruppen<br />

� Dokumenten und<br />

Record Verwaltung<br />

� Office Suche<br />

� Dokument -<br />

konvertierungen<br />

� Dokumenten Center<br />

Erweiterungen<br />

� Übersetzungs-<br />

bibliotheken<br />

� Publizieren<br />

� „Out of the box―<br />

Workflows<br />

� Reporting<br />

- -<br />

� Berichts und<br />

Auswertungscenter<br />

� Dokumentencenter<br />

� Persönliche Site<br />

� Suchportal<br />

� Kollaborationsportal<br />

� Websiteverzeichnis<br />

� Content Management<br />

� Publizieren mit<br />

Workflow<br />

Tabelle 58: Produktfunktionsmatrix 349<br />

incl.<br />

incl.<br />

Office Enterprise:<br />

� Business Data<br />

Catalog<br />

� Forms services<br />

� Excel services<br />

� Key Performance<br />

Indikator und einige<br />

Business<br />

Intelligence Web Parts<br />

349 MS Press „Microsoft Office SharePoint Server 2007 Administrator's Companion‖<br />

incl.


1.2.2.1 Informationsstrukturen<br />

SharePoint Site Struktur<br />

Kern der Bereitstellung und Bearbeitung von Informationen in einer SharePoint Umgebung<br />

sind die sogenannten Site Collections. Eine Site Collection 350 ist eine Menge von<br />

logisch zusammenhängenden und hierarchisch angeordneten Sites mit gemeinsamer<br />

Administration. Jede Site Collection beinhaltet mindestens eine Site, die Site „auf höchster<br />

Ebene―, die sogenannte „top-level Web Site―. Darunter hängen die dazugehörigen<br />

Subsites. Für jede Site Collection gibt es eine eigene Administration, wodurch sie sich<br />

auch gut für eine verteilte Administration eignen und Mandantenfähigkeit unterstützen.<br />

Abbildung 48 veranschaulicht den grundlegenden Aufbau einer Site Collection.<br />

Site<br />

Collection<br />

Ausschnitt<br />

Ausschnitt<br />

Ausschnitt<br />

Feld 1 Feld 2 Feld 3 Feld 4<br />

Eintrag 1 ----- ----- ----- -----<br />

Eintrag 2 ----- ----- ----- -----<br />

Eintrag 3 ----- ----- ----- -----<br />

Eintrag 4 ----- ----- ----- -----<br />

Seite 372<br />

Felder<br />

Top-level<br />

Web Site<br />

Subsites<br />

Subsites<br />

Listeneinträge<br />

Listen<br />

Abbildung 48: Grundlegende SharePoint Site-Struktur<br />

Für jede Site Collection werden eigene Vorlagenkataloge bereitgestellt. Site Templates<br />

beziehungsweise Site Vorlagen definieren Webparts, Listen, Bibliotheken (Dokumentenbibliotheken,<br />

Bildbibliotheken usw.) Content Types (Inhaltstypen), Metadata, Workflow<br />

und so weiter. Eine Site beinhaltet dementsprechend eine Menge von Instanzen von<br />

Webparts, Listen, Bibliotheken und so weiter sowie einer administrativen Ebene, auf der<br />

man Berechtigung über Berechtigungsgruppen vergeben oder von der übergeordneten<br />

Site erben kann, sofern es sich um eine SubSite handelt.<br />

350 Könnte man frei übersetzen als Sammlung von Webangeboten im Sinne von Site = Website.<br />

Eine Übersetzung von Microsoft wurde nicht gefunden.


1.2.2.2 Metadaten<br />

Bevor Listen, Bibliotheken und so weiter zur Verwaltung, der gemeinsamen Bearbeitung<br />

oder dem Austausch von Dokumenten angelegt werden, steht die Definition der einzusetzenden<br />

Dokumenttypen, wie zum Beispiel Angebote, Verträge, Dokumentation. Das<br />

heißt, es sollten weitestgehend alle möglichen Dokumenttypen, die genutzt werden, vor<br />

der Inbetriebnahme einer SharePoint Umgebung (Collaboration Platform) definiert werden,<br />

um einen „Wildwuchs― von unkategorisierten Dokumenten, erzeugt oder importiert,<br />

zu verhindern. Hierzu werden in SharePoint, wie in vielen anderen Collaboration Plattformen<br />

Metadaten eingesetzt. Sie dienen zum einen als einheitliches Schlagwortsystem<br />

für das Filtern und die Suche und zum anderen fördern sie die Übersichtlichkeit über alle<br />

Dokumente und der darin enthaltenen Informationen.<br />

Metadaten werden im SharePoint entweder mittels sogenannter Content Types 351<br />

und/oder Site Columns definiert.<br />

Ein Content-Type definiert die Attribute eines Eintrags einer Liste, eines Dokument oder<br />

eines Ordners. Mit einem Content-Type können unter anderem folgende Spezifikationen<br />

vorgenommen werden:<br />

� Eigenschaften, die mit den Instanzen eines Typs verbunden werden<br />

� Workflows, die von Instanzen eines Typs ausgeführt werden können<br />

� Management Policies, die mit den Instanzen eines Typs verbunden werden<br />

� Dokumentenvorlagen für Dokument-Content-Typen<br />

� Benutzerdefinierte Funktionen.<br />

Content-Typen kann man mit einer Liste oder einer Bibliothek verbinden. In diesem Fall<br />

können diese Listen und Bibliotheken Instanzen dieses Typs aufnehmen und innerhalb<br />

der Liste oder der Bibliothek können entsprechende Instanzen erzeugt werden. Damit<br />

sind Content Types auch nur für jeweils die Informationsobjekte gültig, mit denen sie<br />

verbunden wurden. Bibliotheken können auch mehr als ein Content Type zugewiesen<br />

werden.<br />

Eine Site Column definiert die Attribute auf Ebene der Sites und ermöglicht damit zum<br />

einen, dass diese für die Definition von Content-Types verwendet werden können und<br />

zum anderen mehr Konsistenz in die Bezeichnung von Attributen zu bringen. Site Columns<br />

können auch einzelnen Dokumenten zugewiesen und sind dann nur in diesem<br />

wirksam.<br />

Werte definierter Attribute für Metadaten können über SharePoint Webseiten mittels<br />

Browser gelesen und bearbeitet werden, ohne gleichzeitig das Dokument öffnen zu<br />

müssen (siehe Abbildung 49) oder über einen der anderen Clients, wie zum Beispiel in<br />

Word (siehe Abbildung 50).<br />

351 Erst seit MOSS 2007 beziehungsweise WSS <strong>3.0</strong> verfügbar.<br />

Seite 373


Abbildung 49: Metadaten eines Dokumentes im Browser<br />

Die Metadaten werden, soweit es Microsoft Office Dokumente betrifft, in den einzelnen<br />

Dokumenten abgelegt, wie z.B. in Word-Dokumenten als Dokumenteneigenschaften. Zu<br />

anderen Dokumenten werden die Metadaten auf dem SharePoint abgelegt.<br />

Abbildung 50: Word 2007 (Datei --> Eigenschaften)<br />

Bestandsdokumente können nachträglich in eine SharePoint Umgebung, zum Beispiel in<br />

eine entsprechende Bibliothek hochgeladen werden. Zunächst besitzen sie dann den<br />

Standard Content Type „Document―. Anschließend kann man sie dann einem definierten<br />

Content Type zuordnen und die entsprechenden Metadaten eingeben. Eine automatisierte<br />

Übernahme von Bestandsdokumenten, die gegebenenfalls auch entsprechende<br />

Metadaten generiert oder übernimmt, wird nicht angeboten. Es bestehen die beiden<br />

Möglichkeiten, die weiter oben schon beschrieben wurden:<br />

� Hochladen der Dokumente über das Web-Interface<br />

� Verschieben oder Kopieren der Dokumente, z.B. mit Hilfe des Dateimanagers in<br />

die entsprechenden WebDAV-Ordner<br />

In beiden Fällen erfolgt kein Mapping beziehungsweise eine automatische Übernahme<br />

von Metadaten, diese müssen anschließend manuell eingegeben werden. Ob es hierfür<br />

Werkzeuge von Drittherstellern gibt, ist nicht bekannt.<br />

Seite 374


Zusammenfassend lässt sich festhalten, dass Content Types in nachfolgenden Bereichen<br />

Einfluss haben:<br />

� Dokument Vorlagen<br />

Beim Erstellen eines Content Type wird definiert, von welcher Dokumenten Vorlage<br />

er erbt. Ein Content Typ muss nicht von einer Dokumenten Vorlage erben,<br />

sondern er kann auch von Listen oder Bibliotheken erben.<br />

� Metadaten<br />

Attribute für Metadaten können über Content Types definiert und Listen und Bibliotheken<br />

zugeordnet werden.<br />

� Workflow<br />

Einem Content Typen kann ein Workflow zugeordnet werden.<br />

� Custom Forms<br />

Die voreingestellten „Edit―, „View― und „New― Masken können durch eigene ausgetauscht<br />

werden<br />

� Information Policy<br />

Einem Content Type können Regeln zugewiesen werden wie zum Beispiel<br />

Drucklabel, zu protokollierende Ereignisse, Ablaufdatum und ein Dokumentbarcode.<br />

1.2.2.3 Workflows mit SharePoint<br />

„Out of the box― Workflows<br />

Mit MOSS 2007 (nicht in den WSS) werden bereits einige vorgefertigte Workflows mitgeliefert<br />

352 , die bereits einige Basisanforderungen abbilden:<br />

� Genehmigung (Approval) 353<br />

Mit diesem Workflow soll für ein Dokument oder einen Listeneintrag die<br />

Genehmigung zur Freigabe eingeholt werden. In diesem Prozess kann der<br />

Freigabe zugestimmt, sie kann abgelehnt oder es kann eine Änderung des<br />

Dokumentes oder des Listeneintrages gefordert werden.<br />

� Feedback sammeln (Collect Feedback)<br />

Mit diesem Workflow soll für ein Dokument ein Feedback von anderen Teammitgliedern<br />

eingeholt werden. Der Workflow ist dann abgeschlossen, wenn von jedem<br />

aufgeforderten Teammitglied ein Feedback zu dem Dokument eingegangen ist.<br />

352 Integrierte Workflows in MOSS 2007<br />

http://blogs.msdn.com/sharepoint/archive/2006/06/07/introduction-to-sharepointworkflow.aspx<br />

http://weblogs.mysharepoint.de/fabianm/archive/2006/08/21/Workflows-in-SharePoint-<br />

2007-_2800_Teil-2_3A00_-Integrierte-SharePoint-Server-Workflows_2900_.aspx<br />

353 Bei den Begriffen in Klammern handelt es sich um die Originalbezeichnungen der engli-<br />

schen <strong>Version</strong>.<br />

Seite 375


� Signaturen sammeln (Collect Signatures)<br />

Diesen Workflow kann man auch als Mitzeichnungsprozess beschreiben. Hiermit<br />

kann man für ein Dokument digitale Unterschriften (Signaturen) einholen. Der<br />

Workflow erstellt dazu entsprechende Tasks für jede Person, die unterzeichnen<br />

soll. Wenn die E-Mail-Funktionalität des SharePoint aktiviert ist kann der<br />

Workflow auch eine Mail zu jedem Betroffenen senden mit einem entsprechenden<br />

Hinweis. Dieser Workflow kann laut Microsoft 354 nur aus einer MS Office<br />

2007 Anwendung (Word oder Excel) heraus gestartet und nur mit einem solchen<br />

Client auch unterzeichnet werden 355 .<br />

� Dispositionsgenehmigung (Disposition Approval)<br />

Dieser Workflow kann eingesetzt werden, um Dokumente einer Bibliothek, die<br />

nicht mehr gültig sind, nach Einholung einer Genehmigung zu entfernen. Wenn<br />

ein Dokument nicht mehr gültig ist, wird eine Genehmigung zum Löschen<br />

angefordert. Wird diese abgelehnt, verbleibt das Dokument in der Bibliothek.<br />

� Gruppengenehmigung (Group Approval)<br />

Dieser Workflow realisiert der Genehmigung einer Freigabe durch eine Gruppe<br />

von Personen. Der Workflow ist im Wesentlichen identisch zu der oben beschriebenen<br />

einfachen Freigabe. Die Unterschiede liegen zum einen darin, dass die<br />

Freigabe durch mehrere Personen erfolgen muss und weiterhin, dass er nur von<br />

einer speziellen Dokumentenbibliothek bereitgestellt wird. Diese Bibliothek<br />

integriert zusätzliche Sichten für den Status des Workflows und liefert zudem ein<br />

Organisationsdiagramm, über das Personen für die Genehmigung ausgewählt<br />

werden können.<br />

� Übersetzungsverwaltung (Translation Management)<br />

Mit diesem Workflow kann die Übersetzungsaufgabe eines Dokuments gesteuert<br />

werden. Hierbei werden von dem zu übersetzenden Dokument Kopien erzeugt<br />

und an die für die Übersetzung zuständigen Personen verteilt, die für die Übersetzung<br />

von einzelnen Teilen zuständig sind. Dieser Workflow kann nur in einer<br />

sogenannten „Translation Management Library― verwendet werden.<br />

� Problemverfolgung (Three State)<br />

Das Tracking von Problemen und Anfragen wird über diesen Workflow unterstützt.<br />

Der Workflow erstellt eine Aufgabe für aktuelle Probleme und Anfragen, die<br />

einem bestimmten Benutzer zur Bearbeitung zugewiesen sind.<br />

Einfache sequenzielle Workflows, die auf Basis schon definierter Aktivitäten aufgebaut<br />

werden, können mit Hilfe des kostenpflichtigen SharePoint Designers erstellt werden.<br />

Wie auf Abbildung 51 zu sehen ist, kann man mit dem SharePoint Designer die einzelnen<br />

Schritte (Steps) eines Workflows festlegen. Diese Schritte bestehen aus Aktionen<br />

(Actions) und dazugehörige Bedingungen (Conditions). Die einzelnen Schritte werden<br />

dann in der definierten Reihenfolge ausgeführt. Ein definierter Workflow wird in einfacher<br />

Weise, wie sie in Abbildung 51 zu sehen ist, dargestellt. In der rechten Spalte sind die<br />

354 http://office.microsoft.com/en-us/sharepointserver/HA101544281033.aspx<br />

355 Der Workflow wird auf der folgenden Webseite im Detail beschrieben:<br />

http://office.microsoft.com/en-us/sharepointserver/HA101544281033.aspx<br />

Seite 376


einzelnen Schritte des Workflows zu sehen, die von oben nach unten durchgeführt werden.<br />

Im linken Teilfenster sind die einzelnen Aktionen eines einzelnen Schrittes zu sehen.<br />

Hier können sie auch definiert und verändert werden. Es besteht keine Möglichkeit<br />

einzelne Aktionen oder Bedingungen selbst zu programmieren, hierfür werden andere<br />

Entwicklungsprodukte benötigt.<br />

Abbildung 51: Workflow Tool - SharePoint Designer<br />

Für die Entwicklung eigener und komplexerer Workflows werden folgende weitere Softwarepakete<br />

benötigt:<br />

� Visual Studio 2005/2008 als Entwicklungsumgebung (siehe Abbildung 52)<br />

� Visual Studio Erweiterungen für Windows SharePoint Services <strong>3.0</strong> (z.B. zum<br />

Entwickeln von Web Parts)<br />

� Visual Studio Erweiterungen für das .NET Framework <strong>3.0</strong> (z.B. für Workflows)<br />

� Visual Studio Tools für Office Second Edition [VSTO 2005 SE]<br />

(z.B. InfoPath Formular basierte Workflows)<br />

Alle vorgenannten Softwarepakete sind kostenpflichtig.<br />

Seite 377


Abbildung 52: Workflow Entwicklung mit Visual Studio<br />

1.2.2.4 Integration von Microsoft Office 2007 Anwendungen<br />

Die SharePoint Produkte zählen bei Microsoft zur Office 2007 Familie, daher fügen sich<br />

alle Office 2007 Produkte nahezu nahtlos in die SharePoint Umgebung ein.<br />

Nachfolgend wird für eine Reihe von diesen Office 2007 Anwendungen aufgezeigt, welche<br />

Funktionszusammenhänge sowohl in die eine wie auch die andere Richtung gegeben<br />

sind:<br />

Word 2007 / Excel 2007 / PowerPoint 2007<br />

� Die Bearbeitung der Metadaten ist über den Dokument-Eigenschaften-Dialog<br />

möglich, die Dateneingabe kann auf Wunsch auch erzwungen werden (siehe Abbildung<br />

50).<br />

� Office Dokumente in einer SharePoint Bibliothek können direkt in Office geöffnet<br />

werden, dies gilt auch für Office 2003. Dies wird über die Zuordnung von Dateitypen<br />

sichergestellt.<br />

� Die Nutzung von Workflows ist in der Benutzerschnittstelle als Menüpunkt eingebettet.<br />

Das heißt, es gibt einen Menüpunkt über welchen ein Workflow ausgewählt<br />

und gestartet werden kann.<br />

� Die Anzeige des Dokumentenzustand, ob z.B. ein Dokument „ein- oder ausgecheckt―<br />

ist, ist ebenfalls in die Benutzerschnittstelle integriert. Ebenso die Möglichkeit<br />

der Nutzung der entsprechenden Funktionen Check-In und Check-Out<br />

über einen Menüpunkt.<br />

Seite 378


� Das Anzeigen aller verfügbaren <strong>Version</strong>en eines Dokumentes, sofern die <strong>Version</strong>sverwaltung<br />

aktiviert wurde sowie das Wiederherstellen älterer <strong>Version</strong>en werden<br />

unterstützt.<br />

Word 2007<br />

� Word hat zusätzlich die Möglichkeit, die aktuelle <strong>Version</strong> mit einer anderen <strong>Version</strong><br />

zu vergleichen, ähnlich wie beim Zusammenführen zweier Dokumente.<br />

� Blogeinträge können direkt aus Word im SharePoint angelegt werden. Dabei wird<br />

auf der Blog-Webseite unter den „Administratorenhyperlinks" auf „Blogprogramm<br />

für Beitrag starten" geklickt. Anschließend wird Word gestartet und ein eigenes<br />

Ribbon 356 zum Erstellen von Blog-Einträgen angeboten.<br />

� Inhalte für Webseiten können erstellt und veröffentlicht werden (Funktion wie<br />

vor).<br />

Excel 2007<br />

Access 2007<br />

Mit der MOSS EE Edition werden auch so genannte Excel Services angeboten.<br />

Hierbei handelt es sich um eine serverseitige Bereitstellung von Excel als eigener<br />

Dienst, mit welchem Exceltabellen erstellt werden können. Die Excel Services:<br />

o verfügen über den gleichen Funktionsumfang wie die Office-Anwendung<br />

Excel 2007 mit Formeln, Makros und so weiter und<br />

o sie dienen vor allem der serverseitigen Erstellung von Exceltabellen und<br />

deren Aufbereitung (Rendern) für die Darstellung im Browser.<br />

� Erstellen von umfangreichen Auswertungen von SharePoint Listen in PDF/XPS<br />

und anderen Formaten.<br />

� Zentralisierung der Datenspeicherung in SharePoint Listen, das heißt die Darstellung<br />

von Access-Dateien (.mdb) in Listen. Das bedeutet, dass auch Access-<br />

Dateien (.mdb) in SharePoint verwaltet und versioniert werden können.<br />

Outlook 2007<br />

� SharePoint Kalender (persönliche und Gruppenkalender) können in Outlook integriert<br />

werden, dabei können sie dann auch mit jedem Ausführen von Senden/Empfangen<br />

Events synchronisiert werden.<br />

� SharePoint Kalender lassen sich als HTML-Email an beliebige Empfänger versenden.<br />

� SharePoint Dokumente, Dokumentenbibliotheken und Ordner, die mit Outlook<br />

verknüpft sind, werden wie die Aufgaben synchronisiert und stehen somit auch<br />

offline zur Verfügung (auch zum Bearbeiten).<br />

� Aufgaben und Workflows können direkt aus Outlook heraus genehmigt werden.<br />

356 Mit dem Schlagwort „Ribbon― bezeichnet Microsoft die neuen Symbolleisten, die zwar immer<br />

noch viele Einzelfunktionen umfassen, jetzt aber übersichtlich in thematischen Gruppen<br />

angeordnet sind.<br />

Seite 379


� Der Einsatz des Records Management für Emails 357 (Voraussetzung: Exchange<br />

2007) mit der Integration in das SharePoint Records Management<br />

Ein „Record‖ ist im Sinne von SharePoint eine elektronisch verfügbare<br />

Information (z.B. ein Dokument), die als Beweis einer Aktivität oder Transaktion<br />

der Organisation gilt und die über einen gewissen Zeitraum aufbewahrt werden<br />

muss. Mit Hilfe des Records Management (frei übersetzt: „Aktenführung― oder<br />

„Schriftgutverwaltung―) kann eine Organisation vor allem:<br />

o Festlegen,<br />

� welche Informationen als „Record― in Betracht kommen,<br />

� wie aktive noch in Arbeit befindliche zukünftige „Records― behandelt<br />

und gesammelt werden, sobald sie „Record― sind und<br />

� wie und für wie lange jeder einzelne „Record―-Typ aufgehoben<br />

werden soll.<br />

o Records-bezogene Aufgaben erledigen, wie das Löschen abgelaufener<br />

„Records― sowie das Auffinden und Sichern von „Records―.<br />

� SharePoint Inhalte stehen auch als RSS Feeds zur Verfügung und können mit<br />

dem Outlook- RSS Reader abonniert werden<br />

OneNote 2007<br />

Es ist möglich, OneNote Notizbücher zur gemeinsamen Bearbeitung in Share-<br />

Point Bibliotheken bereitzustellen.<br />

InfoPath 2007<br />

� InfoPath Formulare können mit den SharePoint Forms Services (MOSS EE) veröffentlicht<br />

werden, wodurch sie Browser-fähig und dadurch auch mit mobilen<br />

Endgeräten nutzbar werden.<br />

� InfoPath Formulare können als Email an Outlook 2007 Postfächer versendet<br />

werden, wobei die Formular Ergebnisse in SharePoint Bibliotheken gespeichert<br />

werden können<br />

Office Communicator 2007 (Client für Office Communications Server 2007 [OCS])<br />

Sobald der Anwender im Communicator aktiv ist, wird seine Verfügbarkeit auch<br />

im SharePoint angezeigt (z.B. an Dokumenten, die durch den Anwender verändert<br />

wurden).<br />

1.2.2.5 Entwicklungswerkzeuge<br />

Es stehen im Wesentlichen drei Varianten bereit, um den SharePoint für bestimmte Aufgaben<br />

anzupassen oder ein Erscheinungsbild zu verändern: Die Weboberfläche im SharePoint<br />

selbst, der SharePoint Designer 2007, der eine Weiterentwicklung von Frontpage<br />

darstellt und Visual Studio 2005/2008 (VS) mit den SharePoint <strong>3.0</strong> Erweiterungen.<br />

357 http://download.microsoft.com/download/c/c/1/cc12d85c-4043-41a0-9528eb553785d5d8/Launch%20MOSS%20Dokumentenmanagement,%20Enterprise%20Conte<br />

nt%20Management%20und%20Records%20Management.pdf<br />

Seite 380


Der SharePoint Designer bietet Möglichkeiten zum Erstellen und Verwalten von Workflows<br />

sowie das Bearbeiten von Webseiten. Kompatibilitätsprüfungen zu Standards wie<br />

Barrierefreiheit, CSS und (X)HTML werden ebenfalls unterstützt. Der SharePoint Designer<br />

kann auch ohne SharePoint, nur für die Webseiten Entwicklung eingesetzt werden.<br />

Der SharePoint Designer ist für einfache Aufgaben, die Gestaltung des SharePoints und<br />

einfache Workflows ausreichend. Sobald jedoch umfangreichere und komplexere Entwicklungen,<br />

wie zum Beispiel im Bereich Workflows, anstehen, ist es notwendig, die<br />

Entwicklungsumgebung Microsoft Visual Studio 2005/2008 einzusetzen.<br />

Erweiterungen für VS im SharePoint Umfeld:<br />

� VS Erweiterungen für Windows SharePoint Services <strong>3.0</strong> (z.B. zum Entwickeln<br />

von Web Parts)<br />

� VS Erweiterungen für das .NET Framework <strong>3.0</strong> (z.B. für Workflows)<br />

� VS Tools für Office Second Edition [VSTO 2005 SE] (z.B. InfoPath Formular basierte<br />

Workflows)<br />

� Voraussetzung für den Einsatz der Erweiterungen ist die Installation der erforderlichen<br />

Frameworks.<br />

� .NET Framework 2.0 ( die aktuelle <strong>Version</strong> für den SharePoint)<br />

� .NET Framework <strong>3.0</strong> (enthält unter anderem die Windows Workflow Foundation<br />

und die Windows Communication Foundation)<br />

Da SharePoint selbst auf ASP.NET 2.0 basiert, ist es erforderlich, sich in diesem Umfeld<br />

gut auszukennen. XML Schemata bilden die Konfigurationsgrundlage für viele Objekte<br />

im SharePoint, wie zum Beispiel Sites, Content Types, Bibliotheken. Eine besondere<br />

XML Ausprägung stellt die von Microsoft für SharePoint ab <strong>Version</strong> 3 definierte „Collaborative<br />

Application Markup Language (CAML) dar, die in vielen der genannten Objekt<br />

Schemata zum Tragen kommt.<br />

Hier sei anzumerken das sowohl für den SharePoint Designer als auch für Visual<br />

Studio und abhängig von der VS Lizenz auch für die Erweiterungen Lizenzkosten anfallen!<br />

1.2.3 Fazit<br />

SharePoint hat ein großes Potential, mit maßgeschneiderten Lösungen Prozesse zu<br />

unterstützen. Die Plattform ist ein Baukasten, aus dem man gut individuelle Lösungen<br />

zusammenstellen kann. Viele Funktionalitäten werden bereits mitgeliefert, fehlende können<br />

relativ leicht programmiert und implementiert werden. Aber auch nicht benötigte<br />

Funktionalitäten können deaktiviert werden.<br />

Die Kehrseite von Vielseitigkeit und Flexibilität: ein relativ hoher Aufwand bei der<br />

Implementierung. SharePoint ist keine Applikation, die man als fertiges Programm<br />

installiert und dann sofort in Betrieb gehen kann. Eine umfangreiche Planung im Vorfeld<br />

der Implementierung ist auf jeden Fall anzuraten, um die technischen Möglichkeiten<br />

auch effektiv nutzen zu können.<br />

Seite 381


Für den Einstieg in die Welt der Kollaborations-Portale und Workflows gibt es mit WSS<br />

eine günstige Variante für die aktuelle Windows Server Plattform, sofern man diese auch<br />

losgelöst vom Kollaborationsthema einsetzt und damit WSS gleich mit lizenziert hat. Sobald<br />

jedoch Enterprise Funktionen benötigt werden, fallen weitere erhebliche Lizenzkosten<br />

an, die vor dem Einsatz auf ihre Notwendigkeit überprüft werden sollten. Weitere<br />

Kosten fallen an, wenn man auch noch Funktionalitäten der Echtzeitkollaboration (z.B.<br />

Instant Messaging, Web-Meetings usw.) nutzen möchte. Hierzu wird der Office Communicator<br />

2007 benötigt.<br />

Ein Vor- sowie Nachteil dieses Produktes liegt jedoch in seiner starken Integration anderer<br />

Microsoft Office Produkte und der damit verbundenen Plattformabhängigkeit.<br />

Zu bemängeln ist vor allem die Tatsache, dass die volle Funktionsfähigkeit nur durch die<br />

Zulassung und den Einsatz von aktiven Inhalten genutzt werden kann. Hierdurch muss<br />

man gegebenenfalls auch Einschränkungen bezüglich der Sicherheit hinnehmen. Die<br />

Verantwortlichen in den Organisationen werden also vor die Entscheidung gestellt: volle<br />

Funktionalität oder volle Sicherheit.<br />

1.3 O3Spaces Workplace 2<br />

Die junge Firma O3 Spaces B.V. entstand 2005 in den Niederlanden im Umfeld der Innovationen<br />

um die Ideen, die um das Marketingschlagwort Web 2.0 geboren wurden. Es<br />

war zunächst das Ziel, eine webbasierte Ergänzung zu verschiedenen Officeplattformen<br />

zu implementieren. Aufgrund der guten Dokumentation und lizenzfreien Verwendbarkeit<br />

von OpenOffice.org und dem offenen ODF Dokumentenformat konzentrierte sich die<br />

Entwicklung bald auf ebendiese Themen. Kundenreaktionen bekräftigten die Gründer in<br />

ihrer Entscheidung, sodass die junge Firma ihre Bemühungen auf die Entwicklung einer<br />

Collaboration-Software konzentrierte, die eng mit OpenOffice.org verknüpft ist. Das Ergebnis<br />

ist O3Spaces Workplace, welches 2007 in der <strong>Version</strong> 2.2 veröffentlich worden<br />

ist. Es handelt sich dabei um eine Collaboration Anwendung mit direkter Integration in<br />

OpenOffice.org und der Möglichkeit, über verschiedene Plattformen hinweg auch unter<br />

Berücksichtigung von Microsoft Office, in Teams zusammenzuarbeiten.<br />

O3Spaces Workplace steht in drei Lizenzversionen / Editionen zur Verfügung:<br />

� O3Spaces Workplace Professional Edition<br />

Diese <strong>Version</strong> ist für Organisationen entwickelt worden, die OpenOffice.org oder<br />

StarOffice verwenden. Auf Subscriptionsbasis werden Lizenz, Support und Updates<br />

in einem Paket verkauft. Für Testzwecke ist die Professional Edition kostenlos<br />

verfügbar.<br />

� O3Spaces Workplace On Demand Edition<br />

Die On Demand Edition ist als SAAS (Software As A Service) Lösung ad hoc<br />

verwendbar. Die Serveranwendung und die darauf gespeicherten Daten werden<br />

in diesem Fall vom Anbieter auf dessen Server gehostet und nur die Clientsoftware<br />

muss vom Kunden installiert werden. Diese Lösung bietet sich als verwaltungsarme<br />

Möglichkeit an, kurzfristig und über das Internet gut erreichbare Gruppenarbeit<br />

über Workplace 2.2 zu organisieren. Hierbei werden die Daten jedoch<br />

beim Anbieter gespeichert, wodurch die Datensicherheit in dessen Händen liegt.<br />

Seite 382


� O3Spaces Workplace Community Edition<br />

Die Community Edition ist eine kostenlose Edition, die allerdings auf zehn Benutzer<br />

beschränkt ist.<br />

Hierbei handelt es sich um proprietäre Software. Der Hersteller plant in naher Zukunft<br />

eine quelloffene Variante von Workplace unter GPL bereit zu stellen.<br />

Für das dritte Quartal 2008 wird vom Hersteller eine Programmierschnittstelle (API) angekündigt,<br />

mit der es auch für Dritte möglich sein soll Erweiterungen für Workplace zu<br />

erstellen.<br />

1.3.1 Technologie / Architektur<br />

1.3.1.1 Architektur<br />

Workplace 2.2 ist eine Serveranwendung mit verschiedenen Clients. Der Server speichert<br />

sämtliche zentral benötigten Informationen, Metadaten sowie Dokumente und stellt<br />

diese über verschiedene Schnittstellen durch ein Webinterface oder über verschiedene<br />

Plugins lokalen Officeanwendungen und auf einem lokalen Desktop zur Verfügung.<br />

Der Server wurde als Javaanwendung in Servlets auf einem J2EE Application Server<br />

(Apache Tomcat) implementiert. Sämtliche Metadaten und <strong>Version</strong>sinformationen werden<br />

in einer PostgreSQL Datenbank gespeichert und verwaltet. Dokumente werden unkompliziert<br />

in einem Dateisystem abgelegt, während der Document Store die <strong>Version</strong>ierung<br />

und eine grundlegende Dokumentenverwaltung und Volltextsuche ermöglicht. Die<br />

Benutzerverwaltung und der Verzeichniszugriff stehen über LDAP-Server-<br />

Synchronization zur Verfügung.<br />

Das Repository für die Dokument Management Funktionalität ist sowohl als WebDAV<br />

erreichbar, sodass mit Webbrowsern einfach darauf zugegriffen werden kann, als auch<br />

über eine eigenständige Workplace API, die Programmierern in naher Zukunft zur einfachen<br />

Erweiterung des Funktionsumfangs zur Verfügung stehen wird und bereits von den<br />

optionalen Plugins verwendet wird.<br />

Plugins existieren für OpenOffice.org, StarOffice und MS Office. Die Plugins ermöglichen<br />

den Zugriff auf die Repositories und auf grundlegende Document Management Funktionen<br />

direkt aus den Officeanwendungen heraus. Die Plugins greifen auf die Workplace<br />

API zurück und wurden mit Hilfe von UNO beziehungsweise im Fall des MS Office Plugins<br />

als .NET Anwendung programmiert.<br />

Über das OSGi-Framework ist es möglich, Module und Erweiterungen zu programmieren,<br />

die die Funktionalität von Workplace erweitern. Das OSGi ist ein Befehlsinterpreter,<br />

über den Systemaufrufe direkt an die Anwendung übergeben werden<br />

können. Eine Kommandozeile erlaubt zusätzlich direkte Aufrufe während der Laufzeit.<br />

Über dieses bereits vorhandene OSGi Studio command interface können einfache<br />

Funktionen wie zum Beispiel die Deaktivierung von Systemmeldungen an einen<br />

bestimmten Benutzer schnell realisiert werden. Eine Beschreibung des OSGi Command<br />

Line interfaces ist in der Basis der Admin Dokumentation verfügbar.<br />

Das Repository ist zudem über den Workplace Assistant erreichbar. Der Workplace<br />

Assistent ist eine Java Applikation, die verschiedene Funktionen von O3Spaces<br />

Seite 383


Workplace direkt in den Desktop integriert, sodass Echtzeitinformationen und zentrale<br />

Dateien ohne offene Webbrowser oder Officeanwendungen einsehbar sind. Der Workplace<br />

Assistent erscheint dabei als Symbol in der Taskleiste und bietet über ein Pop-Up<br />

Menü die Möglichkeit, gesperrte Dateien zu verwalten, sich an verschiedene Workspaces<br />

anzumelden und RSS Feeds über Änderungen in Workspaces zu lesen.<br />

Das Standardwerkzeug für den Zugriff auf die Funktionen von Workplace 2.2 ist jedoch<br />

ein aktueller Webbrowser wie Firefox 2 oder Internet Explorer 7 mit Unterstützung von<br />

Ajax.<br />

Somit stehen drei Clientkomponenten für Workplace 2.2 zur Wahl:<br />

� Workplace, das zentrale, graphische Webfrontend, über das sämtliche Funktionen<br />

und die Administration stattfinden,<br />

� Workplace Assistant, eine javabasierte Desktopintegration sowie<br />

� Office Suite Plugging für OpenOffice.org und Microsoft Office.<br />

1.3.1.2 Protokolle und Schnittstellen<br />

Die verschiedenen Komponenten und Dienste von Workplace 2.2 kommunizieren überwiegend<br />

durch dokumentierte Standardschnittstellen. Benutzer und Benutzergruppen<br />

können über LDAP importiert werden. Es werden hierzu diverse Dienste unterstützt,<br />

darunter OpenLDAP, Active Directory, Sun Directory Server und Novell Directory Server.<br />

Für die Installation stehen Installer für Microsoft Windows und Debian Linux bereit. Weitere<br />

Installationspakete stehen als RPM (RedHat, Suse, Mandriva) und ein VMware Image<br />

zur Verfügung.<br />

Auf Clientseite wird lediglich eine Java Laufzeitumgebung ab <strong>Version</strong> 1.5 und ein Webbrowser<br />

(z.B. Internet Explorer 7, Firefox 2 oder Mozilla) vorausgesetzt.<br />

Office Suite Plugins existieren für OpenOffice.org ab <strong>Version</strong> 2.0.4, für StarOffice ab<br />

<strong>Version</strong> 8 / Update 5 und für MS Office XP/2003/2007. Bei einer Installation unter Microsoft<br />

Windows wird das .NET Framework ab <strong>Version</strong> 2.0 benötigt.<br />

Für die Installation des Servers wird eine Java Laufzeitumgebung ab <strong>Version</strong> 1.5 benötigt<br />

und der Port 8095 darf nicht belegt sein.<br />

O3Spaces Workplace lässt sich unter Microsoft Windows, verschiedenen Linuxderivaten<br />

und Solaris installieren. Plugins stehen für OpenOffice.org, StarOffice und Microsoft<br />

Office bereit. Die Desktopintegration wird ebenfalls für Microsoft Windows, Solaris und<br />

Linux angeboten. Die Integration in die Taskleiste wird hierbei jedoch ausschließlich<br />

unter Microsoft Windows unterstützt. Der Assistent kann in OpenOffice.org und<br />

StarOffice über einen Pull-Down Menüeintrag „Workplace" gestartet werden.<br />

1.3.1.3 Sicherheitsaspekte<br />

Die Verbindungen zwischen Client und Server lassen sich per SSL verschlüsseln, wobei<br />

der Zugriff über unverschlüsseltes HTTP durch verschiedene Mittel begrenzt oder ausgeschlossen<br />

werden kann. Zusätzlich ist die Integration des gesamten Dienstes in ein<br />

VPN problemlos möglich.<br />

Seite 384


Das Repository liegt unverschlüsselt auf dem Server und ist lediglich durch Zugriffsrechte<br />

auf Anwendungs- und Systemebene geschützt.<br />

Die Zugriffskontrolle innerhalb der Anwendung erfolgt auf Benutzerebene und kann auf<br />

der Stufe einzelner Workplaces oder einzelner Ordner für jeden Benutzer definiert werden.<br />

Die IP-Adresse von Clientsystemen wird als Metainformation gespeichert und kann bei<br />

nicht dynamisch vergebenen IP-Adressen als zusätzliches Zugriffs- und Sicherheitskriterium<br />

genutzt werden, indem der Zugriff auf bestimmte Netzbereiche und IPs beschränkt<br />

wird.<br />

Ein Großteil der Funktionalität von O3Spaces Workplace 2.2 wird über das Webfrontend<br />

bereitgestellt. Bezüglich der dort verwendeten aktiven, dynamischen Inhalte wird technologisch<br />

auf Ajax zurückgegriffen. In diesem Kontext sollten bei der Installation, Konfiguration<br />

und im Betrieb besondere Sicherheitshinweise des BSI zu Web 2.0 Berücksichtigung<br />

finden. Diese sind in Form einer Studie auf den Webseiten des BSI zu finden und<br />

können von dort heruntergeladen werden 358 .<br />

1.3.2 Funktionalitäten<br />

O3Spaces Workplace 2.2 bietet verschiedene Werkzeuge zur Koordination von kleinen<br />

und größeren Arbeitsgruppen mit einer Dokumentenverwaltung und -versionierung.<br />

Sämtliche Funktionen der Applikationen werden auf der Weboberfläche Workplace abgebildet.<br />

Benutzer authentifizieren sich über eine sichere Verbindung gegenüber der<br />

Applikation und erhalten so Zugang. Hierbei handelt es sich um kein Standardverfahren,<br />

sondern um eine proprietäre Lösung.<br />

Projekte werden innerhalb der Anwendung als sogenannte Workspaces angelegt. Jedes<br />

Workspace verfügt über eine eigene Aufgabenstruktur und ein Dateiarchiv. Zur Definition<br />

eines Workspaces können zusätzlich projektspezifische Templates festgelegt werden,<br />

die als Spacelets bezeichnet werden. Spacelets können bestimmte Dateien beinhalten,<br />

Terminlisten, Verweise auf Forendiskussionen oder einen besonderen Projektkalender.<br />

Dies erleichtert die Verwaltung komplexer Projekte, an denen verschiedene Teams gemeinsam<br />

arbeiten.<br />

Innerhalb eines Workspaces erhält ein Benutzer Zugang zu projektbezogenen Diskussionsforen<br />

und Dateiablagen. Benutzer können auch verschiedene Workspaces parallel<br />

öffnen und über eine Tabdarstellung zwischen ihnen wechseln. Diese Flexibilität macht<br />

Workplace auch für umfangreichere Projekte mit verschiedenen Arbeitsgruppen, in denen<br />

Mitarbeiter verschiedene Aufgaben übernehmen, interessant.<br />

Die Ansicht innerhalb eines Workspaces wird über frei definierbare oder vorgegebene<br />

Spacelets festgelegt. Ein Spacelet kann zum Beispiel eine Kalenderdarstellung repräsentieren,<br />

während ein weiteres Spacelet die Dateiverwaltung anzeigt. Spacelets werden<br />

innerhalb des Webinterfaces als Fenster erstellt und mit entsprechenden Funktionen<br />

konfiguriert.<br />

358 http://www.bsi.de/literat/studien/web20/<br />

Seite 385


Der Workplace Assistant auf dem Desktop bietet eine zu den Office-Plugins separate<br />

Möglichkeit, Dokumente zu sperren, falls lokal an ihnen gearbeitet wird. Nach der Anmeldung<br />

können auch darin Workspaces ausgewählt werden, wonach zusätzlich Meldungen<br />

in Echtzeit auf dem Desktop erscheinen, die Änderungen und Sperrungen an<br />

Dokumenten durch andere Gruppenmitglieder melden.<br />

Die Office-Plugins für OpenOffice und StarOffice greifen zusätzlich auf ein Template<br />

Management Module zu, das ein projektspezifisches Templatearchiv darstellt. Somit<br />

können neue Officedokumente direkt aus angepassten Templates erstellt werden (siehe<br />

Abbildung 53).<br />

Abbildung 53: Template Management Module<br />

Workplace bietet für jeden Workspace eine separate Dokument Management Funktionalität.<br />

Dateien, die über das Webinterface oder die Plugins geöffnet, erstellt oder modifiziert<br />

werden, werden automatisch versioniert und archiviert. Dies betrifft alle möglichen<br />

Dateiformate und beinhaltet Zeitstempel und Angaben über Benutzer und optionale<br />

Kommentare. Herkömmliche Officeformate aus dem Microsoft Office, StarOffice und aus<br />

OpenOffice.org werden zusätzlich indexiert, sodass sie mit der Volltextsuche von Workplace<br />

auffindbar sind.<br />

Eine Besonderheit von O3Spaces Workplace sind die Office Suite Plugins für Open-<br />

Office.org und Microsoft Office. Sie realisieren eine starke Integration der Workplace<br />

Funktionen und erscheinen innerhalb der Officeanwendung als eigene Symbole.<br />

Hierüber ist es möglich, Dokumente direkt aus den Repositories heraus zu laden und<br />

wieder auf dem Server zu speichern, ohne eine lokale Zwischenspeicherung, manuelle<br />

Sperrung und nachträgliche Veröffentlichung über Clients oder die Weboberfläche<br />

durchführen zu müssen. Die so gespeicherten Dokumente werden ebenfalls automatisch<br />

versioniert oder gesperrt und entsprechende Meldungen werden auf angemeldeten<br />

Clients verteilt.<br />

Seite 386


Das Repository eines Workspaces kann nach diversen Kriterien (Datum, Benutzer, usw.)<br />

und durch Volltextsuche (ODF, PDF und MS Dokumentenformate) durchsucht werden.<br />

Alle Clients sind in der Lage, offline zu arbeiten und eine zeitversetzte Synchronisation<br />

von Informationen und Dokumenten durchzuführen.<br />

Weitere Spacelets können so konfiguriert werden, dass sie eine Kalenderansicht zeigen,<br />

in der Termine und Aufgabeninformationen angezeigt und bearbeitet werden können.<br />

Ein klassisches Diskussionsforum kann angelegt werden, in dem alle Benutzer eines<br />

Workspaces nach Themen sortierte Onlinediskussionen führen. Entsprechende Spacelets<br />

informieren über aktuelle Einträge.<br />

Funktion Beschreibung<br />

Benutzerverwaltung Neue Benutzer werden durch existierende Benutzer, welche<br />

die Rolle Administrator innehaben, den Workspaces<br />

zugeordnet, die für sich als Projektinstanzen angelegt werden<br />

können.<br />

Dateiverwaltung Dokumente werden über Clients und Plugins direkt aus der<br />

Officeanwendung synchronisiert. Automatische Archivierung<br />

mit Metainformationen sowie Volltextindizierung werden<br />

unterstützt.<br />

Terminplanung Terminplanung für Gruppen und einzelne Benutzer ist über<br />

ein Kalender-Spacelet möglich.<br />

Besonderheiten Frei definierbare Ansichten im Webclient und einfache<br />

Arbeit in verschiedenen Projekten zur gleichen Zeit.<br />

Besonders hohe Integration in OpenOffice.org, StarOffice<br />

und Microsoft Office.<br />

Tabelle 59: Funktionen O3Spaces Workplace<br />

Der Schwerpunkt der Anwendung liegt eindeutig auf der Zusammenarbeit in verschiedenen<br />

Officedokumenten. Es fehlt die Möglichkeit, Mitarbeitern Aufgaben zuzuweisen, die<br />

Erledigung von Aufgaben zu verfolgen sowie die Steuerung und Kontrolle von Prozessen.<br />

Für die Projektarbeit ist Workplace 2.2 somit kein universelles Werkzeug, sondern<br />

empfiehlt sich als Ergänzung zu einem Werkzeug zur Projektplanung und -verfolgung für<br />

die Zusammenarbeit in heterogenen Umgebungen.<br />

Die Administration von Workplace 2.2 erfolgt über ein separates Webinterface. Diese<br />

„Studio" getaufte Oberfläche ermöglicht die Verwaltung von Benutzern und Dateien und<br />

erleichtert die Kontrolle über Hardwareressourcen und Metadaten. Verschiedene nützliche<br />

Werkzeuge erleichtern diese Arbeit, so zum Beispiel die Möglichkeit, ganze Verzeichnishierarchien<br />

aus lokalen Verzeichnissen zu übernehmen, indem sie aus ZIP<br />

Archiven importiert werden.<br />

Die nachfolgende Tabelle stellt dar, welche Funktionen durch die verschiedenen Editionen<br />

bereitgestellt werden.<br />

Seite 387


Funktion On Demand Community Professional<br />

Einfaches Roaming � - -<br />

Keine Serverinstallation � - -<br />

Kleine lokale Installation, Sicherheit durch<br />

den Hersteller<br />

Seite 388<br />

� - -<br />

Automatische Updates � - �<br />

Upgrade und Update Services � - �<br />

Backup und Recovery � extern extern<br />

Sicherheit und User Management über<br />

User, Gruppen Rollen und Rechte<br />

Management<br />

� � �<br />

Online Community Support � � �<br />

LDAP � � �<br />

Online Professional Support � - �<br />

Bugs & Patch Support � - �<br />

Integrierte Hilfefunktion � - �<br />

Support zum Clustering - - �<br />

Server basierte Installation mit unlimitierter<br />

Benutzerzahl<br />

Automatische <strong>Version</strong>ierung, checkin/check-out<br />

Funktion<br />

-<br />

limitiert auf<br />

10 Benutzer<br />

�<br />

� � �<br />

Mehrsprachliche <strong>Version</strong>en � � �<br />

Office Integration � � �<br />

Zeitnahe Berichte über Änderungen innerhalb<br />

eines Workspaces<br />

� � �<br />

O3Spaces Workplace Assistant � � �<br />

- � �<br />

Template Management für OpenOffice.org /<br />

StarOffice<br />

Management von gelockten Dateien über<br />

den O3Spaces Workplace Assistant<br />

� � �<br />

Suche nach offenen Dokumenten � � �<br />

� � �<br />

Verweise auf Dokumente im Wiki, Portal<br />

oder der Website<br />

OpenSearch kompatibles Repository - - �<br />

Spacelets für Online Diskussionsforen � � �<br />

Spacelets für Kalenderfunktion � � �<br />

Tabelle 60: O3Space – Funktionen in den verschiedenen Editionen


1.3.3 Fazit<br />

In heterogenen Umgebungen mit verschiedenen Plattformen und Officeanwendungen<br />

bietet sich O3Spaces Workplace 2.2 als übergreifende Kollaborationsumgebung mit<br />

elementaren DMS Funktionen an. Die Verwaltung der Gruppen und Benutzer lässt sich<br />

mit bereits vorhandenen Benutzerdaten über LDAP synchronisieren. Prozesssteuerung<br />

und Projektwerkzeuge sind derzeit nicht vorgesehen, wodurch sich die Anwendung vor<br />

allem für kleine bis mittlere Projektgrößen und Arbeitsgruppen in heterogenen Umgebungen<br />

anbietet.<br />

1.4 Novell Teaming + Conferencing<br />

Novell hat das Produkt Teaming + Conferencing 359 erstmalig im Oktober 2007 auf den<br />

Markt gebracht. Die Technologie, auf der dieses Produkt basiert, ist allerdings schon seit<br />

etwa 13 Jahren am Markt und kommt von der Firma Sitescape, die inzwischen von Novell<br />

gekauft wurde 360 .<br />

Die Kollaborationslösung ICEcore ist die Basis für das Produkt von Novell und kann als<br />

Open Source Software von der Webseite www.icecore.org heruntergeladen werden.<br />

ICEcore steht unter der Common Public Access License (CPAL) 361 .<br />

Teaming + Conferencing resultiert aus der gemeinsame Weiterentwicklung von ICEcore<br />

durch die Firmen Sitescape und Novell. Die nachfolgende Abbildung veranschaulicht die<br />

Unterschiede zwischen dem Open Source Produkt und der Novell Lösung und zeigt die<br />

kostenpflichtigen Add-On Module.<br />

ICEcore ICEcore Enterprise<br />

adds:<br />

Portal<br />

Personal, team & global workspaces<br />

Blogs, wikis and discussion forums<br />

Document management<br />

Surveys and polls<br />

Team calendars and tasks<br />

Expertise locator<br />

Search<br />

File transfer through WebDAV<br />

LDAP import<br />

MySQL database support<br />

Web conferencing<br />

Instant messaging/chat<br />

Presence engine<br />

Advanced document conversion & viewing<br />

� More document types converted<br />

� Scalability – higher performance indexing<br />

� Higher quality conversions<br />

Higher performance search<br />

Basic Workflow<br />

Oracle & MS SQL database support<br />

Support for regulatory compliance processes,<br />

such as Sarbanes-Oxley, HIPAA, etc.<br />

Compliance with 508 accessibility standards<br />

LDAP synchronization<br />

Voice conferencing<br />

Open source Novell Teaming+<br />

Conferencing<br />

Seite 389<br />

ICEcore<br />

add-on<br />

modules<br />

First release:<br />

Advanced Workflow<br />

Telephony Interface<br />

Subsequent release:<br />

Advanced Search<br />

Offline Capability<br />

SiteScape<br />

modules<br />

Abbildung 54: Funktionen von ICEcore OSS, Novell Teaming + Conferencing und ICEcore<br />

Add-On Modulen<br />

359 gesprochen Teaming plus Conferencing<br />

360 http://www.sitescape.com/<br />

361 http://en.wikipedia.org/wiki/Common_Public_Atvontribution_License


Novell Teaming + Conferencing ist eine Collaboration Plattform für Linux-Systeme.<br />

Teaming + Conferencing sind zwei Softwarepakete, die auch jede für sich allein genutzt<br />

und erworben werden können. Der Hersteller bietet die beiden Pakete sowohl einzeln als<br />

auch als gemeinsames Paket an.<br />

Die beiden Pakete stellen unterschiedliche Funktionalitäten für eine Collaboration Plattform<br />

zur Verfügung (siehe Abschnitt III.B 1.4.2). Daher erfolgt sowohl bei der Betrachtung<br />

der verwendeten Technik als auch den verfügbaren Funktionen eine weitgehend<br />

getrennte Betrachtung 362 .<br />

1.4.1 Technologie/Architektur<br />

1.4.1.1 Novell Teaming<br />

Architektur<br />

Für eine Installation der Teamingsoftware sind nachfolgend aufgelistet die Hard- und<br />

Software Voraussetzung 363 , (alle weiteren Komponenten liefert das Installationspaket):<br />

� Hardware<br />

� Software<br />

o 2 GHz Prozessor (Multi-CPU Systeme werden empfohlen)<br />

o 2 GB RAM<br />

o 250 MB Plattenplatz<br />

Dies ist der Speicherbedarf allein für die Installation der Software.<br />

Weiterer Plattenplatz wird natürlich für die Teamarbeitsbereiche in die<br />

darin abgelegten Daten, Dokumente und so weiter benötigt.<br />

o Sun JDK 1.5.0_011 364 oder höher oder IBM JDK 1.5<br />

(JDK 1.6 wird derzeit nicht unterstützt)<br />

o Datenbankmanagementsystem<br />

� MySQL 5.0.37 (oder höher) Server und Client für Linux<br />

� MySQL 5.0.26 (oder höher) Server und Client für Windows<br />

(MySQL 5.1 wird derzeit nicht unterstützt)<br />

� SQL Server für Windows Server 2000 oder 2005<br />

� Oracle 9, 10<br />

Die folgenden Betriebssysteme werden unterstützt 365 :<br />

362 Um Novell Conferencing in Novell Teaming nutzen zu können müssen die Installations- und<br />

Konfigurationshinweise im Server Installation Guide beachtet werden.<br />

http://www.novell.com/documentation/team_plus_conf/index.html<br />

363 Eine genaue Beschreibung findet man im Installation and Configuration Guide,<br />

http://www.novell.com/documentation/team_plus_conf/team102_instconfig/ data/bookinfo.html<br />

364 Entspricht der von neu verwendeten <strong>Version</strong>snummerierung JDK 5 (siehe<br />

http://java.sun.com/javase/downloads/index_jdk5.jsp)<br />

365 http://www.novell.com/products/teaming/tech_specs.html<br />

Seite 390


� Novell Open Enterprise Server 2.0 (Linux Kernel)<br />

� SUSE® Linux Enterprise Server 10 sp1<br />

� RedHat Enterprise Linux 3 or 4<br />

� Windows 2003 Server<br />

Die nachfolgende Abbildung 55 beschreibt die für das Teamingsoftwarepaket verwendete<br />

Architektur. Novell Teaming ist eine reine Java/J2EE Web-Anwendung. Als Servlet-<br />

/Applicationserver kommt Apache Tomcat 366 zum Einsatz. Als Portallösung wird die<br />

Open Source Software „LifeRay Portal Enterprise and Professional <strong>Version</strong> 4.0― der<br />

gleichnamigen Firma LifeRay verwendet.<br />

Abbildung 55: Architektur des Novell Teamingsoftwarepakets 367<br />

Protokolle und Schnittstellen<br />

Für die Suche wird in Novell Teaming das Open Source Projekt Apache Lucene 368<br />

eingesetzt.<br />

Der Zugriff auf das Filesystem wird über WebDAV (Server und Client) realisiert.<br />

Weitere wichtige Schnittstellen sind:<br />

� JDBC für den Zugriff auf die Datenbank<br />

� LDAP für die Integration von Verzeichnissen, z.B. für die Benutzerverwaltung<br />

366 http://tomcat.apache.org/<br />

367 Aus dem Installation and Configuration Guide der Firma Novell (siehe<br />

http://www.novell.com/documentation/team_plus_conf/)<br />

368 http://lucene.apache.org/<br />

Seite 391


Es besteht die Möglichkeit, eine auf einem LDAP-Verzeichnis basierende<br />

Benutzerverwaltung zu integrieren. Alternativ oder parallel können die<br />

Benutzer auch direkt auf dem Teamingsserver verwaltet werden. Dies bietet<br />

den Vorteil, dass externe Teammitglieder nicht in der internen zentralen<br />

Benutzerverwaltung aufgenommen werden müssen.<br />

� SMTP, POP3 und IMAP für die E-Mail-Integration<br />

� WebServices für die Anbindung weiterer Anwendungen und Dienste<br />

� iCal für die Einbindung und Verwaltung von Kalender, die wiederum mit<br />

WebDAV veröffentlicht werden können.<br />

� HTTP und HTTPS für den Zugriffs zum Beispiel über Browser<br />

Daten und Dokumente der Teamarbeit werden mit Hilfe von Novell Teaming in der Datenbank<br />

oder auf dem Dateisystem abgelegt.<br />

Sicherheitsaspekte<br />

Authentisierung und Benutzerverwaltung<br />

Die Authentisierung erfolgt über die browserbasierte Benutzerschnittstelle. Dabei kann<br />

die Authentifizierung sowohl gegen ein LDAP-Verzeichnis als auch gegenüber der Benutzerdatenbank<br />

der Teamingsoftware erfolgen. Das bedeutet, dass Benutzer parallel<br />

sowohl in einem LDAP-Verzeichnis (z.B. das zentrale interne Benutzerverzeichnis) oder<br />

lokal auf der Teamingplattform verwaltet werden können. Dies hat Vorteile, wenn es darum<br />

geht auch externe Teammitglieder zu integrieren, die aber nicht in der internen Benutzerverwaltung<br />

geführt werden sollen.<br />

Für die Implementierung einer Single Sign On Lösung unterstützt Novell Teaming die<br />

hauseigene Novell Access Manager Lösung 369 . Hierbei handelt sich um ein proprietäres<br />

kostenpflichtiges Produkt, das nicht Bestandteil von Teaming + Conferencing ist.<br />

Weiterhin werden für die Nutzung von WebServices und WebDAV auch Authentisierung<br />

über diese Schnittstellen unterstützt.<br />

Autorisierung<br />

Die Vergabe von Zugriffsrechten erfolgt rollenbasiert für jeden Arbeitsbereich und Ordner.<br />

Dafür stellt Novell Teaming einen Satz von Basisrollen zur Verfügung 370 . Durch eine<br />

hierarchische Anordnung der verschiedenen Arbeitsbereiche (siehe Abschnitt III.B<br />

1.4.2.1 – Verwendete Strukturen) kann eine verteilte Administration genutzt werden.<br />

Gleichzeitig wird Mandantenfähigkeit unterstützt.<br />

Zur Sicherstellung ausreichender Verfügbarkeit und Performanz unterstützt Novell Teaming<br />

auch Load-Balancing und den Aufbau von Clustern.<br />

369 http://www.novell.com/products/accessmanager/overview.html<br />

370 Näheres findet man dazu im „Installation and Configuration Guide―<br />

http://www.novell.com/documentation/team_plus_conf/team102_instconfig/ data/bookinfo.html<br />

Seite 392


Werkzeuge<br />

Für die Konfiguration und Administration von Novell Teaming stehen verschiedene webbasierte<br />

Schnittstellen, sogenannte Portlets, für unterschiedliche Aufgaben und Komponenten<br />

zur Verfügung. Nachfolgende Abbildung 56 zeigt das sogenannte „Enterprise<br />

Admin Portlet― mit einem Ausschnitt der Benutzerverwaltung.<br />

1.4.1.2 Conferencing Server<br />

Systemvoraussetzungen 371<br />

Abbildung 56: Enterprise Admin Portlet<br />

Die folgenden Voraussetzungen müssen für eine Installation von Novell Teaming erfüllt<br />

sein:<br />

� Betriebssystem: SUSE Linux Enterprise Server 10 (SLES 10) oder Red Hat<br />

Enterprise Server 4<br />

� Die Bibliotheken libneon and libpq<br />

Diese werden z.B. bei einer Standardinstallation des SLES 10 nicht installiert.<br />

� PostgreSQL372<br />

Muss auf einem der Conferencing Hosts installiert sein.<br />

Architektur / Systemkomponenten<br />

Die nachfolgende Abbildung 57 zeigt die Systemkomponenten und ihre Verbindungen<br />

untereinander.<br />

Der Conferencing Server kann durch seinen sehr modularen Aufbau für einen Betrieb<br />

sowohl auf einen einzelnen Rechner als auch auf mehreren Rechnern konfiguriert werden.<br />

Die Kommunikation zwischen den Komponenten erfolgt über XML-basierte Schnittstellen.<br />

Die Kommunikation zwischen den einzelnen Instanzen dieser Schnittstellen ba-<br />

371 Details werden im „Server Installation Guide― von Novell beschrieben<br />

http://www.novell.com/documentation/team_plus_conf/conf10_svrinst/data/bookinfo.html<br />

372 Angaben zur <strong>Version</strong> werden im „Server Installation Guide― zu Novell Conferencing nicht<br />

gemacht.<br />

Seite 393


siert auf wohldefinierten Protokollen, welche das Format (XML), die Struktur, den Inhalt,<br />

die Bedeutung und die Reihenfolge gesendeter Nachrichten zwischen diesen Instanzen<br />

festlegen.<br />

Die Komponenten sind im Einzelnen:<br />

Abbildung 57: Architektur Novell Conferencing 373<br />

� XML Router<br />

Routet die XML-basierte Kommunikation zwischen den Komponenten<br />

� Client Connector<br />

Steuert die ankommenden Verbindungsanfragen der Clients und stellt Benutzersitzungen<br />

zusammen mit dem Sitzungsmanager (Session Manager) her.<br />

� Session Manager<br />

Verwaltet die Benutzersitzungen und erlaubt Benutzern „Instant Messages―<br />

auszutauschen.<br />

� Meeting Controller<br />

Verwaltet laufende Meetings und verteilt Ereignisse eines Meetings an die<br />

Teilnehmer der Meetings.<br />

� Notification Server<br />

Sendet „Hinweis/Ankündigungs-Mails― und „Instant Messages― im Auftrag des<br />

„Meeting Controller― und des „Schedule Server―<br />

373 Aus „Server Installation Guide― zu Novell Conferencing<br />

http://www.novell.com/documentation/team_plus_conf/conf10_svrinst/data/bookinfo.html<br />

Seite 394


� Address Book<br />

Speichern von Adressbüchern von einzelne Personen und von Gruppen<br />

� Schedule Server<br />

Speichert für Meetings Terminplanung, Optionen und Teilnehmer und ruft<br />

diese bei Bedarf ab.<br />

� Voice Bridge<br />

Kontrolle der Telefonieressourcen, herstellen von Verbindungen zu Konferenzen<br />

und einiges mehr.<br />

� Meeting Archiver Server<br />

Erstellt Macromedia Flash-basierte Archive von Meetings in einem Repository,<br />

auf welches über das Web zugegriffen werden kann.<br />

� App Share Server<br />

Überträgt gemeinsame Anwendungsdaten vom vortragenden Meetingteilnehmer<br />

zu den anderen Teilnehmern<br />

� Invitation Web Service<br />

Verbindet Meetingsteilnehmer per „Invitation URL― 374<br />

� External Web Service<br />

Bereitstellung von WebServices für die Anbindungen externer Anwendungen..<br />

Aus der Liste von Komponenten mit der groben Beschreibung ihrer Aufgaben werden<br />

auch schon im Wesentlichen die Funktionen des Conferencing Servers beschrieben.<br />

Werkzeuge<br />

Für die Administration von Novell Conferencing steht eine webbasierte Schnittstelle zur<br />

Verfügung, die sogenannte „Conferencing Administration Console―. Die folgende Abbildung<br />

zeigt die Oberfläche dieser Administrationsschnittstelle 375 .<br />

374 Frei Übersetzt „Einladungs-URL―. Hierbei handelt es sich um eine spezielle URL, die an die<br />

Teilnehmer eines Meetings versendet werden und die einen bestimmten Code enthalten,<br />

der das Meeting identifiziert.<br />

375 Siehe hierzu auch die Inhalte des „Operations Guide― zu Novell Conferecing<br />

http://www.novell.com/documentation/team_plus_conf/conf10_op/data/bookinfo.html<br />

Seite 395


Abbildung 58: Oberfläche der Administrationsschnittstelle zu Novell Conferencing 376<br />

1.4.2 Funktionalitäten<br />

Teaming + Conferencing ist eine Plattform für die Zusammenarbeit von Arbeitsgruppen,<br />

deren Mitgliedern sich aus Mitarbeitern einer Organisation zusammensetzen. Bei Bedarf<br />

können auch externe Teilnehmer eingeladen werden. Das Teamingpaket liefert die<br />

Werkzeuge für eine gemeinsame Bearbeitung und den Austausch von Informationen<br />

und Dokumenten sowie für die Abstimmung und Planung der gemeinsamen Arbeit. Das<br />

Conferencingpaket liefert dann noch die Werkzeuge für die Echtzeitkommunikation, also<br />

Telefon- und Webkonferenzen, Chats und ähnlichem. Dabei können alle Aktivitäten und<br />

Prozesse durch automatische Workflows unterstützt werden. Abbildung 59 zeigt im<br />

Überblick, welche Hauptfunktionen bereitgestellt werden.<br />

376 Aus dem „Operations Guide― zu Novell Conferecing<br />

http://www.novell.com/documentation/team_plus_conf/conf10_op/data/bookinfo.html<br />

Seite 396


Kommunikation Bearbeiten<br />

Telefonkonferenzen<br />

IM & Chat<br />

Presänz<br />

Diskussion<br />

Integrierte<br />

Suite<br />

Verwaltung<br />

Foren<br />

Web Konferenzen<br />

1.4.2.1 Teaming Funktionen<br />

Funktionen<br />

Seite 397<br />

Blogs<br />

Wikis<br />

Gemeinsame<br />

Dokumente<br />

Workflow<br />

Aufgabenverwaltung<br />

Termin- & Kalender<br />

Verwaltung<br />

Abbildung 59: Workflow gesteuerte Collaboration<br />

Die Funktionen der Teamingsoftware orientieren sich an der Bereitstellung von Teamarbeitsplätzen<br />

mit all den Werkzeugen, die ein Team für seine Arbeit benötigt. Die nachfolgende<br />

Tabelle zeigt die verschiedenen Bereiche/Werkzeuge, die auf einem Arbeitsplatz<br />

zur Verfügung gestellt werden können.<br />

Innerhalb eines Arbeitsplatzes besteht die Möglichkeit folgende Funktionsbereiche anzulegen:<br />

Funktionen Details<br />

Team/globale Arbeitsplätze � Erstellen und verwalten von Teamzugehörigkeit<br />

� Verbinden mit eDirectory über LDAP<br />

� Teammitgliedschaft kann abhäbgig sein von folgenden<br />

Eigenschaften:<br />

� Benutzer<br />

� Gruppen<br />

� Organisationen<br />

� Teams können auch aus externen Benutzern bestehen<br />

� Adressbücher der Teams<br />

� Veröffentlichen der Team Mailadressen über eDirectory<br />

zu GroupWise<br />

Team Diskussionsforum � ―threaded‖ Diskussionen für die Teams<br />

� Neue Einträge können Mails an Groupwise versenden<br />

� Benutzer können direkt über Groupwise antworten


Funktionen Details<br />

Team Calendars & Tasks � Teamevents und Aufgaben können im Teaming-Portal erstellt<br />

werden<br />

� Teammitglieder können wählen, ob Sie diese Events und<br />

Aufgaben an Group-Wise geschickt bekommen wollen<br />

� Events und Aufgaben erscheinen als Aufgaben und Termine<br />

im Groupwise System, nicht als Mail<br />

Dokumentenmanagement � Benutzer können Dokumente (Dateien) in den Ordner hochladen.<br />

Bezüglich der Verwendung von unterschiedlichen Dateiformaten<br />

377 gibt es keine Einschränkungen. Einschränkungen<br />

gibt es höchstens in der weiteren Verwendung (siehe nächsten<br />

Punkt)<br />

Workflow � Einfacher Workflow<br />

� Dokumente können im HTML-Format im Browser dargestellt<br />

werden, sofern sie lesbar sind. Verschlüsselte Dokumente<br />

lassen sich also nicht darstellen. Ob sich ein Dokument im<br />

HTML-Format anzeigen lässt, wird in der Benutzerschnittstelle<br />

angezeigt (siehe Abbildung 63). Mit einem Mausklick auf den<br />

HTML-Eintrag erfolgt dann auch die Darstellung der Inhalte im<br />

Browser.<br />

� Dokumente können in Office direkt geöffnet und bearbeitet<br />

werden – das ganze über WebDAV<br />

� Dokumente können ―ausgecheckt‖ werden.<br />

� Vorherige <strong>Version</strong> werden automatisch archiviert; die <strong>Version</strong>ierung<br />

erfolgt über Zeitstempel<br />

� OES/Netware Filesystem kann als Spiegel verwendet werden<br />

– ein sogenannter „virtual import‖<br />

� Manuelles ändern des Status<br />

� Zugriffskontrolle<br />

� Benachrichtigung<br />

� Erweiterter Workflow<br />

� Komplexe Übergänge<br />

� Gleichzeitiger Workflow<br />

Sonstige Teamfunktionen � Befragungen / Surveys<br />

� Wikis<br />

� Blogs<br />

� RSS<br />

� Dashboard<br />

Suche Es wird eine einfache / schnelle Suche bereitgestellt.<br />

377 siehe auch Formatliste im Anhang<br />

Für eine gezielte Suche bietet die erweiterte Suche erheblich<br />

Vorteile.<br />

Die nachfolgende Abbildung 60 zeigt einen Ausschnitt dieser<br />

erweiterten Suche.<br />

Tabelle 61: Novell Teaming Funktionen<br />

Seite 398


Abbildung 60: Erweiterte Suche Novell Teaming<br />

Seite 399


Verwendete Strukturen<br />

Novell Teaming unterscheidet bei den Arbeitsbereiche (Workspace) zwischen drei<br />

Typen:<br />

� Unternehmensweiter globaler Arbeitsbereich<br />

� Arbeitsgruppenweiter Arbeitsbereich<br />

� Persönlicher Arbeitsbereich<br />

Innerhalb jedes dieser Arbeitsbereiche können nach der Einrichtung Unterarbeitsbereiche<br />

und Ordner angelegt werden. Dabei werden die übergeordneten Zugriffsrechte<br />

standardmäßig nach unten vererbt. Diese Zugriffsrechte können durch den jeweiligen<br />

Administrator eines Arbeitsbereiches oder Ordners nachträglich angepasst werden, sofern<br />

dies notwendig ist.<br />

Darüber hinaus gibt es noch die Möglichkeit Projektarbeitsbereiche anzulegen, die speziell<br />

auf die Anforderungen für ein Projektmanagement ausgerichtet sind.<br />

Für jeden Arbeitsbereich können folgende Standardordner angelegt werden:<br />

� Diskussion<br />

� Blog<br />

� Wiki<br />

� Kalender<br />

� Gästebuch<br />

� Datei<br />

� Fotoalbum<br />

� Umfrage<br />

� Aufgaben<br />

� Meilenstein<br />

Neben der Nutzung dieser Standardstrukturen lassen sich auch für spezielle Bedürfnisse<br />

sogenannte benutzerdefinierte Einträge entwerfen und einfügen 378 . Diese sogenannten<br />

Custom Entries können mit Hilfe des „Teaming Administration Portlet― erstellt werden. Es<br />

handelt sich hierbei um Formulare (Forms) und Ansichten (Views) für spezifische Inhaltseinträge.<br />

Diese können genau wie die Standardforms und –views mit Workflows<br />

verbunden werden, wodurch eine weitgehende Anpassung die speziellen Bedürfnisse<br />

einer Behörde möglich ist.<br />

378 Siehe Administration Guide<br />

http://www.novell.com/documentation/team_plus_conf/team10_admin/data/bookinfo.html<br />

Seite 400


Workflows<br />

Novell Teaming beinhaltet die Möglichkeit mit Hilfe des Teaming Administration Portlet<br />

und innerhalb dessen mit dem Workflow Designer einfache Workflows zu definieren.<br />

Hierfür werden die einzelnen Zustände ausgewählt und mit den entsprechenden Zustandsübergängen<br />

miteinander verbunden.<br />

Jeder Zustand ist mit einem Arbeitsschritt verbunden und identifiziert das Ergebnis der<br />

vollständigen Umsetzung dieses Schrittes. Weiterhin zeigt ein Zustand an, wer innerhalb<br />

des Prozesses (Gesamt-Workflow) für den nächsten Schritt verantwortlich ist.<br />

Die Zustandsübergänge definieren die Reihenfolge der Arbeitsschritte und geben an,<br />

wann, wie und/oder unter welchen Bedingungen ein Übergang erfolgen kann. Die nachfolgende<br />

Abbildung zeigt, welche Arten von Übergängen möglich sind.<br />

Abbildung 61: Zustandsübergänge im Novell Teaming Workflow 379<br />

Das Ergebnis der definierten Zustände und Übergänge eines Workflows können dann<br />

grafisch angezeigt werden.<br />

Abbildung 62: Grafische Darstellung eines Workflows in Novell Teaming 380<br />

379 Aus Administration Guide<br />

http://www.novell.com/documentation/team_plus_conf/team10_admin/data/bookinfo.html<br />

380 Aus Administration Guide<br />

http://www.novell.com/documentation/team_plus_conf/team10_admin/data/bookinfo.html<br />

Seite 401


Den Workflow kann man dann mit einem Ordner verbinden, in welchem man den Workflow<br />

nutzen möchte 381 .<br />

Für die Erstellung von komplexeren Workflows wird das zusätzliche und kostenpflichtige<br />

Modul „Advanced Workflow add-on module― 382 benötigt. Hiermit können sogenannte<br />

„Workflow-Fragen― definiert und in Workflows integriert werden. Dies sind Fragen, auf<br />

die ein Benutzer reagieren muss, bevor der nächste Übergang erfolgen kann und der<br />

jeweilige Übergang entsprechend der Antwort reagiert.<br />

Dokumentenunterstützung<br />

In Novell Teaming kann man prinzipiell beliebige Dateien und Dateiformate in einen<br />

Arbeitsbereich oder Ordner hochladen 383 . Dabei kann der Inhalt, sofern er erkennbar ist,<br />

zusätzlich in HTML umgewandelt werden und kann damit Benutzern zur Verfügung<br />

gestellt werden, die nicht über eine entsprechende Anwendung zum Öffnen der Datei<br />

verfügen. Bei einigen Dateien, wie zum Beispiel Bilddateien, ist dies meist nicht möglich,<br />

da der Inhalt nicht ausgelesen werden kann. Dort wo eine Darstellung in HTML möglich<br />

ist, wird dies auch in der Benutzerschnittstelle entsprechend dargestellt (siehe Abbildung<br />

63).<br />

Abbildung 63 Dokumente im HTML-Format darstellen<br />

Um Dokumente zu bearbeiten, stehen in Novell Teaming zwei Möglichkeiten zur<br />

Verfügung:<br />

� Das Dokument auf den Desktop herunterladen, dann bearbeiten und anschließend<br />

wieder hochladen.<br />

� Für einige Dateitypen wird ein Edit-Schalter zur Verfügung gestellt, über den mit<br />

Hilfe eines kleinen Java Applets die mit dem Dateityp verbundene Anwendung<br />

gestartet wird. Der Zugriff erfolgt dabei über die WebDAV-Funktionalität. Beim<br />

Speichern wird dann eine neue <strong>Version</strong> des Dokuments im jeweiligen Arbeitsbereich<br />

erstellt. Im Browser müssen keine weiteren Aktionen vorgenommen werden.<br />

Um die zweite Funktionalität nutzen zu können, muss die Anwendung, mit der das Dokument<br />

bearbeitet werden soll, WebDAV unterstützen. Novell Teaming muss über die<br />

Administration mitgeteilt werden, welche Anwendung dies unterstützt.<br />

381 Details werden im Administration Guide zu Novell Teaming beschrieben<br />

http://www.novell.com/documentation/team_plus_conf/team10_admin/data/bookinfo.html<br />

382 Siehe Administration Guide zu Novell Teaming<br />

http://www.novell.com/documentation/team_plus_conf/team10_admin/data/bookinfo.html<br />

Seite 402


1.4.2.2 Conferencing Funktionen<br />

Die nachfolgende Tabelle gibt noch mal einen Überblick über die Funktionen von Novell<br />

Conferencing. Ein Teil der Funktionalität wurde schon im Rahmen der Beschreibung der<br />

verschiedenen Komponenten von Novell Conferencing vorgestellt (siehe Kapitel III.B<br />

1.4.1.2).<br />

Hauptfunktion Details<br />

Telefon- (Sprach)konferenzen � Unterstützt VOIP<br />

Web-Konferenzen<br />

Seite 403<br />

� Full Duplex (mehrere können zur selben<br />

Zeit sprechen)‏<br />

� Sprachintegration in einer Webkonferenz<br />

� Verschiedene Rollen (Moderator, Teilnehmer,<br />

Zuhörer, etc.)‏<br />

� Konferenzen können aufgezeichnet werden<br />

� Wiederverwendbare Konferenzeinstellungen<br />

� Applikations sharing<br />

� Whiteboard<br />

� Desktop sharing<br />

� Co-browsing<br />

� Gemeinsames Bearbeiten<br />

� Abfragesystem<br />

� Breakout sessions<br />

� Teilnehmer Audit<br />

Instant Messaging (IM)‏ � Konversationen<br />

1.4.3 Fazit<br />

� Bidirektional<br />

� Gruppen<br />

� Dateitransfer<br />

� Emoticons<br />

� Aufzeichnen von Gesprächen<br />

� Persönliche Historie zu Personen<br />

� Virusschutz<br />

� Systemmonitoring<br />

Tabelle 62: Novell Conferencing Funktionen<br />

Die Kollaborationsplattform von Novell ist eine zwar noch nicht ganz ausgereifte, aber<br />

schon sehr umfassende Lösung für die gemeinsame Arbeit in Teams, Arbeitsgruppen<br />

und Projekten. Insbesondere die funktionalen Angebote im Bereich der Echtzeit-<br />

Zusammenarbeit stellen in einzelnen Bereichen eine Besonderheit dar. Leichte Schwächen<br />

zeigen sich im Zusammenhang mit der <strong>Version</strong>ierung von Dokumenten und der<br />

flexiblen Vergabe von Metadaten, was sich wiederum auf die Suchfunktion auswirkt.<br />

Trotz allem muss sich Novell Teaming + Conferencing nicht hinter anderen Lösungen<br />

verstecken. Positiv ist weiterhin zu erwähnen, dass zum einen mit ICEcore eine Open


Source <strong>Version</strong> zur Verfügung steht, die schon wesentliche Funktionen von Novell Teaming<br />

liefert und zum anderen das Produkt zum großen Teil auf Open Source Komponenten<br />

aufbaut und überwiegend auf offene Standards setzt.<br />

1.5 Lotus Quickr 8.0<br />

Lotus Quickr wurde von IBM im Juni 2007 erstmalig veröffentlicht 384 . Lotus Quickr lag<br />

zum Zeitpunkt der Erstellung dieses Kapitels 385 in <strong>Version</strong> 8 vor.<br />

Von Lotus Qickr wird in einer Standardausgabe mit zwei Installationsvarianten, als Services<br />

für Lotus Domino oder als Services für WebSphere Portal, vom Hersteller auch als<br />

Java Enterprise Variante bezeichnet, bereitgestellt.<br />

Die Entscheidung, welche der beiden Installationsvarianten zum Einsatz kommen kann<br />

hängt zum einen von den gewünschten Funktionen und zum anderen auch von den vorhandenen<br />

Erfahrung und/oder bestehender Infrastruktur ab. Folgende Gründe können<br />

hier ausschlaggebend sein:<br />

� Es wird schon Technologie eingesetzt beziehungsweise es gibt schon Erfahrungen<br />

mit bestimmten Technologien, wie zum Beispiel Lotus Domino oder<br />

IBM WebSphere).<br />

� Es bestehen Präferenzen oder Anforderungen für eines der unterstützten Betriebssysteme.<br />

� Es werden bestimmte Funktionalitäten gewünscht oder benötigt, die nur von<br />

einer der beiden Variante bereitgestellt werden.<br />

� Das Know-how der IT-Mitarbeiter und/oder der Benutzer präferiert eine der<br />

beiden Varianten.<br />

Hintergrund für das Angebot von zwei Produktvarianten ist laut IBM die Weiterentwicklung<br />

beziehungsweise Fortführung bereits bestehender Produktangebote:<br />

� Lotus Quickr Services für Domino ist das Nachfolgeprodukt von Lotus Quickplace.<br />

Lotus Quickplace Nutzer können im Rahmen ihrer Wartungsverlängerung auf<br />

Quickr migrieren.<br />

� Die Java Enterprise Umgebung von WebSphere Portal beinhaltet seit einiger Zeit<br />

unter anderem auch Dokumentenmanagementfunktionen. Die Quickr Services<br />

der Java Variante bauen auf diesen Funktionen auf und erweitern sie um weitere<br />

Teamfunktionen.<br />

Ziel ist es laut Hersteller, beide Varianten dauerhaft mit den gleichen Funktionalitäten nur<br />

für unterschiedliche Plattformen bereitzustellen. Mit Quickr 8.1, welches für das erste<br />

Halbjahr 2008 angekündigt wird, soll ein erster Schritt in diese Richtung unternommen<br />

werden. So soll in Quickr 8.1 unter anderem die heute noch in der Java Variante fehlende<br />

Teamkalenderfunktionalität verfügbar sein.<br />

384 http://www-03.ibm.com/press/us/en/pressrelease/21756.wss<br />

385 Stand Februar 2008<br />

Seite 404


Welche der beiden Varianten in Frage kommt, muss jede Organisation für sich beantworten.<br />

Neben der oben erwähnten Standardausgabe soll mit Quickr 8.1 eine „Quickr Entry Edition―<br />

zur Verfügung gestellt werden. Diese soll grundlegende Funktionalitäten für den<br />

persönlichen Datei-/Dokumentenaustausch bereitstellen. Zum Beispiel soll es möglich<br />

sein Dokumente in Quickr Bibliotheken hoch- und aus diesen wieder herunterzuladen.<br />

Konnektoren zur Anbindung von Standardanwendungen (siehe auch III.B 1.5.1.2), wie<br />

zum Beispiel Microsoft Office, sollen ebenfalls mitgeliefert werden. Die Quickr Entry Edition<br />

soll für Lotus Notes Nutzer im Rahmen der Wartung ohne zusätzliche Lizenzkosten<br />

bereitstehen.<br />

Lotus Quickr ist eine rein proprietäre Lösung, die in vielen Bereichen auf bewährter<br />

Technologie beruht, wie später noch deutlich werden wird.<br />

1.5.1 Technologie/Architektur<br />

1.5.1.1 Architektur<br />

Wie bereits erwähnt stehen für Installation von Quickr zwei Varianten zur Verfügung.<br />

Diese basieren in Teilen auch auf sehr unterschiedlicher Technologie, was auch schon<br />

durch die Bezeichnungen der Varianten deutlich wird. Diese technologischen Unterschiede<br />

wirken sich ebenso auf die bereitgestellten Funktionalitäten sowie auf die Administration<br />

und Konfiguration aus.<br />

Einen Hinweis auf die verwendete Technologie liefern die Vorgaben und Hinweise zu<br />

den Systemvoraussetzungen.<br />

IBM Lotus Quickr 8.x steht je nachdem, ob man die „Services für IBM WebSphere Portal‖<br />

oder die „Services für IBM Lotus Domino‖ verwenden möchte, für verschiedene Betriebssysteme<br />

zur Verfügung:<br />

� Services für IBM WebSphere® Portal®<br />

o HP-UX on HP Integrity<br />

o Linux on x86<br />

o Windows<br />

� Services für IBM Lotus Domino®<br />

o AIX<br />

o i5/OS<br />

o Solaris<br />

o Windows<br />

Seite 405


Je nach Betriebssystem und Installationsvariante gestalten sich die Systemanforderungen<br />

entsprechend unterschiedlich. Diese werden auf den Webseiten von IBM sehr<br />

ausführlich beschrieben 386 . Nachfolgend wird versucht, an zwei Beispielen die Unterschiede<br />

zu verdeutlichen.<br />

Services für IBM WebSphere<br />

Portal<br />

Linux x86<br />

Betriebssystem Red Hat Enterprise Linux (RHEL)<br />

Enterprise Server (ES),<br />

Advanced Server (AS),<br />

Workstation (WS) and Desktop<br />

for x86-32 V4.0 Update 4<br />

Hardwareanforderungen<br />

� Minimum 4 GB free disk space<br />

for installation for IBM Lotus<br />

Quickr<br />

� CD-ROM drive<br />

� Processor: CPU speeds of latemodel,<br />

mid-range to high-end<br />

servers are re-commended.<br />

Pentium 1 GHz or equivalent at<br />

a minimum.<br />

Production environments should<br />

consider the Pentium 4<br />

processor at 2.5 GHz or higher.<br />

Seite 406<br />

Services für IBM Lotus Domino<br />

Windows<br />

� Microsoft Windows 2003<br />

Standard Edition Server Service<br />

Pack 1 and 2 (Microsoft product<br />

site)<br />

� Microsoft Windows 2003<br />

Enterprise Server<br />

� RAM - 512 MB or more is<br />

recommended<br />

� Disk space - 1.5 GB or more is<br />

recommended<br />

� Disk swap space - 2 times<br />

physical RAM installed<br />

� CD-ROM drive<br />

� Processor: CPU speeds of latemodel,<br />

mid-range to high-end<br />

servers are recommended.<br />

Pentium 1 GHz or equivalent at<br />

a minimum. Production<br />

environments should consider<br />

the Pentium 4 processor at 2.5<br />

GHz or higher<br />

Lotus Domino Server - Lotus Domino 7.0.2 Fix Pack 1<br />

Application Server WebSphere Application Server<br />

V6.0.2.17 Network Deployment<br />

Web Server<br />

� Apache Server 2.0.49, 2.0.52, &<br />

2.0.54<br />

� IBM HTTP Server 2.0.47.1<br />

� IBM HTTP Server 6.0, 6.0.1, &<br />

6.0.2<br />

� Microsoft Internet Information<br />

Services 6.0<br />

� IBM Lotus Domino (as Web<br />

server 7.0.2, 7.0.1, 6.5.5 & 6.5.4<br />

� Sun Java System Web Server<br />

6.1 SP3<br />

� Sun Java System Web Server<br />

6.0 SP9<br />

386 Diese können auf den Webseiten von IBM eingesehen werden<br />

http://www-1.ibm.com/support/docview.wss?rs=3264&uid=swg27009740<br />

-<br />

HTTP server included with Lotus<br />

Domino


Web Browser<br />

LDAP-Verzeichnisserver<br />

Unterstützte Java Runtime<br />

Environments<br />

Für die Web Content<br />

Management Komponente in<br />

Lotus Quickr (wikis, blogs, lists,<br />

authoring portlet, rich text editor,<br />

list viewer, and html viewer)<br />

Software for collaboration -<br />

Domino and Extended Products<br />

(optional)<br />

Services für IBM WebSphere<br />

Portal<br />

Linux x86<br />

� Microsoft Internet Explorer 7.0<br />

for Windows XP<br />

� Microsoft Internet Explorer 6.0<br />

SP2 for Windows XP<br />

� FireFox V2.0<br />

� IBM Tivoli Directory Server 6.0<br />

� IBM Tivoli Directory Server 5.2<br />

� IBM Lotus Domino 7.0.2, 7.0.1,<br />

6.5.5, & 6.5.4<br />

� •Novell eDirectory 8.7.3<br />

� Sun Java System Directory<br />

Server 5.2<br />

� Windows Active Directory 2000<br />

or 2003<br />

� Windows Active Directory<br />

Applilcation Mode (ADAM) 2003<br />

Java Runtime Environments<br />

6.0_01, 5.0_11, 5.0_09, 5.0_06,<br />

1.4.2_12, 1.4.2_10, 1.4.2_08,<br />

1.41_07<br />

� IBM Lotus Domino 7.0.2, 7.0.1,<br />

6.5.5, & 6.5.4<br />

� IBM Lotus Sametime 7.5<br />

(WebSphere Portal 6.0.1+) &<br />

7.0<br />

� IBM Lotus Instant Messaging<br />

and Web Conferencing 6.5.1<br />

� IBM Lotus QuickPlace 7.0<br />

� IBM Lotus Team Workplace<br />

6.5.1<br />

Seite 407<br />

Services für IBM Lotus Domino<br />

Windows<br />

� Microsoft Internet Explorer 7.0<br />

for Windows<br />

� Microsoft Internet Explorer 6.0<br />

SP2 (and patches) (Microsoft<br />

product site)<br />

� Mozilla FireFox V1.7<br />

� Apple Safari 1.2.2 and 1.2.4 on<br />

Mac OS X version 10.4<br />

� IBM Tivoli Directory Server 5.2<br />

and 6.0<br />

� IBM Lotus Domino 7.x & 6.5.x<br />

� Sun ONE System Directory<br />

Server 5.2<br />

� Sun ONE Web Server (was<br />

iPlanet) Enterprize 6.0 SP 4<br />

� Windows Active Directory 2003<br />

Java Runtime Environment<br />

<strong>Version</strong> 5.0<br />

IBM Lotus Sametime 7.5 or 7.5.1<br />

External Security Software - � Netegrity SiteMinder 5.5 and 6.0<br />

Software for license<br />

management<br />

IBM Tivoli License Compliance<br />

Manager<br />

� Multi-Server/LTPA<br />

-


Feeds Support<br />

Services für IBM WebSphere<br />

Portal<br />

Linux x86<br />

� Documents component:<br />

supported levels for publish:<br />

� Atom: 1.0<br />

� RSS: not supported<br />

� Documents component:<br />

supported levels for import:<br />

� Atom: 0.3, 1.0<br />

� RSS: 0.90, 0.91 Netscape,<br />

0.91 Userland, 0.92, 0.93,<br />

0.94, 1.0, 2.0<br />

� Feed reader component:<br />

supported levels for import:<br />

� Atom: 0.3, 1.0<br />

� RSS: 0.91, 0.92, 2.0<br />

� Wiki and blog components:<br />

supported levels<br />

� Atom: 1.0<br />

� RSS: not supported<br />

Seite 408<br />

Services für IBM Lotus Domino<br />

Windows<br />

Konnektoren - � Lotus Quickr connector for<br />

Lotus Notes<br />

� Lotus Quickr connector for<br />

Sametime<br />

� Lotus Quickr connector for<br />

Microsoft Windows Explorer<br />

� Lotus Quickr connector for<br />

Microsoft Office<br />

Tabelle 63: Systemkomponenten und –voraussetzungen Lotus Quickr 8<br />

Nach Angaben des Herstellers sind in beiden Installationsvarianten mit Ausnahmen der<br />

Betriebssysteme alle zum Betrieb benötigten Komponenten enthalten. Das heißt, dass<br />

weder WebSphere Portal noch Lotus Domino Server installiert sein müssen und auch<br />

nicht zusätzlich lizenziert werden müssen.<br />

1.5.1.2 Protokolle und Schnittstellen<br />

Lotus Quickr ist in beiden Installationsvarianten als eine Reihe von Webanwendungen<br />

implementiert und die Benutzer können über Standardbrowser darauf zugreifen und<br />

diese nutzen. Darüber hinaus gibt es einige Zusatztools (z.B. Konnektoren), mit denen<br />

Desktopanwendungen, vorrangig unter Windows, als Clients genutzt werden können.<br />

Die zuvor erwähnten Konnektoren basieren auf Webservice-Technologie. Sie dienen<br />

nicht nur zur Einbindung von Desktopanwendungen, sondern auch als Schnittstelle zu<br />

Anwendungen wie Lotus Sametime, um deren Funktionalitäten in Lotus Quickr zu integrieren.<br />

Derzeit bietet IBM Konnektoren für IBM Lotus Notes, IBM Lotus Sametime, Microsoft<br />

Windows Explorer und Microsoft Office als Bestandteil von Lotus Quickr an. Diese<br />

müssen separat auf den Clients installiert werden. Dieses kann eventuell auch durch die<br />

Benutzer selbst vorgenommen werden, sofern sie die notwendigen Rechte dafür auf


ihren Clients besitzen. Die Konnektoren können dann den Benutzern über den Server<br />

zum herunterladen bereitgestellt werden. Diese Konnektoren sind derzeit nur auf<br />

Windows-Clients einsetzbar. IBM plant die Verfügbarkeit der Konnektoren zu erweitern.<br />

Mit Quickr 8.1 sollen unter anderem Konnektoren für Microsoft Outlook und Lotus<br />

Symphony bereitgestellt werden.<br />

Im Fall der Services für Lotus Domino werden die Webanwendungen über einen Domino<br />

Server zur Verfügung gestellt beziehungsweise auf diesem ausgeführt. Dadurch können<br />

eine ganze Reihe der Dominokomponenten und –dienste durch Quickr genutzt werden.<br />

Hierzu zählen u.a.:<br />

� E-Mail<br />

� Authentisierung und Zugriffssteuerung<br />

� Lotus Domino Off-Line Services<br />

� Lotus Domino-Domänensuche (Suche über verschiedene Bereiche und mehrere<br />

Server)<br />

� Lotus Domino-Verzeichnisservice<br />

Dieser kann optional für die Benutzerverwaltung verwendet werden. Es können<br />

aber auch andere LDAP-Verzeichnisdienste hierfür genutzt werden.<br />

� (Lotus Notes) Schablonen als Basis für die Erstellung und Bereitstellung von<br />

Webseiten für die unterschiedlichen Arbeitsbereiche.<br />

Entsprechend werden im Fall der Services für WebSphere Portal Komponenten und<br />

Funktionalitäten der Portalsoftware verwendet.<br />

1.5.1.3 Sicherheitsaspekte<br />

Autorisierung<br />

Die Autorisierung erfolgt über die Zuweisung von Rollen, die mit unterschiedlichen Zugriffsrechten<br />

ausgestattet sind. Standardrollen sind:<br />

� Leser<br />

Darf nur die Inhalte lesen für die er autorisiert wurde.<br />

� Autor<br />

Darf in den Teambereichen auf die er Zugriff hat (autorisiert wurde), neue Inhalte<br />

erstellen, verändern und löschen.<br />

� Manager<br />

Darf ergänzend zu den Autorenrechten auch neue Benutzer für seine Teambereiche<br />

anlegen, ändern und löschen.<br />

Seite 409


� Super Administrator<br />

Hat volle Zugriffsrechte.<br />

� Entwickler<br />

Darf neue Komponenten hinzufügen, die dann durch andere Benutzer verwendet<br />

werden dürfen.<br />

Weitere Rollen können nach Bedarf definiert und zugewiesen werden. Die Rollenzuweisung<br />

kann für einzelne Benutzer und für Benutzergruppen vorgenommen werden. Zugriffsrechte<br />

können hiermit für alle Inhaltsstrukturelemente erteilt werden.<br />

Authentisierung und Zugriffssteuerung<br />

Services für Lotus Domino<br />

Die Authentisierung erfolgt standardmäßig über Benutzerkennung und Passwort. Weiterhin<br />

kann die Lotus Domino-Einzelanmeldung genutzt werden, um Benutzern die Anmeldung<br />

an einem Server zu ermöglichen, ohne dass sie während der Sitzung zur erneuten<br />

Anmeldung aufgefordert werden.<br />

Die Zuteilung von Zugriffsrechten erfolgt rollenbasiert und über Benutzergruppen. Die<br />

Zuweisung der Rechte erfolgt bereichsweise, wobei sich die Rechte in der hierarchischen<br />

Anordnung der Bereich von Oben nach Unten vererben. Ein Bereichsadministrator<br />

kann jedoch die Rechtezuteilung für einen Bereich anpassen.<br />

Sinnvoll ist es, für die Benutzerverwaltung ein LDAP-Verzeichnis zu integrieren. Erst<br />

dadurch können den Benutzern folgende Funktionen zur Verfügung gestellt werden 387 :<br />

� Authentisierung über die Einzelanmeldung<br />

� Superuser-Zugriff auf den/die Server<br />

� Benutzernamen in Doppelbytezeichensätzen<br />

� „Meine Bereiche‖ für die Auflistung persönlicher Bereiche<br />

� Integration von Lotus Sametime Funktionen<br />

Weitere Vorteile sind:<br />

� Zentrale Haltung der Benutzerdaten<br />

� Externe Mitglieder von Arbeitsgruppen erhalten bei zentraler Haltung einen<br />

einheitlichen Namen und ein Kennwort. Bei lokaler Haltung in den Bereichen<br />

können unterschiedliche Namen und Kennworte verwendet werden.<br />

� Die lokale Zugehörigkeit zu Bereichen wird weiterhin unterstützt. Das bedeutet,<br />

dass ein Benutzer einem oder mehreren Bereichen als Mitglied zugeordnet<br />

werden kann.<br />

Die Steuerung des Verzeichnisdienstes kann entweder von Lotus Quickr oder vom Lotus<br />

Domino Server übernommen werden. Dies kann über die Administrationsumgebung kon-<br />

387 Siehe auch im Administratorhandbuch zu Lotus Quickr<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 410


figuriert werden. Wenn die Steuerung durch den Domino Server übernommen wird, kann<br />

Quickr ein beliebiges Verzeichnis aus der Liste aller vom Domino Server verwendeten<br />

Verzeichnisse nutzen 388 .<br />

Services für WebSphere Portal 389<br />

Standardmäßig erfolgt die Authentisierung über Benutzerkennung und Passwort über<br />

Mechanismen des Portals beziehungsweise des Application Servers. Darüber hinaus<br />

unterstützt Quickr die Authentisierung über SSL-Clientzertifikate sowie die automatische<br />

Anmeldung über eine sogenannte „Anmelde-URL‖. In einer solchen Anmelde-URL sind<br />

Benutzerkennung und Passwort enthalten. Ein solches Anmeldeverfahren ist aus Sicht<br />

der IT-Sicherheit nicht zu empfehlen.<br />

Auch hier besteht die Möglichkeit der Nutzung von Einzelanmeldungen, diesmal aber<br />

nicht unter Zuhilfenahme von Domino-Technologie, sondern mit Hilfe von WebSphere<br />

Technologie.<br />

Genau wie bei der Verwendung der Services für Lotus Domino besteht auch die Möglichkeit<br />

der Integration eines Verzeichnisdienstes als Benutzerverzeichnis für eine zentrale<br />

Haltung der Benutzerdaten. Andererseits können auch durch Realm-Unterstützung<br />

Benutzer aus verschiedenen Verzeichnisstrukturen zusammengeführt werden und<br />

Quickr als einheitliche Benutzergruppe präsentiert werden.<br />

Alternativ besteht die Möglichkeit, die Benutzer in der Lotus Quickr-Datenbank zu verwalten.<br />

Hinsichtlich der Zugriffssteuerung werden bei der Verwendung der Services für WebSphere<br />

Portal vergleichbare Strukturen verwendet, wie bei der Verwendung der Services<br />

für Lotus Domino. Die Zuteilung von Rechten erfolgt rollenbasiert und Ressourcenbezogen.<br />

Alle Ressourcen, wie zum Beispiel Web Module und Portlet Anwendungen,<br />

sind hierarchisch angeordnet und die Zugriffrechte werden immer von Oben nach Unten<br />

vererbt. Für jede Ressource können die Zugriffsrechte dann individuell verändert werden.<br />

Mit dieser kurzen Darstellung wird lediglich versucht, das grundlegende Prinzip aufzuzeigen.<br />

Insgesamt handelt es sich hierbei aber um detailreiche Mechanismen, deren<br />

Darstellung im Administratorhandbuch mehrere Seiten einnimmt 390 .<br />

Clustering und Replikation<br />

Zur Sicherstellung einer bedarfsgerechten Verfügbarkeit und Performanz bei den Zugriffen<br />

auf Lotus Quickr besteht die Möglichkeit, die Funktionen entweder von Lotus Domino-Clustering<br />

und –Replikation oder der WebSphere Funktionen für den Aufbau eines<br />

Clusters und die Synchronisierung der Bereichsinhalte zwischen den Servern zu nutzen.<br />

388 Laut Administratorhandbuch sogar mehr als einen, siehe<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

389 Siehe Administratorhandbuch für Lotus Quickr<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

390 Siehe Administratorhandbuch für Lotus Quickr<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 411


Sonstiges<br />

Problematisch ist, dass wesentliche Funktionalitäten nur genutzt werden können, wenn<br />

aktive Inhalte zugelassen werden. Dies ist aus Sicht der IT-Sicherheit bedenklich. Hier<br />

sollten in jedem Fall die Hinweise des Bundesamt für Sicherheit in der Informationstechnik<br />

zur „Sicherheit im Internet― 391 , zum Umgang mit aktiven Inhalten 392 und zu Web 2.0 393<br />

berücksichtigt werden.<br />

1.5.2 Funktionalitäten<br />

1.5.2.1 Lotus Quickr Services für Lotus Domino<br />

Die Unterstützung der Zusammenarbeit in Arbeitsgruppen mit Hilfe von Lotus Quickr<br />

erfolgt in definierten Arbeitsbereichen, die sich in unterschiedliche funktionale Bereiche<br />

gliedern.<br />

In diesen Arbeitsbereichen können Arbeitsgruppen mit Hilfe der verschiedenen Funktionen,<br />

wie Blogs, Wikis, Tasks sowie Chats und Online-Besprechungen (nur zusammen<br />

mit Lotus Sametime) oder der gemeinsamen Bearbeitung und Nutzung von Dokumenten<br />

zusammenarbeiten. Daneben gibt es eine Reihe weiterer Funktionen, die in der nachfolgenden<br />

Tabelle zusammengefasst aufgeführt werden.<br />

In den Arbeitsbereichen können mit Hilfe von Vorlagen, Schablonen und Schemas, sowie<br />

bereitgestellten Funktionen und Oberflächen auf relativ einfache Weise neue Bereiche<br />

und Schablonen erstellt werden.<br />

Innerhalb der angelegten Arbeitsbereiche können je nach Funktion folgende Aktivitäten<br />

durchgeführt werden:<br />

� Erstellen von Dokumenten<br />

� Bearbeiten, kopieren, verschieben und löschen von Dokumente<br />

� Hinzufügen von Anhängen<br />

� Erstellen und Bearbeiten von Einträgen in Kalendern<br />

� Verwaltung von Zugriffrechten<br />

� Über neue und geänderte Inhalte informieren<br />

� Hochladen von Dateien mit den folgenden Formaten, sofern Windows Internet<br />

Explorer als Browser eingesetzt wird:<br />

o HTML- oder HTM-Dateien<br />

o XML-Dateiformate von MS Office 2007 (*.docx , *.pptx und *.xlsx)<br />

391 http://www.bsi.de/fachthem/sinet/allgemeines/sinetstd.htm<br />

392 http://www.bsi.de/fachthem/sinet/gefahr/aktiveinhalte/index.htm<br />

393 http://www.bsi.de/literat/studien/web20/index.htm<br />

Seite 412


o .doc/.xls/.ppt-Dateien von MS Word 2000/XP/2003, sofern die jeweiligen<br />

MS Office Anwendungen installiert sind<br />

o Bilddateien vom Typ .Gift, .jpg oder .jpeg<br />

Funktionen Details<br />

Dokumentenmanagement Dokumente/Inhalte ein- oder auschecken<br />

<strong>Version</strong>ierung von Dokumenten<br />

Kategorisierung von Dokumenten (Metadaten)<br />

Verwaltung von Aufgaben (Tasks) Mit Hilfe von speziellen Aufgabenordnern können Aufgaben<br />

verwaltet werden.<br />

Tasks können mit Hilfe von PlaceBot bei Verwendung<br />

der Services für Lotus Domino automatisiert überwacht<br />

werden.<br />

―Meine Bereiche" Der Ordner "Meine Bereiche" besitzt die Funktion, eine<br />

Liste aller Bereiche eines Benutzers, in denen er Mitglied<br />

ist, zusammenzustellen.<br />

Die einzelnen Bereiche können sich dabei durchaus auf<br />

unterschiedlichen Servern eines Lotus Quickr Verbundes<br />

befinden.<br />

E-Mail Mit Hilfe der E-Mailfunktion können eingehende E-Mails<br />

bearbeitet werden und es können neue Mitglieder einige<br />

laden werden.<br />

Die E-Mailfunktion kann für jeden Arbeitsbereich eingerichtet<br />

werden.<br />

Abonnements Es können verschiedene Informationsquellen abonniert<br />

werden, wie z.B. RSS-Feeds oder Infobriefe<br />

Portalfunktionen � Wikis<br />

� Blogs<br />

� Personalisierungsfunktion<br />

Automation/Workflow � Mit Hilfe von sogenannten Masken können Workflows<br />

realisiert werden<br />

Lotus Quicker stellt einige Standard-Workflows zur<br />

Verfügung 394 .<br />

� PlaceBots ermöglichen die automatisierte Verfolgung<br />

und Überwachung von Tasks<br />

RSS-Feeds Können in verschiedenen Arbeitsbereichen, wie zum<br />

Beispiel Blogs oder Wikis eingerichtet werden.<br />

394 Siehe Benutzerhandbuch und Administrationshandbuch<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 413


Funktionen Details<br />

Echtzeit-Kolaboration Chatfunktion und Präsenzanzeige können durch die<br />

Integration von IBM Lotus Sametime mittels des verfügbaren<br />

Konnektors und entsprechender Konfiguration 395<br />

bereitgestellt werden.<br />

Es besteht dann weiterhin die Möglichkeit<br />

� Online-Besprechungen (Telefonkonferenzen<br />

und e-Meetings) zu planen<br />

� dazu einzuladen<br />

� daran teilzunehmen<br />

hierzu stehen ein Kalender und ein Zeitplanungssystem<br />

zur Verfügung<br />

Suche Erwähnenswert ist vor allem die Erweiterte Suche, sie<br />

ermöglicht die gezielte Suche nach:<br />

� Ordnern<br />

� Chats<br />

� Räumen<br />

� Inhalten<br />

Bezüglich Inhalten kann wiederum gezielt gesucht werden<br />

nach:<br />

� Autoren<br />

� einem bestimmten Erstellungsdatum<br />

� konkreten Textstücken<br />

Die Suche kann auf einen Bereiche begrenzt oder auf<br />

alle Bereiche (auch über mehrere Server) ausgeweitet<br />

werden.<br />

Offline-Bereiche Ein Bereich kann als Kopie auf dem Client (z.B. Notebook)<br />

abgelegt werden und dann offline genutzt werden.<br />

Dieser Bereiche kann mit dem Online-Bereich synchronisert<br />

werden.<br />

Struktur der Arbeitsbereiche<br />

Tabelle 64: Funktionen von Lotus Quickr Services für Domino<br />

Für die Zusammenarbeit in Arbeitsgruppen werden in Lotus Quickr Bereiche bereitgestellt.<br />

Bereich werden dabei durch Lotus Notes-Datenbanken (NSF-Dateien) realisiert 396 .<br />

Die Struktur einer Datenbank wird durch entsprechende Schablonen, welche die Formulare<br />

und Felder beinhalten, definiert. Für die Anlage von einem Bereich stellt Quickr drei<br />

verschiedene Arten von Schablonen zur Verfügung 397 :<br />

395 Siehe Benutzerhandbuch und Administrationshandbuch<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

396 Mehr zu Schablonen finden Sie unter<br />

http://www.ibm.com/developerworks/lotus/documentation/dominodesigner/<br />

397 Siehe Benutzerhandbuch, Services für Lotus Domino, Abschnitt: „Einen Bereich erstellen―<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 414


� Standard<br />

Diese Schablone stellt Funktionen wie beispielsweise Inhaltsverzeichnis, Diskussion,<br />

Aufgaben, Kooperation, Mitgliederordner zur Verfügung.<br />

� Blog<br />

Diese Schablone ermöglicht die Anzeige von Informationen im Stil eines Tagebuches,<br />

sie beinhaltet u.a.:<br />

o Inline-Kommentare,<br />

o einen Kalender,<br />

o eine Suchfunktion,<br />

o das Einrichten eines RSS-Feeds vor<br />

� Wiki<br />

Diese Schablone liefert die Vorlage für einen Bereich, der vor allem auf Kooperation<br />

setzt und Interaktion unterstützt. Sie beinhaltet unter anderem auch<br />

das Einrichten eines RSS-Feeds.<br />

Schablonen können verändert werden und es können weitere Schablonen mit dem kostenpflichtigen<br />

Lotus Domino Designer erstellt werden 398 . Weiterhin gibt es Schablonen,<br />

die von Drittanbietern kostenfrei zur Verfügung gestellt werden 399 .<br />

Innerhalb eines Bereichs wird zwischen logischen Räumen unterschieden. Jeder Raum<br />

wiederum kann weitere Räume enthalten. Daneben enthält jeder Raum Ordner und<br />

Masken sowie einen Mitgliedsordner.<br />

Ordner werden nach Typen für unterschiedliche Funktionen unterschieden:<br />

� Einfache Liste<br />

� Diskussion<br />

� Sortierte Liste<br />

� Präsentation<br />

� Ordner mit Kopfzeile<br />

Zu den Listen gehören beispielsweise Mitteilungslisten, Kontaktlisten und Projekttasklisten.<br />

Masken sind Eingabemasken mit hinterlegten Funktionalitäten, wie z.B. die Überprüfung<br />

einer Eingabe oder ein Workflow, der ausgeführt wird. Masken können selbst erstellt<br />

oder als HTML- oder MS Office-Datei importiert werden.<br />

Automation<br />

In Lotus Quickr Services für Lotus Domino werden Workflows mittels Masken realisiert.<br />

Allerdings handelt es sich hierbei um relativ einfache Workflows 400 . Zu den mitgelieferten<br />

398 http://www-306.ibm.com/software/lotus/products/dominodesigner/<br />

399 http://templates.snapps.com/<br />

400 Zu der Frage, ob und wenn ja, wie Workflows geändert oder selbst erstellt und integriert<br />

werden können, war bisher nicht in Erfahrung zu bringen.<br />

Seite 415


Workflows, die bei der Erstellung oder Änderung einer Maske ausgewählt werden können,<br />

sind:<br />

� Nur einreichen<br />

Dem Autor wird lediglich eine Möglichkeit zu Veröffentlichung eingeräumt.<br />

� Chefredakteur<br />

Das Dokument soll durch ein bestimmtes Mitgliede geprüft und freigegeben<br />

werden.<br />

� Freigabe<br />

Das Dokument soll durch mehrere Mitglieder geprüft und freigegeben werden.<br />

� Mehrere Bearbeiter<br />

Alle Mitglieder mit Autorzugriffrechten im aktuellen Bereich dürfen jedes mit<br />

der Maske erstellte Element bearbeiten.<br />

Für die automatisierte Verfolgung und Überwachung der Aufgabenerledigung können<br />

sogenannte PlaceBots verwendet werden. Hierbei handelt es sich um Agenten, die Daten<br />

innerhalb eines Bereichs verwalten und bearbeiten können. Diese Agenten können<br />

sowohl zeit- als auch eventgesteuert arbeiten. Erstellt werden diese entweder auf Basis<br />

von Java oder mit Lotus-Script.<br />

1.5.2.2 Lotus Quickr Services für Webspere Portal<br />

Genau wie bei der Verwendung der Services für Lotus Domino stehen den Arbeitsgruppen<br />

Blogs, Wikis, Tasks sowie Chats und Online-Besprechungen (nur zusammen mit<br />

Lotus Sametime) oder die gemeinsame Bearbeitung und Nutzung von Dokumenten für<br />

die Zusammenarbeit zur Verfügung.<br />

Daneben gibt es eine Reihe weiterer Funktionen, die in der nachfolgenden Tabelle zusammengefasst<br />

aufgeführt werden.<br />

Funktionen Details<br />

Dokumentenmanagement � Dokumente/Inhalte ein- oder auschecken<br />

� <strong>Version</strong>ierung von Dokumenten<br />

� Kategorisierung von Dokumenten (Metadaten)<br />

Verwaltung von Aufgaben (Tasks) Mit Hilfe von speziellen Aufgabenordnern können Aufgaben<br />

verwaltet werden.<br />

"Meine Bereiche" Der Ordner "Meine Bereiche" besitzt die Funktion, eine<br />

Liste aller Bereiche eines Benutzers, in denen er Mitglied<br />

ist, zusammenzustellen.<br />

Die einzelnen Bereiche können sich dabei durchaus auf<br />

unterschiedlichen Servern eines Lotus Quickr Verbundes<br />

befinden.<br />

Seite 416


Funktionen Details<br />

E-Mail Mit Hilfe der E-Mailfunktion können eingehende E-Mails<br />

bearbeitet werden und es können neue Mitglieder einige<br />

laden werden.<br />

Die E-Mailfunktion kann für jeden Arbeitsbereich eingerichtet<br />

werden.<br />

Abonnements Es können verschiedene Informationsquellen abonniert<br />

werden, wie z.B. RSS-Feeds oder Infobriefe<br />

Portalfunktionen � Wikis<br />

� Blogs<br />

� Personalisierungsfunktion<br />

Automation/Workflow Workflows werden bei Verwendung der Services für<br />

WebSphere Portal durch die sogenannten Verbundanweisungen<br />

realisiert 401 .<br />

RSS-Feeds Können in verschiedenen Arbeitsbereichen, wie zum<br />

Beispiel Blogs oder Wikis eingerichtet werden.<br />

Echtzeit-Kolaboration Chatfunktion und Präsenzanzeige können durch die<br />

Integration von IBM Lotus Sametime mittels des verfügbaren<br />

Konnektors und entsprechender Konfiguration402<br />

bereitgestellt werden.<br />

Es besteht dann weiterhin die Möglichkeit<br />

� Online-Besprechungen (Telefonkonferenzen<br />

und e-Meetings) zu planen<br />

� dazu einzuladen<br />

� daran teilzunehmen<br />

hierzu stehen ein Kalender und ein Zeitplanungssystem<br />

zur Verfügung<br />

Dokumentenbearbeitung Der Standardeditor für Lotus Quickr ist der ―Richt Text-<br />

Editor‖.<br />

Um Desktopanwendungen, wie zum Beispiel Office-<br />

Anwendungen, für die Arbeit mit Dokumenten nutzen zu<br />

können, muss das ―Bibliotheks-Browser-Plug-in‖ im<br />

Browser installiert und aktiviert werden. Laut Hersteller<br />

muss dafür ActiveX und das Erstellen von Scripts konfiguriert<br />

sein. Als unterstützte Browser werden<br />

� Microsoft Internet Explorer und<br />

� FireFox<br />

angegeben 403 .<br />

401 Siehe Benutzerhandbuch und Administrationshandbuch<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

402 Siehe Benutzerhandbuch und Administrationshandbuch<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

403 Es werden allerdings keine Angaben zu <strong>Version</strong>en gemacht (siehe<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp)<br />

Seite 417


Funktionen Details<br />

Suche In Lotus Quickr Services für Portal stellt eine Portalsuchfunktion<br />

zur Verfügung. Damit wird die Indexierung von<br />

Informationsquellen erleichtert und die Suche verbessert.<br />

Bereichsstrukturen 404<br />

Die Suche wird über das Suchzentrum bereitgestellt. Die<br />

folgenden wichtigen Suchfunktionen können genutzt<br />

werden:<br />

� Filterung der Suchergebnisse auf Basis verschiedener<br />

Attribute<br />

� Verwendung eines oder mehrerer Suchservices<br />

� Verwendung von Suchbereichen zur Eingrenzung der<br />

Suche<br />

� Erstellen von Suchgruppen<br />

� Crawlersuche in mehreren Webseiten, Portalseiten<br />

und Unterdomänen<br />

� Suchfunktionen wie im Internet<br />

� Durchsuchen von Dokumenten<br />

� Sprachunterstützung<br />

� Kategorisierung in einer Taxonomie<br />

� Bearbeitung von Dokumentmetadaten<br />

Tabelle 65: Funktionen von Lotus Quickr Services für WebSphere Portal<br />

Auch hier erfolgt die Strukturierung nach Bereichen, dabei werden beim Anlegen eines<br />

neuen Bereichs folgende Bereichstypen angeboten:<br />

� Angepasst<br />

Hier werden nur einige Standardkomponenten installiert. Anschließend kann<br />

der Benutzer den Bereich Stück für Stück weiter ausgestalten und die benötigten<br />

Komponenten hinzufügen.<br />

� Bibliothek<br />

Bibliotheksbereiche sind Sammelstellen für Dokumente und Mediendateien.<br />

� Besprechungsbereich<br />

Dieser Typ ist speziell auf Organisations- und Verwaltungsfunktionen für Arbeitsgruppenbesprechungen<br />

ausgerichtet. Bestandteil dieses Bereichs ist<br />

auch eine Bibliothek (Unterbereich) für die besprechungsrelevanten Dokumente.<br />

� Projektbibliotheksbereich<br />

Dieser Bereich ist speziell auf die Arbeit in Projekten ausgerichtet.<br />

404 Siehe Benutzerhandbuch und Administrationshandbuch<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 418


� Team-Blog<br />

Dieser Bereichstyp ermöglicht die Darstellung von Informationen in Form eines<br />

Tagebuches.<br />

� Team-Bereich<br />

Dieser Typ stellt einen Bereich bereit, wo verschiedene Teaminhalte verwaltet<br />

werden können. Bestandteil eines solchen Bereichs sind die weiteren Bereiche<br />

Blog und Bibliothek, um einen große Funktionsvielfalt abzubilden.<br />

� Team-Wiki<br />

Dieser Typ ist insbesondere auf die Unterstützung von Interaktionen ausgerichtet.<br />

Die Vorlagen für die verschiedenen Bereichstypen basieren auf Schablonen und können<br />

bei Bedarf angepasst oder durch benutzerdefinierte Schablonen ergänzt werden.<br />

Automation<br />

Zur Realisierung von Workflows wird in Lotus Quickr Services für WebSphere Portal das<br />

Konstrukt der Verbundanwendung verwendet. Für die Erstellung von Verbundanwendungen<br />

werden Anwendungsschablonen verwendet 405 . Sie bieten die Möglichkeiten auf<br />

einfache Weise neue Verbundanwendungen zusammenzustellen. Hierfür steht eine Reihe<br />

von Schablonen in einer Anwendungsschablonenbibliothek zur Verfügung. Auf Basis<br />

dieser Schablonen können auch neue Schablonen erstellt und in die Bibliothek integriert<br />

werden. Mit Hilfe der Schablonen werden für die Verbundanwendungen diverse Elemente<br />

definiert, beispielsweise die Eigenschaften, die Rollen und ihre Parameter. Für einige<br />

der Schablonen können auch Workflows definiert werden. Als Standardworkflow wird der<br />

Freigabeprozess von Dokumenten mitgeliefert, sowohl für eine parallele als auch eine<br />

serielle Freigabe..<br />

1.5.2.3 Verwaltungs- und Administrationswerkzeuge<br />

Für die Administration und Verwaltung einer Quickr-Umgebung bei Verwendung der<br />

Services für Lotus Domino stehen bei einer Installationsvariante als Services für Lotus<br />

Domino zum einen die Werkzeuge von Lotus Quickr und zum anderen die Werkzeuge<br />

von Lotus Domino in Kombination zur Verfügung. Hierzu gehören:<br />

� Lotus Quickr<br />

o Das „QPTool‖<br />

Dieses wird über die Serverkonsole mit Befehlen und zugeordneten<br />

Parametern ausgeführt.<br />

o Die Konfigurationsdatei ―qpconfig.xml‖<br />

o Die „Site-Verwaltung‖ auf der Homepage des Servers<br />

Hierbei handelt es sich um eine Web-basierte Administrationsschnittstelle,<br />

über welche die Verbindung zum Benutzerverzeichnis herges-<br />

405 Siehe Lotus Quickr Benutzerhandbuch, Services für WebSphere Portal, Verbundanwendungen,<br />

http://publib.boulder.ibm.com/infocenter/lqkrhelp/v8r0/index.jsp<br />

Seite 419


� Lotus Domino<br />

tellt, der Zugriff auf den/die Server gesteuert und andere Konfigurationen<br />

verwaltet werden können.<br />

o Der Domino Administrator-Client<br />

o Die Konfiguration über das Domino-Verzeichnis „names.nsf‖<br />

o Die Konfigurationsdatei notes.ini<br />

Bei der Verwendung der Services für WebSphere Portal werden die Verwaltungswerkzeuge<br />

mit dem zu Grunde liegenden WebSphere Portal bereitgestellt beziehungsweise<br />

es können die Werkzeuge verwendet werden, die mit Portal bereitgestellt werden. Hierzu<br />

zählen:<br />

1.5.3 Fazit<br />

� Eine Reihe von Verwaltungsportlets für die Verwaltung der Portalressourcen<br />

� Eine XML-Konfigurationsschnittstelle für Stapelverarbeitung von Verwaltungsaufgaben<br />

� Eine Skript-basierte Schnittstelle zur Erstellung eigener Verwaltungsskripts,<br />

zum Beispiel für die Automatisierung von Verwaltungsaufgaben.<br />

Positiv festzuhalten bleibt, dass mit Lotus Quickr eine Kollaborationssoftware verfügbar<br />

ist, die einen umfangreichen Korb an Funktionen für die Unterstützung der Zusammenarbeit<br />

in Teams mitbringt, die weiterhin serverseitig mehr als nur eine Betriebssystemplattform<br />

unterstützt und auf bewehrter Technologie des Herstellers aufbaut.<br />

Ob die Tatsache, dass die Software mit ihren beiden Installationsvarianten, einmal als<br />

Services für Lotus Domino und das andere mal als Services für WebSphere Portal, auf<br />

zwei unterschiedlichen (Application)Server-Plattformen aufbaut und genutzt werden<br />

kann, positiv oder negativ zu bewerten ist, muss vorläufig noch unbeantwortet bleiben.<br />

Ungünstig ist, dass der Hersteller hierzu keine prägnanten Hinweise liefern kann, welches<br />

die ausschlaggebenden Kriterien für die eine oder die andere Wahl sein sollten. Es<br />

wird auch nicht deutlich, ob und wo es vielleicht wesentliche Unterschiede in den Funktionen<br />

gibt. Im Rahmen der hier durchgeführten Betrachtungen konnten nur Indizien aufgedeckt<br />

werden, die funktionelle Gründe gegebenenfalls bei den Möglichkeiten der Offline-Nutzung<br />

und der Workflowgestaltungs- und –nutzungsmöglichkeiten sehen.<br />

Abschließend bleibt festzuhalten, dass für die Nutzung weiterer Funktionalitäten, wie<br />

zum Beispiel „Echtzeitkommunikation― zusätzliche kostenpflichtige Software des Herstellers,<br />

wie Lotus Sametime, beschafft werden muss.<br />

Ungeünstig stellt sich die heute noch bestehende einseitige Ausrichtung und Abhängigkeit<br />

auf Windows und Microsoftprodukte sowie -dateiformate im Clientbereich dar. Trotz<br />

der Tatsache, dass es sich bei Lotus Qickr eigentlich um eine Webanwendung handelt,<br />

wird für eine optimierte Nutzung aller Funktionen zusätzliche Software auf Clientseite<br />

benötigt, die heute nur für Windows, Microsoftprodukte, -dateiformate und eigene Produkte<br />

verfügbar ist.<br />

Seite 420


C Thema Office / Desktop<br />

1 Produkte / Technologien<br />

Im Fokus der nachfolgenden Betrachtung zu den Office-Suiten stehen die Standard-<br />

Anwendungen von Microsoft Office (kurz MS Office) und OpenOffice.org/StarOffice (kurz<br />

OOo/SO). Eine erneute Betrachtung der Migrationsoptionen mit Blick auf diese<br />

Anwendungsgattung erscheint aufgrund der Veröffentlichung von MS Office 2007 sowie<br />

der neuen <strong>Version</strong>en von OpenOffice.org (OpenOffice 2) und Sun (StarOffice 8)<br />

erforderlich.<br />

Alle Office-Produkte haben seit der Veröffentlichung des letzten <strong>Migrationsleitfaden</strong>s<br />

(<strong>Version</strong> 2.1) insbesondere hinsichtlich der Dateiformate einen erheblichen Wandel vollzogen.<br />

So verwendet die aktuelle Office <strong>Version</strong> von Microsoft ein neues, nun gänzlich<br />

auf XML basierendes (Standard-)Dateiformat. Das von OpenOffice.org beziehungsweise<br />

StarOffice genutzte Standarddateiformat ist nach kleinen Veränderungen nun ein international<br />

normierter Standard. Dieser Wandel soll in einer neuen aktualisierten Fassung<br />

betrachtet werden um u.a. zu prüfen, welche Änderungen es gab, wie diese sich auf die<br />

Arbeit mit den Office-Suiten auswirken und welche neuen Erkenntnisse sich für die Migrationsentscheidungen<br />

ergeben.<br />

Im nachfolgenden Abschnitt werden die beiden Office-Suiten OpenOffice.org 2 und<br />

StarOffice 8 und Microsoft Office 2007 einander gegenübergestellt. Die Zusammenfassung<br />

von OOo und SO ist darin begründet, dass sich beide Suiten funktional nur gering<br />

voneinander unterscheiden. Der Vollständigkeit halber werden die Vorgängerprodukte<br />

(MS Office 11; SO 7/OOo 1) und deren wesentliche Unterschiede zum Nachfolger dargestellt.<br />

1.1 OpenOffice.org 2 und 1 / StarOffice8 und 7<br />

Die Entwicklung der Basistechnologie der beiden Office-Suiten erfolgt auf Open-<br />

Office.org. Im Jahre 2000 hat Sun Microsystems den Quelltext des damaligen Office-<br />

Pakets StarOffice 5.2 in das Open Source Projekt OpenOffice.org überführt. Das OpenOffice.org<br />

Projekt steht unter der Lizenz LGPL 406 (Lesser GNU Public License), welche<br />

es ermöglicht, kostenpflichtige Produkte aus OpenOffice.org abzuleiten. Andererseits<br />

garantiert sie durch die Wiederverwendung der relevanten Komponenten von OpenOffice.org,<br />

dass die Spezifikationen des API und des ODF-Dateiformates für alle Derivate<br />

einheitlich sind.<br />

Für StarOffice entwickelt die Firma Sun zusätzliche Komponenten und schnürt ein Produktpaket<br />

aus professioneller Qualitätssicherung, umfangreicher Dokumentation, Support<br />

und Schulungsangeboten.<br />

406 Alle OpenOffice.org-<strong>Version</strong>en vor 2.0 wurden parallel dazu unter der Sun Industry Standard<br />

Source License (SISSL) veröffentlicht. Weitere Details dazu finden sich unter<br />

http://www.openoffice.org/FAQs/license-change.html, sowie in Abschnitt 3.13.5.1 der <strong>Version</strong><br />

2.1 des <strong>Migrationsleitfaden</strong>s.<br />

Seite 421


Einige der Sun-Komponenten sind:<br />

� Migrations-Tools,<br />

� Zusätzliche Vorlagen und Grafiken,<br />

� TrueType Fonts, welche an die Fonts von Microsoft angelehnt sind,<br />

� Eine eigene Rechtschreibprüfung und Thesauri, wobei OpenOffice.org als Standard-Spellchecker<br />

MySpell (LGPL) beziehungsweise die verbesserte Variante<br />

Hunspell seit der <strong>Version</strong> 2.02. verwendet,<br />

� Die Datenbank Adabas-D der Firma Software AG.<br />

Des Weiteren liefert Sun Bug-Patches oder Servicepacks für die jeweiligen Produktversionen.<br />

So gibt es derzeit alle drei Monate ein StarOffice Servicepack für jede <strong>Version</strong> 407 ,<br />

das verbesserte Sicherheitsaspekte, Korrekturen für Programmfehler oder Verbesserungen<br />

der Importfilter beinhaltet. OpenOffice.org hingegen enthält diese Komponenten<br />

nur in der jeweils allerneuesten <strong>Version</strong> und man muss sich das gesamte Produktpaket<br />

herunterladen.<br />

Die StarOffice Suite ist im Gegensatz zu der freien OpenOffice.org Suite kostenpflichtig,<br />

wobei Sun Microsystems erstere kostenfrei an Schüler, Studenten und akademische<br />

Einrichtungen abgibt. Darüber hinaus ist StarOffice 8 seit August 2007 als Bestandteil<br />

des kostenlosen Google Packs 408 erhältlich.<br />

1.1.1 OpenOffice.org 2.x / StarOffice 8<br />

Die <strong>Version</strong>sfamilie 2.x ist die aktuelle <strong>Version</strong> der freien OpenOffice,org Office-Suite,<br />

welche nach ca. zweijähriger Entwicklung erstmals im Oktober 2005 veröffentlicht wurde<br />

und die Vorgängerversionsfamilie 1.1.x ablöst. Fast zeitgleich mit dem Release der<br />

neuen <strong>Version</strong> wurde noch eine <strong>Version</strong> 1.1.5 veröffentlicht, welche einen Importfilter für<br />

das neue Dokumentenformat ODF der Nachfolgerversionsfamilie beinhaltete.<br />

OpenOffice.org ist unter Microsoft Windows, Linux, Mac OSX, Solaris, FreeBSD und<br />

anderen Unix-Derivaten lauffähig und wird unentgeltlich unter der LGPL-Lizenz vertrieben.<br />

StarOffice 8 basiert auf den Quellen von OpenOffice.org 2.x und enthält, wie erwähnt,<br />

diverse Erweiterungen, die Sun Microsystems beisteuert. Es existieren Installationspakete<br />

für Microsoft Windows, Linux und Solaris.<br />

Zentrale Neuerungen gegenüber den älteren <strong>Version</strong>en OpenOffice.org 1.1.x beziehungsweise<br />

StarOffice 7 sind ein eigenes Datenbankmodul (Base), ferner die Verwendung<br />

des OpenDocument Formates (ODF) als Standard-Dateiformat, welches von OA-<br />

SIS auf Grundlage des alten OpenOffice.org-Dateiformats spezifiziert und im Jahr 2006<br />

als internationale Norm veröffentlicht wurde (siehe dazu ISO/IEC 26300) sowie eine verbesserte<br />

Unterstützung von MS-Office-Dokumenten.<br />

407 Die aktuellen Service Packs sind seit Oktober 2007 für StarOffice 6 (Service Pack 8), Star-<br />

Office 7 (Service Pack 11) und StarOffice 8 (Service Pack 8) erhältlich.<br />

408 Siehe dazu http://pack.google.com/.<br />

Seite 422


Weitere Neuerungen finden sich im Bereich der Benutzersteuerung, den weiterentwickelten<br />

Import- und Exportfiltern sowie der Unterstützung digitaler Signaturen, die erstmal in<br />

OOo integriert wurde. Die Benutzeroberfläche wurde teilweise geändert, um der von MS<br />

Office 2003 näher zu kommen und dadurch den Benutzern anderer Office Suiten den<br />

Umstieg zu erleichtern.<br />

1.1.1.1 Bestandteile und Funktionalitäten<br />

Die Office-Suiten beinhalten alle wesentlichen Einzelanwendungen, die von anderen<br />

Office-Paketen bekannt sind. Auf eine Auflistung aller Funktionalitäten der nachfolgend<br />

angeführten Office Komponenten wird an dieser Stelle verzichtet. Vor allem sollen im<br />

Wesentlichen nur die Kernanwendungen Textverarbeitung, Tabellenkalkulation und<br />

Präsentationswerkzeug genauer betrachtet werden. Dies sind die Anwendungen, die in<br />

fast allen Office-Suiten verfügbar sind. Alle anderen Anwendungen variieren zum Teil,<br />

müssen anderen Themen, wie zum Beispiel den Datenbanken zugeordnet werden oder<br />

können auch als Einzelanwendung gesehen werden. Bei den Office Anwendungen<br />

handelt es sich im Einzelnen um:<br />

Writer (Textverarbeitung)<br />

Bei Writer handelt es sich um die Textverarbeitungskomponente der Office-Suiten. Das<br />

Programm unterstützt alle Funktionen einer modernen Textverarbeitung und orientiert<br />

sich dabei an den von Microsoft Word angeboten Funktionalitäten. Zur besseren Bearbeitung<br />

umfangreicher Schriften können einzelne Textdokumente (.odt) nachträglich zu<br />

einem gemeinsamen Globaldokument (.odm) zusammengefügt werden. Besonders hilfreich<br />

ist in diesem Zusammenhang der sogenannte Navigator, der verschiedene Überblicksansichten<br />

und Gliederungen bietet und somit das Auffinden bestimmter Informationen<br />

und die Orientierung in langen Dokumenten erleichtert.<br />

Formatvorlagen können für einzelne Zeichen, Absätze, Rahmen, Listen, Kapitel und<br />

Seiten eingerichtet werden. Innerhalb der Texte können verschiedene Verzeichnisse,<br />

wie Inhalts-, Stichwort-, Abbildungs-, Literatur-, Tabellen-, Objekt- und Literaturverzeichnisse<br />

erzeugt und angepasst werden. Über Live-Hyperlinks und Textmarken<br />

kann direkt zu Textstellen gesprungen werden. Für das Schreiben wissenschaftlicher<br />

Arbeiten kann der Anwender zudem auf einen Formeleditor und eine Literaturdatenbank<br />

zurückgreifen. Der Formeleditor besitzt eine Vielzahl von kategorisierten Symbolen zur<br />

Darstellung von Mengenoperationen, Relationen, Funktionen, Operatoren und Attributen.<br />

Die Literaturdatenbank kann für die automatische Generierung eines Literaturverzeichnisses<br />

genutzt werden. Dazu trägt der Anwender seine Quellen mittels einer Maske<br />

in eine Tabelle ein und kann sie später als Literaturverzeichniseinträge in das Dokument<br />

einfügen.<br />

Seite 423


Calc (Tabellenkalkulation)<br />

Abbildung 64: Der Navigator in OpenOffice.org Writer<br />

Calc ist eine Tabellenkalkulation, mit der sich Daten in Tabellenform darstellen und<br />

bearbeiten lassen. Diese können manuell oder unter Verwendung einer Datenquelle<br />

eingefügt werden. In OpenOffice.org angemeldete Datenquellen lassen sich im zuletzt<br />

betrachteten Fall mittels einer Funktionstaste einblenden und die darin enthalten Daten<br />

per Drag and Drop in die Tabellenblätter übernehmen. Die Rohdaten verschiedener<br />

Datenquellen können so gesammelt und weiter verarbeitet werden, wobei die Möglichkeit<br />

besteht, „natürlichsprachige Formeln― wie zum Beispiel =´Stückzahl´*´Preis´ zu<br />

verwenden. Bestimmte Datenbereiche können ein- oder ausgeblendet werden. Ein<br />

„Datenpilot" hilft bei der Analyse von Zahlenmaterial. Es besteht die Möglichkeit, in<br />

Berechnungen, die aus mehreren Faktoren bestehen, die Auswirkungen von Änderungen<br />

einzelner Faktoren zu beobachten. Außerdem existieren zur Verwaltung umfangreicher<br />

Tabellen verschiedene vordefinierte Szenarien, bei denen der Anwender auf die<br />

Hilfe diverser Assistenten zurückgreifen kann<br />

Zellenformatierungen und Tabellendarstellung können den Bedürfnissen angepasst oder<br />

mittels integrierten Vorlagen formatiert werden. Rechenfunktionen und individuelle Formeln<br />

lassen sich vom Anwender direkt erstellen oder anpassen. Im Gegensatz zur Vorgängerversion<br />

können Tabellenblätter nun 65536 statt bisher 32000 Zeilen enthalten,<br />

wodurch insbesondere die Kompatibilität zu Microsoft Excel verbessert wird.<br />

Abbildung 65: Natürlichsprachige Formeln in OpenOffice.org Calc<br />

Seite 424


Impress (Präsentation)<br />

Impress ist das Präsentationswerkzeug der OpenOffice.org Office Suite und kann als<br />

Pendant zu Microsoft PowerPoint verstanden werden. Mit diesem Tool können grafische<br />

Darstellungen, Animationen und Foliensätze erstellt und bearbeitet werden. Die Präsentationen<br />

lassen sich dabei mit Diagrammen, Zeichenobjekten, Text, Multimedia- und<br />

anderen Elementen versehen. Außerdem stehen Vorlagen zur Erstellung professioneller<br />

Dias zur Verfügung, denen dynamische Effekte, einschließlich Animationen und Übergangseffekte<br />

zugeordnet werden können. Die Anpassung der Gestaltung ganzer Präsentationen<br />

wird durch Masterfolien vereinfacht. Hier lassen sich wiederkehrende Elemente<br />

wie Grafiken, Hintergrundfarben, Kopf- und Fußzeile oder einfacher Text einfügen,<br />

die dann für alle Folien zur Verfügung stehen. Das Speichern der Dokumente ist in<br />

verschiedenen OpenOffice.org- und StarOffice-Formaten sowie als Microsoft PowerPoint<br />

Präsentation oder Vorlage möglich. Es besteht darüber hinaus die Möglichkeit des Exports<br />

nach Flash, HTML oder XHTML sowie in unterschiedliche Grafikformate, beispielsweise<br />

PNG, JPG, GIF und dem Format für skalierbare Vektorgraphiken SVG.<br />

Gleich nach dem Start der Anwendung wird dem Nutzer ein Assistent für die Präsentationserstellung<br />

zur Seite gestellt, der auch während des Arbeitens aufgerufen werden<br />

kann. Die Ansicht kann während des Bearbeitens geändert und mittels einer Vorschaufunktion<br />

können Effekte und Animationen angepasst werden. Insgesamt hat Impress seit<br />

der <strong>Version</strong> 2.0 eine neue Anwendungsoberfläche erhalten, die sich stärker an Microsoft<br />

PowerPoint anlehnt und damit gerade für Umsteiger die Arbeit erleichtert<br />

Weiter Anwendungen<br />

� Draw (Grafik)<br />

Draw ist ein vektorbasiertes Grafikprogramm, in dem sich 2D- sowie 3D-Grafiken<br />

erstellen und bearbeiten lassen. Es sind Vorlagen für Zeichnungselemente und<br />

eine Auswahl an anpassbaren Formen enthalten. Dazu zählen Standardformen,<br />

Symbolformen, Blockpfeile, Flussdiagramme und Legenden für das Einfügen von<br />

Kommentaren. Tabellen, Diagramme, Formeln und andere in OpenOffice.org erzeugte<br />

Elemente können in Zeichnungen einfügt werden.<br />

� Math (Formeleditor)<br />

Bei Math handelt es sich um ein Tool, mit dem sich grafisch mathematische Gleichungen<br />

und komplexere Formelstrukturen darstellen lassen. Dieser Formeleditor<br />

darf jedoch nicht mit einem mathematischen Rechenprogramm verwechselt<br />

werden. Die Funktionen beschränken sich ausschließlich auf die grafische Erstellung<br />

und Bearbeitung mathematischer Formeln.<br />

� Base (Datenbank)<br />

Mit Base enthält OpenOffice.org erstmals ab der <strong>Version</strong> 2 ein eigenes Modul für<br />

die Verwaltung, Erstellung und Bearbeitung von Datenbanken und bringt mit<br />

HSQLDB zugleich ein JAVA-basiertes, plattformunabhängiges und relationales<br />

SQL-Datenbank-Management-System mit, das seine Daten in HSQL-<br />

Datenbanken im XML-Format speichert.<br />

Sun Microsystems stellt seit Oktober 2007 einen Report Builder zur Verfügung,<br />

der die Erstellung von Datenbank-Reports deutlich vereinfacht und verbessert.<br />

Seite 425


Neben den hier genannten Funktionsbausteinen existieren viele freie und proprietäre<br />

Lösungen, die OpenOffice.org ergänzen und Bereiche (zum Beispiel Calendaring-<br />

und Groupware-Funktionen) abdecken, die von den Microsoft Office Anwendungen<br />

adressiert werden 409 .<br />

1.1.1.2 Programmierung, Makros und Automatisierungsmöglichkeiten<br />

Die teilweise sehr intensive Nutzung der Office-Programmierung muss sowohl im Hinblick<br />

auf die Schwierigkeiten, die diese immer wieder mehr oder weniger für jede Form<br />

der Migration mit sich bringen und die Interoperabilität mit anderen Office-Anwendungen<br />

behindern, als auch im Hinblick auf eine geordnete Wartung und zielgerichteten Support<br />

für solche Softwarestücke, die z.T. sehr versteckt an vielen Stellen in der Office-<br />

Software-Landschaft auftauchen, als zweifelhaft angesehen werden. Grundsätzlich ist<br />

festzuhalten, dass es, wenn es darum geht komplexe Anwendungen zu entwickeln, bessere<br />

und professionellere Lösungsalternativen gibt, die insbesondere mit Blick auf<br />

durchzuführende Migrationen und die Wartung und den Support für solche Anwendungen<br />

deutlich besser eigenen.<br />

Trotz allem sollen die verfügbaren Konzepte hier kurz vorgestellt werden, auch um an<br />

verschiedenen Punkten die Problemstellungen deutlich zu machen,<br />

OpenOffice.org und StarOffice unterstützen das Konzept der Einbettung von Programmcode<br />

in Dokumente und Vorlagen in Form von Makros. Dafür ist in die Office-Suite eine<br />

Entwicklungsumgebung (IDE) integriert, die es dem Anwender ermöglicht, Makros aufzuzeichnen,<br />

zu bearbeiten und zu testen. Neben StarOffice Basic 410 (auch bekannt als<br />

StarBasic und OOoBasic), einem Basic-Dialekt, der der in MS Office verwendeten Sprache<br />

VBA ähnelt, zu diesem aber nicht kompatibel ist, lassen sich Makros auch in den<br />

populären Skriptsprachen Python und JavaScript entwickeln.<br />

Die Nutzung von Makros sollte aus Sicht der IT-Sicherheit grundsätzlich zurückhaltend<br />

erfolgen, da mit diesen Mechanismen auch die Ausführung von bösartigen Makros erfolgen<br />

kann. Dies hat in der Vergangenheit immer wieder zu kleineren und größeren negativen<br />

Auswirkungen geführt.<br />

Für komplexere Erweiterungen der Office-Suiten sowie die Integration mit elektronischen<br />

Geschäftsprozessen und externen Anwendungen bieten OpenOffice.org und StarOffice<br />

die Möglichkeit, sogenannte Extensions 411 hinzuzufügen. Diese sprechen die Office-<br />

Suiten über eine dokumentierte Programmierschnittstelle 412 (API, Application Programming<br />

Interface) an, welche auf der Komponententechnologie UNO 413 (Universal Network<br />

Objects) basiert. Diese ist programmiersprachenunabhängig realisiert und ermöglicht<br />

derzeit, Erweiterungen in C++, Java, Python, CLI (C#, VB.NET und andere Sprachen der<br />

409<br />

http://wiki.services.openoffice.org/wiki/OpenOffice.org_Solutions.<br />

410<br />

Eine Einführung in StarBasic ist unter http://docs.sun.com/app/docs/doc/819-0439?a=load<br />

erhältlich.<br />

411<br />

Ein ähnliches Konzept verfolgen auch der Browser Firefox und der Mail-Client Thunderbird.<br />

412 Siehe http://api.openoffice.org/.<br />

413 Siehe http://udk.openoffice.org/.<br />

Seite 426


.NET-Familie, (vorausgesetzt, es ist eine „.NET-Anbindung― für die jeweilige Plattform<br />

vorhanden), StarBasic, JavaScript und OLE Automation zu schreiben.<br />

Für StarOffice und OpenOffice.org sind jeweils eigene Software Development Kits 414<br />

(SDKs) erhältlich, die Dokumentation und Entwicklungstools zu den Programmierschnittstellen<br />

enthalten. Darüber hinaus gibt es ein Plugin 415 für die Entwicklungsumgebung<br />

NetBeans, welches verschiedene Programmiertasks deutlich erleichtert.<br />

Wizards vereinfachen die initialen Schritte, um Projekte neu aufzusetzen. IDE Support<br />

wie Code-Vervollständigung und kontextsensitive Hilfe vereinfachen das Arbeiten mit<br />

dem API der Office-Suiten. Das Plugin ist kostenlos über das integrierte Plugin Update<br />

Center von NetBeans verfügbar. Die Verfügbarkeit des Quellcodes von OpenOffice.org<br />

sowie die LGPL-Lizenz ermöglichen es außerdem, dass Lösungen, die für einen<br />

Anwender beziehungsweise eine Behörde entwickelt wurden, sehr leicht auch mit<br />

anderen Anwendern beziehungsweise Behörden geteilt werden können; das heißt,<br />

Lösungen müssen nicht mehrfach gekauft und bezahlt werden.<br />

1.1.1.3 Dateiformate<br />

Eine der zentralen Neuerungen von OpenOffice.org 2 und StarOffice 8 ist die Einführung<br />

von ODF (OpenDocument-Format) als Ersatz für das bislang verwendete proprietäre<br />

StarOffice-Format. Ersteres basiert zwar auf letzterem, wurde aber in einem offenen<br />

Standardisierungsverfahren bei OASIS und später bei der ISO weiterentwickelt und erfreut<br />

sich zunehmender Verbreitung und Unterstützung in den Produkten vieler namhafter<br />

Hersteller. Sofern nicht explizit angegeben, werden Dokumente in OpenDocument<br />

Format gespeichert.<br />

Dokumentenart Datei-Endung<br />

Textverarbeitung odt<br />

Textverarbeitung (Vorlage) ott<br />

Zeichnung odg<br />

Zeichnung (Vorlage) otg<br />

Präsentation odp<br />

Präsentation (Vorlage) otp<br />

Tabellenkalkulation ods<br />

Tabellenkalkulation (Vorlage) ots<br />

Diagramm odc<br />

Diagramm (Vorlage) otc<br />

Grafik odi<br />

Grafik (Vorlage) oti<br />

414 Das OpenOffice.org SDK findet sich unter http://api.openoffice.org/SDK/index.html, das<br />

StarOffice SDK unter http://www.sun.com/software/star/staroffice/sdk/index.jsp.<br />

415 Siehe http://wiki.services.openoffice.org/wiki/OpenOffice_NetBeans_Integration.<br />

Seite 427


Dokumentenart Datei-Endung<br />

Formel odf<br />

Formel (Vorlage) otf<br />

Textverarbeitung (Master-Dokument) odm<br />

Textverarbeitung (HTML-Vorlage) oth<br />

Tabelle 66: Datei-Endungen von ODF-Dokumenten<br />

Eng damit verknüpft sind die zahlreichen integrierten Import- und Exportmöglichkeiten in<br />

Datei–Formate anderer Applikationen. Eine komplette Liste aller unterstützten Dateiformate<br />

würde den Rahmen dieses Dokumentes sprengen. Daher folgt eine Auswahl der<br />

wichtigsten unterstützten Dateiformate anderer Hersteller:<br />

Dateiformat Import Export<br />

OpenOffice.org 1.x Dokumente Ja Ja<br />

Microsoft Office 6.0, 95 und 97/2000/XP<br />

(.doc)<br />

Seite 428<br />

Ja Ja<br />

Microsoft Word 2003 XML (.xml) Ja Ja<br />

Rich Text Format (.rtf) Ja Ja<br />

StarOffice <strong>3.0</strong>, 4.0 und 5.0 Ja Ja<br />

Text (.txt, .csv) Ja Ja<br />

(X)HTML (.xhtml, .html, .htm) Ja Ja<br />

DocBook (.xml) Ja Ja<br />

AportisDoc (Palm) (.pdb) Ja Ja<br />

Pocket Word (.psw) Ja Ja<br />

PDF Nein Ja<br />

Adobe Flash Nein Ja 416<br />

1.1.1.4 XML-Technologie<br />

Tabelle 67: Import- und Exportmöglichkeiten in OOo /SO<br />

Durch zahlreiche frei zugängliche Schnittstellen (zum Beispiel Simple API for XML -<br />

SAX, Document Object Model - DOM) und das offene XML-basierte Dateiformat ermöglicht<br />

OpenOffice.org einen flexiblen Zugriff auf alle Funktionen und Daten zum Erzeugen,<br />

Durchsuchen, Zugreifen, Ändern und Löschen von Dokumentinhalten. Neben Open-<br />

Office.org existieren weitere Anwendungen wie z. B. KOffice 417 , Suns StarOffice und<br />

416 Nur Präsentationen<br />

417 http:/www.koffice.org


Google Docs and Spreadsheets, die ebenfalls das in einem öffentlichen Entwicklungsprozess<br />

entstandene OASIS OpenDocument Format verwenden.<br />

Durch das XML-Format und die Entwicklung von Softwarekomponenten kann eine weitgehende<br />

Portabilität der ODF-Dokumente von und zu Office Open XML-Dokumenten<br />

(OOXML) erreicht werden. OOXML ist das von Microsoft favorisierte neue XML-basierte<br />

Standard-Dateiformat in MS Office 2007 418 (siehe auch Kapitel III.C 1.2.4).<br />

Einschränkungen bilden dabei vor allem komplexere Dokumente und eingebettete Tabellen.<br />

Aufgrund des auf XML-basierenden Dateiformats ODF ist die Verwendung anderer<br />

XML-Standards durch XSLT zum Filtern und Konvertieren von XML-Strukturen problemlos<br />

möglich.<br />

Eine Kommunikation über SOAP zu Web Services in OOo/SO besteht derzeit nicht,<br />

kann aber über Java Web Service Bibliotheken implementiert werden.<br />

In OpenOffice.org Dokumenten können HTML-konforme Elemente für die Gestaltung<br />

von Eingabefeldern und Formulare genutzt werden. Ebenfalls unterstützt wird der vom<br />

W3C-Konsortium spezifizierte Standard XForms 419 zur Definition von Formularseiten.<br />

In Bezug auf das Arbeiten mit anwendungsspezifischen XML-Dokumenten beinhalten<br />

beide Office-Suiten einen XSLT-Prozessor, der es erlaubt, Import- und Exportfilter für<br />

beliebige XML-Dateiformate zu erstellen. Mitgeliefert werden zum Beispiel Filter für die<br />

XML-Dateiformate von Microsoft Word 2003 und Excel 2003, sowie auch DocBook, ein<br />

XML-Format, das vorwiegend für die Erstellung technischer Artikel, Bücher und Dokumentationen<br />

verwendet wird.<br />

1.1.1.5 Webservice basierte Integration<br />

Für die Webservice-basierte Integration besitzt OpenOffice.org ebenso wie MS Office<br />

auch ein API 420 . Das OpenOffice.org API ist unabhängig von einer Programmiersprache<br />

oder einem Betriebssystem formuliert. Derzeitig lässt sich OpenOffice.org 2 in den Programmiersprachen<br />

Java, C++, StarBasic und unter Windows mittels OLE/COM-Steuerung<br />

programmieren. Alle Programmiersprachen verwenden dabei das gleiche API, das heißt<br />

das API stellt unabhängig von den verwendeten Dialekten die gleichen Entwicklungsmöglichkeiten<br />

bereit. Sowohl in Java als auch in C++ ist die Entwicklung von Komponenten<br />

möglich, die als Plug-In innerhalb von OpenOffice.org verschiedenste Aufgaben erfüllen<br />

können:<br />

� Neue Chart-Typen<br />

� Neue Calc Funktionen<br />

� Wizards<br />

� Zusätzliche Funktionalität für den Benutzer<br />

� StarBasic Erweiterung.<br />

418 OOXML wurde durch ECMA (European Computer Manufacturers Association) im Dezember<br />

2006 als ECMA-Standard 376 verabschiedet. Die ISO-Standardisierung ist beantragt.<br />

419 http://www.w3c.org/TR/xforms<br />

420 Alle wesentlichen Informationen hierzu unter: http://api.openoffice.org/ (Onlinedokumentation).<br />

Die Spezifikation der Schnittstelle findet sich unter: http://udk.openoffice.org/ .<br />

Seite 429


StarBasic ist die integrierte modulare Skriptsprache in OpenOffice.org und folgt den gleichen<br />

Prinzipien wie VBA. Struktur und Syntax beider Sprachen sind in großen Teilen<br />

sehr ähnlich, wodurch die Portierung vorhandener VBA-Makros nach StarBasic erleichtert<br />

wird.<br />

Neben dem API stellt OpenOffice.org genau wie MS Office eine Entwicklungsumgebung<br />

(Integrated Development Environment (IDE)) zur Verfügung, deren Benutzerschnittstelle<br />

sehr an die der Entwicklungsumgebung von MS Office angelehnt ist, weitere Hinweise<br />

zur Programmier- und Entwicklungsumgebung finden sich im Abschnitt III.C 1.1.1.2,<br />

Programmierung, Makros und Automatisierungsmöglichkeiten).<br />

1.1.1.6 Erweiterungen in StarOffice8<br />

In der Enterprise Edition von StarOffice8 werden einige weitere Funktionalitäten geliefert.<br />

Dazu gehören ein Hilfsmittel zur Migration von Makros und Analysetools zur Risikobewertung<br />

und -abschätzung von Migrationsmöglichkeiten einzelner Dokumente. Darüber<br />

hinaus ersetzt das Java Desktop System (JDS) den aus StarOffice 7 integrierten<br />

StarOffice Configuration Manager.<br />

1.1.2 OpenOffice.org 1 / StarOffice 7<br />

Bei OpenOffice.org 1.x und StarOffice 7 handelt es sich um die Vorgängerversionen der<br />

in Abschnitt III.C 1.1.1) beschriebenen Office-Suiten OpenOffice.org 2.x und StarOffice<br />

8. Um Redundanzen zu vermeiden, konzentriert sich dieser Abschnitt auf die Unterschiede<br />

zu den oben genannten aktuellen <strong>Version</strong>en.<br />

OpenOffice.org 1 wurde im Jahr 2002 veröffentlicht und ging damals als frei erhältliche<br />

Office-Variante aus dem Quellcode des kostenpflichtigen StarOffice 5.2 hervor. Die offensichtlichste<br />

Neuerung gegenüber der alten StarOffice-<strong>Version</strong> ist der Verzicht auf den<br />

integrierten Desktop. In mehreren Stufen wurden Updates angeboten, die u.a. in der<br />

<strong>Version</strong> 1.1 den Export in PDF-Dateien und - in einigen Komponenten - Flash-Dateien<br />

realisieren, ohne dabei zusätzliche Software installieren zu müssen. Die Integration eines<br />

XSLT-Prozessors ermöglicht zusätzlich die Einbindung anderer XML-Dateiformate<br />

und gestattet den Export von OpenOffice-Dateien in andere XML-Formate (DocBook,<br />

XHTML, Word 2003 etc.).<br />

Die letzte Aktualisierung von OpenOffice.org 1.1 fand unter der <strong>Version</strong>snummer 1.1.5<br />

im Jahre 2005 statt. Fast parallel mit dem Release von OpenOffice.org 2 wurde ein Importfilter<br />

für das damals neue OpenDocument Format integriert, der das Öffnen und Lesen<br />

von Dokumenten der <strong>Version</strong> 2 ermöglichen sollte.<br />

Korrespondierend dazu bot Sun Microsystems StarOffice 7 an, welches auf den Quellen<br />

von OpenOffice.org 1.1 basiert. Neben professioneller Qualitätssicherung und erweitertem<br />

Support enthält StarOffice 7 Folgendes:<br />

� Die Datenbankanwendung AdabasD<br />

� Eine kostenpflichtige Rechtschreibprüfung<br />

� Stark erweiterte ClipArt- und Vorlagenbibliotheken<br />

� Import- und Exportfilter für WordPerfect-Dokumente<br />

Seite 430


� Zusätzliche Schriftarten<br />

� Eine angepasste Benutzeroberfläche.<br />

1.1.2.1 Bestandteile und Funktionalitäten<br />

OpenOffice.org 1.1 beinhaltet die folgenden und bereits betrachteten Einzelanwendungen:<br />

� Writer<br />

� Calc<br />

� Impress<br />

� Draw<br />

� Math<br />

Die Datenbankkomponente Base kam erst in der OpenOffice.org 2-Suite beziehungsweise<br />

StarOffice 8 hinzu. Ersatzweise war in StarOffice7, wie erwähnt, die Datenbankanwendung<br />

AdabasD der Software-AG enthalten.<br />

Unterschiede des Funktionsumfanges von OpenOffice.org 1.x und StarOffice 7 gegenüber<br />

der Nachfolgeversion können dahingehend differenziert werde, dass sie einerseits<br />

das Office-Paket in seiner Gesamtheit betreffen, oder sich andererseits nur auf bestimmte<br />

Kernkomponenten erstrecken:<br />

Allgemeine Unterschiede:<br />

Openoffice.org und StarOffice kennen in dieser <strong>Version</strong> nur eine rudimentäre PDF-<br />

Exportfunktion. Einstellmöglichkeiten zum Kompressionsgrad oder Druckbereich sind<br />

nicht möglich. Bezüglich der Usebility wird noch mehr auf Abgrenzung zum Konkurrenzprodukt<br />

Microsoft Office gesetzt. Das bezieht sich auf die Oberflächengestaltung, aber<br />

auch die Benennung einzelner Hilfsmittel. So werden die Formatvorlage Stylist genannt<br />

und die Assistenten Auto-Piloten, was besonders für Umsteiger den Einstieg erschwert.<br />

Die Werkzeugleisten gestallten sich unflexibel und wenig beweglich, wodurch eine individuelle<br />

Einrichtung der Oberfläche erschwert wird. Als Dokumentenformate werden die<br />

alten StarOffice-Formate unterstützt, das OpenDocument-Format war zu diesem Zeitpunkt<br />

noch nicht eingeführt. Import und Export zu den proprietären Microsoft-Formaten<br />

werden zwar angeboten, funktionieren aber nur bei einfach gestalteten Dokumenten. Auf<br />

Vorlagen basierende Dokumente oder animierte Powerpoint-Präsentationen lassen sich<br />

nicht richtig importieren. In Tabellen integrierte Tabellen werden nicht unterstützt, wodurch<br />

der Export in Datei-Formate, welche verschachtelten Tabellen unterstützen (zum<br />

Beispiel Microsoft Powerpoint), beeinträchtigt ist. In Punkto Sicherheit kennt diese <strong>Version</strong><br />

keine Unterstützung digitaler Signaturen.<br />

Spezifische Abweichungen:<br />

In OpenOffice.org1 existiert kein eigenes Modul für die Datenbankverwaltung. Dafür wird<br />

ab der <strong>Version</strong> 1.1 ein sogenanntes Datenquellen-Werkzeug geliefert, mit dem sich Daten<br />

aus verschiedenen Quellen importieren und in Office-Dokumente integrieren lassen.<br />

Für einige Assistenten, die Literaturdatenbank, verschiedene Extensionen und Exportfil-<br />

Seite 431


ter wird das kostenlose Java Runtime Environment (JRE) benötigt. Prinzipiell ist Open-<br />

Office.org aber ohne JRE lauffähig.<br />

1.1.2.2 Programmierung, Makros und Automatisierungsmöglichkeiten<br />

In der Basic-IDE können Makros erstellt werden. Zur Erweiterung der Programmfunktionalität<br />

stehen eine Vielzahl von Vorlagen, Erweiterungen („Add-Ons―) und Makros in den<br />

Sprachen StarOffice Basic und Java zur Verfügung.<br />

1.1.2.3 Dateiformate<br />

Die Hauptanwendungen (Textverarbeitung, Tabellenkalkulation, Präsentationsprogramm)<br />

der <strong>Version</strong>sfamilie 1.1 von OpenOffice.org unterstützten folgende Dateiformate:<br />

� Textdokument (.sxw),<br />

� Textdokumentvorlage (.stw),<br />

� Microsoft Word (.doc),<br />

� Microsoft Word 2003 XML (.xml),<br />

� Rich Text Format (.rtf),<br />

� StarWriter <strong>3.0</strong>, 4.0 und 5.0 (.sdw),<br />

� StarWriter <strong>3.0</strong>, 4.0 und 5.0 Vorlage (.vor),<br />

� Text (.txt),<br />

� HTML Document (OpenOffice.org Writer) (.html und .htm),<br />

� DocBook (.xml),<br />

� AportisDoc (Palm) (.pdb),<br />

� Pocket Word (.psw).<br />

Hinsichtlich der eingebauten Import- und Exportmöglichkeiten in andere Formate verfügt<br />

die <strong>Version</strong> 1.1.5 von OpenOffice.org bereits über einen Importfilter für das Open Document<br />

Format, welcher die Arbeit mit dem neuen Standardformat ermöglicht. StarOffice7<br />

enthält darüber hinaus die Möglichkeit, WordPerfect-Dokumente zu bearbeiten, eine<br />

Fähigkeit, die in OpenOffice.org1.1 nicht enthalten ist.<br />

Im Übrigen werden die gleichen Import- und Exportfunktionen geliefert wie in der Nachfolge-<strong>Version</strong>sfamilie.<br />

Allerdings wurden die Filter zwischenzeitlich verbessert, sodass<br />

die Verwendung alternativer Dateiformate in den neueren <strong>Version</strong>en besser funktioniert.<br />

1.1.2.4 XML-Technologie<br />

In OpenOffice.org 1.1. sind als Eingabeelemente nur HTML-konforme Elemente nutzbar.<br />

Dies wurde mit der <strong>Version</strong> 2.0 von OpenOffice.org beseitigt.<br />

Unter dem Gesichtspunkt der Nutzbarkeit Anwendungsspezifischer XML-Schemas ist es<br />

auf Grund des XML-basierten Standardformats in OpenOffice.org möglich, ein XML-<br />

Schema zu importieren und zu bearbeiten. Nach dem Import eines solchen Schemas<br />

kann ein XML-fähiges Dokument unter Verwendung aller bekannten Funktionen des<br />

Programms wie ein ganz normales Textbearbeitungs-Dokument aufgebaut werden.<br />

Seite 432


Die Fähigkeit zur Webservice-basierten Integration wird durch OpenOffice.org Basic,<br />

einer Programmiersprache aus der Familie der Basic-Programmiersprachen, unterstützt.<br />

Diese ist weitgehend kompatibel mit anderen Basic Sprachversionen wie zum Beispiel<br />

Visual Basic von Microsoft. OpenOffice.org bietet Programmierschnittstellen zu<br />

WRITER-Dokumenten mit Hilfe von UNO (Universal Network Objects) an. Mit UNO<br />

erhält man eine objektorientierte Schnittstelle zu OpenOffice.org-Anwendungen und<br />

OpenOffice.org-Dokumenten.<br />

1.1.3 Zusammenfassung<br />

OOo 2 / SO 8 OOo 1 / SO 7<br />

natives Dateiformat ODF SWX, SWT (Vorlagen)<br />

Eingebaute Importfunktionen<br />

von anderen Formaten<br />

Eingebaute Exportfunktionen<br />

zu anderen Formaten<br />

Erweiterungsmöglichkeiten<br />

Programmierung<br />

Unterstützung von anwendungsspezifischen<br />

XML-<br />

Formaten<br />

Unterstützung, Webservice<br />

basierte Integration in Prozessketten<br />

Lizenzierung<br />

Verfügbarkeit für Betriebssysteme<br />

DOC, XLS, PPT, WordPerfect<br />

PDF, Adobe Flash, (X)HTML,<br />

DOC, XLS, PPT, WordPerfect<br />

Ja, (mit Makros und Java, C++,<br />

JavaScript, Python, Beanshell)<br />

Seite 433<br />

ODF, WordPerfect (v4 – v11),<br />

Lotus Notes 1-2-3 (bis v9.7),<br />

MS Office Formate<br />

PDF, XHTML<br />

Ja (mit Makros und Java, C++<br />

Ja, per XSLT ja, über XSLT Stylesheets<br />

Ja, kann über Java Web Service<br />

Bibliotheken implementiert werden<br />

OpenOffice.org: Freie Software<br />

beziehungsweise LGPL-Lizenz<br />

(GNU Lesser General Public<br />

License von der Free Software<br />

Foundation); StarOffice: kostenpflichtige,<br />

Lizensierung pro Be-<br />

nutzer<br />

OpenOffice.org und StarOffice:<br />

Microsoft Windows, Linux, Solaris;<br />

nur OpenOffice.org: Mac OS<br />

X, FreeBSD und andere Unix-<br />

Varianten.<br />

Bedingt<br />

OpenOffice.org: Freie Software<br />

beziehungsweise LGPL-<br />

Lizenz (GNU Lesser General<br />

Public License von der Free<br />

Software Foundation); StarOffice:<br />

kostenpflichtig, Lizensierung<br />

pro Benutzer<br />

Microsoft Windows, Linux,<br />

Solaris, Mac OS X und weitere<br />

Unix-Varianten.<br />

Tabelle 68: Überblick der Charakteristika von OOo 1/SO 7 und OOo 2/SO 8<br />

1.2 Microsoft Office 2007/2003/2002/97<br />

Microsoft Office ist in der momentan aktuellen <strong>Version</strong> „Microsoft Office 2007― seit<br />

Januar 2007 verfügbar. Mit Microsoft Office 2007 wurden einige wesentliche Änderungen<br />

zur Vorgängerversion Microsoft Office 2003 eingeführt. Dazu gehören insbesondere<br />

das neue XML-basierte Dateiformat Office Open XML, das die vorherigen<br />

Binärformate ablöst sowie eine neu entwickelte, auf den ersten Blick stark veränderte


Benutzeroberfläche. Die bereits in der Vorgängerversion enthaltene umfangreiche Unterstützung<br />

für das Arbeiten mit anwendungsspezifischen XML-Formaten und Webservices<br />

wurden weiter ausgebaut.<br />

Microsoft Office 2007 ist gegenwärtig für alle gängigen Microsoft Betriebssysteme bis<br />

hinunter zu Windows XP verfügbar. Eine <strong>Version</strong> von Microsoft Office 2007 für Mac OS<br />

X ist in Planung. Diese <strong>Version</strong> wird von Microsoft als „Microsoft Office 2008 für Mac"<br />

beziehungsweise „Microsoft Office:mac 2008" bezeichnet und seit dem ersten Quartal<br />

2008 verfügbar 421 .<br />

Innerhalb der öffentlichen Verwaltung ist die Verbreitung von Microsoft Office 2007 zurzeit<br />

noch gering (Stand September 2007). Gegenwärtig überwiegen die Installationen<br />

der verschiedenen Vorgängerversionen von Microsoft Office.<br />

Microsoft Office ist ein kostenpflichtiges Produkt für private und professionelle Anwender.<br />

1.2.1 Bestandteile Office Paket<br />

Microsoft Office wird in verschiedenen Paketen angeboten. Die einzelnen Pakete unterscheiden<br />

sich insbesondere durch die Anzahl von Anwendungen, die zusätzlich zu Microsoft<br />

Word, Microsoft Excel und Microsoft Powerpoint enthalten sind. Nachfolgend wird<br />

ein Überblick über die aktuell verfügbaren Anwendungen in den jeweiligen Paketen am<br />

Beispiel der <strong>Version</strong> 2007 gegeben:<br />

Windows – Office<br />

Anwendung<br />

Basic Home &<br />

Student<br />

Standard<br />

Small<br />

Business<br />

Seite 434<br />

Professional<br />

Ultimate Professional<br />

Plus<br />

Word X X X X X X X X<br />

Excel X X X X X X X X<br />

Powerpoint X X X X X X X<br />

Outlook X X X X<br />

Outlook mit<br />

ContactManager 422<br />

Accounting<br />

Express 423<br />

X X X<br />

X X X<br />

Publisher X X X X X<br />

Enterprise<br />

421 http://www.macoffice2008.com/#ex_fg<br />

422 Volumenlizenzkunden, die Office Professional Plus 2007 oder Office Enterprise 2007 erwerben,<br />

können Office Outlook 2007 mit Business Contact Manager auf der Volumenlizenzdienste-Website<br />

herunterladen oder sich diesbezüglich an ihren Händler wenden.<br />

423 Microsoft Office Accounting Express 2007 ist nur in den USA verfügbar.


Windows – Office<br />

Anwendung<br />

Basic Home &<br />

Student<br />

Standard<br />

Small<br />

Business<br />

Seite 435<br />

Professional<br />

Ultimate Professional<br />

Plus<br />

Access X X X X<br />

InfoPath X X X<br />

Groove X X<br />

OneNote X X X<br />

Communicator X X<br />

Integriertes<br />

Enterprise Content<br />

Management 424<br />

integrierte<br />

elektronische<br />

Formulare 425<br />

erweiterte<br />

Funktionen von<br />

IRM und Richtlinien<br />

426<br />

X X X<br />

X X X<br />

X X X<br />

Tabelle 69: Anwendungen in den jeweiligen Suiten für MS Office 2007; 427<br />

Enterprise<br />

In der Vorgänger-<strong>Version</strong> können diese Paket-Zusammenstellungen und die darin<br />

enthaltenen Komponenten trotz gleicher Bezeichnung leicht differieren.<br />

Im Folgenden werden die in den Paketen enthaltenen Anwendungen mit ihren Funktionen<br />

beschrieben. Microsoft erweitert sein Office-Paket in den letzten Jahren um immer<br />

mehr Anwendungen, die auch als Einzellösungen gesehen werden können, daher<br />

werden diese hier nur kurz erwähnt. Außerdem müssen einige Anwendungen, wie zum<br />

Beispiel Outlook, welches je nach Edition Bestandteil der Office-Suite von Microsoft sein,<br />

müssen durchaus anderen Themen, wie im Falle Outlook dem Thema Groupware oder<br />

im Falle Access dem Thema Datenbanken zugeordnet werden. An dieser Stelle sollen<br />

nur die Kernanwendungen (Textverarbeitung, Tabellenkalkulation, Präsentation) im<br />

Fokus der Betrachtung stehen. Hier hat sich die Sichtweise gegenüber den früheren<br />

<strong>Version</strong>en des <strong>Migrationsleitfaden</strong>s nicht verändert.<br />

Die drei Kernanwendungen in der MS Office-Suite sind:<br />

424 ECM von Microsoft weitet das Content Management für alle Benutzer in einer Organisation<br />

durch die Integration mit bekannten Tools wie Microsoft Office System aus.<br />

425 Die <strong>Version</strong> 2007 von Microsoft Office System bietet Kernfunktionen für das Erstellen und<br />

Ausfüllen von Formularen sowie Forms Services zur Vereinfachung von Verteilung und<br />

Verwaltung elektronischer Formulare.<br />

426 Die <strong>Version</strong> 2007 von Microsoft Office System bietet IRM-Funktionen (Information Rights<br />

Management, Verwaltung von Informationsrechten) sowie Richtlinienkontrollen zum Schutz<br />

digitaler Informationen vor unbefugter Verwendung in Unternehmen und Organisationen.<br />

427 http://office.microsoft.com/de-de/suites/FX101635841031.aspx?pid=CL101732621031


� Microsoft Office Word (Textverarbeitung),<br />

� Microsoft Office Excel (Tabellenkalkulation),<br />

� Microsoft Office PowerPoint (Präsentationen).<br />

Die anderen Anwendungen in der aktuell erhältlichen Office 2007-<strong>Version</strong> sind abhängig<br />

von der gewählten Paketversion:<br />

� Microsoft Office Publisher 2007 (Desktop-Publishing-Programm),<br />

� Microsoft Office Access 2007 (Datenbankverwaltungssystem),<br />

� Microsoft Office OneNote 2007 (Erstellen und Verwalten von Notizen),<br />

� Microsoft Office Outlook 2007 (Groupware-Anwendung einschließlich Mail-Client,<br />

Kontaktmanager, Terminplaner etc.),<br />

� Microsoft Office InfoPath 2007 (Erstellen und Auswerten von elektron. Formularen),<br />

� Microsoft Office Communicator 2007 (Messengersoftware, die verschiedene<br />

Kommunikationsarten erlaubt wie zum Beispiel IM, Video, Sprache),<br />

� Microsoft Office Groove 2007 (Programm, welches durch mitgelieferte Tools und<br />

Kommunikationsmöglichkeiten das Arbeiten in Gruppen unterstützen soll),<br />

1.2.2 Funktionalitäten<br />

Auf eine Auflistung aller Funktionalitäten der oben genannten Office-Anwendungen wird<br />

an dieser Stelle verzichtet. Nachfolgend soll jedoch ein kurzer Überblick gegeben und<br />

auf die wesentliche Funktionen eingegangen werden:<br />

Microsoft Office Word 2007:<br />

Microsoft Office Word 2007 beinhaltet alle Funktionen der Vorgängerversionen. In der<br />

neuen <strong>Version</strong> 2007 fällt dem Betrachter als erstes das neue Oberflächenkonzept auf.<br />

Mit der „Fluent"-Benutzeroberfläche werden die Bearbeitungswerkzeuge bedarfsgesteuert<br />

angezeigt. Hiermit soll ein effizienteres und schnelleres Arbeiten ermöglicht werden.<br />

Die gravierendste Änderung in der neuen <strong>Version</strong> ist mit Abstand das neue Standard-<br />

Dateiformat. Office Open XML (.docx) ersetzt das bisherige binäre Dateiformat (.doc).<br />

Die alten Dateiformate sollen jedoch auch künftig in vollem Umfang unterstützt werden<br />

und die Aufwärtskompatibilität damit gesichert sein. Die Abwärtskompatibilität ist jedoch<br />

nur mit einem Plug-In in den jeweiligen <strong>Version</strong>en ab MS Office 2000 möglich.<br />

Weitere wesentliche Merkmale der <strong>Version</strong> 2007 sind:<br />

� Erweiterte Unterstützung für das Arbeiten mit anwendungsspezifischen XML-<br />

Schemata, da die Inhalte der Dokumente durch das neue Standarddateiformat<br />

auch von produktunabhängigen Lösungen bearbeitet werden können,<br />

� Verbesserte Unterstützung für Web Services, mit denen Daten und Funktionen<br />

aus Anwendungen heraus über Schnittstellen von anderen Anwendungen genutzt<br />

werden können,<br />

Seite 436


� Globale Rechtschreibprüfung, die Änderungen auch für andere Anwendungen<br />

eines Office-Pakets übernimmt.<br />

Microsoft Office Excel 2007:<br />

Microsoft Office Excel 2007 beinhaltet alle bekannten Funktionen der Vorgängerversionen.<br />

Excel ermöglicht es, mit Formeln und Funktionen umfangreiche Berechnungen<br />

durchzuführen. Die Daten können mit Hilfe von Sortier- und Filterfunktionen<br />

sowie Pivot-Tabellen ausgewertet und in Diagrammen grafisch dargestellt werden. Mit<br />

VBA (Visual Basic for Applications) kann der Funktionsumfang von Excel erweitert<br />

werden. Unter Mac ist dies mittels AppleScript möglich.<br />

Weitere wesentliche Merkmale der <strong>Version</strong> 2007 sind:<br />

� In Verbindung mit dem Sharepoint Server 2007 und Excel Services können Tabellen<br />

in Webbrowsern freigegeben und bearbeitet werden. Excel Services bietet<br />

dafür zwei Schnittstellen: eine Web-basierte UI (User Interface), um Excel Tabellen<br />

innerhalb von einem Browser anzusehen und eine Web Service Schnittstelle,<br />

die einen programmatischen Zugang zu veröffentlichten Tabellen erlaubt.<br />

� Erhöhung der Datenmenge auf bis zu 1Mio Zeilen und 16000 Spalten<br />

� Eine verbesserte Diagramm-Funktion<br />

� Neue OLAP-Formeln und Cube-Funktionen lassen mehr Möglichkeiten für die<br />

Arbeit von mehrdimensionalen Datenbanken zu<br />

� Vereinfachte Verbindung zu externen Datenquellen: Eine Angabe der Verbindungsdaten<br />

gibt es in Excel 2007 nicht mehr, die Verbindung wird einfach aus einer<br />

Liste ausgewählt. Mit Hilfe des Verbindungsmanagers wird jede bereits genutzte<br />

Verbindung gespeichert und kann nach neuem Programmstart wieder<br />

verwendet werden.<br />

Microsoft Office Powerpoint 2007:<br />

Mit Microsoft Office Powerpoint 2007 können Vortragsfolien mit Animationen, verschiedenen<br />

Hintergründen und Übergängen erstellt werden. Vortragsfolien können im binären<br />

Powerpoint Dateiformat .ppt, als PDF (Adobe Portable Document Format) oder auch als<br />

XPS (XML Paper Specification Format) gespeichert werden.<br />

Letzteres bedarf jedoch der Installation von Add-Ins, um diese Speicherfunktion nutzen<br />

zu können. Neben dem Standard-Präsentationsformat (.ppt beziehungsweise .pptx und<br />

.pptm für Dateien mit Makros, letzteres nur Windows) wird häufig das Bildschirmpräsentationsformat<br />

(.pps beziehungsweise .ppsx) verwendet, das der sofortigen Anzeige der<br />

Präsentation im Vollbildmodus dient.<br />

Weitere MS Office-Anwendungen<br />

� Microsoft Office Publisher 2007<br />

Microsoft Office Publisher 2007 ist ein Programm für die Erstellung von seiten-<br />

Seite 437


orientierten Dokumenten wie zum Beispiel Marketingmaterialien oder individuellen<br />

Mailings.<br />

� Microsoft Office Access 2007<br />

Office Access2007 ist ein Datenbankverwaltungsprogramm zur Verwaltung von<br />

strukturierten Daten in Tabellen mit definierter Datensatzstruktur und zum Erstellen<br />

von Berichten.<br />

� Microsoft Office OneNote 2007<br />

Microsoft Office OneNote 2007 ist ein Programm für das Aufzeichnen und Verwalten<br />

von Notizen.<br />

� Microsoft Office Outlook 2007<br />

Microsoft Office Outlook 2007 ist ein allgemein bekannter Client für Groupware-<br />

Lösungen, insbesondere MS Exchange.<br />

� Microsoft Office InfoPath 2007<br />

Mit der InfoPath-Anwendung können XML-basierte Formulare erstellt und - aus<br />

Office heraus – auch verwendet werden.<br />

� Microsoft Office Communicator<br />

Microsoft Office Communicator ist eine Instant Messaging Lösung.<br />

� Microsoft Office Groove 2007<br />

Das in Microsoft Office Ultimate 2007 enthaltene Microsoft Office Groove 2007 ist<br />

ein Programm für die Unterstützung von Gruppenarbeit.<br />

1.2.3 Programmierung, Makros und Automatisierungsmöglichkeiten<br />

Die Funktionen der Microsoft Office 2007 Anwendungen können mit Hilfe verschiedener<br />

Technologien erweitert, angepasst und individualisiert werden. Zu den dafür vorgesehenen<br />

Technologien gehören:<br />

� Smarttags - sie erlauben zum Beispiel eine kontext-sensitive Automatisierung<br />

durch Informationen und Aktionen. Sie sind mit Hyperlinks vergleichbar, werden<br />

jedoch dynamisch an Schlüsselwörter oder -phrasen geheftet. Sie basieren auf<br />

COM-Klassen, die eine Erkennungs- und eine Aktionsschnittstelle implementieren.<br />

Erstere ist für die Erkennung der Schlüsselwörter und die zweite für die ausführende<br />

Aktion und Darstellung der Aktionsmenüs zuständig.<br />

� Makros sind kleine, in der Regel in Visual Basic for Applications (VBA) geschriebene<br />

Programme. In Office dienen sie dazu, eine definierte Folge von Befehlen<br />

und Aufgaben automatisiert durchzuführen und so den Nutzer zu entlasten.<br />

� .NET – ist eine von Microsoft entwickelte Softwareplattform für die Entwicklung<br />

von Internetanwendungen, die auf offenen Standards basiert. Konzeptionell be-<br />

steht .NET aus 4 Komponenten: Frameworks and Tools, Building Block Servi-<br />

ces, Enterprise Servers und Mobile Devices. Das Framework ist für die einzelnen<br />

Anwendungen zuständig und steuert den Zugriff auf die Daten, stellt eine<br />

Benutzeroberfläche sowie Klassen-Bibliotheken und Web-Technologien zur Verfügung<br />

(zum Beispiel das Ausführen von Programmen in mehreren Sprachen).<br />

Die Building Blocks Services unterstützen verfügbare Internet-Dienste, zum Bei-<br />

Seite 438


spiel Updates und Suchdienste. Darüber hinaus können mit den Mobile Devices<br />

Anwendungen auf mobilen Geräten laufen.<br />

Innerhalb von behördenspezifischen Softwarelösungen werden Erweiterungen der Funktionalitäten<br />

von Microsoft Office zum Teil intensiv verwendet. So werden zum einen die<br />

mit Microsoft Office verfügbaren Programmierumgebung in vielen Behörden und anderen<br />

Organisationen zur Erstellung dokumentenspezifischer Scripting-Lösungen (Makros)<br />

genutzt, um Arbeitsprozesse mit Microsoft Office weitgehend zu automatisieren. Das<br />

reicht bis zur Implementierung abteilungsübergreifender Workflows. Zum anderen gibt es<br />

in den Behörden eine Reihe externer Softwarelösungen, die mehr oder weniger stark mit<br />

Office integriert sind.<br />

An dieser Stelle ist hervorzuheben, dass diese in Teilen sehr intensive Praxis der Office-<br />

Programmierung im Hinblick auf die Schwierigkeiten, die damit immer wieder verbunden<br />

sind:<br />

� für jede Form der Migration<br />

� der Sicherstellung der Interoperabilität mit anderen Office-Anwendungen<br />

� der Gewährleistung einer geordneten Wartung und einem zielgerichteten Support<br />

für solche Softwarestücke<br />

als zweifelhaft anzusehen ist. Grundsätzlich kann festgehalten werden, dass für die Entwicklung<br />

komplexer Anwendungen bessere und professionellere Lösungsalternativen<br />

zur Verfügung stehen, die insbesondere mit Blick auf durchzuführende Migrationen und<br />

die Wartung und den Support für solche Anwendungen sich deutlich besser eigenen.<br />

Dies sollte auch deutlich werden, wenn man sich ansieht, welche Konzepte hier verwendet<br />

werden.<br />

� Die „Visual Basic― Erweiterungen sind sowohl für Office 97 als auch für Office<br />

2000 und Office 2003 einsetzbar und haben eine entsprechend große Verbreitung.<br />

Die „Visual Basic― Programmierumgebung von Microsoft Office 97 - 2003<br />

basiert auf der Programmiersprache BASIC. Die Visual Basic Sprachfamilie umfasst<br />

aktuell mehrere Dialekte:<br />

� Visual Basic (Visual Studio, Vollversion),<br />

� Visual Basic for Application (VBA),<br />

� Visual Basic Scripting Edition (VBS).<br />

Alle Dialekte haben denselben Grundwortschatz der Syntax, unterscheiden sich aber in<br />

Funktionsumfang und Leistungsfähigkeit. (beispielsweise ist im Gegensatz zu Visual<br />

Basic ein Kompilieren bis zum ausführbaren Maschinencode in VBA nicht möglich).<br />

Die Programmierumgebung von MS Office beinhaltet Visual Basic for Application (VBA).<br />

VBA kann von Microsoft lizenziert werden, sodass Dritthersteller VBA in ihre Produkte<br />

einbauen können.<br />

Als Ausgangspunkt für diesen Leitfaden wird der Einsatz des Office-Paketes 97 oder<br />

höher angenommen. In früheren <strong>Version</strong>en wurden verschiedene Programmierumgebungen<br />

für die einzelnen Produkte bereitgestellt (Word Basic, Excel VBA, Access Basic).<br />

Mit Office 97 wurde die Programmierumgebung auf VBA der <strong>Version</strong> 5 vereinheitlicht.<br />

Seite 439


Die folgende Tabelle zeigt die <strong>Version</strong>ierung von VBA im Zusammenhang mit den verschiedenen<br />

Office <strong>Version</strong>en.<br />

Office <strong>Version</strong>en VBA <strong>Version</strong>en<br />

95 Word Basic, Excel VBA, Access Basic<br />

97 5<br />

2000 6<br />

XP 6.3<br />

2003 6.4<br />

2007 6.5<br />

Tabelle 70: Microsoft Office <strong>Version</strong>en und zugehörige <strong>Version</strong>en von VBA<br />

VBA ist eine Interpretersprache und nur in Microsoft Office Anwendungen ausführbar.<br />

VBA basiert auf COM (Component Object Model), einer proprietären Weiterentwicklung<br />

der Microsoft Technologie OLE (Object Linking and Embedding).<br />

MS Office kann nicht nur COM Objekte verwenden, sondern bietet selbst COM Objekte<br />

an. Office 97 bringt über 550 eigene COM Objekte mit, Office 2000 über 600. Via COM<br />

lassen sich in Office auch externe Funktionalitäten nutzen. Mittels VBA ist es möglich,<br />

externe Programme (zum Beispiel das Betriebssystem) in Form von DLLs (Dynamic Link<br />

Libraries) zu verwenden, In Visual Basic Script (VBS) ist solch eine Einbindung nicht<br />

möglich.<br />

Die folgende Abbildung zeigt noch einmal die Möglichkeiten von VBA, Funktionalitäten<br />

zu nutzen.<br />

Abbildung 66: VBA in der Office Anwendung<br />

In VBA werden die folgenden Bausteintypen unterschieden:<br />

� Module (moduls),<br />

� Klassenmodule (class moduls),<br />

� und Formulare (forms).<br />

Module enthalten allgemeine Prozeduren, die nicht mit einem Objekt verbunden sind.<br />

Klassenmodule (Formular- und Berichtsmodule) dagegen sind mit Objekten verbunden<br />

Seite 440


und rufen bestimmte Ereignisprozeduren auf (zum Beispiel eine Reaktion auf eine Benutzereingabe,<br />

wie das Klicken einer Befehlsschaltfläche).<br />

Diese Bausteine ermöglichen es, in MS Office vorhandene Funktionalitäten zu erweitern,<br />

Abfolgen von Funktionsaufrufen zu automatisieren und zusätzliche Funktionalitäten zu<br />

implementieren. Die Erweiterungen, Automatisierungen und Ergänzungen werden als<br />

Makros und Scriptings bezeichnet. Zur Integration dieser Makros in MS Office lassen<br />

sich insbesondere die Menüleisten und Schaltflächen der Symbolleisten modifizieren,<br />

sodass dem Benutzer deren Starts erleichtert werden.<br />

Spezielle Prozedurnamen (zum Beispiel AutoOpen, AutoNew) kennzeichnen den Programmcode,<br />

der automatisch ausgeführt wird, wenn Office-Dateien geöffnet werden. Dieser<br />

Mechanismus wird häufig in Vorlagen (Templates) verwendet. Da hiermit auch bösartige<br />

Prozeduren („Makroviren") ausgeführt werden können, ist er ein Sicherheitsrisiko.<br />

Insgesamt können Makros und Scriptings in folgenden Formen innerhalb von Office aufgerufen<br />

beziehungsweise integriert werden:<br />

� als Add-In,<br />

� innerhalb von Vorlagen (Templates),<br />

� als Assistenten (Wizards).<br />

Add-Ins unterscheiden sich aufgrund ihrer Verwendbarkeit nochmals:<br />

� COM Add-Ins:<br />

kompilierte DLL- oder EXE-Dateien, die mit einer Visual Basic (Vollversion) erzeugt<br />

werden. Diese Add-Ins können anwendungsübergreifend verwendet werden.<br />

� Anwendungsspezifische Add-Ins:<br />

Anwendungsspezifische Add-Ins werden mittels der integrierten Programmierumgebung<br />

von Office erzeugt und können nur innerhalb Office verwendet werden.<br />

Der Einsatz von Add-Ins ist in der Regel dort anzutreffen, wo der Programmcode<br />

ständig in der Anwendung zur Verfügung stehen soll, ohne dass der<br />

Benutzer eigens dafür bestimmte Vorlagen laden muss.<br />

Mit VBA der <strong>Version</strong> 5 wurde innerhalb der Office Anwendungen eine einheitliche Entwicklungsumgebung<br />

integriert. Das sogenannte IDE (Integrated Development Environment)<br />

wird in einem separaten Fenster gestartet, läuft aber im Prozess der Office Anwendung.<br />

Das IDE bietet:<br />

� Editor mit Syntaxprüfung und Farbhervorhebung,<br />

� Project Explorer,<br />

� zusätzliches Eigenschaftsfenster,<br />

� Debugger-Werkzeuge,<br />

� Object Browser,<br />

� bedingte Compilierung,<br />

Seite 441


� Schutzmechanismen vor Veränderung oder Kopieren des programmierten Codes<br />

und<br />

� IntelliSense (Komplettierung, Drop-Down Auswahl, Infos zur Syntax).<br />

In der Anwendung steht ein Makro-Rekorder zur Verfügung, mit dem Abfolgen von Interaktionen<br />

des Benutzers mit der Anwendung aufgezeichnet und gespeichert werden können.<br />

Durch die Nutzung solcher Funktionalitäten durch die Benutzer wird es noch<br />

schwieriger, bei Migrationen die entsprechenden Makros in den Vorlagen und Dokumenten<br />

ausfindig zu machen, denn die wenigsten Benutzer werden dokumentieren, wann sie<br />

wo welche Makros für ihre Arbeit erstellt haben, gehen aber in der Regel davon aus,<br />

dass diese nach der Migration weiterhin verfügbar sind und funktionieren.<br />

Da Office selbst aus einer Vielzahl von COM Objekten besteht, ist es möglich, Office<br />

mittels der sogenannten COM-Automatisierung 'fernzusteuern'. Zur Fernsteuerung können<br />

zum Beispiel der Windows Scripting Host (WSH) oder PerlScript verwendet werden.<br />

Für die Zukunft zeichnet sich ab, dass Microsoft bezüglich der Officeautomatisierung<br />

verstärkt auf die Visual Studio Tools for Microsoft Office Systems 428 (VSTO) und Visual<br />

Studio Tools for Applications (VSTA) 429 setzt. Hierbei handelt es sich um .Net basierte<br />

Toolsets mit denen zum einen Anwendungen auf Basis der Office-Anwendungen entwickelt<br />

werden können (VSTO) und zum anderen für den Einsatz von .NET-Sprachen angepasst<br />

(VSTA) werden können. VSTO und VSTA reihen sich ein in die Familie der Visual<br />

Studio 2008 Produkte. Die aktuellsten <strong>Version</strong>en sind VSTO <strong>3.0</strong> und VSTA 2.0, die<br />

seit dem 3. Quartal 2007 verfügbar sind. In wie weit hierdurch VBA einmal abgelöst wird<br />

ist heute nicht absehbar. Vorerst, so scheint es, wird Microsoft die VBA-Linie noch weiter<br />

unterstützen.<br />

1.2.4 Dateiformate<br />

Microsoft Office 2007 unterstützt mehrere native Dateiformate. Dazu gehören:<br />

� Die traditionellen binären Microsoft-Dateiformate .doc, .xls, .ppt usw.<br />

� Das neue XML-Dateiformat Office Open XML.<br />

Mit Erscheinen von Office 2007 ersetzt Microsoft die alten binären Formate durch Office<br />

Open XML als Standarddateiformat, das für Word, Excel und Powerpoint durchgängig<br />

verwendet wird. Im Gegensatz zum vorhergehenden Format werden dabei die Inhalte<br />

(Texte, Grafiken, Tabellen etc.) und die Metadaten (das „Layout― von Inhalten) der Dokumente<br />

in Packages abgelegt und in einem ZIP-Archiv komprimiert gespeichert.<br />

Office Open XML wurde der ECMA (European Computer Manufacturers Association) zur<br />

Standardisierung übergeben und wurde im Dezember 2006 als ECMA-Standard 376<br />

verabschiedet. Die ISO-Standardisierung ist beantragt.<br />

Bezüglich der Import- und Exportmöglichkeiten in andere Formate verfügen die Hauptanwendungen<br />

von Microsoft Office 2007 (Textverarbeitung, Tabellenkalkulation und<br />

428 http://msdn2.microsoft.com/de-de/vstudio/aa718674.aspx<br />

429 http://msdn2.microsoft.com/en-us/vsx2008/products/bb933739.aspx<br />

Seite 442


Präsentation) über folgende, teilweise bereits eingebaute Import- und Exportmöglichkeiten<br />

von eigenen älteren Formaten und fremdem Formaten:<br />

� Binärformate (.doc, .xls. .ppt) von vorherigen Microsoft Office <strong>Version</strong>en (Microsoft<br />

Office 97 - 2003)<br />

� WordML (Wordprocessing ML)<br />

� OpenDocument<br />

� PDF.<br />

Die beiden letztgenannten sind nur über Plug-Ins realisierbar.<br />

Neben dem direkten Editieren und Bearbeiten von einzelnen Bestandteilen der<br />

„Packages― ist es in Microsoft Office 2007 möglich, mit durch den Anwender definierten,<br />

anwendungsspezifischen XML-Schemata zu arbeiten. Dabei wird der Anwender durch<br />

eine grafische Benutzeroberfläche unterstützt. Diese ermöglicht u.a. den direkten Import<br />

von anwendungsspezifischen XML-Schemata in ein Dokument. XML-Elemente können<br />

bei Bedarf mit Platzhaltern, z. B. mit einem Beispieltext oder einer Eingabeaufforderung<br />

initialisiert werden. Die hinzugefügten XML-Elemente werden während der Erstellungsphase<br />

farblich hervorgehoben. Beim späteren Einsatz des Dokuments verschwindet<br />

diese farbliche Hervorhebung, sodass die XML-Struktur verborgen bleibt<br />

Nach dem Import eines XML-Schemas kann ein Dokument unter Verwendung aller bekannten<br />

Funktionen des Programms wie ein ganz normales Word-Dokument bearbeitet<br />

werden. Im Labor-Beispiel „Geburtsurkunde― wurde das XML-Schema in das Dokument<br />

eingefügt und dieses anschließend gestaltet.<br />

Seite 443


Abbildung 67: Benutzeroberfläche für das Arbeiten mit XML-Schemas in MS Word 2007<br />

In Abbildung 67 ist die grafische Oberfläche dargestellt. Auf der linken Seite ist das Dokument<br />

zu erkennen, welchem dem XML-Schema zugrunde liegt. Auf der rechten Seite<br />

befindet sich das XML-Struktur-Panel mit einem importierten XML-Schema. Um XML-<br />

Elemente aus dem XML-Schema zum Dokument hinzuzufügen, können diese einfach<br />

mit der Maus per „Drag and Drop― vom XML-Struktur-Panel in das Dokument hineingezogen<br />

werden. Jedoch ist nicht zu unterschätzen, dass eine Validierung der Daten oder<br />

der Struktur in den grafischen Entwicklungstools auch weiterhin nicht möglich ist. Ändert<br />

der Anwender im Dokument die Struktur, so ist das XML-Schema beschädigt. Eine Validierung<br />

kann aber von dem Entwickler selbst implementiert werden. In der neuen Office<br />

2007-<strong>Version</strong> können jedoch vom Entwickler des XML-Schemas die Knoten vor einer<br />

Änderung geschützt werden, damit entfällt eine Implementierung zur Validierung der<br />

Daten.<br />

Für das Speichern von ausgefüllten Dokumenten existieren verschiedene Optionen,<br />

ebenso für die eingegebenen Daten in Eingabefelder, die durch XML-Markup definiert<br />

werden. Sollen die eingegebenen Daten zusammen mit allen anderen Informationen -<br />

also allen im Dokument eingebetteten Daten - als XML gespeichert werden, kann dies in<br />

dem von Microsoft offen gelegten XML-Format Office Open XML erfolgen.<br />

Ebenso ist es möglich, nur die eingegebenen Daten (ohne jegliche Zusatzinformationen)<br />

heraus zu filtern und zu speichern Die so gespeicherten Daten entsprechen automatisch<br />

der Vorgabe des importierten XML-Schemas.<br />

Seite 444


Die nachfolgende Abbildung zeigt einen Ausschnitt aus einem resultierenden XML-<br />

Datensatz.<br />

<br />

<br />

<br />

Jäger<br />

Christoph Jan<br />

<br />

m<br />

07.05.1976<br />

Potsdam<br />

<br />

<br />

4578456<br />

Christoph Jan Jäger<br />

10070024<br />

Deutsche Bank 24<br />

<br />

<br />

Jäger<br />

Christoph Jan<br />

Friedrichstr.<br />

47<br />

10117<br />

Berlin<br />

Christoph.Jaeger@egov06<br />

0301245789<br />

<br />

<br />

Abbildung 68: Datensatz nach dem XML-Schema „Antrag Geburtsurkunde―<br />

Microsoft Office 2007 bietet weiterhin die Möglichkeit einer automatischen Kontrolle der<br />

Daten zum vorgegebenen XML-Schema. Auf diesem Wege können inkorrekte XML-<br />

Datensätze vor dem Export zu beliebigen Webservices, E-Gouvernement-Plattformen<br />

und so weiter erkannt und zurückgehalten werden. Fehlerhafte oder unvollständige Eingaben<br />

werden bereits während der Eingabe markiert. Die Validierung der Eingabe muss<br />

dabei nicht programmiert werden, wie dies noch bei der Vorgänger-<strong>Version</strong> der Fall war.<br />

Microsoft Office 2007 kann alle notwendigen Informationen aus dem XML-Schema herauslesen<br />

und die Validierung automatisch durchführen.<br />

1.2.5 Webservice basierte Integration<br />

Hinsichtlich des Themas Webservice-basierte Integration bietet Microsoft zwei verschiedene<br />

Tools an, um Microsoft Office 2007 mit einer Web Service-Schnittstelle auszustatten.<br />

Die eine Variante bietet das frei herunterladbare Microsoft Office Web-Services<br />

Toolkit 2.0. Mit Hilfe dieses Toolkits und Visual Basic for Applications (VBA) können<br />

Makros programmiert werden, die Anfragen an Web Services stellen, die zum Beispiel<br />

von Backoffice-Prozessen bereitgestellt werden.<br />

Die zweite, weit elegantere Möglichkeit wird durch die Verwendung des .NET Frameworks<br />

geboten. Das frei verfügbare .NET Framework bietet eine Vielzahl von Funktionen<br />

für die Entwicklung von komplexen Web Service-Schnittstellen.<br />

Seite 445


1.2.6 Differenzen der Vorgänger-<strong>Version</strong>en zu MS Office 2007<br />

Die Vorgänger-<strong>Version</strong>en Microsoft Office 2007 sind innerhalb der Verwaltung sehr weit<br />

verbreitet. Es ist sogar davon auszugehen, dass die überwiegende Mehrzahl aller<br />

Arbeitsplätze in den deutschen Verwaltungen mit einer der <strong>Version</strong>en von Microsoft<br />

Office 97 - 2003 ausgestattet ist.<br />

Mit der <strong>Version</strong> Microsoft Office 2003 wurde begonnen, eine umfangreiche Unterstützung<br />

für das Arbeiten mit XML-Dateien in das Office-Paket zu integrieren. Dazu gehören<br />

die Unterstützung des XML-basierten Dateiformats WordprocessingML, ferner die umfangreiche<br />

Unterstützung für das Arbeiten mit anwendungsspezifischen XML-Schemata<br />

und für die Integration in prozessorientierte beziehungsweise serviceorientierte Architekturen<br />

(SOA). Mit nachrüstbaren Erweiterungen können Microsoft Office 2003 Anwendungen<br />

auch das neue XML-Format Open Office XML lesen und schreiben. Sollten diese<br />

Erweiterungen nicht implementiert sein, sind diese <strong>Version</strong>en nicht in der Lage, das<br />

Dateiformat von Office 2007 zu erkennen.<br />

Im Gegensatz zur aktuellen Office-<strong>Version</strong> wurden die vorherigen nicht in einer derartigen<br />

Fülle an Paketen angeboten. Für die 2003er <strong>Version</strong> von Office gab es beispielweise<br />

6 Pakete, unter denen der Anwender wählen konnte (zum Beispiel Professionell<br />

Enterprise Edition, SSL-Edition, Standard-Edition etc.). Wie auch in der aktuellen <strong>Version</strong>,<br />

unterscheiden sie sich in der Anzahl der Anwendungen, die zusätzlich zu den<br />

Kernanwendungen angeboten werden.<br />

1.2.6.1 Bestandteile<br />

Im Folgenden werden diese Kernanwendungen und die wesentlichen Unterschiede zur<br />

aktuellen <strong>Version</strong> am Beispiel der direkten Vorversion Office 2003 kurz vorgestellt. Auf<br />

einzelne Funktionen wie auch die restlichen <strong>Version</strong>en und Anwendungen wird an dieser<br />

Stelle nicht näher eingegangen.<br />

Microsoft Office Word 2003<br />

Mit Microsoft Office 2003 sind mehrere neue Konzepte und Technologien eingeführt<br />

worden, die in der aktuellen <strong>Version</strong> 2007 weiter ausgebaut wurden. Zu diesen Konzepten<br />

und Technologien gehörten insbesondere:<br />

� Die Einführung des offenen, XML-basierten Dateiformats Wordprocessing ML.<br />

� Unterstützung für das Arbeiten mit anwendungsspezifischen XML-Formaten.<br />

� Unterstützung für Automatisierungsprozesse, Workflows und Datenanbindung<br />

durch verschiedene Technologien wie zum Beispiel dynamische SmartDocuments,<br />

durch programmierbare Makros und durch .NET-Programmierung.<br />

Microsoft Office Excel 2003<br />

Mit Microsoft Office Excel 2003 wurden ebenso wie bei der Textverarbeitung Word mehrere<br />

neue Konzepte und Technologien eingeführt, die in der aktuellen <strong>Version</strong> 2007 weiter<br />

ausgebaut wurden. Zu diesen Konzepten und Technologien gehörten insbesondere:<br />

� Import- und Exportfunktionen von und zu beliebigen XML Formaten direkt aus<br />

der Anwendung heraus.<br />

Seite 446


� Unterstützung für die Web Service-basierte Integration.<br />

� Workflows können mit Hilfe von Schaltflächen in der Anwendung angestoßen<br />

werden.<br />

� Weitere Unterstützung für Automatisierungsprozesse, Workflows und Datenanbindung<br />

durch verschiedene Technologien wie zum Beispiel dynamische Smart-<br />

Documents, durch programmierbare Makros und durch .NET-Programmierung.<br />

� Bis Excel 2003 waren die Tabellenblätter noch auf 65.536 Zeilen und 256 Spalten<br />

(von A bis IV) begrenzt. In der aktuellen <strong>Version</strong> wurde die Begrenzung dann<br />

auf 1.048.576 Zeilen und 16.384 Spalten erhöht.<br />

Microsoft Office Powerpoint 2003:<br />

Mit Microsoft Office Powerpoint 2003 können Vortragsfolien mit Animationen, verschiedenen<br />

Hintergründen und Übergängen erstellt werden. Vortragsfolien können im binären<br />

Powerpoint Dateiformat .ppt, als PDF (Adobe Portable Document Format) oder auch als<br />

XPS (XML Paper Specification Format) gespeichert werden. Letzere sind aber nur durch<br />

Plug-Ins möglich.<br />

1.2.6.2 Weiteres<br />

Die Einführung von sogenannten Smarttags erfolgte mit Office 2000. In Office 2003 wurde<br />

die Funktionalität erweitert. Smarttags sind eine Möglichkeit der kontextsensitiven<br />

Automatisierung. Ein Smarttag löst in Reaktion auf eine Eingabe (zum Beispiel ein vorbestimmtes<br />

Wort oder eine bekannte Zahl) eine Funktion aus. Mit Hilfe von Smarttags<br />

lassen sich auch Funktionen in anderen Anwendungen nutzen, wie zum Beispiel das<br />

automatische Öffnen von weiteren Dokumenten. Unterschieden wird zwischen einfachen<br />

Smarttags und COM-basierten Smarttags. Einfache Smarttags werden in XML-Listen<br />

verwaltet, die an einer zentralen Stelle im Rechner-Netzwerk abgelegt werden und dann<br />

allen Anwendern zur Verfügung stehen. COM-basierte Smarttags hingegen werden als<br />

sogenannte Smarttag-Add-Ins verwendet.<br />

1.2.6.3 Dateiformate<br />

Microsoft Office 2003 unterstützt mehrere native Dateiformate, diese sind:<br />

� Die traditionellen binären Microsoft Dateiformate .doc, .xls, .ppt usw.<br />

� Das mit Microsoft Office 2003 eingeführte XML Dateiformat WordprocessingML.<br />

Die Office 2003-<strong>Version</strong>en von Word und Excel boten als erste die Möglichkeit, ihre Dokumente<br />

als XML-Dateien zu speichern. Das dafür zunächst eingesetzte XML Dateiformat<br />

WordprocessingML unterlag allerdings etlichen Einschränkungen. Beispielsweise<br />

gehen beim Speichern einer Excel-Mappe in einer XML-Datei die Diagramme verloren.<br />

Werden zum Beispiel Word-Dokumente mit eingebetteten Excel-Arbeitsblättern als XML-<br />

Datei gespeichert, dann enthalten diese nicht das Excel-Arbeitsblatt als XML, sondern<br />

stattdessen einen druckbar kodierten Binärblock (Auszug):<br />

Seite 447


EAAAAgAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////////////<br />

/////v////7///8EAAAABQAAAAYAAAD+////////////////////////////////////////////<br />

AAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAUqEb09sQB<br />

AwAAAMAHAAAAAAAAXwAxADEANgA2ADgANQA3ADAAMAAzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA<br />

AAAAAAAAAAAAAAAAAAAAAAAAABgAAgH///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA<br />

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////wAAAAAAAAAA<br />

W/4qSGgXHcISgQ9Pn5oRjL8BMAf8skd8x0gp3wsrz82hCyWf5R3rQ9bDvsagN81jsvedI96He9jP<br />

rGndHg5cLaoXHVoV69CHsS5HTtFz4I6h7+BGjz8gsW3uZNGySJ7F8nxD3vlQnstR80VyHnWUeQqX<br />

xaQ2oVk52OmU5jpLq+wt7D6CSINpa0Py9JvbcGBZkEnoJryUTWSq/kqBg+tscXvx/op04tzTkUls<br />

XdXdoGuM/gbBLTCfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA<br />

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==<br />

<br />

Abbildung 69: Binär kodierte Excel Tabelle in altem WordprocessingML<br />

Das XML-Format WordprocessingML ist in Microsoft Office 2007 vollständig durch das<br />

neue XML-Format Office Open XML abgelöst worden. Bis dahin waren die<br />

standardmäßig eingebauten Import- und Exportmöglichkeiten in den Kernanwendungen<br />

die Binärformate (doc, xls, ppt) sowie WordprocessingML. Mittels Erweiterungen können,<br />

wie bereits erwähnt, auch die neuen Standardformate geöffnet werden.<br />

In Microsoft Office 2003 boten einige Anwendungen die Möglichkeit einer automatischen<br />

Kontrolle der Daten anhand des vergebenen XML-Schemas. Auf diesem Wege können<br />

inkorrekte XML-Datensätze vor der Übertragung zu beliebigen Webservices,<br />

Gouvernement-Plattformen und so weiter erkannt und zurückgehalten werden. Falsche<br />

oder unvollständige Eingabefelder können bereits während der Eingabe markiert<br />

werden. Die Validierung der Eingabe muss dabei nicht programmiert werden. Microsoft<br />

Office 2003 kann alle notwendigen Informationen aus dem XML-Schema herauslesen<br />

und die Validierung automatisch durchführen.<br />

1.2.7 Zusammenfassung<br />

natives Dateiformat<br />

Eingebaute Importfunktionen<br />

von anderen Formaten<br />

Eingebaute Exportfunktionen<br />

zu anderen Formaten<br />

Erweiterungsmöglichkeiten<br />

Programmierung<br />

Unterstützung von anwendungsspezifischen<br />

XML-<br />

Formaten<br />

Unterstützung, Webservice<br />

basierte Integration in Prozessketten<br />

Microsoft Office 2007 Microsoft Office 97 bis2003<br />

Office Open XML (docx, pptc,<br />

usw.) Binärformate<br />

Binärformate (.doc, .xls, .ppt)<br />

Office 97 - 2003<br />

Binärformate (.doc, .xls, .ppt)<br />

Office 97 - 2003<br />

Ja, (mit Makros, Smarttags, Visual<br />

Basic for Applications<br />

(VBA), oder .Net Programmierumgebung)<br />

Ja, umfangreiche Unterstützung<br />

auch mit grafischen Editoren<br />

Ja, umfangreiche Unterstützung<br />

auch mit grafischen Editoren,<br />

Smarttags, und .Net Programmierumgebung<br />

Seite 448<br />

Binärformate (.doc, .xls, .ppt)<br />

Office 97 - 2003<br />

Binärformate (.doc, .xls, .ppt)<br />

Office 97 - 2003<br />

Ja, (mit Makros, Smarttags,<br />

.Net Programmierumgebung<br />

oder VBA)<br />

Ja, umfangreiche Unterstützung<br />

auch mit grafische Editoren,<br />

ab Microsoft Office 2003<br />

Ja, umfangreiche Unterstützung<br />

auch mit grafische Editoren,<br />

Smarttags, und .Net<br />

Programmierumgebung, ab<br />

Microsoft Office 2003


Lizenzierung<br />

Verfügbarkeit für Betriebssysteme<br />

Microsoft Office 2007 Microsoft Office 97 bis2003<br />

Lizenz erforderlich, da kostenpflichtige<br />

<strong>Version</strong><br />

Microsoft Windows XP mit Service<br />

Pack (SP) 2, Windows Server<br />

2003 mit SP1 (oder höher) und<br />

Windows Vista<br />

Seite 449<br />

Lizenz erforderlich, da kostenpflichtige<br />

<strong>Version</strong><br />

Microsoft Windows XP (oder<br />

höher), Windows Server 2000<br />

mit SP3 (oder höher) und<br />

Windows Server 2003 (oder<br />

höher)<br />

Tabelle 71: Überblick der Charakteristika von MS Office 2007 und Office 97 - 2003<br />

2 Migrationspfade<br />

Thema dieses Kapitels ist die Migration zwischen den einzelnen zuvor betrachteten Office-Anwendungen.<br />

Dabei spielt Interoperabilität zwischen den Anwendungen eine wesentliche<br />

Rolle, sowohl für die Migration von bestehenden Dokumenten und deren Weiternutzung<br />

als auch für den Austausch und die gemeinsame Bearbeitung von Dokumenten.<br />

Mit Blick auf eine Migration muss einerseits während dieser die Interoperabilität zwischen<br />

den betroffenen Organisationseinheiten gewahrt bleiben, da in der Regel nicht alle<br />

Einheiten gleichzeitig migriert werden können und andererseits muss die Interoperabilität<br />

auch nach der Migration mit anderen Organisationen gewahrt bleiben, die nicht die gleichen<br />

Office-Anwendungen verwenden und mit denen eine gemeinsame Bearbeitung von<br />

Dokumenten zum täglichen Geschäft gehört. Damit ist die Sicherstellung der Interoperabilität<br />

ein wesentliches Entscheidungskriterium für die Wahl eines Migrationspfades.<br />

Interoperabilität von Office-Anwendungen ist, wie der Name sagt, keine einseitige Sache<br />

und wird daher im Abschnitt (III.C 2.1) losgelöst von konkreten Migrationspfaden übergreifend<br />

betrachtet.<br />

Neben der Interoperabilität spielen auch die Lock-In Szenarien eine außerordentliche<br />

Rolle bei einer Migrationsentscheidung. Im Vorfeld ist daher zu klären, in welchem Maße<br />

andere Dienste und Anwendungen auf konkrete Office-Anwendungen angewiesen sind.<br />

Sei es, weil bestimmte proprietäre Schnittstellen verwendet werden oder weil bestimmte<br />

Funktionalitäten benötigt werden, die nur von einer Office-Anwendung zur Verfügung<br />

gestellt wird. Das Auftreten solcher Lock-In Szenarien steht in engem Zusammenhang<br />

mit den Möglichkeiten der Office-Programmierung und der Intensität der Nutzung der<br />

Möglichkeiten im Rahmen der Office-Automation. Will eine Organisation hier die notwendige<br />

Unabhängigkeit waren, dann müssen andere Konzepte entwickelt werden. Ein<br />

gutes Beispiel hierfür ist die OSS-Lösung des Dokumentengenerators „tarent_doktor―<br />

(siehe III.C 2.3 „Exkurs―).<br />

Jedes Migrationsverfahren benötigt eine umfassende und gute Vorbereitung und gegebenenfalls<br />

auch eine entsprechende Nachbereitung. Dies hat für die Migration von Office-Anwendungen<br />

eine besonders große Bedeutung, die aus der Vielzahl von Dokumenten<br />

resultiert, die mit den Office-Anwendungen im Laufe der Zeit erstellt wurden und bei<br />

denen nicht immer klar ist, inwieweit eine Übernahme auch notwendig ist und vor allem<br />

in welcher Form diese Übernahme erfolgen soll. Im Abschnitt III.C 2.2 werden hierzu<br />

einige praktische Hinweise gegeben.


Anschließend werden folgende Migrationspfade genauer betrachtet:<br />

� Migration von MS Office 2000 - 2003 nach OOo2/SO8 430<br />

� Migration von MS Office 2000 - 2003 nach MS Office 2007<br />

� Migration von OOo1/OOo2/SO7/SO8 nach MS Office 2007<br />

� Migration von OOo1/SO7 nach OOo2/SO8<br />

Jede Migration von Office-Anwendungen ist im Wesentlichen von folgenden Migrationsmaßnahmen<br />

geprägt:<br />

� die Migration der Dokumente<br />

� die Migration der eingesetzten Makros und Scripte<br />

� die Wiederherstellung der in den Dokumenten verwendeten Anbindung an Datenquellen<br />

� der Umgang mit bestehenden Anwendungsintegrationen<br />

Unter diesen Aspekten werden die oben genannten Migrationspfade betrachtet.<br />

2.1 Interoperabilität von Officeanwendungen<br />

In allen Migrationsszenarien ist die Kompatibilität zwischen der alten und der neuen Anwendung<br />

eine entscheidende Herausforderung. Konkret ist zu klären: Kann die neue<br />

Anwendung die Daten der alten Anwendung unmittelbar importieren? Oder sind Vor-<br />

beziehungsweise Nacharbeiten oder explizite Konvertierungsschritte notwendig? Wie<br />

können sie bewerkstelligt werden? Welche Informationen gehen dabei verloren?<br />

Wenn sich eine Migration über einen längeren Zeitraum erstrecken oder wenn nur Teile<br />

einer Organisation migriert werden sollen, dann gewinnt darüber hinaus die Rückwärts-<br />

Kompatibilität an Bedeutung. Zu klären ist: Wie können Dokumente, die mit der neuen<br />

Anwendung erzeugt oder bearbeitet wurden, mit der alten Anwendung weiter verarbeitet<br />

werden? Entstehen durch die wechselseitige Bearbeitung eines Dokumentes mit verschiedenen<br />

Anwendungen oder Anwendungs-<strong>Version</strong>en (Roundtrip) möglicherweise<br />

Fehler, die sich „schneeballhaft― vergrößern? Die gleichen Fragen stellen sich auch<br />

dann, wenn neben der Migration innerhalb einer Organisation auch die Interoperabilität<br />

mit anderen Organisationen angestrebt wird.<br />

2.1.1 Betrachtungsebenen<br />

Wenn von der Interoperabilität von Office-Suiten die Rede ist, ist im Rahmen dieses Leitfadens<br />

der Austausch von Dateien gemeint. Man kann daher auch von einer "dateibasierten<br />

Interoperation" sprechen.<br />

Um das Potenzial aber auch die Grenzen der auf Dateien basierenden Interoperabilität<br />

von Office-Anwendungen auszuloten, ist eine differenziertere Betrachtung der zu lösenden<br />

Kompatibilitätsprobleme hilfreich. Die folgenden Kompatibilitätsebenen werden am<br />

430 OOo2 = OpenOffice.org <strong>Version</strong> 2.x, SO8 = StarOffice <strong>Version</strong> 8.x<br />

Seite 450


Beispiel der Textverarbeitung dargestellt, gelten in unterschiedlichem Maße aber auch<br />

für Tabellenkalkulationen, Präsentationsprogramme und viele andere Anwendungen:<br />

� Die logische Ebene: das Dokumentenmodell<br />

Jede Anwendung hat eine interne Sicht auf ein zu bearbeitendes Dokument, die<br />

sich von der menschlichen Wahrnehmung unterscheidet. Ein simpler Brief auf einem<br />

Briefbogen ist für den menschlichen Betrachter ein völlig selbstverständlicher<br />

Gegenstand. Damit ein Textverarbeitungsprogramm ihn aber gestalten<br />

kann, muss es beispielsweise dafür sorgen, dass sich bei Änderungen zwar der<br />

Text mit seinen Fußnoten verschiebt, nicht aber der Briefkopf, das Datum und die<br />

Faltmarken. Dazu kennt die Textverarbeitung Konstruktionen wie Textboxen, eingebettete<br />

Objekte, Fußzeilen oder Wasserzeichen. Die Menge dieser Gestaltungsinstrumente,<br />

die zusammen das Dokumentenmodell ausmachen, sind von<br />

einer Textverarbeitung zur anderen unterschiedlich. Unter Umständen verfügt eine<br />

Office-Suite über Instrumente, die im Dokumentenmodell andere Office-<br />

Anwendungen keinerlei Entsprechung hat.<br />

Auf der Ebene der Dokumentenmodelle misst sich die Kompatibilität zweier Textverarbeitungen<br />

daran, in welchem Maße die Modelle identisch sind (Modellkompatibilität)<br />

und in welchem Maße die Instrumente des einen Modells in die Instrumente<br />

des jeweils anderen Modells übersetzt werden können (Modell-<br />

Abbildbarkeit).<br />

� Die technische Ebene: das Dateiformat<br />

Das eben behandelte Dokumentenmodell ist ein internes Konstrukt einer Anwendung.<br />

Es ist dem Anwender zugänglich, während er mit der Anwendung arbeitet.<br />

Andere Anwendungen haben jedoch i.d.R keinen Zugang dazu. Stattdessen greifen<br />

sie auf die Dateien zu, in der die Anwendung ihre Dokumente speichert. Die<br />

Dateien enthalten zwar alle Informationen des Dokumentenmodells, können<br />

selbst aber durchaus anders strukturiert sein. Beispielsweise können sie anstelle<br />

des letzten Bearbeitungszustandes des Dokumentes einen älteren Stand speichern<br />

und ergänzend dazu die seither vorgenommenen Bearbeitungsschritte.<br />

Darüber hinaus kann die Datei binär kodiert sein, sodass sie nur von geeigneten<br />

Anwendungen genutzt werden kann, wie etwa vom Standardformat von Microsoft<br />

Word. Sie kann aber auch in einem für Menschen mehr oder minder lesbaren<br />

Format geschrieben werden, wie etwa das RTF-Format oder die komprimierten<br />

XML-Archive, die ODF und inzwischen auch OOXML verwenden. Die meisten<br />

Anwendungen sind in der Lage, Dokumente in unterschiedlichen Dateiformaten<br />

zu speichern und zu lesen. Der vollständige Informationsgehalt des Dokumentenmodells<br />

kann jedoch häufig nur in einem einzigen, nämlich dem 'eigenen' ("nativen")<br />

Dateiformat abgelegt werden. Die Verwendung anderer Dateiformate ist in<br />

diesem Fall mit dem Verlust von Informationen verbunden.<br />

Auf der Ebene des Dateiformates misst sich Kompatibilität zunächst daran, ob<br />

das Format technisch lesbar ist. Die technische Lesbarkeit kann dadurch hergestellt<br />

werden, dass es sich um ein standardisiertes Dateiformat handelt (RTF,<br />

XML), oder dass das Format dokumentiert ist. Wenn die technische Lesbarkeit<br />

gegeben ist, muss erkennbar sein, welche der gelesenen Daten den letzten Be-<br />

Seite 451


arbeitungsstand des Dokumentes repräsentieren und wie sie zu interpretieren<br />

sind. Dieser Schritt ist dann wichtig, wenn ein Dateiformat nicht den jüngsten Zustand<br />

eines Dokumentes speichert, sondern die zuletzt vorgenommenen Arbeitsschritte,<br />

gewissermaßen also ein Makro. Wenn die technische Lesbarkeit gegeben<br />

und der Zustand des Dokumentes rekonstruiert ist, muss schließlich dieser<br />

Zustand noch in das Dokumentmodell der lesenden Anwendung übersetzt werden.<br />

Erst in diesem letzten Schritt 'versteht' die lesende Anwendung das Dokument<br />

und kann es für eine Bearbeitung zugänglich machen.<br />

� Grafische Interpretation und Gestaltungstreue<br />

Bei der Bearbeitung eines Textdokumentes ist dem Anwender oft nicht nur am<br />

Wortlaut des Textes gelegen sondern auch an dessen Gestaltung. Moderne<br />

Textverarbeitungen bieten eine Fülle von visuellen Gestaltungsmöglichkeiten und<br />

stellen sie dem Anwender in der Regel im Sinne des WYSIWYG-Paradigmas zur<br />

Verfügung. Der Anwender erwartet mit einer gewissen Berechtigung, dass das<br />

Dokument immer und unter allen Umständen so aussehen wird, wie er es zum<br />

Zeitpunkt der Bearbeitung auf seinem Bildschirm wahrnimmt. „Immer" schließt<br />

dabei alle erdenklichen Drucker, alternative Betriebssysteme und -Umgebungen<br />

ein, im Migrationskontext darüber hinaus auch andere Anwendungen beziehungsweise<br />

Anwendungsversionen. Unglücklicherweise erweist sich WYSIVVYG in<br />

der Praxis seit jeher als guter Vorsatz, der zwar meist annähernd, aber kaum je<br />

vollständig umgesetzt wird. So reicht zum Beispiel der bloße Wechsel des Druckertreibers<br />

aus, um die Gestaltung längerer, mit zahlreichen Grafiken versehene<br />

Dokumente zu ruinieren. Die technischen Gründe dafür sind ebenso vielfältig wie<br />

(zumeist) nachvollziehbar. Was Kompatibilität auf der Ebene der Gestaltungstreue<br />

bedeutet, muss im Einzelfall entschieden werden. Wenn eine Faltmarke an<br />

der falschen Position gedruckt wird, erfüllt sie ihren Zweck nicht mehr. Wenn sie<br />

etwas schmaler oder etwas länger ist, ist dies hingegen keine gravierende Beeinträchtigung.<br />

Wenn jedoch die Gestaltungsdetails zum Beispiel eines Stadtwappens<br />

einer Graustufenkonvertierung zum Opfer fallen, dann ist dies nicht akzeptabel.<br />

Maßgeblich sind somit die Anforderungen, die an ein bestimmtes Resultat<br />

gestellt werden, zum Beispiel an den Druck auf Papier oder die auf die<br />

Übereinstimmung mit amtlichen Vordrucken oder mit Gestaltungsrichtlinien abzielen.<br />

Auf welcher dieser drei Ebenen wird nun über Kompatibilität entschieden? Da Probleme<br />

der Darstellungstreue am deutlichsten sichtbar sind, werden sie häufig als entscheidender<br />

Maßstab für Interoperabilität verstanden. Ob diese Probleme tatsächlich in der Praxis<br />

die Roundtrip-lnteroperabilität beeinträchtigen, hängt allerdings in hohem Maße vom<br />

konkreten Anwendungsszenario ab. Unter Umständen können Mängel der Darstellungstreue<br />

toleriert werden, sofern die Interoperabilität auf den anderen Ebenen gewährleistet<br />

ist.<br />

Die Zuordnung augenscheinlicher Kompatibilitätsprobleme zu einer der drei Ebenen ist<br />

für den Anwender jedoch häufig nicht einfach. Wenn beispielsweise eine Tabelle in einem<br />

Textdokument nach der Konvertierung aus einer Datei der Anwendung A in eine<br />

Datei der Anwendung B völlig anders aussieht, wird diese Veränderung zunächst als<br />

mangelnde Gestaltungstreue wahrgenommen und möglicherweise auf ein Dateiformat-<br />

Seite 452


Problem zurückgeführt. Tatsächlich kann es sich jedoch um eine Inkompatibilität der<br />

Dokumentenmodelle handeln, die ein Konvertierungswerkzeug durch einen gut gemeinten<br />

übersetzenden Eingriff zu überbrücken versuchte, jedoch mit unbefriedigendem Ergebnis.<br />

Die richtige Identifikation der Ebene, der ein Kompatibilitätsproblem zugeordnet ist, hat<br />

jedoch deshalb eine entscheidende Bedeutung, weil sich daraus die in Betracht kommenden<br />

Lösungen ableiten. Der folgende Abschnitt geht insbesondere der Frage nach,<br />

welche Beiträge XML-Technologien auf den unterschiedlichen Ebenen leisten können.<br />

2.1.2 Maßnahmen zur Überwindung von Interoperabilitätshindernissen<br />

Inkompatibilitäten auf der Ebene der Gestaltungstreue sind schwer zu beheben. Bietet<br />

beispielsweise ein Drucker eine deutlich gröbere Auflösung als ein anderer, dann verläuft<br />

die eben noch feine Schraffur im Stadtwappen unter Umständen zu einer indifferenten<br />

schwarzen Fläche. Abhilfe schafft in einer solchen Situation die Vereinheitlichung der<br />

Hardware oder eine professionelle Aufbereitung der Grafik. In anderen Fällen mögen<br />

zwei verschiedene Drucker technisch in der Lage sein, identische Ergebnisse zu produzieren,<br />

doch die Funktionsweise der jeweils notwendigen Druckertreiber einer Anwendung<br />

kann so unterschiedlich sein, dass sie dennoch zu unterschiedlichen Ergebnissen<br />

führt. Ein solches Phänomen ist ein internes Problem der Anwendung. Zur Behebung<br />

dieser Art von Misshelligkeiten kann hier keine Abhilfe geleistet werden. Es mag ein<br />

schwacher Trost sein, dass die Mehrzahl der Gestaltungsprobleme auf Inkompatibilitäten<br />

im Dokumentenmodell zurückzuführen ist.<br />

Inkompatibilitäten auf der Ebene des Dokumentenmodells können durch die bereits angesprochenen<br />

Abbildungen von einem Modell ins andere überbrückt werden. Um eine<br />

uneingeschränkte Roundtrip-lnteroperabilität zwischen beiden Modellen herzustellen,<br />

müssten diese Übersetzungen umkehrbar sein. In der Praxis ist das selten der Fall. Dafür<br />

gibt es eine Reihe von prinzipiellen Gründen. Einer davon ist die unterschiedliche<br />

Verteilung des Gestaltungsreichtums innerhalb der Modelle. Beispielsweise kennt das<br />

Dokumentenmodell der Anwendung A 25 verschiedene Linienmuster, während das von<br />

Anwendung B nur 7 kennt. Ein weiterer prinzipieller Grund ist die Schwierigkeit, bestimmte<br />

Merkmale eines Dokumentes als bewussten Eingriff des Anwenders oder als<br />

das Artefakt einer Modellübersetzung zu identifizieren. Die fast unausweichlichen<br />

Asymmetrien solcher Modell-Übersetzungen sind jedoch die zentrale Ursache für das<br />

„schneeballhafte― Anwachsen von Anomalien beim mehrfachen Hin- und Herkonvertieren<br />

eines Dokumentes zwischen zwei Formaten.<br />

Roundtrip-lnteroperabilität lässt sich unter diesen Umständen dadurch erreichen, dass<br />

nur diejenigen Gestaltungsmöglichkeiten tatsächlich in Dokumenten verwendet werden,<br />

die in allen in Frage kommenden Dokumentenmodellen identisch sind. Ferner kann deren<br />

Übersetzung so gestaltet werden, dass sie im Regelfall umkehrbar ist, zumindest<br />

aber frei von Schneeball-Effekten. Dazu müssen die in Frage kommenden Gestaltungsmöglichkeiten<br />

identifiziert werden. Dokumentenvorlagen können dann so gestaltet werden,<br />

dass sie nur diese interoperablen Gestaltungsmöglichkeiten verwenden. Der praktische<br />

Erfolg hängt schließlich auch davon ab, ob die Anwender über die zulässigen Gestaltungsmöglichkeiten<br />

informiert werden und sich tatsächlich an den gegebenen Rahmen<br />

halten.<br />

Seite 453


Um auch diejenigen Gestaltungsmöglichkeiten nutzen zu können, die die beschriebenen<br />

Bedingungen nicht erfüllen, bietet es sich an, den Bearbeitungszyklus der Dokumente in<br />

zwei Phasen einzuteilen. In der ersten Phase erfolgt die eigentliche Bearbeitung. Sie<br />

beschränkt sich soweit wie möglich auf den Dokumenteninhalt und vermeidet daher weitestgehend<br />

gestaltende Eingriffe. Die zweite Phase beginnt, wenn die inhaltliche Bearbeitung<br />

endgültig abgeschlossen ist. In dieser Phase erfolgt das gestalterische ‗Finetuning‗<br />

des Dokumentes mit nur einer der beteiligten Anwendungen. Eine umlaufende Bearbeitung<br />

findet also in dieser Phase nicht mehr statt, sodass auch die damit verbundenen<br />

Probleme nicht mehr auftreten<br />

Inkompatibilitäten auf der Ebene des Dateiformates sind im Vergleich zu den anderen<br />

Ebenen eine technisch gesehen recht einfache Herausforderung, sie erwiesen sich aber<br />

in der Vergangenheit als erhebliches Hindernis. Die nun übliche Verwendung von XML<br />

sorgt auf dieser Ebene für eine substanzielle Erleichterung.<br />

2.2 Vorbereitung der Migration<br />

Bevor die Migration begonnen wird, sind einige Vorüberlegungen erforderlich, um späteren<br />

Problemen weitgehend aus dem Weg gehen zu können. Eine wesentliche Maßnahme<br />

dabei ist Durchführung einer intensiven Bestandsanalyse, insbesondere der vorliegenden<br />

Office-Dokumente und -Vorlagen. Was dabei zu beachten ist, wird im nachfolgenden<br />

Abschnitt dargelegt. Anschließend werden mögliche Verfahren zur Dokumentenkonvertierung<br />

vorgestellt.<br />

2.2.1 Bestandsanalyse<br />

Zunächst einmal sollte vor einer Migration der Bestand an Dokumenten und Vorlagen<br />

erfasst werden. Sein Zustand ist vor allem für die Wahl einer Migrationsstrategie entscheidend.<br />

Die nachfolgende Auflistung zeigt Untersuchungskriterien, nach denen Bestandsdokumente<br />

und Vorlagen gruppiert werden sollen. Sie verdeutlicht, was bei der<br />

Verwendung externer Datenquellen zu beachten ist und gibt Hinweise, wie bei der Integration<br />

externer Anwendungen zu verfahren ist:<br />

� Weiterverwendbarkeitsbedarf von Dokumenten und Vorlagen<br />

Dieser Untersuchungspunkt ist einer der wichtigsten, da sich hier entscheidet,<br />

wie aufwendig sich die spätere Übernahme der Dokumente gestaltet. Umso mehr<br />

der Bestandsdokumente zukünftig nur noch für den lesenden Zugriff benötigt<br />

werden, desto geringer wird der Aufwand insgesamt für die Übernahme der Dokumente<br />

sein.<br />

o Dokumente und Vorlagen, die evtl. weiter zu bearbeiten sind für diese<br />

Dokumente muss in der Regel eine Konvertierung in ein neues bearbeitbares<br />

Format vorgenommen werden, ohne dass dabei so wenig als möglich<br />

an Verlusten hinsichtlich Inhalt und Qualität entsteht.<br />

o Dokumente, die nur noch gelesen, jedoch nicht mehr bearbeitet werden<br />

sollen für diese Dokumente sollte mit Blick auf eine langfristige Verfügbarkeit<br />

eine Konvertierung nach PDF oder zur Archivierung nach PDF/A<br />

vorgenommen werden.<br />

Seite 454


o Dokumente und Vorlagen, die nicht mehr benötigt werden, sollten auch<br />

vollständig und endgültig gelöscht werden.<br />

� Komplexität der Dokumente<br />

Die Komplexität spielt hinsichtlich des Aufwandes für die Migration eine wesentliche<br />

Rolle.<br />

o einfache Dokumente<br />

Diese enthalten keine Makros, proprietäre Grafiken (zum Beispiel WordArt),<br />

Vektorgrafiken, komplexe Formatierungen oder Elemente wie Fußnoten,<br />

Tabellen oder Indizes. Sie lassen sich am besten durch eine<br />

BatchKonvertierung umwandeln (siehe Abschnitt III.C 2.2.2)<br />

o komplexe Dokumente<br />

Diese enthalten Makros, gemeinsame Komponenten, Absatz- und Seitenformatierung,<br />

proprietäre und Vektorgrafiken, ferner viele Links und Querverweise,<br />

OLE-Objekte, Rahmen, Text-Boxen, Fußnoten, aktive Komponenten,<br />

Formularfelder, Formular-Controls, Formulare oder Tabellen, also<br />

eine Fülle verschiedenster Formatierungen und Elemente. In diesem Bereich<br />

gibt es eine sehr starke Abstufung im Komplexitätsgrad. Diese ist<br />

aber leider weder kategorisierbar noch klar benennbar. Die Abstufung<br />

hängt von der jeweiligen Anwendung ab, mit der sie erstellt wurde und in<br />

welchem Maße die zuvor genannten Punkte im jeweiligen Dokument zum<br />

Einsatz kommen. Daher ist eine genaue Untersuchung der Dokumente,<br />

sofern diese in anderes Format zur Weiterbearbeitung überführt werden<br />

sollen, unausweichlich.<br />

� Komplexität der Vorlagen<br />

Die Komplexität der Vorlagen hat hinsichtlich des Aufwandes der Migration ebenfalls<br />

eine große Bedeutung. Die Anzahl der Vorlagen sollte daher von vornherein<br />

auf das notwendige Maß beschränkt werden.<br />

o einfache Vorlagen<br />

Einfache Vorlagen bestehen aus generischem Text 431 und Formatierungen,<br />

die als Ausgangspunkt oder grober Entwurf für neue Dokumente dienen.<br />

Gute Beispiele hierfür sind Vorlagen für Briefe, Reports oder Protokolle,<br />

die teilweise schon mit den Office-Suiten ausgeliefert und für die<br />

vereinfachte Erstellung neuer Dokumente angeboten werden. Für einfache<br />

Vorlagen bestehen die gleichen Konvertierungsoptionen wie für einfache<br />

Dokumente.<br />

o komplexe Vorlagen<br />

Komplizierte Vorlagen enthalten Formfelder und Makros, die nicht immer<br />

leicht umzuwandeln sind und daher mit Hilfe von Entwicklungsumge-<br />

431 Ein partikulärer Text ohne Entstehungszusammenhang - also das Symbolische in einem<br />

linguistischen Ausdruck ohne jeglichen Bezug zur Wirklichkeit.<br />

Seite 455


ungen der jeweils anderen Office-Suiten nachgebildet oder gar völlig neu<br />

entwickelt werden müssen.<br />

� Verwendung von externen Datenquellen<br />

Diese müssen in der Regel neu angebunden werden. Das ist grundsätzlich recht<br />

problemlos möglich. Zu diesen Datenquellen zählen u.a. Datenbanken.<br />

� Integration externer Software<br />

Zunächst sind die Anwendungen zu identifizieren, deren Einbindung benötigt<br />

wird. Anschließend ist zu prüfen, ob diese für die Umgebung, in die migriert wird,<br />

verfügbar sind. Schließt die Nutzung einer neuen Office-Suite einen Betriebssystemwechsel<br />

mit ein, muss davon ausgegangen werden, dass hier nicht alle<br />

externen Programme lauffähig sind. Unter Umständen können ausführbare Programme<br />

auch für die neue Umgebung erstellt werden, sofern der Quelltext der externen<br />

Software verfügbar ist. Ansonsten müssen Alternativen gesucht werden.<br />

Auch wenn die Migration keinen Betriebssystemwechsel mit sich bringt, ist zu<br />

prüfen, inwieweit eine Einbindung der externen Software (zum Beispiel mittels<br />

Schnitt-stellen) in die alternative Office-Suite möglich ist. Wird eine Integration<br />

nicht unterstützt, müssen auch hier Alternativen gesucht werden, wodurch sich<br />

der Migrationsaufwand erhöht.<br />

Nachbereitung der Migration von Dokumenten<br />

Nach einer Konvertierung ist es sinnvoll, die konvertierten Dokumente auf die korrekte<br />

Übernahme folgender Einstellungen zu überprüfen:<br />

� Ränder<br />

� Tabs und Einrückungen<br />

� Zeilenabstände innerhalb von Absätzen<br />

� Abstände zwischen Absätzen<br />

� Tabellen<br />

� Kopf- und Fußzeilen<br />

� Listen<br />

� Grafiken<br />

Generell ist es immer empfehlenswert, konvertierte Dokumente auf die Korrektheit der<br />

obigen Einstellungen hin zu überprüfen und sich nicht auf Kompatibilitätsversprechen<br />

der Office-Anbieter zu verlassen. Damit eine solche Aufgabe im Rahmen einer Migration<br />

nicht zu einer unendlichen Geschichte wird, ist vorab zu prüfen, welche Dokumente für<br />

welche Zwecke zukünftig noch benötigt werden. Hierbei sowie bei der Prüfung auf korrekte<br />

beziehungsweise akzeptable Konvertierung sollten, so weit als möglich, die Eigentümer,<br />

das heißt die Anwender, welche die Dokumente erstellt haben, in die Prüfung mit<br />

einbezogen werden.<br />

Es ist ferner darauf zu achten, dass nach einer Konvertierung prinzipiell das als Konvertierungsziel<br />

gewählte Dokumentenformat beibehalten wird, um eventuelle Verluste in der<br />

Formatierung durch mehrfaches Hin- und Herkonvertieren zu verhindern.<br />

Seite 456


2.2.2 Wahl eines geeigneten Konvertierungsverfahrens<br />

Prinzipiell bieten sich zwei Verfahren für die Konvertierung von Dokumenten an. Zum<br />

einen können Dokumente in der Officeanwendung, zur der migriert werden soll, im ursprünglichen<br />

Dateiformat geöffnet und später im nativen Ziel-Dateiformat abgespeichert<br />

werden. Die Migration erfolgt also mithilfe eines Importfilters. Solche Filter sind inzwischen<br />

für alle hier betrachteten Office Suiten verfügbar.<br />

Zum anderen kann eine Batch-Konvertierung durchgeführt werden. Bei diesem Verfahren<br />

wird eine Gruppe von Dateien mithilfe eines Konverters in ein anderes Dokumentenformat<br />

umgewandelt.<br />

Welches Verfahren für den vorliegenden Anwendungsfall in Frage kommt, hängt von der<br />

Komplexität, dem Umfang und der Menge der zu konvertierenden Dateien ab.<br />

2.3 Migration von MS Office 97 - 2003 nach StarOffice 8/OOo 2<br />

2.3.1 Migration von Dokumenten<br />

OOo 2/SO 8 bieten Import-/Export-Mechanismen für fremde Dateiformate, sowohl für<br />

binäre wie für XML-basierte. Neben den integrierten Standardfiltern in OOo und SO ist<br />

es auch möglich, den OpenXML-Translator zu nutzen. Diese OpenSource-Lösung wurde<br />

von Novell und Microsoft entwickelt und ermöglicht den Im- und Export von Dokumenten<br />

im ODF-Format. Nachteil dieser Lösung ist jedoch, dass sie nur unter der Novell-eigenen<br />

OpenOffice-Distribution für Linux und Windows zur Verfügung steht. Als Alternative bietet<br />

Sun mit seinem ODF Plugin for Microsoft Office 432 Import-/Export-Filter an, mit dem<br />

MS-Office-Anwender Textdokumente, Kalkulationstabellen und Präsentationen im OpenOffice-<br />

und StarOffice-eigenen Format lesen und schreiben können.<br />

Einige dieser Mechanismen verwenden XSL-Transformationen und werden dementsprechend<br />

durch Stylesheets konfiguriert und erweitert. Filter-Stylesheets können als Pakete<br />

gebündelt und so auch durch den Anwender in einem Schritt installiert werden. Die Filter-Systeme<br />

für Microsoft Office 2003-XML-Formate (SpreadsheetML und WordML) sind<br />

mit OOo 2/SO 8 Teil des Standardinstallationssatzes433. Weiterhin sind folgende Filter<br />

integriert:<br />

� MS Win Word 5.0 Word 6.0, 95, 97, 2000, XP<br />

� MS Excel 4.0, 5.0, 95, 97, 2000, XP<br />

� MS PowerPoint 97, 2000, XP<br />

� Corel WordPerfect<br />

� RichTextFormat<br />

� Text-Dateien<br />

Aus Anwendersicht fügen sich die installierten XSLT-Filter in die vertrauten Funktionalitäten<br />

(„Öffnen...―, „Speichern unter...―) ein und mischen sich dort mit den nach wie vor<br />

432 http://www.sun.com/software/star/odf_plugin/<br />

433 http://www.openoffice.org/issues/show_bug.cgi?id=33450<br />

Seite 457


zahlreichen, fest eingebauten Binärformat-Filtern. Als Teil einer lmportfilter-Konfiguration<br />

kann zusätzlich ein Dokumenten-Template identifiziert werden, dessen (Formatierungs-<br />

)Styles automatisch auf das importierte Dokument angewendet werden. Es wird durch<br />

entsprechende Zuweisungen des (Import-) Stylesheets gesteuert.<br />

Im Allgemeinen erfolgt die Konvertierung in einer akzeptablen Qualität, außer es handelt<br />

sich um komplexe Dokumente mit zum Beispiel Makros. Hier gibt es einige Layouteigenschaften<br />

und Formatierungsattribute in MS Office, die in OOo/SO nicht unterstützt oder<br />

anders behandelt werden. Infolgedessen ist es erforderlich, die durchgeführte Konvertierung<br />

in einem gewissen Grad manuell nachzubearbeiten, um ein dem Ausgangsdokument<br />

entsprechendes Format zu erhalten. Insbesondere bei komplexen und sehr produktspezifischen<br />

Dokumenteneigenschaften wie Indizes, Felder, Frames und Tabellen,<br />

können keine 100%ig befriedigenden Konvertierungen erwartet werden. Weiterhin kann<br />

es auch in einigen Fällen bei der Konvertierung von Basis-Attributen und -<br />

Formatierungen wie Seitenrändern oder Leerräumen zwischen Absätzen zu Unterschieden<br />

zwischen dem Original und dem konvertierten Dokument kommen. Im Gegensatz zu<br />

den vorherigen <strong>Version</strong>en wurden diese Einschränkungen jedoch erheblich verringert.<br />

Die folgende Tabelle zeigt anwendungsübergreifende und anwendungsspezifische<br />

Schwierigkeiten, die bei einer Konvertierung auftreten können:<br />

anwendungsübergreifend<br />

Word (.doc)<br />

Excel (.xls)<br />

Anwendung Probleme<br />

Seite 458<br />

� Auto-Formen werden verschoben<br />

� OLE-Objekte gehen verloren (nur unter<br />

Linux!)<br />

� Kontrollfelder und Formularfunktionen<br />

� Makros und VBA-Code<br />

� Verzeichnisse werden nicht in der gleichen<br />

Formatierung übernommen<br />

� Hyperlinks und Textmarken können<br />

verloren gehen<br />

� Kommentare werden nur bedingt<br />

konvertiert (einige Kommentare können als<br />

Text im Dokument erscheinen)<br />

� animierter Text wird nicht immer dargestellt<br />

� Referenzierungen in Tabellen können<br />

fehlerhaft sein<br />

� In Office 2007 gibt es „native Charts―, die<br />

mit den älterer <strong>Version</strong>en in Konflikt<br />

geraten können (weil sie keine OLE<br />

Objekte mehr sind)<br />

� Konflikte zwischen selbst definierten<br />

Funktionen / Formeln und integrierten<br />

Funktionen


PowerPoint (.ppt)<br />

Anwendung Probleme<br />

Seite 459<br />

� Nicht alle AutoShapes sind darstellbar<br />

� Masterhintergrund wird nicht dargestellt<br />

� einige Animationen werden nicht<br />

übernommen 434<br />

Tabelle 72: Mögliche Konvertierungsprobleme<br />

2.3.2 Migration von Makros und Skripten<br />

Makros und OLE/COM werden häufig leider zu intensiv zur Erweiterung der Office-<br />

Funktionalitäten und zur Office-Automation unter Windows genutzt. Diese Methode bereitet<br />

bei Migrationen immer wieder Probleme — manchmal sogar bei fortführenden Migrationen.<br />

Da die Makros und Scriptings in den MS Office Suiten in erster Linie auf VBA<br />

basieren, lassen sich diese unter OOo/SO nicht ausführen.<br />

Für eine automatisierte Migration nach OOo/SO gibt es verschiedene Werkzeuge, welche<br />

die vorhandenen Dokumente und Vorlagen analysieren und weitestgehend automatisiert<br />

die vorhandenen Makros aus MS Office nach StarBasic konvertieren. Leider stehen<br />

diese Werkzeuge nicht als freie Software zur Verfügung. Sie sind lediglich Bestandteil<br />

der StarOffice Enterprise Edition. Daher ist es notwendig, genau zu prüfen, welcher<br />

Weg wirtschaftlicher ist:<br />

� die manuelle Überführung beziehungsweise Neuerstellung,<br />

� Investition in die StarOffice Enterprise Edition oder<br />

� die Beauftragung eines Migrationpartners von Sun, der Zugriff auf diese Werkzeuge<br />

hat.<br />

Das Umschreiben der Makros kann neben StarOffice Basic auch in Java oder C++ erfolgen.<br />

Dafür steht ein IDE-Editor zur Verfügung. Grundsätzlich sollte zuvor genau geprüft<br />

werden, welche der bestehenden Makroprogrammierungen weiterhin zwingend benötigt<br />

werden beziehungsweise ob es nicht andere Lösungen gibt, die flexibler und plattformunabhängiger<br />

sind.<br />

Exkurs Dokumentgenerator<br />

Im Rahmen des Pilotprojektes „OSS-Desktop― wurde für das Bundesministerium der<br />

Justiz eine Anwendung entwickelt, die zur standardisierten, lT-gestützten Erzeugung von<br />

Dokumenten dient. Der Dokumentgenerator löste eine auf VBA-Makros basierende Anwendung<br />

ab. Die ursprüngliche Altanwendung bot keine Unterstützung von OpenOffice<br />

beziehungsweise StarOffice, war in einer heterogenen Office-Umgebung nicht einsetzbar<br />

und musste somit abgelöst werden. Der Dokumentgenerator wird unter einer GPL-<br />

Lizenz entwickelt und steht somit allen Interessenten frei zur Verfügung. Die Anwendung<br />

wurde von der tarent GmbH 435 entwickelt. Der Dokumentgenerator dient zur Erstellung<br />

434 siehe dazu den „Migration Guide StarOffice 8― – im Gegensatz zur letzten <strong>Version</strong> sollen<br />

nunmehr fast alle Animationen und Bildübergänge darstellbar sein<br />

435 Maintainer des Dokumentgenerators: www.tarent.de


und Bearbeitung unterschiedlicher Dokumenttypen, wie sie für die tägliche Arbeit benötigt<br />

werden. Im BMJ werden mit dem Dokumentgenerator beispielsweise Verfügungen<br />

und Reinschriften in unterschiedlicher Ausprägung erstellt, entweder als Vermerk, Verfügung,<br />

Ministervorlage oder Staatssekretärsvorlage.<br />

Gegenüber anderen Lösungen, die ausschließlich die Skript und Makroschnittstellen von<br />

Microsoft Word oder OOo/SO nutzen, wurde der Dokumentgenerator in Java geschrieben.<br />

Er ist daher eine einheitliche Lösung sowohl für Linux- als auch für Windowsbasierte<br />

Clientsysteme. Der Dokumentgenerator unterstützt weiterhin die Textverarbeitungsanwendungen<br />

OOo/SO als auch Microsoft Office. Die folgende Auflistung nennt die<br />

vom Dokumentgenerator unterstützten Office-Suiten:<br />

� StarOffice 7, 8<br />

� OpenOffice.org 1.x, 2<br />

� Microsoft Office 97 - 2003<br />

Der Dokumentgenerator ist in Java implementiert und benötigt für die Nutzung eine Java-Laufzeitumgebung<br />

(Java-Laufzeitumgebung ab <strong>Version</strong> 1.4) auf den jeweiligen<br />

Client-Systemen. Die Anwendung ist in die jeweiligen Office-Oberflächen (Menü, Symbolleisten)<br />

mit den jeweils officespezifischen verfügbaren Technologien integriert (Star-<br />

Basic/VBA). Da es sich hierbei in der Regel nur um die Aufrufe der Anwendungsdialoge<br />

handelt, ist diese lntegrationsschicht sehr klein und damit auch in der Pflege unkritisch.<br />

Der Dokumentgenerator realisiert die gesamte Logik und Automatismen, die ursprünglich<br />

durch die Verwendung von VBA-Makros implementiert wurden. Er verwendet einfache<br />

Dokumentvorlagen der jeweiligen Office-Suiten zur Bereitstellung des Enddokuments.<br />

Die Anwendung trennt deutlich zwischen Anwendungslogik und Präsentationsschicht,<br />

somit wird eine Unabhängigkeit von der jeweiligen Office-Umgebung erreicht,<br />

und auf den Einsatz von Makros kann verzichtet werden. Die zusätzlich benötigen Dokument-Vorlagen<br />

können vom Anwender oder den Administratoren mit Hilfe von Platzhaltern<br />

und Formatvorlagen selbst gestaltet und den jeweiligen Anforderungen angepasst<br />

werden. In der folgenden Abbildung wird die grundsätzliche Architektur des Dokumentgenerators<br />

dargestellt:<br />

Seite 460


Abbildung 70: Architektur des Dokumentengenerators<br />

Der Nutzer führt die Erstellung der jeweiligen Dokumente mit seinem gewohnten Office-<br />

Programm durch und empfindet den Dokumentgenerator durch die Integration in die<br />

jeweiligen Office-Oberflächen als Teil der Office-Lösung. Der Nutzer kann den Dokumentgenerator<br />

mittels einer eigenen Symbolleiste oder über das Anwendungsmenü bedienen.<br />

Die Dialoge des Dokumentgenerators erscheinen als „Kindfenster― der jeweiligen<br />

Textverarbeitung.<br />

Bei der Erstellung von Dokumenten, insbesondere von Anschreiben, können die Adressaten<br />

der Schreiben aus Adresskatalogen ausgewählt werden. Die Adresskataloge können<br />

mittels der Dialoge des Dokumentgenerators gepflegt werden. Bei den Adresskatalogen<br />

werden zum einen persönliche Kataloge ― diese sind durch den Nutzer frei bearbeitbar<br />

― und zum anderen schreibgeschützte Kataloge unterschieden, die von zentraler<br />

Stelle bereitgestellt werden. Die Bereitstellung der Adressdaten kann sowohl mittels<br />

einfacher Textdateien als auch mittels Datenbanksystemen erfolgen. Die Textdateien<br />

haben unter Windows- als auch Linux-basierten Systemen das gleiche Format. Auch<br />

kann der Dokumentgenerator Adressen im vcard-Format verwenden, wie sie aus verschiedenen<br />

Groupware-Lösungen (zum Beispiel Microsoft Outlook) exportiert werden<br />

können. Eine weitere Variante ist die Nutzung eines zentralen LDAP Verzeichnisdienstes<br />

für die Bereitstellung von Adressinformationen.<br />

2.3.3 Migration von Datenquellen<br />

Microsoft Office 2007 enthält spezielle Treiber, die zum Abrufen von Daten aus mehreren<br />

Datenquellen verwendet werden können. Hierzu gehören u.a.:<br />

� Microsoft SQL Server Analysis Services (OLAP-Anbieter)<br />

� Microsoft Office<br />

� dBASE<br />

� Oracle<br />

Seite 461


Es können auch ODBC-Treiber von anderen Herstellern verwendet werden, um Informationen<br />

aus Datenquellen abzurufen, die hier nicht aufgelistet sind. Informationen zum<br />

Installieren eines ODBC-Treibers oder eines Datenquellentreibers, die nicht hier aufgelistet<br />

sind, finden sich in der Dokumentation zur jeweiligen Datenbank.<br />

2.3.4 Integration von Anwendungen<br />

Hinsichtlich der Integration von externen (das heißt nicht-Office-) Anwendungen und der<br />

Migration solcher Integrationen nach OOo/SO spielt die Art der Integration von MS Office<br />

Suiten und die damit verbundenen Abhängigkeiten (Lock-In Szenarien) eine wichtige<br />

Rolle. Viele der heute eingesetzten Fach- und Standardanwendungen machen starken<br />

Gebrauch von proprietären API-Modulen, wie API, COM und DDE.<br />

Der Grad der Abhängigkeit solcher Integrationen kann ganz unterschiedlich sein. Eine<br />

einfache und noch recht unproblematische Integration ist die Nutzung der MAPI-<br />

Schnittstelle, um aus einer Anwendung heraus beispielsweise auf bestimmte Office-<br />

Anwendungen zuzugreifen. Am Ende ist jedoch unerheblich, ob dies eine Micosoft-<br />

Office-Anwendung oder eine OpenOffice.org-Anwendung ist.<br />

Weitaus problematischer stellt sich eine Integration dar, wenn eine Anwendung nur bestimmte<br />

MS-Office-Anwendungen zulässt beziehungsweise diese sogar zwingend benötigt<br />

werden, um die volle Funktionalität dieser Anwendung nutzen zu können.<br />

Diese Unterschiede bei der Integration von MS Office-Anwendungen in anderen Anwendungen<br />

erfordern eine genaue Prüfung, ob eine Migration technisch machbar und welcher<br />

Aufwand damit verbunden ist. Sofern der Source Code der externen Anwendung<br />

verfügbar ist, muss im Einzelfall geprüft werden, ob eine Integration von OOo/SO-<br />

Anwendungen über die von OOo/SO bereitgestellte Schnittstelle UNO (Universal Network<br />

Objects) möglich ist.<br />

2.4 Migration von MS Office 97 - 2003 nach MS Office 2007<br />

Die in diesem Abschnitt erörterte Migration zwischen den alten <strong>Version</strong>en von MS Office<br />

zum neuen Produkt wird im Schwerpunkt zwischen der Office-Suite 2003 und 2007 beschrieben.<br />

Der Fokus der nachfolgenden Betrachtungen liegt auf einer Migration von MS<br />

Office 2003 nach MS Office 2007, da MS Office 2003 bereits in der Vorgängerversion<br />

des <strong>Migrationsleitfaden</strong>s als Ziel von Migrationspfaden betrachtet wurde. Relevante<br />

Punkte, die ältere <strong>Version</strong>en von MS Office betreffen und von der Ausgangslage MS<br />

Office 2003 abweichen, werden ebenfalls betrachtet.<br />

2.4.1 Migration von Dokumenten<br />

MS Office 2007 ist von Hause aus in der Lage, die Dokumentenformate der vorherigen<br />

<strong>Version</strong>en zu öffnen und zu bearbeiten. Das Standard-Dokumentenformat kann vom<br />

Nutzer auch manuell an die entsprechenden Bedürfnisse angepasst werden. Jedoch<br />

birgt die Nutzung unterschiedlicher Dokumentenformate immer die Gefahr, dass Daten<br />

nicht verlustfrei weitergegeben werden. Microsoft bietet daher für Nutzer der älteren <strong>Version</strong>en<br />

MS Office 2003 verschiedene Updates an, mit denen eine Nutzung des neuen<br />

Dateiformats ermöglicht wird. In Verbindung mit dem von Microsoft angebotenen Office<br />

Seite 462


Migration Planning Manager 436 (OMPM) ist es möglich, alle auf dem Rechner befindlichen<br />

Office-Dokumente zu analysieren und mittels Batch-Konvertierung (massenweise<br />

Konvertierung) für die neue Office 2007 Umgebung verarbeitbar zu machen und in das<br />

neue Dateiformat zu überführen. Da der OMPM jedoch für eine Konvertierung speziell<br />

von Dokumenten der Office 2003 <strong>Version</strong> entwickelt wurde, ist es für Nutzer älterer Office-<strong>Version</strong>en<br />

unbedingt ratsam, Änderungen hinsichtlich der Migrationsmöglichkeiten zu<br />

Office 2003 zu beachten. 437<br />

Die Kern-Anwendungen von MS Office 2007 (Word, Excel und PowerPoint) bieten einen<br />

Kompatibilitätsmodus. Er ermöglicht dem Nutzer, Dokumente in MS Office 2007 mit den<br />

Mitteln älterer <strong>Version</strong>en zu bearbeiten. Wird beispielsweise ein Diagramm eingefügt,<br />

dann öffnet sich im Kompatibilitätsmodus statt des Diagramm-Tools von Office 2007 das<br />

der älteren Office 2003 <strong>Version</strong>. Dadurch kann dieses in älteren <strong>Version</strong>en wieder bearbeitet<br />

werden und die Abwärtskompatibilität zwischen den <strong>Version</strong>en wird sicher gestellt.<br />

Das Einfügen ohne diesen Modus hätte zur Folge, dass dieses Objekt in älteren <strong>Version</strong>en<br />

nur eingeschränkt zu editieren wäre. Der Kompatibilitätsmodus ist besonders dann<br />

von Vorteil, wenn in Organisationen MS Office 2007 mit älteren <strong>Version</strong>en parallel betrieben<br />

wird. Eine Übersicht darüber, wann sich der Modus aktiviert, ist in der folgenden<br />

Tabelle zu sehen:<br />

Aktion in Office 2007 Excel 2007 PowerPoint<br />

2007<br />

Seite 463<br />

Word 2007<br />

Öffnen von Dateiformaten älterer Office-<strong>Version</strong>en X X X<br />

Konvertierung von Dokumenten in Office 2007 in ein<br />

Format älterer <strong>Version</strong>en (mittels Speichern unter)<br />

Ändern des Standard-Dokumentenformates<br />

(in das einer älteren <strong>Version</strong>)<br />

Erzeugen eines neuen Dokuments basierend auf<br />

einem .dot Template<br />

(aus älteren Office-<strong>Version</strong>en)<br />

Tabelle 73: Kompatibilitätsmodus bei MS Office 2007<br />

X X X<br />

X X X<br />

Durch das Nutzen dieses Features werden Kompatibilitätsprobleme zwischen den <strong>Version</strong>en<br />

erheblich reduziert und eine verlustfreie Migration ermöglicht. Sollten dennoch<br />

Kompatibilitätsprobleme auftreten, wird dem Anwender eine Meldung über eventuelle<br />

Datenverluste und der Grund hierfür angezeigt. Wenn beispielsweise in Excel 2007 eine<br />

Tabelle mit 800.000 Zeilen im Dokumentenformat einer älteren <strong>Version</strong> gespeichert werden<br />

soll, so wird dem Nutzer die Gefahr eines Datenverlustes gemeldet. Aufgrund der<br />

Erweiterungen und Updatemöglichkeiten ist eine Migration von Dokumenten älterer MS<br />

Office-Anwendungen zur aktuellen <strong>Version</strong> ohne große Probleme möglich.<br />

436 http://go.microsoft.com/fwlink?linkid=75727<br />

437 Informationen dazu sind im migrationsleitfaden 2.1 zu finden<br />

X


2.4.2 Migration von Makros und Skripten<br />

In der Standardeinstellung enthalten Dokumente im OOXML-Format (XML-Format in MS<br />

Office 2007) keinen ausführbaren Code (keine Makros). Dateien, in denen Makros<br />

enthalten sind, besitzen dasselbe Format wie Dateien ohne Makros. Äußerlich ist also<br />

zunächst einmal kein Unterschied festzustellen. Dateien mit Makros enthalten jedoch<br />

zusätzliche Komponenten, die von dem im Dokument enthaltenen Automatisierungstyp<br />

abhängig sind. So enthält zum Beispiel eine Datei mit aktivierten VBA-Makros eine binäre<br />

Komponente, in der wiederum das VBA-Makro enthalten ist. Wenn eine codespezifische<br />

Komponente in einer Datei ohne Makros enthalten ist (ob versehentlich oder böswillig),<br />

werden die Office-Anwendungen das Ausführen des Codes nicht gestatten —<br />

ohne jede Ausnahme.<br />

Eine Überführung von Makros aus älteren MS Office-<strong>Version</strong>en ist problemlos durchführbar.<br />

Die neue Office-<strong>Version</strong> erkennt selbstständig beim Öffnen den vorhandenen<br />

Code und mittels Speichern im entsprechenden Dokumentenformat (.docm zum Beispiel<br />

bei Word-Dokumenten) wird dieser dann ausführbar.<br />

Das neue Format kann von den neuen MS Office-Anwendungen auf codebasierte Komponenten<br />

und Beziehungen überprüft werden, ohne dass möglicherweise gefährliche<br />

Code ausgeführt werden. Erscheint eine Datei verdächtig, können alle zum Ausführen<br />

von Code fähigen Komponenten aus der Datei entfernt werden, damit der Code keinen<br />

Schaden anrichten kann.<br />

2.4.3 Migration von Datenquellen<br />

Microsoft Office 2007 enthält spezielle Treiber, die zum Abrufen von Daten aus den folgenden<br />

Datenquellen verwendet werden können:<br />

� Microsoft SQL Server Analysis Services (OLAP-Anbieter)<br />

� Microsoft Office Access (ab <strong>Version</strong> 97 und tiefer muss vorkonvertiert werden)<br />

� dBASE<br />

� Microsoft FoxPro<br />

� Microsoft Office Excel<br />

� Oracle<br />

� Paradox<br />

Mit dem Datenverbindungs-Assistenten von Office 2007 kann eine Verbindung zu einer<br />

bereits definierten externen Datenquelle hergestellt werden.<br />

2.4.4 Integration von externen Anwendungen<br />

In Anlehnung an die Inhalte aus III.C 2.3.4 spielt der Grad der Integration von Microsoft-<br />

Office Suiten bei der hier betrachteten fortführenden Migration eine weniger bedeutende<br />

Rolle, da es sich um die gleiche Produktlinie handelt. Allerdings sollte auch hier die<br />

Kompatibilität der Integrationen im Vorfeld genau geprüft werden. Darüber, ob hier gegebenenfalls<br />

größere Probleme bestehen, liegen bisher noch keine gesicherten Erkenntnisse<br />

vor.<br />

Seite 464


2.5 Migration von StarOffice 7/8 u. OOo1/2 nach MS Office 2007<br />

2.5.1 Migration von Dokumenten<br />

MS Office 2007 bietet von Haus aus keine Unterstützung für die Dokumentenformate der<br />

anderen hier betrachteten Office-Umgebungen, sodass es nicht möglich ist, ODF-<br />

Dokumente oder Dokumente im alten OOo/SO -Format direkt zu importieren. Es befindet<br />

sich jedoch ein von Microsoft subventionierter Konverter in der Entwicklung 438 , der den<br />

Import und Export von ODF-Dokumenten in MS Office 2007 ermöglichen soll.<br />

Der Konverter ist auch als eigenständige Anwendung lauffähig und eignet sich somit zur<br />

Batch-Konvertierung mehrerer Dokumente. Er erzeugt allerdings kein internes Dokumentenmodell,<br />

sondern übersetzt auf der Ebene der XML-Datenstruktur per XSLT. Dies<br />

hat zur Folge, dass einfache Dokumente in der Regel zufriedenstellend übersetzt werden.<br />

Jedoch gibt es Merkmale, in denen sich die Dokumentenmodelle konzeptuell unterscheiden.<br />

Bei der Übersetzung dieser Merkmale produziert der Konverter Fehler beziehungsweise<br />

unnötig komplizierte Dokumente. Dies betrifft beispielsweise folgende<br />

Merkmale von Textdokumenten:<br />

� Einige Formatierungsattribute (Kapitälchen, blinkender Text, Zeilenabstand mit<br />

Durchschuss, Hintergrundbilder für Absätze und Tabellen)<br />

� Automatische Seitenumbrüche nach Absätzen<br />

� Zeilennummerierung<br />

� Sub-Tabellen (nahtlos in eine Tabelle eingefügte Unter-Tabellen)<br />

Da der Konverter jedoch auf solche Schwierigkeiten explizit hinweist, hält sich der Aufwand<br />

für die manuelle Durchsicht der Ergebnisse in Grenzen.<br />

Sollte der eben genannte Weg nur unbefriedigende Ergebnisse erzielen oder liegen die<br />

Quelldateien noch im alten OOo 1.X-/SO 7-Dateiformat vor, so empfiehlt es sich, die<br />

Dokumente mittels der in OpenOffice.org/StarOffice eingebauten Möglichkeiten in das<br />

korrespondierende proprietäre Microsoft-Binärformat zu konvertieren, welches von<br />

MS Office 2007 weitgehend problemlos eingelesen wird. Alternativ bietet sich gegebenenfalls<br />

der ebenfalls über zwei Schritte gehende Konvertierungspfad vom alten<br />

OOo 1.X-/SO 7-Dateiformat zu ODF und dann zu OOXML an. Letztendlich muss die<br />

Qualität der Konvertierungen darüber entscheiden, welcher Weg der beste ist.<br />

2.5.2 Migration von Makros und Skripten<br />

Keiner der in Abschnitt III.C angesprochenen Wege ermöglicht eine automatische Migration<br />

von Makros und OOo/SO -Erweiterungen, sodass eine Neuentwicklung der benötigten<br />

Funktionalitäten notwendig ist. Da aber die Hersteller aller hier angesprochenen<br />

Office-Suiten die jeweiligen Makro-Sprachen bei der Spezifikation ihrer offenen Dateiformate<br />

außen vor lassen, empfiehlt es sich zu evaluieren, ob es nicht im Interesse der<br />

Sicherheit und Interoperabilität sinnvoll ist, die Dokumente mit möglichst wenig „Eigenintelligenz"<br />

auszustatten und stattdessen die Geschäftslogik in zentralisierte Prozesse<br />

438 http://odf-converter.sourceforge.net/<br />

Seite 465


auszulagern. Hierdurch würde gleichzeitig die Wartbarkeit verbessert, da die Änderungen<br />

zentral vorgenommen werden können.<br />

2.5.3 Migration von Datenquellen<br />

Bei der Migration von Datenquellen muss zwischen OpenOffice.org 1.x / StarOffice 7<br />

und OpenOffice.org 2 / StarOffice 8 unterschieden werden, da mit der neuen <strong>Version</strong><br />

eine Datenbankkomponente enthalten ist und weitreichende Änderungen bei der Anbindung<br />

von Datenquellen vorgenommen worden sind.<br />

2.5.3.1 Datenanbindung in OpenOffice.org 1.x / StarOffice 7<br />

OpenOffice.org 1.x beziehungsweise StarOffice 7 ermöglichen es, eine Reihe von extern<br />

gespeicherten Datenquellen in der Office-Suite zu registrieren und innerhalb von .sx*-<br />

Dokumenten auf diese zuzugreifen. Bei der für die Migration notwendigen Konvertierung<br />

in das MS-Office-Dateiformat geht diese Bindung allerdings verloren, sodass etwa die<br />

erzeugten MS-Word Dokumente an der betreffenden Stelle lediglich eine textuelle Repräsentation<br />

des jeweiligen Feldnamens enthalten (siehe Abbildung 71).<br />

Abbildung 71: Externe Datenfelder nach Export in MS-Word Dokument<br />

Da die Daten jedoch extern gespeichert und entweder über standardisierte Schnittstellen<br />

wie ODBC beziehungsweise JDBC angesprochen werden oder in einem Format eines<br />

Drittherstellers (zum Beispiel dBase) vorliegen, können die Daten nach Abschluss der<br />

Migration manuell wieder an das Dokument angebunden werden.<br />

2.5.3.2 Datenanbindung in OpenOffice.org 2 / StarOffice 8<br />

In den neuen <strong>Version</strong>en der Office-Suiten erfolgt die Anbindung externer Daten immer<br />

über das integrierte Datenbankmodul Base. Dieses bietet neben der oben beschriebe-<br />

Seite 466


nen Möglichkeit, externe Datenbestände einzubinden auch ein natives Datenbankformat<br />

an. Dabei handelt es sich um die Dateistrukturen der Open Source-Datenbank HSQL,<br />

die in die ODF-ZIP-Datei eingebettet sind. Sie können dort problemlos entnommen und<br />

durch eine selbständige HSQL-Instanz 439 erschlossen werden.<br />

2.5.4 Integration von Anwendungen<br />

Die Entscheidungen und Problemstellungen bei einer ablösenden Migration von OpenOffice.org/StarOffice<br />

durch Microsoft Office decken sich mit den in Abschnitt III.C 2.3.4<br />

skizzierten Überlegungen. An die Stelle der dort genannten, Microsoft-spezifischen<br />

Schnittstellen tritt hier im Wesentlichen die Programmierschnittstelle UNO 440 der Office-<br />

Suiten OpenOffice.org beziehungsweise StarOffice. Einfach gestrickte, lose gekoppelte<br />

Anwendungsintegrationen wie zum Beispiel das Öffnen von Hyperlinks im Web-Browser<br />

oder die Einbindung von Adressbüchern verschiedener E-Mail-Programme sind bereits<br />

im Standardumfang von Microsoft Office enthalten oder lassen sich durch Installation<br />

entsprechender Software von Drittherstellern leicht nachrüsten. Hingegen erfordern Anwendungen,<br />

die vergleichsweise eng an die interne Funktionsweise der Office-Suiten<br />

gebunden sind (beispielsweise die sogenannten „Extensions"), eine Neuentwicklung<br />

oder die Suche nach einem gleichwertigen Ersatz.<br />

2.6 Migration von StarOffice 7/OOo1 nach StarOffice 8/OOo2Star<br />

2.6.1 Migration von Dokumenten<br />

SO 7/OOo 1 und SO 8/OOo 2 verwenden unterschiedliche Dateiformate. Daher werden<br />

für eine Migration entsprechende Konverter beziehungsweise Im- und Exportfilter benötigt,<br />

die jedoch durch die neuen <strong>Version</strong>en zur Verfügung gestellt werden.<br />

Die folgende Tabelle zeigt die in SO 8/OOo 2 zur Verfügung gestellten Filter, die alle<br />

sowohl für den Export als auch für den Import verwendet werden können:<br />

Filtername Betreffendes Format<br />

StarOffice 6.0/7 Text Document StarOffice XML Textdokument<br />

StarOffice 6.0/7 Text Document Template StarOffice_XML Textvorlage<br />

OpenDocument Text Open Document Text<br />

OpenDocument Text Template Open Document Textvorlage<br />

StarOffice 6.0/7 Master Document Writer Globaldocument<br />

OpenDocument Master Document Open Document Master<br />

StarOffice 6.0/7 Spreadsheet StarOffice XML (Calc)<br />

439 Siehe http://hsqldb.org/.<br />

440 Siehe http://udk.openoffice.org/<br />

Seite 467


Filtername Betreffendes Format<br />

StarOffice 6.0/7 Spreadsheet Template StarOffice XML Vorlage (Calc)<br />

OpenDocument Spreadsheet Open Dokument Tabellendokument<br />

OpenDocument Spreadsheet Template Open Dokument Tabellendokumentvorlage<br />

StarOffice 6.0/7 Drawing StarOffice XML (Draw)<br />

StarOffice 6.0/7 Drawing Template StarOffice XML Vorlage (Draw)<br />

OpenDocument Drawing OpenDocument Zeichnung<br />

OpenDocument Drawing Template OpenDocument Zeichnungsvorlage<br />

StarOffice 6.0/7 Presentation StarOffice XML (Impress)<br />

StarOffice 6.0/7 Presentation Template StarOffice XML Vorlage (Impress)<br />

OpenDocument Presentation OpenDocument Präsentation<br />

OpenDocument Presentation Template OpenDocument Präsentationsvorlage<br />

StarOffice 6.0/7 Chart StarOffice XML (Chart)<br />

OpenDocument Chart OpenDocument Chartdokument<br />

StarOffice 6.0/7 Formula StarOffice XML (Math)<br />

OpenDocument Formula OpenDocument Formeldeditor<br />

Tabelle 74: Verfügbare Dokumentenformatfilter in SO 8/OOo 2<br />

Die Funktionalitäten der gezeigten Filter sind sehr umfangreich und ermöglichen eine<br />

vollständige Konvertierung zwischen den Dokumenten und Vorlagen in die verschiedenen<br />

Datei-Formate. Eine Installation der Filter ist nicht erforderlich, da sie zum Standardumfang<br />

der Office Suite gehören und beim Öffnen eines Dokumentes automatisch<br />

angewandt werden. Seit der <strong>Version</strong> 1.1.5 ist der Filter für das Open Document Format<br />

in OpenOffice.org integriert. Für ältere <strong>Version</strong>en existiert ein Patch, das diese Funktionalität<br />

bereitstellt. Für die Nutzung sind daher keine besonderen Kenntnisse notwendig.<br />

Die Migration kann hier problemlos durch das Öffnen der Dokumente in der Anwendung<br />

erfolgen. Auf eine automatisierte Konvertierung mit Batch-Scripten kann verzichtet werden.<br />

Erwähnenswert ist ferner, dass es für die alten <strong>Version</strong>en, SO 7/OOo 1, einen<br />

Patch gibt, mit dessen Hilfe diese dann auch das neue Format (ODF) nutzen können.<br />

2.6.2 Migration von Makros und Skripten<br />

Innerhalb der beiden OpenOffice.org- und StarOffice-<strong>Version</strong>en gibt es keine wesentlichen<br />

Unterschiede in der Programmierung. Der Nutzer kann weiterhin auf ein betriebssystem-<br />

und programmiersprachenunabhängiges API zurückgreifen und mit StarBasic,<br />

Java, C++ und Python Erweiterungen erstellen.<br />

Seite 468


Dennoch können sich Probleme bei der Migration älterer Makros und Skripte ergeben.<br />

Das liegt insbesondere daran, dass diese Erweiterungen sehr nah am internen Systemmodell<br />

von OpenOffice.org ansetzen und bestimmte Funktionalitäten durch das API evtl.<br />

nicht mehr angeboten werden. Das kann dazu führen, dass Teile von Makros nicht mehr<br />

ausführbar sind oder nicht mehr die gewünschte Funktionalität liefern. Bei quelloffenen<br />

Entwicklungen findet sich bei solchen Problemen meist Hilfe in der Dokumentation oder<br />

den „Developer Notes―. Unternehmensinterne Macroentwicklungen sollten vor ihrer Anwendung<br />

auch auf ihre korrekte Funktionsweise überprüft werden.<br />

2.6.3 Migration von Datenquellen<br />

Seit StarOffice 7 und OpenOffice.org 1.1 verfügt die Office-Suite über eine integrierte,<br />

systemunabhängige Datenbankschnittstelle namens Star Database Connectivity<br />

(SDBC). Sie gestattet einen Highlevel-Zugriff 441 auf Datenbanken, unabhängig von den<br />

darunter liegenden Datenbank-BackEnds. Die Einbindung der Datenquellen erfolgt mittels<br />

Treibern, die entweder von Datenbankhersteller geliefert oder mit OpenOffice.org<br />

entwickelt werden. Seit der <strong>Version</strong> 2 von OpenOffice.org beziehungsweise StarOffice 8<br />

verfügt die OfficeSuite über ein eigenständiges Datenbankmodul, welches das bisher<br />

verwendete Datenbank-Frontend ablöst und die Anbindung von Datenquellen vereinfacht.<br />

Bei einer Migration der alten Datenquellen sind keine Probleme zu erwarten.<br />

2.6.4 Integration von Anwendungen<br />

OpenOffice.org bietet verschiedene Programmierschnittstellen für die Anwendungsintegration.<br />

Mit der Office-Bean, einer Java Klasse, lassen sich OpenOffice.org-<br />

Komponenten in eigene Java-Anwendungen einbinden. Sie ermöglichen damit die Integration<br />

von Funktionen aus der Office-Suite, die mittels eingefügter Buttons aufgerufen<br />

werden können. Die Office-Bean dient dem Einbetten der Office-Funktionalität in Java-<br />

Programme sowie dem Einbetten von Java-Programmen in OpenOffice.org/StarOffice.<br />

Sie verfügt seit der <strong>Version</strong> 2 über die notwendige Stabilität und Reife für den produktiven<br />

Einsatz. Die Office-Suiten verfügen weiterhin in beiden <strong>Version</strong>en über eine OpenOffice/StarOffice-spezifische<br />

Objekt-Middleware namens UNO, die sich aus StarBasic,<br />

Java, C++ und Python ansprechen lässt. UNO ist eine Schnittstelle, über die unterschiedliche<br />

Programmiersprachen die Funktionen von Open Office nutzen. Da die Systeme<br />

zur Anwendungsintegration vom Prinzip her gleich geblieben sind, funktionell aber<br />

deutlich erweitert wurden, kann von einer problemlosen Migration ausgegangen werden,<br />

sofern das gleiche Betriebssystem verwendet wird.<br />

441 Ein Zugriff der unabhängig von dem darunter liegenden Datenbank-Backend erfolgt.<br />

Seite 469


3 Bezüge<br />

3.1 Teaming-/Workgroup Software<br />

Um effizient in Arbeitsgruppen arbeiten zu können, wird Teaming-/Workgroup Software<br />

eingesetzt. Diese Programme ermöglichen eine effiziente Publikation und Archivierung<br />

von Dateien sowie verschiedene Kommunikationsmöglichkeiten. Zu diesem Zweck sind<br />

deren Funktionen häufig als PlugIns innerhalb der Officeanwendungen integrierbar.<br />

Es entsteht hierdurch ein direkter Bezug zu dem Abschnitt III.B .<br />

Seite 470


D Thema Backend-Integration<br />

1 Produkte/Technologien<br />

Dieses Kapitel befasst sich primär mit den beiden Softwareplattformen J2EE und .NET.<br />

Beide Plattformen ermöglichen die Entwicklung von Individualanwendungen. Dabei spielt<br />

es keine Rolle, um welche Art von Anwendung es sich handelt. Auf beiden Plattformen<br />

können sowohl Desktop-Anwendungen für den Client als auch Server-Anwendungen<br />

entwickelt werden. Ein Schwerpunkt beider Technologien ist die Entwicklung von Web-<br />

Anwendungen.<br />

Im Fokus dieses Kapitels stehen jedoch weniger die Funktionalitäten für die Entwicklung<br />

von Web-Anwendungen, sondern die grundlegenden Funktionalitäten im Bereich der<br />

Entwicklung von Anwendungen auf Serverseite sowie die konzeptionellen Unterschiede<br />

der beiden Technologien. Auf die migrationsrelevanten Funktionalitäten in Hinblick auf<br />

die Integration von Backend-Systemen wird darüber hinaus auch im Kapitel Migrationspfade<br />

(siehe Kap.0) eingegangen.<br />

Neben den beiden Softwareplattformen J2EE und .NET finden sich in diesem Rahmen<br />

auch Ausführungen zu CORBA, einer bewährten Middleware-Technologie. Im Unterschied<br />

zu J2EE und .NET können mittels CORBA jedoch keine Anwendungen entwickelt<br />

werden.<br />

Aber auch zwischen Java, insbesondere J2EE, und .NET gibt es grundlegende Unterschiede:<br />

J2EE hat zum Ziel, eine einheitliche, plattformunabhängige Laufzeitumgebung<br />

für verteilte Applikationen bereitzustellen. Dieses Ziel „eine Sprache für alle Plattformen―<br />

ist mit Hilfe beeindruckender Entwicklungsumgebungen erfolgreich in die Praxis umgesetzt<br />

worden. Das .NET-Framework geht den umgekehrten Weg. Hier wird für alle Sprachen,<br />

die vor allem in der Windows-Welt zur Programmierung herangezogen wurden<br />

(u.a. auch Visual Basic), eine einheitliche Laufzeitumgebung für Windows-Maschinen<br />

(Clients und Server) bereitgestellt. Kompatibilität mit anderen Plattformen ist bei diesem<br />

Ansatz „eine Plattform für alle Sprachen― im Kern nicht realisiert worden. Wie die Beispiele<br />

in den folgenden Kapiteln zeigen werden, sind diese grundlegenden Unterschiede<br />

der beiden Ansätze heute nicht mehr in jedem Fall gültig.<br />

1.1 Microsoft .NET-Plattform (COM, DCOM, OLE, ActiveX)<br />

Bei der Microsoft .NET-Plattform handelt es sich um die Umsetzung des sogenannten<br />

Common-Language-Infrastructure-Standard 442 für Windows. Wichtige Teile des Frameworks<br />

(die Common Language Infrastructure (CLI) und die Programmiersprache C#)<br />

wurden darüber hinaus als ISO-Standard verabschiedet. Ziel dieses Standards ist es, die<br />

Entwicklung und die Ausführung von Anwendungen weitgehend unabhängig von der<br />

verwendeten Programmiersprache zu machen.<br />

442 http://www.ecma-international.org/publications/standards/Ecma-335.htm<br />

Seite 471


Damit sollte insbesondere dem Wildwuchs an speziellen Abstraktionstechnologien 443 , die<br />

auf die Unterstützung der Entwicklung einer bestimmten Art von Anwendungen zielten,<br />

sowie den aus der mangelnden Integration dieser Technologien resultierenden Problemen<br />

444 begegnet werden.<br />

Das .NET-Framework ist im Microsoft-Betriebssystem Windows Vista standardmäßig<br />

enthalten und für andere Microsoft-Betriebssysteme kostenlos nachinstallierbar.<br />

Die folgende Abbildung zeigt einen Überblick der Komponenten des Frameworks:<br />

J# C# ... C++<br />

Compiler Compiler Compiler Compiler<br />

IL Code IL Code IL Code IL Code<br />

Common Language Runtime<br />

Betriebssystem<br />

JIT Compiler<br />

Abbildung 72: Komponenten des .NET-Frameworks<br />

Seite 472<br />

ASM Code<br />

Im Common-Language-Infrastructure-Standard werden die folgenden Konzepte spezifiziert:<br />

� Common Language Specification - Festlegung eines einheitlichen Grundumfangs<br />

der einsetzbaren Programmiersprachen<br />

� Common Type System - Definition eines gemeinsamen Typsystems<br />

� Virtual Execution System - Laufzeitumgebung, die eine ebenfalls standardisierte<br />

Zwischensprache (Common Intermediate Language – CIL) verarbeiten kann<br />

� Bibliotheken und Profile - Spezifikation von sieben Standardbibliotheken, die typische<br />

wiederverwendbare Anwendungsfunktionalität enthalten sowie von zwei<br />

Profilen, die sinnvolle Grundmengen von einer Standardimplementation umgesetzter<br />

Bibliotheken beschreiben.<br />

Die Anwendungen werden in einer von .NET unterstützten Sprache programmiert und<br />

können auf die umfangreichen .NET-Klassenbibliotheken zurückgreifen. Durch das .NET<br />

443 Beispiele hierfür sind Microsoft Active Server Pages (ASP) zur Entwicklung aktiver Web-<br />

Seiten und Microsoft Active Template Library (ATL) zur Benutzung anderer Komponenten<br />

durch die eigene Anwendung.<br />

444 Zur Erstellung einer aktiven Web-Seite, die andere Komponenten verwenden soll, muss<br />

sich der Entwickler sowohl in die ASP- als auch in die ATL-Technologie einarbeiten und<br />

beide kombiniert verwenden.


Framework wird eine große Anzahl an Programmiersprachen unterstützt. Der jeweilige<br />

Compiler übersetzt den Quellcode in einen Befehlscode (keinen Maschinencode), der<br />

als CIL-Code (Common Intermediate Language), teilweise auch als IL-Code (Intermediate<br />

Language) bezeichnet wird. Die Kombination aus solchen Kompilaten und zugehörigen<br />

Metadaten wird als „Assembly" bezeichnet und ist die typische Deployment-Einheit<br />

der .NET-Welt. Ergebnis dieser Aktion ist zum Beispiel eine EXE-Datei. Wird diese EXE-<br />

Datei geladen, wird sie von der Common Language Runtime (CLR) mit ihrem JIT-<br />

Compiler (Just-In-Time) in Maschinencode umgesetzt.<br />

In der .NET-Plattform von Microsoft implementiert die Common Language Runtime<br />

(CLR) die Laufzeitumgebung (VES). Neben der Generierung und Verwaltung von Maschinencode<br />

bietet die CLR weitere Leistungen, insbesondere zur Speicherverwaltung<br />

(Garbage Collection).<br />

Ergänzt wird diese neben den Standardbibliotheken durch zahlreiche weitere Klassenbibliotheken<br />

(Microsoft spricht hier von „Technologien‖), durch die .NET in seinem vollen<br />

Umfang nur für Windows verfügbar ist. .NET gibt es in den folgenden <strong>Version</strong>en:<br />

� .NET 2.0:<br />

Umfangreichere Erweiterung der Funktionalitäten von .NET, zum Beispiel Data<br />

Protection API (DPAPI), FTP-Unterstützung, bessere Unterstützung für die Internationalisierung<br />

von Anwendungen<br />

� .NET <strong>3.0</strong>:<br />

Umfasst .NET 2.0 und ergänzt dieses um einige Microsoft-Technologien 445<br />

� Windows Presentation Foundation:<br />

einheitlicher Ansatz für verschiedene Benutzeroberflächen<br />

� Windows Workflow Foundation:<br />

Unterstützung workflowbasierter Anwendungen<br />

� Windows Communication Foundation:<br />

Unterstützung serviceorientierter Anwendungen durch einen einheitlichen Ansatz<br />

für unterschiedliche Kommunikationstechnologien<br />

� Windows CardSpace:<br />

zentrale und konsistente Verwaltung digitaler Identitäten zur Authentifizierung<br />

(sowohl von Nutzern als auch von Anwendungen)<br />

Neben der Programmiersprachenunabhängigkeit liegt ein weiterer Schwerpunkt der<br />

.NET-Plattform auf der Unterstützung der Entwicklung verteilter Anwendungen, insbesondere<br />

unter Verwendung von Web Services.<br />

Durch die .NET-Plattform sollen auch frühere Microsoft-Technologien zur komponentenbasierten<br />

Anwendungsentwicklung, wie zum Beispiel COM, DCOM und ActiveX abgelöst<br />

werden. Diese Ansätze können jedoch auch weiterhin mit .NET koexistieren. Es existieren<br />

darüber hinaus Möglichkeiten zum gegenseitigen Aufruf von .NET- und COM-<br />

Funktionen. Aufgrund des robusteren Sicherheitsmodells und des automatischen<br />

445 http://www.microsoft.com/germany/msdn/library/net/EinfuehrungInNETFramework30.<br />

mspx?mfr=true<br />

Seite 473


Speichermanagements empfiehlt Microsoft jedoch auch für Neuentwicklungen die .NET-<br />

Plattform.<br />

Das .NET-Framework erlaubt mittels der sogenannten Codezugriffssicherheit (Code<br />

Access Security, CAS) die Beeinflussung der Berechtigung auf Anwendungsebene. Auf<br />

diese Weise kann festgelegt werden, welche Aktionen (zum Beispiel Zugriff auf Ressourcen<br />

wie Dateien, Umgebungsvariablen, Drucker oder Datenbanken) eine Anwendung<br />

durchführen darf, und zwar unabhängig davon, ob der ausführende Benutzer ein<br />

einfacher Benutzer oder ein Administrator ist. Neben den standardmäßig vorhandenen<br />

Berechtigungen können auch neue Berechtigungen implementiert werden. Darüber<br />

hinaus existiert auch die Möglichkeit, Sicherheitseinstellungen in Abhängigkeit von der<br />

Identität des ausführenden Benutzers oder der Herkunft des Programms vorzunehmen.<br />

Die Sicherheitsüberprüfungen werden von der Common Language Runtime vorgenommen<br />

und betreffen nur reine .NET-Anwendungen. So werden beispielsweise aus .NET-<br />

Anwendungen aufgerufene COM-Funktionen ohne sicherheitsbasierte Einschränkungen<br />

(abgesehen von den betriebssystemseitig vergebenen Benutzerrechten) ausgeführt.<br />

Durch solche externe Aufrufe von Altmodulen (COM- oder DCOM-basiert) kann die CAS<br />

umgangen werden, selbst wenn sie eingeschaltet ist. Insbesondere durch die Übernahme<br />

von bewährten aber älteren Softwaremodulen auf COM- oder DCOM-Basis, wird<br />

dadurch die CAS häufig umgangen. Aus diesen Gründen lehnen viele Entwickler die<br />

CAS als prinzipiell hilfreich aber nicht praktikabel ab.<br />

Von der CLR ausgeführte CIL-Programme werden als „Managed Components― bezeichnet,<br />

weil sie von der CLR unter Einbeziehung der CAS kontrolliert ausgeführt werden.<br />

Code, der nicht von der CLR, sondern direkt von der CPU ausgeführt wird, wird im<br />

Gegensatz dazu als „Unmanaged Code― bezeichnet. Dies betrifft zum Beispiel aus .NET-<br />

Anwendungen heraus aufgerufene COM-Funktionen. Der Begriff „Managed Code―<br />

bezeichnet also die Ausführung von Code durch eine Virtual Machine beziehungsweise<br />

das Management dieses Codes. Obwohl der Begriff „Managed Code― durch Microsoft<br />

geprägt wurde, wird diese Technik zum Beispiel auch von Java eingesetzt. Auch hier<br />

übernimmt eine Virtual Machine das Management des Codes.<br />

Die konzeptionell gegebene Plattformunabhängigkeit der zugrundeliegenden Common<br />

Language Infrastructure (CLI) und ihre Standardisierung durch Ecma International und<br />

ISO haben dazu geführt, dass es mittlerweile zwei OpenSource-Projekte gibt, die .NET-<br />

Funktionalitäten auch auf anderen Betriebssystemen zur Verfügung stellen 446 . Dabei<br />

handelt es sich zum einen um das von Novell unterstützte Mono 447 und zum anderen um<br />

das DotGNU Portable.NET 448 .<br />

Bei Mono handelt es sich um eine Entwicklungs- und Laufzeitumgebung, die die Erstellung<br />

und Ausführung von .NET-Anwendungen unter Linux, Solaris, Mac OS X, Windows<br />

und Unix ermöglicht. Der Stand der .NET-Unterstützung von Mono in der aktuellen <strong>Version</strong><br />

1.2.4 liegt zwischen .NET 1.1 und .NET 2.0. Bis Ende 2007 soll die .NET-2.0-Unterstützung<br />

vollständig sein.<br />

446 Inwieweit diese technischen Möglichkeiten am Ende durch rechtliche Belange, wie Patente<br />

oder Urheberrecht beschränkt werden, muss sich erst noch zeigen.<br />

447 http://www.mono-project.com/Main_Page<br />

448 http://www.dotgnu.org/pnet.html<br />

Seite 474


Das erklärte Ziel von DotGNUs Portable.NET ist es, eine Sammlung freier Software-<br />

Werkzeuge zur Compilierung und Ausführung von CLI-Anwendungen aufzubauen.<br />

DotGNU Portable.NET konzentriert sich dabei auf die Kompatibilität mit den entsprechenden<br />

Standards ECMA-334 449 (Programmiersprache C#) und ECMA-335 450 (CLI) als<br />

auch auf Microsofts reale CLI-Implementation (.NET). Hierdurch soll erreicht werden,<br />

dass zum einen Anwendungen, die unter Portable.NET entwickelt wurden, problemlos<br />

unter Microsoft .NET laufen, und dass zum anderen auch viele Microsoft .NET-Anwendungen<br />

gut unter Portable.NET und damit auch unter so verschiedenen Betriebssystemen<br />

wie beispielsweise Linux, NetBSD, FreeBSD, Solaris und MacOS X funktionieren.<br />

Zusammenfassend lässt sich festhalten, dass die .NET-Plattform es ermöglicht, Anwendungen<br />

in verschiedensten Programmiersprachen zu entwickeln. Die jüngsten funktionalen<br />

Ergänzungen stehen nur in Microsoft-Windows-Umgebungen zur Verfügung, da die<br />

durch Microsoft erfolgenden Weiterentwicklungen immer erst nach deren Veröffentlichung<br />

von den Open-Source-Plattformen nachvollzogen werden können. In der Regel<br />

stehen alle Erweiterungen nach ihrer Veröffentlichung mit einiger zeitlicher Verzögerung<br />

auch in den Open-Source-Plattformen zur Verfügung. Dabei ist zu beachten, dass proprietäre,<br />

nicht standardisierte Erweiterungen von Microsoft gegebenenfalls aus lizenztechnischen<br />

Gründen nicht in die Open-Source-Plattformen aufgenommen werden können.<br />

1.2 SUN J2EE-Plattform<br />

1999 teilte SUN seine bis dahin in einem einzigen Entwicklungskit gebündelten Java-<br />

Klassenbibliotheken in drei Editionen auf:<br />

� Java 2 Platform, Standard Edition (J2SE):<br />

Diese Edition ist das Grundgerüst der Programmiersprache Java. Die Edition<br />

ermöglicht die Entwicklungen von Java-Anwendungen primär für Clients und<br />

bildet darüber hinaus die technische Grundlage für die Java 2 Platform, Enterprise<br />

Edition (J2EE).<br />

� Java 2 Platform, Enterprise Edition (J2EE):<br />

Die Enterprise Edition erweitert die Standard Edition um eine ganze Reihe von<br />

Funktionalitäten, die die serverseitige Implementierung von Anwendungen unterstützen.<br />

Dazu zählen zum Beispiel Komponentenmodell, Kommunikations-<br />

APIs und Management Funktionalitäten. Die Enterprise Edition wird von SUN für<br />

die Entwicklung von serviceorientierten Architekturen empfohlen.<br />

� Java 2 Platform, Micro Edition (J2ME):<br />

Die Micro Edition schränkt hingegen die Standard Edition dergestalt ein, dass<br />

eine Entwicklung von Java-Anwendungen für Geräte mit geringerer Hardware-<br />

Leistungsfähigkeit (z. B. Mobiltelefone, PDAs u.Ä.) möglich wird.<br />

SUN bietet für die in diesem Abschnitt näher betrachtete Enterprise Edition (J2EE) eine<br />

Referenzimplementierung, die primär jedoch nicht für den praktischen Einsatz vorgesehen<br />

ist. Unterschiedliche Hersteller (darunter auch SUN) bieten auf Basis dieser<br />

449 http://www.ecma-international.org/publications/standards/Ecma-334.htm<br />

450 http://www.ecma-international.org/publications/standards/Ecma-335.htm<br />

Seite 475


Referenzimplementierung Applikationsserver an, die den J2EE Standard gemäß dieser<br />

Referenzimplementierung umsetzen.<br />

Aufgrund der inhärenten Unabhängigkeit der Java-Sprache und -Konzepte von der eingesetzten<br />

Hardware-Betriebssystem-Kombination und ihrer freien Verfügbarkeit 451 hat<br />

die J2EE-Plattform eine weite Verbreitung gefunden 452 .<br />

In der aktuell verfügbaren <strong>Version</strong> 1.5 453 wurde die Java 2 Platform, Enterprise Edition<br />

(J2EE) in Java Platform, Enterprise Edition (Java EE) umbenannt. Da sich der Name<br />

J2EE eingebürgert hat und erst mit der neuesten <strong>Version</strong> geändert wurde, wird im Rahmen<br />

dieses Leitfadens weiterhin die Bezeichnung J2EE verwendet.<br />

Die Architektur von J2EE definiert ein Komponentenmodell (Beans), kapselt großkalibrige<br />

Informationstechnik und Querschnittsdienste (Datenbanken, Transaktionen,<br />

Verzeichnisse, Transaktionsmonitoren/Message Queueing, sonstige Legacy-EIS) in<br />

Standardschnittstellen und verbindet beides - Komponenten und Schnittstellen – überwiegend<br />

deklarativ im Laufzeitsystem. Maßgebliche Aufgabe der Implementationen ist,<br />

Querschnittsdienste und Management-Werkzeuge bereit zu stellen. Außerdem definiert<br />

J2EE ein rollenbasiertes Entwicklungsmodell.<br />

Abbildung 73: Strukturelle Sicht - Mehrschichtenarchitektur 454<br />

Die J2EE-Plattform enthält zur Entwicklung von serverbasierten Java-Anwendungen und<br />

Web-Services zahlreiche Klassenbibliotheken, die Funktionalitäten und Dienste zur Entwicklung<br />

verteilter und mehrschichtiger Java-Anwendungen bereitstellen. Die Konzepte<br />

von J2EE bauen auf Architekturprinzipen auf, wie sie u.a. auch von SAGA gefordert<br />

werden. Das heißt, es lassen sich SAGA konforme Mehrschichtarchitekturen realisieren.<br />

Ein wichtiges Grundkonzept dafür sind Komponenten, die auf einem sogenannten Applikationsserver<br />

(J2EE Application Server) ausgeführt werden.<br />

451 http://java.sun.com/javaee/overview/faq/j2ee.jsp#free<br />

452 http://www.java.com/en/javahistory/timeline.jsp hatten die Downloadzahlen des J2EE-<br />

Softwareentwicklungskits bereits im Jahr 2002 die 2-Millionen-Grenze erreicht.<br />

453 Stand Oktober 2007<br />

454 SAGA 4.0<br />

Seite 476


Der Applikationsserver bietet den Komponenten u.a. die folgenden grundlegenden<br />

Dienste an:<br />

� Sicherheitsmanagement<br />

� Transaktionsmanagement<br />

� Namens- und Verzeichnisdienste<br />

� Kommunikation zwischen den Komponenten<br />

� Lebenszyklusmanagement der Komponenten<br />

� Bereitstellungsunterstützung (Deployment)<br />

Ebenso wie eine auf Basis von J2SE entwickelte Anwendung stellt der J2EE Applikationsserver<br />

den Komponenten eine Abstraktion der Ressourcen der zugrunde<br />

liegenden Hardware-Betriebssystem-Kombination (Dateisystem, Netzwerk, …) zur<br />

Verfügung. Damit wird die Entwicklung weitgehend plattformunabhängiger Anwendungen<br />

ermöglicht. 455 Im Gegensatz zu J2SE bietet dieser Server weitergehende Unterstützung<br />

für die Entwicklung serverseitiger Anwendungen, zum Beispiel im Bereich<br />

Multiuserbetrieb, Lastenverteilung und Skalierung.<br />

Die J2EE-Spezifikation definiert die folgenden Komponentenarten:<br />

� Client-Anwendungen und Applets:<br />

Diese Komponenten laufen auf dem Client-Rechner und dienen dem Zugriff auf<br />

die serverseitigen Teile der jeweiligen Anwendung.<br />

� Java Servlet, JavaServer Faces, und JavaServer Pages (JSP):<br />

Hierbei handelt es sich um technische Komponenten, die auf dem Server ausgeführt<br />

werden und zum Beispiel den Zugriff auf die Anwendung über einen Web-<br />

Client (Browser, der serverseitig generierte Web-Seiten anzeigt) ermöglichen.<br />

� Enterprise JavaBeans (EJB):<br />

Die EJBs sind serverseitige Komponenten, welche die Anwendungslogik implementieren.<br />

Sie dienen zur Vereinfachung der Entwicklung komplexer, mehrschichtiger<br />

und verteilter Anwendungssysteme. Es gibt folgende Arten von EJBs:<br />

o Entity Beans, welche die Modellierung von (persistenten) Daten ermöglichen.<br />

o Session Beans, zur Umsetzung zustandsloser oder zustandsbehafteter Vorgänge,<br />

wobei Session Beans seit der <strong>Version</strong> 1.4 auch als Web Service aufgerufen<br />

werden können.<br />

o Message Driven Beans für eine asynchrone Kommunikation zum Beispiel mit<br />

Legacy-Anwendungen über den Java Message Service (JMS).<br />

� Java Naming and Directory Interface (JNDI):<br />

Hierbei handelt es sich um einen Namens- und Verzeichnisdienst, der zum einen<br />

455 Leitfaden Plattformunabhängigkeit von Fachanwendungen,<br />

http://www.kbst.bund.de/cln_012/nn_836802/SharedDocs/Anlagen-kbst/software_Leitfaden<br />

___20Plattformunabhaengigkeit__von__Fachanwendungen,templateId=raw,property=publi<br />

cationFile.pdf/software_Leitfaden_%20Plattformunabhaengigkeit_von_Fachanwendungen.pdf<br />

Seite 477


die Möglichkeit bietet, Referenzen auf entfernte Objekte unter einem bestimmten<br />

Namen und an einem definierten Platz zu hinterlegen (Binding). Zum anderen ist<br />

es über JNDI möglich, gebundene Objekte über deren Namen wieder zu finden<br />

(Lookup).<br />

� Java IDL/Corba:<br />

Java IDL bildet eine Schnittstelle zu CORBA. Mit Java IDL können Java-ORBs<br />

implementiert werden.<br />

� Remote Method Invocation (RMI) und RMI via IIOP (RMI-IIOP):<br />

RMI wird für die verteilte Kommunikation zwischen Objekten eingesetzt. Mit RMI-<br />

IIOP ist J2EE kompatibel mit CORBA.<br />

Auch die J2EE-Plattform verfügt über Mechanismen für die Sicherheit von Anwendungen,<br />

mittels derer Berechtigungen auch auf sehr detaillierten Ebenen in Abhängigkeit,<br />

woher die auszuführende Anwendung stammt oder wer sie ausführt, vergeben werden<br />

können. Beispielhaft sei an dieser Stelle auf JAAS (Java Authentication und Authorization<br />

Service) verwiesen. Mit JAAS steht ein Framework zur Verfügung, mit dem sich<br />

eine Benutzerauthentisierung für unterschiedlichste Arten von Anwendungen, inklusive<br />

Standalone Anwendungen und Rich Clients, realisieren lassen. Häufig bietet J2EE die<br />

Möglichkeit, je nach den individuellen Anforderungen unterschiedliche Lösungen einzusetzen.<br />

Für die Authentisierung besteht neben JAAS zum Beispiel die Möglichkeit einer<br />

formularbasierten oder einer HTTP basierten Authentisierung. Bei der formularbasierten<br />

Authentisierung können, wie der Name sagt, beliebige HTML Formulare für eine Authentisierung<br />

verwendet werden. Die HTTP basierte Authentisierung hingegen veranlasst<br />

einen Webbrowser Username und Passwort über einen entsprechenden Dialog abzufragen.<br />

Somit sind diese beiden Mechanismen im Gegensatz zu JAAS eher für Webanwendungen<br />

gedacht.<br />

Neben der Referenzimplementierung von SUN existieren zahlreiche weitere Applikationsserver-Lösungen.<br />

Darunter finden sich Open-Source-Produkte wie<br />

� GlassFish 456 ,<br />

� JBoss Application Server 457 ,<br />

� Apache Geronimo 458 und<br />

� ObjectWeb JOnAS 459 ,<br />

sowie proprietäre Produkte namhafter Hersteller wie zum Beispiel:<br />

� BEA WebLogic Server 460 ,<br />

� IBM WebSphere Application Server 461 ,<br />

� SAP NetWeaver Application Server 462 und<br />

456 https://glassfish.dev.java.net/<br />

457 http://www.jboss.com/products/jbossas<br />

458 http://geronimo.apache.org/<br />

459 http://wiki.jonas.objectweb.org/xwiki/bin/view/Main/WebHome<br />

460 http://www.bea.com/framework.jsp?CNT=index.htm&FP=/content/products/weblogic/server/<br />

461 http://www-306.ibm.com/software/webservers/appserv/was/features/<br />

Seite 478


� Oracle Application Server. 463<br />

Der genaue Umfang der J2EE-Unterstützung variiert zwischen den einzelnen Applikationsservern.<br />

Einige der genannten Server sind von SUN J2EE zertifiziert, allerdings liegt<br />

derzeit häufig nur eine Zertifizierung nach J2EE 1.4 vor. Einige Funktionalitäten von Java<br />

EE 5 werden heute noch nicht unterstützt.<br />

Anwendungen, die unter Verwendung der J2EE-Plattform entwickelt wurden, lassen sich<br />

über diverse Schnittstellen mit anderen Systemen oder Anwendungen verbinden. Hierfür<br />

existieren u.a. folgende Technologien:<br />

� The Java Database Connectivity API (JDBC):<br />

Über diese Programmierschnittstelle können relationale Datenbanken aus Java-<br />

Programmen angesprochen werden.<br />

� The Java Persistence API (JPA):<br />

Auch wenn über JDBC der prinzipielle Zugriff auf relationale Datenbanken ermöglicht<br />

wird, ist eine Speicherung von Objekten in einer relationalen Datenbank<br />

nicht ohne weiteres möglich, da sich der Aufbau einer relationalen Datenbank<br />

grundsätzlich von der Struktur der zu speichernden Java-Objekte unterscheidet.<br />

Zur Speicherung der Objekte ist daher ein Object-Relationales-Mapping notwendig.<br />

Die JPA stellt eine datenbankunabhängige Schnittstelle für ein solches Mapping<br />

bereit.<br />

� The J2EE Connector Architecture (JCA):<br />

Diese Technologie ermöglicht die Anbindung existierender Altanwendungen (sogenannter<br />

Enterprise Information Systems) an neuentwickelte Anwendungen<br />

über eine standardisierte Architektur.<br />

� The Java Transaction API (JTA):<br />

Diese API definiert Schnittstellen, über die sich verteilte Transaktionsmanagementsysteme<br />

an J2EE-Anwendungen anbinden lassen.<br />

Im Resümee ist festzuhalten, dass die J2EE-Plattform eine etablierte Technologie bietet,<br />

die sich in der Praxis vielfach bewährt hat. Auch komplexe Anwendungen lassen sich mit<br />

J2EE realisieren. Viele Produkte und Technologien auch namhafter Hersteller basieren<br />

heute auf der Java-Technologie. Neben den Implementierungen von SUN gibt es noch<br />

weitere zahlreiche J2EE-Implementierungen unterschiedlicher Hersteller, sodass der<br />

Kunde die Wahl zwischen einer Vielzahl von Produkten hat.<br />

Bei der J2EE-Plattform stellt sich die Gesamtsituation jedoch anders dar als bei<br />

Microsoft .NET. Während bei .NET der Einsatz unterschiedlicher Programmiersprachen<br />

bereits im Konzept vorgesehen war, basierte die Idee von Java darauf, Anwendungen,<br />

die mit einer Programmiersprache (Java) entwickelt wurden, auf unterschiedlichen<br />

Betriebssystemplattformen laufen zu lassen. Mittlerweile hat SUN damit begonnen, die<br />

Java-Technologie als OpenSource unter die GPLv2 zu stellen. Beispielsweise sind<br />

große Teile von Java SE unter der GPLv2 verfügbar. Open Source Projekte wie zum<br />

462 http://www.sap.com/germany/plattform/netweaver/components/appserver/index.epx<br />

463 http://www.oracle.com/lang/de/appserver/index.html<br />

Seite 479


Beispiel Apache Harmony arbeiten bereits daran, eine Open Source <strong>Version</strong> der Java-<br />

Technologie zu entwickeln.<br />

Zwar besteht auch bei Java theoretisch die Möglichkeit, Compiler zu entwickeln, die<br />

neben Java weitere Programmiersprachen ermöglichen. Dieser Ansatz ist jedoch in der<br />

Praxis vergleichsweise wenig verbreitet. Mit dem Aufkommen von Sprachen wie Ruby<br />

könnte sich das in der Zukunft jedoch ändern. Beispielweise gibt es mit JRuby bereits<br />

heute eine Möglichkeit, Java und Ruby gleichzeitig einzusetzen.<br />

1.3 Object Management Group CORBA<br />

Die Common Object Request Broker Architecture (CORBA) definiert auf einer sehr<br />

hohen Abstraktionsebene, wie verteilte Objekte miteinander kommunizieren können.<br />

Die CORBA-Spezifikation hat seit ihrer ersten <strong>Version</strong> 1991 kontinuierliche Verbesserungen<br />

und Erweiterungen im Rahmen eines offenen Standardisierungsprozesses bei<br />

der Object Management Group 464 erfahren. CORBA ist dadurch mittlerweile ein sehr<br />

ausgereifter und umfassender Standard mit breiter Unterstützung.<br />

Die verteilte Kommunikation im CORBA-Umfeld basiert auf dem Zugriff von Clients auf<br />

Server-Objekte. Dazu wird zunächst die Schnittstelle zur vom serverseitigen Objekt angebotenen<br />

Funktionalität mit einer formalen Beschreibungssprache (Interface Definition<br />

Language - IDL) definiert. Für eine konkrete Programmiersprache wird dann diese Definition<br />

in sogenannte Stubs (clientseitig) beziehungsweise Skeletons (serverseitig) überführt.<br />

Die Stubs erlauben dem Client auf die entfernte Funktionalität fast so zuzugreifen, als<br />

wäre diese lokal als Programmfunktion verfügbar. Die Skeletons werden vom Entwickler<br />

des Server-Objekts entsprechend mit Funktionalität ausgefüllt.<br />

Die konkrete Kommunikation zwischen beiden Seiten erfolgt über einen Object Request<br />

Broker (ORB), der neben der Übermittlung von Funktionsaufrufen und Rückgabewerten<br />

auch weitere Dienste, zum Beispiel zum Auffinden eines Server-Objekts mit einer<br />

bestimmten Funktionalität bereitstellt.<br />

Mit CORBA 2.1 wurden im Jahr 1997 wichtige Sicherheitsfunktionen wie zum Beispiel<br />

die SSL Verschlüsselung für IIOP in CORBA aufgenommen. Inzwischen existiert eine<br />

ständig weiterentwickelte Spezifikation eines Dienstes 465 (Secure Service Specification),<br />

der umfangreiche Möglichkeiten zur Umsetzung von Sicherheitsanforderungen, wie zum<br />

Beispiel Identifikation von Nutzern und Objekten, Zugriffskontrolle, Vertraulichkeit und<br />

Integrität, in CORBA-Umgebungen bereitstellt.<br />

Es existieren zahlreiche CORBA-konforme ORB-Implementierungen, darunter sowohl<br />

Open-Source-Produkte wie zum Beispiel<br />

� MICO 466 ,<br />

� ORBit 467 ,<br />

464 http://www.omg.org/technology/documents/formal/corba_iiop.htm<br />

465 Natürlich existieren auch Implementierungen dieses Dienstes, sogar bei einigen der OSS-<br />

Produkte (zum Beispiel bei MICO und TAO).<br />

466 http://www.mico.org/<br />

Seite 480


� omniORB 468 ,<br />

� JacORB 469 und<br />

� TAO 470 ,<br />

als auch proprietäre Lösungen wie<br />

� IONA Orbix 471 und<br />

� Borland Visibroker 472 .<br />

Client- und serverseitig wird die CORBA-Funktionalität über sogenannte Language Mappings<br />

473 zwischen der IDL und der jeweiligen Programmiersprache verfügbar gemacht.<br />

Eine Übersicht der von der OMG spezifizierten Mappings ist Internet verfügbar 474 .<br />

Zu den unterstützten Programmiersprachen zählen Ada, C, C++, COBOL, Java 475 , Lisp,<br />

PL/I, Python und Smalltalk. Für Modellierungsaufgaben existieren darüber hinaus auch<br />

noch Mappings für XML und MOF 476 .<br />

Zusammenfassend ist CORBA eine in der allgemeinen Wahrnehmung unterschätzte<br />

Technologie. Beispielsweise ist es mit CORBA möglich, eine serviceorientierte Architektur<br />

(SOA) aufzubauen. Der zugrunde liegende Standard ist ausgereift und es existieren<br />

zahlreiche OSS-Implementationen. Frühere Performance-Probleme sind inzwischen<br />

behoben. Dennoch spielt CORBA in der aktuellen Diskussion um WebServices und SOA<br />

kaum eine Rolle und wird häufig nur noch als eine theoretische Möglichkeit betrachtet,<br />

die in der Praxis immer weniger Bedeutung hat. Für Migrationszwecke muss daher sehr<br />

genau abgewogen werden, ob und wozu die ORB-Konzepte von CORBA verwendet<br />

werden. Wann immer möglich, sollten statt CORBA die Standard-Backend-<br />

Technologien, insbesondere unter J2EE, zur Umsetzung verwendet werden. Wo das<br />

nicht ausreicht, sind Schnittstellen zu CORBA vorhanden.<br />

2 Migrationspfade<br />

2.1 Migration einer Anwendung auf Basis .NET nach J2EE<br />

Die Migration einer Anwendung von einer Programmierplattform auf eine andere kann<br />

nicht voll automatisiert erfolgen. Es ist davon auszugehen, dass große Teile des Codes<br />

neu geschrieben werden müssen. Zwar verfügen Java und .Net Sprachen über ähnliche<br />

467 http://orbit-resource.sourceforge.net/<br />

468 http://omniorb.sourceforge.net/<br />

469 http://www.jacorb.org/features.html<br />

470 http://www.cs.wustl.edu/~schmidt/TAO.html<br />

471 http://www.iona.com/products/orbix/<br />

472 http://www.borland.com/de/products/visibroker/index.html<br />

473 Mappings sind Transformationsregeln, anhand derer IDL-Konstrukte in entsprechende<br />

Konstrukte der verwendeten Programmiersprache überführt werden.<br />

474 http://www.omg.org/technology/documents/idl2x_spec_catalog.htm.<br />

475 Im Falle von Java existiert sowohl ein Mapping, das IDL-Konstrukte nach Java überführt,<br />

als auch ein Mapping, mit dem aus Java-Konstrukten IDL-Konstrukte erzeugt werden können.<br />

476 MOF: Meta Object Facility, ein OMG-Standard zur plattformunabhängigen Definition, Manipulation<br />

und Integration von Daten und Metadaten.<br />

Seite 481


Konzepte und die Syntax von zum Beispiel C# ist im Vergleich zu Java nahezu identisch,<br />

aber im Kern verfolgen sie unterschiedliche Ziele. Die Hauptproblematik liegt in den<br />

unterschiedlichen Systembibliotheken. Der Umfang und Aufbau dieser Bibliotheken<br />

unterscheidet sich deutlich. Folgende Betrachtungen helfen bei der Analyse der Möglichkeiten<br />

und des Aufwands im Zuge einer Migration.<br />

2.1.1 Betrachtung der einzelnen Anwendungsschichten bei der Migration<br />

Bei einer Migration ist es sinnvoll, die Anwendung nicht als einen monolithischen Block<br />

zu betrachten, sondern in logische Schichten zu unterteilen. Bei der Entwicklung einer<br />

Software wird normalerweise eine Unterteilung in folgende Schichten vorgenommen:<br />

� Präsentationsschicht<br />

Diese Schicht sollte im Idealfall keine eigene Logik beinhalten und nur die Möglichkeit<br />

zur Interaktion des Systems mit dem Benutzer bieten.<br />

� Kommunikationsschicht<br />

Falls eine Anwendung auf mehrere Rechner verteilt ist, um zum Beispiel Daten<br />

von einem externen Rechnungssystem abzuholen, wird die Kommunikationslogik<br />

in dieser Schicht umgesetzt.<br />

� Geschäftslogik-Schicht<br />

Hier werden die Geschäftsprozesse einer Anwendung abgebildet, zum Beispiel<br />

ein Workflow zur Erfassung von Daten.<br />

� Datenzugriffsschicht<br />

In dieser Schicht erfolgt der Zugriff auf die Datenquellen.<br />

Je nach Schicht werden unterschiedliche Technologien eingesetzt. Diese müssen bei<br />

der Migration einzeln betrachtet werden. So muss zum Beispiel die Migration von ASP<br />

Seiten (.Net) auf JSP Seiten (J2EE) in der Präsentationsschicht komplett anders gehandhabt<br />

werden als die Migration von ADO.Net Komponenten auf JDBC in der Datenzugriffsschicht.<br />

Desweiteren muss bei der Analyse der zu migrierenden Anwendung auf eingesetzte<br />

Frameworks geachtet werden. In der .Net und Java Welt existieren zahlreiche Frameworks,<br />

die bei der Entwicklung komplexer Anwendungen unterstützen. Im Idealfall gibt<br />

es sowohl eine Java als auch eine .Net <strong>Version</strong> eines Frameworks. Damit wird die Migration<br />

deutlich erleichtert. Falls ein Framework nur auf einer Plattform verfügbar ist, wird<br />

die Migration deutlich aufwändiger, da gegebenenfalls vollständig unterschiedliche Konzepte<br />

und Philosophien zu berücksichtigen sind.<br />

2.1.1.1 Präsentationsschicht<br />

Je nach Art der Anwendung werden hier unterschiedliche Technologien bei der Implementierung<br />

eingesetzt:<br />

� Standalone Anwendungen – diese werden auf dem Rechner des Benutzers installiert<br />

und ausgeführt. In der .Net Welt werden diese Anwendungen mit Hilfe<br />

der Windows Forms Technologie implementiert. In der Java Welt sind es die<br />

SWING/AWT Oberflächen. Zusätzlich können diverse Frameworks eingesetzt<br />

Seite 482


werden, zum Beispiel SWT 477 (Open Source Komponente des Eclipse Projektes).<br />

Durch den unterschiedlichen Umfang und den Aufbau der Komponenten kann<br />

hier keine automatisierte Migration der Komponenten durchgeführt werden. Es<br />

gibt jedoch Ansätze, um den Entwicklern die Migration zu erleichtern. Als Beispiel<br />

sei an dieser Stelle das Eclipse Modelling Framework (EMF 478 ) erwähnt. Das<br />

Framework kann aus einem strukturierten Modell Java Code erzeugen. Im Fall<br />

einer Windows Forms Oberfläche kann anhand der XML-Beschreibung der Oberflächenelemente<br />

und eines Code Generators das Grundgerüst für die<br />

SWING/AWT Elemente generiert werden. Dieses Vorgehen beschleunigt die<br />

Migration deutlich, da die Entwickler anhand des Grundgerüsts die fehlenden<br />

Code Teile nur ergänzen und nicht komplett neu entwickeln müssen.<br />

� Web Anwendungen – diese laufen auf dem Server ab. Der Benutzer erhält den<br />

Zugriff auf die Oberfläche über einen Web Browser. In der .Net Welt sind diese<br />

normalerweise als ASP(.NET) Seiten implementiert. In der Java Welt gibt es<br />

hingegen unterschiedliche Standards wie zum Beispiel die JavaServer Pages<br />

(JSP) oder auch die in letzter Zeit immer wichtiger gewordenen JavaServer<br />

Faces (JSF). Falls die Web Seiten als einfache Formulare ausgeführt sind, ist die<br />

Migration relativ einfach. In diesem Fall kann das bereits erwähnte EMF<br />

Framework eingesetzt oder mit Hilfe von einfachen Parsern wie Xerces<br />

gearbeitet werden. Rich Clients wie zum Beispiel Java-Applets werden in diesem<br />

Kontext nicht als Webanwendungen verstanden, da sie unter Migrationsgesichtspunkten<br />

mit Standalone Anwendungen vergleichbar sind.<br />

2.1.1.2 Kommunikationsschicht<br />

Die Kommunikation zwischen Teilen einer Anwendung, die auf mehrere Rechner verteilt<br />

ist, läuft für gewöhnlich über Standardprotokolle und Technologien wie TCP/IP oder<br />

SOAP ab. In diesem Fall bereitet die Migration keine großen Probleme, da auf beiden<br />

Plattformen die gängigen Kommunikationsstandards zur Verfügung stehen. Bei der<br />

Kommunikation über Web Services kann im Rahmen der Migration anhand einer WSDL<br />

(Web Service Beschreibung) das Grundgerüst sowohl in .Net als auch in J2EE generiert<br />

werden. Probleme sind jedoch dann zu erwarten, wenn höhere Anforderungen, zum<br />

Beispiel im Bereich Sicherheit, gestellt werden und daher unterschiedliche Web Service<br />

Standards wie zum Beispiel OASIS WS-Security zum Einsatz kommen. Die Vielzahl<br />

unterschiedlicher Web Service Standards sowie Unterschiede bei der Unterstützung der<br />

Standards in den unterschiedlichen Tools und Frameworks bedingen diese Probleme.<br />

Eine Migration zwischen unterschiedlichen Sicherheitsstandards kann dadurch vom<br />

Aufwand mit einer Neuentwicklung vergleichbar sein.<br />

2.1.1.3 Geschäftslogik-Schicht<br />

Bei einfachen, auf einem einzigen Server laufenden Anwendungen besteht die Geschäftslogik<br />

zumeist aus normalen Klassen sowohl in C# als auch in Java. Hier sollte die<br />

Migration keine großen Probleme bereiten. Die Syntax zwischen diesen beiden Sprachen<br />

ist ähnlich und für die Konvertierung gibt es entsprechende Tools. Für den Weg<br />

477 SWT – Standard Widget Toolkit - http://www.eclipse.org/swt<br />

478 EMF – Eclipse Modelling Framework - http://www.eclipse.org/emf<br />

Seite 483


von .Net zur Java kann zum Beispiel das Open Source Projekt net2java 479 und für die<br />

Migration von Java zu .Net der JLCA 480 (Java Language Conversion Assistant) von<br />

Microsoft genutzt werden. Insbesondere JLCA ist inzwischen ein ausgereiftes Tool mit<br />

umfangreicher Unterstützung von Microsoft, mit dem in der Regel ein Großteil des<br />

Codes automatisiert konvertiert werden kann.<br />

Komplizierter wird es bei Enterprise Anwendungen wie sie zum Beispiel über COM+ in<br />

der .Net Welt und über EJBs in der J2EE Welt realisiert werden. Hier müssen die Entwickler<br />

die Logik genau betrachten und den entsprechenden Code in der Zielsprache<br />

neu schreiben. In der Regel ist jedoch die Migration von COM+ zu EJB problemloser als<br />

die umgekehrte Migration, da der Funktionsumfang von COM+ eine Teilmenge der EJB<br />

Funktionen bildet. Die Migration von EJB zu COM+ ist insbesondere dann deutlich<br />

komplexer, wenn Funktionen verwendet werden, die in COM+ Technologie nicht enthalten<br />

sind.<br />

2.1.1.4 Datenzugriffsschicht<br />

Bei der Migration der Datenzugriffsschicht werden zwei unterschiedliche Teile einer Anwendung<br />

migriert: der Programmcode und die SQL Statements. Die Migration des Programmcodes<br />

läuft ähnlich wie die Migration des Codes in der Logikschicht mit Hilfe von<br />

entsprechenden Tools ab. Hier gibt es zwar Unterschiede bei den Zugriffen zwischen<br />

ADO.NET und JDBC, diese sind jedoch nicht gravierend und bereiten in der Regel keine<br />

größeren Schwierigkeiten. Die SQL-Abfragen bleiben unberührt, solange auf die gleiche<br />

Datenbank zugegriffen wird. Falls auch die Datenbank migriert wird, müssen in jedem<br />

Fall die SQL-Statements entsprechend der Syntaxunterschiede angepasst werden. Darüber<br />

hinaus können weitere Aktivitäten notwendig sein (siehe Kapitel II.A).<br />

Beim Einsatz von Persistenzframeworks, wie Hibernate, ist der Aufwand bei der Migration<br />

entweder gering, falls es eine entsprechende <strong>Version</strong> dieses Frameworks auf der<br />

anderen Plattform gibt, oder sehr hoch, falls es keine entsprechende <strong>Version</strong> gibt und<br />

die Datenzugriffsschicht dadurch komplett neu entwickelt werden muss.<br />

2.1.2 Migration einer verteilten Anwendung auf SOA Basis<br />

Basiert die Anwendungslandschaft auf einer SOA Architektur, kann dies die Migration<br />

zwischen den einzelnen Plattformen deutlich erleichtern. Falls die Anwendungen, wie für<br />

eine SOA Archtitektur typisch, über Web Services implementiert sind, kann die Migration<br />

in vielen kleinen Schritten erfolgen. So kann zum Beispiel ein einzelner .Net Web<br />

Service durch einen J2EE Web Service ersetzt werden, ohne dass Änderungen in<br />

anderen Anwendungen notwendig sind und diese entsprechend unbeeinflusst bleiben.<br />

Die Anwendungsmodule können so nach und nach schrittweise ersetzt werden. Dadurch<br />

erhöht sich zwar die Gesamtzahl der Migrationsprojekte, die Komplexität der einzelnen<br />

Projekte wird jedoch deutlich reduziert. Außerdem wird das Migrationsrisiko minimiert,<br />

indem zunächst Erfahrungen mit dem Betrieb einzelner, möglichst unkritischer Services<br />

auf Basis der neuen Plattform gesammelt werden und diese Erfahrungen in die weiteren<br />

479 siehe https://net2java.dev.java.net/<br />

480 JLCA – Java Language Conversion Assistant -<br />

http://msdn.microsoft.com/vstudio/java/migrate/jlca/default.aspx<br />

Seite 484


Migrationsprojekte einfließen können. Auch wenn die Komplexität der Einzelprojekte<br />

sinkt, gelten trotzdem alle in diesem Leitfaden beschriebenen Aspekte und Risiken.<br />

Daher müssen auch diese Projekte als Migrationsprojekte Ernst genommen und entsprechend<br />

geplant werden. Zu beachten ist außerdem, dass über einen bestimmten<br />

Zeitraum sowohl Plattformen auf Java als auch auf .Net-Basis parallel betrieben werden<br />

müssen, wodurch sich gegebenenfalls die Betriebsaufwände erhöhen.<br />

2.1.2.1 Bridge Technologien<br />

Unter Umständen ist es notwendig, dass Java und .Net Technologien zusammen<br />

arbeiten müssen. Dies wäre zum Beispiel bei einer großen Anwendung der Fall, die nicht<br />

in einem Zug durch die neue Technologie ersetzt werden kann. Hier müssen zum<br />

Beispiel .Net Module Java Module entweder auf demselben System oder über das<br />

Netzwerk aufrufen. Eine Möglichkeit besteht zum Beispiel darin, eine Art Proxy mit Web<br />

Services zu realisieren. Ein .Net Programm Modul kann dann über diesen Proxy Daten<br />

mit Java Modulen austauschen. Diesem Vorgehen stehen jedoch die relativ umständliche<br />

Programmierung der Proxies sowie die Performanceeinbußen durch das<br />

Arbeiten mit XML und das Übertragen der Daten zwischen den Web Services entgegen.<br />

Um diese Nachteile zu umgehen, wird die sogenannte Bridge Technologie eingesetzt.<br />

Mittels dieser ist es möglich, auf .Net Klassen von Java Klassen aus so zuzugreifen, als<br />

ob diese Java Klassen wären und umgekehrt. Auch hierbei kommen Proxies zum Einsatz,<br />

die jedoch automatisiert durch entsprechende Tools generiert werden. Damit entfällt<br />

die aufwändige Programmierung der Proxies. Außerdem werden Performanceverluste<br />

verringert, da neben Web Services auch weitere performanceoptimierte<br />

Kommunikationskanäle wie zum Beispiel TCP/Binary von den Produkten angeboten<br />

werden. Ein Produkt, das erfolgreich in der Praxis eingesetzt wird, ist JNBridge 481 von<br />

JNBridge LLC.<br />

2.1.2.2 .Net Anwendungen auf nicht Windows basierten Betriebssystemen<br />

Als Alternative zu einer vollständigen Migration von .Net zu J2EE gibt es Möglichkeiten,<br />

.Net Anwendungen auch auf nicht Windows Betriebssystemen laufen zu lassen und damit<br />

eine Migration der Betriebssysteme relativ unabhängig von der Migration der Anwendungen<br />

zu ermöglichen. Dadurch kann zum Beispiel eine Migration nach Linux erfolgen,<br />

ohne dass eine bestehende .Net Anwendung gleichzeitig migriert werden muss.<br />

Das Mono Open Source Projekt unter der Führung von Novell bietet eine Anzahl von<br />

Modulen wie C# Compiler und die Common Language Runtime, die es ermöglichen,<br />

.Net Anwendungen auf Linux, BSD, Unix, Mac OS X oder Solaris Betriebssystemen zu<br />

betreiben. Mono bildet die Funktionalität des aktuellen .NET-Frameworks jedoch z.Zt.<br />

nicht vollständig ab. Aufgrund der Dynamik in der Weiterentwicklung von .NET ist mit<br />

diesem Sachverhalt in der Zukunft weiterhin zu rechnen. Insofern muss im Einzelfall genau<br />

geprüft werden, ob Mono als vorübergehende Migrationsalternative auf Anwendungsebene<br />

geeignet ist.<br />

Eine weitere Möglichkeit bietet der Cross Compiler von Mainsoft. Dieser ermöglicht es,<br />

.Net Code direkt in Java Bytecode zu kompilieren und auf einem J2EE Application<br />

481 JNBridge – Ein Produkt der JNBridge LLC - http://www.jnbridge.com/<br />

Seite 485


Server laufen zu lassen. Zusätzlich existiert ein Modul für Visual Studio, das die<br />

Entwicklung von .Net Anwendungen für Windows fremde Betriebssysteme deutlich<br />

erleichtert. Dieses Produkt ist insofern interessant, als es den Entwicklern weiterhin<br />

erlaubt, mit Visual Studio in .Net zu entwickeln, aber die Ergebnisse direkt als J2EE<br />

Anwendung auf einem J2EE Applikationsserver zu deployen und zu betreiben.<br />

2.1.3 Fazit<br />

Zusammenfassend lässt sich sagen, dass eine Migration zwischen J2EE und .Net in<br />

jedem Fall aufwändig ist. Es lässt sich jedoch keine grundsätzliche Aussage darüber<br />

treffen, ob eine Migration oder eine vollständige Neuentwicklung sinnvoller ist. Je nach<br />

Komplexität der Anwendung und der verwendeten Technologien muss diese Entscheidung<br />

situationsbezogen auf Basis einer entsprechenden Analyse getroffen werden. Keinesfalls<br />

ist jedoch eine automatisierte Migration möglich. Zwar gibt es Vorgehen und<br />

Tools, die die Migration erleichtern, dennoch ist in jedem Fall mit großem manuellem<br />

Aufwand zu rechnen.<br />

In diesem Kapitel wurden auch alternative Wege zu einer vollständigen Migration aufgezeigt.<br />

Hierzu gehören die schrittweise Migration mit Hilfe von Bridge Technologien und<br />

Web Services und das Betreiben von .Net Anwendungen auf nicht Windows basierten<br />

Betriebssystemen. Diese zwei Ansätze ermöglichen es, die Anwendungen nach und<br />

nach zu migrieren und so den Umstellungsaufwand auf einen größeren Zeitraum zu verteilen<br />

und gleichzeitig die Komplexität der einzelnen Migrationsprojekte zu reduzieren.<br />

Seite 486


E Thema Terminal-Dienste und Client-Konzepte<br />

Die Entscheidung für den Einsatz von Terminalservern und Thin Clients kann sowohl<br />

während eines Migrationsprojekts als auch im Vorfeld erfolgen und soll daher auch in<br />

diesem Rahmen betrachtet werden. Es ist jedoch kein klassisches Migrationsthema, da<br />

in der Regel keine Terminalserverumgebungen migriert werden. Bei der Umsetzung und<br />

Unterstützung von Migrationen können Terminalserver hingegen sehr hilfreich sein. Dies<br />

ist zum Beispiel dann der Fall, wenn es im Rahmen einer stufenweisen Migration darum<br />

geht, Fachanwendung sukzessive für eine neue Betriebssystemumgebung bereitzustellen,<br />

wobei die sonstige Server-Landschaft schon umgestellt wurde.<br />

Der Einsatz der im Folgenden betrachteten Technologie ist primär eine Entscheidung,<br />

die im Rahmen der Gesamt-IT-Strategie einer Behörde zu treffen ist. Die vorgestellten<br />

Lösungen sollen einen Einblick in die gesamte Thematik geben und das Potential der<br />

Technologie verdeutlichen.<br />

Vorgestellt werden Technologien, die in den unterschiedlichsten Bereichen eingesetzt<br />

werden können:<br />

� Linux basierte Server- und Clientsysteme mit dem Linux-Terminal-Server-Project<br />

� NX-Server der Firma NoMachine mit Linux basierten Serversystemen und Clientsystemen<br />

für Windows und Linux<br />

� Windows Terminalserver der Firma Microsoft mit (vorrangig) Windows basierten<br />

Clientsystemen<br />

� Presentation Server der Firma Citrix mit Windows basierten Serversystemen und<br />

diversen Clientsystemen (Linux, Unix, DOS, Windows usw.)<br />

Die vorgestellten Systeme bieten eine große Bandbreite an technischen Lösungen und<br />

sind im Einzelfall gemäß den vorliegenden Anforderungen genauer zu betrachten. Neben<br />

den technischen Unterschieden und Möglichkeiten variieren die Systeme auch stark<br />

im Hinblick auf die Lizenzierungsmodelle und -kosten.<br />

Die Administration und Betreuung von Arbeitsplatzrechnern ist eine Aufgabe mit hohem<br />

Personalaufwand, insbesondere dann, wenn die Ausstattung der Rechner mit unterschiedlicher<br />

Hard- und Software erfolgte. Auch die wachsende Komplexität der eingesetzten<br />

Hard- und Software kann die Arbeitsplatzrechner störanfälliger machen und damit<br />

die administrativen Aufwände erhöhen. Die mit der Systembetreuung verbunden Arbeiten<br />

werden im Folgenden exemplarisch aufgeführt:<br />

� Installation, gegebenenfalls Konfiguration vor Ort<br />

� Anpassungen an individuelle Bedürfnisse<br />

� Verwaltung von Softwareaktualisierungen und -neuinstallationen (Test, Verteilung,<br />

Installation)<br />

� Fehlerdiagnose und -behebung, Support<br />

� Ersatzbeschaffung.<br />

Seite 487


Zwar können die Aufgaben mit Unterstützung geeigneter Verwaltungswerkzeuge beziehungsweise<br />

System-Managementanwendungen größtenteils automatisiert und die Aufwände<br />

verringert werden, insgesamt bleibt der Arbeitsaufwand jedoch sehr hoch. Hinzu<br />

kommt, dass nicht jede Organisation in der Lage ist, sich mit der zum Teil sehr kostspieligen<br />

Systemmanagementsoftware auszustatten und das hierfür benötigte Personal zu<br />

beschaffen oder entsprechend zu schulen. Dies gilt insbesondere für kleinere Organisationen.<br />

Durch den Einsatz von Terminalservern können die skizzierten Probleme reduziert<br />

werden.<br />

In einer dezentralen IT-Architektur findet die Installation und Ausführung von Programmen<br />

in der Regel auf den Arbeitsplatzrechnern statt. Server dienen primär zur zentralen<br />

Datenverwaltung, zu Datenbackups und zur Steuerung der Zugriffsrechte. Bei der Verwendung<br />

einer Terminalserverlösung liefern ein oder mehrere leistungsfähige Zentralrechner,<br />

die eigentlichen Terminalserver, einen standortunabhängigen Zugriff auf die<br />

notwendigen Daten und Anwendungen. Die Terminalserver bieten den Benutzern dabei<br />

einen direkten Zugang mittels einer grafischen Benutzerschnittstelle des Betriebssystems<br />

über das Netzwerk. Terminaldienste ermöglichen den Anwendern die Nutzung von<br />

Software, die nicht auf ihrem lokalen Rechner installiert sind. Die Anwendungen werden<br />

von einem Terminalserver bereitgestellt und über einen Client/Terminal in Anspruch genommen.<br />

Ein Terminalserver emuliert dabei in der Regel mehrere Clients (Sessions).<br />

Das heißt, er stellt den meist entfernten Clients Anwendungen zur Verfügung, für die der<br />

Benutzer eine Berechtigung hat. Diese Anwendungen können von dem Benutzer wie an<br />

einem normalen PC per Maus und Tastatur bedient werden können.<br />

Im Gegensatz zu dezentralen IT-Architekturen erfolgt auf den zentralen Servern neben<br />

der Bereitstellung der Daten auch die der Anwendungen. Der Zugriff auf die Anwendungen<br />

und Daten der Terminalserver muss mittels spezieller Terminal-Clientanwendungen<br />

erfolgen.<br />

Die folgende Tabelle gibt einen kurzen Überblick über die Vorteile, die durch den Einsatz<br />

von Terminalservern entstehen.<br />

Vorteile Erläuterung<br />

Zentrale Verwaltung Betriebssystem und Anwendungen werden nur in einfacher Form<br />

zentral auf den Terminalservern angeboten.<br />

Die Pflege der Software kann zentral erfolgen (Updates).<br />

Es sind selten Arbeiten an den Client-Systemen notwendig.<br />

Die Betreuung der Anwendungen findet zentral statt, Fehlerdiagnose<br />

und -behebung werden vereinfacht.<br />

Erhöhung der Produktivität für Anwender und Administration.<br />

Die Bereitstellung zusätzlicher Anwendungen (die bereits auf dem<br />

Terminalserver eingerichtet sind) für den Benutzer wird beschleunigt.<br />

Durch den Wegfall personalintensiver Fehlerbehebungen vor Ort<br />

werden die administrativen Aufwände drastisch reduziert.<br />

Zudem ist sichergestellt, dass alle Anwender mit konsistenten Applikationen<br />

arbeiten.<br />

Verringerte Hardware- Clientsysteme benötigen weniger Hardwareressourcen (gegebenen-<br />

Seite 488


Vorteile Erläuterung<br />

anforderungen falls kann sogar auf eine eigene Festplatte im Client verzichtet werden),<br />

da bei Bedarf fast alle Operationen auf dem Server stattfinden<br />

können.<br />

Ein regelmäßiger Ausbau / Austausch der Clienthardware aufgrund<br />

erhöhter Anforderungen der Betriebssysteme und Anwendungen ist<br />

nicht mehr notwendig.<br />

Die vorhandene Hardware kann länger genutzt werden, da die Anforderungen<br />

an die Leistungsfähigkeit nicht von Softwarewechsel<br />

bestimmt werden.<br />

Erhöhte Sicherheit Durch den Einsatz von Clientrechnern (zum Beispiel ohne Festplatten)<br />

können Daten beispielsweise nur noch auf den zentralen<br />

Servern gespeichert werden. Somit ist die Gefahr des Datenverlusts,<br />

des unbefugten Zugriffs, der Manipulation oder des Diebstahls verringert.<br />

Unabhängigkeit vom<br />

Clientrechner<br />

Flexible Unterstützung<br />

bei Migrationen<br />

Geringerer Energieverbrauch<br />

Clientrechner können schnell ausgetauscht werden, da keine persönlichen<br />

Daten oder Einstellungen auf den Clients gespeichert<br />

werden. Vor allem aber können Benutzer einfach den Arbeitsplatz<br />

wechseln, ohne auf „ihre― vertraute Umgebung verzichten zu müssen.<br />

Der Einsatz von Terminalservern kann Migrationsprojekte entscheidend<br />

unterstützen, da diese beispielsweise eine schrittweise Migration<br />

ermöglichen.<br />

So können bei einem Wechsel der Clientbetriebssysteme auf ein<br />

Linux basiertes System die vertrauten Windowsanwendungen über<br />

einen Terminalserver solange bereitgestellt werden, bis die Benutzer<br />

in die neue Linux-Anwendung eingewiesen wurden.<br />

Über Terminalserver können auch kostspielige Portierungen oder<br />

sogar Neuentwicklungen notwendiger Anwendungen vermieden<br />

werden. Einmal für den Einsatz auf einem entsprechenden Terminalserver<br />

vorbereitet, sind diese auch unter dem neuen Betriebssystem<br />

anwendbar.<br />

Durch den Einsatz eines oder weniger leistungsfähiger Server und<br />

vieler Clientrechner mit einfacher Hardwareausstattung und niedrigem<br />

Energieverbrauch sinkt der gesamte Energieverbrauch. Nach<br />

Angaben von IBM verbraucht ein Großrechner bei gleicher Leistung<br />

nur max. 10% der Energie einer dezentralen IT-Architektur. 482<br />

Tabelle 75: Vorteile von Terminal-Servern und Thin Clients<br />

Neben den genannten Vorteilen gibt es auch einige Nachteile, die bei der Überlegung für<br />

oder gegen den Einsatz von Terminalservern abgewogen werden müssen.<br />

482 http://www.computerwoche.de/index.cfm?pid=858&pk=556868;<br />

http://www.heise.de/newsticker/meldung/97276<br />

Seite 489


Nachteile Erläuterung<br />

Abhängigkeit Benutzersitzungen werden bei Ausfall der Terminalserver abgebrochen<br />

und die Arbeitsaufnahme ist erst dann wieder möglich, wenn<br />

der Fehler auf dem Terminalserver behoben ist. Zudem kann es<br />

beim Abbruch der Benutzersitzung zu Datenverlusten kommen. Dieses<br />

Risiko kann durch den Einsatz einer Serverfarm (Cluster) minimiert<br />

werden.<br />

Erhöhter Ressourcenbedarf<br />

beim Terminalserver<br />

Spezielle Maßnahmen für<br />

mobile Endgeräte<br />

Die Terminalserver müssen über eine deutlich erhöhte Ressourcenausstattung<br />

verfügen, insbesondere beim Arbeitsspeicher. In Relation<br />

zum Gesamtbedarf (Server und Clients) werden jedoch weniger<br />

Ressourcen benötigt, da bestimmte Operationen auf einem Server<br />

nur einmal für alle Benutzer ausgeführt werden müssen und nicht<br />

auf jedem Client einzeln.<br />

Die Einbindung von zum Beispiel Notebooks, die keinen permanenten<br />

Netzzugang haben, erfordert zusätzliche Maßnahmen, zum Beispiel<br />

den Offline Modus des Application Streamings von Citrix. 483<br />

Erhöhter Netzwerkverkehr Die Kommunikation zwischen den Server- und Clientsystemen erfolgt<br />

auf der Netzwerkebene. Übertragen werden die Inhalts-<br />

Differenzen beim Bildaufbau oder Anweisungen für den Bildaufbau.<br />

Bestimmte Anwendungen (zum Beispiel Grafikprogramme) können<br />

die Netzlast stark erhöhen. Andererseits kann sich bei einigen Applikationen<br />

(zum Beispiel Textverarbeitung) der Netzverkehr auch reduzieren,<br />

da nicht regelmäßig ganze Dateien beim Speichern auf<br />

den zentralen Datenserver übertragen werden, sondern nur die Änderungen<br />

(Tastatureingaben und Bildschirmveränderungen).<br />

Anpassungen bzgl. verwendeter<br />

Anwendungen<br />

Nicht alle Anwendungen können problemlos auf einem Terminalserver<br />

betrieben werden, insbesondere im Windowsbereich kann es<br />

Applikationen geben, die Systemdateien zum Schreiben öffnen und<br />

für andere Benutzer sperren. Solche Probleme können in der Regel<br />

durch administrative Eingriffe, zum Beispiel eine geänderte Rechtevergabe,<br />

gelöst werden.<br />

Tabelle 76: Ausgewählte Nachteile von Terminal-Servern und Thin Clients<br />

Für die Anbindung an die Terminal-Server können verschiedene Clienttypen eingesetzt<br />

werden.<br />

� Fat Clients<br />

Es handelt sich dabei um einen vollwertigen Arbeitplatzrechner. Der Zugriff auf<br />

die Terminal-Server erfolgt über eine spezielle Terminalserver-Client-Software.<br />

� Thin Clients<br />

Hierbei handelt es sich um Rechnersysteme mit minimalen Hardware-<br />

Ausstattungen. Das Betriebsystem bezieht die Clients entweder aus einem<br />

Flash-EPROM oder sie können mittels Netzwerk (pxe, tftp, nfs) gebootet werden<br />

483 http://www.citrix.de/produkte/schnellsuche/presentation-server/Application-Streaming/<br />

Seite 490


1 Produkte / Technologien<br />

1.1 Linux Terminal Server Project<br />

Das Linux Terminal Server Project (LTSP) 484 ist eine Software für Linux, die den Einsatz<br />

von Linux als Terminalserver ermöglicht.<br />

Die Software ist vielfach in Schulen und Bildungseinrichtungen sowie in Entwicklungs-<br />

und Schwellenländern verbreitet, da sie insbesondere die weitere Verwendung älterer,<br />

leistungsschwacher Arbeitsplatzrechner ermöglicht. 2006 ist LTSP in der <strong>Version</strong> 4.2<br />

erschienen. LTSP ist eine freie Software, die unter der GNU General Public License verfügbar<br />

ist.<br />

Technisch gesehen vereinfacht LTSP die Ausnutzung der Fähigkeiten des grafischen X-<br />

Servers, ein beliebiges Linux-Programm in zwei Teile, Programmausführung und Anzeige,<br />

zu trennen. Die Programmausführung erfolgt auf einem Server, während die Anzeige<br />

zusammen mit der Eingabe über Tastatur oder Maus auf beliebig vielen Terminals erfolgen<br />

kann. Die Anzahl der Thin Clients wird hierbei von der Übertragungsrate des Netzwerkes<br />

und der Leistungsfähigkeit des Servers bestimmt.<br />

Die Hardwareanforderungen an den Server sind als sehr gering zu bezeichnen. Es ist<br />

durchaus nicht ungewöhnlich, 50 Workstations mit Mozilla und OpenOffice über einen<br />

DUAL P4 -2,4 (XEON) mit 4 GB RAM zu betreiben.<br />

Im Gegensatz zu den geringen Hardwareanforderungen werden hohe Anforderungen an<br />

das Netzwerk (Bandbreite und Latenz) gestellt. Allein die Verwendung des X-Protokolls<br />

hat zum Beispiel zur Folge, dass ein 100-MBit/s-Netzwerk nur für die Bereitstellung von<br />

ca. 30 Sessions mit zum Beispiel Office-Anwendungen ausreicht.<br />

Die Software besteht aus einer Serveranwendung, von der Clients via Netboot remote<br />

booten und ihr Betriebssystem erhalten können. Die Anwendungen laufen in dieser Konfiguration<br />

komplett auf dem Terminalserver und können im Prinzip auf eine eigene Festplatte<br />

verzichten.<br />

Der ohnehin schon niedrige Speicherverbrauch der Clients wurde in der aktuellen <strong>Version</strong><br />

nochmals verringert, sodass die Anforderungen an den Client-Rechner als sehr<br />

gering zu bezeichnen sind. Die Minimalanforderungen sind ein Rechner mit 32 MB RAM<br />

und einem PCI-Bus. Zudem wurde die Hotplug-Fähigkeit der Clients verbessert. Es können<br />

auch lokale Scanner oder USB-Sticks verwendet werden. Die Unterstützung von<br />

Multihead-X ermöglicht zudem den Einsatz mehrerer Monitore.<br />

Als Serversystem dient eine beliebige Linux-Distribution. Hierdurch werden u.a. auch<br />

Verfahren zur Authentisierung an einem Active Directory, das auf einem Windows Server<br />

läuft, unterstützt, und der Zugriff auf Ressourcen eines Windows Netzes wird dadurch<br />

ermöglicht.<br />

484 http://www.ltsp.org/ (Stand 01.11.2007)<br />

Seite 491


LTSP-Client unterstützt sowohl den Zugriff auf LTSP als auch auf Windows-<br />

Terminalserveranwendungen. Neben der Variante, bei der der Server dem Client das<br />

Betriebssystem zur Verfügung stellt, werden clientseitig auch eine Vielzahl von Hardwarearchitekturen<br />

und Betriebssystemen, insbesondere Apple OS X und Windows XP, unterstützt.<br />

Zusammenfassend kann festgehalten werden: Aufgrund der niedrigen Hardwareanforderungen<br />

wird das Projekt LTSP insbesondere als preiswerte Alternative zu herkömmlichen<br />

Workstations in Schulen und Weiterbildungseinrichtungen positioniert, in denen<br />

die Verbindung zwischen Terminalserver und Client über eine LAN-Verbindung hergestellt<br />

wird und die Anzahl paralleler Zugriffe begrenzt bleibt. Leider zeigen die Erfahrungen,<br />

dass LSTP nicht besonders gut skaliert. Dies ist ein weiterer Grund dafür, dass<br />

LSTP in erster Linie für kleinere Organisationen oder Arbeitsgruppen eingesetzt wird.<br />

Der Einsatz ist darüber hinaus nur im Rahmen geringer Sicherheitsanforderungen zu<br />

empfehlen, insbesondere da Netzunterbrechungen zu einem Datenverlust führen können.<br />

1.2 NoMachine NX Server<br />

Mitte 2007 hat Medialogic den Terminalserver NoMachine NX 485 und den NX-Client in<br />

der <strong>Version</strong> <strong>3.0</strong> veröffentlicht. Aktuell wird die Bezeichnung Desktop-Virtualisierungs-<br />

und Fernwartungs-System verwendet.<br />

Die freie <strong>Version</strong>, die für Linux und Solaris verfügbar ist, ist gegenüber der kostenpflichtigen<br />

<strong>Version</strong> (ebenfalls für Linux und Solaris) funktional eingeschränkt. Eine Übersicht<br />

der funktionalen Unterschiede kann man auf den Webseiten von NoMachine im Internet<br />

finden 486 . Die Lizenzierung 487 des NX-Servers erfolgt nicht pro Verbindung, sondern über<br />

die Anzahl gleichzeitiger Benutzer und pro Server. In der Enterprise Lizenz ist die Benutzeranzahl<br />

unbeschränkt.<br />

Die NX Distributed Computing Architecture basiert auf einer Weiterentwicklung von X-<br />

Window. X-Window kann als Grundsystem für grafische Benutzeroberflächen in Linux<br />

basierten Betriebssystemen bezeichnet werden. Dabei lässt sich die Bildschirmanzeige<br />

nicht nur auf dem lokalen Rechner, sondern auch netzwerktransparent auf einem entfernten<br />

Rechner umsetzen. Zusätzlich werden auch die Tastatur- und Mausbefehle weitergeleitet.<br />

Es kann zwischen einem X-Server, der die grafischen Daten aufbereitet und<br />

verschickt, und einen X-Client, der die Daten empfängt und grafisch darstellt, unterschieden<br />

werden. Antworten (meist Tastatur- und Mauseingaben) des Clients werden<br />

wiederum vom X-Server empfangen. Beide kommunizieren über das X-Protokoll. Zusammengehörige<br />

Paare von X-Client-Anfragen und X-Server-Antworten bilden einen<br />

round-trip, wobei nicht jede Anfrage eine Antwort erfordert. Round-trips beanspruchen<br />

viel Bandbreite und verhindern so den Einsatz des X-Protokolls in langsamen Netzen.<br />

Über das NX-Protokoll lässt sich eine Komprimierung der übertragenen Daten von<br />

durchschnittlich ca. 70:1 erreichen. 488<br />

485 http://www.nomachine.com/<br />

486 http://www.nomachine.com/features.php (Stand 01.11.2007)<br />

487 http://www.nomachine.com/licensing (Stand 01.11.2007)<br />

488 http://www.pl-berichte.de/berichte/lt2004-nxartikel.html<br />

Seite 492


Die NX-Komprimierungstechnologie erlaubt damit den Einsatz von X-Window auch in<br />

Netzen mit geringer Bandbreite und hoher Latenz. Durch intelligente Komprimierung und<br />

Cachen schon übertragener Daten sollte es jedem Anwender möglich sein, die Originalversionen<br />

der gängigsten X-Desktop-Umgebungen über jede beliebige Netzwerkverbindung<br />

auf einem Standard-X-Server auszuführen. Neben speziellen X-Protokoll-<br />

Komprimierungsverfahren hat NoMachine integrierte Proxy-Agenten entwickelt, mit denen<br />

komplette Remote-Desktop-Sitzungen über schmalbandige Internetverbindungen<br />

realisiert werden können.<br />

NX verfügt ebenfalls über eine Lastverteilung, indem Server die Netzlast gleichmäßig<br />

verteilen und Sitzungen mehreren unterschiedlichen Servern zuweisen. Weiterhin erlaubt<br />

es NX, einzelne Applikationen über schmalbandige Verbindungen zu übertragen<br />

und so beispielsweise auf einem Linux-Server laufende Applikationen unter Windows<br />

oder auf einem ThinClient zu nutzen.<br />

Mit der <strong>Version</strong> 3 verfügt Medialogic NoMachine (NX) über zum Beispiel folgende Funktionalitäten:<br />

� Session shadowing: Mehrere Benutzer können sich nun gleichzeitig eine einzige<br />

Session zum Beispiel für Präsentationen oder Support teilen.<br />

� Desktop sharing: Der Zugriff auf das lokale X Display erfolgt über NX.<br />

� Verbesserte Verfügbarkeit: Die Flexibilität im Bereich der „Multi Node Setups―<br />

wurde erhöht.<br />

� Eventgesteuerte Skripte auf dem Server: Der Administrator kann eigene Skripte<br />

aufrufen lassen, zum Beispiel beim Starten einer neuen Session oder beim Anlegen<br />

eines neuen Benutzers.<br />

Das Management der NX-Server wurde dadurch vereinfacht, dass aufgrund einer verbesserten<br />

Integration mit den Host-Systemen (bereits seit <strong>Version</strong> 1.5 aus dem Jahr<br />

2005) das Anlegen eigener NX-Accounts überflüssig ist.<br />

Für die Authentisierung bietet NX eine LDAP-Unterstützung. NX verwendet die Remotefunktionen<br />

von SSH für den Zugriff auf die Funktionen eines Servers, wobei die gesamte<br />

Kommunikation verschlüsselt stattfindet. Zur erweiterten Sicherung der internen IT Infrastruktur<br />

sind Zusatzprodukte zur Integration von Security-Token (zum Beispiel Aladdin<br />

eToken PRO, Rainbow iKey 3000) entwickelt worden. Hierdurch kann eine sichere Möglichkeit<br />

zur Authentisierung geboten werden.<br />

NX-Server und Clientprodukte arbeiten primär unter Linux verschiedener Distributionen.<br />

Während der Server künftig nur noch unter Solaris angeboten wird, ist der NX-Client<br />

prinzipiell für jede Hardwareplattform unter Linux sowie für alle gängigen Betriebssysteme<br />

wie Windows, Mac OS X oder Solaris verfügbar. Die Funktionalitäten von NX für das<br />

Network Computing können daher außer in Linux-Umgebungen auch mit anderen Betriebssystemen<br />

genutzt werden. Dabei übersetzt NX die Protokolle dieser Umgebungen<br />

in das X-Protokoll, zum Beispiel das RDP, das von Microsoft und Citrix verwendet wird.<br />

Somit ist auch der Zugriff auf Windows Anwendungen möglich.<br />

Zusammenfassend kann festgestellt werden: NX-Server können OpenOffice-, KDE- und<br />

andere X-Anwendungen einer großen Zahl von Anwendern parallel zur Verfügung stel-<br />

Seite 493


len. Im Einzelfenster-Modus (etwa von KMail, bedient von Windows aus) wird dies einer<br />

„stufenweisen" Migration dienlich sein. 489 NX wertet generell andere Terminalserver-<br />

Installationen durch die Kompatibilität zu diesen auf (genauer die Umwandlung der Protokolle<br />

in NX), auch indem Bandbreite eingespart und die Performanz erhöht wird. Mit<br />

NX wächst somit eine Basistechnologie heran, die zu etablierten Lösungen eine Alternative<br />

ist. NX braucht hinsichtlich Performanz und Features keinen Vergleich mit anderen<br />

Produkten zu scheuen.<br />

1.3 Microsoft Windows Terminal Server<br />

Microsoft bietet Terminaldienste schon seit 1995 mit NT 3.51 an. Seitdem wurden die<br />

Funktionen mit jeder neuen Windows Server <strong>Version</strong> ständig weiterentwickelt. Der Terminalserver<br />

ist dabei integraler Bestandteil des jeweiligen Serverbetriebssystems, muss<br />

jedoch gesondert lizenziert werden. Für Windows Server 2003 bedeutet dies, dass sowohl<br />

Server 2003 entsprechende Lizenzen erworben werden müssen als auch für die<br />

Terminalserver. Für die Nutzung der Terminaldienste unter Windows Server 2003 sind<br />

für mehr als zwei parallel laufende Sessions Lizenzkosten für die Zugriffe zu entrichten.<br />

Unter Windows Server 2003 ist unabhängig vom benutzten Desktop-System eine CAL<br />

(Client Access License) zu erwerben, wobei zwischen Lizenzen pro Gerät und Lizenzen<br />

pro Benutzer unterschieden werden. Jede Geräte-CAL gestattet einem Gerät (von einem<br />

beliebigen Benutzer verwendet) Windows-Sitzungen auf einem Server durchzuführen.<br />

Jede Benutzer-CAL gestattet einem Benutzer (der ein beliebiges Gerät verwendet) Windows-Sitzungen<br />

auf einem Server durchzuführen.<br />

Nachdem der Markt über lange Zeit hinweg weitgehend Citrix überlassen wurde, gewinnt<br />

Microsoft im Markt für Terminalserver gegenüber Citrix zunehmend an Bedeutung. In<br />

großen Umgebungen bleibt Citrix jedoch Marktführer und wird durch eine strategische<br />

Partnerschaft mit Microsoft unterstützt.<br />

Remote Desktop Protocol (RDP) ist das Protokoll, das die Microsoft Terminaldienste<br />

verwenden, um eine sichere Kommunikation zwischen dem Terminal und dem Terminalserver<br />

zu gewährleisten. 2006 wurde RDP 6.0 für Windows Vista veröffentlicht. RDP<br />

bietet vielfältige Möglichkeiten. So können die beanspruchte Bandbreite reduziert, Ressourcen<br />

mit anderen geteilt und mehrerer Bildschirme am Terminal eingesetzt werden.<br />

Der Terminalserver von Microsoft ermöglicht Remotecomputern den Zugriff auf Windows<br />

basierte Programme, die unter Windows Server 2003 ausgeführt werden. Dabei bietet<br />

der Server die grundlegenden Funktionen, um Programme auszuführen, Dateien zu<br />

speichern oder Netzwerkressourcen zu nutzen. Mit Windows Server 2003 ist es möglich,<br />

einfache Audiodaten zur Ausgabe am Client bereitzustellen, Gruppenrichtlinien in die<br />

Sessions zu integrieren und Bildschirme mit beliebiger Auflösung und Farbtiefe anzusteuern.<br />

Auch die Übertragung von Druck- und Audiosignalen zu lokalen Geräten, die<br />

direkt am Terminal angeschlossen sind, ist möglich. Des Weiteren besteht die Möglichkeit,<br />

Verbindungen temporär zu unterbrechen, ohne dass sich der Nutzer am Terminalserver<br />

abmelden muss.<br />

489 http://www.pl-berichte.de/berichte/lt2004-nxartikel.html<br />

Seite 494


Die Konfiguration von Anwendungen für den Terminalserverbetrieb über Gruppenrichtlinien<br />

vereinfacht die Verwaltung der Windows Terminalserver. Administratoren müssen<br />

Einstellungen daher nicht mehr pro Server vornehmen, sondern können dies übergreifend<br />

an zentraler Stelle erledigen. Ein Active Directory Dienste Interface (ADSI)-Provider<br />

erlaubt programmgesteuerten Zugriff auf benutzerabhängige Terminaldienste-<br />

Einstellungen wie zum Beispiel Homedirectory, Berechtigungen und ähnliches. Neben<br />

der Bereitstellung von Anwendungen bietet RDP Möglichkeiten, den Terminal entfernt zu<br />

verwalten und Probleme des Anwenders schnell zu beheben.<br />

Das RDP bietet Verschlüsselungsmöglichkeiten (128 Bit-Schlüssel) und die Möglichkeit<br />

zur Smartcard-Authentisierung. RDB besitzt allerdings, aufgrund der Tatsache, dass<br />

Client und Server sich nicht gegenseitig authentisieren müssen, eine Schwäche, welche<br />

die Möglichkeit eines Man-in-the Middle Angriffs ermöglichen kann. Mit der <strong>Version</strong> RDP<br />

v5.2 weist sich der Server dem Client gegenüber zwar mit einem Zertifikat aus, sodass<br />

die Angriffe hätten unterbunden werden müssen. Doch dies gelang letztlich nur eingeschränkt,<br />

da die verwendeten Schlüssel ausgelesen werden konnten. Microsoft empfiehlt<br />

daher die RDP-Kommunikation zusätzlich über TLS abzusichern, da hiermit eine Authentisierung<br />

gewährleistet ist. 490<br />

Microsoft bietet sowohl die Server- (Windows Server 2000 und 2003) als auch die<br />

Clientsoftware ausschließlich für Windows Betriebssysteme an. Es existieren Clients für<br />

die meisten Windows-<strong>Version</strong>en (auch Pocket-PC), Mac OS X, Linux und FreeBSD.<br />

Über das Portable Operating System Interface (POSIX) lassen sich auch (PO-<br />

SIX-konforme Linux- und Unix-Anwendungen bereitstellen.<br />

Zusammenfassend ist zu bemerken: Die Kaufentscheidung für Terminalserverlösungen<br />

unter Windows wird dadurch erschwert, dass sich die Grenze zwischen den Microsoft-<br />

Basisfunktionen und den Add-ons permanent verschiebt. Der Markt für Zusatzprodukte<br />

wird klar von Citrix mit dem Produkt Presentation Server dominiert. Erschwert wird die<br />

Entscheidung auch dadurch, dass mit jeder neuen Windowsversion auch die Fähigkeiten<br />

des Terminalservers und der dazugehörigen Clients erweitert werden, da sich Microsoft<br />

im Markt für Softwareinfrastruktur gegen andere Serversysteme, in zunehmendem Maße<br />

aus dem Linuxumfeld, behaupten muss. Gleichzeitig geraten die Anbieter von ergänzender<br />

Software unter Druck und sind gezwungen, ihre Produktpalette ständig um neue<br />

Features und Programme zu erweitern.<br />

Dieses Dilemma setzt sich fort: Während sich einerseits die gebotenen Basisfunktionen<br />

mit verschiedenen <strong>Version</strong>en von Windows und in Abhängigkeit der geplanten Anwendung<br />

ändern, beklagen sich andererseits die Kunden über kostenpflichtige Features, da<br />

die Standarddienste durch Reduzierung der Funktionalität aus Gründen des Lizenzmarketings<br />

auf den Windows Serverbetriebssystemen zu wenig Nutzen bieten.<br />

Insgesamt führten die Verbesserungen an den Terminaldiensten jedoch dazu, dass der<br />

Anteil der Installationen, die ohne fremde Add-ons auskommen, größer wird. In Windows<br />

Server 2003 wurde die Ausstattung des Terminalservers weiter verbessert, sodass für<br />

seine Nutzung weder kostspielige Zusatzsoftware oder kostenlose Alternativen (VNC<br />

usw.) erforderlich sind. Nur bei größeren Installationen bedarf es weiterhin der Unterstüt-<br />

490 http://www.heise.de/security/artikel/print/61945<br />

Seite 495


zung durch Add-ons von Drittanbietern, in der Regel durch den Citrix Presentation Server.<br />

1.4 Citrix Presentationserver<br />

Citrix ist eine US-amerikanische Softwarefirma, die insbesondere durch das Produkt<br />

Terminalserver bekannt wurde und lange Zeit als Synonym für Terminalserver galt. Citrix<br />

kooperiert sehr eng mit Microsoft. Diese Kooperation umfasst eine technische Zusammenarbeit<br />

im Bereich neuer Erweiterungsmöglichkeiten des Windows Terminalserver<br />

und die gegenseitige Lizenzierung von Patenten. Darüber hinaus hat Citrix Zugriff auf<br />

den Quellcode des Windows-Servers.<br />

Obwohl die Citrix-Produkte nach wie vor sehr verbreitet sind und ein hohes Ansehen in<br />

großen, heterogenen Netzen genießen, die komplexe Managementanforderungen nach<br />

sich ziehen, sieht sich Citrix einer wachsenden Konkurrenz (u.a. Microsoft Terminalservers)<br />

gegenüber.<br />

Der Citrix Presentation Server ist Nachfolger des Marktführers Citrix Metaframe und<br />

dient der Bereitstellung von Windows-Anwendungen. Mit Metaframe konnten mehrere<br />

Terminalserver logisch zu einer Serverfarm zusammengeschlossen werden. Der Anwender<br />

(Client) sieht hierbei nicht einen einzelnen Server sondern sogenannte veröffentlichte<br />

Anwendungen, mit denen er sich verbindet. Auf welchem Server dann seine Anwendungen<br />

ausgeführt werden, entscheidet ein Mechanismus innerhalb der Serverfarm.<br />

Diese Architektur gewährleistet auch Verfügbarkeit bei Ausfall eines Servers.<br />

Der Presentation Server von Citrix erfordert neben den Lizenzen für Microsoft Windows<br />

Server/Terminalserver die eigenen Server- und Client-Lizenzen. Citrix Presentation Server<br />

unterliegt wie alle Produkte aus dem Hause Citrix dem „Concurrent User" Lizenzmodell,<br />

das heißt es müssen nur so viele Lizenzen erworben werden, wie Anwender gleichzeitig<br />

auf dem Presentation Server arbeiten sollen. Die Citrix Presentation Server-<br />

Software selbst darf auf beliebig vielen Servern installiert werden.<br />

ICA (Independent Computing Architecture), so der Name des verwendeten Protokolls,<br />

wird ausschließlich für die Kommunikation zwischen Terminalserver und Client genutzt.<br />

Neben der Übertragung von Grafik- und Tastatur-/Mauseingabedaten unterstützt ICA<br />

ebenfalls die Übertragung von Audiodaten, den Zugriff auf lokale Speicher oder angeschlossene<br />

Geräte, wie zum Beispiel einen Scanner oder USB-Sticks. Generell benötigt<br />

das ICA-Protokoll sehr wenig Bandbreite (10-20 kbps für einfache Anwendungen), da<br />

u.a. nur tatsächlich geänderte Grafikdaten oder Maus- und Tastatureingaben des Nutzers<br />

übertragen werden. Es können auch GPRS- oder GSM-Verbindungen genutzt werden,<br />

für deren Endgeräte zum Beispiel Smartphones, ebenfalls Clientanwendungen,<br />

verfügbar sind.<br />

Die 2007 erschienene <strong>Version</strong> 4.5 des Citrix Presentation Server wird in drei Varianten<br />

angeboten, die jeweils auf einem Windows Terminalserver aufsetzen:<br />

Seite 496


� Advanced Edition:<br />

Die Advanced Edition ist auf die Anforderungen von mittleren Umgebungen ausgelegt.<br />

Eine sichere Bereitstellung der Windowsanwendungen über das Netzwerk<br />

ist ohne jegliche Modifikation der Anwendungen sofort möglich. Neben zahlreichen<br />

anderen Funktionen stellt die Advanced Edition ausgereiftes Load-<br />

Balancing zum Aufbau von leistungsstarken Serverfarmen zur Verfügung. Über<br />

das Load-Balancing wird erreicht, dass einzelne Sessions gleichmäßig auf alle<br />

Citrix Server einer Farm verteilt werden. Dies geschieht in Abhängigkeit von der<br />

aktuellen Auslastung des einzelnen Servers. Gemessen werden zum Beispiel<br />

CPU-Last, verfügbarer Arbeitsspeicher und Netzwerk- und Plattenzugriffe. So<br />

können auch Server mit sehr unterschiedlicher Leistungsfähigkeit zu einer Farm<br />

zusammengeschlossen werden.<br />

� Enterprise Edition:<br />

Die Enterprise Edition ist auf die Anforderungen von größeren Umgebungen ausgelegt.<br />

Sie bietet zusätzlich ein Application-Streaming, mit dem zentral konfigurierte<br />

und verwaltete Windows-Anwendungen auf Benutzerdesktops oder weitere<br />

Presentation Server im gesamten Unternehmen gestreamt und dort zur Ausführung<br />

bereitgestellt werden können. Beim Application-Streaming werden Desktop-<br />

Anwendungen „on demand" auf das Endgerät übertragen. Dort werden sie in einer<br />

geschützten Umgebung lokal ausgeführt, ohne selbst am Endgerät installiert<br />

sein zu müssen. Dieses „Pull basierte" Bereitstellungsmodell ist eine Alternative<br />

zu lokalen Desktop-Installationen auf den einzelnen Endgeräten. Die gestreamten<br />

Applikationen laufen dort in einer isolierten Umgebung auf dem Endgerät.<br />

Damit werden von vornherein <strong>Version</strong>skonflikte auf dem Endgerät vermieden, da<br />

die gestreamte Anwendung mit anderen installierten Applikationen nicht in Berührung<br />

kommt. Beim Streaming werden die einzelnen Programmkomponenten jeweils<br />

nach Bedarf heruntergeladen und lokal ausgeführt. Wenn die Anwendung<br />

einmal auf das Endgerät heruntergeladen wurde, kann sie auch im Offline-Modus<br />

verwendet werden. Sobald wieder eine Verbindung zum Server hergestellt wird,<br />

wird die Anwendung automatisch mit dem zuvor gespeicherten Anwendungsprofil<br />

auf dem Server verglichen und gegebenenfalls automatisch mit bereitgestellten<br />

Updates aktualisiert. Die Enterprise Edition enthält zusätzliche Verwaltungswerkzeuge<br />

zur Unterstützung von großen Server-Farmen.<br />

� Platinum Edition:<br />

Die Platinum Edition beinhaltet darüber hinaus weitergehende Funktionen für IT-<br />

Sicherheit und Performance Management.<br />

Die primäre Authentisierung erfolgt über die Credentials von Microsoft. Desweiteren<br />

kann auch die Authentisierung über biometrische Merkmale oder Smartcards erfolgen.<br />

Die Verbindung zwischen Server und Client sind SSL/TLS gesichert.<br />

Alle drei Citrix Presentation Server 4.5 Editionen unterstützen die Microsoft Plattformen<br />

Windows Server 2003 und Windows Server 2003 x64. Zur Unterstützung von Windows<br />

2000 Server-Umgebungen sind in allen Editionen weiterhin Presentation Server 4.0 Installationsmedien<br />

enthalten.<br />

Seite 497


Presentation Server Enterprise und Platinum Edition beinhalten zusätzlich Presentation<br />

Server für UNIX-Betriebssysteme und bieten Unterstützung für Sun Solaris, IBM AIX und<br />

Hewlett-Packard HP-UX.<br />

Die Clientanwendung heißt Citrix-ICA-Client und ist für eine Vielzahl von Betriebssystemen,<br />

zum Beispiel sämtliche Windows Betriebssysteme, DOS, Java, Linux, weitere<br />

Unix-Derivate und Handheldsysteme, verfügbar.<br />

Zusammenfassend kann festgehalten werden: Der Citrix Presentation Server ist insbesondere<br />

für große Netze, die ausgefeilte Management-Konzepte erfordern, von großer<br />

Bedeutung. Die Protokolle RDP und ICA können als annähernd funktionsgleich angesehen<br />

werden. Gegenüber anderen Anbietern von Terminallösungen hat Citrix den Vorteil,<br />

Client-Anwendungen für fast jede Plattform (aus einer Hand) anzubieten, wobei jedoch<br />

neben den Citrix-Lizenzen immer auch die Lizenzen von Microsoft (mit-) erworben werden<br />

müssen.<br />

2 Migrationspfade<br />

Wie bereits in der Einleitung des Themas Terminal-Dienste und Client-Konzepte erwähnt,<br />

sind Terminalserver und deren zugehörige Clients kein klassisches Migrationsthema<br />

in dem Sinne, dass Daten, Konten, Einstellungen etc. von einer Umgebung in<br />

eine andere migriert werden müssen. Dem Einsatz von Terminalservern sind grundsätzliche,<br />

strategische Entscheidungen vorgelagert, mit denen Ziele wie zum Beispiel eine<br />

Verringerung des Administrationsaufwands, eine Erhöhung der Datensicherheit oder<br />

geringere Hardware- und Energiekosten verfolgt werden (siehe auch Einleitung zu diesem<br />

Themenblock – Kapitel III.E 1). Der Einsatz von Terminalservern ist in diesem Zusammenhang<br />

dann Teil einer grundlegenden strategischen Entscheidung, die häufig die<br />

Konsolidierung und Neuausrichtung der IT-Landschaft zum Inhalt hat. Andererseits kann<br />

der Einsatz von Terminalservern ein Hilfsmittel sein, um einen mittel- bis langfristig angelegten<br />

strategischen Wechsel in der IT-Landschaft durchzuführen, wie zum Beispiel ein<br />

durchgehender Wechsel des Betriebssystems. Im Rahmen solch grundsätzlicher Entscheidungen<br />

nehmen Terminalserver eine entscheidende Rolle bei der Unterstützung<br />

von Migrationen ein. Sie können dort eingesetzt werden, wo Anwendungen z. B. einer<br />

Windows-Umgebung in einer Linux- beziehungsweise OSS-Umgebung nicht lauffähig<br />

sind. Wenn auf diese Anwendungen nicht verzichtet werden kann, können diese den<br />

Benutzern über einen Terminalserver zur Verfügung gestellt werden. So wird eine in der<br />

Regel aufwändige und zeitintensive Neuentwicklung umgangen und eine effiziente Umstellung<br />

ermöglicht. Langfristig besteht hierbei aber dann das Ziel, diese Anwendungen<br />

im Rahmen der laufenden Neubeschaffung unter Einhaltung der Prinzipien der Wirtschaftlichkeit<br />

und des Investitionsschutzes durch Anwendungen zu ersetzen, die kompatibel<br />

zur neuen IT-Infrastruktur sind. Damit werden die eingesetzten Terminalserver überflüssig.<br />

Sind Terminalserver aber grundlegender Bestandteil einer IT-Infrastruktur, dann wird ein<br />

Wechsel der eingesetzten Terminalservertechnologie in der Regel durch ähnliche strategische<br />

Entscheidungen getrieben wie ein grundlegender Wechsel des Betriebssystems<br />

oder der darauf aufsetzenden Software. Die Gründe für solche Entscheidung können<br />

ganz unterschiedlich sein und sollen hier nicht näher betrachtet werden (siehe Modul I)<br />

Seite 498


Die Entscheidung selbst ist der erste wichtige Schritt der Migration. Der zweite Schritt ist<br />

die Wahl der neuen Terminalservertechnologie. Diese hängt zum einen sicherlich auch<br />

von Gründen ab, die zu einer Wechselentscheidung geführt haben, und zum anderen<br />

von Anforderungen, die an die Technologie gestellt werden.<br />

Der Versuch einer Gegenüberstellung von Funktionen einzelner Terminalserverlösungen<br />

ist aufgrund der Vielzahl der Funktionen und der Tatsache, dass sich fehlende Funktionen<br />

häufig durch den Einsatz weiterer Tools ausgleichen lassen, nur sehr schwer möglich.<br />

Die Grundfunktionen der Bereitstellung von Anwendungen auf einem Client-<br />

Rechner werden prinzipiell von allen vorgestellten Lösungen erfüllt. Unterschiede, die<br />

der einen oder anderen Lösung den Vorzug geben, liegen oft in den spezifischen Anforderungen<br />

z. B. einzelner Behörden. Angefangen bei den Anwendungen, über die Anzahl<br />

paralleler Sitzungen, bis hin zum Client-Betriebssystem oder am Client notwendiger<br />

Hardware (z. B. die Möglichkeit mehrere Monitore an einem Client anzuschließen) ergeben<br />

sie in jeder Organisation Anforderungen, die eine eingehende Analyse auch im<br />

Hinblick auf zukünftige Anforderungen erfordern. Zudem erweist sich der Markt für Terminalserverlösungen<br />

als sehr dynamisch und intransparent. So kommt es beispielsweise<br />

zu Überschneidungen mit Konzepten, die unter dem Schlagwort Virtualisierung diskutiert<br />

werden.<br />

Die folgende Übersicht der Terminalserverlösungen, die im Abschnitt III.E 1 betrachtet<br />

werden, hat daher nur den Charakter einer ersten Orientierung, um dem Leser einen<br />

Eindruck über mögliche Beurteilungskriterien zu geben. Es besteht kein Anspruch auf<br />

Vollständigkeit. Auch die Beurteilung einzelner Kriterien kann beim Lesen bereits überholt<br />

sein.<br />

LTSP NoMachine<br />

NX<br />

Seite 499<br />

Microsoft<br />

Terminalserver<br />

2000<br />

Microsoft<br />

Terminalserver<br />

2003<br />

Lokale Drucker X 491 X X X X<br />

Lokale Speichermedien,<br />

USB-Sticks<br />

X X X X X<br />

Lokale Audioausgabe X X X X X<br />

Load Balancing<br />

(Farm)<br />

Geringe Anforderungen<br />

ans Netz (Maßnahmen<br />

bei Unterbrechungen)<br />

492 X X X X<br />

X X X X<br />

491 X = (tendenziell) erfüllt<br />

492 Es befinden sich Entwicklungen in der Erprobung. siehe z. B.<br />

http://www.mindtouchsoftware.com/blog/2007/04/30/ltsp/.<br />

Citrix<br />

Presentationserver


Nutzung von Anwendungen<br />

durch den<br />

Client ohne Netzzugang<br />

Authentifizierung LDAP 493 ,<br />

SSH<br />

Active Directory Unterstützung<br />

LTSP NoMachine<br />

NX<br />

Seite 500<br />

Microsoft<br />

Terminalserver<br />

2000<br />

Microsoft<br />

Terminalserver<br />

2003<br />

X X<br />

LDAP, SSH MS Credentials<br />

MS Credentials<br />

X 494 X 495 X X X<br />

Citrix<br />

Presentationserver<br />

MS Credentials<br />

Verschlüsselung SSH SSH SSL/TLS SSL/TLS SSL/TLS<br />

Client-<br />

Betriebssysteme<br />

Client – Protokollunterstützung<br />

Server-<br />

Betriebssysteme<br />

gängige<br />

(Linux,<br />

Windows<br />

XP, OS X)<br />

X-Window,<br />

RDP<br />

gängige<br />

(Linux,<br />

Windows<br />

XP, OS X)<br />

X-Window,<br />

NX, RDP<br />

Linux Linux, Solaris<br />

Lizenzkosten keine Abhängig<br />

von Anzahl<br />

installierter<br />

Server 497<br />

Betriebssystem-basis<br />

für Terminal-<br />

Anwendungen<br />

Betrieb des Clients<br />

ohne Festplatte (Thin<br />

Client)<br />

Windows-<br />

<strong>Version</strong>en,<br />

OS X, Linux<br />

Windows-<br />

<strong>Version</strong>en,<br />

OS X, Linux<br />

(alle) gängigen<br />

(DOS, Windows,<br />

Java,<br />

Linux<br />

Handheld<br />

etc.)<br />

RDP RDP RDP, ICA<br />

Win 2000 Win 2003 Win 2003,<br />

2003 x64,<br />

(Solaris,<br />

AIX, HP-<br />

UX) 496<br />

Server und<br />

Client (Benutzer<br />

/<br />

Geräte) –<br />

Lizenzen<br />

Server und<br />

Client (Benutzer<br />

/<br />

Geräte) –<br />

Lizenzen<br />

Microsoft-<br />

Lizenzen<br />

+<br />

Abhängig<br />

von Anzahl<br />

paralleler<br />

Sitzungen<br />

Linux Linux Windows Windows Windows,<br />

(Unix)<br />

X X<br />

Tabelle 77: Übersicht der Funktionen verschiedener Terminalserverlösungen<br />

493<br />

http://www.pcxperience.org/thinclient/documentation/ldap.html<br />

494<br />

Werden nicht von allen <strong>Version</strong>en unerstützt (nur NX Enterprise Server<br />

NX Advanced Server)<br />

495<br />

http://www.linux-magazin.de/content/view/full/13549/month/12/year/2007<br />

496<br />

497<br />

Nur in der Platinum-Edition.<br />

http://www.linuxland.de/store/em99/EM99-202-EN/de/?view=desc


An dieser Stelle soll nochmals betont werden, dass sich nicht jede Anwendung problemlos<br />

über einen Terminalserver zugänglich machen lässt. In der Tendenz sind 3D-grafik-<br />

und multimedialastige Anwendungen für den Terminalserverbetrieb ungeeigneter. Der<br />

Aufwand ist ex-ante allerdings schwer prognostizierbar oder auch nur zum Beispiel nach<br />

Programmier- oder Administrationsaufwand kategorisierbar, da die Probleme stark durch<br />

die vorhandene Infrastruktur und die vorhandene Parametrisierung bestimmt werden. Im<br />

Rahmen einer geplanten Migration (von Client- und Serverbetriebssytemen und Anwendungen)<br />

ist neben der Aufwandsschätzung für die Einrichtung von Terminalservern insbesondere<br />

die Einrichtung möglichst realitätsnaher Testumgebungen sehr zu empfehlen,<br />

da sich das Verhalten unter Last und eventuelle Inkompatibilitäten z. T. nur schwer<br />

vorhersagen lassen.<br />

In erheblichem Maße werden Terminalserverentscheidungen auch vom vorhandenen<br />

Knowhow beeinflusst. So existieren oft wenig bekannte Lösungen, die als Zusatzsoftware<br />

funktionale Anforderungen abdecken. Gerade im OSS-Umfeld empfiehlt sich daher<br />

eine genauere Sondierung des Marktes.<br />

Nachdem eine Auswahl für eine neue Terminalserverlösung getroffen wurde, welche den<br />

definierten Anforderungen gerecht wird, stellt sich die Frage des Vorgehens bei der Migration.<br />

Diese stellt sich insbesondere dann, wenn es darum geht, einen Wechsel des<br />

Betriebssystems durchzuführen. Denn eigentlich nützt es nichts, lediglich einen Wechsel<br />

der Terminalserverlösung durchzuführen, wenn die bestehenden Anwendungen nicht<br />

damit zurecht kommen. Prinzipiell müssen hier ähnliche Vorgehensmodelle in Betracht<br />

gezogen werden, wie sie auch bei einem Wechsel des Betriebssystems in Umgebungen<br />

ohne Terminalserver zur Verfügung stehen (siehe Abschnitt I.D 2).<br />

Aus der vorangegangenen Darstellung wird deutlich, dass ein Wechsel einer Terminalservertechnologie,<br />

welche Gründe auch immer zu einer entsprechenden Entscheidung<br />

führen, keinen grundlegenden Unterschied zu anderen Migrationen darstellt. Letztendlich<br />

ergeben sich die Detailunterschiede aus den speziellen Entscheidungen und Anforderungen<br />

der jeweiligen Behörde.<br />

Im Folgenden werden mögliche Migrationspfade in erster Linie im Hinblick auf notwendige<br />

Voraussetzungen und bemerkenswerte Funktionsunterschiede untersucht.<br />

2.1 Migration von Microsoft Windows Terminal Server nach NoMachine NX<br />

Server<br />

Dem Wechsel von einem Microsoft Terminalserver auf einen NoMachine NX Server geht<br />

in der Regel die Entscheidung für einen Wechsel der Client- und der Serverbetriebssysteme<br />

von Microsoft zu Linux voraus beziehungsweise diese geht mit der Entscheidung<br />

zu NoMachine NX Server einher. Die Entscheidung zur Migration auf Linux erfordert<br />

dabei nicht zwingend die Ablösung des Windows Terminalserver, da Microsoft Clients für<br />

Linux anbietet. Zudem gibt es mit rdesktop einen OSS-Client, der den meisten Linux-<br />

Distributionen bereits beiliegt und den binären MS-Client ersetzen kann.<br />

Spätestens wenn auch Linux-Anwendungen über einen Terminalserver bereitgestellt<br />

werden sollen, müssen Alternativen gefunden werden. Hier zeichnet sich der NoMachine<br />

NX Server zum einen durch seine Performance wegen des NX-Protokolls, das nur wenig<br />

Seite 501


Bandbreite benötigt, und zum anderen durch ein Lizenzmodell, das Kosten pro Server<br />

und nicht pro Verbindung verursacht, aus.<br />

Des Weiteren eignet sich der NoMachine NX Server auch hervorragend zur Integration<br />

beider Welten. Der kostenlose NX-Client unterstützt zum einen neben dem NX- und dem<br />

X-Protokoll auch noch das von Microsoft verwendete Remote Desktop Protokoll (RDP).<br />

Zudem lassen sich Anwendungen, die von einem Windows Terminalserver über das<br />

RDP bereitgestellt werden, über Agenten in den NX-Server integrieren. Der NX-Server<br />

kann die Anwendung daraufhin über das sehr effiziente NX-Protokoll den NX-Clients zur<br />

Verfügung stellen. 498<br />

Die Hauptbeweggründe für einen Wechsel lassen sich also in<br />

� genereller Wechsel zu Linux,<br />

� Bereitstellung von Linux-Anwendungen und<br />

� Integration von Anwendungen aus Windows- und Linuxumgebungen<br />

zusammenfassen.<br />

Die Multifunktionalität der Lösung darf aber nicht die Bedeutung der Aufgabe einschränken,<br />

am Anfang des Einsatzes von Terminalservern immer eine Bestandsaufnahme aller<br />

Funktionen, Dienste und Programme durchzuführen. Nur auf dieser Basis kann dann<br />

untersucht werden, für welche eine Ablösung durch Open Source erfolgen kann und<br />

welche aus technischen oder wirtschaftlichen Gründen heraus beibehalten werden. 499<br />

Auch hier gilt, dass zum Beispiel Office-Anwendungen und ERP-Clients, die in der Regel<br />

weniger 3D-Darstellungen oder hoch auflösende Grafiken erfordern, sich eher für den<br />

Terminalservereinsatz eignen als CAD-Anwendungen oder Anwendungen zur Bearbeitung<br />

von Audio- oder Video-Daten.<br />

Wie bereits bei der Vorstellung des NX-Servers erwähnt, zeichnet sich NX durch<br />

� eine effiziente Kompression des normalen X-Verkehrs,<br />

� einen intelligenten Mechanismus zum Speichern und Wiederverwenden (Cachen)<br />

bereits übertragener Daten und<br />

� eine starke Reduzierung zeitraubender X „round-trips―<br />

aus und ermöglicht so eine kaum eingeschränkte Arbeitsgeschwindigkeit des Benutzers<br />

und eine nur geringe Beanspruchung der Bandbreite des Netzes. 500<br />

Bei einem Wechsel des Teminalservers von Microsoft zu NoMachine ist zu beachten,<br />

dass auf jeden Client-Rechner ein NX-Client ausgerollt werden muss, sofern dieser nicht<br />

als Web-Client laufen soll. Da der NX-Client nicht OpenSource ist, haben gängige Linux-<br />

Distributionen in der Regel keinen NX-Client installiert. Auf Windows-Rechnern befindet<br />

sich standardmäßig ohnehin kein NX-Client. Im Gegensatz dazu ist der Client zur Verbindung<br />

mit dem Windows Terminalserver bei aktuellen Windows-Rechnern dabei.<br />

498 http://www.pl-berichte.de/berichte/lt2004-nxartikel.html<br />

499 http://www.dtnet.de/Loesungen/OSS-<br />

Migration/OpenSourceEinfuehrunginUnternehmen/index.html<br />

500 http://www.pl-berichte.de/berichte/lt2004-nxartikel.html<br />

Seite 502


Die Installation der Clients gestaltet sich allerdings sehr einfach. Für alle Betriebssysteme<br />

werden die Standard-Installationsarten verwendet (.exe unter Windows, .rpm oder<br />

.deb – Dateien für Linux).<br />

2.2 Migration von Microsoft Windows Terminal Server 2000 nach Microsoft<br />

Windows Terminal Server 2003<br />

Ein Wechsel von Windows Terminalserver 2000 zu Windows Terminalserver 2003 wird<br />

in erster Linie durch den Wechsel des darunter liegenden Servers bestimmt. Gegenüber<br />

dem Windows 2000 Server hat der Windows Server 2003 insbesondere in den Bereichen<br />

Hochverfügbarkeit, Sicherheit, Skalierbarkeit und Administration/Wartung gewonnen;<br />

diese unterstützen indirekt auch den Terminalserver:<br />

� Hochverfügbarkeit<br />

Neben dem Microsoft Cluster Service und Network Load Balancing, das seit<br />

Windows 2000 bekannt ist, tragen zusätzliche Monitoring- und Prozessrecycling-<br />

Features zur Verbesserung bei.<br />

� Sicherheit:<br />

Wichtige Änderungen im Sicherheitsbereich betreffen die Definition von Serverrollen.<br />

Dabei werden nur die von der jeweiligen Serverrolle benötigten Dienste installiert.<br />

Die kritische Funktionalität 501 muss explizit frei geschaltet werden. Zusammen<br />

mit dem aus Windows 2000 Server bewährten und natürlich auch in<br />

Windows Server 2003 vorhandenen Sicherheitsmechanismen wie Kerberos, PKI,<br />

SSL, IPSec, und so weiter lassen sich sichere Systeme aufbauen.<br />

� Skalierbarkeit<br />

Um auch für Lastspitzen, zum Beispiel bei Internet-Anwendungen, gut gerüstet<br />

zu sein, hat sich in der Vergangenheit die Verwendung von Network Load Balancing<br />

Clustern bewährt. Diese Funktionalität ist in Windows Server 2003 durch ein<br />

neues grafisches Benutzerinterface einfacher zu bedienen.<br />

� Administration und Wartung<br />

Die von Windows Server 2003 bereitgestellte Funktionalität ist um einige Stufen<br />

granularer sowie auf die Bedürfnisse im realen Betrieb besser abgestimmt, als<br />

die von den Bordmitteln vorangegangener MS-Serverbetriebssysteme bekannten<br />

Tools. 502<br />

Gegenüber Terminalserver 2000 sind beim Terminalserver 2003 insbesondere folgende<br />

Erweiterungen hervorzuheben: 503<br />

� Bessere Skalierbarkeit<br />

Der Terminalserver 2003 unterstützt mehr Benutzer pro Server als Windows<br />

501 Als Beispiel seien die Frontpage Extensions im IIS genannt.<br />

502 Einen Vergleich der Funktionalitäten findet man unter<br />

http://www.microsoft.com/germany/windowsserver2003/uebersicht/vergleich.mspx oder<br />

http://www.microsoft.com/germany/msdn/library/windows/windowsserver2003/WindowsSer<br />

ver2003AlsAnwendungsplattform.mspx?mfr=true<br />

503 http://msdn2.microsoft.com/en-us/library/Aa383015.aspx;<br />

http://www.abacus.ch/downloads/pages/2004-03/s58-59.pdf<br />

Seite 503


2000 Terminalserver. Ebenso werden Technologien zum Ausgleich von Netzwerklasten<br />

und von Serverlasten unterstützt.<br />

� Einfachere Verwaltbarkeit<br />

Über die Einbindung von Gruppenrichtlinien bietet Terminalserver 2003 bessere<br />

Möglichkeiten, einen Client remote zu verwalten. Über WMI (Windows Management<br />

Instrumentation) Provider mit Schreib- und Lesezugriff stehen eine Vielzahl<br />

von Verwaltungsmöglichkeiten zur Verfügung.<br />

� Benutzerfreundliche Remote-Desktop-Verbindung<br />

Die Remote-Desktop-Verbindung ist der Terminalclient von Windows. Eine neue<br />

Benutzeroberfläche ermöglicht eine leichtere Bedienung, ein Speichern von Verbindungseinstellungen,<br />

eine dynamische Anpassung an die verfügbare Bandbreite<br />

und so weiter.<br />

� Erweitertes RDP<br />

Windows Terminalserver 2003 unterstützt die RDP 5.1, das mit dem Servicepack<br />

1 für Windows XP ausgeliefert wurde. Dies bedeutet eine Vielzahl von Erweiterungen<br />

gegenüber RDP 5.0, das von Windows Terminalserver 2000 genutzt wurde.<br />

Bei der Verwendung von RDP 5.1 stehen im Rahmen der Session lokale<br />

Ressourcen zur Verfügung, zum Beispiel das Dateisystem des Clients, Audioausgabe,<br />

serielle Anschlüsse, Drucker oder Zwischenablage. So können Dateien<br />

auf dem lokalen Client geöffnet, gespeichert oder gedruckt werden, auch wenn<br />

die Anwendung auf dem entfernten Terminalserver läuft. Mit RDP 5.1 können zudem<br />

eine Farbtiefe von 256 Farben bis zu True Color ausgewählt und Bildschirmauflösungen<br />

von 640 x 480 bis zu 1600 x 1200 festgelegt werden. 504<br />

Ein Wechsel des Terminalservers von der <strong>Version</strong> 2000 auf 2003 ist insgesamt nur ratsam,<br />

wenn die erweiterten Funktionen benötigt werden. Clientseitig stehen die erweiterten<br />

Möglichkeiten, Multimediaanwendungen zu nutzen, die eine hohe Bildschirmauflösung<br />

und große Farbtiefe erfordern oder die Ausgabe von Audiodaten verlangen, im<br />

Vordergrund. Serverseitig kann auch die Entscheidung einer Serverkonsolidierung zum<br />

Beispiel der Ersatz mehrerer kleinerer Server durch einen leistungsfähigeren Server einen<br />

Wechsel sinnvoll machen, insbesondere vor dem Hintergrund, dass Microsoft den<br />

Support für Windows 2000 bereits aufgekündigt hat.<br />

Bei einem Wechsel des Terminalservers von 2000 nach 2003 ist des Weiteren darauf zu<br />

achten, dass die Client-Software aktualisiert wird, damit die erweiterten Funktionen des<br />

RDP genutzt werden können. Hierbei handelt es sich um die Remote Desktop Connection<br />

Software, die für alle neueren Windows-<strong>Version</strong>en verfügbar ist. 505<br />

Die Migration von Windows 2000 Server auf Windows Server 2003 verläuft in der Regel<br />

„out of the box― und ist gut dokumentiert. 506 Probleme können in Abhängigkeit von der<br />

definierten Serverrolle, der Parametrisierung und gegebenenfalls installierter Zusatz-<br />

504<br />

http://www.microsoft.com/technet/prodtechnol/windowsserver2003/de/library/ServerHelp/<br />

7750ed9c-f468-484e-a08f-ccab73ddd3fe.mspx?mfr=true<br />

505<br />

http://www.microsoft.com/downloads/details.aspx?displaylang=de&FamilyID=80111F21-<br />

D48D-426E-96C2-08AA2BD23A49<br />

506<br />

Eine Seite mit Microsoft-Hinweise findet man unter<br />

http://www.microsoft.com/windowsserver2003/upgrading/w2k/default.mspx<br />

Seite 504


software auftreten, wobei sich diese nicht generell vorhersagen lassen. Erfahrungsgemäß<br />

kommt es so gut wie nie aufgrund der Terminalserver-Einstellungen oder -<br />

Funktionen zu Problemen.<br />

2.3 Von Microsoft Windows Terminal Server nach Citrix Presentationserver<br />

Gartner Research hat in einer Studie vom Juli 2004 den Windows Terminalserver 2003<br />

und den damaligen Citrix MetaFrame Terminalserver miteinander verglichen. Danach ist<br />

der Windows 2003 Terminalserver ausreichend, wenn nur Windows Applikationen genutzt<br />

werden, weniger als 800 Benutzer angeschlossen sind, nicht mehr als 10 Anwendungen<br />

verwendet werden und die Microsoft Windowsserver Management Funktionalität<br />

eingesetzt wird. 507<br />

Eine spätere Untersuchung der Tolly Group im Auftrag von Citrix bestätigte die Aussagen<br />

von Gartner Research. Neben einer leichten generellen Verbesserung der Geschwindigkeit<br />

lagen die Vorteile des Citrix Presentation Server gegenüber dem Windows<br />

2003 Terminalserver insbesondere im Bereich Leistungsstabilität auch bei höherer Serverauslastung.<br />

Während sich die Antwortzeiten des Windows Terminalserver 2003 bei<br />

steigender Last überproportional verlängerten, blieben diese beim Presentation Server<br />

sehr stabil. 508<br />

Diese Aussagen gelten bis heute. Bei dem Citrix Presentation Server handelt es sich um<br />

die große Lösung im Bereich der Terminaldienste. So wurden beispielsweise im Bereich<br />

der öffentlichen Verwaltung bei der LVA Rheinprovinz, einem Träger der gesetzlichen<br />

Rentenversicherung, ca. 5000 Benutzer über mehrere Standorte mit Anwendungen versorgt.<br />

Die Anwendungssoftware wurde hier auf eine zentrale Serverfarm mit mehr als 80<br />

Citrix Presentation Servern verlagert. Des Weiteren wurden für das Rechenzentrum der<br />

Finanzverwaltung des Landes Nordrhein-Westfalen über 140 Dienststellen mit ca.<br />

17.000 Benutzern mit entsprechenden Anwendungen versorgt. Als weiteres Referenzprojekt<br />

im öffentlichen Sektor nennt Citrix eine Implementierung des Servers bei den<br />

Stadtwerken Herne, bei der ca. 300 Benutzer angeschlossen sind. 509 Hierbei dürfte es<br />

sich allerdings tendenziell um die untere Grenze sinnvoll mit dem Citrix Presentation<br />

Server versorgter Benutzer handeln.<br />

Neben Vorteilen bei der Skalierbarkeit beinhaltet die Lösung von Citrix weitere Funktionen,<br />

die Windows Terminalserver 2003 allein nicht bietet, sodass Citrix Presentationserver<br />

insgesamt die umfassendere Lösung darstellt, die speziell auf die Bedürfnisse großer<br />

Behörden und Unternehmen mit vielfältigen Einsatzszenarien ausgelegt ist. Die weiteren<br />

Funktionsunterschiede lassen sich in die Kategorien Benutzerwahrnehmung, Administration,<br />

Kompatibilität und Sicherheit bzgl. Vertraulichkeit und Integrität der Daten unterteilen.<br />

507 Gemäß http://www.abacus.ch/downloads/pages/2004-03/s58-59.pdf<br />

508 http://www.tolly.com/ts/2006/Citrix/PresentationServerEnterprise/ TollyTS206146CitrixSystemsPresentationServer4August2006.pdf<br />

509 Diese und weitere Beispiele für Citrix in der öffentlichen Verwaltung finden sich unter<br />

http://www.citrix.de/modules/resource/download/42e116630e199a42010e1caf38e5000a/Oe<br />

ffentliche%20Verwaltung.pdf<br />

Seite 505


Im Folgenden werden die einzelnen Kategorien näher betrachtet und kurz exemplarische<br />

Einsatzszenarien angedacht, die den Zusatznutzen der erweiterten Funktionalität (neben<br />

der besseren Skalierbarkeit) eines Presentation Server gegenüber Windows Terminalserver<br />

darstellen. 510<br />

� Benutzerwahrnehmung:<br />

Im Bereich der Benutzerwahrnehmung sind neben den erwähnten Performance-<br />

Verbesserungen der Anwendungen (insbesondere bei hoher Serverauslastung)<br />

verbesserte und schnellere Druckfunktionen zu erwähnen. So verringert sich die<br />

Bearbeitung eines Druckauftrags um den Faktor 2-3. Des Weiteren ermöglichen<br />

verbesserte Multimedia-Möglichkeiten (zum Beispiel die Synchronisation von Audio<br />

und Video oder bidirektionaler Austausch von Audiodaten) E-Learning-<br />

Anwendungen oder anspruchsvolle Grafik-Programme.<br />

Für mobile Nutzer eines Laptops bietet der Citrix Presentation Server eine Funktion<br />

namens Application Streaming. Diese ermöglicht den Benutzern die Verwendung<br />

einer Applikation, ohne dass eine Verbindung zum Netzwerk besteht.<br />

� Administration:<br />

Der Presentation Server bietet insgesamt weitaus differenziertere Möglichkeiten<br />

der Administration. Über eine Mangement-Konsole kann gezielt festgelegt werden,<br />

wann welche Anwendung veröffentlicht wird oder welche Rechte zur Nutzung<br />

einer Anwendung erforderlich sind. Anwendungen können zudem automatisiert<br />

auf verschiedenen Presentation Servern installiert werden.<br />

Einzelne Sitzungen lassen sich anhand verschiedener Kriterien wie CPU-Last<br />

oder RAM-Auslastung verteilen. Geografisch verteilte Server lassen sich in einer<br />

sogenannten Farm zusammenfassen und bieten hierdurch einen verbesserten<br />

Schutz bei Ausfall eines Servers und ermöglichen die gezielte Überwachung einzelner<br />

Anwendungen. Darüber hinaus erlaubt es der Presentation Server, einzelne<br />

Anwendungen über einen Web-Browser zu nutzen oder diese in ein Web-<br />

Portal einzubinden, ohne dass ein erneutes Anmelden erforderlich wird. Über ein<br />

erweitertes Management der Druckdienste lassen sich neben zusätzlichen Funktionen,<br />

wie zum Beispiel die gezielte Auswahl eines Papierfachs, das Heften,<br />

beidseitiger Druck und so weiter, auch eine Vielzahl von Druckern einbinden, deren<br />

Nutzung über Richtlinien eingeschränkt werden kann.<br />

� Kompatibilität:<br />

Die größere Kompatibilität des Presentation Server gegenüber dem Terminalserver<br />

2003 zeigt sich (neben der Möglichkeit, eine Vielzahl von Druckern einzubinden)<br />

zum Beispiel dadurch, dass mehr Client-Betriebssysteme (auch für viele<br />

Handhelds und Smartphones) und mehr USB-Geräte (zum Beispiel Scanner oder<br />

zur USB-Synchronisation von Pocket-PCs) unterstützt werden.<br />

Über die Funktion der Application Isolation können Anwendungen über einen<br />

Terminalserver veröffentlich werden, die nicht für den Einsatz auf diesen entwi-<br />

510 http://www.citrix.de/modules/resource/download/42e1166210bbd11f0110bcd89f500003/<br />

eng_ValueAdd_CPS4.5_TS2003.pdf<br />

Seite 506


ckelt wurden. So können zum Beispiel Registry-Einträge, die Sperrung von Bibliotheken,<br />

Objekt-Benennungen und so weiter isoliert werden, sodass andere Anwendungen<br />

von den Einstellungen nicht betroffen werden.<br />

� Sicherheit bzgl. Vertraulichkeit und Integrität der Daten:<br />

Neben einer Verschlüsselung über einen SSL Gateway oder ein hardwareunterstütztes<br />

VPN bietet Citrix eine breite Unterstützung sicherheitsrelevanter Technologien.<br />

Zum Beispiel werden im Bereich starker Authentifizierung Token, Smartcards<br />

oder biometrische Sensoren unterstützt. Zudem müssen DMZs nicht gesondert<br />

konfiguriert werden, um den Datenverkehr des Presentation Server<br />

durchzuleiten.<br />

Hilfreiche Foren zum Thema Migration und zur Installation des Citrix Presentation Server<br />

mit Problemlösungen beziehungsweise Ursachen finden sich auf den Seiten der Deutschen<br />

Citrix User Group (DCUG). 511<br />

3 Bezüge<br />

Bei der Migration von Terminaldiensten existieren vor allem Bezüge zu den Themen<br />

Authentifizierungsdienste und Netzwerkdienste.<br />

3.1 Authentifizierungs- und Verzeichnisdienste<br />

Authentifizierungs- und Verzeichnisdienste werden in der Regel im Rahmen von Terminaldiensten<br />

und Clientkonzepten integriert, um damit eine höhere Anzahl von Benutzern<br />

und deren Identitätsdaten besser verwalten und steuern zu können. Hierdurch wird zum<br />

einen eine redundante Datenhaltung vermieden und zum anderen erheblicher Verwaltungsaufwand<br />

eingespart. Siehe hierzu Kapitel II.C .<br />

3.2 Netzwerkdienste<br />

Netzwerkdienste sind prinzipielle Voraussetzung für den Einsatz von Terminaldiensten.<br />

Sie stellen überhaupt erst die Möglichkeit zur Realisierung von Terminaldiensten über<br />

die Verbindung der Terminals mit den Servern zur Verfügung und liefern grundlegende<br />

Werkzeuge für die Administration. Im Zuge einer Migration sollten daher die Betrachtungen<br />

des Kapitels II.D Berücksichtigung finden.<br />

511 http://www.dcug.de/cms/portal.php.<br />

Seite 507


IV. Anhang<br />

A Abkürzungsverzeichnis<br />

a.a.O am angegebenen Ort<br />

Abs. Absatz<br />

ACE Access Control Entries<br />

ACL Access Control List<br />

AD Active Directory<br />

ADAM Active Directory Application Mode<br />

ADC Active Directory Connector<br />

ADMT Active Directory Migration Tool<br />

ADO ActiveX Data Objects<br />

ADS Active Directory Service<br />

ADSI Active Directory Service Interface<br />

AfA Aufwand für Abschreibung<br />

AFS Andrew File System<br />

AIX Unix Distribution der Firma IBM<br />

AJAX Asynchronous JavaScript and XML<br />

Alt. Alternative<br />

Anz. Anzahl<br />

APC Arbeitsplatzcomputer<br />

API Application Programming Interface<br />

APOC A Point Of Control<br />

APOP Authenticated Post Office Protocol<br />

APT Advanced Package Tool<br />

ASCII American Standard Code for Information Interchange<br />

ASF Apache Software Foundation<br />

ASP Active Server Pages<br />

ATL Active Template Library<br />

ATM Asynchronous Transfer Mode<br />

Aufl. Auflage<br />

AZ Aktenzeichen<br />

BB Bulletin Boards<br />

Seite 508


BDC Backup Domain Controller<br />

BfD Bundesbeauftragter für den Datenschutz<br />

BGB Bürgerliches Gesetzbuch<br />

BHO Bundes-Haushalts-Ordnung<br />

BIND Berkeley Internet Name Domain<br />

BMF Bundesministerium für Finanzen<br />

BMI Bundesministerium des Innern<br />

BOOTP Bootstrap Protocol<br />

BS Betriebssicht<br />

BSD Berkeley Software Distribution<br />

BSI Bundesamt für Sicherheit in der Informationstechnik<br />

bspw. beispielsweise<br />

BVA Bundesverwaltungsamt<br />

BVB Besondere Vertragsbedingungen<br />

bzgl. bezügliche<br />

bzw. beziehungsweise<br />

CA Certification Authority<br />

ca. cirka<br />

CAL Client Access License<br />

Calc. Calculation (Kalkulation)<br />

CAS Code Access Security<br />

CCSMT SMS Migration Tool<br />

CDO Collaboration Data Objects<br />

CGI Common Gateway Interface<br />

CIFS Common Internet File System<br />

CIM Common Information Model<br />

CIS COM Internet Service<br />

CLI Common Language Infrastructur<br />

CLR Common Language Runtime<br />

cn common Name<br />

CO Crossover Office<br />

COLS Commercial Linux Software<br />

COM Component Object Models<br />

COM+ Component Object Models<br />

Seite 509


CORBA Common Objects Request Broker Architecture<br />

CPU Central Processing Unit<br />

CSS Cascading Style Sheets<br />

CUPS Common UNIX Printing System<br />

DACL Discretionary Access Control List<br />

DAV Distributed Authoring and <strong>Version</strong>ing<br />

DB Datenbank<br />

DBMS Datenbankmanagementsystem<br />

DC Domain Controller<br />

dc domainComponent<br />

DCOM Distributed Component Object Models<br />

DDE Dynamic Data Exchange<br />

DDNS Dynamic DNS<br />

DFS Distributed File System<br />

DHCP Dynamic Host Configuration Protocol<br />

DIT Directory Information Tree<br />

DLC Data Link Control<br />

DLL Dynamic Link Libraries<br />

DMS Dokumentenmanagementsystem<br />

DMZ Demilitarized Zone<br />

DN Distinguished Name<br />

DNS Domain Name Server<br />

DNSSEC Domain Name System Security<br />

DOM Document Object Model<br />

DOMEA Dokumenten-Management und elektronische Archivierung<br />

DRBD Distributed Replicated Block Device<br />

DS Directory Service<br />

DSO Dynamic Shared Objects<br />

DTD Document Type Definition<br />

DTS Data Transformation Services<br />

DV Datenverarbeitung<br />

DXL Domino Extensible Language<br />

E2K Exchange 2000<br />

ECMA European Computer Manufacturers Association<br />

Seite 510


EFQM European Foundation for Quality Management<br />

EFS Encrypting File System<br />

EJB Enterprise Java Beans<br />

EMF Enhanced Meta Format<br />

ESC/P Epson Printer Language<br />

etc. et cetera<br />

EULA End User License Agreement<br />

EVB-IT Ergänzende Vertragsbedingungen für die Beschaffung von IT-<br />

Leistungen<br />

EXT2 Extendend Filesysten <strong>Version</strong> 2<br />

EXT3 Extended Filesystem <strong>Version</strong> 3<br />

f. folgend<br />

f., ff. folgend(e)<br />

FAT File Allocation Table<br />

Fn. Fußnote<br />

FQDN Full Qualified Domain Name<br />

FRS File Replication Service<br />

FSG Free Standard Group<br />

FSMO Flexible Single Master Operation<br />

FTP File Transfer Protocol<br />

GC Global Catalog<br />

GDI Graphics Device Interface<br />

GGO Gemeinsame Geschäftsordnung der Bundesministerien<br />

ggü. gegenüber<br />

GmbH Gesellschaft mit beschränkter Haftung<br />

GMBI Gemeinsames Ministerialblatt<br />

GNOME GNU Network Object Model Environment<br />

GNU GNU's Not UNIX ???<br />

GPL General/Gnu Public License<br />

GPOs Group Policy Objects<br />

GPS Global Positioning System<br />

GSS-API Generic Security Service API<br />

GUID Global Unique Identifier<br />

GWB Gesetz gegen Wettbewerbsbeschränkungen<br />

Seite 511


HACMP High Availability Cluster Management Protocol<br />

HAL Hardware Abstraction Layer<br />

HD Harddisk<br />

HIS Host Integration Server<br />

HP Hewlett-Packard<br />

Hrsg. Herausgeber<br />

HS Haushaltssicht<br />

HSM Hierarchical Storage Management<br />

HTML Hypertext Markup Language<br />

HTTP Hypertext Transfer Protocol<br />

HTTPS Hyper-Text Transfer Protocol Secure<br />

i. d. F. v. in der Fassung von<br />

i. d. R. in der Regel<br />

i. w. S. im weiteren Sinn<br />

ICA Independent Computing Architecture<br />

IDE Integrated Development Enviroment<br />

IEAK Internet Explorer Administration Kit<br />

IETF Internet Engineering Task Force<br />

IIOP Internet Inter-ORB Protocol<br />

IIS Internet Information Server<br />

IL Intermediate Language<br />

IMAP4 Internet Mail Access Protocol 4<br />

IMAPS Internet Mail Access Protocol Secure<br />

IMKA Interministerieller Koordinierungsausschuss für Informationstechnik in<br />

der Bundesverwaltung<br />

IP Internet Protocoll<br />

IPC Interprocess Communication<br />

IPP Internet Printing Protocol<br />

Ipsec Internet Protocol Security Protocol<br />

IPv6 IP <strong>Version</strong> 6<br />

IPX Internet Packet Exchange<br />

IRC Internet Relay Chat<br />

IRM Information Rights Management<br />

IS Information Store<br />

Seite 512


ISA Internet Security and Acceleration<br />

ISAPI Internet Service Application Programming Interface<br />

ISC Internet Software Consortium<br />

ISO International Organization for Standardization<br />

ISSN International Standard Serial Number<br />

IT Informationstechnologie<br />

IT-WiBe Empfehlung zur Durchführung von Wirtschaftlichkeitsbetrachtungen<br />

beim Einsatz der IT in der Bundesverwaltung<br />

IuK Information und Kommunikation<br />

J2EE Java 2 Enterprise Edition<br />

J2SE Java 2 Standard Edition<br />

JAXP Java API for XML<br />

JDBC Java Database Connectivity<br />

JDS Sun Java Desktop System<br />

JFS Journaled File System<br />

JIT Just In Time<br />

JMC Java Message Service<br />

JNDI Java Naming and Directory Interface<br />

JRE Java Runtime Environment<br />

JRMI Java Remote Method Invocation<br />

JSP Java Server Pages<br />

JTA Java Transaction API<br />

JVM Java Virtual Machine<br />

KBSt Koordinierungs- und Beratungsstelle der Bundesregierung für Informationstechnik<br />

in der Bundesverwaltung<br />

KDC Key Distribution Center<br />

KDE K Desktop Environment<br />

KLR Kosten- und Leistungsrechnung<br />

KMS Key Management Server<br />

KN Kosten/Nutzen<br />

kWh Kilowattstunde<br />

kw-Stelle „künftig wegfallend― Stelle<br />

LAMP Linux, Apache, MySQL, PHP<br />

LAN Local Area Network<br />

Seite 513


LANANA Linux Assigned Names and Numbers Authority<br />

LDAP Lightweight Directory Access Protocol<br />

LDIF LDAP Data Interchange Format<br />

LGPL Lesser General Public License<br />

Li18nux Linux Internationalization Initiative<br />

LM LAN Manager<br />

LMRepl Verzeichnisreplikationsdienst<br />

LPD Line Printing Daemon<br />

LPI Linux Professional Institute<br />

LPR Line Printing Redirector<br />

LSA Local Security Authority<br />

LSB Linux Standard Base<br />

LTSP Linux Terminal Server Project<br />

LVM Logical Volume Manager<br />

LVS Linux Virtual Server<br />

MAC Media Access Control<br />

MAPI Messaging Application Programming Interface<br />

MB Megabyte<br />

MDX Message Digest X<br />

MFT Master File Table<br />

MIME Multipurpose Internet Mail Extension<br />

MLP Message/Multilayer Link Protocol<br />

MMC Microsoft Management Console<br />

MMQS Microsoft Message Queue Server<br />

MOM Microsoft Operation Manager<br />

MPL Mozilla Public License<br />

MRTG/RRD Multi Router Traffic Grapher/Round Robin Database<br />

MS Microsoft<br />

MSMQ Microsoft Message Queuing<br />

MSPS Microsoft Proprietary Standards<br />

MT Manntage<br />

MTA Message Transfer Agent<br />

MTBF mean time between failure<br />

MTS Microsoft Transaction Server<br />

Seite 514


MTTR Mean Time To Repair<br />

NAS Network Attached Storage<br />

NAT Network Address Translation<br />

NCSA National Center for Supercomputing Application<br />

NDS Novell Directory Service<br />

NetBEUI NetBIOS Extended User Interface<br />

NetBIOS Network Basic Input and Output System<br />

NetBT NetBIOS over TCP/IP<br />

NFS Network File System<br />

NIS Network Information Service<br />

NLD Novell Linux Desktop<br />

NNTP Network News Transport Protocol<br />

NPL Netscape Public License<br />

NSS Name Service Switch<br />

NTDS NT Directory Service<br />

NTFS NT File System<br />

NTFS4 NT File System 4<br />

NTFS5 New Technology File System 5<br />

NTLM Windows NT LAN Manager<br />

NTLMv2 Windows NT LAN Manager <strong>Version</strong> 2<br />

NTP Network Time Protocol<br />

ODBC Open Database Connectivity<br />

ODF Open Document Format<br />

OGo OpenGroupware.org<br />

OLAP Online Analytical Processing<br />

OLE Object Linking and Embedding<br />

OMG Object Management Group<br />

OMPM Office Migration Planning Manager<br />

OOo OpenOffice.org<br />

OOo/SO Open Office.org/StarOffice<br />

OOXML Office Open XML<br />

OpenLDAP Open Lightweight Directory Access Protocol (LDAP)<br />

ORB Object Request Broker<br />

OSI Open Systems Interconnection<br />

Seite 515


OSOS Open Standards mit Open Source<br />

OSS Open Source Software<br />

OU Organizational Unit<br />

OWA Outlook Web Access<br />

PAM Pluggable Authentication Module<br />

PatG Patentgesetz<br />

PBS Portable Batch System<br />

PBX Private Branch Exchanger<br />

PC Personalcomputer<br />

PCL Printer Control Language<br />

PDA Personal Digital Assistant<br />

PDC Primary Domain Controller<br />

PDF Portable Document Format<br />

Perl Practical Extraction and Report Language<br />

PHP PHP Hypertext Pre-processor<br />

PIM Personal Information Manager<br />

PKI Public Key Infrastructure<br />

PM Projektmanagement<br />

POP3 Post Office Protocol <strong>Version</strong> 3<br />

POSIX Portable Operating System Interface for UNIX<br />

PPD PostScript Printer Descriptions<br />

ProdHaftG Produkthaftungsgesetz<br />

PS Projektsicht<br />

PT Personentage<br />

PXE Pre-Boot Execution Environment<br />

QS Qualitätssicherung<br />

RAC Real Application Cluster<br />

RAID Redundant Array of Inexpensive/Independent Discs<br />

RAM Random Access Machine/Memory<br />

RAS Remote Access Service<br />

RAW Read After Write<br />

RDBMS Relationales Datenbank Management System<br />

RDP Remote Desktop Protocol<br />

ReiserFS Reiser File System<br />

Seite 516


RFCs Request for Comments<br />

RHCE Red Hat Certified Engineer<br />

RHD Red Hat Desktop<br />

RHN Red Hat Network<br />

RID Relative Identifier<br />

RISC Reduced Instruction Set Computer<br />

RMI Remote Method Invocation<br />

RMS Rights Management Services<br />

RPC Remote Procedure Calls<br />

RPM Red Hat Packet Management<br />

Rz. Randziffer<br />

S. Seite<br />

S/MIME Secure MIME (Multipurpose Internet Mail Extensions)<br />

SA System Attendant<br />

SACL System Access Control List<br />

SAGA Standards und Architekturen für E-Government-Anwendungen<br />

SAM Security Accounts Manager<br />

SAN Storage Area Network<br />

SASL Simple Authentication and Security Layer<br />

SBS Small Business Server<br />

SC Samsung Contact<br />

SCCM System Center Configuration Manager<br />

SCM Security Configuration Manager<br />

SCOM System Centre Operations Manager<br />

SCS Sun Control Station<br />

SCSI Small Computer System Interface<br />

SDB Simple Database Backend<br />

SDBC Star Database Connectivity<br />

SDK Software Developer Kit<br />

SFU Service for UNIX<br />

SID Security Identifier<br />

SISL Sun Industry Source License<br />

SLAs Service Level Agreements<br />

SLOX Suse Linux Openexchange<br />

Seite 517


SMB Server Message Block<br />

SMS Short Message Service<br />

SMS System Management Server<br />

SMTP Simple Mail Transfer Protocol<br />

SNA Storage Network Attached<br />

SNMP Simple Network Management Protocol<br />

SO StarOffice<br />

SOAP Simple Object Access Protocol<br />

SPM Standard TCP/IP Port Monitor<br />

SPX Sequenced Packet Exchange<br />

SQL Structured Query Language<br />

SQL-DMO SQL Distributed Management Objects<br />

SRS Standard Replication Service<br />

SSH Secure Shell<br />

SSL Secure Sockets Layer<br />

SSL/TLS Secure Sockets Layer / Transport Layer Security<br />

SSO Single Sign-On<br />

SUS Java System Update Service<br />

SVG Scalable Vector Graphic<br />

SW Software<br />

SWA Scalix Web Access<br />

SWAP Simple Workgroup Access Protocol<br />

SWAT Samba Web Administration Tool<br />

TB Terabyte<br />

TCL Tool Command Language<br />

TCO Total Costs of Ownership<br />

TCP/IP Transmission Control Protocol / Internet Protocol<br />

TDS Tabular Data Stream<br />

TGS Ticket Granting Service<br />

TGT Ticket Granting Ticket<br />

TLS Transport Layer Security<br />

TNEF Transport Neutral Encapsulation Format<br />

TTS Trouble Ticket System<br />

u. a. unter anderem<br />

Seite 518


u. ä. und ähnliches<br />

u. U. unter Umständen<br />

UCS Univention Corporate Server<br />

UDDI Universal Description, Discovery and Integration<br />

UDP User Datagram Protocol<br />

UfAB Unterlage für die Ausschreibung und Bewertung von IT-Leistungen<br />

UGS Univention Groupware Server<br />

UHD User Help Desks<br />

UI User Interface<br />

UNC Uniform Naming Convention<br />

UNO Universal Network Objects<br />

UrhG Urheberrechtsgesetz<br />

URL Uniform Resource Locator<br />

USB Universal Serial Bus<br />

USN Unique Sequence Number<br />

usw. und so weiter<br />

Var. Variante<br />

VBA Visual Basic for Applications<br />

VBS Visual Basic Scripting Edition<br />

VBScript Visual Basic Script<br />

VFS Virtual File System<br />

VLDB Very Large Database<br />

VMX Vintela Management Extensions<br />

VOL Verdingungsordnung für Leistungen<br />

VOL/A Verdingungsordnung für Leistungen/ Teil A Allgemeine Bestimmungen<br />

für die Vergabe von Leistungen<br />

VPN Virtual Private Network<br />

vs. versus<br />

VSF Vorschriftensammlung der Bundesfinanzverwaltung<br />

VV Verwaltungsvorschrift<br />

W2K Windows 2000<br />

W3C World Wide Web Consortiums<br />

WAN Wide Area Network<br />

WAP Wireless Application Protocol<br />

Seite 519


WBEM Web Based Enterprise Management<br />

WebDAVS Web Document Authoring And <strong>Version</strong>ing<br />

WiBe Wirtschaftlichkeitsbetrachtung<br />

WINS Windows Internet Name Service<br />

WMI Windows Management Instrumentation<br />

WSDL Web-Services Description Language<br />

WSH Windows Sripting Host<br />

WWW World Wide Web<br />

WYSIWYG what you see is what you get<br />

XFS Extended File System<br />

XHTML eXtensible HyperText Markup Language<br />

XML Extensible Markup Language<br />

XPS XML Paper Specification Format<br />

XSL Extensible Style Sheet Language<br />

XSLT Extensible Stylesheet Language for Transformations<br />

YaST Yet another Setup Tool<br />

z. B. zum Beispiel<br />

z. T. zum Teil<br />

Seite 520


B Glossar<br />

.NET .NET ist die Bezeichnung für die aktuelle Programmierumgebung von Microsoft.<br />

Sie besteht aus verschiedenen Frameworks (Klassenbibliotheken),<br />

einer virtuellen Laufzeitumgebung (ähnlich der Java Virtual Maschine) und<br />

einer Entwicklungsumgebung (Visual Studio .NET). .NET unterstützt mehrere<br />

Programmiersprachen. Dazu gehören C#, C++, J# und Visual Basic.<br />

ACL Eine Access Control List ist eine Liste mit Zugriffsrechten. Anhand dieser<br />

Listen erfolgt die Zugriffsteuerung auf die Ressourcen des IT-Systems.<br />

Anhand der ACLs entscheidet das System, welchen Zugriff ein Benutzer<br />

auf eine Ressource, zum Beispiel ein Verzeichnis, hat.<br />

ActiveX Sammelbegriff für eine von Microsoft eingeführte Technologie, die (inter)aktive<br />

Inhalte auf Webseiten ermöglicht. Der Browser lädt ActiveX-<br />

Programmteile vom Server herunter und führt sie auf dem PC des Benutzers<br />

aus. ActiveX wurde von Microsoft als Alternative zu Java-Applets<br />

entwickelt.<br />

ADO ADO steht für Active Data Objects und ist eine High-Level Schnittstelle<br />

(zum Beispiel aus Visual Basic) für den allgemeinen Datenzugriff von Microsoft<br />

über einen OLE DB Provider (zum Beispiel für SQL Server, ODBC,<br />

Oracle, Active Directory Service, u.a.). ADO enthält Objekte für das Erstellen<br />

einer Verbindung zu einer Datenquelle, für Lese-, Update-, Schreib-<br />

und Löschoperationen.<br />

API Application Programming Interface (Definierte Programmierschnittstelle,<br />

die für die Integration und Erweiterung genutzt werden kann)<br />

ASP Steht für Active Server Pages; ist das Microsoft-Konzept für die serverseitige<br />

Generierung (zum Beispiel mit JavaScript, Visual Basic Script) dynamischer<br />

Web-Seiten (s.a. JSP).<br />

ATM Asynchronous Transfer Mode (ATM) ist eine Technologie, bei der der Datenverkehr<br />

in kleine Pakete, Zellen genannt, mit fester Länge (53 Byte)<br />

codiert und über asynchrones Zeitmultiplexing übertragen wird. Die Zellen-Technik<br />

hat im Vergleich zu Übertragungstechniken mit variabler Paketgröße<br />

(zum Beispiel Ethernet) den Vorteil, dass die Zellen durch sogenanntes<br />

Zell-Relay (ähnlich Frame Relay) effizienter weitergeleitet werden<br />

können.<br />

BOOTP Das Bootstrap Protocol (BOOTP) dient dazu, einem Computer in einem<br />

TCP/IP-Netzwerk eine IP-Adresse und eine Reihe von weiteren Parametern<br />

zuzuweisen.<br />

Verwendet wird BOOTP zum Beispiel zur Einstellung der Netzwerkadresse<br />

von Terminals und plattenlosen Workstations, die ihr Betriebssystem<br />

von einem Bootserver beziehen. Die Übertragung des Betriebsprogramms<br />

geschieht dann üblicherweise über das TFTP-Protokoll. Daneben können<br />

einige Peripheriegeräte wie beispielsweise Netzwerkdrucker das BOOTP-<br />

Protokoll zur Ermittlung ihrer IP-Adresse und Netzwerkkonfiguration (Sub-<br />

Seite 521


netz/Gateway) verwenden.<br />

Früher wurde das RARP-Protokoll zur Ermittlung der IP-Adresse bei plattenlosen<br />

Geräten verwendet. Im Gegensatz zu RARP, das ausschließlich<br />

die IP-Adresse liefert, besitzt BOOTP eine ganze Reihe von Parametern,<br />

insbesondere können Subnetzmaske, Gateway sowie Bootserver übermittelt<br />

werden. Zur Konfiguration von Workstations und PCs reichen diese<br />

jedoch nicht aus, da hier zusätzliche Einstellungen wie Drucker, Zeitserver<br />

und andere nötig sind. Das DHCP-Protokoll stellt eine Erweiterung der<br />

BOOTP-Parameter dar.<br />

C# Von Microsoft auf Basis von C und C++ entwickelte objektorientierte Programmiersprache.<br />

CGI Das Common Gateway Interface ist die Urvariante der Web-Server-<br />

Schnittstellen. Praktisch jeder aktuelle Web-Server unterstützt dieses<br />

Interface. Anwendungen, die über CGI arbeiten, können mit verschiedenen<br />

Programmiersprachen entwickelt werden. Neben Interpretersprachen<br />

wie beispielsweise PERL können auch kompilierte Anwendungen, die in C<br />

oder C++ geschrieben sind, verwendet werden.<br />

COM Das Component Object Model ist ein Software-Standard von Microsoft,<br />

mit dessen Hilfe die Kommunikation zwischen Prozessen und Programmen<br />

realisiert werden kann. COM definiert dazu eine objektorientierte<br />

Schnittstelle, mit der ein Programm oder eine Software-Komponente<br />

Dienste zur Verfügung stellt.<br />

CORBA CORBA steht für Common Object Request Broker Architecture und wurde<br />

mit dem Ziel geschaffen, eine orts-, plattform- und implementationsunabhängige<br />

Kommunikation zwischen Applikationen zu ermöglichen. CORBA<br />

ist ein offener Standard, der durch die Object Management Group (OMG)<br />

definiert wird.<br />

DCOM Das Distributed Component Object Model ist eine Variante des Microsoft-<br />

Standards COM. Über das Netzwerk können mit DCOM Dienste einer<br />

Software verteilt zur Verfügung gestellt werden. DCOM verwendet zur<br />

Realisierung RPC (Remote Procedure Calls), um mittels Nachrichtenaustausch<br />

Funktionen auf einem anderen Computer aufzurufen.<br />

DDE Dynamic Data Exchange ist eine Technik unter Windows, welche es Anwenderprogrammen<br />

ermöglicht, Daten miteinander auszutauschen. Der<br />

Datenaustausch selbst erfolgt dabei dynamisch. Wird eine der mittels<br />

DDE verbundenen Dateien geändert, erfolgt die Übernahme der Änderung<br />

in alle mit der betreffenden Datei kommunizierenden Dateien automatisch.<br />

DHCP Das Dynamic Host Configuration Protocol schafft die Grundlage zur dynamischen<br />

Vergabe von IP-Adressen. Der DHCP-Client erhält von zentralen<br />

DHCP-Servern dynamisch eine IP-Adresse. Neben den IP-Adressen<br />

können dem Client noch weitere Konfigurationsparameter übergeben<br />

werden.<br />

Seite 522


DNS Das Domain Name System ist ein hierarchisch aufgebautes System für<br />

die Vergabe von Namen für an das Internet/Intranet angeschlossene<br />

Rechner.<br />

DTD Dokument-Typ-Definitionen definieren formal die Struktur eines XML-<br />

Dokuments. Sie geben die Syntax vor, die für einen bestimmten Dokument-Typ<br />

(und somit auch für ein bestimmtes Datenformat) gelten sollen.<br />

Emulation Fähigkeit eines Systems beziehungsweise eines Programms, die Arbeitsweise<br />

eines anderen Computersystems mit Hardware- oder Softwaremitteln<br />

nachzuahmen.<br />

Failover Ist die spezifische Betriebsweise von Hard- oder Software, z. B. einer Datenbank,<br />

eines Servers oder eines Netzwerks, die so konfiguriert sind,<br />

dass ihre Dienste bei einem vorübergehenden Systemausfall automatisch<br />

von einem System mit ähnlicher oder gleicher Funktionsweise übernommen<br />

werden.<br />

GGO Die Bundesregierung hat am 26. Juli 2000 die neue Gemeinsame Geschäftsordnung<br />

der Bundesministerien (GGO) beschlossen. Die Zusammenarbeit<br />

und Organisation der Bundesministerien sowie die Vorbereitung<br />

von Gesetzesentwürfen werden damit umfassend modernisiert. Verwaltungsabläufe<br />

werden künftig schneller und einfacher. Neu aufgenommen<br />

sind die erweiterten Möglichkeiten für den Einsatz moderner Informationstechnik.<br />

Die novellierten Regelungen setzen zudem auf zeitgemäße<br />

Steuerungs- und Führungsinstrumente, wie sie aus der Wirtschaft bekannt<br />

sind.<br />

HTML Hypertext Markup Language – der offene Standard beziehungsweise das<br />

Dateiformat für die Darstellung von Inhalten im Internet beziehungsweise<br />

Intranet.<br />

HTTP Standard für die elektronische Interaktion bei der Übertragung von Web-<br />

Dokumenten ins Internet.<br />

IMAP Mit dem Internet Mail Access Protocol lassen sich E-Mail-Postfächer verwalten.<br />

Im Gegensatz zu POP3 verwaltet IMAP die Mail auf dem Server.<br />

Beim Start des Mail-Programms werden standardmäßig nur die Kopfdaten<br />

(Absender, Betreff und Eingangszeit) geladen. Jetzt können Mails vom<br />

Adressaten gezielt ausgewählt und komplett heruntergeladen werden. Eine<br />

Mail, die auf dem Server verbleiben soll, kann dort in besonderen Ordnern<br />

abgelegt werden.<br />

IPsec Ein Standard für Netzwerksicherheitslösungen, der sich vor allem für die<br />

Implementierung von VPNs sowie den Fernzugriff auf private Netzwerke<br />

über Wählverbindungen eignet.<br />

IPv6 Ist die neue <strong>Version</strong> 6 des Internet-Protokolls (IP), bei der die IP-Adressen<br />

aus 128 statt 32 Bit wie beim IPv4 bestehen sollen. U. a. werden dadurch<br />

mehr Adressierungsmöglichkeiten für Websites geschaffen.<br />

IPX Ein von der Firma Novell definierter Standard für die Datenübertragung.<br />

Seite 523


J2EE Java 2 Enterprise Edition (J2EE) ist ein Oberbegriff für verschiedene Konzepte<br />

und Java-basierte Komponenten, die insbesondere bei dem Betrieb<br />

von J2EE-Application-Servern genutzt werden.<br />

Neben der Client-seitigen Kommunikation mit J2EE-Application-Servern,<br />

die meist mit einem Browser erfolgt, unterstützt J2EE auch eine Kommunikation<br />

zwischen Anwendungskomponenten (Applications). Für die anwendungsseitige<br />

Kommunikation können verschiedene Techniken eingesetzt<br />

werden: XML-basierte Web-Services, CORBA und direkte Aufrufe<br />

aus Java-Programmen.<br />

Java Beans Java Beans sind wieder verwendbare Softwarekomponenten, die in Java<br />

realisiert wurden.<br />

Java Script Eine ursprünglich von der Firma Netscape definierte Skriptsprache zur<br />

Verknüpfung von Programmcode mit statischen HTML-Seiten. In der Regel<br />

erfolgt die Ausführung des Codes im Browser des Benutzers.<br />

Java Von SUN Microsystems entwickelte objektorientierte Programmiersprache,<br />

die vor allem im Bereich der Internettechnologie genutzt wird. Aus<br />

den Quelltexten wird durch einen sogenannten Compiler ein plattformunabhängiger<br />

Zwischencode übersetzt. Dieser kann von einem geeigneten<br />

Interpreter auf beliebigen Rechnern ausgeführt werden. Dadurch können<br />

Java-Programme auf allen Rechnerplattformen laufen, für die ein<br />

passendes Interpreter-Programm existiert.<br />

JDBC Die Java Database Connectivity bietet einen Mechanismus zur Kommunikation<br />

mit bestehenden Datenbanken. Dabei bilden Treiber die Schnittstelle<br />

zwischen dem Java-Programm und der Datenbank.<br />

JSP JavaServer-Pages sind HTML-Dateien mit eingebettetem Java-<br />

Programmcode, die mit Hilfe einer JSP-Engine einmalig in Servlets umgewandelt<br />

und anschließend im Webserver ausgeführt werden. Das Ergebnis<br />

wird dann im normalen HTML-Format an den Client gesendet (s. a.<br />

ASP).<br />

Kerberos Kerberos ist ein Protokoll zur sicheren Authentisierung innerhalb offener<br />

Netze, die zum Beispiel auf dem TCP/IP Protokoll basieren. Bei der Verwendung<br />

von Kerberos erfolgt eine einmalige Anmeldung an einem Key<br />

Distribution Center (KDC, gelegentlich auch als Kerberos Domänencontroller<br />

bezeichnet), welches dem Benutzer zur Authentifizierung gegenüber<br />

den von ihm genutzten Diensten ein Ticket mit definierter Gültigkeitsdauer<br />

zur Verfügung stellt.<br />

LAMP Eine auf Linux, Apache, MySQL und PHP beziehungsweise PERL oder<br />

Python basierende Open Source Plattform für Web-Entwickler und Webanwendungen.<br />

LDAP Das Lightweight Directory Access Protocol (X.509) ist eine vereinfachte<br />

<strong>Version</strong> des DAP (X.500). Mit LDAP werden Zugriffe auf Verzeichnisdienste<br />

realisiert, mit denen z. B. Benutzermerkmale abgefragt werden<br />

können.<br />

Seite 524


Makro Eine Kombination einzelner Anweisungen beziehungsweise eine Folge<br />

von Befehlen und Vorgängen, die festgehalten und gespeichert werden<br />

kann. Wird ein Makro aufgerufen, werden die Vorgänge und Aktionen in<br />

der entsprechenden Reihenfolge automatisch wieder abgearbeitet.<br />

MP3 Standardformat für komprimierte Audiodateien, das im Rahmen der<br />

MPEG vom Fraunhofer-Institut entwickelt wurde und sich vor allem im<br />

Internet verbreitet hat.<br />

MTA Softwarekomponente, die für die Verteilung von E-Mails zwischen verschiedenen<br />

Computersystemen zuständig ist. Ein MTA nimmt Nachrichten<br />

sowohl von anderen MTAs als auch von MUAs entgegen und leitet diese<br />

an die entsprechenden Empfänger weiter.<br />

MUA Der Mail User Agent ist das E-Mail-Programm, das es dem Benutzer ermöglicht,<br />

auf elektronische Nachrichten zuzugreifen, sie anzuzeigen, zu<br />

lesen, zu bearbeiten und zu verwalten.<br />

NDS Die NDS (Novell Directory Services) ist ein hochskalierbarer und redundanter<br />

Verzeichnisdienst, der von Novell mit seinem Betriebssystem Net-<br />

Ware 4.x eingeführt wurde.<br />

NTP Das Network Time Protocol dient dazu die Uhrzeiten verschiedener Computer<br />

über ein Netzwerk zu synchronisieren. Das NTP ermöglicht eine millisekunden<br />

genaue Einstellung der Rechnerzeiten; ist insbesondere sehr<br />

wichtig für Vorgänge, an denen gleichzeitig mehrere Rechner beteiligt<br />

sind.<br />

ODBC Standardisiertes Verfahren, das den Zugriff auf Datenbanken gewährleistet.<br />

Beispielsweise können Anwendungsprogramme auf Datenbanken unterschiedlichsten<br />

Art mittels ODBC zugreifen.<br />

OLE OLE steht für Objekt Linking and Embedding und ist eine Methode zur<br />

gemeinsamen Nutzung von Informationen. Dabei können die Informationen<br />

in unterschiedlichen Formaten vorliegen und mit unterschiedlichen<br />

Anwendungen erstellt worden sein. Es werden Daten aus einem Quelldokument<br />

mit einem Zieldokument verknüpft beziehungsweise in dieses eingebettet.<br />

Wenn die eingebetteten Daten im Zieldokument markiert werden,<br />

wird wieder die Quell-Anwendung geöffnet, damit die Daten in gewohnter<br />

Umgebung mit den notwendigen Funktionen bearbeitet werden<br />

können. Man spricht auch von „OLE Compound Documents".<br />

OpenLDAP OpenLDAP ist eine Implementierung des LDAP-Protokolls als freie Software.<br />

OpenLDAP wird bei den meisten verbreiteten und aktuellen Linux-<br />

Distributionen zur Verfügung gestellt. Da OpenLDAP den LDAP-Standard<br />

verfolgt, ist es mit OpenLDAP möglich, eine zentrale Benutzerdatenverwaltung<br />

aufzubauen und zentral zu warten.<br />

OSI Internationaler Standard für den Datenaustausch in Netzwerken. OSI wird<br />

in sieben Schichten dargestellt, die jeweils die einzelnen Kommunikationsprozesse<br />

beschreiben.<br />

Seite 525


PDF Plattformübergreifendes Dokumentenformat der Firma Adobe Systems,<br />

mit welchem sich aus Texten, Bildern und Grafiken bestehende Dokumente<br />

erzeugen und darstellen lassen.<br />

Perl Die Practical Extraction and Report Language ist eine frei verfügbare<br />

Programmiersprache, die besonders häufig zum Schreiben von CGI-<br />

Skripten verwendet wird. Durch die vielfältigen Möglichkeiten, insbesondere<br />

auch in der Verarbeitung von Strings, werden Perl-Programme auch<br />

häufig für administrative Routineaufgaben verwendet.<br />

PHP Serverseitige Skriptsprache zur Erstellung datenbankgestützter und dynamischer<br />

Webinhalte.<br />

POP3 Beim Arbeiten mit Post Office Protocol in der <strong>Version</strong> 3 lädt das lokale<br />

Mail-Programm (Client) grundsätzlich nach dem Start alle neue Post vom<br />

Mail-Server auf den lokalen Computer. Normalerweise ist der Client so<br />

konfiguriert, dass die Mail nach dem Download auf dem Server gelöscht<br />

wird.<br />

POSIX Auf UNIX basierender Schnittstellen-Standard gemäß IEEE, der von allen<br />

UNIX-Derivaten unterstützt wird.<br />

PostScript Von der Firma Adobe entwickelte Seitenbeschreibungssprache für die<br />

Steuerung von Druckern. postscriptfähige Drucker erhalten ihre Druckbefehle<br />

von dem jeweiligen Anwendungsprogramm in Form einer standardisierten<br />

Anweisungsfolge; diese interpretiert der entsprechende Drucker<br />

und setzt sie in einen Druckvorgang um.<br />

Prozess Mit dem Begriff Prozess wird in der Informationstechnik der Ablauf eines<br />

Computerprogrammes auf einem Prozessor bezeichnet. Einem Prozess<br />

sind ein Speicherraum und weitere Betriebssystemmittel zugeordnet. Ein<br />

Prozess kann aus einem oder mehreren Threads bestehen, die sich innerhalb<br />

eines Prozesses den Speicher und andere, betriebssystemabhängige<br />

Ressourcen wie Dateien und Netzwerkverbindungen teilen, jedoch<br />

sonst unabhängig voneinander ablaufen. Ein Prozess kann auch aus<br />

genau einem Thread bestehen, wenn bei dem Programmablauf keine Parallelverarbeitung<br />

vorgesehen ist.<br />

RAS Ist die Microsoft-Bezeichnung für Bereitstellung von Dial-Up-Diensten innerhalb<br />

des Microsoft-Betriebssystems.<br />

RDBMS In einem relationalen Datenbank-Managementsystem liegen die Informationen<br />

der Datenbank in Tabellen vor, die zueinander in Relation stehen.<br />

Organisiert nach dem relationalen Modell.<br />

Server Ein Prozess, ein Programm oder ein Computer zur Bearbeitung der Anforderungen<br />

eines Clients beziehungsweise zur Bereitstellung von Diensten,<br />

die von einem Client genutzt werden können.<br />

SQL Stellt die Standard-Abfragesprache für relationale Datenbanken dar.<br />

SSH Ein Protokoll beziehungsweise eine entsprechende Implementierung<br />

(Unix/Linux-Systemen) dieses Protokolls, das den sicheren Zugriff auf an<br />

Seite 526


ein Netzwerk angeschlossene Rechner gewährleistet. Die Implementierung<br />

bietet eine gesicherte Datenübertragung auf ungesicherten Verbindungen<br />

an.<br />

SSL Eine von der Firma Netscape entwickelte Verschlüsselungstechnologie<br />

und ein Protokoll für die sichere Kommunikation beziehungsweise Dokumentenübermittlung<br />

zwischen Webbrowsern und Webservern.<br />

TCP/IP Ein Satz von Netzwerkprotokollen, die innerhalb eines Netzwerkes verwendet<br />

werden, um dem Benutzer eine Reihe von Diensten zur Verfügung<br />

zu stellen. TCP (Transmission Control Protocol) und IP (Internet<br />

Protocol) bieten die Grundlagen über die Formulierung der einzelnen Datenpakete,<br />

deren Versendung und Zustellung.<br />

Thread siehe Prozess<br />

UNO UNO ist ein Komponentenmodell, welches Interoperabilität zwischen unterschiedlichen<br />

Programmiersprachen, unterschiedlichen Objektmodellen,<br />

unterschiedlicher Maschinenarchitekturen und unterschiedlichen Prozessen<br />

schafft. Diese kann in einem LAN oder über das Internet hergestellt<br />

werden. UNO wird von der OpenOffice Community zusammen mit den<br />

Entwicklungslabors von Sun Microsystems entwickelt. Die Basis-<br />

Bibliotheken von UNO sind unabhängig von OpenOffice und StarOffice<br />

und können als Framework für andere Anwendungen eingesetzt werden.<br />

UNO ist frei verfügbar und steht unter der LGPL-Lizenz. Derzeit werden<br />

Java, C und C++ auf Windows, Linux und Solaris unterstützt. (siehe auch<br />

http://udk.openoffice.org/common­/man/uno.html)<br />

URL Der Uniform Resource Locator beschreibt eine eindeutige Adresse im<br />

World Wide Web, z. B. „http://www.kbst.bund.de".<br />

VBA Visual Basic for Applications<br />

W3C Das World Wide Web Consortium koordiniert die Entwicklung des WWW<br />

und die Standardisierung von HTML, XML und deren Derivate.<br />

WebDAV Das Web-based Distributed Authoring and <strong>Version</strong>ing ist eine Erweiterung<br />

des Hypertext Transfer Protocol (HTTP) und bietet eine standardisierte<br />

Unterstützung für asynchrones, kollaboratives Erstellen von Inhalten über<br />

das Internet beziehungsweise Intranet.<br />

WINS Microsoft-System zur Namensauflösung innerhalb eines Netzwerkes<br />

(Netzwerknamen IP-Adressen).<br />

XML Eine Spezifikation für die Definition von Sprachen zur Formatierung von<br />

Dokumenten. XML bietet eine strenge Trennung von Inhalten und Design.<br />

XSLT Vom W3C empfohlene Sprache zur Erstellung von Stilvorlagen, die XML-<br />

Strukturen regelbasiert in andere XML-Strukturen umwandeln, z. B. in eine<br />

Seitenbeschreibungssprache wie HTML.<br />

Seite 527


C Abbildungsverzeichnis<br />

Abbildung 1: Struktur des <strong>Migrationsleitfaden</strong> .................................................................. 6<br />

Abbildung 2: Vertragsverhältnisse ................................................................................. 44<br />

Abbildung 3: Regelkreis der Wirtschaftlichkeitsbetrachtung ........................................... 76<br />

Abbildung 4: Beispiel: Personalaufwendungen in den Migrationsphasen....................... 81<br />

Abbildung 5: Beispiel: Gesamtpersonalaufwand ............................................................ 81<br />

Abbildung 6: Beispiel Erhebungsbogen - Infrastruktur der Server .................................. 87<br />

Abbildung 7: Beispiel Erhebungsbogen - Infrastruktur der Arbeitsplatz-Computer ......... 88<br />

Abbildung 8: Beispiel Erhebungsbogen - Infrastruktur des Netzwerks ........................... 89<br />

Abbildung 9: Beispiel Erhebungsbogen - Drucker-Infrastruktur ...................................... 89<br />

Abbildung 10: Beispiel Erhebungsbogen - Erhebungsbogen für<br />

Serverinfrastrukturdienste ...................................................................... 91<br />

Abbildung 11: Beispiel Erhebungsbogen - Standardsoftware ........................................ 91<br />

Abbildung 12: Beispiel Erhebungsbogen - Office ........................................................... 92<br />

Abbildung 13: Beispiel Erhebungsbogen - IT-Fachverfahren – Architektur und Nutzer .. 94<br />

Abbildung 14: Beispiel Erhebungsbogen - IT-Fachverfahren – Client-<br />

/Serverbetriebssysteme .......................................................................... 94<br />

Abbildung 15: Beispiel Erhebungsbogen - IT-Fachverfahren – Datenbanksysteme und<br />

Applikationsserver .................................................................................. 95<br />

Abbildung 16: Beispiel Erhebungsbogen - IT-Fachverfahren – Benutzer-<br />

/Rechteverwaltung und Schnittstellen ..................................................... 95<br />

Abbildung 17: Beispiel Erhebungsbogen - IT-Fachverfahren – Hosting, Verfahrens-<br />

Entwicklung und Ausprägung ................................................................. 96<br />

Abbildung 18: Beispiel Erhebungsbogen - IT-Fachverfahren – Ausblick, Kosten und<br />

Anmerkungen ......................................................................................... 97<br />

Abbildung 19: Methodik WiBe Migrationen .................................................................. 104<br />

Abbildung 20: WiBe - Beispielhafte WiBe Kalkulation 1, Einführungskosten/ -nutzen .. 120<br />

Abbildung 21: Beispielhafte WiBe Kalkulation 2, Betriebskosten/ -nutzen.................... 121<br />

Abbildung 22: Phasen eines Migrationsprozesses ....................................................... 140<br />

Abbildung 23: Entscheidungsprozess zur Durchführung einer Migration ..................... 141<br />

Abbildung 24: Beispiel einer sanften und stufenweisen Migration ................................ 145<br />

Abbildung 25: Beispiel NT-Domänenstruktur ............................................................... 211<br />

Abbildung 26: Beispiel Windows 2000 ......................................................................... 211<br />

Abbildung 27: B-G-L-R Methode ................................................................................. 257<br />

Seite 528


Abbildung 28: B-G-R Methode ..................................................................................... 258<br />

Abbildung 29: Drucken unter CUPSF .......................................................................... 277<br />

Abbildung 30: Allgemein: Drucken unter Windows ...................................................... 287<br />

Abbildung 31: OpenGroupware-Architektur ................................................................. 311<br />

Abbildung 32: Open-Xchange Architektur .................................................................... 316<br />

Abbildung 33: eGroupWare-Architektur ....................................................................... 320<br />

Abbildung 34: Technische Zusammenhänge in Zarafa ................................................ 323<br />

Abbildung 35: LDAP-basierter grafischer Benutzer-Editor ........................................... 325<br />

Abbildung 36: Scalix-Plattform ..................................................................................... 333<br />

Abbildung 37: Scalix-Clientsysteme ............................................................................. 334<br />

Abbildung 38: Scalix – <strong>Version</strong>en/Funktionsüberblick .................................................. 335<br />

Abbildung 39: Scalix- Integration ................................................................................. 336<br />

Abbildung 40: Zusammenspiel der Server Rollen ........................................................ 338<br />

Abbildung 41: Notes Architektur .................................................................................. 341<br />

Abbildung 42: Architektur Mindquarry .......................................................................... 358<br />

Abbildung 43: Beziehung zwischen MSS <strong>3.0</strong> und MOSS 2007 .................................... 365<br />

Abbildung 44: logische Architektur – SharePoint ......................................................... 366<br />

Abbildung 45: Topologien von Sharepoint Server Farmen ........................................... 366<br />

Abbildung 46: Funktionalität von MOSS 2007 ............................................................. 371<br />

Abbildung 47: Funktionalitäten der verschiedenen SharePoint Editionen .................... 372<br />

Abbildung 48: Grundlegende SharePoint Site-Struktur ................................................ 374<br />

Abbildung 49: Metadaten eines Dokumentes im Browser ............................................ 376<br />

Abbildung 50: Word 2007 (Datei --> Eigenschaften) .................................................... 376<br />

Abbildung 51: Workflow Tool - SharePoint Designer ................................................... 379<br />

Abbildung 52: Workflow Entwicklung mit Visual Studio ................................................ 380<br />

Abbildung 53: Template Management Module............................................................. 388<br />

Abbildung 54: Funktionen von ICEcore OSS, Novell Teaming + Conferencing und<br />

ICEcore Add-On Modulen .................................................................... 391<br />

Abbildung 55: Architektur des Novell Teamingsoftwarepakets ..................................... 393<br />

Abbildung 56: Enterprise Admin Portlet ....................................................................... 395<br />

Abbildung 57: Architektur Novell Conferencing ............................................................ 396<br />

Abbildung 58: Oberfläche der Administrationsschnittstelle zu Novell Conferencing ..... 398<br />

Abbildung 59: Workflow gesteuerte Collaboration ....................................................... 399<br />

Abbildung 60: Erweiterte Suche Novell Teaming ......................................................... 401<br />

Seite 529


Abbildung 61: Zustandsübergänge im Novell Teaming Workflow ................................ 403<br />

Abbildung 62: Grafische Darstellung eines Workflows in Novell Teaming .................... 403<br />

Abbildung 63 Dokumente im HTML-Format darstellen ................................................ 404<br />

Abbildung 64: Der Navigator in OpenOffice.org Writer................................................. 426<br />

Abbildung 65: Natürlichsprachige Formeln in OpenOffice.org Calc.............................. 426<br />

Abbildung 66: VBA in der Office Anwendung ............................................................... 442<br />

Abbildung 67: Benutzeroberfläche für das Arbeiten mit XML-Schemas<br />

in MS Word 2007.................................................................................. 446<br />

Abbildung 68: Datensatz nach dem XML-Schema „Antrag Geburtsurkunde― ............... 447<br />

Abbildung 69: Binär kodierte Excel Tabelle in altem WordprocessingML ..................... 450<br />

Abbildung 70: Architektur des Dokumentengenerators ................................................ 463<br />

Abbildung 71: Externe Datenfelder nach Export in MS-Word Dokument...................... 468<br />

Abbildung 72: Komponenten des .NET-Frameworks ................................................... 474<br />

Abbildung 73: Strukturelle Sicht - Mehrschichtenarchitektur ........................................ 478<br />

Abbildung 74: Katalog monetäre Kriterien der WiBe für Migrationen<br />

– Entwicklungs-/Einführungskosten und -nutzen .................................. 536<br />

Abbildung 75: Katalog monetäre Kriterien der WiBe für Migrationen<br />

– Betriebskosten und -nutzen ............................................................... 537<br />

Abbildung 76: Katalog nicht-monetäre Kriterien der WiBe für Migrationen<br />

– Dringlichkeit ....................................................................................... 538<br />

Abbildung 77: Gewichtungsskala für Dringlichkeitskriterien ......................................... 538<br />

Abbildung 78: Katalog nicht-monetäre Kriterien der WiBe für Migrationen<br />

– Qualität/ Strategie .............................................................................. 539<br />

Abbildung 79: Gewichtungsskala für Qualitätskriterien ................................................ 539<br />

Abbildung 80: Matrix zur Soft- und Hardware-Kostenermittlung ................................... 540<br />

Seite 530


D Tabellenverzeichnis<br />

Tabelle 1: Auswirkungen von Integration und Standardisierung auf ausgewählte Ziele<br />

einer Behörde ......................................................................................... 32<br />

Tabelle 2: Übersicht der Komponenten und Protokolle der Beispiele für<br />

Integrationslösungen .............................................................................. 38<br />

Tabelle 3: Beurteilung des Integrationsgrades der Beispiellösungen ............................. 39<br />

Tabelle 4: Relevanz der OSS-Lizenzen für Nutzer ........................................................ 45<br />

Tabelle 5: Vertragsverhältnisse Nutzer-Zwischenhändler .............................................. 47<br />

Tabelle 6: Anwendbares Recht ...................................................................................... 49<br />

Tabelle 7 Urheberrechtliche Fragen: ............................................................................. 57<br />

Tabelle 8: Vertragliche Ansprüche auf Haftung und Gewährleistung gegen den<br />

Zwischenhändler .................................................................................... 62<br />

Tabelle 9: Migrationsphasen.......................................................................................... 80<br />

Tabelle 10: Erhebungsstruktur Preisinformationen Hard-/ Software - Server ................. 82<br />

Tabelle 11: Erhebungsstruktur Preisinformationen Hard-/ Software -<br />

Arbeitsplatzcomputer .............................................................................. 83<br />

Tabelle 12: Erhebungsstruktur Preisinformationen Hard-/ Software -<br />

Arbeitsplatzcomputer .............................................................................. 86<br />

Tabelle 13: Klassifizierung von Dokumentvorlagen und Makros .................................... 92<br />

Tabelle 14: Informationscluster für die Erhebung der IT-Fachverfahren......................... 93<br />

Tabelle 15: Punktbewertungsskala Unterstützungskontinuität Altsystem ..................... 122<br />

Tabelle 16: Punktbewertungsskala Fehler und Ausfälle („downtime―) .......................... 123<br />

Tabelle 17: Punktbewertungsskala Wartungsprobleme, Personalengpässe ................ 123<br />

Tabelle 18: Punktbewertungsskala Ausbau-/Erweiterungsgrenzen .............................. 123<br />

Tabelle 19: Punktbewertungsskala Interoperabilität, Schnittstellenprobleme<br />

aktuell/zukünftig ................................................................................... 124<br />

Tabelle 20: Punktbewertungsskala Bedienbarkeit und Ergonomie<br />

(Benutzerfreundlichkeit)........................................................................ 124<br />

Tabelle 21: Punktbewertungsskala Einhaltung gesetzlicher Vorgaben ........................ 124<br />

Tabelle 22: Punktbewertungsskala Erfüllung von Datenschutz/ -sicherheit .................. 125<br />

Tabelle 23: Punktbewertungsskala Ordnungsmäßigkeit der Arbeitsabläufe ................. 126<br />

Tabelle 24: Punktbewertungsskala Erfüllung von Auflagen und Empfehlungen ........... 126<br />

Tabelle 25: Punktbewertungsskala Bedeutung innerhalb IT- Rahmenkonzept ............ 127<br />

Seite 531


Tabelle 26: Punktbewertungsskala Einpassung in den IT-Ausbau der Bundesverwaltung<br />

insgesamt ............................................................................................. 128<br />

Tabelle 27: Punktbewertungsskala Folgewirkung für Kommunikationspartner ............. 128<br />

Tabelle 28: Punktbewertungsskala Pilot-Projekt-Charakter des IT-Investitionsvorhabens<br />

............................................................................................................. 129<br />

Tabelle 29: Punktbewertungsskala Nachnutzung bereits vorhandener Technologien .. 130<br />

Tabelle 30: Punktbewertungsskala Plattform-/Herstellerunabhängigkeit ...................... 131<br />

Tabelle 31: Punktbewertungsskala Qualitätsverbesserung bei der Aufgabenabwicklung<br />

............................................................................................................. 132<br />

Tabelle 32: Punktbewertungsskala Beschleunigung von Arbeitsabläufen und -prozessen<br />

............................................................................................................. 132<br />

Tabelle 33: Punktbewertungsskala Einheitliches Verwaltungshandeln ........................ 133<br />

Tabelle 34: Punktbewertungsskala Verständlichkeit und Nachvollziehbarkeit .............. 133<br />

Tabelle 35: Punktbewertungsskala Imageverbesserung .............................................. 134<br />

Tabelle 36: Punktbewertungsskala Attraktivität der Arbeitsbedingungen ..................... 134<br />

Tabelle 37: Punktbewertungsskala Qualifikationssicherung/ -erweiterung ................... 135<br />

Tabelle 38: Apache-Module ......................................................................................... 178<br />

Tabelle 39: Funktionen von OpenLDAP unter Linux .................................................... 192<br />

Tabelle 40: RFCs in denen DNS spezifiziert wird ........................................................ 227<br />

Tabelle 41: Übersicht der unterstützten DNS Resource Record Typen ....................... 229<br />

Tabelle 42: Übersicht der DHCP Optionen .................................................................. 233<br />

Tabelle 43: POSIX-Berechtigungen und Windows-Aggregationen............................... 245<br />

Tabelle 44: POSIX- und Windowsberechtigungen ....................................................... 246<br />

Tabelle 45: Eigenschaften der Windows Sammelberechtigungen................................ 255<br />

Tabelle 46: Windows Attribute ..................................................................................... 255<br />

Tabelle 47: Vergleich der Dateiserver .......................................................................... 264<br />

Tabelle 48: Lizensierung der Microsoft System-Management-Komponenten............... 301<br />

Tabelle 49: Mögliche Komponenten der Open-Xchange-Lösung ................................. 317<br />

Tabelle 50: Auswahl an eGroupWare-Modulen ........................................................... 321<br />

Tabelle 51: Zarafa Komponenten ................................................................................ 324<br />

Tabelle 52: Zentrale Kolab-Server-Komponenten ........................................................ 327<br />

Tabelle 53: Optionale Kolab Server-Komponenten ...................................................... 327<br />

Tabelle 54: Mögliche Migrations- und Transitionspfade ............................................... 348<br />

Tabelle 55: Funktionen von Mindquarry ....................................................................... 363<br />

Tabelle 56: SharePoint-Historie ................................................................................... 364<br />

Seite 532


Tabelle 57: Beispiele für Autorisierungsgruppen in SharePoint ................................... 369<br />

Tabelle 58: Produktfunktionsmatrix.............................................................................. 373<br />

Tabelle 59: Funktionen O3Spaces Workplace ............................................................. 389<br />

Tabelle 60: O3Space – Funktionen in den verschiedenen Editionen ........................... 390<br />

Tabelle 61: Novell Teaming Funktionen....................................................................... 400<br />

Tabelle 62: Novell Conferencing Funktionen ............................................................... 405<br />

Tabelle 63: Systemkomponenten und –voraussetzungen Lotus Quickr 8 .................... 410<br />

Tabelle 64: Funktionen von Lotus Quickr Services für Domino .................................... 416<br />

Tabelle 65: Funktionen von Lotus Quickr Services für WebSphere Portal ................... 420<br />

Tabelle 66: Datei-Endungen von ODF-Dokumenten .................................................... 430<br />

Tabelle 67: Import- und Exportmöglichkeiten in OOo /SO ........................................... 430<br />

Tabelle 68: Überblick der Charakteristika von OOo 1/SO 7 und OOo 2/SO 8 .............. 435<br />

Tabelle 69: Anwendungen in den jeweiligen Suiten für MS Office 2007;...................... 437<br />

Tabelle 70: Microsoft Office <strong>Version</strong>en und zugehörige <strong>Version</strong>en von VBA ............... 442<br />

Tabelle 71: Überblick der Charakteristika von MS Office 2007 und Office 97 - 2003 ... 451<br />

Tabelle 72: Mögliche Konvertierungsprobleme ............................................................ 461<br />

Tabelle 73: Kompatibilitätsmodus bei MS Office 2007 ................................................. 465<br />

Tabelle 74: Verfügbare Dokumentenformatfilter in SO 8/OOo 2 .................................. 470<br />

Tabelle 75: Vorteile von Terminal-Servern und Thin Clients ........................................ 491<br />

Tabelle 76: Ausgewählte Nachteile von Terminal-Servern und Thin Clients ................ 492<br />

Tabelle 77: Übersicht der Funktionen verschiedener Terminalserverlösungen ............ 502<br />

Seite 533


E Anhang –WiBe für Migrationen<br />

1 Kriterienkatalog WiBe für Migrationen<br />

WiBe<br />

Migrationen<br />

Bezeichnung Kriterien für Migrationen<br />

Monetäre Kriterien WiBe<br />

1 Entwicklungskosten/ Einführungskosten und -nutzen<br />

1.1 Zur Ermittlung der Entwicklungskosten<br />

1.1.1 Planungs- und Entwicklungskosten<br />

1.1.1.1 Personalkosten (eigenes Personal)<br />

1.1.1.2 Kosten Externer Beratung<br />

1.1.1.3 Kosten der Entwicklungsumgebung<br />

1.1.1.4 Sonstige Kosten für Sach-/Hilfsmittel<br />

1.1.1.5 Reisekosten (eigenes Personal)<br />

1.1.2 Systemkosten<br />

1.1.2.1 Hardwarekosten<br />

1.1.2.1.1 Host/ Server, Netzbetrieb<br />

1.1.2.1.2 Arbeitsplatzrechner<br />

1.1.2.2 Softwarekosten<br />

1.1.2.2.1 Kosten für Entwicklung bzw. Beschaffung von Software<br />

1.1.2.2.2 Kosten für Anpassung von Software und/oder Schnittstellen, Treiber<br />

1.1.2.2.3 Kosten für Evaluierung, Zertifizierung und Qualitätssicherung<br />

1.1.3 Kosten der Systemeinführung<br />

1.1.3.1 System- und Integrationstest(s)<br />

1.1.3.2 Kosten der Systeminstallation<br />

1.1.3.3 Übernahme von Datenbeständen<br />

1.1.3.4 Erstschulung Anwender und IT-Fachpersonal<br />

1.1.3.5 Einarbeitungskosten Anwender und IT-Fachpersonal<br />

1.1.3.6 Sonstige Umstellungskosten<br />

1.2 Entwicklungs-/Einführungsnutzen aus Ablösung des alten<br />

Verfahrens<br />

1.2.1 Einmalige Kosteneinsparungen (Vermeidung von Erhaltungs-/<br />

Erweiterungskosten Altsystem)<br />

1.2.2 Einmalige Erlöse (aus Verwertung Altsystem)<br />

Abbildung 74: Katalog monetäre Kriterien der WiBe für Migrationen – Entwicklungs-<br />

/Einführungskosten und -nutzen<br />

Seite 534


WiBe<br />

Migrationen<br />

Bezeichnung Kriterien für Migrationen<br />

Monetäre Kriterien WiBe<br />

1 Entwicklungskosten/ Einführungskosten und -nutzen<br />

1.1 Zur Ermittlung der Entwicklungskosten<br />

1.1.1 Planungs- und Entwicklungskosten<br />

1.1.1.1 Personalkosten (eigenes Personal)<br />

1.1.1.2 Kosten Externer Beratung<br />

1.1.1.3 Kosten der Entwicklungsumgebung<br />

1.1.1.4 Sonstige Kosten für Sach-/Hilfsmittel<br />

1.1.1.5 Reisekosten (eigenes Personal)<br />

1.1.2 Systemkosten<br />

1.1.2.1 Hardwarekosten<br />

1.1.2.1.1 Host/ Server, Netzbetrieb<br />

1.1.2.1.2 Arbeitsplatzrechner<br />

1.1.2.2 Softwarekosten<br />

1.1.2.2.1 Kosten für Entwicklung bzw. Beschaffung von Software<br />

1.1.2.2.2 Kosten für Anpassung von Software und/oder Schnittstellen, Treiber<br />

1.1.2.2.3 Kosten für Evaluierung, Zertifizierung und Qualitätssicherung<br />

1.1.3 Kosten der Systemeinführung<br />

1.1.3.1 System- und Integrationstest(s)<br />

1.1.3.2 Kosten der Systeminstallation<br />

1.1.3.3 Übernahme von Datenbeständen<br />

1.1.3.4 Erstschulung Anwender und IT-Fachpersonal<br />

1.1.3.5 Einarbeitungskosten Anwender und IT-Fachpersonal<br />

1.1.3.6 Sonstige Umstellungskosten<br />

1.2 Entwicklungs-/Einführungsnutzen aus Ablösung des alten<br />

Verfahrens<br />

1.2.1 Einmalige Kosteneinsparungen (Vermeidung von Erhaltungs-/<br />

Erweiterungskosten Altsystem)<br />

1.2.2 Einmalige Erlöse (aus Verwertung Altsystem)<br />

Abbildung 75: Katalog monetäre Kriterien der WiBe für Migrationen – Betriebskosten und -nutzen<br />

Seite 535


WiBe<br />

Migrationen<br />

Bezeichnung Kriterien für Migrationen<br />

Nicht-Monetäre Kriterien WiBe<br />

3 Dringlichkeits-Kriterien<br />

3.1 Ablösedringlichkeit Altsystem<br />

3.1.1 Unterstützungs-Kontinuität Altsystem<br />

3.1.2 Stabilität Altsystem<br />

3.1.2.1 Fehler und Ausfälle („downtime―)<br />

3.1.2.2 Wartungsprobleme, Personalengpässe<br />

3.1.3 Flexibilität Altsystem<br />

3.1.3.1 Ausbau-/Erweiterungsgrenzen<br />

3.1.3.2 Interoperabilität, Schnittstellenprobleme aktuell/zukünftig<br />

3.1.3.3 Bedienbarkeit und Ergonomie (Benutzerfreundlichkeit)<br />

3.2 Einhaltung von Verwaltungsvorschriften und Gesetzen<br />

3.2.1 Einhaltung gesetzlicher Vorgaben<br />

3.2.2 Erfüllung Datenschutz/ -sicherheit<br />

3.2.3 Ordnungsmäßigkeit Arbeitsabläufe<br />

3.2.4 Erfüllung von Auflagen und Empfehlungen<br />

Abbildung 76: Katalog nicht-monetäre Kriterien der WiBe für Migrationen – Dringlichkeit<br />

Nr. Kriterien "D"<br />

3 Dringlichkeits-Kriterien 100<br />

3.1 Ablösedringlichkeit Altsystem 75<br />

3.1.1 Unterstützungs-Kontinuität Altsystem 20<br />

3.1.2 Stabilität Altsystem<br />

3.1.2.1 Fehler und Ausfälle („downtime―) 15<br />

3.1.2.2 Wartungsprobleme, Personalengpässe 15<br />

3.1.3 Flexibilität Altsystem<br />

3.1.3.1 Ausbau-/Erweiterungsgrenzen 10<br />

3.1.3.2 Interoperabilität, Schnittstellenprobleme aktuell/zukünftig 10<br />

3.1.3.3 Bedienbarkeit und Ergonomie (Benutzerfreundlichkeit) 5<br />

3.2 Einhaltung von Verwaltungsvorschriften und Gesetzen 25<br />

3.2.1 Einhaltung gesetzlicher Vorgaben 5<br />

3.2.2 Erfüllung Datenschutz/ -sicherheit 10<br />

3.2.3 Ordnungsmäßigkeit Arbeitsabläufe 5<br />

3.2.4 Erfüllung von Auflagen und Empfehlungen 5<br />

Abbildung 77: Gewichtungsskala für Dringlichkeitskriterien<br />

Seite 536<br />

Gewichtung für<br />

Migrationen


WiBe<br />

Migrationen<br />

Bezeichnung Kriterien für Migrationen<br />

Nicht-Monetäre Kriterien WiBe<br />

3 Dringlichkeits-Kriterien<br />

4 Qualitativ-Strategische -Kriterien<br />

4.1 Priorität des IT-Vorhabens<br />

4.1.1 Bedeutung innerhalb IT-Rahmenkonzept<br />

4.1.2 Einpassung in den IT-Ausbau der Bundesverwaltung<br />

insgesamt<br />

4.1.3<br />

Folgewirkung für Kommunikationspartner<br />

4.1.4 4.1.3 Pilot-Projekt-Charakter des IT-Investitionsvorhabens<br />

4.1.5 4.1.4 Nachnutzung bereits vorhandener Technologien<br />

4.1.6 4.1.5 Plattform-/Herstellerunabhängigkeit<br />

Herstellerunabhängigkeit<br />

4.2 Qualitätszuwachs bei Erledigung von Fachaufgaben<br />

4.2.1 Qualitätsverbesserung bei der Aufgabenabwicklung<br />

(Leistungssteigerung bei …)<br />

4.2.2 Beschleunigung von Arbeitsabläufen und -prozessen<br />

4.2.3 Einheitliches Verwaltungshandeln<br />

Erhöhung von Verständlichkeit und Nachvollziehbarkeit<br />

4.2.4 Imageverbesserung<br />

4.3 Mitarbeiterbezogene Effekte<br />

4.3.1 Attraktivität der Arbeitsbedingungen<br />

4.3.2 Qualifikationssicherung/ -erweiterung<br />

Abbildung 78: Katalog nicht-monetäre Kriterien der WiBe für Migrationen – Qualität/ Strategie<br />

Nr.<br />

Kriterien "Q"<br />

4 Qualitativ-Strategische -Kriterien 100<br />

4.1 Priorität des IT-Vorhabens 40<br />

4.1.1 Bedeutung innerhalb IT- Rahmenkonzept 5<br />

4.1.2 Einpassung in den IT-Ausbau der Bundesverwaltung insgesamt 5<br />

4.1.3 Folgewirkung für Kommunikationspartner 5<br />

4.1.4 Pilot-Projekt-Charakter des IT-Investitionsvorhabens 10<br />

4.1.5 Nachnutzung bereits vorhandener Technologien 5<br />

4.1.6 Herstellerunabhängigkeit 10<br />

Qualitätszuwachs bei Aufgabenerledigung 50<br />

4.2.1 Qualitätsverbesserung bei der Aufgabenabwicklung 15<br />

4.2.2 Beschleunigung von Arbeitsabläufen und -prozessen 10<br />

4.2.3 Einheitliches Verwaltungshandeln 10<br />

4.2.4 Erhöhung von Verständlichkeit und Nachvollziehbarkeit 10<br />

4.2.5 Imageverbesserung 5<br />

Mitarbeiterbezogene Effekte 10<br />

4.3.1 Attraktivität der Arbeitsbedingungen 5<br />

4.3.2 Qualifikationssicherung/ -erweiterung 5<br />

Abbildung 79: Gewichtungsskala für Qualitätskriterien<br />

Seite 537<br />

Gewichtung für<br />

Migrationen


2 Matrix zur Soft- und Hardware-Kostenermittlung<br />

M ig ra tion s o bje k t S yste m ty p P ro d u k t K o m p o ne n te n<br />

… B e ispie le … In ve stitio n s-<br />

K o ste n<br />

S erve r<br />

S o ftw a re<br />

H a rd w a re<br />

In fra stru ktu rd ie n ste D ire cto ry N D S<br />

F ile N e tw a re 4 .1 1<br />

D ruc k Je t D ire ct<br />

D N S / D H C P / B O O T P B IN D<br />

S y ste m m a n a g em en t S o ftw a re v e rte ilu n g<br />

In ve n ta risie ru ng<br />

H e lp D e sk<br />

S y ste m ü b e rw a ch u n g<br />

N e tzw e rk ü be rw a ch u n g<br />

G ro u p w a re & M e ss ag ing G ro u p w are eG ro u p w a re<br />

M a il S u se E m a il 2<br />

T e rm in a lse rve r<br />

A rb e its p la tzc o m p u te r<br />

S o ftw a re<br />

B e trie b ssy ste m B e trie b ssy ste m W in d o w s N T 4 .0<br />

S ta n d a rd so ftw a re D o ku m e n te n a us ta us ch , P D F - A crob a t R e ad e r<br />

T e rm in a ls e rve r (C lie n t Z u g riff)<br />

H a rd w a re<br />

B e tra ch te r<br />

W e b b ro w se r u n d M a ilc lie n t M oz illa<br />

B ü ro O p e n O ffice<br />

K o m p rim ie ru n g W in Z ip<br />

D a te n ba n k A cce s s<br />

T a b elle n ka lku la tion E xce l<br />

P rä se n ta tio n P o we rp o in t<br />

T e xtve ra rb e itu n g W o rd<br />

Seite 538<br />

M R T G / N ag io s /<br />

S N M P W a tch N e tvie w<br />

Abbildung 80: Matrix zur Soft- und Hardware-Kostenermittlung<br />

lfd . K o ste n<br />

Jahr 1<br />

lfd


3 Rechtsgrundlagen<br />

BHO 512 , § 7 Wirtschaftlichkeit und Sparsamkeit, Kosten- und Leistungsrechnung<br />

(1) Bei Aufstellung und Ausführung des Haushaltsplans sind die Grundsätze der Wirtschaftlichkeit<br />

und Sparsamkeit zu beachten. Diese Grundsätze verpflichten zur Prüfung,<br />

inwieweit staatliche Aufgaben oder öffentlichen Zwecken dienende wirtschaftliche Tätigkeiten<br />

durch Ausgliederung und Entstaatlichung oder Privatisierung erfüllt werden können.<br />

(2) Für alle finanzwirksamen Maßnahmen sind angemessene Wirtschaftlichkeitsuntersuchungen<br />

durchzuführen. Dabei ist auch die mit den Maßnahmen verbundene Risikoverteilung<br />

zu berücksichtigen. In geeigneten Fällen ist privaten Anbietern die Möglichkeit zu<br />

geben darzulegen, ob und inwieweit sie staatliche Aufgaben oder öffentlichen Zwecken<br />

dienende wirtschaftliche Tätigkeiten nicht ebenso gut oder besser erbringen können<br />

(Interessenbekundungsverfahren).<br />

(3) In geeigneten Bereichen ist eine Kosten- und Leistungsrechnung einzuführen.<br />

Allgemeine Verwaltungsvorschrift (VV) 513 zu § 7 BHO:<br />

1 Grundsatz der Wirtschaftlichkeit 514<br />

Die Ausrichtung jeglichen Verwaltungshandelns nach dem Grundsatz der Wirtschaftlichkeit<br />

soll die bestmögliche Nutzung von Ressourcen bewirken. Damit gehört zur Beachtung<br />

des Grundsatzes der Wirtschaftlichkeit auch die Prüfung, ob eine Aufgabe<br />

durchgeführt werden muss und ob sie durch die staatliche Stelle durchgeführt werden<br />

muss.<br />

Nach dem Grundsatz der Wirtschaftlichkeit ist die günstigste Relation zwischen dem<br />

verfolgten Zweck und den einzusetzenden Mitteln (Ressourcen) anzustreben. Der<br />

Grundsatz der Wirtschaftlichkeit umfasst das Sparsamkeits- und das Ergiebigkeitsprinzip.<br />

Das Sparsamkeitsprinzip (Minimalprinzip) verlangt, ein bestimmtes Ergebnis mit<br />

möglichst geringem Mitteleinsatz zu erzielen. Das Ergiebigkeitsprinzip (Maximalprinzip)<br />

verlangt, mit einem bestimmten Mitteleinsatz das bestmögliche Ergebnis zu erzielen. Bei<br />

der Ausführung des Haushaltsplans, der in aller Regel die Aufgaben (Ergebnis, Ziele)<br />

bereits formuliert, steht der Grundsatz der Wirtschaftlichkeit in seiner Ausprägung als<br />

Sparsamkeitsprinzip im Vordergrund.<br />

Der Grundsatz der Wirtschaftlichkeit ist bei allen Maßnahmen des Bundes, die die Einnahmen<br />

und Ausgaben des Bundeshaushaltes unmittelbar oder mittelbar beeinflussen,<br />

zu beachten. Dies betrifft sowohl Maßnahmen, die nach einzelwirtschaftlichen Kriterien<br />

(z. B. Beschaffungen für den eigenen Verwaltungsbereich und Organisationsänderungen<br />

512<br />

siehe Bundeshaushaltsordnung, i.d.F.v. 19.8.1969, zuletzt geändert durch Art. 3 G v. 22.<br />

9.2005 I 2809.<br />

513<br />

siehe Vorschriftensammlung der Bundesfinanzverwaltung, Verwaltungsvorschrift zur Bundeshaushaltsordnung,<br />

i.d.F.v. 16.05.2001, S. 16 ff..<br />

514<br />

Mit dem Grundsatz der Wirtschaftlichkeit sind - in Übereinstimmung mit der herrschenden<br />

Meinung in den Verwaltungswissenschaften - die Grundsätze der Wirtschaftlichkeit und<br />

Sparsamkeit im Sinne des § 7 BHO gemeint.<br />

Seite 539


in der eigenen Verwaltung) als auch Maßnahmen, die nach gesamtwirtschaftlichen Kriterien<br />

(z. B. Investitionsvorhaben im Verkehrsbereich, Subventionen und Maßnahmen der<br />

Sozial- und Steuerpolitik) zu beurteilen sind. Unter die Maßnahmen fallen auch Gesetzgebungsvorhaben.<br />

2 Wirtschaftlichkeitsuntersuchungen<br />

Wirtschaftlichkeitsuntersuchungen sind Instrumente zur Umsetzung des Grundsatzes<br />

der Wirtschaftlichkeit. Es ist zwischen einzel- und gesamtwirtschaftlichen Wirtschaftlichkeitsuntersuchungen<br />

zu unterscheiden.<br />

Wirtschaftlichkeitsuntersuchungen sind bei allen Maßnahmen durchzuführen. Sie sind<br />

daher bei der Planung neuer Maßnahmen einschließlich der Änderung bereits laufender<br />

Maßnahmen (Planungsphase) sowie während der Durchführung (im Rahmen einer begleitenden<br />

Erfolgskontrolle) und nach Abschluss von Maßnahmen (im Rahmen einer<br />

abschließenden Erfolgskontrolle) vorzunehmen.<br />

2.1 Wirtschaftlichkeitsuntersuchungen als Planungsinstrument<br />

Wirtschaftlichkeitsuntersuchungen in der Planungsphase bilden die Grundlage für die<br />

begleitenden und abschließenden Erfolgskontrollen. Wirtschaftlichkeitsuntersuchungen<br />

müssen mindestens Aussagen zu folgenden Teilaspekten enthalten:<br />

� Analyse der Ausgangslage und des Handlungsbedarfs,<br />

� Ziele, Prioritätsvorstellungen und mögliche Zielkonflikte,<br />

� relevante Lösungsmöglichkeiten und deren Nutzen und Kosten (einschl. Folgekosten),<br />

auch soweit sie nicht in Geld auszudrücken sind,<br />

� finanzielle Auswirkungen auf den Haushalt,<br />

� Eignung der einzelnen Lösungsmöglichkeiten zur Erreichung der Ziele unter Einbeziehung<br />

der rechtlichen, organisatorischen und personellen Rahmenbedingungen,<br />

� Zeitplan für die Durchführung der Maßnahme,<br />

� Kriterien und Verfahren für Erfolgskontrollen (siehe Nr. 2.2).<br />

Ist das angestrebte Ziel nach dem Ergebnis der Ermittlungen oder aus finanziellen<br />

Gründen nicht in vollem Umfang zu verwirklichen, so ist zu prüfen, ob das erreichbare<br />

Teilziel den Einsatz von Mitteln überhaupt rechtfertigt und ob die geplante Maßnahme<br />

besser zu einem späteren Zeitpunkt durchgeführt werden sollte.<br />

Besteht für den Erwerb oder die Nutzung von Vermögensgegenständen eine Wahlmöglichkeit<br />

zwischen Kauf-, Miet-, Leasing-, Mietkauf- und ähnlichen Verträgen, so ist vor<br />

dem Vertragsabschluss zu prüfen, welche Vertragsart für die Verwaltung am wirtschaftlichsten<br />

ist; ein Mangel an Haushaltsmitteln für den Erwerb durch Kauf reicht als Rechtfertigungsgrund<br />

für die Begründung von Dauerschuldverhältnissen nicht aus. Bei der<br />

Ausübung der Wahlmöglichkeit ist zu berücksichtigen, dass Leasingverträge hinsichtlich<br />

ihrer Wirtschaftlichkeit im Einzelfall einer besonders eingehenden Prüfung bedürfen.<br />

Seite 540


2.2 Wirtschaftlichkeitsuntersuchungen als Instrument der Erfolgskontrolle<br />

Die Erfolgskontrolle ist ein systematisches Prüfungsverfahren. Sie dient dazu, während<br />

der Durchführung (begleitende Erfolgskontrolle) und nach Abschluss (abschließende<br />

Erfolgskontrolle) einer Maßnahme ausgehend von der Planung festzustellen, ob und in<br />

welchem Ausmaß die angestrebten Ziele erreicht wurden, ob die Maßnahme ursächlich<br />

für die Zielerreichung war und ob die Maßnahme wirtschaftlich war.<br />

Bei Maßnahmen, die sich über mehr als zwei Jahre erstrecken, und in sonstigen geeigneten<br />

Fällen sind nach individuell festzulegenden Laufzeiten oder zu Zeitpunkten, an<br />

denen abgrenzbare Ergebnisse oder Teilrealisierungen einer Maßnahme zu erwarten<br />

sind, begleitende Erfolgskontrollen durchzuführen. Sie liefern vor dem Hintergrund zwischenzeitlich<br />

eingetretener ökonomischer, gesellschaftlicher und technischer Veränderungen<br />

die notwendigen Informationen für die Entscheidung, ob und wie die Maßnahme<br />

fortgeführt werden soll.<br />

Von der begleitenden Erfolgskontrolle ist die laufende Beobachtung zu unterscheiden.<br />

Im Gegensatz zum systematisch angelegten umfassenden Prüfungsverfahren der Erfolgskontrolle<br />

ist sie eine fortlaufende gezielte Sammlung und Auswertung von Hinweisen<br />

und Daten zur ergänzenden Beurteilung der Entwicklung einer Maßnahme. Alle<br />

Maßnahmen sind nach ihrer Beendigung einer abschließenden Erfolgskontrolle zur<br />

Überprüfung des erreichten Ergebnisses zu unterziehen.<br />

Methodisch besteht zwischen begleitender und abschließender Erfolgskontrolle kein<br />

Unterschied.<br />

Die Erfolgskontrolle umfasst grundsätzlich folgende Untersuchungen:<br />

� Zielerreichungskontrolle<br />

Mit der Zielerreichungskontrolle wird durch einen Vergleich der geplanten Ziele<br />

mit der tatsächlich erreichten Zielrealisierung (Soll-Ist-Vergleich) festgestellt, welcher<br />

Zielerreichungsgrad zum Zeitpunkt der Erfolgskontrolle gegeben ist. Sie bildet<br />

gleichzeitig den Ausgangspunkt von Überlegungen, ob die vorgegebenen<br />

Ziele nach wie vor Bestand haben.<br />

� Wirkungskontrolle<br />

Im Wege der Wirkungskontrolle wird ermittelt, ob die Maßnahme für die Zielerreichung<br />

geeignet und ursächlich war. Hierbei sind alle beabsichtigten und unbeabsichtigten<br />

Auswirkungen der durchgeführten Maßnahme zu ermitteln.<br />

� Wirtschaftlichkeitskontrolle<br />

Mit der Wirtschaftlichkeitskontrolle wird untersucht, ob der Vollzug der Maßnahme<br />

im Hinblick auf den Ressourcenverbrauch wirtschaftlich war (Vollzugswirtschaftlichkeit)<br />

und ob die Maßnahme im Hinblick auf übergeordnete Zielsetzungen<br />

insgesamt wirtschaftlich war (Maßnahmenwirtschaftlichkeit).<br />

Erfolgskontrollen sind auch durchzuführen, wenn die Dokumentation in der Planungsphase<br />

unzureichend war. In diesem Fall sind die benötigten Informationen nachträglich<br />

zu beschaffen.<br />

Seite 541


Die Zielerreichungskontrolle und die Wirkungskontrolle sind die Grundlagen für die Wirtschaftlichkeitskontrolle.<br />

Im Gegensatz zur Wirtschaftlichkeitskontrolle lassen sie aber<br />

den Mitteleinsatz unberücksichtigt.<br />

2.3 Methoden (Verfahren) der Wirtschaftlichkeitsuntersuchungen 515<br />

2.3.1 Allgemeines<br />

Bei der Durchführung von Wirtschaftlichkeitsuntersuchungen ist die nach den Erfordernissen<br />

des Einzelfalls einfachste und wirtschaftlichste Methode anzuwenden. Zur Verfügung<br />

stehen einzelwirtschaftlich und gesamtwirtschaftlich orientierte Verfahren. Welches<br />

Verfahren anzuwenden ist, bestimmt sich nach der Art der Maßnahme, dem mit ihr verfolgten<br />

Zweck und den mit der Maßnahme verbundenen Auswirkungen.<br />

Gesamtwirtschaftlich orientierte Verfahren sind für alle Maßnahmen mit erheblichen gesamtwirtschaftlichen<br />

Auswirkungen geeignet. Einzelwirtschaftlich orientierte Verfahren<br />

sind geeignet für Maßnahmen, die sich in erster Linie auf den betrachteten Verwaltungsbereich<br />

(z. B. Ministerium, Behörde) beziehen.<br />

2.3.2 Einzelwirtschaftliche Verfahren<br />

Für Maßnahmen mit nur geringen und damit zu vernachlässigenden gesamtwirtschaftlichen<br />

Nutzen und Kosten sind grundsätzlich die finanzmathematischen Methoden der<br />

Investitionsrechnung (z. B. Kapitalwertmethode) zu verwenden. Für Maßnahmen mit nur<br />

geringer finanzieller Bedeutung können auch Hilfsverfahren der Praxis (z. B. Kostenvergleichsrechnungen,<br />

Angebotsvergleiche) durchgeführt werden.<br />

2.3.3 Gesamtwirtschaftliche Verfahren<br />

Für Maßnahmen, die nicht zu vernachlässigende gesamtwirtschaftliche Auswirkungen<br />

haben, sind gesamtwirtschaftliche Wirtschaftlichkeitsuntersuchungen (z. B. Kosten-<br />

Nutzen-Analyse) durchzuführen.<br />

2.4 Verfahrensvorschriften<br />

2.4.1 Die Wirtschaftlichkeitsuntersuchungen sind grundsätzlich von der Organisationseinheit<br />

durchzuführen, die mit der Maßnahme befasst ist.<br />

2.4.2 Das Ergebnis der Untersuchung ist zu vermerken und zu den Akten zu nehmen.<br />

Bei Maßnahmen mit nur geringer finanzieller Bedeutung kann hiervon abgesehen werden.<br />

2.4.3 Zu den Unterlagen nach § 24 gehören auch Wirtschaftlichkeitsuntersuchungen.<br />

2.4.4 Die Beauftragten für den Haushalt entscheiden, über welche Wirtschaftlichkeitsuntersuchungen<br />

sie zu unterrichten sind. Sie können sich an den Wirtschaftlichkeitsuntersuchungen<br />

beteiligen und die Berücksichtigung einer Maßnahme bei der Aufstellung der<br />

Voranschläge und bei der Ausführung des Haushaltsplans von der Vorlage von Wirtschaftlichkeitsuntersuchungen<br />

abhängig machen.<br />

515 siehe Arbeitsanleitung Einführung in Wirtschaftlichkeitsuntersuchungen, Anlage zum Rundschreiben<br />

des BMF vom 31. August 1995 - II A 3 - H 1005 - 23/95 - (GMBl 1995, S. 764).<br />

Seite 542


3 Interessenbekundungsverfahren 516<br />

In geeigneten Fällen ist privaten Anbietern die Möglichkeit zu geben darzulegen, ob und<br />

inwieweit sie staatliche Aufgaben oder öffentlichen Zwecken dienende wirtschaftliche<br />

Tätigkeiten nicht ebenso gut oder besser erbringen können (Interessenbekundungsverfahren).<br />

Ein Interessenbekundungsverfahren kommt bei der Planung neuer und der Überprüfung<br />

bestehender Maßnahmen oder Einrichtungen in Betracht. Es erfordert eine Erkundung<br />

des Marktes nach wettbewerblichen Grundsätzen. Das Ergebnis der Markterkundung ist<br />

mit den sich bietenden staatlichen Lösungsmöglichkeiten zu vergleichen, um eine wirtschaftliche<br />

Bewertung zu gewährleisten.<br />

Das Interessenbekundungsverfahren ersetzt nicht das Verfahren zur Vergabe öffentlicher<br />

Aufträge. Wenn das Interessenbekundungsverfahren ergibt, dass eine private Lösung<br />

voraussichtlich wirtschaftlich ist, ist ein Verfahren zur Vergabe öffentlicher Aufträge<br />

durchzuführen.<br />

4 Kosten- und Leistungsrechnung<br />

Dauerhafte Aufgabe der öffentlichen Verwaltung ist es, das Verhältnis von Kosten und<br />

Leistungen bei der Aufgabenwahrnehmung zu verbessern. Grundlage dafür ist die Einführung<br />

einer Kosten- und Leistungsrechnung gemäß der Standard-KLR 517 .<br />

Die mit der Kosten- und Leistungsrechnung erzielten Ergebnisse machen entstandene<br />

Kosten und erbrachte Leistungen transparent. Ebenso wird eine wirksame Planung,<br />

Steuerung und Kontrolle ermöglicht. Auch die Haushaltsplanung und -ausführung kann<br />

durch die Kosten- und Leistungsrechnung unterstützt werden. Ebenso ist durch Informationen<br />

der Kosten- und Leistungsrechnung eine Ermittlung von kostendeckenden Gebühren<br />

und Entgelten realisierbar.<br />

516 Zur Durchführung des Interessenbekundungsverfahrens siehe Rundschreiben des BMF<br />

vom 31. August 1995 - II A 3 - H 1005 - 22/95 - (GMBl 1995, S. 764).<br />

517 VSF H 90 01<br />

Seite 543

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!