14 research outputs found

    Contract-Driven Implementation of Choreographies

    Get PDF
    Choreographies and Contracts are important concepts in Service Oriented Computing. Choreographies are the description of the behaviour of a service system from a global point of view, while contracts are the description of the externally observable message-passing behaviour of a given service. Exploiting some of our previous results about choreography projection and contract refinement, we show how to solve the problem of implementing a choreography via the composition of already available services that are retrieved according to their contracts

    Choreography Rehearsal ⋆

    Get PDF
    Abstract. We propose a methodology for statically predicting the possible interaction patterns of services within a given choreography. We focus on choreographies exploiting the event notification paradigm to manage service interactions. Control Flow Analysis techniques statically approximate which events can be delivered to match the choreography constraints and how the multicast groups can be optimised to handle event notification within the service choreography.

    Choreographies in the wild

    Get PDF
    We investigate the use of choreographies in distributed scenarios where, as in the real world, mutually distrusting (and possibly dishonest) participants may be unfaithful to their expected behaviour. In our model, each participant advertises its promised behaviour as a contract. Participants may interact through multiparty sessions, created when their contracts allow to synthesise a choreography. We show that systems of honest participants (which always adhere to their contracts) enjoy progress and session fidelity

    Choreographies and Behavioural Contracts on the Way to Dynamic Updates

    Get PDF
    International audienceWe survey our work on choreographies and behavioural contracts in multiparty interactions. In par-ticular theories of behavioural contracts are presented which enable reasoning about correct service composition (contract compliance) and service substitutability (contract refinement preorder) under different assumptions concerning service communication: synchronous address or name based com-munication with patient non-preemptable or impatient invocations, or asynchronous communication. Correspondingly relations between behavioural contracts and choreographic descriptions are consid-ered, where a contract for each communicating party is, e.g., derived by projection. The considered relations are induced as the maximal preoders which preserve contract compliance and global traces: we show maximality to hold (permitting services to be discovered/substituted independently for each party) when contract refinement preorders with all the above asymmetric communication means are considered and, instead, not to hold if the standard symmetric CCS/pi-calculus communication is considered (or when directly relating choreographies to behavioral contracts via a preorder, no mat-ter the communication mean). The obtained maximal preorders are then characterized in terms of a new form of testing, called compliance testing, where not only tests must succeed but also the sys-tem under test (thus relating to controllability theory), and compared with classical preorders such as may/must testing, trace inclusion, etc. Finally, recent work about adaptable choreographies and behavioural contracts is presented, where the theory above is extended to update mechanisms allowing choreographies/contracts to be modified at run-time by internal (self-adaptation) or external intervention

    Fair Subtyping for Multi-Party Session Types

    Get PDF
    The subtyping relation defined for dyadic session type theories may compromise the liveness of multi-party sessions. In this paper we define a fair subtyping relation for multi-party session types that preserves liveness, we relate it with the subtyping relation for dyadic session types, and we provide coinductive, axiomatic, and algorithmic characterizations for it

    An Algebraic Theory for Web Service Contracts

    Get PDF
    International audienceWe study a natural notion of compliance between clients and services in terms of their bpel (abstract) descriptions. The induced preorder shows interesting connections with the must preorder and has normal form representatives that are parallel-free finite-state activities, called contracts. The preorder also admits the notion of least service contract that is compliant with a client contract, called dual contract, and exhibits good precongruence properties when choreographies of Web services are considered. Our framework serves as a foundation of Web service technologies for connecting abstract and concrete service definitions and for service discovery

    Foundations of session types and behavioural contracts

    Get PDF
    Behavioural type systems, usually associated to concurrent or distributed computations, encompass concepts such as interfaces, communication protocols, and contracts, in addition to the traditional input/output operations. The behavioural type of a software component specifies its expected patterns of interaction using expressive type languages, so types can be used to determine automatically whether the component interacts correctly with other components. Two related important notions of behavioural types are those of session types and behavioural contracts. This article surveys the main accomplishments of the last 20 years within these two approaches
    corecore