在介绍性程序中检测bug的静态分析框架

Wenchu Xu, Yanran Ma
{"title":"在介绍性程序中检测bug的静态分析框架","authors":"Wenchu Xu, Yanran Ma","doi":"10.1109/ISSREW53611.2021.00078","DOIUrl":null,"url":null,"abstract":"Introductory programming courses are crucial to students who begin to learn programming languages. However, current introductory program judgment systems only give a pass or fail by the percentage of passed test cases. This limitation hinders the learning progress because students may unaware of potential bugs hidden in their programs. Detecting and reporting these bugs can help them avoid introducing the same kinds of bugs in other programs. However, state-of-the-art bug detection methods focus on precision and scalability, but are usually costly to develop detection methods for various kinds of bugs. To simplify the development of bug detection while keeping a reasonable precision, this paper presents a static detection framework to detect software bugs. Then, we apply the method to introductory programs and successfully detect all bugs with a false positive rate of 28.57 %.","PeriodicalId":385392,"journal":{"name":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A Static Analysis Framework for Detecting Bugs in Introductory Programs\",\"authors\":\"Wenchu Xu, Yanran Ma\",\"doi\":\"10.1109/ISSREW53611.2021.00078\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Introductory programming courses are crucial to students who begin to learn programming languages. However, current introductory program judgment systems only give a pass or fail by the percentage of passed test cases. This limitation hinders the learning progress because students may unaware of potential bugs hidden in their programs. Detecting and reporting these bugs can help them avoid introducing the same kinds of bugs in other programs. However, state-of-the-art bug detection methods focus on precision and scalability, but are usually costly to develop detection methods for various kinds of bugs. To simplify the development of bug detection while keeping a reasonable precision, this paper presents a static detection framework to detect software bugs. Then, we apply the method to introductory programs and successfully detect all bugs with a false positive rate of 28.57 %.\",\"PeriodicalId\":385392,\"journal\":{\"name\":\"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)\",\"volume\":\"17 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISSREW53611.2021.00078\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISSREW53611.2021.00078","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

编程入门课程对于开始学习编程语言的学生来说是至关重要的。然而,当前的介绍性程序判断系统仅根据通过测试用例的百分比给出合格或不合格。这种限制阻碍了学习进度,因为学生可能没有意识到程序中隐藏的潜在错误。检测和报告这些错误可以帮助他们避免在其他程序中引入相同类型的错误。然而,最先进的错误检测方法侧重于精度和可伸缩性,但通常开发用于各种错误的检测方法的成本很高。为了简化bug检测的开发,同时保持合理的精度,本文提出了一种静态的软件bug检测框架。然后,我们将该方法应用于介绍性程序,并成功检测出所有错误,假阳性率为28.57%。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A Static Analysis Framework for Detecting Bugs in Introductory Programs
Introductory programming courses are crucial to students who begin to learn programming languages. However, current introductory program judgment systems only give a pass or fail by the percentage of passed test cases. This limitation hinders the learning progress because students may unaware of potential bugs hidden in their programs. Detecting and reporting these bugs can help them avoid introducing the same kinds of bugs in other programs. However, state-of-the-art bug detection methods focus on precision and scalability, but are usually costly to develop detection methods for various kinds of bugs. To simplify the development of bug detection while keeping a reasonable precision, this paper presents a static detection framework to detect software bugs. Then, we apply the method to introductory programs and successfully detect all bugs with a false positive rate of 28.57 %.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
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学术官方微信