05 Fakultät Informatik, Elektrotechnik und Informationstechnik
Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6
Browse
36 results
Search Results
Item Open Access Partnerübergreifende Geschäftsprozesse und ihre Realisierung in BPEL(2016) Kopp, Oliver; Leymann, Frank (Prof. Dr. Dr. h. c.)Diese Arbeit beschäftigt sich mit Geschäftsprozessen, die die Grenzen von Organisationen überspannen. Solche Geschäftsprozesse werden Choreographien genannt. In der Arbeit wird die CREAM-Methode vorgestellt, die zeigt, wie Choreographien modelliert werden können. Im Gegensatz zu Choreographien bezeichnen Orchestrierungen ausführbare Geschäftsprozesse einer einzelnen Organisation, die Dienste nutzen, um ein Geschäftsziel zu erreichen. Eine Variante der CREAM-Methode erlaubt, von einer Orchestrierung durch Aufteilung der Orchestrierung eine Choreographie zu erhalten. Um hierbei die impliziten orchestrierungsinternen Datenabhängigkeiten in Nachrichtenaustausche zu transformieren, wird der explizite Datenfluss der Orchestrierung benötigt. Die Web Services Business Process Execution Language (BPEL) ist eine verbreitete Sprache zur Modellierung von Geschäftsprozessen. In ihr wird der Datenfluss implizit modelliert und somit wird ein Verfahren benötigt, das den expliziten Datenfluss bestimmt. In dieser Arbeit wird ein solches Verfahren vorgestellt. Um eine Choreographie zu modellieren, wird eine Choreographiesprache benötigt. Zur Identifikation einer geeigneten Sprache werden in dieser Arbeit Kriterien zur Evaluation von Choreographiesprachen vorgestellt und damit Choreographiesprachen im Web-Service-Umfeld bewertet. Da keine der betrachteten Sprachen alle Kriterien erfüllt, wird die Sprache BPEL4Chor vorgestellt, die alle Kriterien erfüllt. Um die wohldefinierte Ausführungssemantik von BPEL wiederzuverwenden, verwendet BPEL4Chor die Sprache BPEL als Beschreibungssprache des Verhaltens jedes Teilnehmers in der Choreographie. BPEL4Chor verwendet analog zu BPEL XML als Serialisierungsformat und spezifiziert keine eigene graphische Repräsentation. Die Business Process Modeling Notation (BPMN) ist der de-facto Standard, um Geschäftsprozesse graphisch darzustellen. Deshalb wird in dieser Arbeit BPMN so erweitert, dass alle in BPEL4Chor verfügbaren Konstrukte mittels BPMN modelliert werden können.Item Open Access Eine Methode zum Verteilen, Adaptieren und Deployment partnerübergreifender Anwendungen(2022) Wild, Karoline; Leymann, Frank (Prof. Dr. Dr. h. c.)Ein wesentlicher Aspekt einer effektiven Kollaboration innerhalb von Organisationen, aber vor allem organisationsübergreifend, ist die Integration und Automatisierung der Prozesse. Dazu zählt auch die Bereitstellung von Anwendungssystemen, deren Komponenten von unterschiedlichen Partnern, das heißt Abteilungen oder Unternehmen, bereitgestellt und verwaltet werden. Die dadurch entstehende verteilte, dezentral verwaltete Umgebung bedarf neuer Konzepte zur Bereitstellung. Die Autonomie der Partner und die Verteilung der Komponenten führen dabei zu neuen Herausforderungen. Zum einen müssen partnerübergreifende Kommunikationsbeziehungen realisiert und zum anderen muss das automatisierte dezentrale Deployment ermöglicht werden. Eine Vielzahl von Technologien wurde in den letzten Jahren entwickelt, die alle Schritte von der Modellierung bis zur Bereitstellung und dem Management zur Laufzeit einer Anwendung abdecken. Diese Technologien basieren jedoch auf einer zentralisierten Koordination des Deployments, wodurch die Autonomie der Partner eingeschränkt ist. Auch fehlen Konzepte zur Identifikation von Problemen, die aus der Verteilung von Anwendungskomponenten resultieren und die Funktionsfähigkeit der Anwendung einschränken. Dies betrifft speziell die partnerübergreifenden Kommunikationsbeziehungen. Um diese Herausforderungen zu lösen, stellt diese Arbeit die DivA-Methode zum Verteilen, Adaptieren und Deployment partnerübergreifender Anwendungen vor. Die Methode vereinigt die globalen und lokalen Partneraktivitäten, die zur Bereitstellung partnerübergreifender Anwendungen benötigt werden. Dabei setzt die Methode auf dem deklarativen Essential Deployment Meta Model (EDMM) auf und ermöglicht damit die Einführung deploymenttechnologieunabhängiger Modellierungskonzepte zur Verteilung von Anwendungskomponenten sowie zur Modellanalyse und -adaption. Das Split-and-Match-Verfahren wird für die Verteilung von Anwendungskomponenten basierend auf festgelegten Zielumgebungen und zur Selektion kompatibler Cloud-Dienste vorgestellt. Für die Ausführung des Deployments können EDMM-Modelle in unterschiedliche Technologien transformiert werden. Um die Bereitstellung komplett dezentral durchzuführen, werden deklarative und imperative Technologien kombiniert und basierend auf den deklarativen EDMM-Modellen Workflows generiert, die die Aktivitäten zur Bereitstellung und zum Datenaustausch mit anderen Partnern zur Realisierung partnerübergreifender Kommunikationsbeziehungen orchestrieren. Diese Workflows formen implizit eine Deployment-Choreographie. Für die Modellanalyse und -adaption wird als Kern dieser Arbeit ein zweistufiges musterbasiertes Verfahren zur Problemerkennung und Modelladaption eingeführt. Dafür werden aus den textuellen Musterbeschreibungen die Problem- und Kontextdefinition analysiert und formalisiert, um die automatisierte Identifikation von Problemen in EDMM-Modellen zu ermöglichen. Besonderer Fokus liegt dabei auf Problemen, die durch die Verteilung der Komponenten entstehen und die Realisierung von Kommunikationsbeziehungen verhindern. Das gleiche Verfahren wird auch für die Selektion geeigneter konkreter Lösungsimplementierungen zur Behebung der Probleme angewendet. Zusätzlich wird ein Ansatz zur Selektion von Kommunikationstreibern abhängig von der verwendeten Integrations-Middleware vorgestellt, wodurch die Portabilität von Anwendungskomponenten verbessert werden kann. Die in dieser Arbeit vorgestellten Konzepte werden durch das DivA-Werkzeug automatisiert. Zur Validierung wird das Werkzeug prototypisch implementiert und in bestehende Systeme zur Modellierung und Ausführung des Deployments von Anwendungssystemen integriert.Item Open Access Elastic parallel systems for high performance cloud computing(2020) Kehrer, Stefan; Blochinger, Wolfgang (Prof. Dr.)High Performance Computing (HPC) enables significant progress in both science and industry. Whereas traditionally parallel applications have been developed to address the grand challenges in science, as of today, they are also heavily used to speed up the time-to-result in the context of product design, production planning, financial risk management, medical diagnosis, as well as research and development efforts. However, purchasing and operating HPC clusters to run these applications requires huge capital expenditures as well as operational knowledge and thus is reserved to large organizations that benefit from economies of scale. More recently, the cloud evolved into an alternative execution environment for parallel applications, which comes with novel characteristics such as on-demand access to compute resources, pay-per-use, and elasticity. Whereas the cloud has been mainly used to operate interactive multi-tier applications, HPC users are also interested in the benefits offered. These include full control of the resource configuration based on virtualization, fast setup times by using on-demand accessible compute resources, and eliminated upfront capital expenditures due to the pay-per-use billing model. Additionally, elasticity allows compute resources to be provisioned and decommissioned at runtime, which allows fine-grained control of an application's performance in terms of its execution time and efficiency as well as the related monetary costs of the computation. Whereas HPC-optimized cloud environments have been introduced by cloud providers such as Amazon Web Services (AWS) and Microsoft Azure, existing parallel architectures are not designed to make use of elasticity. This thesis addresses several challenges in the emergent field of High Performance Cloud Computing. In particular, the presented contributions focus on the novel opportunities and challenges related to elasticity. First, the principles of elastic parallel systems as well as related design considerations are discussed in detail. On this basis, two exemplary elastic parallel system architectures are presented, each of which includes (1) an elasticity controller that controls the number of processing units based on user-defined goals, (2) a cloud-aware parallel execution model that handles coordination and synchronization requirements in an automated manner, and (3) a programming abstraction to ease the implementation of elastic parallel applications. To automate application delivery and deployment, novel approaches are presented that generate the required deployment artifacts from developer-provided source code in an automated manner while considering application-specific non-functional requirements. Throughout this thesis, a broad spectrum of design decisions related to the construction of elastic parallel system architectures is discussed, including proactive and reactive elasticity control mechanisms as well as cloud-based parallel processing with virtual machines (Infrastructure as a Service) and functions (Function as a Service). To evaluate these contributions, extensive experimental evaluations are presented.Item Open Access Prozessbausteine(2014) Eberle, Hanna; Leymann, Frank (Prof. Dr.)Gegenwärtig existierenden Modellierungssprachen und Werkzeugen zur Umsetzung prozessbasierter Anwendungen liegt im Allgemeinen die Annahme eines zur Entwicklungszeit bekannten und in seiner Struktur vollständig ausmodellierten Prozessmodells zugrunde. Für Szenarien, in welchen eine prozessbasierte Anwendung neben stabilen, d.h. zur Modellierungszeit des Prozesses bekannten, auch durch dynamische, d.h. erst zur Anwendungslaufzeit geltende, Rahmenbedingungen beeinflusst wird, ist eine derartige statische Prozessmodellierung nur bedingt geeignet. In diesen Szenarien ist es vielmehr wünschenswert, (i) zur Entwicklungszeit bereits bekannte Prozessteile der Anwendung detailliert ausmodellieren zu können, und diese (ii) zur Laufzeit der Anwendung unter Berücksichtigung der zum Ausführungszeitpunkt geltenden dynamischen Rahmenbedingungen zum vollständigen Prozess der Anwendung zu integrieren. Das im Verlauf dieser Arbeit vorgestellte Konzept der Prozessbausteine setzt an diesem Punkt an und schafft ein Rahmenwerk für die Modellierung und Ausführung prozessbasierter Anwendungen unter Berücksichtigung sowohl stabiler als auch dynamischer Rahmenbedingungen. Kerngedanke des Konzepts ist die Abbildung stabiler Rahmenbedingungen zur Entwicklungszeit in Form teilweise unvollständiger Prozessmodelle, sogenannter Prozessbausteine. Zu einem späteren Zeitpunkt im Lebenszyklus der Anwendung werden diese Prozessbausteine dann, motiviert durch die jeweils geltenden dynamischen Rahmenbedingungen, mit weiteren Prozessbausteinen zum vollständigen Prozessmodell der Anwendung integriert. Zur vollständigen Unterstützung der Entwicklung von Anwendungen auf Grundlage dieses Konzepts umfasst die vorliegende Arbeit die Definition eines Metamodells für sowohl die Modellierung einzelner als auch die Repräsentation integrierter Prozessbausteine, die Beschreibung der Ausführung integrierter Prozessbausteine, sowie die Vorstellung einer Architektur für die Ausführung integrierter Prozessbausteine.Item Open Access Architectural principles and decision model for Function-as-a-Service(2024) Yussupov, Vladimir; Leymann, Frank (Prof. Dr. Dr. h. c.)Cloud computing revolutionized the way modern applications are designed and operated. Instead of maintaining the on premise infrastructure many enterprises incorporate various cloud offerings when designing their applications to decrease time-to-market and reduce the required management efforts. This includes the use of traditional cloud service models such as IaaS or PaaS as well as novel models such as FaaS that enables engineering cloud applications by composing fine-grained functions hosted on FaaS platforms with a variety of provider-managed services, e.g., data persistence and messaging services. Most management tasks for the components in FaaS-based applications become a responsibility of the chosen cloud provider, which, however, results in a stronger dependence on provider products and their implementation and packaging requirements. Therefore, engineering of FaaS-based applications can benefit from a stronger focus on the architectural considerations instead of specific products that often appear as fast as they become obsolete. This work focuses on different aspects of provider-agnostic design for FaaS-based applications and is inspired by the increased dependence of components in such applications on product-specific requirements. To enable reasoning on component hosting and management requirements in a provider-agnostic manner, this work introduces a pattern language capturing various trade-offs for hosting application components in the cloud. Furthermore, to facilitate classification and selection support for components in FaaS-based applications, this work presents a classification framework for FaaS platforms and introduces a classification framework metamodel that generalizes these concepts for other component types in such applications. Additionally, this work introduces a standards-based modeling approach for specifying function orchestrations and transforming them into provider-specific formats and an automated function code extraction and wrapping approach that aims to facilitate reusing functions for different FaaS platforms. To enable using these contributions together, this thesis also introduces the GRASP method that enables gradual modeling and refinement of FaaS-based applications from abstract topologies to executable deployment models. The technological support for using the GRASP Method is enabled by an integrated GRASP toolchain. To validate the feasibility of the introduced concepts, the GRASP toolchain is implemented prototypically and integrated with the existing tools for pattern-based modeling and deployment of cloud applications.Item Open Access Green Business Process Management : Methode und Realisierung(2014) Nowak, Alexander; Leymann, Frank (Prof. Dr.)Die Veränderung des weltweiten Klimas macht deutlich, dass die Entwicklungen der globalen Märkte neben ökonomischen Aspekten zunehmend auch die Erhaltung und Verbesserung der Umweltzustände anstreben müssen. Für die Definition von Umweltzielen und -regularien wurden durch verschiedene nationale und internationale Gremien Kriterien und Ansätze beschrieben, welche häufig als Vorgaben an Unternehmen auf nationaler Ebene weitergegeben werden. Ein Beispiel hierfür ist der Handel mit CO2-Zertifikaten, bei dem Unternehmen den von ihnen ausgestoßenen Anteil von CO2 durch Zertifikate abdecken müssen. Damit Unternehmen diese gesetzlichen Auflagen einhalten und die damit verbundenen monetären Belastungen reduzieren können, müssen geeignete Maßnahmen zur Reduktion des negativen Umwelteinflusses aller unternehmerischen Aktivitäten entwickelt werden. Für die Ermittlung des Umwelteinflusses eines Unternehmens wurden bereits verschiedene Methoden entwickelt, wie beispielsweise der ISO Standard 14000 und das Life Cycle Assessment. Diese Methoden zielen jedoch häufig nur auf die Erfassung des Umwelteinflusses von Produkten ab und reichen nicht aus, eine ganzheitliche Optimierung des Umwelteinflusses eines Unternehmens und seiner Abläufe zu erreichen. Umweltaspekte müssen direkt in das Management und die strategische Entwicklung von Unternehmen integriert werden. Sie müssen in der Lage sein, den Umwelteinfluss des unternehmerischen Handelns abzubilden, zu analysieren und hinsichtlich der konventionellen Optimierungskriterien Kosten, Qualität, Zeit und Flexibilität abzuwägen, ohne dabei auf eine schnelle und flexible Anpassung an sich verändernde Marktsituationen zu verzichten. In dieser Dissertation wird eine Erweiterung des existierenden Geschäftsprozessmanagements unter Einbeziehung zugehöriger Methoden und Werkzeuge eingeführt, welche es Entscheidungsträgern ermöglicht, die strategische Entwicklung eines Unternehmens durch ökologische Aspekte zu ergänzen. Die entwickelten Konzepte zeigen, wie Key Performance Indicators, unterstützende IT-Infrastrukturen und die strategische Unternehmensgestaltung für die Integration dieser Aspekte erweitert werden müssen. Zur Unterstützung der vorgestellten Erweiterungen des Geschäfts¬prozess-managements wurde ein allgemeines Vorgehens¬modell definiert, welches aus ökologischer Sicht die Definition von Key Ecological Indicators, die Abbildung von Ressourcen auf Prozessmodelle und -aktivitäten, die Definition spezifischer Monitoringmodelle und die ökologische Analyse von Geschäftsprozessen abdeckt. Die Umsetzung dieser Aspekte wird jeweils exemplarisch durch spezifisch entwickelte Methoden aufgezeigt. Für das Management von Geschäftsprozessen auf Basis der analysierten Informationen definiert die vorliegende Arbeit einen auf Patterns basierenden Ansatz. Hierzu wurde eine Menge von Green Business Process Patterns identifiziert und dokumentiert. Die Entwicklung eines Pattern Support Frameworks hilft Entscheidungsträgern anschließend, diese Patterns für eine zielorientierte Optimierung von Geschäftsprozessen einzusetzen. Ausgehend von konkreten Problemstellungen begleitet das Pattern Support Framework damit die Identifikation geeigneter Patterns, welche im Anschluss auf konkrete Lösungsimplementierungen übertragen werden können. Die in der vorliegenden Arbeit eingeführten Konzepte erlauben es Entscheidungsträgern, neben ökonomischen auch ökologische Entscheidungsaspekte in der Entwicklung von Geschäftsprozessen zu berücksichtigen. Die Verbesserung des Umwelteinflusses zielt damit nicht nur direkt auf den ökologischen Fußabdruck eines Produktes oder Services ab, sondern ermöglicht eine durchgängige Restrukturierung aller an der Erzeugung oder Bereitstellung beteiligten Abläufe. Die entwickelten Prototypen zeigen exemplarisch die Implementierung der verschiedenen Konzepte und unterstützen sowohl Entscheidungsträger als auch Optimierungsteams bei der Verbesserung des Umwelteinflusses. Die Anwendbarkeit der Konzepte und Werkzeuge wird zudem in einer Fallstudie validiert.Item Open Access Workload mix definition for benchmarking BPMN 2.0 Workflow Management Systems(2017) Skouradaki, Marigianna; Leymann, Frank (Prof. Dr. Dr. h. c.)Nowadays, enterprises broadly use Workflow Management Systems (WfMSs) to design, deploy, execute, monitor and analyse their automated business processes. Through the years, WfMSs evolved into platforms that deliver complex service oriented applications. In this regard, they need to satisfy enterprise-grade performance requirements, such as dependability and scalability. With the ever-growing number of WfMSs that are currently available in the market, companies are called to choose which product is optimal for their requirements and business models. Benchmarking is an established practice used to compare alternative products and leverages the continuous improvement of technology by setting a clear target in measuring and assessing performance. In particular, for service oriented WfMSs there is not yet a widely accepted standard benchmark available, even if workflow modelling languages such as Web Services Business Process Execution Language (WS-BPEL) and Business Process Model and Notation 2.0 (BPMN 2.0) have been adopted as the de-facto standards. A possible explanation on this deficiency can be given by the inherent architectural complexity of WfMSs and the very large number of parameters affecting their performance. However, the need for a standard benchmark for WfMSs is frequently affirmed by the literature. The goal of the BenchFlow approach is to propose a framework towards the first standard benchmark forassessing and comparing the performance of BPMN 2.0 WfMSs. To this end, the approach addresses a set of challenges spanning from logistic challenges, that are related to the collection of a representative set of usage scenarios,to technical challenges, that concern the specific characteristics of a WfMS. This work focuses on a subset of these challenges dealing with the definition of a representative set of process models and corresponding data that will be given as an input to the benchmark. This set of representative process models and corresponding data are referred to as the workload mix of the benchmark. More particularly, we first prepare the theoretical background for defining a representative workload mix. This is accomplished through identification of the basic components of a workload model for WfMS benchmarks, as well as the investigation of the impact of the BPMN 2.0 language constructs to the WfMS’s performance, by means of introducing the first BPMN 2.0 micro-benchmark. We proceed by collecting real-world process models for the identification of a representative workload mix. Therefore, the collection is analysed with respect to its statistical characteristics and also with a novel algorithm that detects and extracts the reoccurring structural patterns of the collection.The extracted reoccurring structures are then used for generating synthetic process models that reflect the essence of the original collection.The introduced methods are brought together in a tool chain that supports the workload mix generation. As a final step, we applied the proposed methods on a real-world case study, that bases on a collection of thousands of real-world process models and generates a representative workload mix to be used in a benchmark. The results show that the generated workload mix is successful in its application for stressing the WfMSs under test.Item Open Access Throughput improvements for BPEL engines : implementation techniques and measurements applied to SWoM(2013) Roller, Dieter; Leymann, Frank (Prof. Dr.)Workflow Technology has become over the last two decades the cornerstone of modern application systems, in particular those built upon Service Oriented Architecture (SOA). It helps implement business processes that can be easily adapted to the changing needs of a dynamic environment and provides the base for the two-level application development paradigm. Workflow Management Systems (WfMS) deliver the functions of workflow technology; they have become a critical middleware component whose performance characteristics are significantly impacting the overall performance of the applications that have been built. In the thesis, a set of optimization techniques for a state-of-the-art WfMS have been developed that delivers the required robustness with the best achievable performance. This WfMS has been labeled Stuttgarter Workflow Maschine (SWoM) to emphasize its birth place. Several novel approaches have been developed to achieve the desired goal : (1) the concept of transaction flows has been developed as the base for a flow optimizer that significantly improves the performance of the workflow engine, (2) the notion of caching is driven into virtually all areas of the different components that make up the SWoM, (3) the exploitation and tie-in into the underlying infrastructure for optimal resource exploitation, where the infrastructure, IBM WebSphere for the application server and IBM DB2 as the database environment, provides for the necessary robustness, and (4) a flow optimizer optimizes the execution of the transaction flows with respect to cache, database, and CPU cycle usage based on user recommendations and statistical information that the SWoM collects during execution. These optimization techniques, that maintain middleware robustness, are complemented by a set of optimization techniques that improve performance by relaxing some of the stringent robustness requirements. All techniques have been validated using a simple, yet expressive benchmark that focuses on high-speed, message-based interactions, synchronous invocation, message transformation, and parallel execution. The benchmark results show that the SWoM scales almost linearly with respect to CPU load and the parallelism of requests. The maximum number of requests that the SWoM could obtain on a quad core CPU running Windows 7 64bit was more than 100 process instances per second.Item Open Access Eine musterbasierte Methode zur Automatisierung des Anwendungsmanagements(2016) Breitenbücher, Uwe; Leymann, Frank (Prof. Dr. Dr. h. c.)Das Management laufender Geschäftsanwendungen gehört zu den kritischen Vorgängen des IT-Betriebs, da Unachtsamkeiten zu fehlerhaften Anwendungszuständen und zum Ausfall ganzer Anwendungslandschaften führen können. Speziell die manuelle Managementdurchführung birgt aufgrund zunehmend unüberschaubarer Anwendungsstrukturen, unbekannter Abhängigkeiten zwischen Komponenten, unzureichender Dokumentation sowie komplexer Managementwerkzeuge ein stetig größer werdendes wirtschaftliches Risiko. Aus diesem Grund wurden in den vergangenen Jahren neue Paradigmen und eine große Anzahl an Technologien zur Automatisierung des Anwendungsmanagements entwickelt. Die zunehmende Komplexität von Architekturen durch verteilte Systeme, Virtualisierung von Komponenten, Cloud Computing und dem aufkommenden Internet der Dinge erfordert jedoch immer häufiger die Kombination mehrerer dieser Managementtechnologien, um übergeordnete Managementziele bezüglich eines komplexen IT-Systems umzusetzen. Dabei treten sowohl (i) konzeptionelle als auch (ii) technische Fragestellungen auf, die von unterschiedlichen Expertengruppen in Kollaboration analysiert und gelöst werden müssen. Die Integration dieser beiden Abstraktionsebenen stellt dabei eine grundlegende Herausforderung dar, die im gegenwärtigen Anwendungsmanagement aufgrund fehlender durchgängiger Automatisierungsmöglichkeiten zumeist unter hohem Aufwand individuell angenommen werden muss. Um diese Automatisierungslücke zwischen den beiden Abstraktionsebenen zu schließen, stellt diese Arbeit eine hybride, musterbasierte Managementmethode namens PALMA vor. Die Methode kombiniert das deklarative mit dem imperativen Managementparadigma und ermöglicht dadurch die automatisierte Anwendung generischer Managementmuster. Häufig auftretende Managementprobleme, wie beispielsweise die Migration einer Anwendungskomponente in eine Cloud-Umgebung unter Wahrung deren Verfügbarkeit, können mittels automatisierten Managementmustern effizient für individuelle Anwendungen gelöst und die zugehörigen Prozesse automatisiert ausgeführt werden. Die Methode unterstützt die Kollaboration von Experten und kann manuell, semi-automatisiert sowie vollständig automatisiert angewendet werden. Zur Umsetzung der Methode wird eine deklarative Sprache namens DMMN vorgestellt, welche die Modellierung von Managementaufgaben auf hoher deklarativer Abstraktionsebene unter Ausblendung technischer Ausführungsdetails ermöglicht. Bei der automatisierten Ausführung von Managementmustern werden deklarative Managementmodelle in dieser Sprache generiert, welche die jeweilige Musterlösung für die betroffene Anwendung in Form der auszuführenden Managementaufgaben abstrakt spezifizieren. Zu deren Ausführung wird ein Transformationsverfahren vorgestellt, das deklarative Managementmodelle in ausführbare, imperative Prozessmodelle übersetzt. Die Generierung dieser Prozessmodelle basiert dabei auf der Orchestrierung wiederverwendbarer Managementbausteine, die in Form von Subprozessen modelliert sind und als Management-Planlets bezeichnet werden. Durch diese Transformation werden die Stärken beider Paradigmen vereint und umfangreiches Management komplexer IT-Systeme ermöglicht. Zudem wird ein musterbasiertes Verfahren vorgestellt, mithilfe dessen Managementaufgaben in deklarativen Managementmodellen automatisch auf Probleme analysiert und diesbezüglich korrigiert werden können. Dadurch wird die Korrektheit der Durchführung gewährleistet und der Systemadministrator bei der Modellierung der Modelle unterstützt. Die in dieser Arbeit vorgestellten Konzepte werden im Rahmen des sogenannten PALMA-Frameworks prototypisch implementiert, um die praktische Umsetzbarkeit der theoretischen Konzepte und Ansätze zu validieren.Item Open Access Design support for performance- and cost-efficient (re)distribution of cloud applications(2019) Gómez Sáez, Santiago; Leymann, Frank (Prof. Dr. Dr. h. c.)In the last decade the IT landscape has experienced a revolutionary change in both the research and industry domains due to the strong emergence and adoption of cloud providers and services. The increase of available cloud services together with the materialization of DevOps methodologies have forced a change in how software is engineered and operated. Nowadays, organizations can leverage a wide spectrum of cloud services to build, migrate, distribute, and even replace their application components in the cloud. In summary, the transformation of capital into operational expenditures when using private or public clouds has become a reality. The emergence of cloud services, however, brought with it a substantial complexity when designing and running cloud applications. More specifically, cloud environments are intrinsically multi-tenant, where different tenants (or cloud consumers) consume computational, network, and storage resources on an on-demand basis. This type of virtualized environment causes performance to be variable and heterogeneous, therefore having consequences on application costs. When migrating applications to the cloud, this heterogeneity causes architectural decision making to be more complex, mainly due to the limited amount of knowledge about cloud services. This work tackles the aforementioned decision making challenge, by defining and realizing a design decision support framework called SCARF to assist IT organizations to efficiently migrate their applications to the cloud, with a focus on optimizing their cost and performance. In summary, SCARF is a design and decision support framework for \textit{systematically (re)distributing applications in the cloud}. SCARF equips application architects with a design process and tools (i) to model their application architectures, (ii) to automatically discover potential cloud services to (re-)deploy their application components, (iii) to evaluate them with respect to cost and performance, and (iv) to monitor and analyze application costs and performance evolution during runtime. SCARF builds upon existing concepts and techniques in the domain of cloud application topologies, case base reasoning, similarity analysis, and utility theory, in order to simplify the steps for re-engineering and migrating traditional applications to the cloud. The technological support for SCARF, SCARF-T, comprises an integrated tool chain built upon prior standards and reusing existing technologies and tools. The evaluation of SCARF and SCARF-T show a more efficient and simplified decision making process for migrating applications to the cloud, as also shown by the publications supporting this thesis. Overall, SCARF can be considered as a starting point for enabling IT organizations with architectural decision support for migrating their applications to the cloud, with a focus on optimizing the complete spectrum of application non-functional aspects.