基于动态分析的软件不变量综合技术  被引量:1

Survey of Dynamic Analysis Based Program Invariant Synthesis Techniques

在线阅读下载全文

作  者:王博 卢思睿 姜佳君 熊英飞 WANG Bo;LU Si-Rui;JIANG Jia-Jun;XIONG Ying-Fei(Software Engineering Institute,Department of Computer Science and Technology,School of Electronics Engineering and Computer Science,Peking University,Beijing 100871,China;Key Laboratory of High Confidence Software Technologies of Ministry of Education(Peking University),Beijing 100871,China)

机构地区:[1]北京大学信息科学技术学院计算机科学技术系软件研究所,北京100871 [2]高可信软件技术教育部重点实验室(北京大学),北京100871

出  处:《软件学报》2020年第6期1681-1702,共22页Journal of Software

基  金:国家自然科学基金(61922003,61672045)。

摘  要:软件不变量是软件的重要属性,在软件验证、软件调试和软件测试等领域有重要作用.自20世纪末以来,基于动态分析的不变量综合技术成为相关领域的一个研究热点,并且取得了一定的进展.收集了90篇相关论文对该领域进行系统总结.基于动态分析的不变量综合技术是该领域的核心问题,提出了“学习者-预言”框架统一描述相关方法,并且在此框架内根据学习者的归纳方法将综合技术大致分为4类,分别是基于模板穷举的方法、基于数值计算的方法、基于统计学习的方法以及基于符号执行的方法.其次,讨论了基于动态分析综合的不变量在软件验证和软件工程等领域的重要应用.随后,总结不变量生成技术中常用的实验对象程序和开源的不变量综合工具.最后,总结该领域并展望未来的研究方向.Program invariants are important properties of software,which play important roles in many software research fields,such as verification,debugging,and testing.Since the end of 20th century,research on dynamic analysis based program invariant synthesis has become a hot topic in related research areas and made remarkable progress.This paper collects 90 related papers to survey researches within this topic.To dynamically synthesize invariants is the key problem of this field.An abstract framework,“learner-oracle”,is proposed to model and subsume synthesis approaches.In general,the synthesis approaches can be classified into four types,i.e.pattern enumeration based approaches,numerical calculation based approaches,statistical learning based approaches,and symbolic execution based approaches.Furthermore,important applications are discussed of dynamic invariants in software engineering and software verification.Then,important subject programs and synthesis tools are briefly summarized.Finally,the remaining opportunities are presented and a conclusion is reached.

关 键 词:不变量 动态分析 软件规约 软件验证 软件测试 

分 类 号:TP311[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象