Towards Performance-Aware Engineering of Autonomic Component Ensembles

  • Tomáš Bureš
  • Vojtěch Horký
  • Michał Kit
  • Lukáš Marek
  • Petr Tůma
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8802)


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).


ensemble-based systems component systems performance engineering 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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)Google Scholar
  2. 2.
    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)Google Scholar
  3. 3.
    IBM, Ed., An Architectural Blueprint for Autonomic Computing (June 2005)Google Scholar
  4. 4.
    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)Google Scholar
  5. 5.
    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)Google Scholar
  6. 6.
  7. 7.
    GIMPLE Model Checker (2013),
  8. 8.
    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)CrossRefGoogle Scholar
  9. 9.
    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)Google Scholar
  10. 10.
    Stochastic Performance Logic (SPL) (2014),
  11. 11.
    Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)CrossRefzbMATHGoogle Scholar
  12. 12.
    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)CrossRefGoogle Scholar
  13. 13.
  14. 14.
    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)Google Scholar
  15. 15.
    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)CrossRefzbMATHGoogle Scholar
  16. 16.
    Becker, S., Koziolek, H., Reussner, R.: The Palladio Component Model for Model-driven Performance Prediction. J. Syst. Softw. 82(1), 3–22 (2009)CrossRefGoogle Scholar
  17. 17.
    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)Google Scholar
  18. 18.
    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)Google Scholar
  19. 19.
  20. 20.
    NetBeans Profiler (2014),
  21. 21.
  22. 22.
  23. 23.
    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)CrossRefGoogle Scholar
  24. 24.
    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)Google Scholar
  25. 25.
    Chord Group (2014),
  26. 26.
    OMNet++ Simulation Framework (2013),
  27. 27.
    Network Simulatior (2014),

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Tomáš Bureš
    • 1
    • 2
  • Vojtěch Horký
    • 1
  • Michał Kit
    • 1
  • Lukáš Marek
    • 1
  • Petr Tůma
    • 1
  1. 1.Faculty of Mathematics and PhysicsCharles University in PraguePragueCzech Republic
  2. 2.Institute of Computer ScienceAcademy of Sciences of the Czech RepublicPragueCzech Republic

Personalised recommendations