Please use this identifier to cite or link to this item: http://dx.doi.org/10.18419/opus-8798
Authors: Sonntag, Mirko
Title: Model-as-you-go - ein Ansatz zur flexiblen Entwicklung von wissenschaftlichen Workflows
Other Titles: Model-as-you-go - an approach for the flexible development of scientific workflows
Issue Date: 2016
metadata.ubs.publikation.typ: Dissertation
metadata.ubs.publikation.seiten: XVIII, 278
URI: http://elib.uni-stuttgart.de/handle/11682/8815
http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-ds-88152
http://dx.doi.org/10.18419/opus-8798
Abstract: In der zurückliegenden Dekade hat der Einsatz von Workflows in wissenschaftlichen Simulationen und Berechnungen zunehmend an Bedeutung gewonnen. Vor allem das graphische Modellieren und die Automatisierung von manuellen Tätigkeiten sind ein großer Vorteil gegenüber der herkömmlichen Arbeitsweise von Wissenschaftlern. Es gibt eine große Menge an wissenschaftlichen Workflow-Systemen, die in unterschiedlichsten Forschungs-bereichen eingesetzt werden, etwa in der Biologie zum Vergleich von DNS-Sequenzen, der Geologie für die Erdbebenforschung oder der Physik für Festkörpersimulationen. Die meisten der verfügbaren wissenschaftlichen Workflow-Systeme sind Neuentwicklungen und implementieren proprietäre Konzepte und Sprachen. Das erschwert die Zusammenarbeit zwischen Forschern sowie den Austausch und das gegenseitige Nutzen von Ergebnissen, was sich nachteilig auf die zunehmend verzahnten Forschungsgebiete auswirkt. In der Wissenschaft entwickelt sich der Konsens, dass die konventionelle Workflow-Technologie, wie sie seit Jahrzehnten erfolgreich in geschäftlichen Anwendungen eingesetzt wird, auch für wissenschaftliche Szenarien Vorteile mit sich bringt. Sie basiert auf anerkannten Standards, die die Interoperabilität vereinfachen und den Austausch von Artefakten, z.B. von Workflows oder von Daten, ermöglichen. Das Implementieren nicht-funktionaler Anforderungen, etwa die robuste Ausführung von Workflows, erhöht die Effizienz, mit der wissenschaftliche Ergebnisse erzielt werden. Der Einsatz von Transaktionen trägt erheblich zur Sicherstellung der Datenintegrität bei. Bisher werden geschäftliche Workflow-Systeme selten auch für wissenschaftliche Anwendungen genutzt. Die Gründe dafür sind in ihrer Striktheit zu suchen und darin, dass sie Wissenschaftler in ihrer Vorgehensweise und im Denken nicht oder nur unzureichend unterstützen. Es hat sich gezeigt, dass Wissenschaftler Tools benötigen, die es erlauben, datenorientiert zu arbeiten. Eine Datenabhängigkeit zwischen Programmen besteht dann, wenn die Ausgabedaten des einen Programmes die Eingabedaten (oder Teile davon) des anderen Programmes sind. Ein anderer Punkt ist, dass konventionelle Workflows mit ihrem strikten Lebenszyklus, den unterschiedlichen Benutzerrollen und unterstützenden Werkzeugen zu unflexibel sind und nicht die Anforderungen von Wissenschaftlern abdecken. Produktions-Workflows werden durch verschiedene Beteiligte modelliert und dann vielfach unverändert durchgeführt. Wissenschaftler hingegen probieren aus, verändern den Ablauf oder die Daten, wiederholen die Schritte eines Experiments, auch während dessen Laufzeit. In dieser Arbeit wird die Inflexibilität von geschäftlichen Workflows adressiert, die einen Einsatz in wissenschaftlichen Experimenten hemmt und bisweilen sogar verhindert. Es werden Mechanismen erforscht, um einerseits diese Inflexibilität zu überwinden, und andererseits die Vorteile der konventionellen Workflow-Technologie zu erhalten. Dabei werden bereits existierende Ansätze zur Flexibilisierung von Workflows herangezogen und weiterentwickelt oder den Anforderungen entsprechend angepasst. Um die Anforderungen zu sammeln, werden geschäftliche mit wissenschaftlichen Workflows anhand deren Lebenszyklus verglichen. Grundlage des Vergleichs sind Analysen existierender Workflow-Systeme, eine Literaturrecherche und Projekterfahrungen mit Wissenschaftlern. Bei wissenschaftlichen Workflows sind die Phasen der Modellierung, der Ausführung, dem Monitoring und der Adaption von Workflows viel enger verzahnt und werden mehrfach besucht, bis der Workflow fixiert ist. Für diese Vorgehensweise, bei der Workflows während der Laufzeit Schritt für Schritt fertig gestellt werden, wird in dieser Arbeit der Begriff Model-as-you-go geprägt. Um Model-as-you-go zu realisieren, werden Konzepte zur Verschmelzung der Workflow-Lebenszyklusphasen entworfen. Die Modellierungsumgebung wird mit Funktionalität zur Ausführungskontrolle erweitert, um Workflows direkt beim Modellieren starten zu können. Über einen integrierten Instanzmonitor lässt sich der Ausführungsfortschritt verfolgen. Operationen für die Ad-hoc-Adaption laufender Workflows erlauben deren schrittweise Entwicklung. Die Einführung von Workflow-Instanzen in der Modellierungsumgebung, die in der ursprünglichen Technologie agnostisch gegenüber der Workflow-Ausführung ist, und die Korrelation zwischen Workflows in der Modellierungs- und der Ausführungsumgebung sind Probleme, die es zu lösen gilt. Der Fokus dieser Arbeit liegt auf drei Arten der Ad-hoc-Adaption: die strukturelle Adaption von Workflows, das Wiederholen von Aktivitäten und das Überspringen von Aktivitäten. Um die drei Adaptionen formal zu beschreiben, wird ein graph-basiertes Metamodell benutzt. Für strukturelle Adaptionen wird das Konzept der konkurrierenden Workflow-Evolution entwickelt, das auf der Versionierung und Instanzmigration aufbauend die Aktivierung mehrerer Modellversionen ermöglicht. Die dabei entstehenden Probleme der Modellverwaltung und -adressierung durch Clients werden gelöst. Die Adaptionen der Workflow-Struktur wird detailliert mithilfe von Adaptionsoperationen beschrieben. Das Ziel ist es, so viele Änderungen wie möglich zuzulassen, insbesondere auch Änderungen an Konstrukten in der Gegenwart von Workflow-Instanzen. Das Wiederholen und Überspringen von Aktivitäten ist ohne spezielle vormodellierte Konstrukte spontan zur Laufzeit möglich. Die jeweilige Start- bzw. Zielaktivität kann der Wissenschaftler von Fall zu Fall bestimmen, um nicht vorhersehbare Fehler zu behandeln, die Konvergenz von Ergebnissen positiv zu beeinflussen oder zu verhindern, dass bereits vorhandene Daten erneut berechnet werden. Bei den drei Adaptionsmechanismen werden Datenabhängigkeiten, Fehlerbehandlungsroutinen, unterschiedliche Aktivitätstypen sowie parallele, alternative und tote Pfade berücksichtigt. Die theoretischen Überlegungen werden mit WS-BPEL 2.0 in die Praxis umgesetzt. Es wird beschrieben, wie einerseits die Konzepte aufgrund der sprachlichen Eigenschaften von WS-BPEL angepasst und andererseits WS-BPEL erweitert werden muss, um die Konzepte zu realisieren. Kommunikationsaktivitäten, strukturierte Aktivitäten allgemein, Scopes und Schleifen werden in den Betrachtungen besonders berücksichtigt. Es wird eine Architektur vorgestellt, mit der Model-as-you-go realisiert werden kann. Dabei wird auf die unterschiedlichen Komponenten eingegangen und deren Funktionen und Abhängigkeiten beschrieben. Zur Evaluierung der entstandenen Konzepte wird Mayflower präsentiert, eine Java-basierte Model-as-you-go-Implementierung, die auf Open-Source-Software aufsetzt. Model-as-you-go vereinfacht die Entwicklung von Workflows durch das direkte Ausführen, durch die unmittelbare Rückmeldung des Workflow-Status, durch Ad-hoc-Adaptionen, die einen Verlust des Ausführungsfortschritts und der zugehörigen Daten verhindern. Die flexible Entwicklung von Workflows wird ermöglicht und somit ein Einsatz der konventionellen Workflow-Technologie durch Wissenschaftler in wissenschaftlichen Anwendungsgebieten erleichtert. In einer Fallstudie wird validiert, wie Mayflower sich für die Implementierung von wissenschaftlichen Workflows eignet und inwiefern die in dieser Arbeit getroffenen Annahmen und Anforderungen zutreffen.
Appears in Collections:05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Files in This Item:
File Description SizeFormat 
160519-Mirko-Sonntag_Dissertation-Model-as-you-go-final.pdf4 MBAdobe PDFView/Open


Items in OPUS are protected by copyright, with all rights reserved, unless otherwise indicated.