DYNAMIC CHOREOGRAPHIES: THEORY AND IMPLEMENTATION

DYNAMIC CHOREOGRAPHIES: THEORY AND IMPLEMENTATION
复制标题

DOI:
10.23638/lmcs-13(2:1)2017
复制
发表时间:
2017-01-01
影响因子:
0.6
通讯作者:
Mauro, Jacopo
Mauro, Jacopo
中科院分区:
计算机科学4区
文献类型:
--
作者:
Dalla Preda, Mila;Gabbrielli, Maurizio;Mauro, Jacopo

文献摘要

被引文献

相似文献

对分布式应用程序进行无通信死锁和竞争条件的编程是复杂的。当应用程序在运行时更新时,保留这些属性就更难了。我们提出了一个编排的方法编程可更新的,分布式应用程序。我们定义了一种编排语言,称为动态面向交互的编排(DIOC),它允许程序员指定,从全局的角度来看,应用程序的哪些部分可以更新。在运行时,这些部分可以被来自应用程序外部的新DIOC片段替换。DIOC程序被编译,用称为动态面向过程编排(DPOC)的过程级语言为每个参与者生成代码。我们证明了DPOC的分布式应用程序产生的DIOC规范是死锁自由和竞争自由,这些属性也保持任何运行时更新后。我们将上述理论模型实例化为一个名为Adaptable Interaction-Oriented Choreographies in Jolie(AIOCJ)的编程框架,该框架包括一个集成开发环境,一个从DIOCs扩展到分布式Jolie程序的编译器,以及一个支持其执行的运行时环境。
Programming distributed applications free from communication deadlocks and race conditions is complex. Preserving these properties when applications are updated at runtime is even harder. We present a choreographic approach for programming updatable, distributed applications. We de fi ne a choreography language, called Dynamic Interaction-Oriented Choreography (DIOC), that allows the programmer to specify, from a global viewpoint, which parts of the application can be updated. At runtime, these parts may be replaced by new DIOC fragments from outside the application. DIOC programs are compiled, generating code for each participant in a process-level language called Dynamic Process-Oriented Choreographies (DPOC). We prove that DPOC distributed applications generated from DIOC speci fi cations are deadlock free and race free and that these properties hold also after any runtime update. We instantiate the theoretical model above into a programming framework called Adaptable Interaction-Oriented Choreographies in Jolie (AIOCJ) that comprises an integrated development environment, a compiler from an extension of DIOCs to distributed Jolie programs, and a runtime environment to support their execution.