In the near future we will be surrounded by a virtually infinite number of software applications that provide services in the digital space. This situation promotes reuse-based software production through composition of existing software services distributed over the Internet. Choreographies are a form of decentralized composition that model the external interaction of the participant services by specifying peer-to-peer message exchanges from a global perspective. When third-party (possibly black-box) services are to be composed, obtaining the distributed coordination logic required to enforce the realizability of the specified choreography is a non-trivial and error prone task. Automatic support is then needed. In this paper, we propose a formal approach to the enforcement of choreography realizability through the automatic synthesis of distributed Coordination Delegates (CDs). CDs are additional software entities with respect to the choreography participants. They are synthesized in order to proxify and control the participant services interaction. When interposed among the services, the synthesized entities enforce the collaboration prescribed by the choreography specification. We state correctness of our synthesis method and illustrate its formalization at work on an explanatory example.
Choreography Realizability Enforcement through the Automatic Synthesis of Distributed Coordination Delegates
AUTILI, Marco;INVERARDI, PAOLA;TIVOLI, MASSIMO
2018-01-01
Abstract
In the near future we will be surrounded by a virtually infinite number of software applications that provide services in the digital space. This situation promotes reuse-based software production through composition of existing software services distributed over the Internet. Choreographies are a form of decentralized composition that model the external interaction of the participant services by specifying peer-to-peer message exchanges from a global perspective. When third-party (possibly black-box) services are to be composed, obtaining the distributed coordination logic required to enforce the realizability of the specified choreography is a non-trivial and error prone task. Automatic support is then needed. In this paper, we propose a formal approach to the enforcement of choreography realizability through the automatic synthesis of distributed Coordination Delegates (CDs). CDs are additional software entities with respect to the choreography participants. They are synthesized in order to proxify and control the participant services interaction. When interposed among the services, the synthesized entities enforce the collaboration prescribed by the choreography specification. We state correctness of our synthesis method and illustrate its formalization at work on an explanatory example.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.