Programming Autonomic Systems with Multiple Constraint Stores

  • Ugo Montanari
  • Rosario Pugliese
  • Francesco Tiezzi
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8950)


Developing autonomic systems is a major challenge due to their distributed nature, large dimension, high dynamism, open-endedness, and need of adaptation. In this paper, we tackle this challenge by proposing a language, called ccSCEL, that combines abstractions and primitives specifically devised for programming autonomic systems by also using constraints and operations on them. We show that constraints permit addressing issues related to the programming of autonomic systems, since they are suitable means to deal with, e.g., partial knowledge, multi-criteria optimisation, preferences, uncertainty. We also present an advanced form of interaction that is particularly convenient in this setting. It allows a component of a system to access the constraint-based knowledge of all components checking its consistency and implications.


Autonomic System Service Level Agreement Soft Constraint Constraint Variable Tuple Space 
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.
    Bistarelli, S., Montanari, U., Rossi, F.: Semiring-based constraint satisfaction and optimization. J. ACM 44(2), 201–236 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Bistarelli, S., Montanari, U., Rossi, F.: Soft concurrent constraint programming. ACM Trans. Comput. Log. 7(3), 563–589 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Bures, T., De Nicola, R., Gerostathopoulos, I., Hoch, N., Kit, M., Koch, N., Monreale, G., Montanari, U., Pugliese, R., Serbedzija, N., Wirsing, M., Zambonelli, F.: A Life Cycle for the Development of Autonomic Systems: The e-mobility showcase. In: SASOW, pp. 71–76. IEEE (2013)Google Scholar
  4. 4.
    Buscemi, M.G., Montanari, U.: QoS negotiation in service composition. J. Log. Algebr. Program. 80(1), 13–24 (2011)CrossRefzbMATHGoogle Scholar
  5. 5.
    Cesari, L., De Nicola, R., Pugliese, R., Puviani, M., Tiezzi, F., Zambonelli, F.: Formalising adaptation patterns for autonomic ensembles. In: Fiadeiro, J.L., Liu, Z., Xue, J. (eds.) FACS 2013. LNCS, vol. 8348, pp. 100–118. Springer, Heidelberg (2014)Google Scholar
  6. 6.
    De Nicola, R., Ferrari, G., Loreti, M., Pugliese, R.: A language-based approach to autonomic computing. In: Beckert, B., Damiani, F., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2011. LNCS, vol. 7542, pp. 25–48. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  7. 7.
    De Nicola, R., Lluch Lafuente, A., Loreti, M., Morichetta, A., Pugliese, R., Senni, V., Tiezzi, F.: Programming and verifying component ensembles. In: Bensalem, S., Lakhneck, Y., Legay, A. (eds.) From Programs to Systems. LNCS, vol. 8415, pp. 69–83. Springer, Heidelberg (2014)Google Scholar
  8. 8.
    De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: The SCEL language. ACM Transactions on Autonomous and Adaptive Systems 9(2), 7:1–7:29 (2014)Google Scholar
  9. 9.
    Cabri, G., Capodieci, N., Cesari, L., De Nicola, R., Pugliese, R., Tiezzi, F., Zambonelli, F.: Self-expression and Dynamic Attribute-Based Ensembles in SCEL. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014, Part I. LNCS, vol. 8802, pp. 147–163. Springer, Heidelberg (2014)Google Scholar
  10. 10.
    Gelernter, D.: Generative Communication in Linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)CrossRefzbMATHGoogle Scholar
  11. 11.
    Kephart, J.O., Chess, D.M.: The Vision of Autonomic Computing. Computer 36, 41–50 (2003)CrossRefGoogle Scholar
  12. 12.
    Loreti, M., Margheri, A., Pugliese, R., Tiezzi, F.: On Programming and Policing Autonomic Computing Systems. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014, Part I. LNCS, vol. 8802, pp. 164–183. Springer, Heidelberg (2014)Google Scholar
  13. 13.
    Margheri, A., Pugliese, R., Tiezzi, F.: Linguistic abstractions for programming and policing autonomic computing systems. In: UIC/ATC, pp. 404–409. IEEE (2013)Google Scholar
  14. 14.
    Mayer, P., Klarl, A., Hennicker, R., Puviani, M., Tiezzi, F., Pugliese, R., Keznikl, J., Bures, T.: The Autonomic Cloud: A vision of voluntary, peer-2-peer cloud computing. In: SASOW, pp. 89–94. IEEE (2013)Google Scholar
  15. 15.
    Montanari, U., Pugliese, R., Tiezzi, F.: Programming autonomic systems with multiple constraint stores. Technical Report (2014),
  16. 16.
    Rossi, F., Beek, P.v., Walsh, T.: Handbook of Constraint Programming. Elsevier (2006)Google Scholar
  17. 17.
    Sommerville, I., Cliff, D., Calinescu, R., Keen, J., Kelly, T., Kwiatkowska, M., Mcdermid, J., Paige, R.: Large-scale Complex IT Systems. Commun. ACM 55(7), 71–77 (2012)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Ugo Montanari
    • 1
  • Rosario Pugliese
    • 2
  • Francesco Tiezzi
    • 3
  1. 1.Università di PisaItaly
  2. 2.Università degli Studi di FirenzeItaly
  3. 3.IMT Institute for Advanced StudiesLuccaItaly

Personalised recommendations