首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 109 毫秒
1.
软件代码缺陷分类及其应用   总被引:5,自引:1,他引:4       下载免费PDF全文
分析现有软件缺陷分类方法,基于对航空型号软件实施代码审查的实际经验,提出较完善的代码缺陷分类,将其应用于某航空型号软件代码审查,发现的缺陷占全部测试所得的75%。给出可以覆盖该缺陷类型的新类型。检验结果表明,该代码缺陷分类可以有效指导代码审查。  相似文献   

2.
随着现代软件规模的不断扩大,协作开发成为软件开发的主流趋势,代码审查成为了现代化软件开发的重要工作流程.但由于人工代码评审往往耗费审查者较大精力,且存在审查者不匹配或审查者水平有限等问题,人工代码评审的质量和效率难以保证,且审查后的代码修复也十分费时费力.因此亟需研究人员为代码审查流程进行改进,提供自动化思路.本文对代码审查自动化相关研究进行系统梳理和总结,并重点介绍4种主要方向:审查者推荐、代码变更质量评估、审查意见生成和代码自动修复.并整理了相关方向的148篇研究,对每个方向的研究进行技术分类与分析.随后,本文整理了各方向研究任务的评估方法,并整理出常用的数据集与开源工具.最后,对代码审查自动化领域面临的问题进行梳理,并对未来研究进行展望.  相似文献   

3.
鸦文  杨沁梅 《电子技术应用》2021,47(8):106-109+115
为通过代码审查活动达到对软件产品质量提升的作用,给出了代码审查平台搭建方案,并据此平台策划开展了多个工程的代码审查活动。利用首轮采集的数据,初步分析确立了代码审查缺陷密度模型和影响因子,计算得到了代码审查缺陷密度的基线目标值。该模型可以供研发团队和研发团队所属组织策划确定代码审查基线,并策划开展后续代码审查活动。  相似文献   

4.
介绍了代码审查的定义、内涵、分类。讨论了代码审查的条件、步骤和注意事项。最后,结合软件项目开发,总结了代码审查后代码要达到的标准。对软件项目开发过程中进行代码审查具有较强的指导意义。  相似文献   

5.
王青叶  万志远  李善平  夏鑫 《软件学报》2022,33(7):2581-2598
代码审查是一种由其他开发者而非代码作者本人评审代码的形式.在代码审查系统中,开发者通过提交代码变更来修复软件缺陷或添加软件特性.并非所有的代码变更都会被集成到代码库中,部分代码变更会被拒收.被拒收的代码变更有可能被恢复,并继续接受审查,提供代码贡献者改进代码变更的机会.然而,审查恢复过的代码变更需要花费更多的时间.收集了4个开源项目中的920 700条代码变更,采用主题分析方法识别出11类代码变更恢复的原因,并定量分析被恢复的代码变更的特征.主要发现包括:1)导致代码变更恢复的原因中,“提升改进”类型占比最大; 2)不同项目之间,代码变更被恢复的原因类别分布存在差异,但并不显著; 3)与从未恢复过的代码变更相比,恢复的代码变更接收率低10%,评论数量平均多1.9倍,审查所用时间平均多5.8倍; 4) 81%的恢复代码变更被接收, 19%的恢复代码变更被拒收.  相似文献   

6.
本文通过一个软件白盒测试中代码审查的具体案例,分析制约代码审查高效的关键因素。介绍了这个案例中代码审查的过程,描绘出审查发现的代码缺陷数分布图;并由此提出将缺陷规则按照缺陷出现的频率等各种因素提供一种动态优先级;最后,评估了应用这种动态优先级进行代码审查的效果。  相似文献   

7.
在简述了中国软件企业的发展现状后,描述了软件审查的框架,并对审查和其他几种主要改进策略的投资回报率作了比较,对大多数中国软件企业来说,审查不失为一种较好的过程改进策略。  相似文献   

8.
探讨软件审查在CMM各级别的几个关键过程域中的作用,论述了软件审查在进行CMM评估和通过CMM来改进软件过程的重要性.  相似文献   

9.
评价一套软件系统的质量,一方面要对其所表现出来的外部特征进行研究,另一方面还应对其内部结构进行分析。因为构成软件系统的程序代码质量如何直接决定了整个软件系统的质量水平,所以程序代码中的缺陷分布特征也直接反映了软件系统的质量特征。介绍了如何通过抽样审查程序代码的方法建立软件缺陷分布函数,从而达到由软件缺陷分布来对软件质量进行综合、量化评估的目的。  相似文献   

10.
为提高航天嵌入式软件的测试质量、确保航天型号任务的圆满完成,对航天嵌入式软件代码审查重要内容之一的代码逻辑分析进行了研究.通过对软件缺陷的机理、缺陷查找过程、缺陷暴露过程、以及缺陷引发后果的分析,结合多年软件测试工程实践经验的总结,提出了场景分析法、时序分析法、假想故障追源法等10种主要的代码逻辑分析方法.开展了代码逻...  相似文献   

11.
用于软件保护的代码混淆技术   总被引:3,自引:0,他引:3  
罗宏  蒋剑琴  曾庆凯 《计算机工程》2006,32(11):177-179
对软件的盗版、篡改和逆向工程使软件的安全受到了严重威胁。攻击者通过静态分析和动态跟踪来分析编程者的思想,获取机密数据和核心算法。因此,保护程序在未知环境下正常运行,防止逆向工程和静态分析的攻击,成为软件保护的一个重要问题。文章从软件保护的方法出发,介绍和分析代码混淆技术的方法和目标,并指出了代码混淆技术的优势和发展趋势。  相似文献   

12.
随着嵌入式系统硬件可靠性水平的不断提高和嵌入式软件的日益复杂化,软件的可靠性在嵌入式系统整体可靠性中所占的比重也越来越大.在探讨了代码静态分析技术中关键步骤的基础上,制定了编码标准,并且选择了合适的静态分析工具;同时,介绍了自行开发的代码测试框架和测试用例设计方法,并将其运用到某智能仪表软件的测试中,得到了良好的测试效果.  相似文献   

13.
代码复用是重要的软件复用方式之一,复用者需要理解软件代码实现的功能方能有效实施软件复用。基于主题建模技术的程序理解方法逐渐受到研究人员的重视,它能够帮助软件开发者和使用者更好地理解软件的功能。目前,基于主题建模技术的程序理解方法一般欠缺对挖掘出的Topic的语义分析,为此提出的基于代码静态分析和LDA技术的代码功能挖掘(Code Function Mining,CFM)方法可作为对这类方法的补充。CFM是一套以代码为研究对象的挖掘、筛选、组织和描述主题(Topic)的方法,该方法能够生成带描述的功能型Topic的层次结构,以供使用者更清晰和方便地浏览、学习软件的功能。功能型Topic的描述能够帮助复用者理解代码功能,其层次结构能够让复用者从不同抽象层次理解代码功能。CFM方法包括4个部分:挖掘Topic、筛选Topic、组织Topic、描述Topic。以CFM方法为基础,设计并实现了一个CFM工具。CFM工具能够分析用户提交的代码,通过Web页面向用户展示带描述的功能型Topic的层次结构。最后,对CFM方法中的几个关键算法进行实验分析,验证了CFM方法的有效性。  相似文献   

14.
理解软件代码的功能是软件复用的一个重要环节。基于主题建模技术的代码理解方法能够挖掘软件代码中潜在的主题,这些主题在一定程度上代表了软件代码所实现的功能。但是使用主题建模技术所挖掘出的代码主题有着语义模糊、难以理解的弊端。潜在狄利克雷分配(Latent Dirichlet Allocation,LDA)技术是一种比较常用的主题建模技术, 其在软件代码主题挖掘领域已取得了较好的结果,但同样存在上述问题。为此,需要为主题生成解释性文本描述。基于LDA的软件代码主题摘要自动生成方法除了利用主题建模技术对源代码生成主题之外,还利用文档、问答信息等包含软件系统功能描述的各类软件资源挖掘出代码主题的描述文本并提取摘要,从而能够更好地帮助开发人员理解软件的功能。  相似文献   

15.
文章提出了一种基于UML面向对象软件静态测试的方法,论述了方法的基本框架及具体实现流程。针对面向对象软件的特点,静态测试主要是通过分析源程序得到类关系图,使测试人员能快速而清晰地了解程序结构,有效的设计测试用例。  相似文献   

16.
王敏  潘兴禄  邹艳珍  谢冰 《软件学报》2023,34(10):4705-4723
代码审查是现代软件分布式并行开发过程中的重要机制. 在代码评审时, 帮助代码评审者快速查看某一段源代码的演化过程, 可以让评审者快速理解此段代码变更的原因和必要性, 从而有效提升代码评审的效率与质量. 现有工作虽然提供了一些类似的代码提交历史回溯方法及对应工具, 但缺乏从历史数据中进一步提取辅助代码评审相关辅助信息的能力. 为此, 提出一个面向代码评审的细粒度代码变更溯源方法C2Tracker. 给定一段方法(函数)级别的细粒度代码变更, C2Tracker能够自动追溯到历史开发过程中修改该段代码相关的代码提交, 并在此基础上进一步挖掘其中与该段代码频繁共现修改的代码元素以及相关的变更片段, 辅助代码评审者对当前代码变更的理解与决策. 在10个著名开源项目的数据集下进行实验验证. 实验结果表明, C2Tracker在追溯历史提交的准确率上达到97%, 在挖掘频繁共现代码元素任务上的准确率达到95%, 在追溯相关代码变更片段任务上的准确率达到97%; 相比现有评审方式, C2Tracker在具体案例的代码评审效率和质量上均有较大提升, 在绝大多数的代码评审案例中被评审者认为能提供“明显帮助”或“很大帮助”.  相似文献   

17.
提出一种基于UML的面向对象软件静态测试的方法,论述了方法的基本框架及针对C 的具体实现,使测试人员能直观地了解程序结构上的错误,并有效地设计测试用例。本静态测试方法是通过分析源程序文件,采用数据库来保存分析结果,并以UML类关系图显示出来。  相似文献   

18.
构件软件的测试问题综述   总被引:20,自引:2,他引:20  
基于构件的软件设计方法是软件设计的新趋势。文章介绍了构件及构件软件的概念、特点和由此引发的测试问题,介绍了现有的构件软件的测试方法和测试工具的研究情况。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号