软件开发质量评估方法、装置、计算机设备和存储介质与流程

文档序号:14911044发布日期:2018-07-10 23:25阅读:150来源:国知局

本申请涉及计算机测试技术领域,特别是涉及一种软件开发质量评估方法、装置、计算机设备和存储介质。



背景技术:

随着计算机技术的发展,越来越多的行业都需要使用计算机软件,所以软件开发需要越来越快的更新换代,因此,目前的软件开发大多采用敏捷开发模式,也即对开发的软件进行不间断且定期的进行版本更新,从而优化软件的性能,进而不停地采用持续的迭代来完善软件产品。

传统地,由于敏捷开发模式的普及,开发人员为了按时完成开发工作,在开发过程中会出现大量的问题,导致在软件测试时出现大量的漏洞,进而测试人员再将当前版本返回到软件开发人员进行漏洞修复,再进行重新的测试,且测试过程中仅仅记录测试通过或测试不通过,不易及时评估软件开发的质量,软件开发的质量评价不直观且不准确。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够直观且准确评估软件开发的质量的软件开发质量评估方法、装置、计算机设备和存储介质。

一种软件开发质量评估方法,所述方法包括:

获取软件当前迭代版本的待评估数据以及维度数据选取逻辑;

根据所述选取逻辑从所述待评估数据中获取维度数据;

提取所述维度数据的标识字段,获取预设的与所述标识字段对应的维度数据的打分区间;

根据所述获取的维度数据和所述打分区间计算所述维度数据的得分;

根据所述维度数据的得分,计算所述待评估数据的当前打分值。

在其中一个实施例中,所述根据所述选取逻辑从所述待评估数据中获取维度数据的步骤,包括:

获取所述选取逻辑对应的待评估数据的标准提交时间,并获取所述选取逻辑对应的待评估数据的实际提交时间;

统计所述实际提交时间超过所述标准提交时间的所述选取逻辑对应的待评估数据的超时数量;

统计所述选取逻辑对应的待评估数据的总数量;

根据所述超时数量与所述总数量计算当前超时维度数据。

在其中一个实施例中,所述根据所述选取逻辑从所述待评估数据中获取维度数据的步骤,还包括:

获取所述选取逻辑对应的待评估数据的提交次数以及回退次数;

根据所述提交次数与所述回退次数计算当前回退维度数据。

在其中一个实施例中,所述根据所述选取逻辑从所述待评估数据中获取维度数据的步骤,还包括:

获取上一迭代版本存在的原漏洞以及所述当前迭代版本存在的当前漏洞;

将所述当前漏洞与所述原漏洞进行比对;

当所述当前漏洞与所述原漏洞存在不同时,则统计与所述原漏洞存在不同的所述当前漏洞的第一数量;

获取与所述选取逻辑对应的待评估数据的总数量;

根据所述第一数量、所述原漏洞的数量以及所述选取逻辑对应的待评估数据的总数量,计算当前引发维度数据。

在其中一个实施例中,所述根据所述选取逻辑从所述待评估数据中获取维度数据的步骤,还包括:

获取上一迭代版本存在的原漏洞以及所述当前迭代版本存在的当前漏洞;

将所述当前漏洞与所述原漏洞进行比对;

当所述当前漏洞与所述原漏洞相同时,则统计与所述原漏洞相同的所述当前漏洞的第二数量;

获取与所述选取逻辑对应的待评估数据的总数量;

根据所述第二数量以及所述选取逻辑对应的待评估数据的总数量,计算当前漏洞重现维度数据。

在其中一个实施例中,所述根据不同的所述维度数据的得分,计算所述待评估数据的当前打分值的步骤之后,还包括:

获取不同迭代版本的所述待评估数据的当前打分值,根据所述当前打分值计算不同迭代版本的所述待评估数据的打分平均值;

根据不同迭代版本的所述待评估数据的所述当前打分值与所述打分平均值计算打分方差;

根据所述打分平均值与所述打分方差生成质量显示图。

在其中一个实施例中,所述方法还包括:

当存在针对所述质量显示图的点击操作时,则获取所述点击操作对应的操作点的坐标;

查询与所述操作点的坐标对应的所述打分平均值与所述打分方差;

在所述操作点处显示所述打分平均值与所述打分方差。

一种软件开发质量评估装置,所述装置包括:

获取模块,用于获取软件当前迭代版本的待评估数据以及维度数据选取逻辑;

维度数据获取模块,用于根据所述选取逻辑从所述待评估数据中获取维度数据;

提取模块,用于提取所述维度数据的标识字段,获取与所述标识字段对应的维度数据的打分区间;

计算模块,用于根据所述获取的维度数据和所述打分区间计算所述维度数据的得分;

当前打分值计算模块,用于根据不同的所述维度数据的得分,计算所述待评估数据的当前打分值。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。

上述软件质量评估方法、装置、计算机设备和存储介质,可以获取软件当前迭代版本的待评估数据,从而获取待评估数据的不同维度数据的选取逻辑,从而获取到不同的维度数据,可以保证采用全面的维度数据评价软件质量,且根据不同维度数据的标识字段,从而计算不同维度数据的得分,保证不同维度数据的打分准确,进而根据不同维度数据的得分,计算待评估数据的当前打分值,从而可以根据得分值评价软件开发的质量,而不仅仅是记录当前的软件开发通过测试或未通过测试,从而可以直观且准确评估软件质量。

附图说明

图1为一个实施例中软件开发质量评估方法的应用场景图;

图2为一个实施例中软件开发质量评估方法的流程示意图;

图3为一个实施例中的质量显示图;

图4为一个实施例中软件开发质量评估装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的软件质量评估方法,可以应用于如图1所示的应用环境中。其中,评估平台102通过网络与软件开发服务104通过网络进行通信。评估平台102从软件开发服务104获取到软件当前迭代版本的待评估数据以及维度数据的选取逻辑,评估平台102根据维度数据的选取逻辑,从获取到的待评估数据中获取对应的维度数据,进而评估平台102提取维度数据对应的标识字段,并获取标识字段对应的维度数据的打分区间,进而根据获取到的维度数据以及打分区间,计算维度数据的得分,评估平台102根据不同的维度数据的得分,计算待评估数据的当前打分值。其中,评估平台102可以与服务104可以用独立的服务104或者是多个服务104组成的服务104集群来实现。

在一个实施例中,如图2所示,提供了一种软件开发质量评估方法,以该方法应用于图1中的评估平台为例进行说明,包括以下步骤:

S202:获取软件当前迭代版本的待评估数据以及维度数据选取逻辑。

具体地,软件当前迭代版本是指软件开发过程中,进行不断更新以达到最终的软件产品目标的过程中的软件版本,软件当前迭代版本可以是初次开发的软件,软件当前迭代版本可以是对软件漏洞进行修复的新版本的软件,软件当前迭代版本还可以是对软件进行新功能点的发得到的新版本的软件等。待评估数据是指在软件开发过程中出现的需要评估的软件相关数据,待评估数据可以包含软件的版本在进行迭代的过程中,修复的相关漏洞,新开发的或者修复的功能点等。维度数据是指待评估数据中的不同的评估标准的数据,根据不同的维度评估数据可以评估待评估数据的质量,从而可以得到当前软件迭代版本的质量,维度数据可以是在时间维度上的评估数据,可以是对软件中的漏洞修改次数维度上评估数据,可以是对软件中的漏洞或功能点在不同版本中重复修补维度上的评估数据,也可以是新引发的漏洞维度上的评估数据,也可以是将原漏洞引发维度上的评估数据等;例如,维度数据可以是的当前超时维度数据,维度数据可以是当前回退维度数据,可以是当前引发维度数据,可以是当前漏洞重现维度数据;也即,维度数据可以是story延期率、维度数据可以是bug不收敛率,维度数据可以是story打回率、维度数据可以是bug回退率,维度数据可以是bug引发率,维度数据可以是bug重启率。选取逻辑是指从待评估数据选取到不同的评估标准的数据对应的选取规则。

具体地,评估平台从服务器140获取到软件当前迭代版本的待评估数据,评估平台还从服务器140获取到维度数据的选取规则,从而选取对应的维度数据。可以是,评估平台从服务器140获取软件当前迭代版本中包含的漏洞的数据,以及包含的测试功能点的数据和修复的功能点的数据,进而,获取到包含在漏洞的数据、新增功能点的数据和修复的功能点的数据中的不同评估标准的数据对应的选取规则。例如,评估平台从服务器140获取到软件当前迭代版本中包含的story数据以及bug数据,进而,根据story数据以及bug数据获取对应的不同评估标准数据的选取逻辑。

S204:根据选取逻辑从待评估数据中获取维度数据。

具体地,评估平台遍历从服务器140获取到的待评估数据,进而评估平台根据对应的选取逻辑,对待评估数据进行相应的计算,从而获取与选取逻辑对应的维度数据。可以是,评估平台遍历服务器140获取到的漏洞的数据、新增功能点的数据和修复的功能点的数据,根据选取逻辑进行计算,从而获取到与选取逻辑对应的维度数据。例如,评估平台遍历从服务器140获取到的相关的story数据以及bug数据,进而根据选取逻辑,根据story数据以及bug数据进行计算,得到的不同的评估标准的数据,也即可以得到对软件中的漏洞修改次数维度上评估数据,或者得到对软件中的漏洞或功能点在不同版本中重复修补维度上的评估数据,或者得到新引发的漏洞维度上的评估数据等。

S206:提取维度数据的标识字段,获取预设的与标识字段对应的维度数据的打分区间。

具体地,标识字段是指添加到维度数据上标识的当前的评估标准的数据的类型标签,标识字段可以是表示时间维度的评估标准的数据的标签,标识字段可以是表示漏洞修改次数维度上的评估标准的数据的标签等,例如,标识字段可以“延期”,表示对应的时间维度上的评估标准的数据的标签,标识字段可以是“打回”,表示漏洞需要重新修复的评估标准的数据的标签,标识字段可以是“引发”,表示引发新的漏洞的评估标准的数据的标签,可以是“重启”,表示将原漏洞引发的评估标准的数据的标签等。打分区间是指不同的维度数据获得的具体得分的区间,根据维度数据落入的打分区间,可以获得维度数据的得分。具体地,评估平台提取维度数据的标识字段,进而获取根据标识字段,与预存的打分区间的名称进行匹配,当匹配成功时,则选取匹配成功的打分区间作为标识字段对应的维度数据的打分区间。例如,评估平台获取到维度数据,如获取到当前漏洞重现维度数据,也即bug重启率,进而提取该维度数据对应的标识字段为“重启”,从而将“重启”与预存的打分区间的名称的打分区间进行匹配,当匹配成功时,则获取到匹配成功的打分区间作为“重启”对应的漏洞重现维度数据对应的打分区间。采用同样得方法,可以获取到不同的维度数据的打分区间,在此不再举例赘述。

S208:根据获取的维度数据和打分区间计算维度数据的得分。

具体地,评估平台根据获取到的维度数据,与根据字段标识获取到的维度数据对应的打分区间,查询维度数据落入到的打分区间,根据落入到的打分区间,计算维度数据的得分。例如,评估平台获取到的story数据与bug数据,进而根据维度数据选取逻辑选取到的维度数据为当前漏洞重现维度数据,也即获取到的维度数据为bug重启率,进而根据标识字段“重启”选取到对应的打分区间,如打分区间为每1%为一个打分区间,总共为10个打分区间,且打分区间左区间为开区间,右区间为闭区间,也即第一打分区间(0,1%]、第二打分区间为(1%,2%],依次得到十个打分区间,当当前漏洞重现维度数据落入第一打分区间时,得分为9分,当当前漏洞重现维度数据落入第二打分区间时,得分为8分,进而依次减少,当当前漏洞重现维度数据超过10%时,当前漏洞重现维度数据对应的得分为0分,采用同样得方法,可以获取到不同的维度数据的得分,在此不再举例赘述。需要说明的是,打分区间根据不同的维度数据进行不同的选取,不限于上述的打分区间,打分区间还可以按照5%进行设定,打分区间也可以按照10%进行设定,且打分区间对应的分值可以根据不同的维度数据进行设定,例如,打分区间对应打分值数据可以是30、27、25、18、13等。

需要说明的是,还可以是,评估平台设定不同维度数据的总分,根据维度数据对应的打分区间,从不同维度数据的总分减少打分区间对应的分数,从而得到维度数据对应的得分。例如,选取到的维度数据为当前漏洞重现维度数据,也即是bug重启率,设定当前漏洞重新维度的总分为10分,进而,获取到当前漏洞重现维度数据的打分区间,如,1%为一个打分区间,计算得到的漏洞重现维度数据落入到对应的打分区间,则从总分减少打分区间对应的分数,如第一打分区间(0,1%]、第二打分区间为(1%,2%],当得到的漏洞重现维度数据落入第一打分区间(0,1%],则从总分中扣掉1分,为9分,当当前漏洞重现维度数据落入第二打分区间,则从总分中扣掉2分,为8分,进而得到维度数据对应的得分。进而需要说明的是,不同维度数据的总分不限于此,且不同维度数据的打分区间不限于此,不同打分区间对应的得分不限于此。总分可以根据不同的维度数据进行设定,如总分可以设定为30分、25分、15分等,打分区间对应的也可以进行设定,如设定为(0,10%],(0,5%]等,且,打分区间对应的分数,可以为,落入到第一打分区间,总分减2分,落入到第二打分区间,总分减5分等。

S210:根据维度数据的得分,计算待评估数据的当前打分值。

具体地,当前打分值是指待评估数据得到的分数,根据当前打分值,可以评估待评估数据对应的软件当前迭代版本的质量。当评估平台得到不同维度数据的得分,进而计算不同维度的维度数据得分的总和,从而得到待评估数据的的得分即为当前打分值。例如,评估平台得到不同的维度数据,例如当前超时维度数据、当前回退维度数据、当前引发维度数据、当前漏洞重现维度数据,从而对应有六小类维度数据,分别为story延期率、bug不收敛率、story打回率、bug回退率、bug引发率与bug重启率,从而得到不同维度数据对应的得分,如story延期率的得分为27分,bug不收敛率的得分为10分、story打回率的得分为25分、bug回退率的得分为11分、bug引发率的得分9分,bug重启率的得分为10分,则计算不同的维度数据的得分,从而计算不同维度的维度数据得分的总和为92分,从而当前待评估数据对应的软件当前迭代版本对应的得分为92分,则可以采用当前得分对软件当前迭代版本进行评估。

需要说明的是,本实施例中,根据测试环境不同,以及对不同的软件迭代版本进行评估,可以获取不同的维度数据,也即可以采用计算多个维度数据的得分,从而对软件当前迭代版本进行评估,例如,采用多个维度数据,分别为story延期率、bug不收敛率、story打回率、bug回退率,bug引发率,bug重启率,从而计算每个维度数据的得分,进而根据得分,对软件当前跌迭代版本进行评估,也可以根据不同的软件当前迭代版本,选取一个维度数据并计算得分,从而对软件当前迭代版本进行评估,如仅上述维度数据中的任意一个等,或选取上述维度数据中的任意几个等。

本实施例中,可以获取软件当前迭代版本的待评估数据,从而获取待评估数据的不同维度数据的选取逻辑,从而获取到不同的维度数据,可以采用不同维度的数据,进行评估软件当前迭代版本的待评估数据,且根据不同维度数据的标识字段,计算不同维度数的得分,保证不同维度数据的得分准确,进而根据不同维度数据的得分,计算待评估数据的当前打分值,从而可以根据得分值评价软件开发的质量,从而可以直观且准确评估软件质量。

在其中一个实施例中,根据选取逻辑从待评估数据中获取维度数据的步骤,包括:获取选取逻辑对应的待评估数据的标准提交时间,并获取选取逻辑对应的待评估数据的实际提交时间;统计实际提交时间超过标准提交时间的选取逻辑对应的待评估数据的超时数量;统计选取逻辑对应的待评估数据的总数量;根据超时数量与总数量计算当前超时维度数据。

具体地,标准提交时间是指软件开发过程中,对待评估数据进行提交的从而对待评估数据进行测试的规定时间,可以是,标准提交时间为软件的版本在进行迭代的过程中,修复的相关漏洞、新开发的或修复的功能点提交进行测试的规定的时间,例如,标准提交时间可以为具体的日期,可以是具体日期中的具体时间,如2018年1月1日,也可以是2018年1月1日14点。实际提交时间是指软件开发过程中,待评估数据进行提交的实际时间,可以是,实际提交时间为软件的版本在进行迭代的过程中,修复的相关漏洞、新开发的或修复的功能点提交进行测试的实际的时间,例如,实际提交时间可以与标准提交时间对应的为具体的日期,可以与标准提交时间对应的为具体日期中的具体时间,如2018年1月2日,也可以是2018年1月2日14点。超时数量是指实际提交时间超过标准提交时间的待评估数据的数量。当前超时维度数据是指评价待评估数据中的超时率数据,当前超时维度数据可以是修复漏洞的超时率数据,或者是进行修复功能点或者开发新功能点的超时率的数据,例如,当前超时维度数据可以是Bug不收敛率,当前超时维度数据可以是story延时率。

具体地,评估平台获取维度数据的选取逻辑,进而评估平台根据获取到的选取逻辑,选取与选取逻辑对应的待评估数据的提交给测试线程的标准提交时间,获取与选取逻辑对应的待评估数据的实际提交时间,当获取到与选取逻辑对应的待评估数据的实际提交时间,统计实际提交时间超过标准提交时间的与选取逻辑对应的待评估数据的超时数据量,进而评估平台统计与选取逻辑对应的待评估数据的总数量,计算与选取逻辑对应的待评估数据的超时数量与选取逻辑对应的待评估数据的总数量,该比值为当前超时维度数据。例如,当评估平台获取到的选取逻辑为从待评估数据中选取修复或新开发的功能点对应的评估超时的维度数据时,则选取story数据对应的超时的维度数据,统计提交的story数据提交给测试线程的标准时间,进而获取story数据的实际提交时间,当获取到story数据的实际提交时间时,对比story数据的标准提交时间,统计实际提交时间超过标准提交时间的story数据的超时数量,进而统计story数据的总数量,将story数据的超时数量与story数据的总数量进行比值计算,该比值即当前超时维度数据,该当前超时维度数据对应的为story延期率。需要说明的是,当评估平台获取到的选取逻辑为从待评估数据中选取修复的漏洞对应的评估超时的维度数据时,也可采用上述方法进行计算,得到当前超时维度数据,即为bug不收敛率,bug不收敛率是指修复漏洞未按时间修复,从而未按照预定的时间提交测试。

本实施例中,可以根据选取逻辑,获取到待评估数据的标准提交时间以及实际提交时间,根据实际提交时间超过标准提交时间的选取逻辑对应的待评估数据的超时数量以及选取逻辑对应的待评估数据的总数量,进而根据超时数据量与待评估数据的总数量计算当前超时维度数据,计算简单,且选取对应的方法获取当前超时维度数据,适用性强。

在其中一个实施例中,根据选取逻辑从待评估数据中获取维度数据的步骤,还包括:获取选取逻辑对应的待评估数据的提交次数以及回退次数;根据提交次数与回退次数计算当前回退维度数据。

具体地,回退次数是指待评估数据提交到测试线程时由于与通过标准未匹配则进行退回重新处理的次数,可以是,回退次数可以是指修复的漏洞的退回重新修复的次数,回退次数可以是修复功能点的退回重新进行重新修复的次数,回退次数也可以是开发新的功能点的退回重新进行开发的次数,例如,回退次数可以是修复bug时退回重新修复的次数,可以是退回重新开发story的次数等。当前回退维度数据是指评价待评估数据中的回退率的数据,当前回退维度数据是指修复漏洞的回退率数据,或者是进行修复功能点的回退率数,也或者为开发新功能点的回退率数据,例如,当前回退维度数据可以是story打回率,可以是bug回退率。

具体地,评估平台获取维度数据的选取逻辑,进而评估平台根据获取到的选取逻辑,选取与选取逻辑对应的待评估数据提交到测试线程的提交次数,进而统计提交到测试线程中,被退回的选取逻辑对应的待评估数据的退回次数,评估平台计算退回次数与提交次数的比值,该比值为当前回退维度数据。例如,当评估平台获取到的选取逻辑为从待评估数据中选取修复的漏洞对应的评估被回退的维度数据时,则选取bug数据对应的被回退的维度数据,统计将bug数据提交给测试线程的提交次数,进而再统计当提交的bug数据提交到测试线程中时,被退回的bug数据的次数,进而计算被退回的bug数据的次数与提交的bug数据的次数的比值,该比值即为当前回退维度数据,也即当前回退维度数据对应的为bug回退率。需要说明的是,当待评估数据对应的选取逻辑为从待评估数据中选取开发或修复的功能点对应的评估被回退的维度数据时,则选取story数据对应的被回退的维度数据,进而采取上述方法计算story数据对应的当前回退维度数据,该当前回退维度数据可以是story打回率。

本实施例中,只需统计选取逻辑对应的待评估数据的回退次数与提交次数,即可计算得到当前回退维度数据,计算方式简单,且选择实用的方法进行计算,适用性强。

在其中一个实施例中,根据选取逻辑从待评估数据中获取维度数据的步骤,还可以包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞;将当前漏洞与原漏洞进行比对;当当前漏洞与原漏洞存在不同时,则统计与原漏洞不同的当前漏洞的第一数量;获取与选取逻辑对应的待评估数据的总数量;根据第一数量、原漏洞的数量以及与选取逻辑对应的待评估数据的总数量,计算当前引发维度数据。

具体地,原漏洞是指在软件上一迭代版本的更新中,出现的待修复的缺陷或者编码时产生的错误,例如,原漏洞是指软件上一迭代版本中存在的bug。当前漏洞是指当前软件迭代版本的更新中,出现的待修复的缺陷或者编码时产生的错误,例如,当前漏洞是指软件的当前迭代版本中存在的bug。第一数量是指原漏洞不同的当前漏洞的数量。当前引发维度数据是指修复漏洞时引发新漏洞的引发率数据,例如,当前引发维度数据可以是bug引发率。

具体地,评估平台根据获取到的选取逻辑,选取与选取逻辑对应待评估数据,评估平台获取软件上一迭代版本中的原漏洞与软件当前迭代版本中出现的当前漏洞,进而将原漏洞与当前漏洞进行比对,可以是,将出现的当前漏洞的漏洞描述与原漏洞的漏洞描述进行比对,进而,当当前漏洞与原漏洞不同时,则统计与原漏洞不同的当前漏洞的数量,进而选取与选取逻辑对应的待评估数据的总数量,先计算选取逻辑对应的待评估数据的总数量与当前漏洞数量第一数量的差值,进而计算原漏洞的数量与所得的差值的比值,得到的比值为当前引发维度数据。例如,当评估平台获取到的选取逻辑为从待评估数据中选取修复的漏洞对应的评估引发新漏洞的维度数据时,则评估平台先获取软件上一迭代版本中的原bug,并获取软件迭代版本中的当前bug,进而,将原bug与当前bug进行比对,如将原bug与当前bug出现的漏洞描述进行比对,当比对得到原bug与当前bug不同时,则统计与原bug不同的当前bug的数量,进而根据选取逻辑,统计待评估数据中的修复的漏洞对应的总数量,进而计算修复的漏洞对应的总数量与当前bug数量的差值,进而计算原bug数量与得到的差值的比值该比值即为当前引发维度数据,也即是bug引发率。

本实施例中,当评估平台比对原漏洞数与当前漏洞数不同时,则可以根据原漏洞数量,与原漏洞不同的当前漏洞的第一数量以及与选取逻辑对应的待评估数据的总数量,从而准确计算出当前引发维度数据,计算准确,且选取对应的方法获取当前引发维度数据,适用性强。

在其中一个实施例中,根据选取逻辑从待评估数据中获取维度数据的步骤,还包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞;将当前漏洞与原漏洞进行比对;当当前漏洞与原漏洞相同时,则统计与原漏洞相同的当前漏洞的第二数量;获取与选取逻辑对应的待评估数据的总数量;根据第二数量以及待评估数据的总数量,计算当前漏洞重现维度数据。

具体地,第二数量是指与原漏洞相同的当前漏洞的数量,当前漏洞重现维度数据是指软件上一迭代版本中出现的漏洞在软件当前迭代版本中再次出现该漏洞的重现率数据,例如,当前漏洞重现维度数据可以是bug reopen率。

具体地,评估平台根据获取到的选取逻辑,选取与选取逻辑对应待评估数据,评估平台获取软件上一迭代版本中的原漏洞与软件当前迭代版本中出现的当前漏洞,进而将原漏洞与当前漏洞进行比对,可以是,将出现的当前漏洞的漏洞描述与原漏洞的漏洞描述进行比对,进而,当当前漏洞与原漏洞相同时,则统计与原漏洞相同的当前漏洞的数量,进而选取与选取逻辑对应的待评估数据的总数量,计算与原漏洞相同的当前漏洞的数量和选取逻辑对应的待评估数据的总数量的比值,得到的比值为当前漏洞重现维度数据。例如,当评估平台获取到的选取逻辑为从待评估数据中选取修复的漏洞对应的评估出现与原漏洞相同的新漏洞的维度数据时,则评估平台先获取软件上一迭代版本中的原bug,并获取软件迭代版本中的当前bug,进而,将原bug与当前bug进行比对,如将原bug与当前bug出现的漏洞描述进行比对,当比对得到原bug与当前bug相同时,则统计与原bug相同的当前bug的数量,进而根据选取逻辑,统计待评估数据中的修复的漏洞对应的总数量,进而计算与原bug相同的当前bug的数量与修复的漏洞对应的总数量与当前bug数量的比值该比值,即为当前漏洞重现维度数据,也即是bug reopen率。

本实施例中,当评估平台比对原漏洞数与当前漏洞数相同时,则可以根据与原漏洞相同的当前漏洞的第一数量以及与选取逻辑对应的待评估数据的总数量,从而准确计算出当前漏洞重现维度数据,计算准确,且选取对应的方法获取当前漏洞重现维度数据,适用性强。

在其中一个实施例中,根据不同的维度数据的得分,计算待评估数据的当前打分值的步骤之后,还可以包括:获取不同迭代版本的待评估数据的当前打分值,根据当前打分值计算不同迭代版本的待评估数据的打分平均值;根据不同迭代版本的待评估数据的当前打分值与打分平均值计算打分方差;根据打分平均值与打分方差生成质量显示图。

具体地,打分平均值是指不同迭代版本的待评估数据的当前打分值计算得到的平均值;打分方差是指根据不同迭代版本的待评估数据的当前打分值以及当前平均值,计算得到的方差。质量显示图是指以打分平均值为横轴,以打分方差为纵轴的二维图形,质量显示图可以比较不同的软件在迭代过程中的质量。

具体地,评估平台获取到不同迭代版本的待评估数据的当前打分值,进而计算当前打分值的总和,获取不同迭代版本的数量,计算当前打分值的总和与不同迭代版本的数量的比值,得到当前待评估数据的打分平均值,进而,根据得到的打分平均值,不同迭代版本的数量以及不同迭代版本的待评估数据的当前打分值,计算打分方差,进而以打分平均值为横轴,打分方差为纵轴,生成相应的质量显示图,且可以以相同的方式,计算不同的项目的迭代版本的待评估数据的打分平均值与打分方差,从而生成质量显示图,在质量显示图中,当打分平均值越大,则质量越好,打分方差越小,波动越小,则质量越稳定,从而评估不同项目的质量。例如,可以参见图3,提供一待评估项目的质量显示图,A点表示项目A,B点表示项目B,评估平台获取到A项目中不同迭代版本的待评估数据的当前打分值,进而计算当前打分值的综合,获取不同迭代版本的数量,计算当前打分值的综合与不同迭代版本的数量的比值,得到当前待评估数据的打分平均值,进而,根据得到的打分平均值,不同迭代版本的数量以及不同迭代版本的待评估数据的当前打分值,计算打分方差,打分方差可以采用如下公式进行计算:

其中,S为打分方差,X为A项目的不同迭代版本的待评估数据的当前打分值,μ为当前待评估数据的打分平均值,N为不同迭代版本的数量。当计算得到打分平均值与打分方差时,则以打分平均值为横轴,打分方差为纵轴,进而将项目A对应的值显示在质量显示图上。对项目B采取相同的计算方式,进而将项目B对应的值显示在质量显示图上,当打分平均值越大,则质量越好,进而打分方差越大,则波动越小,从而可以得到项目A质量好,波动小,项目B的质量差,波动大。

本实施例中,可以计算不同迭代版本的待评估数据的打分平均值与打分方差,从而从质量显示图上直观显示软件所有迭代版本的质量,且可以计算不同项目的对应的软件的所有迭代版本的质量,进而可以方便直观比较不同的软件的质量。

在其中一个实施例中,上述方法还可以包括:当存在针对质量显示图的点击操作时,则获取点击操作对应的操作点的坐标;查询与操作点的坐标对应的打分平均值与打分方差;在所述操作点处显示所述打分平均值与所述打分方差。

具体地,点击操作是指用户在评估平台的显示界面上触发的手势操作,如可以是点击质量显示图中的显示点,可以是在质量显示图中的显示点处滑动一下,也可以是在质量显示图中的显示点处点击两下。其中,当评估平台得到质量显示图时,检测到质量显示图上有点击操作,也即有用户触发的手势操作,则获取操作点的坐标,进而查询该操作点的坐标对应的打分平均值与打分方差,也即查询该坐标中的横坐标值与纵坐标值,将查询到的横坐标值与纵坐标值显示在评估平台的显示界面上。例如,可以继续参见图3,当评估平台检测到在质量显示图上的A点处有点击操作时,则获取A点的坐标,进而查询该坐标中的横坐标与纵坐标得到打分平均值与打分方差,将打分平均值与打分方差进行显示,A点的打分平均值为30,打分方差为5。同样的操作可以显示B点处对应的打分平均值与打分方差。

本实施例中,当存在针对质量显示图的点击操作时,获取点击操作对应的操作点的坐标,进而查询操作点的坐标对应的打分平均值与打分方差,请将打分平均值与打分方差进行显示,可以直观看到不同的数据,增强适用性。

应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种软件开发质量评估装置400,包括:获取模块410、维度数据获取模块420、提取模块430、计算模块440和当前打分值计算模块450,其中:

获取模块,用于获取软件当前迭代版本的待评估数据以及维度数据选取逻辑。

维度数据获取模块,用于根据选取逻辑从待评估数据中获取维度数据。

提取模块,用于提取维度数据的标识字段,获取预设的与标识字段对应的维度数据的打分区间。

计算模块,用于根据获取的维度数据和打分区间计算维度数据的得分。

当前打分值计算模块,用于根据维度数据的得分,计算待评估数据的当前打分值。

在其中一个实施例中,维度数据获取模块420,可以包括:

时间获取单元,用于获取选取逻辑对应的待评估数据的标准提交时间,并获取选取逻辑对应的待评估数据的实际提交时间。

统计单元,用于统计实际提交时间超过标准提交时间的选取逻辑对应的待评估数据的超时数量。

总数量统计单元,用于统计选取逻辑对应的待评估数据的总数量。

当前超时维度数据计算单元,用于根据超时数量与总数量计算当前超时维度数据。

在其中一个实施例中,维度数据获取模块420,还可以包括:

回退次数获取单元,用于获取选取逻辑对应的待评估数据的提交次数以及回退次数。

当前回退维度计算单元,用于根据提交次数与回退次数计算当前回退维度数据。

在其中一个实施例中,维度数据获取模块420,还可以包括:

第一当前漏洞获取单元,用于获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。

第一比对单元,用于将当前漏洞与原漏洞进行比对。

第一数量获取单元,用于当当前漏洞与原漏洞不同时,则统计与原漏洞存在不同的当前漏洞的第一数量。

第一总数量获取单元,用于获取与选取逻辑对应的待评估数据的总数量。

当前引发维度数据计算单元,用于根据第一数量、原漏洞的数量以及选取逻辑对应的待评估数据的总数量,计算当前引发维度数据。

在其中一个实施例中,维度数据获取模块420,还可以包括:

第二当前漏洞获取单元,用于获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。

第二比对单元将当前漏洞与原漏洞进行比对。

第二数量获取单元,用于当当前漏洞与原漏洞相同时,则统计与原漏洞相同的当前漏洞的第二数量。

第二总数量获取单元,用于获取与选取逻辑对应的待评估数据的总数量。

当前漏洞重现维度数据计算单元,用于根据第二数量以及选取逻辑对应的待评估数据的总数量,计算当前漏洞重现维度数据。

在其中一个实施例中,软件开发质量评估装置400,还可以包括:

打分平均值计算模块,用于获取不同迭代版本的待评估数据的当前打分值,根据当前打分值计算不同迭代版本的待评估数据的打分平均值。

打分方差计算模块,用于根据不同迭代版本的待评估数据的当前打分值与打分平均值计算打分方差。

第一显示模块,用于根据打分平均值与打分方差生成质量显示图。

在其中一个实施例中,软件开发质量评估装置400,还可以包括:

坐标获取模块,用于当存在针对质量显示图的点击操作时,则获取点击操作对应的操作点的坐标。

查询模块,用于查询与操作点的坐标对应的打分平均值与打分方差。

第二显示模块,用于在操作点处显示打分平均值与打分方差。

关于软件开发质量评估装置的具体限定可以参见上文中对于软件开发质量评估方法的限定,在此不再赘述。上述软件开发质量评估装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是评估平台102,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储软件开发质量评估数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种软件开发质量评估方法。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取软件当前迭代版本的待评估数据以及维度数据选取逻辑。根据选取逻辑从待评估数据中获取维度数据。提取维度数据的标识字段,获取预设的与标识字段对应的维度数据的打分区间。根据获取的维度数据和打分区间计算维度数据的得分。根据维度数据的得分,计算待评估数据的当前打分值。

在其中一个实施例中,处理器执行计算机程序时实现根据选取逻辑从待评估数据中获取维度数据的步骤,可以包括:获取选取逻辑对应的待评估数据的标准提交时间,并获取选取逻辑对应的待评估数据的实际提交时间。统计实际提交时间超过标准提交时间的选取逻辑对应的待评估数据的超时数量。统计选取逻辑对应的待评估数据的总数量。根据超时数量与总数量计算当前超时维度数据。

在其中一个实施例中,处理器执行计算机程序时实现待评估数据中获取维度数据的步骤,还可以包括:获取选取逻辑对应的待评估数据的提交次数以及回退次数。根据提交次数与回退次数计算当前回退维度数据。

在其中一个实施例中,处理器执行计算机程序时实现根据选取逻辑从待评估数据中获取维度数据的步骤,还可以包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。将当前漏洞与原漏洞进行比对。当当前漏洞与原漏洞存在不同时,则统计与原漏洞存在不同的当前漏洞的第一数量。获取与所述选取逻辑对应的待评估数据的总数量。根据第一数量、原漏洞的数量以及选取逻辑对应的待评估数据的总数量,计算当前引发维度数据。

在其中一个实施例中,处理器执行计算机程序时实现根据选取逻辑从待评估数据中获取维度数据的步骤,还可以包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。将当前漏洞与原漏洞进行比对。当当前漏洞与原漏洞相同时,则统计与原漏洞相同的当前漏洞的第二数量。获取与选取逻辑对应的待评估数据的总数量。根据第二数量以及选取逻辑对应的待评估数据的总数量,计算当前漏洞重现维度数据。

在其中一个实施例中,处理器执行计算机程序时实现根据不同的维度数据的得分,计算待评估数据的当前打分值的步骤之后,还可以包括:获取不同迭代版本的待评估数据的当前打分值,根据当前打分值计算不同迭代版本的待评估数据的打分平均值。根据不同迭代版本的待评估数据的当前打分值与打分平均值计算打分方差。根据打分平均值与打分方差生成质量显示图。

在其中一个实施例中,处理器执行计算机程序时还可以实现:当存在针对质量显示图的点击操作时,则获取点击操作对应的操作点的坐标。查询与操作点的坐标对应的打分平均值与打分方差。在操作点处显示打分平均值与打分方差。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取软件当前迭代版本的待评估数据以及维度数据选取逻辑。根据选取逻辑从待评估数据中获取维度数据。提取维度数据的标识字段,获取预设的与标识字段对应的维度数据的打分区间。根据获取的维度数据和打分区间计算维度数据的得分。根据维度数据的得分,计算待评估数据的当前打分值。

在其中一个实施例中,计算机程序被处理器执行时实现根据选取逻辑从待评估数据中获取维度数据的步骤,可以包括:获取选取逻辑对应的待评估数据的标准提交时间,并获取选取逻辑对应的待评估数据的实际提交时间。统计实际提交时间超过标准提交时间的选取逻辑对应的待评估数据的超时数量。统计选取逻辑对应的待评估数据的总数量。根据超时数量与总数量计算当前超时维度数据。

在其中一个实施例中,计算机程序被处理器执行时实现待评估数据中获取维度数据的步骤,还可以包括:获取选取逻辑对应的待评估数据的提交次数以及回退次数。根据提交次数与回退次数计算当前回退维度数据。

在其中一个实施例中,计算机程序被处理器执行时实现根据选取逻辑从待评估数据中获取维度数据的步骤,还可以包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。将当前漏洞与原漏洞进行比对。当当前漏洞与原漏洞存在不同时,则统计与原漏洞存在不同的当前漏洞的第一数量。获取与所述选取逻辑对应的待评估数据的总数量。根据第一数量、原漏洞的数量以及选取逻辑对应的待评估数据的总数量,计算当前引发维度数据。

在其中一个实施例中,计算机程序被处理器执行时实现根据选取逻辑从待评估数据中获取维度数据的步骤,还可以包括:获取上一迭代版本存在的原漏洞以及当前迭代版本存在的当前漏洞。将当前漏洞与原漏洞进行比对。当当前漏洞与原漏洞相同时,则统计与原漏洞相同的当前漏洞的第二数量。获取与选取逻辑对应的待评估数据的总数量。根据第二数量以及选取逻辑对应的待评估数据的总数量,计算当前漏洞重现维度数据。

在其中一个实施例中,计算机程序被处理器执行时实现根据不同的维度数据的得分,计算待评估数据的当前打分值的步骤之后,还可以包括:获取不同迭代版本的待评估数据的当前打分值,根据当前打分值计算不同迭代版本的待评估数据的打分平均值。根据不同迭代版本的待评估数据的当前打分值与打分平均值计算打分方差。根据打分平均值与打分方差生成质量显示图。

在其中一个实施例中,计算机程序被处理器执行时还可以实现:当存在针对质量显示图的点击操作时,则获取点击操作对应的操作点的坐标。查询与操作点的坐标对应的打分平均值与打分方差。在操作点处显示打分平均值与打分方差。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1