Zur Seitenansicht
 

Titelaufnahme

Titel
PBlaman: kontraktbasierte Performance-Blame-Analysis
AutorBrüseke, Frank
PrüferEngels, Gregor In der Gemeinsamen Normdatei der DNB nachschlagen ; Becker, Steffen In der Gemeinsamen Normdatei der DNB nachschlagen ; Kastens, Uwe In der Gemeinsamen Normdatei der DNB nachschlagen ; Plessl, Christian In der Gemeinsamen Normdatei der DNB nachschlagen ; Sauer, Stefan
Erschienen2015
HochschulschriftPaderborn, Univ., Diss., 2015
Anmerkung
Tag der Verteidigung: 12.12.2014
Verteidigung2014-12-12
SpracheDeutsch ; Englisch
DokumenttypDissertation
URNurn:nbn:de:hbz:466:2-15365 Persistent Identifier (URN)
Dateien
PBlaman: kontraktbasierte Performance-Blame-Analysis [6.35 mb]
Begleitwebseite (companion website) [11.92 mb]
Links
Nachweis
Klassifikation
Zusammenfassung (Deutsch)

Beim performance-getriebenen Software-Engineering wird die Performance eines Systems vor seiner Implementierung mithilfe von Modellen überprüft.Nach der Implementierung wird die Performance des Systems durch Performance-Tests validiert. Wenn beim Test eines komponentenbasierten Systems auffällt, dass eine Performance-Anforderung nicht eingehalten wird, muss der Systemarchitekt herausfinden, ob die Komponenten fehlerhaft sind oder die Komponentenverwendung zu Fehlern führt. Diese Aufgabe wird Performance-Blame-Analysis genannt. Vorhandene Performance-Analyse-Ansätze sind für die Performance-Blame-Analysis wenig geeignet, weil entweder erwartete Performancewerte genutzt werden, die Performance-Fehler nicht zuverlässig finden, oder weil ihre Analyse komponentenbasierte Systeme nicht ausreichend unterstützt. Dagegen wird in dieser Arbeit der Performance-Blame-Analysis-Ansatz PBlaman beschrieben, der auf komponentenbasierte Systeme spezialisiert ist und die in verschiedenen Kontexten einsetzbaren Performance-Kontrakte des Palladio Component Model (PCM) einsetzt. PBlaman entscheidet, welche Komponenten zu beschuldigen sind, indem es die Antwortzeitdatenreihe jeder Komponentenoperation aus dem fehlgeschlagenen Testfall mit der erwarteten Antwortzeit, die aus den Performance-Kontrakten abgeleitet wird, vergleicht. Der Systemarchitekt erhält zwei Entscheidungsunterstützungsartefakte aus der PBlaman-Analyse. Einerseits bietet der Blame-Graph eine Übersicht über den Aufrufbaum. Anderseits vergleicht der Performance-Report die Verteilung beider Antwortzeitdatenreihen und die Lageparameter für jede Komponentenoperation. Der Nutzen von PBlaman wird in zwei Fallstudien dargestellt, von denen jede eine Anwendung mit einem bestimmten Architekturstil untersucht. Die erste Fallstudie befasst sich mit dem Handelssystem aus dem „Common Component Modeling Example ...

Zusammenfassung (Englisch)

In performance-driven software engineering, the performance of a system is evaluated through models before the system is assembled. After assembly, the performance is validated using performance tests. When a component-based system fails certain performance requirements during the tests, it is important to find out whether individual components yield performance errors or whether the composition is faulty. This task is called performance blame analysis. Existing performance analysis approaches are not easily applicable to tackle performance blame analysis. Either they use expected performance values that do not reliably find performance errors or their analysis does not properly support component-based systems. In contrast, this thesis describes the performance blame analysis approach PBlaman that specializes in analyzing component-based systems and that employs the context-portable performance contracts of the Palladio Component Model (PCM). PBlaman decides what components to blame by comparing the observed response time data series of each single component operation in a failed test case to the operation's expected response time data series derived from the contracts. PBlamans analysis generates two decision support artifacts that assist the system architects. First, the blame graph gives an overview by depicting a call tree diagram. Second, the performance report compares both response time data series' distributions and the measures of location for each component operation. The benefits of PBlaman are exemplified in two case studies, each of which representing applications that follow a particular architectural style. The first case study deals with the trading system from the Common Component Modeling Example (CoCoME), which implements a layered architecture. The second case study investigates a system that algorithmically extracts structured information from unstructured texts and that realizes a ...