Abstract
Ensembles of autonomic components are a novel software engineering paradigm for development of open-ended distributed highly dynamic software systems (e.g. smart cyber-physical systems). Recent research centered around the concept of ensemble-based systems resulted in design and development models that aim to systematize and simplify the engineering process of autonomic components and their ensembles. These methods highlight the importance of covering both the functional concepts and the non-functional properties, specifically performance-related aspects of the future systems. In this paper we propose an integration of the emerging techniques for performance assessment and awareness into different stages of the development process. Our goal is to aid both designers and developers of autonomic component ensembles with methods providing performance awareness throughout the entire development life cycle (including runtime).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Bures, T., De Nicola, R., Gerostathopoulos, I., Hoch, N., Kit, M., Koch, N., Monreale, G.V., Montanari, U., Pugliese, R., Serbedzija, N., Wirsing, M., Zambonelli, F.: A Life Cycle for the Development of Autonomic Systems: The e-Mobility Showcase (2013)
Bures, T., Gerostathopoulos, I., Hnetynka, P., Keznikl, J., Kit, M., Plasil, F.: DEECo – an Ensemble-Based Component System. In: Proc. of CBSE 2013, pp. 81–90 (2013)
IBM, Ed., An Architectural Blueprint for Autonomic Computing (June 2005)
Keznikl, J., Bures, T., Plasil, F., Gerostathopoulos, I., Hnetynka, P., Hoch, N.: Design of Ensemble-Based Component Systems by Invariant Refinement. In: Proc. of CBSE 2013, pp. 91–100 (2013)
Abeywickrama, D.B., Bicocchi, N., Zambonelli, F.: SOTA: Towards a General Model for Self-Adaptive Systems. In: IEEE 21st Int. Workshop Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), pp. 48–53 (2012)
ARGoS (2013), http://iridia.ulb.ac.be/argos
GIMPLE Model Checker (2013), http://d3s.mff.cuni.cz/~sery/gmc/
Horký, V., Haas, F., Kotrč, J., Lacina, M., Tůma, P.: Performance Regression Unit Testing: A Case Study. In: Balsamo, M.S., Knottenbelt, W.J., Marin, A. (eds.) EPEW 2013. LNCS, vol. 8168, pp. 149–163. Springer, Heidelberg (2013)
Bulej, L., Bureš, T., Keznikl, J., Koubková, A., Podzimek, A., Tůma, P.: Capturing Performance Assumptions Using Stochastic Performance Logic. In: Proceedings of the 3rd ACM/SPEC Int. Conference on Performance Engineering, pp. 311–322 (2012)
Stochastic Performance Logic (SPL) (2014), http://d3s.mff.cuni.cz/software/spl-java/
Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)
Friedman, R., Gavidia, D., Rodrigues, L., Viana, A.C., Voulgaris, S.: Gossiping on MANETs: the Beauty and the Beast. ACM SIGOPS Oper. Syst. Rev. 41(5), 67–74 (2007)
DiSL Framework (2013), http://disl.ow2.org/xwiki/bin/view/Main/
Shende, S., Malony, A.D., Rasmussen, C., Sottile, M.: A performance interface for component-based applications. In: Proceedings of the Int. Parallel and Distributed Processing Symposium, p. 8 (2003)
De St. Germain, J.D., Morris, A., Parker, S.G., Malony, A.D., Shende, S.: Performance Analysis Integration in the Uintah Software Development Cycle. Int. J. Parallel Program. 31(1), 35–53 (2003)
Becker, S., Koziolek, H., Reussner, R.: The Palladio Component Model for Model-driven Performance Prediction. J. Syst. Softw. 82(1), 3–22 (2009)
Stewart, C., Shen, K.: Performance Modeling and System Management for Multi-component Online Services. In: Proceedings of the 2nd Conference on Symposium on Networked Systems Design & Implementation, vol. 2, pp. 71–84 (2005)
Yaghmour, K., Dagenais, M.R.: Measuring and Characterizing System Behavior Using Kernel-level Event Logging. In: Proceedings of the Annual Conference on USENIX Annual Technical Conference, p. 2 (2000)
HPROF: A Heap/CPU Profiling Tool (2014), http://docs.oracle.com/javase/7/docs/technotes/samples/hprof.html
NetBeans Profiler (2014), http://profiler.netbeans.org
Perf4J (2014), http://perf4j.codehaus.org
Xebia Tools (2014), http://code.google.com/p/xebia-france
Kiczales, G.: AspectJ(tm): Aspect-Oriented Programming in Java. In: Akşit, M., Mezini, M., Unland, R. (eds.) NODe 2002. LNCS, vol. 2591, p. 1. Springer, Heidelberg (2003)
Kinneer, A., Dwyer, M.B., Rothermel, G.: Sofya: Supporting Rapid Development of Dynamic Program Analyses for Java. In: 29th Int. Conference on Software Engineering - Companion, ICSE 2007, pp. 51–52 (2007)
Chord Group (2014), http://pag.gatech.edu/home
OMNet++ Simulation Framework (2013), http://omnetpp.org
Network Simulatior (2014), http://www.nsnam.org
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bureš, T., Horký, V., Kit, M., Marek, L., Tůma, P. (2014). Towards Performance-Aware Engineering of Autonomic Component Ensembles. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change. ISoLA 2014. Lecture Notes in Computer Science, vol 8802. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-45234-9_10
Download citation
DOI: https://doi.org/10.1007/978-3-662-45234-9_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-45233-2
Online ISBN: 978-3-662-45234-9
eBook Packages: Computer ScienceComputer Science (R0)