Programming Autonomic Systems with Multiple Constraint Stores

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.

[1]  Francesca Rossi,et al.  Soft concurrent constraint programming , 2002, TOCL.

[2]  Francesco Tiezzi,et al.  On Programming and Policing Autonomic Computing Systems , 2014, ISoLA.

[3]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[4]  Francesco Tiezzi,et al.  The Autonomic Cloud: A Vision of Voluntary, Peer-2-Peer Cloud Computing , 2013, 2013 IEEE 7th International Conference on Self-Adaptation and Self-Organizing Systems Workshops.

[5]  Rocco De Nicola,et al.  Programming and Verifying Component Ensembles , 2014, FPS@ETAPS.

[6]  Ugo Montanari,et al.  QoS negotiation in service composition , 2011, J. Log. Algebraic Methods Program..

[7]  Franco Zambonelli,et al.  A Life Cycle for the Development of Autonomic Systems: The E-mobility Showcase , 2013, 2013 IEEE 7th International Conference on Self-Adaptation and Self-Organizing Systems Workshops.

[8]  Franco Zambonelli,et al.  Formalising Adaptation Patterns for Autonomic Ensembles , 2013, FACS.

[9]  Francesco Tiezzi,et al.  Linguistic Abstractions for Programming and Policing Autonomic Computing Systems , 2013, 2013 IEEE 10th International Conference on Ubiquitous Intelligence and Computing and 2013 IEEE 10th International Conference on Autonomic and Trusted Computing.

[10]  Rocco De Nicola,et al.  A Formal Approach to Autonomic Systems Programming: The SCEL Language , 2014, TAAS.

[11]  Radu Calinescu,et al.  Large-scale complex IT systems , 2011, Commun. ACM.

[12]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[13]  Toby Walsh,et al.  Handbook of Constraint Programming , 2006, Handbook of Constraint Programming.

[14]  Rocco De Nicola,et al.  A Language-Based Approach to Autonomic Computing , 2011, FMCO.

[15]  Franco Zambonelli,et al.  Self-expression and Dynamic Attribute-Based Ensembles in SCEL , 2014, ISoLA.

[16]  Francesca Rossi,et al.  Semiring-based constraint satisfaction and optimization , 1997, JACM.