Finding related events for specification mining

Ziying Dai, Xiaoguang Mao, Liqian Chen, Yan Lei, Yi Zhang
{"title":"Finding related events for specification mining","authors":"Ziying Dai, Xiaoguang Mao, Liqian Chen, Yan Lei, Yi Zhang","doi":"10.1109/ISSREW.2013.6688847","DOIUrl":null,"url":null,"abstract":"In contemporary software development practice, programmers reuse components by invoking their APIs to construct large systems. These APIs often involve constraints on the temporal order of method calls. For the example of the file usage, a programmer should first open a file, then read and/or write its content, and at last close it. Trying to read a closed file will cause exceptions to be thrown. Such constraints are often represented as a finite state machine (FSM) with a set of related events (typically method calls) as its alphabet. A set of events are related if interactions among them possibly obey some meaningful temporal specifications. In recent years, various specification mining techniques have been developed to automatically mine API specifications from API client programs [1]. A typical API specification miner conceptually has three steps. First, it decide which events are related. Second, different interactions among related events (which are sub-traces and sample strings of the specification FSM) are extracted either from source code of client programs or from their execution traces. Third, extracted interactions are passed to customized or off-the-shelf FSM learners which generalize these sample sub-traces to recover the specification FSM.","PeriodicalId":332420,"journal":{"name":"2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-12-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISSREW.2013.6688847","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

In contemporary software development practice, programmers reuse components by invoking their APIs to construct large systems. These APIs often involve constraints on the temporal order of method calls. For the example of the file usage, a programmer should first open a file, then read and/or write its content, and at last close it. Trying to read a closed file will cause exceptions to be thrown. Such constraints are often represented as a finite state machine (FSM) with a set of related events (typically method calls) as its alphabet. A set of events are related if interactions among them possibly obey some meaningful temporal specifications. In recent years, various specification mining techniques have been developed to automatically mine API specifications from API client programs [1]. A typical API specification miner conceptually has three steps. First, it decide which events are related. Second, different interactions among related events (which are sub-traces and sample strings of the specification FSM) are extracted either from source code of client programs or from their execution traces. Third, extracted interactions are passed to customized or off-the-shelf FSM learners which generalize these sample sub-traces to recover the specification FSM.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
为规范挖掘查找相关事件
在当代软件开发实践中,程序员通过调用组件的api来构建大型系统,从而重用组件。这些api通常涉及对方法调用的时间顺序的约束。对于文件使用的例子,程序员应该首先打开一个文件,然后读取和/或写入其内容,最后关闭它。试图读取已关闭的文件将导致抛出异常。这些约束通常表示为有限状态机(FSM),其字母表中包含一组相关事件(通常是方法调用)。如果一组事件之间的相互作用可能遵守一些有意义的时间规范,那么它们就是相关的。近年来,人们开发了各种规范挖掘技术,从API客户端程序b[1]中自动挖掘API规范。从概念上讲,典型的API规范挖掘有三个步骤。首先,它决定哪些事件是相关的。其次,相关事件(即规范FSM的子跟踪和示例字符串)之间的不同交互可以从客户机程序的源代码或执行跟踪中提取。第三,提取的交互传递给定制的或现成的FSM学习器,这些学习器泛化这些样本子轨迹以恢复规范的FSM。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Bug localisation through diverse sources of information A chain of accountabilities in open systems based on assured entrustments Estimating response time distribution of server application in software aging phenomenon Safety assessment of software-intensive medical devices: Introducing a safety quality model approach Detection of missing requirements using base requirements pairs
×
引用
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