Diploma Thesis DIP-2687

BibliographySchurr, Bastian: Analyse von XPath-Ausdrücken in BPEL-Prozessbeschreibungen.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Diploma Thesis No. 2687 (2007).
123 pages, german.
CR-SchemaF.3.2 (Semantics of Programming Languages)
H.4.1 (Office Automation)
KeywordsXPath; BPEL; WS-BPEL; Web Service; Workflow; statische Analyse; XML-Entscheidbarkeitstheorie; transitionCondition
Abstract

Ziel dieser Arbeit war es, zu untersuchen, in wie weit es möglich ist, XPath-Ausdrücke in BPEL-Prozessbeschreibungen zu analysieren, ohne dabei konkrete XML-Daten zur Verfügung zu haben. Es stehen einzig die BPEL-Datei, die den Ablauf des Prozesses beschreibt und die zu den einzelnen Web Services gehörenden WSDL-Dateien sowie die darin enthaltenen XML-Schemas, welche die Struktur der XML-Daten beschreiben, die zwischen den Web Services ausgetauscht werden, zur Verfügung. Es sollte ein Algorithmus entwickelt werden, der entscheidet, ob die Bedingungen zweier ausgehender Links einer Aktivität gleichzeitig zutreffen können. Die in XPath formulierten Bedingungen, so genannte transitionConditions, die den Status des Links bestimmen, auf dem sie definiert wurden, werden dazu untersucht, ob sie sich auf dasselbe Element beziehen. Falls sie sich auf dasselbe Element beziehen, wird überprüft, ob sich die jeweiligen Bedingungen gegenseitig ausschließen. Hierzu wurde im Grundlagenteil die Syntax und die Auswertung von XPath-Ausdrücken gemäß XPath 1.0 betrachtet. Des Weiteren wurden dort verschiedene Probleme der XML-Entscheidbarkeitstheorie wie das Erfüllbarkeits-, das Teilmengen-, das Äquivalenz-, das Schnitt- und das Überdeckungsproblem untersucht, ob sich diese zur Analyse von XPath-Ausdrücken verwenden lassen. Zu den untersuchten Entscheidbarkeitsproblemen existieren verschiedene Implementierungen, die bezüglich ihres Nutzens für die Analyse bewertet wurden. Da der Fokus der Arbeit auf den in der Aktivität Flow definierten transitionConditions liegt, werden die Grundprinzipien der Sprache BPEL, insbesondere der Aktivität Flow ebenfalls in den Grundlagen behandelt. Ein Flow ermöglicht die parallele Abarbeitung der in ihm definierten Aktivitäten. Anhand des Szenarios „Loan Approval“ wurde die implementierte Analyse getestet. Anschließend wurden mögliche Anwendungsgebiete des in dieser Arbeit entwickelten Algorithmus besprochen. Dadurch, dass lediglich der BPEL-Prozess und die XML-Schemas der zu erwartenden XML-Daten zur Analyse herangezogen werden können, können nicht alle möglichen XPath-Ausdrücke analysiert werden. Die XPath-Analyse beschränkt sich daher auf XPath-Ausdrücke, die sich aus einer bestimmten Teilmenge von XPath 1.0 bilden lassen. Diese Einschränkungen werden in den Rahmenbedingungen der XPath-Analyse erläutert. Da keine Vorhersagen über die zu erwartenden Datenwerte vorliegen, sind durch die Analyse nur begrenzte Aussagen über die zu untersuchenden Bedingungen möglich. Werden Vorhersagen anhand von Datenflussanalysen bzw. Analysen über das Verhalten von Aktivitäten berücksichtigt, sind genauere Aussagen möglich.

Full text and
other links
PDF (1977556 Bytes)
RAR (535424 Bytes)
Access to students' publications restricted to the faculty due to current privacy regulations
ContactBastian Schurr bastian_schurr(at)web.de
Department(s)University of Stuttgart, Institute of Architecture of Application Systems
Superviser(s)Kopp, Oliver
Project(s)Tools4BPEL
Entry dateDecember 12, 2007
   Publ. Computer Science