ACSIS: Behavioural Application Program Interfaces. Mario Bravetti

description

APIs are typically flat structures, i.e. sets of service/method signatures specifying the expected service parameters and the kind of results one should expect in return. However, correct API usage also requires the individual services to be invoked in a specific order.

Despite its importance, the latter information is either often omitted, or stated informally via textual descriptions. Behavioural Types are a suite of technologies that formalise of this information, elevating flat API descriptions to a graph structure of services. This permits automated analyses for correct API compositions so as to provide guarantees such as service compliance, deadlock freedom, dynamic adaptation in the presence of failure, load balancing etc. Moroever, the notion of behavioural subtyping makes it possible to reason about API compatibility/substitutability, e.g. when API versions are considered.

In this context we present a recent negative result we discovered: in the case of asynchronous communication, behavioural subtyping is undecidable. We discuss the implications of this result and possible decidable fragments that may have practical applicability.

Speakers bio

Mario Bravetti is an Associate Professor at the Computer Science and Engineering Department of University of Bologna. He is also member of the FOCUS (FOundations of Component-based Ubiquitous Systems) team which is part of the INRIA Sophia Antipolis - Méditerranée research center.

His research activity spans from formal description and analysis of concurrent/distributed systems based on mathematical and probabilistic methodos to more applicative topics such as service oriented and cloud computing. He was winner of the award for best italian PhD thesis in theoretical computer science, assigned by the Italian Chapter of the European Association for Theoretical Computer Science.

На главную

ДО МЕРОПРИЯТИЯ ОСТАЛОСЬ

ИНФОРМАЦИЯ

БЛИЖАЙШИЕ МЕРОПРИЯТИЯ

Сайт находится в технической разработке