The ADMD3 approach presented in this book enchances the architectural design documentation of decision via reuse of design patterns. It combines the support for evaluation of pattern application, semi-automated documentation of decision rationale and trace links. The approach is based on a new kind of design pattern catalogue, whereby usual pattern descriptions are captured together with question annotations to the patterns and information on architectural structure of patterns.
The ADMD3 approach presented in this book enchances the architectural design documentation of decision via reuse of design patterns. It combines the s...
Chillies is a novel approach for variable model transformations closing the gap between abstract architecture models, used for performance prediction, and required low-level details. We enable variability of transformations using chain of generators based on the Higher-Order Transformation (HOT). HOTs target different goals, such as template instantiation or transformation composition. In addition, we discuss state-dependent behavior in prediction models and quality of model transformations.
Chillies is a novel approach for variable model transformations closing the gap between abstract architecture models, used for performance prediction,...
Bei moderner Software-Entwicklung entsteht das Problem der Fragmentierung von Information in heterogene Modellierungs- und Programmierprachen. In dieser Dissertation wird der Vitruvius-Ansatz für sichtenbasierte Entwicklung vorgestellt. Flexible Sichten bieten eine kompakte Definition von benutzerspezifischen Sichten auf Software-Systeme und können mit der ModelJoin-Sprache definiert werden. Dieser Prozess wird durch ein Änderungs-Metamodell für Evolution und Change-Impact-Analyse unterstützt.
Bei moderner Software-Entwicklung entsteht das Problem der Fragmentierung von Information in heterogene Modellierungs- und Programmierprachen. In dies...
Model transformations, together with models, form the principal artifacts in model-driven software development. Industrial practitioners report that transformations on larger models quickly get sufficiently large and complex themselves. To alleviate entailed maintenance efforts, this thesis presents a modularity concept with explicit interfaces, complemented by software visualization and clustering techniques. All three approaches are tailored to the specific needs of the transformation domain.
Model transformations, together with models, form the principal artifacts in model-driven software development. Industrial practitioners report that t...
In software development, project constraints lead to customer-specific variants by copying and adapting the product. During this process, modifications are scattered all over the code. Although this is flexible and efficient in the short term, a Software Product Line (SPL) offers better results in the long term, regarding cost reduction, time-to-market, and quality attributes. This book presents a novel approach named SPLevo, which consolidates customized product copies into an SPL.
In software development, project constraints lead to customer-specific variants by copying and adapting the product. During this process, modification...
We present a novel performance modeling approach tailored to I/O performance prediction in virtualized environments. The main idea is to identify important performance-influencing factors and to develop storage-level I/O performance models. To increase the practical applicability of these models, we combine the low-level I/O performance models with high-level software architecture models. Our approach is validated in a variety of case studies in state-of-the-art, real-world environments.
We present a novel performance modeling approach tailored to I/O performance prediction in virtualized environments. The main idea is to identify impo...
Die Software-Architektur umfasst die technische Organisation eines Software-Systems und die Prinzipien, die den Entwurf und die Evolution des Systems bestimmen. Die Problemstellung ergibt sich aus der Software-Evolution, wenn das System angepasst werden muss. Der Beitrag dieser Arbeit ist ein Verfahren zur Änderungsanfragenanalyse im Architekturmodell, welches die Ableitung von Tätigkeiten in nachgelagerten Tätigkeitsfeldern und Lebenszyklusphasen ermöglicht. Software Architecture covers the technical organization of a software system and principles which determine design and evolution of...
Die Software-Architektur umfasst die technische Organisation eines Software-Systems und die Prinzipien, die den Entwurf und die Evolution des Systems ...
In this book, we introduce an automatic, experiment-based approach for performance problem diagnostics in enterprise software systems. The proposed approach systematically searches for root causes of detected performance problems by executing series of systematic performance tests. The presented approach is evaluated by various case studies showing that the presented approach is applicable to a wide range of contexts.
In this book, we introduce an automatic, experiment-based approach for performance problem diagnostics in enterprise software systems. The proposed ap...
Previously, software architects were unable to effectively and efficiently apply reusable knowledge (e.g., architectural styles and patterns) to architectural analyses. This work tackles this problem with a novel method to create and apply templates for reusable knowledge. These templates capture reusable knowledge formally and can efficiently be integrated in architectural analyses.
Previously, software architects were unable to effectively and efficiently apply reusable knowledge (e.g., architectural styles and patterns) to archi...
The quality of enterprise software applications plays a crucial role for the satisfaction of the users and the economic success of the enterprises. Software applications with unsatisfying performance and scalability are perceived by its users as low in quality, as less interesting and less attractive, and cause frustration when preventing the users from attaining their goals. This book proposes an approach for a recommendation system that enables developers who are novices in software perform
The quality of enterprise software applications plays a crucial role for the satisfaction of the users and the economic success of the enterprises. So...