Foundations for Ensemble Modeling – The Helena Approach

Handling Massively Distributed Systems with ELaborate ENsemble Architectures
  • Rolf Hennicker
  • Annabelle Klarl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8373)


Ensembles are groups of active entities that collaborate to perform a certain task. Modeling software systems for ensemble execution is challenging since such applications are highly dynamic involving complex interaction structures of concurrently running individuals. In this work, we propose a formal foundation for ensemble modeling based on a rigorous semantic framework. Our approach is centered around the notion of a role expressing the capabilities that a component needs when participating in a specific ensemble. We use ensemble structures to model the structural aspects of collaborations and labeled transition systems to specify the dynamic behavior typical for performing a certain role. Our approach is driven by a clear discrimination between types, used on the specification level, and instances, which form concrete ensembles in an ensemble automaton. The semantics of an ensemble specification is given by the class of all ensemble automata which adhere to the properties of an ensemble structure such that any ensemble member, playing a certain role, exhibits a behavior that is allowed by the role behavior specification.


Multiagent System Ensemble Modeling Component Type Ensemble State Label Transition System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    The ASCENS Project,
  2. 2.
    Abeywickrama, D., Bicocchi, N., Zambonelli, F.: SOTA: Towards a General Model for Self-Adaptive Systems. In: 21st IEEE International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises, pp. 48–53. IEEE CS Press, Toulouse (2012)Google Scholar
  3. 3.
    Ali, R.A., Bures, T., Gerostathopoulos, I., Hnetynka, P., Keznikl, J., Kit, M., Plasil, F.: DEECo Computational Model - I. Tech. Rep. D3S-TR-2013-01, Charles University in Prague (2013)Google Scholar
  4. 4.
    Allen, R., Garlan, D.: A Formal Basis for Architectural Connection. ACM Trans. Softw. Eng. Methodol. 6(3), 213–249 (1997)CrossRefGoogle Scholar
  5. 5.
    Barros, T., Ameur-Boulifa, R., Cansado, A., Henrio, L., Madelaine, E.: Behavioural models for distributed Fractal components. Annales des Télécommunications 64(1-2), 25–43 (2009)CrossRefGoogle Scholar
  6. 6.
    Bauer, B., Müller, J.P., Odell, J.: Agent UML: A formalism for specifying multiagent software systems. Int. Journal of Software Engineering and Knowledge Engineering 11, 91–103 (2000)Google Scholar
  7. 7.
    Becht, M., Gurzki, T., Klarmann, J., Muscholl, M.: ROPE: Role Oriented Programming Environment for Multiagent Systems. In: Proceedings of the Fourth IECIS International Conference on Cooperative Information Systems, COOPIS 1999, pp. 325–333. IEEE Computer Society, Washington, DC (1999)Google Scholar
  8. 8.
    ter Beek, M.H., Ellis, C.A., Kleijn, J., Rozenberg, G.: Synchronizations in Team Automata for Groupware Systems. Computer Supported Cooperative Work 12(1), 21–69 (2003)CrossRefGoogle Scholar
  9. 9.
    Bensalem, S., Bures, T., Combaz, J., De Nicola, R., Hölzl, M., Koch, N., Loreti, M., Tuma, P., Wirsing, M., Zambonelli, F.: A Life Cycle for the Development of Autonomic Systems. In: 3rd Awareness Workshop at SASO 2013 (2013) (submitted)Google Scholar
  10. 10.
    Bernardo, M., Ciancarini, P., Donatiello, L.: Architecting families of software systems with process algebras. ACM Trans. Softw. Eng. Methodol. 11(4), 386–426 (2002)CrossRefGoogle Scholar
  11. 11.
    Brim, L., Černá, I., Vařeková, P., Zimmerova, B.: Component-interaction automata as a verification-oriented component-based system specification. SIGSOFT Softw. Eng. Notes 31(2), 4 (2006)CrossRefGoogle Scholar
  12. 12.
    Bures, T., Gerostathopoulos, I., Hnetynka, P., Keznikl, J., Kit, M., Plasil, F.: DEECo: An ensemble-based component system. In: Proceedings of CBSE 2013, pp. 81–90. ACM, Vancouver (2013)Google Scholar
  13. 13.
    Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: SERA, pp. 40–48 (2006)Google Scholar
  14. 14.
    Castagna, G., Dezani-Ciancaglini, M., Padovani, L.: On global types and multi-party sessions. In: Bruni, R., Dingel, J. (eds.) FORTE 2011 and FMOODS 2011. LNCS, vol. 6722, pp. 1–28. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  15. 15.
    Cernuzzi, L., Juan, T., Sterling, L., Zambonelli, F.: The Gaia Methodology: Basic Concepts and Extensions. In: Bergenti, F., Gleizes, M.P. (eds.) Methodologies and Software Engineering for Agent Systems, Multiagent Systems, Artificial Societies, and Simulated Organizations, vol. 11, pp. 69–88. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Coppo, M., Dezani-Ciancaglini, M., Padovani, L., Yoshida, N.: Inference of global progress properties for dynamically interleaved multiparty sessions. In: De Nicola, R., Julien, C. (eds.) COORDINATION 2013. LNCS, vol. 7890, pp. 45–59. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  17. 17.
    De Nicola, R., Ferrari, G., Loreti, M., Pugliese, R.: A Language-Based Approach to Autonomic Computing. In: Beckert, B., Bonsangue, M.M. (eds.) FMCO 2011. LNCS, vol. 7542, pp. 25–48. Springer, Heidelberg (2012)Google Scholar
  18. 18.
    De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: SCEL: A Language for Autonomic Computing. Tech. rep., IMT, Institute for Advanced Studies Lucca, Italy (2013)Google Scholar
  19. 19.
    Futatsugi, K., Goguen, J.A., Jouannaud, J.P., Meseguer, J.: Principles of OBJ2. In: Van Deusen, M.S., Galil, Z. (eds.) POPL, pp. 52–66. ACM Press (1985)Google Scholar
  20. 20.
    Goguen, J.A., Burstall, R.M.: Institutions: Abstract Model Theory for Specification and Programming. J. ACM 39(1), 95–146 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Gottlob, G., Schrefl, M., Röck, B.: Extending Object-Oriented Systems with Roles. ACM Trans. Inf. Syst. 14(3), 268–296 (1996)CrossRefGoogle Scholar
  22. 22.
    Hennicker, R., Knapp, A.: Modal Interface Theories for Communication-Safe Component Assemblies. In: Cerone, A., Pihlajasaari, P. (eds.) ICTAC 2011. LNCS, vol. 6916, pp. 135–153. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  23. 23.
    Hennicker, R., Knapp, A.: Modal interface theories for communication-safe component assemblies. In: Cerone, A., Pihlajasaari, P. (eds.) ICTAC 2011. LNCS, vol. 6916, pp. 135–153. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  24. 24.
    Hölzl, M., Wirsing, M.: Towards a System Model for Ensembles. In: Agha, G., Danvy, O., Meseguer, J. (eds.) Talcott Festschrift. LNCS, vol. 7000, pp. 241–261. Springer, Heidelberg (2011)Google Scholar
  25. 25.
    Klarl, A., Hennicker, R.: The Helena Framework,
  26. 26.
    Kristensen, B.B., Østerbye, K.: Roles: Conceptual Abstraction Theory and Practical Language Issues. TAPOS 2(3), 143–160 (1996)Google Scholar
  27. 27.
    van Lamsweerde, A.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley (2009)Google Scholar
  28. 28.
    Mori, A., Futatsugi, K.: Verifying Behavioural Specifications in CafeOBJ Environment. In: Wing, J.M., Woodcock, J., Davies, J. (eds.) FM 1999. LNCS, vol. 1709, pp. 1625–1643. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  29. 29.
    Nakajima, S., Futatsugi, K.: An Object-Oriented Modeling Method for Algebraic Specifications in CafeOBJ. In: Adrion, W.R., Fuggetta, A., Taylor, R.N., Wasserman, A.I. (eds.) ICSE, pp. 34–44. ACM (1997)Google Scholar
  30. 30.
    OMG (Object Management Group): OMG Unified Modeling Language Superstructure. Specification, OMG (Object Management Group) (2011),
  31. 31.
    Rausch, A., Reussner, R., Mirandola, R., Plášil, F. (eds.): The Common Component Modeling Example. LNCS, vol. 5153. Springer, Heidelberg (2008)Google Scholar
  32. 32.
    Steimann, F.: On the representation of roles in object-oriented and conceptual modelling. Data Knowl. Eng. 35(1), 83–106 (2000)CrossRefzbMATHGoogle Scholar
  33. 33.
    Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)zbMATHGoogle Scholar
  34. 34.
    Wirsing, M., Hölzl, M., Tribastone, M., Zambonelli, F.: ASCENS: Engineering Autonomic Service-Component Ensembles. In: Beckert, B., Damiani, F., de Boer, S., Bonsangue, M.M. (eds.) FMCO 2011. LNCS, vol. 7542, pp. 1–24. Springer, Heidelberg (2013)Google Scholar
  35. 35.
    Wooldridge, M., Jennings, N.R., Kinny, D.: The Gaia Methodology for Agent-Oriented Analysis and Design. Autonomous Agents and Multi-Agent Systems 3(3), 285–312 (2000)CrossRefGoogle Scholar
  36. 36.
    Xu, H., Zhang, X., Patel, R.J.: Developing Role-Based Open Multi-Agent Software Systems. International Journal of Computational Intelligence Theory and Practice 2 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Rolf Hennicker
    • 1
  • Annabelle Klarl
    • 1
  1. 1.Ludwig-Maximilians-Universität MünchenGermany

Personalised recommendations