114 research outputs found
Modelling Event-Based Interactions in Component-Based Architectures for Quantitative System Evaluation
This dissertation thesis presents an approach enabling the modelling and quality-of-service prediction of event-based systems at the architecture-level. Applying a two-step model refinement transformation, the approach integrates platform-specific performance influences of the underlying middleware while enabling the use of different existing analytical and simulation-based prediction techniques
Modeling and Simulation of Message-Driven Self-Adaptive Systems
Dynamische, sich selbst rekonfigurierende Systeme nutzen Nachrichtenwarteschlangen als gängige Methode zum Erreichen von Entkopplung zwischen Sendern und Empfängern. Das Vorhersagen der Qualität von Systemen zur Entwurfszeit ist wesentlich, da Änderungen in späteren Phasen der Entwicklung sehr viel aufwändiger und teurer sind. Momentan gibt es keine Methode, Nachrichtenwarteschlangen auf architekturellem Level darzustellen und deren Qualitätseinfluss auf Systeme vorherzusagen. Existierende Ansätze modellieren Warteschlangen nicht explizit sondern abstrahieren sie. Warteschlangeneffekte sowie Details der Nachrichten-Infrastruktur wie zum Beispiel Flusskontrolle werden nicht beachtet. Diese Arbeit schlägt ein Meta-Modell vor, das eine solche Repräsentation ermöglicht, und eine Simulations-Schnittstelle zwischen einer Simulation einer komponentenbasierten Architekturbeschreibungssprache und einer Nachrichtenaustausch-Simulation. Das Meta-Modell wurde als Erweiterung des Palladio Komponentenmodells realisiert. Die Schnittstelle wurde implementiert für den Palladio-Simulator SimuLizar und eine von RabbitMQ inspirierte Simulation, die dem AMQP 0.9.1 Protokoll folgt. Dies ermöglicht architekturelle Repräsentation von Nachrichtenaustausch und das Vorhersagen von Qualitätsattributen von nachrichtengetriebenen, selbst-adaptiven Systemen. Die Evaluation anhand einer Fallstudie zeigt die Anwendbarkeit des Ansatzes und seine Vorhersagegenauigkeit für Punkt-zu-Punkt-Kommunikation. Außerdem konnten andere qualitätsbezogene Metriken, wie etwa Nachrichtenwarteschlangenlänge, Ein- und Ausgangsraten von Nachrichtenwarteschlangen, sowie Speicherverbrauch korrekt vorhergesagt werden. Das ermöglicht tiefere Einsichten in die Qualität eines Systems. Wir argumentieren weiterhin, dass der Ansatz in dieser Arbeit selbst-adaptive nachrichtengetriebene Systeme, die sich basierend auf verschiedenen Metriken rekonfigurieren, simulieren kann
Modelling Event-Based Interactions in Component-Based Architectures for Quantitative System Evaluation
This dissertation thesis presents an approach enabling the modelling and quality-of-service prediction of event-based systems at the architecture-level. Applying a two-step model refinement transformation, the approach integrates platform-specific performance influences of the underlying middleware while enabling the use of different existing analytical and simulation-based prediction techniques
Report from GI-Dagstuhl Seminar 16394: Software Performance Engineering in the DevOps World
This report documents the program and the outcomes of GI-Dagstuhl Seminar
16394 "Software Performance Engineering in the DevOps World".
The seminar addressed the problem of performance-aware DevOps. Both, DevOps
and performance engineering have been growing trends over the past one to two
years, in no small part due to the rise in importance of identifying
performance anomalies in the operations (Ops) of cloud and big data systems and
feeding these back to the development (Dev). However, so far, the research
community has treated software engineering, performance engineering, and cloud
computing mostly as individual research areas. We aimed to identify
cross-community collaboration, and to set the path for long-lasting
collaborations towards performance-aware DevOps.
The main goal of the seminar was to bring together young researchers (PhD
students in a later stage of their PhD, as well as PostDocs or Junior
Professors) in the areas of (i) software engineering, (ii) performance
engineering, and (iii) cloud computing and big data to present their current
research projects, to exchange experience and expertise, to discuss research
challenges, and to develop ideas for future collaborations
Adaptation-Aware Architecture Modeling and Analysis of Energy Efficiency for Software Systems
This thesis presents an approach for the design time analysis of energy efficiency for static and self-adaptive software systems.
The quality characteristics of a software system, such as performance and operating costs, strongly depend upon its architecture. Software architecture is a high-level view on software artifacts that reflects essential quality characteristics of a system under design. Design decisions made on an architectural level have a decisive impact on the quality of a system. Revising architectural design decisions late into development requires significant effort. Architectural analyses allow software architects to reason about the impact of design decisions on quality, based on an architectural description of the system. An essential quality goal is the reduction of cost while maintaining other quality goals. Power consumption accounts for a significant part of the Total Cost of Ownership (TCO) of data centers. In 2010, data centers contributed 1.3% of the world-wide power consumption. However, reasoning on the energy efficiency of software systems is excluded from the systematic analysis of software architectures at design time. Energy efficiency can only be evaluated once the system is deployed and operational. One approach to reduce power consumption or cost is the introduction of self-adaptivity to a software system. Self-adaptive software systems execute adaptations to provision costly resources dependent on user load. The execution of reconfigurations can increase energy efficiency and reduce cost. If performed improperly, however, the additional resources required to execute a reconfiguration may exceed their positive effect.
Existing architecture-level energy analysis approaches offer limited accuracy or only consider a limited set of system features, e.g., the used communication style. Predictive approaches from the embedded systems and Cloud Computing domain operate on an abstraction that is not suited for architectural analysis. The execution of adaptations can consume additional resources. The additional consumption can reduce performance and energy efficiency. Design time quality analyses for self-adaptive software systems ignore this transient effect of adaptations.
This thesis makes the following contributions to enable the systematic consideration of energy efficiency in the architectural design of self-adaptive software systems: First, it presents a modeling language that captures power consumption characteristics on an architectural abstraction level. Second, it introduces an energy efficiency analysis approach that uses instances of our power consumption modeling language in combination with existing performance analyses for architecture models. The developed analysis supports reasoning on energy efficiency for static and self-adaptive software systems. Third, to ease the specification of power consumption characteristics, we provide a method for extracting power models for server environments. The method encompasses an automated profiling of servers based on a set of restrictions defined by the user. A model training framework extracts a set of power models specified in our modeling language from the resulting profile. The method ranks the trained power models based on their predicted accuracy. Lastly, this thesis introduces a systematic modeling and analysis approach for considering transient effects in design time quality analyses. The approach explicitly models inter-dependencies between reconfigurations, performance and power consumption. We provide a formalization of the execution semantics of the model. Additionally, we discuss how our approach can be integrated with existing quality analyses of self-adaptive software systems.
We validated the accuracy, applicability, and appropriateness of our approach in a variety of case studies. The first two case studies investigated the accuracy and appropriateness of our modeling and analysis approach. The first study evaluated the impact of design decisions on the energy efficiency of a media hosting application. The energy consumption predictions achieved an absolute error lower than 5.5% across different user loads. Our approach predicted the relative impact of the design decision on energy efficiency with an error of less than 18.94%. The second case study used two variants of the Spring-based community case study system PetClinic. The case study complements the accuracy and appropriateness evaluation of our modeling and analysis approach. We were able to predict the energy consumption of both variants with an absolute error of no more than 2.38%. In contrast to the first case study, we derived all models automatically, using our power model extraction framework, as well as an extraction framework for performance models. The third case study applied our model-based prediction to evaluate the effect of different self-adaptation algorithms on energy efficiency. It involved scientific workloads executed in a virtualized environment. Our approach predicted the energy consumption with an error below 7.1%, even though we used coarse grained measurement data of low accuracy to train the input models. The fourth case study evaluated the appropriateness and accuracy of the automated model extraction method using a set of Big Data and enterprise workloads. Our method produced power models with prediction errors below 5.9%. A secondary study evaluated the accuracy of extracted power models for different Virtual Machine (VM) migration scenarios. The results of the fifth case study showed that our approach for modeling transient effects improved the prediction accuracy for a horizontally scaling application. Leveraging the improved accuracy, we were able to identify design deficiencies of the application that otherwise would have remained unnoticed
A reference architecture for multi-level SLA management
There is a global trend towards service-orientation, both for organizing business interactions but also in modern IT architectures. At the business-level, service industries are becoming the dominating sector in which solutions are flexibly composed out of networked services. At the IT level, the paradigms of Service-Oriented Architecture and Cloud Computing realize service-orientation for both software and infrastructure services. Again, flexible composition across different layers is a major advantage of this paradigm. Service Level Agreements (SLA) are a common approach for specifying the exact conditions under which services are to be delivered and, thus, are a prerequisite for supporting the flexible trading of services. However, typical SLAs are just specified at a single layer and do not allow service providers to manage their service stack accordingly. They have no insight on how SLAs at one layer translate to metrics or parameters at the various lower layers of the service stack.
In this paper, we present a reference architecture for a multi-level SLA management framework. We discuss the fundamental concepts and detail the main architectural components and interfaces. Furthermore, we show how the framework can be flexibly used for different industrial scenarios
Performance regression testing and run-time verification of components in robotics systems
Wienke J, Wrede S. Performance regression testing and run-time verification of components in robotics systems. Advanced Robotics. 2017;31(22):1177-1192
- …