Bitte benutzen Sie diese Kennung, um auf die Ressource zu verweisen: http://dx.doi.org/10.18419/opus-10437
Autor(en): Kabierschke, Oliver
Titel: Resilient continuous delivery pipelines based on BPMN
Erscheinungsdatum: 2019
Dokumentart: Abschlussarbeit (Master)
Seiten: xvii, 106
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-ds-104548
http://elib.uni-stuttgart.de/handle/11682/10454
http://dx.doi.org/10.18419/opus-10437
Zusammenfassung: The “Continuous Delivery” (CD) approach promises to significantly reduce the time-to-market of new features in a software development project, enabling faster feedback for the developers and in effect higher customer satisfaction. The key of implementing CD is automating the delivery process, which involves building, testing, and deploying the application to the target platform. With an increasing application size, the delivery process becomes more complex and is likely to fail at various points. A failure can interrupt the development process and should consequently be prevented whenever possible. The “Business Process Model and Notation” (BPMN) specifies approaches to introduce reliability increasing structures in a business process, which prevent failures or compensate their effects during process execution. The goal of this master’s thesis is to support the design of resilient CD processes by bringing concepts from BPMN to the CD domain. A graphical representation of a CD pipeline can make complex processes more manageable by abstracting relevant structures. Particularly the compensation concept in BPMN is a promising way of abstracting complicated parts of a CD pipeline. In order to create compatibility between BPMN and the CD domain, the “Domain Specific Language” (DSL) StalkCD has been invented. It stores the CD process of a Jenkinsfile and combines it with information that is relevant when generating a BPMN model. Transformations from Jenkinsfiles via StalkCD to BPMN and back have been developed, enabling to depict Jenkinsfiles using BPMN. Evaluation results show that the support of the provided implementations for the declarative syntax of Jenkinsfiles is good. Jenkinsfiles that have been translated to BPMN models can be visualized and edited comprehensively, however, the graphical user support is still improvable. Because of the lack of sufficiently complex real-world-examples, this thesis could not prove that there actually result resilience benefits from using BPMN as abstraction layer when designing CD pipelines.
Das Konzept „Continuous Delivery“ (CD) verspricht signifikant kürzere Entwicklungszeiten neuer Funktionen in einem Software-Entwicklungsprojekt. Dies ermöglicht schnellere Rückmeldungen an Entwickler und letztlich auch höhere Kundenzufriedenheit. Der Schlüssel zur Umsetzung von CD ist die Automatisierung des Auslieferungsprozesses, welcher aus dem Bauen, Testen und Installieren der Anwendung besteht. Mit zunehmender Anwendungsgröße steigt auch die Komplexität des Auslieferungsprozesses und es entstehen an vielen Stellen Fehlerquellen. Da ein Fehlschlag der automatischen Auslieferung den Entwicklungsfluss unterbricht, ist es sinnvoll, Fehler zu verhindern, wo immer es möglich ist. „Business Process Model and Notation“ (BPMN) enthält Konzepte, um Zuverlässigkeits-Konstrukte in Prozesse zu integrieren, welche Fehler verhindern oder deren Folgen während der Prozessausführung kompensieren. Das Ziel dieser Masterarbeit ist die Unterstützung der Entwicklung von resilienten Auslieferungsprozessen durch die Verwendung von BPMN-Konzepten in der CD-Domäne. Solche Prozesse sollen in der Lage sein, sich ohne menschliches Zutun von Fehlern zu erholen. Eine grafische Repräsentation einer CD-Pipeline kann komplexe Prozesse handhabbarer machen, indem sie relevante Strukturen abstrahiert. Besonders das „Compensation“-Konzept in BPMN ist ein vielversprechender Weg, um komplizierte Teile eines Auslieferungsprozesses zu abstrahieren. Um Kompatibilität zwischen BPMN und der CD-Domäne herzustellen, wurde die „Domänen-Spezifische Sprache“ (DSL) StalkCD entwickelt. Sie speichert den CD-Prozess einer Jenkinsfile und zusätzlich Informationen, die zur Visualisierung eines daraus generierten BPMN-Modells relevant sind. Es wurden Transformationen von Jenkinsfiles über StalkCD zu BPMN und umgekehrt entwickelt, welche es ermöglichen, eine Jenkinsfile in BPMN darzustellen. Evaluierungen haben gezeigt, dass die entwickelte Implementierung eine gute Abdeckung von Jenkinsfile-Sprachelementen aufweist. In BPMN überführte Jenkinsfiles lassen sich außerdem vollständig darstellen und bearbeiten, jedoch ist die grafische Benutzerunterstützung noch ausbaufähig. In dieser Arbeit konnte nicht bewiesen werden, dass der Einsatz von BPMN als Abstraktionsschicht beim Entwickeln von Auslieferungsprozessen diesen tatsächlich zu höherer Resilienz verhilft, da entsprechend komplexe praktische Beispiele fehlten.
Enthalten in den Sammlungen:05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Dateien zu dieser Ressource:
Datei Beschreibung GrößeFormat 
MT-Kabierschke.pdf2,96 MBAdobe PDFÖffnen/Anzeigen


Alle Ressourcen in diesem Repositorium sind urheberrechtlich geschützt.