Choice, Interoperability, and Conformance in Interaction Protocols and Service Choreographies Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino, Italy baldoni@di.unito.it Cristina Baroglio Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino, Italy baroglio@di.unito.it Amit K. Chopra Dept. of Computer Science North Carolina State Univ. Raleigh, NC 27695-8206, USA akchopra.mail@gmail.com Nirmit Desai IBM India Research Labs Embassy Golf Links, Block D Bangalore 560071, India nirmitv@gmail.com Viviana Patti Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149 Torino, Italy patti@di.unito.it Munindar P. Singh Dept. of Computer Science North Carolina State Univ. Raleigh, NC 27695-8206, USA singh@ncsu.edu ABSTRACT Many real-world applications of multiagent systems require inde- pendently designed (heterogeneous) and operated (autonomous) a- gents to interoperate. We consider agents who offer business ser- vices and collaborate in interesting business service engagements. We formalize notions of interoperability and conformance, which appropriately support agent heterogeneity and autonomy. With re- spect to autonomy, our approach considers the choices that each agent has, and how their choices are coordinated so that at any time one agent leads and its counterpart follows, but with initiative flu- idly shifting among the participants. With respect to heterogeneity, we characterize the variations in the agents’ designs, and show how an agent may conform to a specification or substitute for another agent. Our approach addresses a challenging problem with multi- party interactions that existing approaches cannot solve. Further, we introduce a set of edit operations by which to modify an agent design so as to ensure its conformance with others. Categories and Subject Descriptors I.2.11 [Distributed Artificial Intelligence]: Multiagent systems; D.2.4 [Software/Program Verification]: Formal methods; H.3.5 [Online Information Services]: Web-based services General Terms Design, Verification, Theory Keywords Interaction Protocols, Interoperability, Conformance, Choreogra- phies, Web Services 1. INTRODUCTION Cite as: Choice, Interoperability, and Conformance in Interaction Proto- cols and Service Choreographies , M. Baldoni, C. Baroglio, A. K. Chopra, N. Desai, V. Patti, M. P. Singh, Proc. of 8th Int. Conf. on Autonomous Agents and Multiagent Systems (AAMAS 2009), Decker, Sichman, Sierra and Castelfranchi (eds.), May, 10–15, 2009, Budapest, Hungary, pp. XXX-XXX. Copyright c 2009, International Foundation for Autonomous Agents and Multiagent Systems (www.ifaamas.org). All rights reserved. The accomplishment of a complex task often requires interac- tions among a set of parties. For instance, in a business process scenario, a seller may need to interact with a payment service and a shipper in order to support a purchase. These partners must coor- dinate their executions and must be able to interact with each other. There is broad agreement on the importance of describing such in- teractions formally. The agents community refers to such a specifi- cation as an interaction protocol, whereas the services community refers to it as a choreography. In deference to the services literature and because we do not study higher-level notions such as commit- ments, we use the term choreography in this paper. A choreog- raphy abstractly specifies an interaction in terms of its roles, the messages exchanged among the roles, and constraints on the mes- sage exchanges. An agent playing a role in a choreography would send and receive some subset of the messages the role is specified to send and receive. Agents who offer business services and collaborate with each other in business service engagements must be interoperable [5, 8, 13, 20, 27]. In open environments, such as the Web, where coali- tions are formed dynamically, and the partners can be replaced or upgraded at any moment, their interoperability is guaranteed by adopting a choreography whose roles are by design interoperable. Proving that the actors of the various roles conform to the corre- sponding specification ensures their interoperability. When a busi- ness partner (for instance, a shipping service) becomes unavailable, we would need replace it with a new partner that we are confident will support the interactions that the other partners had with the original service. Similar considerations apply when one of the par- ties (e.g., the payment service) is upgraded, maybe to allow a richer interaction. This approach, which relies on the notion of confor- mance [5, 6, 9, 10, 19, 24, 25], is highly practical: (1) it enables the distribution of the interoperability test, and (2) it does not require any knowledge about the other services involved in the interaction. The only assumption is that all of them respect the agreed upon choreography. Conformance guarantees substitutability: namely, that substituting a role (or an old implementation) by a conformant player preserves the interoperability of the service composition. The social ability of agents to interact with others should, more- over, be reconciled with the possibility of interpreting the chore- ography according to own goals and further policies, rather than to implement it strictly [22]. For instance, to realize a choreography,