Informatik Marc Platt Ein Modell zur Nutzung von Business Mashups in Unternehmensportalen Diplomarbeit
UNIVERSITÄT DUISBURG-ESSEN Ein Modell zur Nutzung von Business Mashups in Unternehmensportalen Diplomarbeit DII Vorgelegt dem Fachbereich Wirtschaftswissenschaften der Universität Duisburg-Essen von: Marc Platt Sommersemester 2008, 14. Studiensemester voraussichtlicher Studienabschluss: Sommersemester 2008
Inhaltsverzeichnis I Inhaltsverzeichnis Abbildungsverzeichnis...IV Tabellenverzeichnis... V Abkürzungsverzeichnis...VI 1 Einleitung... 1 1.1 Motivation... 1 1.2 Zielsetzung und Aufbau der Arbeit... 2 2 Portale... 5 2.1 Definition... 5 2.1.1 Portal allgemein... 5 2.1.1.1 Kriterium Fokus... 6 2.1.1.2 Kriterium Nutzerkreis... 7 2.1.2 Unternehmensportale... 7 2.1.2.1 Kriterium Zielgruppen... 8 2.1.2.2 Kriterium Anwendungsschwerpunkte... 9 2.1.2.3 Gründe / Erfolgsfaktoren für den Einsatz von Unternehmensportalen... 10 2.2 Portlets...11 2.2.1 Definition...11 2.2.2 Abgrenzung zu Web Services und Webparts...13 2.3 Architekturmodelle und Referenzarchitekturen...14 2.3.1 Fachliches Architekturmodell...14 2.3.2 Technische Referenzarchitektur...16 2.3.3 PADEM Referenzarchitektur für Portalsoftware...17 3 Serviceorientierte Architekturen... 19 3.1 Definition...19 3.2 Elemente einer SOA...21 3.2.1 Services...21 3.2.2 Anwendungs-Frontend...24 3.2.3 Service-Repository...24 3.2.4 (Enterprise) Service-Bus...25 3.3 Gründe für den Einsatz einer SOA...25 3.3.1 Die Unternehmensperspektive...26 3.3.2 Die Personalperspektive...29 3.4 Die Rolle von Portalen innerhalb einer SOA...30
Inhaltsverzeichnis II 4 Web 2.0... 31 4.1 Die Grundprinzipien des Web 2.0...31 4.2 Die Entwicklung vom Web 1.0 zum Web 2.0...35 4.3 Ausgewählte Technologien und Anwendungen des Web 2.0...36 4.3.1 Weblogs...37 4.3.2 Wikis...38 4.3.3 AJAX...39 4.4 Etablierte Web 2.0-Anwendungen...41 4.4.1 Wikipedia...41 4.4.2 YouTube...41 4.4.3 Xing...42 5 Mashups... 43 5.1 Definition...43 5.2 Handlungsfelder von Mashups im Web 2.0...46 5.3 Beispiele von Mashup-APIs und Mashups...48 5.3.1 Mashup-APIs...49 5.3.2 Mashups...50 5.4 REST-Architektur...51 5.4.1 Grundlagen...51 5.4.2 Verwandte Konzepte und Anwendungsgebiete...55 5.5 Technische Perspektive von Mashups...57 5.5.1 Grundlagen der Erstellung von Mashups...58 5.5.2 Integration und Kombination von Diensten und Datenquellen zu einem Mashup...59 5.5.2.1 Integration von Diensten durch Widgets... 59 5.5.2.2 Integration von Datenquellen durch Feeds... 61 5.5.2.3 Integration von Datenquellen und Diensten durch Mashup-APIs... 64 5.5.3 Kommunikation zwischen den Komponenten eines Mashups...67 5.5.4 Software zum Erstellen von Mashups im Web 2.0...69 5.5.5 Technologien im Umfeld von Mashups...71 5.6 Vor- und Nachteile von Mashups...72 5.7 Abgrenzung von Mashups zu Composite Applications, Web Services und Portlets...75 5.7.1 Composite Apps, Situational Apps und SAP xapps...75 5.7.2 Web Services...80 5.7.3 Portlets und Portale...81 5.8 Software as a Service und ähnliche Paradigmen...82 5.8.1 Application Service Providing...83
Inhaltsverzeichnis III 5.8.2 Software as a Service...84 6 (Business) Mashups in Unternehmensportalen... 88 6.1 Enterprise 2.0 Web 2.0 in Unternehmen...88 6.1.1 Definition...88 6.1.2 Business Mashups...90 6.2 Handlungsfelder und Potenziale von Business Mashups...91 6.2.1 Anbieterperspektive...91 6.2.2 Nutzerperspektive...93 6.3 Determinanten für die Nutzung von Business Mashups...96 6.3.1 Weborientierte Architekturen...96 6.3.2 Business Mashups als Integrationswerkzeug...99 6.3.2.1 Integrationsmodell... 99 6.3.2.2 Integration durch Mashups...101 6.3.3 Unternehmensportale als Trägersystem...104 6.3.3.1 Personelle Voraussetzungen...105 6.3.3.2 Allgemeine technische Vorraussetzungen...107 6.4 Modell zur Integration und Nutzung von Mashups in einem Unternehmensportal...108 6.4.1 Grundlagen...109 6.4.2 Mashups im Umfeld unterschiedlicher Portalmodelle...111 6.4.2.1 Fachliches Architekturmodell...111 6.4.2.2 Technische Referenzarchitektur...114 6.4.2.3 PADEM Referenzarchitektur für Portalsoftware...117 6.4.3 Aggregation der Portalmodelle und des Mashup Ecosystems...120 6.5 Marktübersicht von Business Mashup-Software...125 6.5.1 BEA Aqua Logic Ensemble und WebLogic Portal...126 6.5.2 Serena Business Mashup-Lösungen...126 6.5.3 IBM Mashup Starter Kit / Lotus Mashups...127 6.5.4 Microsoft Popfly und Microsoft SharePoint Server...128 6.5.5 SAP Netweaver-Plattform...129 6.6 Kritische Würdigung der Ergebnisse...130 7 Fazit, Prognose und Ausblick... 134 Anhang A: Codebeispiel Kapitel 5.5.1.2... 137 Literaturverzeichnis... 139
Abbildungsverzeichnis IV Abbildungsverzeichnis Abbildung 1: Erstellung einer Portalseite und ihren Portlets...12 Abbildung 2: fachliches Architekturmodell...16 Abbildung 3: technische Referenzarchitektur...17 Abbildung 4: PADEM Portalsoftware Referenzarchitektur 2.0...18 Abbildung 5: Das Prinzip der Serviceorientierung...20 Abbildung 6: Service Composition...22 Abbildung 7: Bestandteile eines Service...23 Abbildung 8: Klassisches Modell einer Web-Anwendung vs. AJAX-Modell einer Web-Anwendung...39 Abbildung 9: Der Hype Cycle for Emerging Technologies 2006...43 Abbildung 10: Zusammensetzung eines Mashups aus unterschiedlichen Diensten und Datenquellen...44 Abbildung 11: Die beliebtesten Mashup-APIs...47 Abbildung 12: Abruf einer Ressource auf SOAP-Basis...57 Abbildung 13: Abruf einer Ressource auf REST-Basis...57 Abbildung 14: Einbinden eines YouTube Widgets...60 Abbildung 15: Aufbau eines RSS 2.0 Dokuments...62 Abbildung 16: Zugriff auf den Google Maps-Dienst...65 Abbildung 17: Integration einer Google Map in einem HTML-Dokument...67 Abbildung 18: Zugriff auf einen Flickr-Feed...68 Abbildung 19: Kommunikation zwischen zwei Diensten in einem Mashup...69 Abbildung 20: Drei-Schichten-Architektur von Composite Apps...76 Abbildung 21: Handlungsfelder und Potenziale von Business Mashups...93 Abbildung 22: Kernkomponenten einer WOA und ihre Bestandteile...97 Abbildung 23: Sichten und Ebenen des Integrationsmodells...100 Abbildung 24: Das assemble, wire, and share -Modell...106 Abbildung 25: Beziehungen zwischen Portalen und Mashups...108 Abbildung 26: Das Mashup Ecosystem...110 Abbildung 27: Funktionen und Anforderungen von Mashups im fachlichen Architekturmodell...112 Abbildung 28: Anforderungen von Mashups in der technischen Referenzarchitektur...116 Abbildung 29: Schichten der PADEM Referenzarchitektur in denen Mashups Funktionen übernehmen können...118 Abbildung 30: Modell zur Nutzung von Business Mashups in Unternehmensportalen...121
Tabellenverzeichnis V Tabellenverzeichnis Tabelle 1: Vorteile und Herausforderungen einer SOA aus der Personalperspektive...30 Tabelle 2: Die Grundprinzipien des Web 2.0...34 Tabelle 3: Verschiedene Anwendungstypen des Web 2.0 und ihre Funktionen...37 Tabelle 4: Kategorien von Internetdiensten und ihre Mashup-APIs...50 Tabelle 5: ausgewählte Technologien im Umfeld von Mashups...72 Tabelle 6: Vor- und Nachteile von Mashups...74 Tabelle 7: Vergleich der traditionellen Anwendungsentwicklung mit Composite Apps, Situational Apps und Mashups...79 Tabelle 8: Vor- und Nachteile von ASP...83 Tabelle 9: Integrationspotenziale von Mashups im Rahmen des Integrationsmodells...104 Tabelle 10: Auswahl an Informationen, die in einem Service Repository verfügbar sein können...122 Tabelle 11: Die Komponenten einer SOA und ihr Pendant in einer WOA...125 Tabelle 12: Chancen und Risiken durch Business Mashups...132
Abkürzungsverzeichnis VI Abkürzungsverzeichnis ADSL... Asymmetric Digital Subscriber Line AJAX... Asynchronous Java and XML API... Application Programming Interface ASP... Application Service Providing B2B... Business to Business B2C... Business to Consumer B2E... Business to Employee BI... Business Intelligence Blog... Weblog BPEL... Business Process Execution Language CEO... Chief Executive Officer CIO... Chief Information Officer CMS... Content Management System CRM... Customer Relationship Management CSS... Cascading Style Sheets DOM... Document Object Model EAI... Enterprise Application Integration ERP... Enterprise Resource Planning GIF... Graphics Interchange Format GME... Google Mashup Editor GUI... Graphical User Interface HTML... Hypertext Markup Language HTTP... Hypertext Transfer Protocol IAO... Institut Arbeitswirtschaft und Organisation IDL... Interface Definition Language IT... Informationstechnologie J2EE... Java Platform, Enterprise Edition JCP... Java Community Process JSON... JavaScript Object Notation JSR... Java Specification Request LPM... Lightweight Programming Models PADEM... Portal Analyse und Design Methode PDF... Portable Document Format PHP... PHP: Hypertext Preprocessor REST... REprensentational State Transfer RIA... Rich Internet Application
Abkürzungsverzeichnis VII RPC... Remote Procedure Call RSS... Really Simple Syndication oder Rich Site Summary oder RDF Site Summary SA... Situational Applications SaaS... Software as a Service SLA... Service Level Agreement SOA... serviceorientierte Architektur SOAP... Simple Object Access Protocol SQL... Structured Query Language SSL... Secure Socket Layer SSO... Single Sign On TCO... Total Cost of Ownership UDDI... Universal Description, Discovery and Integration UML... Unified Modeling Language URI... Uniform Resource Identifier URL... Uniform Resource Locator W3C... World Wide Web Consortium WFMS... Workflow Management System WOA... weborientierte Architektur WSDL... Web Services Description Language WSRP... Web Services for Remote Portles WWW... World Wide Web XHTML... Extensible Hypertext Markup Language XML... Extensible Markup Language XML-RPC.. Extensible Markup Language Remote Procedure Call
Einleitung 1 1 Einleitung 1.1 Motivation In den letzten Jahren gewannen in der IT- und Kommunikationslandschaft einige Schlagwörter immens an Bedeutung: die Begriffe Web 2.0, (Unternehmens-) Portale und serviceorientierte Architekturen (SOA) stehen für Themen, die nicht nur Einzug in die IT-Systemlandschaften von Unternehmen hielten und in Fachkreisen großen Anklang fanden, sondern besonders im Fall des Web 2.0, jeden Internetnutzer weltweit betreffen. Der Ausdruck Web 2.0 steht für ein neues Verständnis respektive eine neue Auffassung des Internets (vgl. [KoHä2007, 1]), durch die ein Nutzer nicht mehr nur als Informationskonsument wahr genommen wird, sondern als partizipierendes Individuum. Das bedeutet, dass ein Internetnutzer die Gelegenheit geboten bekommt, Inhalte und Informationen selbst bereitzustellen und in Zusammenarbeit mit anderen Nutzern zusammen zu tragen (wie bspw. bei Blogs und Wikis, siehe Kapitel 4.3.1 und 4.3.2). Zudem eignen sich moderne soziale Netzwerke besonders gut für einen kommunikativen Austausch der Internetnutzer zu speziellen Themengebieten. Diese Alternativen spielen sich im Web 2.0 bislang primär auf einer privaten, auf den Konsumenten ausgerichteten Ebene ab: Ein Angler schreibt regelmäßig einen Blog über sein Hobby, es werden die privaten Urlaubsbilder bei Flickr 1 ins Netz gestellt, private Videoaufnahmen der eigenen Tanzgruppe werden bei YouTube 2 online bereitgestellt, der Lageplan des Kleingartenvereins wird mit Hilfe von Google Maps 3 abgebildet oder es werden über soziale Netzwerke wie das StudiVZ 4 Kontakte mit alten Schul- und Studienkollegen gepflegt. Es ist ein gestiegener Mehrwert für die Nutzung des Internets bzw. bestimmter Plattformen für den Endnutzer ersichtlich, da die meisten dieser neuen Dienste kostenfrei genutzt werden können. Nun stellt sich jedoch auch zwangsläufig die Frage, welchen Nutzen und Mehrwert Unternehmen aus den verschiedenen neuen Konzepten des Web 2.0 ziehen können. An dieser Stelle treten dann wiederum auch die eingangs bereits erwähnten Begriffe Portal und SOA in Erscheinung, die wiederum im Zusammenhang mit dem Web 2.0 einige Fragen aufwerfen. Wenn das Web 2.0 das Verständnis des Internets grundlegend verändert hat, wie kann es Einzug in Unternehmen, im Speziellen in Unternehmensportale, halten? Können aktuelle Web 1 2 3 4 Siehe: http://www.flickr.com/ - Abruf am 2008-05-23 Siehe: http://www.youtube.com/ - Abruf am 2008-05-23 Siehe: http://maps.google.de/ - Abruf am 2008-05-23 Siehe: http://www.studivz.net/ - Abruf am 2008-05-23
Einleitung 2 2.0 Dienste, Technologien und Paradigmen 1:1 in Unternehmensportalen umgesetzt werden? Wird ein solcher Einsatz die Unternehmenskultur verändern oder den Unternehmen einen Mehrwert liefern? Das Angebot von unterschiedlichen, kostenfreien Diensten, wie Flickr oder YouTube, spiegelt eine serviceorientierte Ausrichtung des Web 2.0 wieder. Hier stellt sich die Frage, wie dieser Aspekt auch in Unternehmen genutzt werden kann und es treten in diesem Kontext serviceorientierte Architekturen in Erscheinung. Bei dieser Form der Softwarearchitekturen bestehen Anwendungen ebenfalls jeweils nur aus einzelnen, unterschiedlichen Diensten. Kann das Konzept einer SOA demzufolge um Web 2.0 Komponenten erweitert werden? Ein geeignetes Mittel scheinen Mashups zu sein. Des Öfteren lassen sich in themenverwandten Medien und Fachliteratur Artikel zu Business Mashups finden, die darauf schließen lassen, dass diese momentan ein sehr aktuelles und umfassend diskutiertes Thema sind. Als Indiz dafür kann auch die Eingabe der Begriffe Business Mashups oder Enterprise Mashups bei Google gesehen werden, deren Suche eine Zahl von ca. 40.000 bzw. ca. 122.000 Ergebnissen liefert. Mashups basieren ebenfalls auf einem Konzept, das es ermöglicht, unterschiedliche Dienste zu einer neuen Anwendung zu kombinieren. Die technischen Voraussetzungen, sowie die Möglichkeiten die sich durch den Einsatz von Business Mashups in einem Unternehmen ergeben, gilt es im Laufe dieser Arbeit zu analysieren. 1.2 Zielsetzung und Aufbau der Arbeit Das Hauptaugenmerk dieser Diplomarbeit liegt darauf, Mashups im Hinblick auf ihre Anwendbarkeit in Unternehmen, im Speziellen die Nutzung auf Basis des Trägersystems Unternehmensportal, zu untersuchen. Dabei wird zunächst das Grundkonzept von Mashups vorgestellt und es wird gezeigt, wie Mashups im heutigen Web 2.0 Verwendung finden. Ziel wird es sein, heutige durch Endverbraucher genutzte Technologien und Anwendungen für Unternehmen zugänglich zu machen und einen unternehmerischen Nutzen daraus zu ziehen. Es werden die technischen Gesichtspunkte von Mashups beleuchtet, dazu zählen die Funktionsweise, Implementierungsmöglichkeiten, Arten von Mashups, eingesetzte Technologien sowie eine Abgrenzung zu ähnlichen Technologiekonzepten. Bezüglich der potentiellen Nutzung im Unternehmensumfeld wird gezeigt, welche Rolle Mashups in einer SOA spielen. Die Zielsetzung dieser Arbeit sieht vor, ein Modell zu entwickeln, welches die Implementierungsmöglichkeiten von Mashups in einem Unternehmen, im Speziellen in einem Unternehmensportal beschreibt und als Hilfestellung bei der Einführung von Business Mashups in die IT- Architektur von Unternehmen dient.
Einleitung 3 Die folgende Arbeit ist grob in zwei Abschnitte unterteilt: Der erste Teil ist der Grundlagenteil, welcher in die Themengebiete (Unternehmens-)Portale, serviceorientierte Architekturen und Web 2.0 einführt. Im zweiten Teil, dem Hauptteil, werden die Begriffe Mashup und Business Mashup vorgestellt und tiefer gehend analysiert. Zu Beginn des Grundlagenteils wird in Kapitel 2 das Thema Portale vorgestellt. Zunächst werden dort Portale im Allgemeinen definiert und mögliche Ausprägungsformen vorgestellt. Anhand dieser Ausprägungsformen werden dann Unternehmensportale klassifiziert und determiniert. Es folgt eine Definition von Portlets, den Bestandteilen von Portalen und deren Abgrenzung von ähnlichen Konzepten wie Webparts und Web Services. Abgeschlossen wird das zweite Kapitel durch eine Einführung in verschiedene Architekturmodelle und Referenzarchitekturen, die im Zusammenhang mit Unternehmensportalen und Portalsoftware Verwendung finden. In Kapitel 3 werden serviceorientierte Architekturen eingeführt. Zu diesen wird zunächst eine Begriffsbestimmung gegeben, woraufhin die unterschiedlichen Elemente einer SOA vorgestellt werden. Darauf folgen Gründe für die Einführung einer SOA aus einer Unternehmens- sowie Personalperspektive und welchen Zweck Unternehmensportale innerhalb einer SOA erfüllen können. Das Web 2.0 steht im Mittelpunkt des folgenden Kapitels. Anfangs werden die Grundprinzipien des Web 2.0 erklärt und anhand derer die Bedeutung des Begriffs charakterisiert. Danach wird beschrieben, wie sich das Internet im Laufe der Zeit vom sog. Web 1.0 zum Web 2.0 entwickelt hat. Darauf folgt die Vorstellung von diversen, prägendenden Technologien und Konzepten des Web 2.0, zu denen u.a. Weblogs, Wikis, und AJAX gehören. Zum Ende hin werden aktuelle, typische Web 2.0 Anwendungen und Plattformen, wie Wikipedia oder YouTube, vorgestellt und an deren Umsetzung die Grundprinzipien des Web 2.0 aufgezeigt. Mit Kapitel 5 beginnt der Hauptteil dieser Arbeit. Zunächst wird der Begriff Mashup definiert und aufgezeigt, welche Rolle Mashups in der heutigen Zeit im Web 2.0 spielen. Im Rahmen dessen werden einige Mashups und Mashup-APIs vorgestellt, die sich aktuell großer Beliebtheit bei privaten Endanwendern erfreuen. Darauf folgt eine technischere Betrachtung von Mashups. Zuerst wird die REST-Architektur vorgestellt, um dann im nächsten Schritt die technischen Aspekte von Mashups zu beleuchten. Dabei wird auf die Entwicklung eines Mashups eingegangen und es werden im Mashup-Umfeld genutzte Technologien betrachtet. Im weiteren Verlauf des Kapitels folgt eine Diskussion der Vor- und Nachteile
Einleitung 4 von Mashups. Zum Abschluss werden Mashups zu ähnlichen Konzepten wie Composite Applications, Web Services und Portale abgegrenzt und es wird gezeigt, in welchem Zusammenhang sie mit dem Software as a Service - Paradigma stehen. In Kapitel 6 werden Mashups auf die Unternehmenswelt abgebildet. Dazu werden zuerst die Begriffe Enterprise 2.0 und Business Mashup konkretisiert, sowie die Ziele und Vorteile von Business Mashups jeweils aus einer Anbieter- und Nutzerperspektive erläutert. Die Voraussetzungen für den Einsatz von Business Mashups stehen im Mittelpunkt des nächsten Abschnitts. Dabei werden Mashups aus der Perspektive von weborientierten Architekturen, als Integrationswerkzeug sowie eines Unternehmensportals betrachtet. Daraufhin folgt das Kernstück dieser Arbeit: die Entwicklung eines Modells zur Nutzung von Business Mashups in einem Unternehmensportal. Abgerundet wird dieses Thema durch eine kurze Marktübersicht von Softwarelösungen, die die Möglichkeit des Einsatzes von Mashups in einem Unternehmen bieten. Am Ende dieses Kapitel folgt eine kritische Würdigung der Ergebnisse. Abgeschlossen wird die gesamte Arbeit in Kapitel 7 mit einem Fazit sowie einer Prognose über die möglichen Entwicklungstendenzen von Business Mashups.