基于程序依赖网的并发程序变化感知模型检查

IF 1.7 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING
Shuo Li, Cheng Chen, Zheng Huang, Zhijun Ding
{"title":"基于程序依赖网的并发程序变化感知模型检查","authors":"Shuo Li,&nbsp;Cheng Chen,&nbsp;Zheng Huang,&nbsp;Zhijun Ding","doi":"10.1002/smr.2626","DOIUrl":null,"url":null,"abstract":"<div>\n \n <p>Concurrent software needs to be maintained over time, and the differences between continuous versions tend to be localized. The expense that simply reapplying standard model checking techniques to the new version as they evolve may be infeasible. The existing methods reuse partial state-space to reduce the scope. However, it is obviously costly to analyze on the explosive interleaving space of the evolving concurrent programs. The conservative change-impact analysis methods without considering the specific property and leveraging the verified result from the prior version often results in exploring redundant state-space irrelevant to this property. Moreover, the <i>impact</i> of the deleted elements needs to be analyzed on old version, and their <i>impact</i> needs to be mapped to new version, bringing some dispensable costs. In this paper, we propose a change-aware model checking method based on program dependence net (PDNet) for linear temporal logic (LTL). We first propose an incremental modeling method to construct a PDNet of new version by modification rules. Then, we propose a reuse checking algorithm to judge whether the verified result can be reused based on the PDNet slice. Finally, we implement change-aware model checking tool (<i>DAMER</i>) and validate the advantages of our methods.</p>\n </div>","PeriodicalId":48898,"journal":{"name":"Journal of Software-Evolution and Process","volume":"36 6","pages":""},"PeriodicalIF":1.7000,"publicationDate":"2023-11-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Change-aware model checking for evolving concurrent programs based on Program Dependence Net\",\"authors\":\"Shuo Li,&nbsp;Cheng Chen,&nbsp;Zheng Huang,&nbsp;Zhijun Ding\",\"doi\":\"10.1002/smr.2626\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div>\\n \\n <p>Concurrent software needs to be maintained over time, and the differences between continuous versions tend to be localized. The expense that simply reapplying standard model checking techniques to the new version as they evolve may be infeasible. The existing methods reuse partial state-space to reduce the scope. However, it is obviously costly to analyze on the explosive interleaving space of the evolving concurrent programs. The conservative change-impact analysis methods without considering the specific property and leveraging the verified result from the prior version often results in exploring redundant state-space irrelevant to this property. Moreover, the <i>impact</i> of the deleted elements needs to be analyzed on old version, and their <i>impact</i> needs to be mapped to new version, bringing some dispensable costs. In this paper, we propose a change-aware model checking method based on program dependence net (PDNet) for linear temporal logic (LTL). We first propose an incremental modeling method to construct a PDNet of new version by modification rules. Then, we propose a reuse checking algorithm to judge whether the verified result can be reused based on the PDNet slice. Finally, we implement change-aware model checking tool (<i>DAMER</i>) and validate the advantages of our methods.</p>\\n </div>\",\"PeriodicalId\":48898,\"journal\":{\"name\":\"Journal of Software-Evolution and Process\",\"volume\":\"36 6\",\"pages\":\"\"},\"PeriodicalIF\":1.7000,\"publicationDate\":\"2023-11-09\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Journal of Software-Evolution and Process\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://onlinelibrary.wiley.com/doi/10.1002/smr.2626\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q3\",\"JCRName\":\"COMPUTER SCIENCE, SOFTWARE ENGINEERING\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Software-Evolution and Process","FirstCategoryId":"94","ListUrlMain":"https://onlinelibrary.wiley.com/doi/10.1002/smr.2626","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

摘要

并行软件需要长期维护,而连续版本之间的差异往往是局部的。在新版本的演进过程中,简单地将标准模型检查技术重新应用于新版本可能是不可行的。现有的方法可以重复使用部分状态空间来缩小范围。然而,对不断演化的并发程序的爆炸性交织空间进行分析显然代价高昂。保守的变更影响分析方法不考虑特定属性,也不利用先前版本的验证结果,结果往往是探索与该属性无关的冗余状态空间。此外,删除元素的影响需要对旧版本进行分析,并将其影响映射到新版本中,带来了一些可有可无的成本。本文提出了一种基于程序依赖网(PDNet)的线性时态逻辑(LTL)变化感知模型检查方法。我们首先提出了一种增量建模方法,通过修改规则构建新版本的 PDNet。然后,我们提出一种重用检查算法,根据 PDNet 片断判断验证结果是否可以重用。最后,我们实现了变更感知模型检查工具(DAMER),并验证了我们方法的优势。
本文章由计算机程序翻译,如有差异,请以英文原文为准。

Change-aware model checking for evolving concurrent programs based on Program Dependence Net

Change-aware model checking for evolving concurrent programs based on Program Dependence Net

Concurrent software needs to be maintained over time, and the differences between continuous versions tend to be localized. The expense that simply reapplying standard model checking techniques to the new version as they evolve may be infeasible. The existing methods reuse partial state-space to reduce the scope. However, it is obviously costly to analyze on the explosive interleaving space of the evolving concurrent programs. The conservative change-impact analysis methods without considering the specific property and leveraging the verified result from the prior version often results in exploring redundant state-space irrelevant to this property. Moreover, the impact of the deleted elements needs to be analyzed on old version, and their impact needs to be mapped to new version, bringing some dispensable costs. In this paper, we propose a change-aware model checking method based on program dependence net (PDNet) for linear temporal logic (LTL). We first propose an incremental modeling method to construct a PDNet of new version by modification rules. Then, we propose a reuse checking algorithm to judge whether the verified result can be reused based on the PDNet slice. Finally, we implement change-aware model checking tool (DAMER) and validate the advantages of our methods.

求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Journal of Software-Evolution and Process
Journal of Software-Evolution and Process COMPUTER SCIENCE, SOFTWARE ENGINEERING-
自引率
10.00%
发文量
109
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信