一个用于设计和自动检查服务器体系结构的Java工具包

G. Loyauté, R. Forax, G. Roussel
{"title":"一个用于设计和自动检查服务器体系结构的Java工具包","authors":"G. Loyauté, R. Forax, G. Roussel","doi":"10.1145/1294325.1294341","DOIUrl":null,"url":null,"abstract":"This paper presents Saburo, a Java toolkit that generates, from a single Java specification, Java Internet server implementations, together with their formal model that can be automatically checked using the model checker SPIN. This approach ensures the coherence between the Internet server behavior and the static verifications applied on its formal model. Moreover, the use of the Java language as a unique input specification should help the dissemination of formal verification techniques.\n To simplify the automatic abstraction of the formal model, the Saburo approach is based on the separation of concerns principle. The Java specification is decomposed into three parts: a concurrency model chosen among several predefined ones, a graph describing all the communication and synchronization, and the business code. This approach has two main advantages: the change of the concurrency model is straightforward, and the classical problem of state explosion induced by the automatic extraction of the formal model from the source code is minimized.\n This work blends together a set of features coming from server design, compilers, software engineering and formal verification. Even though we do not claim novelty in each of the techniques adopted for Saburo, they have been unified into our Java toolkit, which supports all server design phases.","PeriodicalId":169989,"journal":{"name":"Principles and Practice of Programming in Java","volume":"181 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2007-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A Java toolkit for the design and the automatic checking of server architectures\",\"authors\":\"G. Loyauté, R. Forax, G. Roussel\",\"doi\":\"10.1145/1294325.1294341\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper presents Saburo, a Java toolkit that generates, from a single Java specification, Java Internet server implementations, together with their formal model that can be automatically checked using the model checker SPIN. This approach ensures the coherence between the Internet server behavior and the static verifications applied on its formal model. Moreover, the use of the Java language as a unique input specification should help the dissemination of formal verification techniques.\\n To simplify the automatic abstraction of the formal model, the Saburo approach is based on the separation of concerns principle. The Java specification is decomposed into three parts: a concurrency model chosen among several predefined ones, a graph describing all the communication and synchronization, and the business code. This approach has two main advantages: the change of the concurrency model is straightforward, and the classical problem of state explosion induced by the automatic extraction of the formal model from the source code is minimized.\\n This work blends together a set of features coming from server design, compilers, software engineering and formal verification. Even though we do not claim novelty in each of the techniques adopted for Saburo, they have been unified into our Java toolkit, which supports all server design phases.\",\"PeriodicalId\":169989,\"journal\":{\"name\":\"Principles and Practice of Programming in Java\",\"volume\":\"181 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2007-09-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Principles and Practice of Programming in Java\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/1294325.1294341\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Principles and Practice of Programming in Java","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/1294325.1294341","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

本文介绍了Saburo,这是一个Java工具包,它从单个Java规范生成Java Internet服务器实现,以及可以使用模型检查器SPIN自动检查的正式模型。这种方法确保了Internet服务器行为和应用于其正式模型的静态验证之间的一致性。此外,使用Java语言作为唯一的输入规范应该有助于正式验证技术的传播。为了简化形式化模型的自动抽象,Saburo方法基于关注点分离原则。Java规范被分解为三个部分:从几个预定义的模型中选择的并发模型、描述所有通信和同步的图以及业务代码。这种方法有两个主要优点:并发模型的更改很简单,并且最小化了由于从源代码中自动提取形式模型而引起的状态爆炸的经典问题。这项工作融合了来自服务器设计、编译器、软件工程和形式化验证的一系列特性。尽管我们并不认为Saburo采用的每一种技术都是新颖的,但它们已经统一到我们的Java工具包中,该工具包支持所有服务器设计阶段。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
A Java toolkit for the design and the automatic checking of server architectures
This paper presents Saburo, a Java toolkit that generates, from a single Java specification, Java Internet server implementations, together with their formal model that can be automatically checked using the model checker SPIN. This approach ensures the coherence between the Internet server behavior and the static verifications applied on its formal model. Moreover, the use of the Java language as a unique input specification should help the dissemination of formal verification techniques. To simplify the automatic abstraction of the formal model, the Saburo approach is based on the separation of concerns principle. The Java specification is decomposed into three parts: a concurrency model chosen among several predefined ones, a graph describing all the communication and synchronization, and the business code. This approach has two main advantages: the change of the concurrency model is straightforward, and the classical problem of state explosion induced by the automatic extraction of the formal model from the source code is minimized. This work blends together a set of features coming from server design, compilers, software engineering and formal verification. Even though we do not claim novelty in each of the techniques adopted for Saburo, they have been unified into our Java toolkit, which supports all server design phases.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Optimizing interpreters by tuning opcode orderings on virtual machines for modern architectures: or: how I learned to stop worrying and love hill climbing A DSL for writing type systems for Xtext languages ejIP: a TCP/IP stack for embedded Java Habanero-Java: the new adventures of old X10 Eliminating partially-redundant array-bounds check in the Android Dalvik JIT compiler
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1