In this paper we apply the role metaphor to coordination. Roles are used in sociology as a way to structure organizations and to coordinate their behavior. In our model, the features of roles are their dependence on an institution, and the powers they assign to players of roles. The institution represents an environment where the components interact with each other by using the powers attributed to them by the roles they play, even when they do not know each other. The interaction between a component playing a role and the role is performed via interfaces stating the requirements to play a role, and which powers are attributed by roles. Roles encapsulate their players' capabilities to interact with the institution and with the other roles, thus achieving separation of concerns between computation and coordination. The institution acts as a coordinator which manages the interactions among components by acting on the roles they play, thus achieving a form of exogenous coordination....
Matteo Baldoni, Guido Boella, Leendert W. N. van d