DocumentCode
1277818
Title
Using Genetic Search for Reverse Engineering of Parametric Behavior Models for Performance Prediction
Author
Krogmann, Klaus ; Kuperberg, Michael ; Reussner, Ralf
Author_Institution
Inst. for Program Struct. & Data Organ., Karlsruhe Inst. of Technol. (KIT), Karlsruhe, Germany
Volume
36
Issue
6
fYear
2010
Firstpage
865
Lastpage
877
Abstract
In component-based software engineering, existing components are often reused in new applications. Correspondingly, the response time of an entire component-based application can be predicted from the execution durations of individual component services. These execution durations depend on the runtime behavior of a component which itself is influenced by three factors: the execution platform, the usage profile, and the component wiring. To cover all relevant combinations of these influencing factors, conventional prediction of response times requires repeated deployment and measurements of component services for all such combinations, incurring a substantial effort. This paper presents a novel comprehensive approach for reverse engineering and performance prediction of components. In it, genetic programming is utilized for reconstructing a behavior model from monitoring data, runtime bytecode counts, and static bytecode analysis. The resulting behavior model is parameterized over all three performance-influencing factors, which are specified separately. This results in significantly fewer measurements: The behavior model is reconstructed only once per component service, and one application-independent bytecode benchmark run is sufficient to characterize an execution platform. To predict the execution durations for a concrete platform, our approach combines the behavior model with platform-specific benchmarking results. We validate our approach by predicting the performance of a file sharing application.
Keywords
genetic algorithms; object-oriented programming; reverse engineering; search problems; software performance evaluation; application independent bytecode benchmark; component based software engineering; genetic programming; genetic search; parametric behavior model; reverse engineering; runtime bytecode count; static bytecode analysis; Application software; Benchmark testing; Concrete; Delay; Genetic programming; Genetics; Monitoring; Performance evaluation; Predictive models; Reverse engineering; Runtime; Software engineering; Wiring; Genetic search; bytecode benchmarking.; genetic programming; performance prediction; reverse engineering;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/TSE.2010.69
Filename
5530323
Link To Document