米拉·达拉·普雷达;毛里齐奥·加布里埃利;萨维里奥·贾勒伦佐;伊万·拉内斯;雅各布·毛罗 动态编舞:理论与实施。 (英语) Zbl 1398.68088号 日志。方法计算。科学。 13,第2号,第1号论文,57页(2017年). 摘要:编程分布式应用程序以避免通信死锁和竞争条件是复杂的。当应用程序在运行时更新时,保留这些属性就更加困难了。我们提出了一种编排方法,用于编程可更新的分布式应用程序。我们定义了一种编排语言,称为动态交互导向编排(Dynamic Interaction Oriented choreography,AIOC),它允许程序员从全局角度指定应用程序的哪些部分可以更新。在运行时,这些部件可能会被来自应用程序外部的新AIOC片段替换。AIOC程序被编译,用称为动态面向流程编排(APOC)的流程级语言为每个参与者生成代码。我们证明了根据AIOC规范生成的APOC分布式应用程序是无死锁和无竞争的,并且这些属性在任何运行时更新后都保持不变。我们将上述理论模型实例化为一个名为Adaptable Interaction Oriented Choreographies in Jolie(AIOCJ)的编程框架,该框架包括一个集成开发环境、一个从AIOC扩展到分布式Jolie程序的编译器,以及一个支持其执行的运行时环境。 引用于13文件 MSC公司: 68甲19 其他编程范式(面向对象、顺序、并发、自动等) 关键词:舞蹈编排;适应性系统;死锁解除 软件:Xtext(扩展文本);链接;AIOCJ公司 PDF格式BibTeX公司 XML格式引用 \textit{M.D.Preda}等人,日志。方法计算。科学。13,第2号,第1号论文,57页(2017;Zbl 1398.68088) 全文: DOI程序 arXiv公司 参考文献: [1] AIOCJ网站。http://www.cs.unibo.it/projects/jolie/aiocj.html。 [2] G.Anderson和J.Rathke。消息传递程序的动态软件更新。在APLAS中,LNCS第7705卷,第207-222页。施普林格,2012年。 [3] J.W.巴克斯。苏黎世ACM-GAMM会议提出的国际代数语言的语法和语义。IFIP大会,第125-131页,1959年。 [4] L.Baresi、A.Marconi、M.Pistore和A.Sirbu。适应性过程模型的修正演变。在BMMDS/EMMSAD中,LNBIP第147卷,第214-229页。施普林格,2013年。 [5] S.Basu、T.Bultan和M.Ouederni。决定编舞的可实现性。在POPL中,第191-202页。ACM,2012年·Zbl 1321.68183号 [6] G.Berry和M.Serrano。跳和嘻哈:多层Web编排。在ICDCIT中,LNCS第8337卷,第1-13页。斯普林格,2014年。 [7] M.Bravetti等人,《面向全球和地方类型的适应》。SEFM研讨会,LNCS第8368卷,第3-14页。施普林格,2013年。 [8] A.Bucchiarone、A.Marconi、C.A.Mezzina、M.Pistore和H.Raik。基于动态服务的系统的即时适应:增量、缩减和重用。在ICSOC中,LNCS第8274卷,第146–161页。施普林格,2013年。 [9] S.Capecchi、E.Giachino和N.Yoshida。多方会话中的全局转义。程序中。FSTTCS 2010,LIPIcs第8卷,第338-351页。达格斯图尔宫,2010年·Zbl 1245.68019号 [10] M.Carbone、K.Honda和N.Yoshida。结构化通信——以Web服务为中心的编程。在ESOP中,LNCS第4421卷,第2-17页。施普林格,2007年·Zbl 1187.68064号 [11] M.Carbone、K.Honda和N.Yoshida。会话类型中的结构化交互异常。程序中。2008年CONCUR,LNCS第5201卷,第402-417页。施普林格,2008年·兹比尔1160.68459 [12] M.Carbone、K.Honda和N.Yoshida。以结构化通信为中心的web服务编程。ACM事务处理。程序。语言系统。,34(2):8, 2012. ·Zbl 1187.68064号 [13] M.Carbone和F.Montesi。死锁自由设计:多方异步全球计划·Zbl 1301.68097号 [14] G.Castagna、M.Dezani-Ciancaglini和L.Padovani。关于全球类型和多方会议。《计算机科学中的逻辑方法》,8(1),2012年·Zbl 1238.68026号 [15] E.Cooper、S.Lindley、P.Wadler和J.Yallop。链接:没有层次的网络编程。在FMCO中,LNCS第4709卷,第266-296页。斯普林格,2006年。 [16] M.Coppo、M.Dezani-Ciancaglini和B.Venneri。自适应多党会议。面向服务的计算和应用,9(3-4):249–2682015。 [17] G.Cugola、C.Ghezzi和L.S.Pinto。DSOL:自适应服务编排的声明性方法。计算,94(7):579–6172012·Zbl 1245.68044号 [18] M.Dalla Preda、M.Gabbrielli、S.Giallorenzo、I.Lanese和J.Mauro。动态编排-分布式应用程序的安全运行时更新。《协调》,LNCS第9037卷,第67-82页。斯普林格,2015年。 [19] M.Dalla Preda、S.Giallorenzo、I.Lanese、J.Mauro和M.Gabbrielli。AIOCJ:用于安全自适应分布式应用程序的编排框架。在SLE中,LNCS第8706卷,第161-170页。斯普林格,2014年。 [20] C.Di Giusto和J.A.P'erez。有规律的结构化通信,具有一致的运行时适应能力。在SAC中,第1913-1918页。ACM,2013年。 [21] Eclipse网站。http://www.eclipse.org/。 [22] C.Ghezzi、M.Pradella和G.Salvaneschi。对编程语言中的适应能力的评估。在SEAMS中,第50-59页。ACM,2011年。 [23] R.Hirschfeld、P.Costanza和O.Nierstrasz。面向上下文的编程。对象技术杂志,7(3):125-1512008。 [24] K.本田、N.吉田和M.卡本。多方异步会话类型。在POPL中,第273-284页。ACM,2008年·Zbl 1295.68150号 [25] H.H“uttel等人。会话类型和行为合同的基础。ACM计算调查,2016年。 [26] 朱莉网站。http://www.jolie-lang.org/。 [27] I.Jureta、S.Faulkner和P.Thiran。适应性和开放式面向服务系统的动态需求规范。在ICSOC中,LNCS第4749卷,第270-282页。施普林格,2007年。 [28] J.O.Kephart和D.M.Chess。自主计算的愿景。计算机,36(1):41-502003。 [29] I.Lanese、A.Bucchiarone和F.Montesi。基于规则的动态适应框架。在TGC中,LNCS第6084卷,第284-300页。施普林格,2010年。 [30] I.Lanese、C.Guidi、F.Montesi和G.Zavataro。弥合交互和面向过程的编排之间的差距。SEFM,第323–332页。IEEE,2008年。 [31] I.Lanese、F.Montesi和G.Zavataro。修改编舞。在WWV中,第123卷,第34-48页。EPTCS,2013年。 [32] L.A.F.Leite等人,《服务编舞改编的系统文献综述》。面向服务的计算和应用,7(3):199–2162013。 [33] C.梅茨。dropbox退出亚马逊云帝国的史诗故事。有线,http://www.wired。com/2016/03/史诗般的故事dropboxs大逃亡亚马逊云帝国/。 [34] F.蒙特西。启动舞蹈编程。在WS-FM中,第3-10页。斯普林格,2015年。 [35] F.Montesi、C.Guidi和G.Zavataro。使用JOLIE编写服务。在ECOWS中,第13-22页。IEEE,2007年。 [36] F.Montesi、C.Guidi和G.Zavataro。与朱莉一起进行面向服务的编程。在Web Services Foundations中,第81–107页。斯普林格,2014年。 [37] F.Montesi和N.Yoshida。构图舞蹈。在CONCUR中,LNCS第8052卷,第425-439页。施普林格,2013年·Zbl 1390.68483号 [38] I.Neamtiu和M.W.Hicks。安全及时地更新多线程程序。在PLDI中,第13-24页。ACM,2009年。 [39] M.Neubauer和P.Thiemann。通过程序转换从顺序程序到多层应用程序。在POPL中,第221-232页。ACM,2005年·Zbl 1369.68149号 [40] M.Neubauer和P.Thiemann。客户端-服务器演算的放置推断。在ICALP中,LNCS第5126卷,第75-86页。施普林格,2008年·Zbl 1155.68338号 [41] P.尼纳尔托夫斯基。基于契约的并发面向对象编程的实用框架。苏黎世理工学院博士论文,2007年。 [42] S.Rinderle、A.Wombacher和M.Reichert。DYCHOR过程编排的演变。在OTM会议(1)中,LNCS第4275卷,第273-290页。斯普林格,2006年。 [43] 生锈网站。http://www.rust-lang.org/。 [44] G.Sala“un、T.Bultan和N.Roohi。使用进程代数编码实现编舞。IEEE T.服务计算,5(3):290-3042012。 [45] D.Sangiorgi和D.Walker。微积分:流动过程理论。剑桥大学出版社,2003年·Zbl 0981.68116号 [46] Scribble网站。http://www.jboss.org/scrible。 [47] A.旺巴赫。调整BPEL流程中的编排更改。在IEEE SCC中,第1-8页。IEEE,2009年。 [48] Xtext网站。http://www.eclipse.org/Xtext/。 [49] Z.Yang、B.H.C.Cheng、R.E.K.Stiewalt、J.Sowell、S.M.Sadjadi和P.K.McKinley。一种面向方面的动态适应方法。在WOSS中,第85-92页。ACM,2002年。 [50] S.叶古拉普。Mozilla基于Rust-based的伺服浏览器引擎向前推进了一步。信息世界,http://www.infoworld。com/article/2905688/applications/mozillas-rust-based-servo-browser-engine-inches-forward。html格式。 此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。