掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本发明涉及软件开发测试领域,具体涉及一种软件开发测试质量度量方法和系统。

背景技术

当前,各大IT公司内部为了提高对各研发项目的管理控制以及提高软件质量水平,越来越多的关注系统质量度量。系统质量一般由设计、开发、测试、运维等多方面保证,其中开发测试的质量对系统的质量起到了决定性的作用。高质量的开发可以有效的减少系统的缺陷,高质量的测试可以在系统发布上线前发现更多的缺陷,确保不会带病上线,高质量的开发以及高质量的测试二者缺一不可。

一般来说,度量可以针对开发测试人员的工作量进行,比如提交代码量,提交代码频率、发现缺陷数量等等。这种度量较为直观,也较为简单,并不能从这些简单的度量中反应开发测试的质量,因此需要更为体系化、科学化的方法对开发测试质量进行有效的度量。度量不是目的,度量的目的主要是为了反映开发测试质量,帮助管理者把控系统质量,帮助开发测试人员改进工作方式方法,从而进一步提高系统质量。

对于开发测试来说,缺陷是连接两者的纽带,缺陷的多少不仅可以反映开发的质量,也可以反映出测试的质量。因此,通过对缺陷数据的分析可以有效的对开发测试质量进行度量。

发明内容

以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。

本发明的目的在于解决上述问题,提供了一种软件开发测试质量度量方法和系统,通过对缺陷数据的分析有效的对开发测试质量进行度量。

本发明的技术方案为:本发明揭示了一种软件开发测试质量度量方法,方法包括:

步骤1:对缺陷数据进行收集并做初步处理;

步骤2:将缺陷、人员、部门以及系统信息在内的数据同步到数据分析平台或分析工具进行汇总;

步骤3:对缺陷数据进行清洗整理;

步骤4:对缺陷数据进行分析;

步骤5:对分析后的数据进行度量数据展示。

根据本发明的软件开发测试质量度量方法的一实施例,步骤1进一步包括:

通过对接缺陷管理平台对外接口来采集缺陷数据,并将采集到的缺陷数据存入数据库,其中每次采集缺陷数据时先备份历史数据,再将历史数据全部清除,最后将采集到的缺陷数据全量入库保存。

根据本发明的软件开发测试质量度量方法的一实施例,步骤2进一步包括:

通过数据库管理工具或者插件,读取汇总所需数据,用于后续的数据分析,其中所需的数据包括缺陷数据、人员数据、部门数据、系统信息数据,其中人员数据以及部门数据用于确定缺陷归属人员以及部门,用于针对不同的部门进行数据分析,系统信息数据包括系统级别以及系统部门归属在内的信息,以便对不同级别的系统进行分析。

根据本发明的软件开发测试质量度量方法的一实施例,步骤3进一步包括:

过滤掉被否决缺陷、重复缺陷、无法复现缺陷在内的无效缺陷,并区分出线上缺陷以及开发测试缺陷,其中线上缺陷为系统上线后产生的缺陷,开发测试缺陷为开发测试阶段发现的缺陷。

根据本发明的软件开发测试质量度量方法的一实施例,步骤4中的分析进一步包括整体缺陷分析、缺陷探测率计算、缺陷关闭率计算,其中:

整体缺陷分析包括开发测试、线上缺陷数量走势,不同级别缺陷统计,近两年缺陷数据比对,每月缺陷数据汇总;

缺陷探测率P的计算公式为:

其中D为开发测试缺陷数量,O为线上缺陷数量;

缺陷关闭率R的计算公式为:

其中C为已关闭的缺陷,U为未关闭的缺陷。

根据本发明的软件开发测试质量度量方法的一实施例,步骤5进一步包括:

基于经步骤4处理后的数据生成报表,然后通过展板进行图表展示,并且根据不同的需求定制不同的展板,并提供对外展示、查询接口,以对不同的用户分配不同的权限,根据用户的权限展示对应的度量结果。

本发明还揭示了一种软件开发测试质量度量系统,系统包括:

数据收集模块,用于对缺陷数据进行收集并做初步处理;

数据汇总模块,用于将缺陷、人员、部门以及系统信息在内的数据同步到数据分析平台或分析工具进行汇总;

数据清洗模块,用于对缺陷数据进行清洗整理;

数据分析模块,用于对缺陷数据进行分析;

数据展示模块,用于对分析后的数据进行度量数据展示。

根据本发明的软件开发测试质量度量系统的一实施例,数据收集模块进一步配置为:

通过对接缺陷管理平台对外接口来采集缺陷数据,并将采集到的缺陷数据存入数据库,其中每次采集缺陷数据时先备份历史数据,再将历史数据全部清除,最后将采集到的缺陷数据全量入库保存。

根据本发明的软件开发测试质量度量系统的一实施例,数据汇总模块进一步配置为:

通过数据库管理工具或者插件,读取汇总所需数据,用于后续的数据分析,其中所需的数据包括缺陷数据、人员数据、部门数据、系统信息数据,其中人员数据以及部门数据用于确定缺陷归属人员以及部门,用于针对不同的部门进行数据分析,系统信息数据包括系统级别以及系统部门归属在内的信息,以便对不同级别的系统进行分析。

根据本发明的软件开发测试质量度量系统的一实施例,数据清洗模块进一步配置为:

过滤掉被否决缺陷、重复缺陷、无法复现缺陷在内的无效缺陷,并区分出线上缺陷以及开发测试缺陷,其中线上缺陷为系统上线后产生的缺陷,开发测试缺陷为开发测试阶段发现的缺陷。

根据本发明的软件开发测试质量度量系统的一实施例,数据分析模块中的分析进一步包括整体缺陷分析单元、缺陷探测率计算单元、缺陷关闭率计算单元,其中:

整体缺陷分析单元配置为进行开发测试、线上缺陷数量走势,不同级别缺陷统计,近两年缺陷数据比对,每月缺陷数据汇总;

缺陷探测率计算单元配置为计算缺陷探测率P:

其中D为开发测试缺陷数量,O为线上缺陷数量;

缺陷关闭率计算单元配置为计算缺陷关闭率R:

其中C为已关闭的缺陷,U为未关闭的缺陷。

根据本发明的软件开发测试质量度量系统的一实施例,数据展示模块进一步配置为:

基于经数据分析模块处理后的数据生成报表,然后通过展板进行图表展示,并且根据不同的需求定制不同的展板,并提供对外展示、查询接口,以对不同的用户分配不同的权限,根据用户的权限展示对应的度量结果。

本发明对比现有技术有如下的有益效果:一方面,本发明解决了不同应用系统之间数据隔离的问题,将缺陷管理平台、系统信息管理平台等不同数据源的数据进行整合处理,不仅可以完善统计分析数据,而且可以根据不同的需求按照不同的维度进行度量分析。另一方面,本发明通过整体分析、缺陷探测率计算、缺陷关闭率三个维度对开发测试质量进行度量,避免单一指标影响度量效果,用户可通过不同维度的度量对开发测试质量进行全局分析、把控。再一方面,本发明结合权限管理,对不同的用户展示不同的度量分析结果,从用户关注内容的角度出发,根据不同用户的需求制定个性化的度量统计分析。

附图说明

在结合以下附图阅读本公开的实施例的详细描述之后,能够更好地理解本发明的上述特征和优点。在附图中,各组件不一定是按比例绘制,并且具有类似的相关特性或特征的组件可能具有相同或相近的附图标记。

图1示出了本发明的软件开发测试质量度量方法的一实施例的流程图。

图2示出了本发明的软件开发测试质量度量系统的一实施例的原理图。

具体实施方式

以下结合附图和具体实施例对本发明作详细描述。注意,以下结合附图和具体实施例描述的诸方面仅是示例性的,而不应被理解为对本发明的保护范围进行任何限制。

图1示出了本发明的软件开发测试质量度量方法的一实施例的流程。请参见图1,本实施例的方法的实施步骤详述如下。

步骤1:对缺陷数据进行收集并做初步处理。

该步骤的具体处理为:通过对接缺陷管理平台对外接口来采集缺陷数据,并将采集到的缺陷数据存入数据库。由于缺陷数据存在状态、人员等数据变动的情况,因此,为了确保数据准确性,每次采集数据时第一步会备份历史数据,第二步会将历史数据全部清除,然后将采集到的缺陷数据全量入库保存。

步骤2:将缺陷、人员、部门以及系统信息在内的数据同步到数据分析平台或分析工具进行汇总。

该步骤的具体处理为:通过数据库管理工具或者插件,读取汇总所需数据,用于后续数据分析。上述所需的数据主要包括缺陷数据、人员数据、部门数据、系统信息数据。人员以及部门数据用于确定缺陷归属人员以及部门,用于针对不同的部门进行数据分析。系统信息主要包括系统级别以及系统部门归属等信息,可以方便对不同级别的系统进行分析。

步骤3:对缺陷数据进行清洗整理。

该步骤的具体处理为:数据清洗是指过滤掉被否决缺陷、重复缺陷、无法复现缺陷等无效缺陷,并区分出线上缺陷以及开发测试缺陷。其中线上缺陷为系统上线后产生的缺陷,开发测试缺陷为开发测试阶段发现的缺陷。线上缺陷的多少可以反映测试的质量,线上缺陷越多说明测试质量较差,导致较多的缺陷逃逸到线上系统。开发测试缺陷的多少可以反映开发的质量。

步骤4:对缺陷数据进行分析。

该步骤的具体处理主要包括3个部分,包括整体缺陷分析、缺陷探测率计算、缺陷关闭率计算,以下分别进行说明。

4.1)整体缺陷分析主要包括开发测试、线上缺陷数量走势,不同级别缺陷统计,近两年缺陷数据比对,每月缺陷数据汇总(开发测试缺陷数量、线上缺陷数量、未关闭缺陷数量、遗留缺陷数量)。该部分主要对缺陷数据进行汇总展示,形成缺陷整体概览,通过对缺陷整体数据的分析,可以从一定程度上反映出当月、当年整体开发测试质量。缺陷数量可以一定程度上反映开发质量的好坏;缺陷关闭情况、遗留缺陷情况可以反映出开发修复缺陷的能力。整体分析可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

4.2)缺陷探测率计算方法如公式1:

其中D为开发测试缺陷数量,O为线上缺陷数量。P数值越高,开发测试缺陷占总缺陷的比例越高,线上系统缺陷占比越低,说明测试阶段发现了大部分缺陷,线上系统的质量越稳定,测试质量越高。缺陷探测率计算可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

4.3)缺陷关闭率计算方法如公式2:

其中,C表示已关闭的缺陷,U表示未关闭的缺陷。当开发修复缺陷,测试确认缺陷已修复之后,表示该缺陷可关闭。缺陷关闭率越高,说明开发的修复质量越好,遗留的缺陷越少,上线系统的质量越高。缺陷关闭率计算可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

步骤5:对缺陷数据分析后的结果进行度量数据展示。

该步骤的具体处理为:基于经步骤4处理后的数据生成报表,然后通过展板进行图表展示,并且根据不同的需求定制不同的展板,比如各部门度量展板、各系统度量展板等,并提供对外展示、查询接口,可以对不同的用户分配不同的权限,根据用户的权限展示对应的度量结果,如普通用户可以查看汇总统计数据,管理者可以查看度量详细数据以及不同维度的比对数据。

图2示出了本发明的软件开发测试质量度量系统的一实施例的原理。请参见图2,本实施例的系统包括:数据收集模块、数据汇总模块、数据清洗模块、数据分析模块以及数据展示模块。

数据收集模块用于对缺陷数据进行收集并做初步处理。

数据收集模块进一步配置为:通过对接缺陷管理平台对外接口来采集缺陷数据,并将采集到的缺陷数据存入数据库。由于缺陷数据存在状态、人员等数据变动的情况,因此,为了确保数据准确性,每次采集数据时第一步会备份历史数据,第二步会将历史数据全部清除,然后将采集到的缺陷数据全量入库保存。

数据汇总模块用于将缺陷、人员、部门以及系统信息在内的数据同步到数据分析平台或分析工具进行汇总。

数据汇总模块进一步配置为:通过数据库管理工具或者插件,读取汇总所需数据,用于后续数据分析。上述所需的数据主要包括缺陷数据、人员数据、部门数据、系统信息数据。人员以及部门数据用于确定缺陷归属人员以及部门,用于针对不同的部门进行数据分析。系统信息主要包括系统级别以及系统部门归属等信息,可以方便对不同级别的系统进行分析。

数据清洗模块用于对缺陷数据进行清洗整理。

数据清洗模块进一步配置为:数据清洗是指过滤掉被否决缺陷、重复缺陷、无法复现缺陷等无效缺陷,并区分出线上缺陷以及开发测试缺陷。其中线上缺陷为系统上线后产生的缺陷,开发测试缺陷为开发测试阶段发现的缺陷。线上缺陷的多少可以反映测试的质量,线上缺陷越多说明测试质量较差,导致较多的缺陷逃逸到线上系统。开发测试缺陷的多少可以反映开发的质量。

数据分析模块用于对缺陷数据进行分析。

数据分析模块进一步包括以下单元:整体缺陷分析单元、缺陷探测率计算单元、缺陷关闭率计算单元。

整体缺陷分析单元配置为:整体缺陷分析主要包括开发测试、线上缺陷数量走势,不同级别缺陷统计,近两年缺陷数据比对,每月缺陷数据汇总(开发测试缺陷数量、线上缺陷数量、未关闭缺陷数量、遗留缺陷数量)。该部分主要对缺陷数据进行汇总展示,形成缺陷整体概览,通过对缺陷整体数据的分析,可以从一定程度上反映出当月、当年整体开发测试质量。缺陷数量可以一定程度上反映开发质量的好坏;缺陷关闭情况、遗留缺陷情况可以反映出开发修复缺陷的能力。整体分析可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

缺陷探测率计算单元配置为:采用如公式1计算缺陷探测率:

其中D为开发测试缺陷数量,O为线上缺陷数量。P数值越高,开发测试缺陷占总缺陷的比例越高,线上系统缺陷占比越低,说明测试阶段发现了大部分缺陷,线上系统的质量越稳定,测试质量越高。缺陷探测率计算可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

缺陷关闭率计算单元配置为:采用如公式2计算缺陷关闭率:

其中,C表示已关闭的缺陷,U表示未关闭的缺陷。当开发修复缺陷,测试确认缺陷已修复之后,表示该缺陷可关闭。缺陷关闭率越高,说明开发的修复质量越好,遗留的缺陷越少,上线系统的质量越高。缺陷关闭率计算可以按照系统、部门等不同维度进行统计,方便进行多维度数据分析。

数据展示模块用于度量数据展示。

数据展示模块进一步配置为:基于数据分析模块处理后的数据生成报表,然后通过展板进行图表展示,并且根据不同的需求定制不同的展板,比如各部门度量展板、各系统度量展板等,并提供对外展示、查询接口,可以对不同的用户分配不同的权限,根据用户的权限展示对应的度量结果,如普通用户可以查看汇总统计数据,管理者可以查看度量详细数据以及不同维度的比对数据。

此外,本发明还公开了一种用于软件开发测试质量度量的计算机可读存储介质,其存储有可供处理器执行的程序指令,以实现如图1所示的步骤。具体步骤的处理同上述方法实施例,在此不再赘述。

本发明还公开了一种用于软件开发测试质量度量的计算机设备,其包括存储器、处理器和存储在存储器中可供处理器运行的程序指令,其中所述处理器执行所述程序指令以实现如图1所示的步骤。具体步骤的处理同上述方法实施例,在此不再赘述。

尽管为使解释简单化将上述方法图示并描述为一系列动作,但是应理解并领会,这些方法不受动作的次序所限,因为根据一个或多个实施例,一些动作可按不同次序发生和/或与来自本文中图示和描述或本文中未图示和描述但本领域技术人员可以理解的其他动作并发地发生。

本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。

结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。

结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。

在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。

提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。

相关技术
  • 一种利用微流控装置制备悬浮微液滴的方法
  • 微流控芯片、含有该芯片的装置及其用途,利用该芯片或装置制备液滴的方法
  • 基于液滴微流体控制的液滴分割装置及方法
  • 一种滴液装置和精油微球的制备方法
  • 一种制备微液滴的装置和制备壳聚糖微球的方法
技术分类

06120116548167