Performance antipatterns document bad design patterns that have negative influence on system performance. In our previous work we formalized such antipatterns as logical predicates that build on four different views: (i) the static view that captures the software elements (e.g. classes, components) and the static relationships among them; (ii) the dynamic view that represents the interaction (e.g. messages) that occurs between the software elements to provide system functionalities; (iii) the deployment view that describes the hardware elements (e.g. processing nodes) and the mapping of software resources onto hardware platforms; (iv) the performance view that collects a set of specific performance indices. In this paper we present a lightweight infrastructure that enables the detection of software performance antipatterns at runtime through the monitoring of specific performance indices. The proposed approach precalculates the logical predicates of antipatterns and identifies the ones whose static, dynamic and deployment sub-predicates occur in the current system configuration and brings at runtime the verification of performance sub-predicates. The proposed infrastructure leverages model-driven techniques to generate probes for monitoring the performance sub-predicates thus to support the detection of antipatterns at runtime.
CITATION STYLE
Di Marco, A., & Trubiani, C. (2014). A model-driven approach to broaden the detection of software performance antipatterns at runtime. In Electronic Proceedings in Theoretical Computer Science, EPTCS (Vol. 147, pp. 77–92). Open Publishing Association. https://doi.org/10.4204/EPTCS.147.6
Mendeley helps you to discover research relevant for your work.