Kurzfassung | The manual deployment of cloud applications is error-prone, time-consuming, and requires considerable technical knowledge. To tackle these issues and automate the deployment of applications, multiple approaches have been proposed that enable the description of applications in the form of declarative deployment models which describe the components of an application, their desired state or configuration, and the relations among the components. The technologies and tools that support deployment models significantly ease the deployment process, however, they still require vendor and product-specific details in the deployment models. This obfuscates the underlying semantics of the deployment models. The essential architectural decisions realized in a deployment model can be stated more clearly by design patterns which describe problems, their solution, the resulting benefits, and the resulting drawbacks in an abstract and reusable format. To combine the benefits of declarative deployment models and patterns, Pattern-based Deployment and Configuration Models (PbDCMs) were defined which introduce patterns as first-class citizens in deployment models. However, manually extracting the realized patterns from deployment models of applications is a non-trivial task as it requires technical knowledge about the patterns a certain component or parts of the application realize. Furthermore, there is no automated way to use the detected patterns for the creation of PbDCMs. To tackle these issues, this thesis presents an automated approach for the detection of patterns in declarative deployment models and the generation of corresponding PbDCMs. The automated detection of patterns is enabled by introducing Pattern Detection and Refinement Models (PDRMs) which consist of two structures, one is used to determine matching subgraphs in a deployment model and the other represents the patterns realized by the first structure. The patterns detected with the support of the introduced PDRMs are used to build corresponding PbDCMs. The approach is implemented as an extension to the modeling tool Eclipse Winery and is validated by a case study. The case study highlights how the pattern detection process can be used to realize new design decisions on an abstract level.
|