Lade Inhalt...

Evaluation von Nintex Workflow 2007 für die Erstellung von Workflow-Lösungen unter Microsoft SharePoint Technologien

Bachelorarbeit 2009 100 Seiten

Informatik - Angewandte Informatik

Leseprobe

Inhaltsverzeichnis

1 Einleitung
1.1 Motivation
1.2 Zielsetzung
1.3 Zielgruppen
1.4 Gliederung
1.5 Persönliche Anmerkungen
1.5.1 Begründung für Forcierung auf Microsoft
1.5.2 Gewonnene Erkenntnisse

2 Technologien
2.1 Extensible Markup Language (XML)
2.1.1 Bestandteile eines XML-Dokuments
2.1.1.1 Document Information Item
2.1.1.2 Element Information Item
2.1.1.3 Attribute Information Item
2.1.1.4 Comment Information Item
2.1.2 Gestaltung von XML-Dokumenten
2.1.3 XML-Schema-Definition (XSD)
2.1.3.1 Aufbau eines XSD-Dokuments
2.1.3.2 Einfache Datentypen
2.1.3.3 Komplexe Datentypen
2.2 Web Services
2.2.1 Web Service Standards
2.2.2 Service-oriented Architecture (SOA)
2.3 Microsoft Office InfoPath
2.3.1 Formular vs. Formularvorlage
2.3.2 Bedarfsermittlung
2.3.2.1 Effiziente Teamarbeit
2.3.2.2 Integration in Arbeitsprozesse
2.3.3 Kollaboration
2.3.4 Besonderheiten
2.4 SharePoint Plattform
2.4.1 Anwendungsdomänen
2.4.2 Themenbereiche
2.4.3 Varianten
2.4.3.1 Windows SharePoint Services 3.0 (WSS)
2.4.3.2 Microsoft Office SharePoint Server 2007 (MOSS)
2.4.3.3 Microsoft Office SharePoint Server 2007 for Search (MOSS)
2.4.3.4 Abgrenzung von MOSS 2007 zu WSS 3.0
2.4.4 Gesamtzusammenhang
2.4.5 Leitfragen
2.4.6 Aufbau
2.4.6.1 Inhaltstypen

3 Workflow
3.1 Begriffe
3.1.1 Prozess
3.1.2 Geschäftsprozess
3.1.3 Workflow
3.1.3.1 Sequentieller Workflow
3.1.3.2 Zustandsbasierter Workflow
3.1.4 Workflow-Management
3.1.4.1 Aufgaben
3.1.4.2 Ziele
3.2 Workflow-Integration in SharePoint
3.2.1 Windows Workflow Foundation (WF)
3.3 Alternativen
3.4 Das Referenzbeispiel
3.4.1 Urlaubsantrag
3.4.1.1 Anforderungen
3.4.1.2 Szenario

4 Nintex Workflow 2007
4.1 Allgemeine Informationen
4.1.1 Rollen
4.1.2 Data Connection Libraries
4.1.3 Forms Libraries
4.1.4 Cross Domaining
4.2 Das Tool
4.2.1 Lizenzen
4.2.2 Partner und Kunden
4.2.3 Kollaboration
4.2.4 Installation
4.2.4.1 Voraussetzungen
4.2.5 Integration
4.2.5.1 Zentraladministration
4.2.5.2 Webseitenadministration
4.2.5.3 Benutzer-Menü
4.2.5.4 Settings-Menü
4.2.6 Entwicklungstools
4.2.6.1 Web Designer
4.2.6.2 Software Development Kit (SDK)
4.2.7 Reporting
4.2.8 Workflow-Historie
4.2.9 Versionierung
4.2.10 LazyApproval
4.3 Beispiel: Urlaubsantrag
4.3.1 Start
4.3.2 Zustand: Mitarbeiter
4.3.3 Zustand: Vorgesetzter
4.3.4 Zustand: Personalabteilung
4.3.5 Zustand: Ende
4.3.6 Das Formular
4.3.7 Testfälle zur Prüfung der Richtigkeit

5 Analyse und Evaluation
5.1 Kategorien und Kriterien
5.1.1 Kriterienfindung
5.1.2 Kategorien
5.1.3 Kriterien
5.1.4 Gewichtungen der Kategorien
5.2 Bewertungssystem
5.2.1 Berechnungsformel
5.2.2 Gewichtung der Kriterien
5.2.3 Rechenbeispiel
5.3 Evaluation und Ergebnis
5.4 Auswertung des Ergebnisses
5.4.1 Workflow-Engine
5.4.2 Usability
5.4.3 Infrastruktur
5.4.4 Dokumentation
5.4.5 Allgemeine Produkteigenschaften
5.4.6 Support
5.5 Vor- und Nachteile
5.6 Fazit

6 Alternative Workflow-Lösungen
6.1 K2 blackpoint beta
6.1.1 Problematiken und Begründung für den Ausschluss
6.1.2 Besonderheiten
6.1.3 Vor- und Nachteile
6.2 SAP Business Workflow
6.3 BlueSpring BPM
6.4 Citrix Workflow Studio
6.5 GEDYS IntraWare
6.6 IBM Lotus Workflow

7 Zusammenfassung

8 Ausblick

Literaturverzeichnis

A Verzeichnisse
A.1 Abbildungsverzeichnis
A.2 Tabellenverzeichnis
A.3 Quellcodeverzeichnis
A.4 Formelverzeichnis

B Anhang
B.1 Testfragen
B.2 MOSS- und WSS-Funktionalitäten im Vergleich
B.3 Nintex Workflow 2007 Aktionen

1 Einleitung

Im Rahmen dieser Einleitung soll auf grundlegende Dinge eingegangen werden, die sich um die Beweggründe für die Evaluation von Nintex Workflow 2007 drehen.

Die Einleitung beginnt mit einer Motivation, warum es lohnend ist, sich mit diesem Thema auseinanderzusetzen. Gerade Fachanwender bzw. Entwickler können aus dieser Bachelorarbeit einen Mehrwert für die Arbeit mit SharePoint1 bzw. Workflows unter SharePoint ziehen.

Die Zielsetzung nennt das eigentliche Ziel dieser Bachelorarbeit, woraufhin die Zielgruppen und die Verdeutlichung der Gliederung folgt. Hier soll vor allem der ,,Rote Faden" durch die einzelnen Kapitel beschrieben werden. Im Rahmen dieser Beschreibung soll jedes Kapitel kurz erläutert und das aufeinander aufbauen der Themen gezeigt werden.

Abschließen wird die Einleitung mit einigen persönlichen Anmerkungen, wo es weniger um die sachlichen Werte geht, als vielmehr um Erfahrungen, die während des Erarbeitens gesammelt wurden.

Als letztes noch eine Anmerkung zum Thema an sich: Im Laufe der Evaluation zeigte sich, dass die Bachelorarbeit nicht in der ursprünglich angedachten Form umgesetzt werden konnte. Da das Thema zuerst anders geplant war, als es jetzt umgesetzt wurde, wird die Begründung über den Wegfall von K2 blackpoint beta 2 2 von der Firma K2 eine wichtige Rolle spielen. Das Tool sollte im gleichen Maße Bestandteil dieser Bachelorarbeit werden, wie es jetzt Nintex Workflow 2007 geworden ist. Die genaueren Gründe werden in 6.1 K2 blackpoint beta 2 weiter erläutert.

1.1 Motivation

In den letzten Monaten wurde eines immer wieder deutlich: Viele Kunden der Firma HanseVision möchten Kompetenzen bei der Workflow-Entwicklung im eigenen Hause aufbauen und so wurde der Ruf nach möglichen und anwenderfreundlichen Lösungen immer lauter. Auch zeigte sich, dass Geschäftsprozesse zunehmend automatisiert und digitalisiert werden. D.h. sie werden nicht mehr wie Oblich mit Stift und Papier ", sondern mittels Software-Lösungen abgewickelt.

Da viele dieser Kunden auf irgendeine Art Software setzen (i.d.R. SharePoint), welche auf ihre jeweils eigene Art und Weise Dokumente speichert, Daten verwaltet oder Geschäftsabläufe in digitaler Form abbildet, muss eine Workflow-Lösung her, die sich in die bereits vorhandene Unternehmens-Infrastruktur integrieren lässt. In dieser Hinsicht ist Nintex Workflow 2007 nicht die einzige, aber die hier untersuchte Software, welche sich direkt in Microsoft SharePoint einbettet (siehe 4.2.5 Integration). Es werden jedoch noch Alternativen im weiteren Verlauf dieser Bachelorarbeit genannt (siehe Kapitel 6).

Es gibt eine Vielzahl von Argumenten, die motivieren, sich mit dem Thema dieser Bachelorarbeit zu befassen. Folgend die wesentlichen Beweggründe:

- Wachsender Markt

Das SharePoint Universum wird sich weiter ausdehnen ", schreibt Oliver Staubli (1). SharePoint erhält bei jeder neuen Version neue Features3, die mehr und mehr Kundenwünsche erfüllen und Geschäftsfelder abdecken. Daher werden hier immer wieder Fachleute gesucht, die sich mit SharePoint auskennen. Die Einsatzbereiche gehen über die einfache Entwicklung bis hin zum reinen Consulting.

- Große Verbreitung

Da SharePoint eine von Microsoft erstellte Software ist, hat diese entsprechende große Nachfragen - also viele Kunden, die eben diese nutzen. Das hat zur Folge, dass viele Kunden Dienstleistungen Dritter in Anspruch nehmen, damit diese dessen Wünsche umsetzen. In Deutschland werden die meisten SharePoint Projekte durch Firmen, wie die HanseVision, verwirklicht. Diese Firmen sind sehr spezialisiert und setzen ausschließlich auf Microsoft Produkte.

- Weitgreifender Support

Unter gewissen Voraussetzungen können die Support Möglichkeiten für das Arbeiten mit SharePoint und Nintex Workflow 2007 voll ausgeschöpft werden. Erstens gibt es den Microsoft Support, wenn es um SharePoint Fragen geht und zweitens bietet Nintex einen hervorragenden Support für die eigenen Produkte an. Beides sind wichtige Punkte, wenn es um die Einarbeitung in ein neues Tool und mit SharePoint in eine neue Umgebung geht.

- Hohes Umsatzpotential

Kunden, die sich mit SharePoint auseinander setzen bzw. es einsetzen, investieren i.d.R. auch entsprechende Budgets in Projekte. Daraus folgt auch für Projekte unter Nintex Workflow 2007 ein gewisses Potential, hier entsprechend Anwendung zu finden, da grundsätzlich alles in Verbindung mit SharePoint steht.

- Breites Kundenspektrum

Das Vorteilhafte an SharePoint ist, dass es eine sehr große Varianz an Kunden hat. Es gibt

mittelständische, aber auch große Unternehmen, die SharePoint einsetzen. Deswegen ist hier ein Einsatz von Nintex Workflow 2007 zu prüfen, ob sich nicht ähnliche Muster ableiten lassen, wie es bei der HanseVision zurzeit der Fall ist.

1.2 Zielsetzung

Das Ziel dieser Bachelorarbeit ist es, die Praxistauglichkeit von Nintex Workflow 2007 zu prüfen und anhand dieser Evaluation eine Auswertung zu erstellen, um dann letzten Endes zu einem aussagekräftigen Ergebnis zu kommen. Durch dieses Ergebnis kann die Praxistauglichkeit von Nintex Workflow 2007 abgeleitet werden.

Die Auswertung soll zusätzlich Unternehmen im Entscheidungsprozess zu einer Lösung unterstützen und ihnen genauestens die Vor- und Nachteile von Nintex Workflow 2007 aufzeigen.

1.3 Zielgruppen

Inhaltlich konzentriert sich diese Bachelorarbeit auf zwei Zielgruppen, welche im Unternehmen etwaige Prozesse mit diesem Tool umzusetzen haben. I.d.R. wird eine Entscheidung, für oder gegen Nintex Workflow 2007, durch diese Zielgruppen gefällt - welche wären:

- Die Entwickler
- Und die Fachanwender (ohne Programmierkenntnisse)

1.4 Gliederung

Diese Bachelorarbeit gliedert sich in insgesamt acht Kapitel. Folgend soll die Gliederung bzw. der ,,Rote Faden" dieser verdeutlicht werden.

Die Einleitung in die Thematik wird von dem Kapitel 2 gefolgt. Das Kapitel 2 bildet eine sehr wichtige Grundlage für das Verständnis vieler eingesetzter Technologien, die sonst die meiste Zeit im Hintergrund verborgen bleiben. Als eine der grundlegendsten Technologien dient XML4. Daher sollen anfangs die nötigen Kenntnisse in XML vermittelt werden. Hierauf folgt die Thematik der Web Services5. Beide Themen gewinnen in der heutigen Zeit mehr und mehr an Bedeutung und werden im Rahmen dieser Bachelorarbeit vor allem in Verbindung mit Microsoft InfoPath6 verwendet, welches im Anschluss verdeutlicht wird. Das Kapitel 2 schließt mit dem Themenkomplex der SharePoint Plattform ab. Das gesamte Kapitel ist gerade für einen Fachanwender interessant, da die wesentlichen Grundlagen geklärt werden.

Ähnlich verhält es sich mit dem Kapitel 3. Dieses schult das grundsätzliche Verständnis zur Thematik Workflows. Dabei geht es speziell um die damit verbundenen Fachbegriffe, als auch um die Integration von Workflows in SharePoint, etwaige alternative Lösungen und dem Referenzbeispiel, an welchem Nintex Workflow 2007 konkret vorgestellt wird. Dieses Kapitel ist für beide Zielgruppen gut geeignet.

Das Kapitel 4 soll dem Anwender das Tool an sich vorstellen, allgemeine Informationen zum Umgang mit Nintex Workflow 2007 vermitteln. Sowohl der Entwickler, als auch der Fachanwender finden hier den richtigen Einstieg in das untersuchte Tool.

Kapitel 5 beinhaltet die eigentliche Analyse und die Evaluation von Nintex Workflow 2007. Hier geht es ganz entscheidend darum, Nintex Workflow 2007 anhand von aufgestellten Kriterien zu beurteilen. Abschließen wird dieses Kapitel mit einer Auswertung der Ergebnisse und der Erklärung, warum das Tool an welcher Stelle wie benotet wurde. Ziel ist es hier, dem Leser einen soliden Eindruck zu vermitteln, inwieweit Nintex Workflow 2007 in der Praxis einsetzbar ist und wo dessen Stärken und Schwächen liegen.

Nintex Workflow 2007 ist der zentrale Bestandteil dieser Bachelorarbeit, jedoch gibt es sowohl für SharePoint, als auch für andere Plattformen, Alternativen. Auf genau diese Alternativen soll im Kapitel 6 eingegangen werden.

Die Bachelorarbeit endet mit den Kapiteln 7 und 8, wo es darum geht, das bereits Gelernte wieder aufzugreifen und ausblickend ein paar Denkanstöße zu geben, an welcher Stelle aufbauend weiter gearbeitet werden kann.

1.5 Persönliche Anmerkungen

Bevor das Kapitel 2 startet, sollen in diesem Abschnitt noch ein paar persönliche Anmerkungen zur Bachelorarbeit aufgeführt werden.

1.5.1 Begründung für Forcierung auf Microsoft

Der erste wichtige Punkt dreht sich generell um die Frage, warum in dieser Bachelorarbeit ausschließlich auf Microsoft Lösungen gesetzt wurde. Dem liegen zwei grundlegende Aspekte zu Grunde:

- Die Firma HanseVision setzt ausschließlich auf Microsoft Lösungen und ist zudem zertifizierter Microsoft Gold Partner
- Das hier untersuchte Produkt setzt ausschließlich auf Microsoft Produkte, hier speziell auf die SharePoint Plattform

Der Markt zeigt eine Vielzahl von Alternativen auf. Vor allem in Bezug auf die SharePoint Plattform, gibt es Lösungen anderer großer Hersteller, wie beispielsweise von IBM (siehe Kapitel 6). Ähnlich verhält sich dieses mit Nintex Workflow 2007. Auf etwaige Alternativen wird entsprechend hingewiesen.

1.5.2 Gewonnene Erkenntnisse

Der zweite wichtige Punkt sind die gewonnenen Erkenntnisse aus dem gesamten Bearbeitungsprozess dieser Bachelorarbeit, die an dieser Stelle festgehalten werden sollen.

- Milestone Reports

Das Anlegen von wöchentlichen Milestone Reports7, um eigene Fortschritte im Laufe der letzten Monate gut verfolgen zu können, halfen enorm dabei, den Fortschrittsprozess dieser Bachelorarbeit immer wieder Richtung Ziel zu treiben. Auch halfen diese dabei, mit den betreuenden Professoren Wochenziele zu verifizieren, um so frühzeitig problemlösend einzugreifen.

- Lerneffekt

Aus der ganzen Phase konnten wertvolle Erfahrungen gesammelt werden, auch wenn es an der einen oder anderen Stelle nicht weiterging. Trotzdem wird das Anlegen solcher wissenschaftlicher Arbeiten in Zukunft zum Einen einfacher und zum Anderem effizienter. So ergibt sich nicht nur eine fachliche Kompetenz aus dieser Bachelorarbeit, sondern auch die Erfahrung, sich an einer umfangreichen Arbeit ,,gemessen" zu haben.

2 Technologien

Das Thema dieser Bachelorarbeit ist eng verwoben mit vielen Lösungen aus der Microsoft Produktwelt. In diesem Rahmen ist es nicht möglich alle Facetten der verwendeten Lösungen in der vollen Tiefe zu beleuchten. Es wird jedoch ein Überblick über die wichtigsten Technologien im Kontext dieser Bachelorarbeit gegeben. Der Aufbau des vorliegenden Kapitels ist bewusst so gewählt, dass der Leser Schritt für Schritt an die Produkte herangetragen wird. Wichtig hierbei ist, einen Gesamtzusammenhang der hier beschriebenen Lösungen zu gewinnen und deren Einsatzmöglichkeiten kennenzulernen.

Da alle folgenden Inhalte dieses Kapitels, wie beispielsweise InfoPath oder die Web Services auf XML aufbauen, wird das Kapitel mit dem Thema XML eingeleitet. Geklärt werden soll hier in erster Linie, worum es sich bei XML handelt. Dazu werden sowohl der Aufbau eines XML-Dokuments besprochen, wie auch die Gestaltung und die Validierung von XML-Code.

Daraufhin wird auf den Themenbereich Web Services kurz eingegangen. Vor allem die Ursprünge und die technologiespezifischen Probleme von alternativen Lösungen sollen verstanden werden. Abschließend in diesem Abschnitt werden die aktuellen Standards besprochen und das Thema Service-oriented Architecture (SOA) angeschnitten (siehe 2.2.2 Service-oriented Architecture (SOA)).

Als nächster Themenbereich wird InfoPath angesprochen. Nachdem geklärt wurde, um was es sich hierbei handelt, wird auf die grundlegenden Formularmodi eingegangen, da dies essentiell für die tägliche Arbeit mit InfoPath ist. Diesem Anschnitt folgt eine kurze Bedarfsermittlung, der Kollaboration (siehe 2.3.3 Kollaboration) und abgeschlossen wird der Abschnitt mit einigen Hinweisen bzgl. der Besonderheiten von InfoPath.

Letztes Thema dieses Kapitels ist SharePoint, welches auch gleichzeitig der umfangreichste Abschnitt dieses Kapitels ist. SharePoint ist eine Software-Lösung, die mittlerweile in sehr vielen Bereichen der IT eingesetzt wird. Daher werden in diesem Abschnitt grundlegende Fragestellungen zu SharePoint geklärt und schwerpunktmäßig der Gesamtzusammenhang dieser Thematik, der Aufbau, die Einsatzgebiete und die Darstellung der verschiedenen Produktvarianten im Vergleich vorgestellt. Zudem werden Leitfragen besprochen, die bei der Entscheidungsfindung für eine SharePoint Lösung behilflich sein sollen.

Ziel dieses ganzen Kapitels ist es, dem Leser ein grundsätzliches Verständnis für die, in den darauf folgenden Kapiteln verwendeten, Technologien zu vermitteln. Gerade der Einstieg in die hier untersuchte Workflow-Lösung sollte sich nach diesem Kapitel, vor allem aber nach dem Abschnitt über SharePoint, einfacher gestalten. Auch sind die Code-Beispiele im XML-Abschnitt so gewählt, dass an dieser Stelle selber ausprobiert und nachprogrammiert werden kann.

2.1 Extensible Markup Language (XML)

XML wird zur Darstellung hierarchisch strukturierter Daten in Form von lesbaren Textdateien eingesetzt. Geschichtlich betrachtet stammt XML von der Beschreibungssprache Standard Generalized Markup Language (SGML) ab und enthält entsprechend eine Untermenge der Sprachmöglichkeiten von SGML (2).

SGML ist eine Metasprache. Das bedeutet, dass SGML in der Lage ist, eigene Sprachen zu definieren und man mit Hilfe dieser Sprache Ober andere Sprachen Aussagen machen kann. Ein Beispiel zur Verdeutlichung: Wenn beispielsweise in der deutschen Sprache Ober eine andere Fremdsprache gesprochen wird, dann ist die deutsche Sprache in diesem Falle die Metasprache und die, Ober die in diesem Moment gesprochene Fremdsprache, die Sprache, Ober welche Aussagen getroffen werden.

Was bedeutet dies im Hinblick auf XML? XML ermöglicht es, Grammatikstrukturen zu definieren (siehe Quellcode 1). Diese Grammatikstrukturen beschreiben eine Art eigene Sprache - die Metasprache, die wiederrum mit natOrlich sprachlichen Informationen gefOllt wird. Diese natOrlich sprachlichen Informationen repräsentieren die eben genannte Fremdsprache.

Der große Vorteil von XML gegenOber anderen Sprachen, wie beispielsweise HTML8 ist, dass sämtliche Elemente mit frei definierbaren Namen belegt werden können. In HTML gibt es nur vordefinierte Elemente wie <table>, <div>, <br>, <p>, <i>, usw. In XML hingegen, können Elemente wie <Adresse> oder <Person> ohne Probleme definiert werden. In Quellcode 1 kann dazu ein einfaches Beispiel betrachtet werden. Bei der freien Namenswahl sollte allerdings der Zusammenhang zwischen dem ausgedachten Namen eines Elements und der wahren Bedeutung innerhalb einer Grammatik erkennbar sein.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 1 - Ein einfaches XML-Beispiel

Im Gegensatz zu HTML, ist XML Case-sensitive, d.h. es achtet auf die Groß- bzw. Kleinschreibung der einzelnen Elemente. Was jedoch beide gemein haben ist, dass beide Sprachen plattformunabhängig sind. Das ist natOrlich dann interessant, wenn Systeme in Kommunikation treten sollen, die unterschiedliche Betriebssysteme nutzen. Ein anderes Beispiel wäre die Kommunikation von zwei Anwendungen, die in unterschiedlichen Sprachen entwickelt wurden. Auch hier ist die Anwendung von XML als Kommunikationsmedium einfach und praktikabel.

XML-Dokumente sind i.d.R. Dateitypen im XML-Format und tragen die Dateiendung *.xml während HTML-Dokumente die Dateiendung *.html haben. HTML und XML sind nicht zu verwechseln. Beide besitzen deren Einsatzgebiet entsprechende Eigenschaften. Während es in HTML in erster Linie darum geht, das Aussehen von Dokumenten optimal und den Wünschen des Anwenders entsprechend zu formatieren, wird in XML hingegen nur die eigentliche Struktur eines Dokumentes festgelegt. Hier wird also ganz klar die Darstellung vom Inhalt abgekoppelt. Die eigentliche Formatierung findet mittels der Extensible Stylesheet Language (XSL) (siehe 2.1.2 Gestaltung von XML-Dokumenten) oder Cascading Style Sheets (CSS)9 statt. Auf die Cascading Stylesheets wird im Rahmen dieser Bachelorarbeit nicht weiter eingegangen.

2.1.1 Bestandteile eines XML-Dokuments

Ein XML-Dokument besteht aus genau einem Information Set. Ein Information Set beinhaltet alle Informationen eines Dokuments, also welche Elemente, Attribute, Kommentare usw. es enthält. Ein XML-Dokument ist somit ein Information Set mit n-beliebigen Einträgen, also konkret dessen verschiedenen Informationen.

In diesem Abschnitt sollen die wesentlichen Komponenten anhand von einfachen Beispielen erläutert werden.

2.1.1.1 Document Information Item

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 2 - Ein Document Information Item

In Quellcode 2 ist ein Document Information Item definiert, der äußere Rahmen bzw. die Grundkonfiguration eines XML-Dokuments. Es definiert die Version version="1.O" sowie das Codierungsschema encoding=" UTF- 8". Das Codierungsschema ist beliebig wählbar.

2.1.1.2 Element Information Item

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 3 - Element Information Items

Quellcode 3 zeigt Element Information Items, welche die Struktur eines XML-Dokuments definieren, indem diese ineinander verschachtelt werden. Diese bilden das Korsett für die anfangs erklärte Objektsprache. Wie bereits im vorhergegangenen Abschnitt erwähnt, sollten die Elemente aussagekräftige Namen tragen.

2.1.1.3 Attribute Information Item

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 4 - Ein Attribute Information Item

In Quellcode 4 ist ein Attribute Information Item zu sehen, welches im Gegensatz zu den Element Information Items keine weitere Unterstrukturierungen erlaubt. D.h. diese können nicht weiter verschachtelt werden. Die Hauptaufgabe ist es, einem Element Eigenschaften zuzuweisen.

2.1.1.4 Comment Information Item

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 5 - Ein Comment Information Item

Mit Hilfe des Comment Information Items werden Kommentare in XML definiert. Ein einfaches Beispiel ist in Quellcode 5 zu sehen.

2.1.2 Gestaltung von XML-Dokumenten

Der Vollständigkeit halber ein kurzer Überblick über XSL bzw. XSL Transformation (XSLT)10: Mit Hilfe von XSL werden Layouts und Transformationen für XML-Dokumente definiert, weshalb diese häufig auch ,,Stylesheets" genannt werden. Diese Definitionen können in ein XML-Dokument eingebunden werden. Wenn mit HTML bereits Erfahrungen gesammelt wurden, gestaltet sich XSL als nicht weiter schwierig. Lediglich das Einbinden der entsprechenden XML-Elemente in ein XSL-Dokument ist an dieser Stelle neu.

XSL-Dokumente werden im XML-Dokument mittels Processing Instructions (PI) eingebunden. Diese dienen dazu, Code aus anderen Dokumenten in einem Dokument zur Verfügung zu stellen, so dass dieses die entsprechenden Informationen verarbeiten kann. Umschlossen werden PIs immer von einem öffnenden <? und einem schließenden ?>.

Ein in der Praxis sehr häufig angewandtes Beispiel einer PI ist eben das Einbinden eines XSL-Dokuments in ein XML-Dokument. Auch das Document Information Item, also der standardmäßig eingebundene Hinweis auf die XML-Version und das Codierungsschema ist eine PI. Hier ist vor allem die Definition der Codierungsschemata wichtig.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 6 - Ein Beispiel für ein einfaches XSL-Dokument

An diesem Beispiel ist gut zu sehen, wie einfach sich die Programmierung von XML-Dokumenten gestaltet, die um XSL-Dokumente erweitert werden.

In Quellcode 6 ist ein einfaches XML-Dokument zu sehen. Farblich hervorgehoben sind die PIs, die zuvor vorgestellt wurden. Die untere der beiden PIs enthält zwei Dinge: Zum Einen den Hinweis darauf, dass es sich bei dem zu verarbeitenden Dokument um ein Stylesheet xml:stylesheet handelt und zum Anderen wird der Typ text/xsl und der Verweis zum XSL-Dokument beispiel.xsl definiert. Die eigentliche XML-Struktur ist bereits aus dem Abschnitt 2.1.1.2 Element Information Item bekannt.

Im unteren Bereich steht der Code des XSL-Dokuments. Hier sind farblich der HTML-Code und die PI hervorgehoben. Es sei auf den kleinen Teil von Inline-CSS-Code11 color: red; font-weight: bold; hingewiesen. Es ist leicht zu erkennen, wie einfach sich die Gestaltung von XML-Elementen mittels XSL in Verbindung mit HTML und CSS erweist. Mit Hilfe des Tags xsl:value-of wird konkret der Wert aus dem XML-Dokument gelesen: In diesem Fall der Wert aus Person/Name, was gleichzeitig der Suchhierarchie im XML-Dokument entspricht.

Das Ergebnis im Browser kann der Abbildung 1 entnommen werden:

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1 - Ein durch XSL formatiertes XML-Dokument im Browser

2.1.3 XML-Schema-Definition (XSD)

Ein wichtiger Bestandteil von XML sind die Schema-Definitionen. Mit Hilfe einer Schemasprache beschreibt XSD eigene Datentypen und Instanzen bzw. Gruppen von Instanzen, also die XML-Dokumente an sich, dieser Datentypen. XSD unterscheidet zwischen einfachen und komplexen Datentypen (siehe 2.1.3.2 Einfache Datentypen bzw. 2.1.3.3 Komplexe Datentypen). Wenn ein XML-Dokument eine Schema-Definition einbindet oder anders ausgedrückt, sich von einer Schema-Definition ableitet, muss es sich an die vordefinierten Regeln aus dem XSD-Dokument halten. XSD-Dokumente tragen die Dateiendung *.xsd.

Schema-Definitionen sind immer dann ratsam, wenn es darum geht, den Informationsgehalt eines XML-Dokuments zu gewährleisten. Das hier aufgegriffene Problem ist, dass XML-Elemente frei benennbar sind und es so unter Umständen zu Kommunikationsschwierigkeiten zwischen zwei Parteien kommen kann. Ein klassischer Anwendungsfall wäre ein Web Service (siehe 2.2 Web Services), bei welchem zwei Systeme über eben diesen in Kommunikation treten und Schnittstelleninformationen in einem XML-Dokument von einer Seite nicht eingehalten wurden - also ein Verstoß gegen die Konventionen der Schema-Definitionen vorliegt.

2.1.3.1 Aufbau eines XSD-Dokuments

Ein XSD-Dokument enthält, wie auch ein normales XML-Dokument, ein Document Information Item (siehe 2.1.1.1 Document Information Item). Neu hingegen ist das <schema> Element. Innerhalb dieses Elements wird zum Einen mittels der Attribute das XSD-Dokument konfiguriert und zum Anderen umschließt das Element alle weiteren Regeln oder Verschachtelungen von weiteren Elementen. In Quellcode 7 ist dieser Bereich durch <!--Bereich für eigene Definitionen--> markiert worden. Die zusätzlich farbig markierte Zuweisung, ist die Zuweisung des Standard Namensraums und wird mit der Anweisung xmlns = http :// www . w 3. org /2001/ XMLS chema " definiert. Diese Zuweisung muss in jedem XSD-Dokument definiert sein.

Mit Hilfe des Attributes xmlns:xsd wird auf den eben definierten Namensraum verwiesen. Oder anders ausgedrückt: So wird sichergestellt, dass nur Instanzen von einem Namensraum referenziert werden. Das hat den Hintergrund, dass in einem XML-Dokument mehrere Elemente mit identischen Namen auftreten können, dadurch aber eindeutig identifiziert werden. xsd ist in diesem Zusammenhang ein frei gewählter Bezeichner bzw. ein so genanntes Präfix ", über welches alle in einem Namensraum definierten Elemente angesprochen werden können.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 7 - Ein Beispiel für ein einfaches XSD-Dokument

Eine kurze Anmerkung noch zum Thema Validation von XSD: Zur Überprüfung von XSD-Code und dem daraus instanziierten XML-Code kann beispielsweise das einfache und hilfreiche Onlinetool XML Schema Validator12 von der Firma DecisionSoft genutzt werden. Das Praktische daran ist, dass sogar hilfreiche Fehlermeldungen bei einem nicht validen Dokument ausgegeben werden, was sich während der Arbeit an diesem Themenabschnitt als besonders hilfreich erwies!

2.1.3.2 Einfache Datentypen

Es gibt eine Vielzahl von einfachen Datentypen, wie in Quellcode 8 zu sehen ist. Diese werden mit dem Element simpleType definiert. Je nachdem, welche Daten konkret für ein Element oder ein Attribut erwartet werden, kann auch explizit der Typ dazu angegeben werden. Das ist beispielsweise ein Vorteil gegenüber dem veralteten Standard Documenttype Definition (DTD)13. Die Schreibweise für einen Typen lautet immer: Namensraum:Typ. Im folgenden Beispiel wird der definierte Namensraum xsd wieder aufgegriffen und eine Sammlung der wichtigsten Datentypen in XSD gezeigt.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 8 - Eine Auflistung aller wichtigen einfachen Dateitypen in XSD

Wichtig ist: Ein einfacher Datentyp kann im Vergleich zu komplexen Datentypen keine eigenen Elemente oder Attribute beinhalten. Des Weiteren leitet sich ein einfacher Datentyp immer von einem Basistypen ab. Es gibt in XSD drei erlaubte Ableitungsformen: als Beschränkung, als Liste und als Union. Der Typ double ist beispielsweise eine beschränkte Ableitung des Typs decimal, d.h. dieser hat einen kleineren Gültigkeitsbereich. Im folgenden Beispiel wird das Prinzip eines einfachen Datentyps verdeutlicht. Dazu wird eine Liste als Ableitungsform des XSD-Dokuments verwendet.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 9 - Ein einfaches Beispiel für einen einfachen Datentypen

Sowohl im XSD-Code, als auch im XML-Code sind die wesentlichen Neuerungen bis hier farblich markiert worden.

Im oberen Bereich von Quellcode 9 findet sich der zu validierende XML-Code, also eine mögliche Instanz des XSD-Codes. In diesem Fall ist der XML-Code eine valide Instanz, da dieser den definierten Regeln aus dem XSD-Dokument genügt.

Im unteren Bereich befindet sich der XSD-Code. Dieser macht nichts weiter, als ein Element listItem vom Typen listOfStrings und einen einfachen Datentypen listOfStrings zu definieren. Auf diesen einfachen Datentypen wird im Element verwiesen. Ohne ein Element kann ein einfacher Datentyp nicht dargestellt werden. Innerhalb des einfachen Datentypens wird eine Liste definiert, die sich aus n Strings zusammensetzen kann. Eine valide Instanz dieses XSD-Codes verhält sich also, wie der XML-Code weiter oben. Die Zeichenkette a b c d e f ist nicht aus Gründen der Übersicht mit Leerzeichen getrennt - das Leerzeichen ist ein fester Separator für Listeneinträge.

Es sei am Rande erwähnt, dass die Reihenfolge der Definitionen des Elements und des einfachen Datentypen keine Rolle spielen. Das Element listItem könnte genauso gut über dem einfachen Typ listOfStrings definiert werden.

2.1.3.3 Komplexe Datentypen

Ein komplexer Datentyp ist eine logische Gruppierung von Elementen und/oder Attributen. Dieser wird mit Hilfe des Elements complexType definiert. Das Vorteilhafte an den komplexen Datentypen ist, dass der Anwender dadurch in die Lage versetzt wird, Elemente ineinander zu verschachteln und so gewünschte Hierarchien im Dokument aufzubauen.

In Quellcode 10 ist die Arbeitsweise eines komplexen Datentypens gut erkennbar. Der Code an sich bringt nicht viel Neues mit sich. Im Wesentlichen wurde hier das bekannte Beispiel aus Quellcode 9 erweitert.

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 10 - Ein einfaches Beispiel für einen komplexen Datentypen

In Quellcode 10 sind wieder die Neuerungen, die bis hier auftreten, farbig markiert worden. Der XML-Code ist auch hier eine valide Instanz des XSD-Codes.

Im XML-Code hat sich im Wesentlichen die Hierarchie geändert und eine Wiederholung von Elementen wurde eingeführt. Es gibt ein Alphabet und dieses wird in einzelne Abschnitte abschnitt und Einträge listItem gegliedert.

Der XSD-Code wurde um ein neues Element alphabet erweitert. In diesem Element befindet sich ein komplexer Datentyp complexType. Innerhalb des komplexen Datentyps ist eine Sequenz sequence definiert, welche durch die Attribute minOccurs und maxOccurs konfiguriert wird. Die Sequenz muss in diesem Fall mindestens 0-mal und maximal unendlich-mal durchlaufen werden. In diesem Zusammenhang bedeutet 0-mal, dass der XML-Code auch gültig wäre, wenn das Element alphabet keinerlei untergeordnete Elemente hätte. D.h. es können entweder n-beliebig viele oder keine Kombinationen aus abschnitt und listItem auftreten.

2.2 Web Services

Scott Short schreibt: ,,Die komponentenbasierte Entwicklung ist beliebter als je zuvor" (3 S. 1) und mittlerweile werden in der Tat kaum noch Anwendungen geschrieben, die nicht mit Hilfe von irgendwelchen Komponenten in Kommunikation treten. Dabei sind diese im Zusammenhang mit den Web Services nicht nur als Komponenten in einem lokalen System oder Netzwerk zu verstehen, sondern auch als Komponenten eines Fremdsystems.

Es gibt bereits bekannte Lösungen, wie CORBA14, Java RMI15, DCOM16 oder .NET-Remoting17 auf dem Markt, warum also eine Neue? Dem liegen die folgenden mehr oder minder schwerwiegenden Probleme gegenüber:

- CORBA, Java RMI, DCOM und .NET-Remoting Komponenten sind, bezogen auf den Wirkungsgrad, immer auf ein lokales Firmennetzwerk beschränkt.
- Alle sind auf freie Ports angewiesen, was sich in den meisten Unternehmen mit einem Netzwerkadministrator als äußerst schwierig erweisen wird.

Werden beispielsweise in einer E-Commerce-Anwendung Kreditkarteninformationen eines Kunden benötigt, so muss die Bank bzw. der Server einer Bank davon überzeugt werden, die nötigen Informationen zu liefen. In einem solchen Fall stoßen CORBA oder Java RMI an Grenzen.

In solchen Anwendungsfällen kommen die, von einem ganzen Konsortium um Microsoft, Sun, Oracle uvm., entwickelten Web Services ins Spiel, welche später durch das W3C-Konsortium18 standardisiert wurden. Web Services sind Anwendungen, die bestimmte Aktivitäten im Namen eines Clients aufrufen. D.h. der Web Service dient quasi als Schnittstelle zwischen dem Client und dem Server. Hier wird über gängige Webstandards, wie dem verbindungslosen UDP-Protokoll19 und dem Port 80, auf den Web Service zugegriffen, um die damit verbundenen Probleme zu umgehen.

Warum ist dieser Themenbereich für diese Bachelorarbeit interessant? Web Services finden eine häufige Anwendung in Verbindung mit InfoPath (siehe 2.3 Microsoft Office InfoPath 2007). InfoPath beschäftigt sich mit XML-basierten Formularen und Formularvorlagen. Da Web Services XML verstehen, nutzt InfoPath häufig die Funktionalitäten von Web Services. InfoPath wiederrum findet oft Anwendung in Workflows und hier schließt sich der Kreis.

2.2.1 Web Service Standards

Da Web Services auf den offenen W3C-Standards beruhen, ist es möglich beispielsweise Java Applikationen mit ASP.NET20 Applikation über einen Web Service kommunizieren zu lassen. Neben HTML und XML gibt es drei weitere wichtige Standards in der Web Service Welt (siehe Tabelle 1):

Abbildung in dieser Leseprobe nicht enthalten

Tabelle 1 - Web Service Standards Übersicht

2.2.2 Service-oriented Architecture (SOA)

Unter einer Service-oriented Architecture wird eine Abstraktion von Diensten verschiedener Mitarbeiter oder Organisationen eines Unternehmens, um diese Dritten anbieten zu können, verstanden. Ein wichtiger Bestandteil dieser Abstraktion sind die eigentlichen Geschäftsprozesse eines Unternehmens, welche gleichzeitig die nötigen Arbeitsschritte wiederspiegeln und abwickeln. Die ,, Höhe " einer Abstraktion hängt hierbei von dem jeweiligen anzuwendenden Geschäftsprozess ab.

Folgendes Beispiel soll den Sachverhalt besser verdeutlichen: Der Geschäftsprozess einen Neukunden aufnehmen ist wesentlich abstrakter als der Geschäftsprozess Kunde A überweist einen Betrag n auf ein Konto x. Beim ersten Geschäftsprozess spielen mitunter viele Mitarbeiter, Datenbanken oder Bonitätsprüfungen eine große Rolle, wobei beim zweiten Geschäftsprozess lediglich eine Person einen Betrag gutschreibt.

Ziel von SOA ist es, durch Orchestrierung21 von Services niedrigster Abstraktionsebenen, abstraktere Services unter der Prämisse der bestmöglichen Wiederverwendbarkeit zu schaffen. So wird die im Hintergrund stattfindende Komplexität sozusagen maskiert und damit verborgen.

Eine technische Umsetzung von SOA ist es, diese abstrahierten Dienste über Protokolle wie SOAP im Internet anzubieten, womit die Überleitung zu den Web Services vollzogen ist. Wichtig ist: ,, SOA ist eine Idee, keine Technik. " (5 S. 1) und somit auch kein Web Service an sich. SOA kann im Zusammenhang mit Web Services so verstanden werden, dass diese einem Web Service gegenüber steht und als Schnittstelle zu einer unternehmensinternen Architektur bzw. Geschäftsprozesswelt dient, um so beispielsweise bei einer Bank Kreditkarteninformationen auslesen zu können.

2.3 Microsoft Office InfoPath 2007

Mit Hilfe von InfoPath ist es möglich, über elektronische Formulare Informationen zu sammeln (6 S. 223). Diese Informationen können beispielsweise ein Urlaubsantrag oder eine Reisekostenerstattung sein.

Neu in der Version 2007 sind die webfähigen Formulare. Das Praktische für den Anwender hierbei ist, dass keine Clientsoftware vorausgesetzt wird, sondern lediglich ein installierter Browser. Über diesen können dann die Formulare einfach bearbeitet und gespeichert werden.

Formulare in InfoPath werden in XML übertragen (siehe 2.3.1 Formular vs. Formularvorlage). Gespeichert werden diese in SharePoint in sogenannten Formularbibliotheken, welche speziell für die webbasierte Bearbeitung von InfoPath-Formularen entwickelt wurden. Von hier aus können diese jederzeit zwecks Bearbeitung geöffnet und wieder gespeichert werden.

Auch sehr nützlich ist die Definition von Regeln, nach denen ein Formular auszufüllen ist. D.h. die Qualität von Formularen steigt enorm und der Kommunikationsaufwand bei Problemen wird gesenkt.

2.3.1 Formular vs. Formularvorlage

In InfoPath gibt es zwei Arten von Dokumenten. Die erste ist das eigentliche Formular (Abbildung 3), welches komplett auf XML basiert und auch als XML-Dokument abgespeichert wird. Dieses Dokument resultiert aus der zweiten Dokumentenart - der Formularvorlage (Abbildung 2). Die Formularvorlage wird im XSD-Format gespeichert und dient der Individualisierung des Entwurfs eines Formulars. In diesem Dokument werden Felder, Buttons, Ansichten, Auswahllisten uvm. definiert, die in das XML-Formular übernommen werden. Das XML-Formular wird dann wiederrum dazu verwendet, diese Informationen über Web Services zur Verfügung zu stellen.

Von der Formularvorlage wird mittels Vorschau in den Formularmodus gewechselt. Mit Hilfe von Vorschau schließen wird vom Formularmodus wieder in die Formularvorlage gewechselt.

Die Abbildung 2 zeigt einen einfachen Urlaubsantrag. Dieser enthält zunächst die Felder Titel, Von, Bis, Vorgesetzter und die beiden Schaltflächen Schliessen und Einreichen. Der Freigabedialog, der nur Benutzern mit einer zugewiesenen Aufgabe sichtbar ist, enthält die Felder Von, Kommentar und zusätzlich die zwei Schaltflächen Ablehnen und Genehmigen, die zur Steuerung eines Workflows dienen. Es soll an dieser Stelle nicht alles vorweggenommen werden, da auf dieses Beispiel in aller Ausführlichkeit in Kapitel 4 eingegangen wird. Es soll hier zur Veranschaulichung von Formularvorlagen dienen.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2 - Eine InfoPath-Formularvorlage

Neben der Formularvorlage gibt es zusätzlich noch das Formular (siehe Abbildung 3), in welchem die möglichen Informationen vom Anwender bearbeitet und gespeichert werden können:

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 3 - Ein InfoPath-Formular

Ergänzt werden diese beiden Formularmodi durch das Arbeiten im Online- bzw. Offlinemodus. Dies ist ebenfalls ein großer Vorteil gegenüber webbasierten Formularen, bei denen eine Offlinebearbeitung i.d.R. nicht möglich ist (4 S. 45). Dem Anwender wird so gestattet, das auszufüllende Formular zu verschiedenen Zeitpunkten zu bearbeiten und abzuspeichern, ob dieser in diesem Moment Zugang zum Internet hat oder nicht.

Abgeschlossen werden soll dieser Abschnitt mit einem kleinen Rückblick zum XML-Abschnitt. Folgend der von InfoPath generierte XML-Code zu dem in Abbildung 3 gezeigten Formular, ohne noch einmal im Detail auf das XML-Dokument einzugehen:

Abbildung in dieser Leseprobe nicht enthalten

Quellcode 11 - Resultierendes XML-Dokument aus dem vorherigen InfoPath-Formular

In Quellcode 11 sind die Pis zu sehen, die eingebunden und verarbeitet werden sollen. Also Informationen über die XML-Version sowie einen Hinweis auf eine InfoPath-Nutzung. Direkt unter den PIs wird der eigene Namensraum definiert, welcher für die folgenden Elemente verwendet wird.

Farblich hervorgehoben sind die Informationen, die zuvor durch einen Anwender in das Formular eingegeben und an dieser Stelle in der XML-Hierarchie gespeichert wurden.

Wird dieses XML-Dokument editiert, wird es in InfoPath geöffnet und die entsprechenden Informationen ausgelesen. Das Resultat entspricht dann wieder dem Formular in Abbildung 3.

2.3.2 Bedarfsermittlung

Im folgenden Abschnitt soll anhand von verschiedenen Szenarien gezeigt werden, wann ein Einsatz von InfoPath sinnvoll ist. Das hier zu Grunde liegende Problem ist, dass sich Unternehmen in der heutigen Zeit einer sich immer ändernden Unternehmenslandschaft gegenüber sehen (4 S. 40). Geschäftsprozesse werden komplexer, die Anforderungen an die Teamarbeit steigen und zentral verwertbares Unternehmenswissen gewinnt mehr und mehr an Bedeutung.

2.3.2.1 Effiziente Teamarbeit

Heutige Tätigkeiten umfassen häufig ein vielfältiges Aufgabengebiet. Neben den Verpflichtungen im Unternehmen, stehen zusätzlich oft Termine beim Kunden direkt vor Ort an oder Aufgaben werden von zu Hause aus erledigt. Die immer vielseitiger werdenden Arbeitsbereiche stellen immer neue Anforderungen an die Unternehmen. Hierzu erweist es sich als nützlich, Informationen - in diesem speziellen Fall die Dokumente - auch im Rahmen einer Extranet-Seite22 zur Verfügung zu stellen, damit Mitarbeiter oder auch Kunden auf Informationen zugreifen können (4 S. 41).

2.3.2.2 Integration in Arbeitsprozesse

Auch ist es möglich einen Kunden in laufende Projektarbeiten einzubeziehen. Es können beispielsweise Umfragedokumente veröffentlicht werden, welche die Mitarbeiter dazu veranlassen, deren Sicht bzgl. Anforderungen an eine neue Unternehmenssoftware zu schildern. Das vereinfacht es zum Einen, spätere Probleme in möglichen Abnahmetests zu vermeiden und zum Anderen vereinfacht es dem Entwickler, den Kunden besser zu ,,verstehen".

2.3.3 Kollaboration

Ein weiterer und wesentlicher Vorteil von InfoPath ist die Verwendung von XML. Da Geschäftsprozesse häufig mit vielen Softwareanwendungen zusammenarbeiten, ist hier also Flexibilität gefragt: Genau das erreicht InfoPath durch die Verwendung von XML. Folgend einige ausgewählte Programme, die mit InfoPath zusammenarbeiten können:

- Microsoft Office Excel 2007
- Microsoft Office Outlook 2007
- Microsoft Access 2000 oder höher
- Microsoft SQL Server 2000 oder höher
- Microsoft Windows SharePoint Services
- Forms Services23
- Web Services
- uvm.

2.3.4 Besonderheiten

Abschließen soll der Abschnitt über InfoPath mit ein paar allgemeinen Hinweisen bzgl. der Besonderheiten. Festgestellt wurden zwei wesentliche Besonderheiten von InfoPath: Zum Einen die Verwendung von XML und zum Anderen das Verarbeiten von Regeln, um so Eingaben steuern zu können.

Es gibt aber eine Vielzahl von weiteren guten Gründen, warum InfoPath eingesetzt werden kann. An dieser Stelle soll auf das Buch von Eckbert Jeschke, Helmut Reinke und Sven Maier verwiesen sein, die noch einmal ausführlicher die Alleinstellungsmerkmale von InfoPath hervorheben (4 S. 44).

2.4 SharePoint Plattform

In diesem Abschnitt soll ein wesentlicher und zentraler Bestandteil dieser Bachelorarbeit vorgestellt werden - die SharePoint Plattform. Diese bildet die Basis für das hier untersuchte und zu analysierende Workflow-Tool und verfolgt über dessen verwendete Mechanismen das Ziel, eine Service-oriented Architecture zu schaffen (7 S. 31).

SharePoint dient in erster Linie zur zentralen Verwaltung von unternehmensweiten Informationen. Dies können Dokumente sein, beispielsweise in Form von Verträgen oder Reise-und Urlaubsanträgen, aber auch Informationen in Form von Wikis, Blogs oder Diskussionsforen spielen eine Rolle. In diesen Fällen wird von einer Kollaboration gesprochen. Ein anderes wichtiges Stichwort ist also die zentrale Wissensverwaltung in einem Unternehmen, dessen Speicherung und Wiederverwendbarkeit.

Zu unterscheiden sind zwei grundsätzliche Formen, welche im Abschnitt 2.4.3 Varianten noch deutlicher beschrieben werden: Zum Einem die Windows SharePoint Services (WSS) und zum Anderen der Microsoft Office SharePoint Server (MOSS). WSS sind kostenloser Bestandteil des Windows Server 2003, aber nicht des Windows Server 2008. In diesem Fall ist eine separate Installation notwendig. Jedoch: Bei beiden Varianten wird lediglich eine Lizenz für den Server an sich fällig. Für einen MOSS entstehen zusätzlich noch die Lizenzkosten für das Produkt.

Bevor auf alle technischen Fertigkeiten SharePoints eingegangen wird, hier ein optischer Eindruck vom dem, was im Folgenden noch detailiert beschrieben wird:

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 4 - SharePoint Webseite im Nintex Workflow 2007 Testcenter

SharePoint bietet Anwendern also eine Art Webseite an, über welche ein Informationsfluss laufen kann. Auf der in Abbildung 4 gezeigten Startseite könnten sich konkrete Informationen rund um das Unternehmen befinden, aber auch eigens eingefügte Inhalte eines Mitarbeiters.

2.4.1 Anwendungsdomänen

Auch wenn sich SharePoint im Vordergrund als eine Webseite präsentiert, wäre es zu einfach SharePoint als einfache Intranet-Anwendung, die die in einem Unternehmen wichtigen Informationen den Mitarbeitern zur Verfügung stellt, zu bezeichnen. SharePoint deckt wesentlich mehr ab. Auch die Bereiche Extranet und Internet werden von SharePoint abgedeckt und bilden neben dem Intranet ein entscheidendes Standbein von SharePoint. Hierbei kommt dann ein umfangreiches Rollenmanagement ins Spiel, welches sich um die Zugriffsverwaltung kümmert. Die Tabelle 2 zeigt die drei Varianten Intranet, Extranet und Internet in einer Übersicht und grenzt diese voneinander ab:

Abbildung in dieser Leseprobe nicht enthalten

Tabelle 2 - Abgrenzung der SharePoint Anwendungsgebiete

2.4.2 Themenbereiche

Mit welchen Themenbereichen in einem Unternehmen beschäftigt sich SharePoint ganz konkret?

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 5 - Themenbereiche von SharePoint

Die in Abbildung 5 gezeigten sechs Themenbereiche bilden das Grundgerüst von SharePoint. Aus diesem ,,Pool" können die gewünschten Funktionalitäten ausgewählt und integriert werden. Um ein Gefühl für die einzelnen Bereiche zu entwickeln, hier einige kurze Definitionen:

- Kollaboration

Unter der Kollaboration wird im Zusammenhang mit SharePoint beispielsweise die Zusammenarbeit an Dokumenten oder das gemeinsame Nutzen von Foren bzw. Blogs verstanden. Ziel ist es die Kommunikation über eine digitale Kommunikationsplattform zu steigern und Wissen dadurch zu zentralisieren.

- Portal

Dem Bereich Portal werden die Integration von Office Programmen in SharePoint, wie Microsoft Excel, Microsoft Word oder Microsoft InfoPath, aber auch die benutzerspezifische Anzeige von Informationen im Portal selbst zugeordnet. Die Integration von Excel sowie InfoPath sind seit dem MOSS 2007 neu dabei.

- Suche

Der Bereich Suche umfasst alle nötigen Maßnahmen für die effiziente Suche nach Inhalten oder Personen in einer SharePoint Infrastruktur. Das beinhaltet auch eine Bewertung der Suchergebnisse nach deren Relevanz. Durch die in der Enterprise Version enthaltende Suche, kann nach Inhalten in einer gesamten Unternehmensstruktur gezielt gesucht werden.

- Content Management

Durch das Content Management werden Themengebiete wie das Archivieren von Inhalten nach vorgegebenen bestimmten Richtlinien, inhaltsbezogene Workflows24 oder das Veröffentlichen von Inhalten abgedeckt.

- Geschäftsprozesse und Formulare

Dieser Themenbereich beschäftigt sich mit dem Abbilden von Geschäftsprozessen in

Workflows, dem Digitalisieren von Dokumenten und deren Verwendung in einem Browser.

- Business Intelligence

Business Intelligence befasst sich mit dem Abbilden von Berichten, der Integration von Daten aus Datenquellen unterschiedlichster Hersteller und dem Verwenden von webbasierten Excel-Mappen mittels der Excel Services25.

2.4.3 Varianten

SharePoint liegt in der aktuellen Version 2007 vor und hat laut Boddenberg (8) insgesamt zwei Vorgängerprodukte:

- Die Windows SharePoint Services 2 und den SharePoint Portal Server 200326
- Den Content Management Server 200227

Der Content Management Server 2002 ist in die aktuelle SharePoint Version mit eingeflossen, womit sich die folgenden aktuellen Produkte unterscheiden lassen:

[...]


1 SharePoint ist eine von Microsoft entwickelte Kommunikations- und Managementplattform und dient beispielsweise der gemeinsamen Zusammenarbeit an Inhalten in einem zentralen Firmenportal

2 K2 blackpoint beta 2 ist ein Konkurrenzprodukt zu Nintex Workflow 2007

3 http://office.microsoft.com/de-de/getstarted/HA100738471031.aspx

4 XML steht für Extensible Markup Language und ist eine Metasprache

5 Ein Web Service ist eine Internetanwendung, die es über international standardisierte Formalien ermöglicht, Informationen auszutauschen (via XML)

6 Microsoft InfoPath erlaubt es, digitale und regelbasierte Formulare zu kreieren

7 Ein Milestone Report fasst in diesem Zusammenhang alle wichtigen Ereignisse einer Arbeitswoche zusammen und weißt zum Einen den zeitlichen Ablauf und zum Anderen die besonders guten bzw. besonders schlechten Ereignisse einer Arbeitswoche auf

8 HTML steht fOr Hypertext Markup Language, welches eine Beschreibungssprache ist und der Darstellung von Informationen in einem Browser dient

9 Cascading Style Sheets sind vor allem bekannt für die Gestaltung von HTML-Dokumenten

10 XSLT ist Teil von XSL. Mit Hilfe von XSLT ist es ferner möglich, ein Ursprungs-XML-Dokument in ein völlig neues Format zu überführen

11 Ein Stück Quellcode, welches nicht in einer separaten Datei ausgelagert ist

12 http://tools.decisionsoft.com/schemaValidate/

13 Documenttype Definitions sind eine veraltete Technologie, die ähnlich wie XSD, Regeln für ein XML-Dokument definiert

14 CORBA steht für Common Object Request Broker Architecture und wird von der Object Management Group (OMG) entwickelt. Es dient der Spezifikation plattformunabhängiger Protokolle und Dienste

15 Java RMI steht für Java Remote Method Invocation und lässt verteilten Java-Anwendungen zu

16 DCOM steht für Distributed Component Object Model und ist ein von Microsoft entwickelter Standard um Komponenten die Netzwerkkommunikation zu ermöglichen

17.Net Remoting ist ein von Microsoft entwickeltes Framework zur verteilten Nutzung von Objekten

18 W3C steht für World Wide Web Consortium, welches Standards für das World Wide Web festgelegt

19 Das UDP-Protokoll steht für User Datagram Protocol und definiert eine paketorientierte Kommunikation für das Internet

20 ASP.NET ist eine Microsoft Technologie, um Webanwendungen zu entwickeln

21 Von Orchestrierung wird in diesem Fall dann gesprochen, wenn viele Services zusammengesetzt werden sollen

22 Eine Extranet-Seite bietet alle von einem Unternehmen freigegebenen Informationen. Auch haben hier oftmals Kunden einen Zugang. Bei einer Internet-Seite hingegen hat i.d.R. jeder Zugriff

23 Hinter dem Begriff der Forms Services versteht man die Veröffentlichung von webbasierten InfoPath-Formularen. Das Ausfüllen der Vorlage funktioniert via Browser

24 Inhaltsbezogene Workflows sind Workflows, die beispielsweise ein Genehmigungsverfahren für die Freigabe eines Dokuments abbilden

25 Excel Services ermöglichen das Arbeiten an einer Excel-Mappe mittels eines Browsers

26 Vorgänger vom Microsoft Office SharePoint Server 2007

27 Durch die Wurzeln vom Content Management Server 2002 ist SharePoint in der Lage, flexible Veröffentlichung von Informationen im Intranet, Extranet und dem Internet zu tätigen

Details

Seiten
100
Jahr
2009
ISBN (eBook)
9783640427765
ISBN (Buch)
9783640423897
Dateigröße
3.5 MB
Sprache
Deutsch
Katalognummer
v135103
Institution / Hochschule
Hochschule für Angewandte Wissenschaften Hamburg
Note
sehr gut
Schlagworte
Nintex Workflow 2007 K2 blackpoint beta 2 SharePoint XML Web Services Workflows InfoPath

Autor

Zurück

Titel: Evaluation von Nintex Workflow 2007 für die Erstellung von Workflow-Lösungen unter Microsoft SharePoint Technologien