Automatische Generierung von Prozessen im jABC - Naujokat, Stefan (Technische Universität Dortmund, 2012)
Serviceorientierung ist ein zentrales Element zur Wiederverwendung in der Softwareentwicklung und die Modellierung von ausführbaren Prozessen aus Services (Orchestrierung) ermöglicht auch Anwendungsexperten, die in der Regel keine Programmierer sind, Software zu erstellen. Problematisch ist allerdings, dass eine große Menge von Bibliotheken und Services schnell unübersichtlich wird. Ein einsteigender Entwickler oder Modellierer muss sich trotz eventuell vorhandener Sortier- und Filterfunktionen zunächst langwierig orientieren. Dies legt die Idee nahe, die Orchestrierung von Services automatisieren zu wollen, um den Modellierer bei dieser Orientierung zu unterstützen. Die vorliegende Diplomarbeit stellt PROPHETS, eine Neuimplementierung und Erweiterung der Synthesefunktionalität der mittlerweile inaktiven ETI-Plattform, vor. Umgesetzt wurde sie als Plugin für das am Lehrstuhl für Programmiesysteme entwickelte Framework zur grafischen Modellierung von Prozessen, das Java Application Building Center (jABC). Darin wird die Möglichkeit geschaffen, Modellteile als "Lose Spezifikation" zu definieren. PROPHETS führt daraufhin eine Synthese aus und schlägt dem Anwender mögliche Konkretisierungen vor. Darüber hinaus können mithilfe von Formeln in einer temporalen Logik weitere Anforderungen an die Synthese gestellt werden. Hierbei muss der Benutzer allerdings nicht die formalen Details von Temporallogik und Synthese kennen, da ihm natürlichsprachliche Vorlagen angeboten werden, die er mit seinem domänenspezifischen Vokabular füllen kann. Mit dieser Arbeit ist damit eine Experimentierplattform entstanden, die den Prozessmodellierer mit iterativer Verfeinerung seiner Spezifikation zum gewünschten Ergebnis leiten kann, ohne dass er sich mit den technischen Details der vorhandenen Services auseinandersetzen muss.
Keywords: Datenflussanalyse; Lose Spezifikation; Model checking; Prozesssynthese; 004