Details
Original language | English |
---|---|
Pages (from-to) | 1975-2004 |
Number of pages | 30 |
Journal | Concurrency and Computation: Practice and Experience |
Volume | 26 |
Issue number | 12 |
Early online date | 25 Jul 2014 |
Publication status | Published - 25 Aug 2014 |
Externally published | Yes |
Abstract
In performance-driven software engineering, the performance of a system is evaluated through models before the system is assembled. After assembly, the performance is then 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 of components is faulty. This task is called performance blame analysis. Existing performance blame analysis approaches and also alternative error analysis approaches are restricted, because they either do not employ expected values, use expected values from regression testing, or use static developer-set limits. In contrast, this paper describes the new performance blame analysis approach PBlaman that builds upon our previous work and that employs the context-portable performance contracts of Palladio. 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. System architects are then assisted by a visual presentation of the obtained analysis results. We exemplify the benefits of PBlaman in two case studies, each of which representing applications that follow a particular architectural style.
Keywords
- CBSE, data series comparison, performance blame analysis, performance prediction, performance test
ASJC Scopus subject areas
- Mathematics(all)
- Theoretical Computer Science
- Computer Science(all)
- Software
- Computer Science(all)
- Computer Science Applications
- Computer Science(all)
- Computer Networks and Communications
- Computer Science(all)
- Computational Theory and Mathematics
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
In: Concurrency and Computation: Practice and Experience, Vol. 26, No. 12, 25.08.2014, p. 1975-2004.
Research output: Contribution to journal › Article › Research › peer review
}
TY - JOUR
T1 - PBlaman
T2 - performance blame analysis based on Palladio contracts
AU - Brüseke, Frank
AU - Wachsmuth, Henning
AU - Engels, Gregor
AU - Becker, Steffen
PY - 2014/8/25
Y1 - 2014/8/25
N2 - In performance-driven software engineering, the performance of a system is evaluated through models before the system is assembled. After assembly, the performance is then 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 of components is faulty. This task is called performance blame analysis. Existing performance blame analysis approaches and also alternative error analysis approaches are restricted, because they either do not employ expected values, use expected values from regression testing, or use static developer-set limits. In contrast, this paper describes the new performance blame analysis approach PBlaman that builds upon our previous work and that employs the context-portable performance contracts of Palladio. 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. System architects are then assisted by a visual presentation of the obtained analysis results. We exemplify the benefits of PBlaman in two case studies, each of which representing applications that follow a particular architectural style.
AB - In performance-driven software engineering, the performance of a system is evaluated through models before the system is assembled. After assembly, the performance is then 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 of components is faulty. This task is called performance blame analysis. Existing performance blame analysis approaches and also alternative error analysis approaches are restricted, because they either do not employ expected values, use expected values from regression testing, or use static developer-set limits. In contrast, this paper describes the new performance blame analysis approach PBlaman that builds upon our previous work and that employs the context-portable performance contracts of Palladio. 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. System architects are then assisted by a visual presentation of the obtained analysis results. We exemplify the benefits of PBlaman in two case studies, each of which representing applications that follow a particular architectural style.
KW - CBSE
KW - data series comparison
KW - performance blame analysis
KW - performance prediction
KW - performance test
UR - http://www.scopus.com/inward/record.url?scp=84905096568&partnerID=8YFLogxK
U2 - 10.1002/cpe.3226
DO - 10.1002/cpe.3226
M3 - Article
AN - SCOPUS:84905096568
VL - 26
SP - 1975
EP - 2004
JO - Concurrency and Computation: Practice and Experience
JF - Concurrency and Computation: Practice and Experience
SN - 1532-0626
IS - 12
ER -