Selinger, O. (2009). OpenESB for Web Process Integration [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/177885
Web Prozess; Integration; ESB; Datenextraktion; Web Wrapper
de
web process; integration; ESB; data extraction; web wrapper
en
Abstract:
Web Process Integration ist ein Verfahren zur nahtlosen Integration von Web-Prozessen in die Prozesse des Unternehmens.<br />Innerhalb eines Web-Prozess werden Inhalte von Web-Quellen extrahiert und diese Informationen in sinnvolle und anpassbare Datenstrukturen umgewandelt. Diese Technik hat vor allem für Unternehmen große Bedeutung, da sie ihnen große Wettbewerbsvorteile bringt, indem Prozesse leicht integriert werden können, die schwer zu bekommende Informationen über mehrere Web Portale sammeln. Normalerweise müssten diese Prozesse manuell ausgeführt werden. Ein situativer Bedarf an Informationen kann somit leicht erfüllt werden. Dazu werden die benötigten Inhalte extrahiert und die neu strukturierten Informationen den verschiedensten Unternehmenssystemen und -prozessen bereitgestellt. Der Informationsgewinnungsprozess läuft vollständig automatisiert, um den Unternehmen die Informationen zu liefern, wenn diese benötigt werden.<br />Der Informationsfluss läuft von außen in die Unternehmenssysteme, kann aber auch umgekehrt stattfinden.<br />Das Besondere dieses Verfahrens ist der Erhalt eines einheitlichen Zugangs zu unterschiedlichsten Web-Inhalten. Die heterogenen Informationsquellen aus dem Internet sollen einfach zugänglich, aggregierbar und strukturierbar gemacht werden. D.h. die Datenquellen sind nicht, wie üblich, auf Web Services beschränkt, sondern das gesamte World Wide Web soll als Datenbank verwendet werden.<br />Wenn man sich die Arbeitsweise von Web Process Integration und des Informationsbeschaffungsprozesses näher ansieht, erweckt es den Eindruck eines Workflows. Die Ausführung der Schritte wie Datenextraktion, Transformation, Filterung usw. erscheint wie eine Kette von Aufgaben, die für die Lieferung verantwortlich sind. Diese Aufgaben sind in einer genau bestimmten Reihenfolge arrangiert und werden durch eine Art von Service bearbeitet.<br />Diese Diplomarbeit knüpft an einen neuen Trend an, der hingeht zu Service-Oriented Architecture-basierten Mashups und der ein Proof-of-Concept beschreibt, um mit einer standardisierten service-basierten Plattform situative Anwendungen für Web Process Integration in Unternehmensumgebungen zu bauen. Das neue Konzept einer SOA-basierten Plattform, um situative Anwendungen zu bauen, orientiert sich an einer existierenden nicht SOA-basierten Lösung der Firma Lixto.<br />Die wichtigsten Voraussetzungen und Anforderungen wurden kumuliert um das Design und die Implementierung einer Server-Anwendung (WPIServer) für die Erstellung von Web-Prozessen zu realisieren. Ein Enterprise Service Bus wurde als Plattform gewählt, da hier bereits Service-Oriented Architecture mit Business Process Management Eigenschaften kombiniert ist, was wiederum das Arrangieren von SOA-Services zu einem workflow-basierten Prozess ermöglicht. Daher wurde der Enterprise Service Bus OpenESB adaptiert und angepasst, sodass alle gesammelten Anforderungen für Web Process Integration Tools erfüllt werden können. Da Enterprise Service Buse bereits workflow-basiert sind, wurde OpenESB als Grundlage verwendet und ein Framework zur domain-spezifischen Verwendung gebaut. Eine Menge von Funktionen, die notwendig sind um einen Web-Prozess zu erstellen, kommen aus dem Feld des OpenESB, wie XPath-Unterstützung, Transformation mit Extensible Stylesheet Language, die Überwachung der Prozesse, Interventionen, Umgang mit Faults, Kompensationsbehandlung usw., aber Funktionen wie das Versenden von E-Mails mit Anhängen, der Vergleich von Daten und die Erstellung von PDF-Dateien werden nicht angeboten. Die fehlenden Funktionen werden von der WPIServer Anwendung bereitgestellt. Die somit entstandene Anwendung vereinigt alle diese Funktionen und Technologien zusammen und ermöglicht so einem Service-Entwickler Web-Prozesse zu kreieren, welche nahezu alle Anforderungen an Web Process Integration erfüllen können.<br />Inwieweit der OpenESB und die heutigen Entwicklungswerkzeuge die Web Process Integration unterstützen und an welchen Stellen der Service-Designer eingreifen muss, zeigt ein umfangreiches Referenz-Beispiel, gebaut auf der erstellten WPIServer Anwendung.<br />
de
Web Process Integration constitutes a procedure for a seamless integration of Web Processes into the enterprise's processes. Within a Web Process, contents from web sources are gained and transformed to meaningful and customizable data structures. These techniques bear a meaning especially for enterprises. These techniques bring companies competitive advantages through integrating processes easily for gathering hard to obtain information over several web portals. Usually these processes have to be executed manually. So a situational need for information can easily be met by wrapping these contents and provide the information to the enterprises' business systems and processes. The information delivery process runs completely automated to feed the business systems with information when it is needed. The information flow runs from the outside into the enterprise's systems, but can also take place in the opposite direction.<br />The idea of this procedure is a common access to any web content. The heterogeneous information sources of the Internet should be made easily accessible and able to cumulate, aggregate and structure. So data sources are not, as usually, constraint to web services, instead the whole World Wide Web is used as database.<br />Contemplating Web Process Integration, the operation method of the information delivery process procures to be a workflow. The execution of the steps like data extraction, transformation, filtering and so on looks like a chain of tasks needed for information delivery. These tasks are arranged in a determined control flow and must be completed by a kind of a service.<br />This master thesis ties in with a new trend towards Service-Oriented Architecture-based Mashups and describes a proof of concept of using a standardized service-based platform to build Situational Applications for Web Process Integration in enterprise environments. The non SOA-based solution of Lixto serves as orientation for a new concept of a SOA-based platform to develop Situational Applications. The most important requirements and demands were cumulated to design and implement a server application (WPIServer) for the creation of Web Processes. An Enterprise Service Bus was chosen as platform because it combines Service-Oriented Architecture with Business Process Management (BPM) which enables arrangements of SOA-services in a workflow-based process. Hence, the Enterprise Service Bus OpenESB was adapted to fit in the requirements assembled for Web Process Integration tools. As an Enterprise Service Bus is already workflow based, a framework around was built to use OpenESB as base. A lot of features that are necessary to build a Web Process come out-of-the box from OpenESB like XPath support, transformation support via the Extensible Stylesheet Language, monitoring of processes, intervention, fault handling, compensation actions and so on. But some features are missing, like sending emails with attachments, comparing of data and creating files like PDF. The missing functions are provided by the WPIServer application. The evolved application glues all those features and technologies together and enables a Service Developer to fulfill almost all demands for building a Web Process.<br />How far the OpenESB and today's development tools support and solve Web Process Integration and where the Service Designer has to manipulate, shows an extensive reference example built on the implemented WPIServer application.