一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种软件有效代码量统计方法和装置与流程

2022-11-19 07:57:05 来源:中国专利 TAG:


1.本发明属于计算机技术领域,尤其涉及一种软件有效代码量统计方法和装置。


背景技术:

2.在软件开发时,研发人员技术能力有高有低,而有效代码量则是用于评估工作人员技术能力的一个重要指标,为此,需要进行有效代码量的统计。现有的技术手段,通常为采基于代码仓库系统(例如gitlab)自带的代码量统计工具进行人员的代码量统计,但是其只能对人员提交代码的增加和删除进行简单统计,导致实际统计得到的代码量依然包含大量冗余无效代码。
3.为此,我们提出来一种软件有效代码量统计方法和装置解决上述问题。


技术实现要素:

4.本发明的目的是为了解决现有技术中,现有的代码量统计方法不便于对有效代码进行精确统计,导致对工作人员的技术能力评估错误的问题,而提出的一种软件有效代码量统计方法和装置。
5.为了实现上述目的,本发明采用了如下技术方案:
6.一种软件有效代码量统计方法,包括以下步骤:
7.s1、获取预定周期时间段内提交的目标代码;
8.s2、获取目标代码的代码总量;
9.s3、获取代码总量中的缺陷代码;
10.s4、基于目标代码中的commit信息剔除目标代码中目标平台所提交的公共代码部分;
11.s5、基于已获取的缺陷代码量进一步得到已剔除公共代码的代码重量中的有效代码。
12.作为进一步的优选方案,所述s1包括:
13.s101、预设一个数据库;
14.s102、工作人员在预设时间段内,将待统计的代码提交至预设的数据库内。
15.作为进一步的优选方案,所述s2为对所述s1中数据库发送统计请求,且所述数据库根据统计请求指示进行目标代码的总量统计。
16.作为进一步的优选方案,所述s3为获取代码总量中的缺陷代码个数,缺陷代码包括:blocker缺陷、critical缺陷、major缺陷、minor缺陷以及trivial缺陷。
17.作为进一步的优选方案,所述blocker缺陷表示影响软件运行的阻塞性缺陷,该缺陷导致大面积的功能失效或某一类的流程阻塞;
18.所述critical缺陷表示影响软件运行的严重缺陷,该缺陷导致一部分功能失效或某个功能不可用;
19.所述major缺陷表示影响软件运行的缺陷,该缺陷导致部分主要功能存在问题;
20.所述minor缺陷表示影响软件运行的一般缺陷,该缺陷的存在不影响功能使用,但会导致某功能的一小部分存在问题;
21.所述trivial缺陷表示影响软件运行的微小缺陷,该缺陷的存在不影响功能使用,但会影响用户评价或用户体验。
22.作为进一步的优选方案,所述s4包括:
23.s401、对数据库中所述目标代码中各个项目对应分支中的commit信息进行去重;
24.s402、数据库对所述目标代码中的commit信息进行识别,并剔除。
25.作为进一步的优选方案,所述s402中所剔除的代码,包括冗余操作对应的代码以及目标平台自动修改的部分代码。
26.作为进一步的优选方案,s5基于已剔除公共代码的目标代码,计算缺陷代码外的有效代码的数量,并得到有效代码的权重。
27.一种软件有效代码量统计装置,包括代码获取模块、筛选模块、计算模块以及统计模块。
28.作为进一步的优选方案,所述筛选模块包括缺陷代码统计单元以及公共代码剔除单元,且所述公共代码剔除单元用于剔除目标代码中冗余操作对应的代码以及目标平台自动修改的部分代码。
29.综上所述,本发明的技术效果和优点:
30.该软件有效代码量统计方法和装置,能够对目标代码的总量进行快速统计,从而能够以此初步评估工作人员的技术能力;
31.该软件有效代码量统计方法和装置,能够自动统计处代码总量中的缺陷代码数量,从而得到目标代码的缺陷率,而代码缺陷率评价软件质量的一个重要维度,对于项目、团队及个人代码产出质量的评价也具有较大价值,因此,相对于传统的手工提交缺陷代码数,甚至不提交缺陷代码数,本方法与装置能够快速得到更加精确的数据,方便对软件质量、项目质量、团队质量以及个人技术能力的评估;
32.该软件有效代码量统计方法和装置,还可对目标代码中冗余操作对应的代码以及目标平台自动修改的部分代码,从而更进一步得到目标代码中的有效代码,即可方便精确评估工作人员的个人技术能力,避免了无效代码的干扰。
附图说明
33.图1为本发明实施例的方法流程图;
34.图2为本发明实施例的统计装置的结构示意图;
35.图3为本发明实施例的统计装置中筛选模块的结构示意图。
36.图中:1、代码获取模块;2、筛选模块;201、缺陷代码统计单元;202、公共代码剔除单元;3、计算模块;4、统计模块。
具体实施方式
37.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
38.参照图1,一种软件有效代码量统计方法,包括以下步骤:
39.步骤1、获取预定周期时间段内提交的目标代码,其中,包括:
40.s101、预设一个数据库;
41.s102、工作人员在预设时间段内,将待统计的代码提交至预设的数据库内。
42.步骤2、对上述步骤1中所建立的数据库发送统计请求,且数据库能够根据统计请求指示进行目标代码的总量统计,从而获取目标代码的代码总量。
43.步骤3、获取上述步骤中目标代码总量中的缺陷代码,其中,缺陷代码具体包括blocker缺陷、critical缺陷、major缺陷、minor缺陷以及trivial缺陷,具体的:
44.上述blocker缺陷表示影响软件运行的阻塞性缺陷,该缺陷导致大面积的功能失效或某一类的流程阻塞;
45.上述critical缺陷表示影响软件运行的严重缺陷,该缺陷导致一部分功能失效或某个功能不可用;
46.上述major缺陷表示影响软件运行的缺陷,该缺陷导致部分主要功能存在问题;
47.上述minor缺陷表示影响软件运行的一般缺陷,该缺陷的存在不影响功能使用,但会导致某功能的一小部分存在问题;
48.上述trivial缺陷表示影响软件运行的微小缺陷,该缺陷的存在不影响功能使用,但会影响用户评价或用户体验。
49.步骤4、基于目标代码中的commit信息剔除目标代码中目标平台所提交的公共代码部分。其主要包括:
50.s401、对数据库中所述目标代码中各个项目对应分支中的commit信息进行去重;
51.s402、数据库对所述目标代码中的commit信息进行识别,并剔除,且剔除的公共代码,包括冗余操作对应的代码以及目标平台自动修改的部分代码。
52.步骤5、基于上述目标代码总量数目、缺陷代码数目以及剔除公共代码后的目标代码数目,以进行计算目标代码总量数目中的有效代码数量,从而得到有效代码的权重,并可以此作为评估工作人员技术能力的重要指标,相较于传统的代码统计,统计更加精确。
53.参照图2与图3,根据上述有效代码量统计方法,本实施例提供了一种软件有效代码量统计装置,包括代码获取模块1、筛选模块2、计算模块3以及统计模块4,其中筛选模块2包括缺陷代码统计单元201以及公共代码剔除单元202,且所述公共代码剔除单元202用于剔除目标代码中冗余操作对应的代码以及目标平台自动修改的部分代码。
54.工作原理:该软件有效代码量统计装置,使用时,通过代码获取模块1建立用于存储目标代码的数据库,当数据库接收到代码统计请求时,会先对目标代码进行总量统计,即可得到目标代码的总代码数量。
55.同时,筛选模块2会来对目标代码进行筛选,先利用缺陷代码统计单元201来对目标代码的blocker缺陷代码、critical缺陷代码、major缺陷代码、minor缺陷代码以及trivial缺陷代码进行统计,得到缺陷代码的数量,然后再利用公共代码剔除单元202来对目标代码中的commit信息进行识别,从而对目标代码中冗余操作对应的代码以及目标平台自动修改的部分代码进行提剔除。
56.最后,计算模块3会对上述多个模块中得到的数据,包括目标代码总量数目、缺陷代码数目以及剔除公共代码后的目标代码数目,以进行计算,并能够配合统计模块4来得到有效代码量,从而能够通过有效代码量来更精确地评估工作人员的技术能力,使用方便。
57.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献