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

一种软件可靠性评估方法、系统、设备及可读存储介质与流程

2022-11-19 14:20:33 来源:中国专利 TAG:


1.本发明属于计算机领域,具体涉及一种软件可靠性评估方法、系统、设备及可读存储介质。


背景技术:

2.在众多软件测试门类中,人们更关心的是软件的功能测试、性能测试等方面,而常常忽略了软件可靠性测试的重要性。而对于已经上线/交付后的软件,如何评估软件可靠性成为了各企业面临的一大难题。
3.软件可靠性是指软件产品在规定的条件下和规定的时间区间完成规定功能的能力。软件可靠性与失效数据息息相关。软件失效是指功能部件执行其规定功能的能力丧失,或者出现偏离预期结果的行为,软件失效行为可以按照严重程度划分为轻度、中度、重度、致命和灾难性等级别。
4.而现有的软件可靠性一般以软件所在的服务器或计算机上的cpu、内存、磁盘、网络状态等条件分析软件运行的稳定性。是“正面”的判断方式来确定或预警对应的软件稳定性。但软件自身的问题并未作为判断依据,使得现有的分析软件或分析系统无法准确反映软件内部的技术问题。


技术实现要素:

5.为解决以上问题,本发明提出一种软件可靠性评估方法,包括:
6.获取软件的失效数据并对所述失效数据进行分类;
7.基于所述分类对分类后的所述失效数据按照预定策略进行评分;
8.基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
9.在本发明的一些实施方式中,基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
10.根据不同分类的失效数据的在预定时间内的产生频次对所述分类的失效数据进行评分。
11.在本发明的一些实施方式中基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
12.根据不同分类的失效数据的所产生的严重性进行评分。
13.在本发明的一些实施方式中,基于分类后的所述失效数据的评分计算软件可靠性的评分包括:对不同分类的失效数据分配不同的加权系数。
14.在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
15.从所述软件对应的历史失效数据中统计不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值的失效数据的个数,并通过所述统计的不同分类的失效数据的统计个数以归一化的方式计算对应的不同分类的概率,并将所述概率作为所述分类
的加权系数。
16.在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
17.获取所述软件对应分类的历史失效数据,以及所述历史失效数据对应的所述软件的状态构建对应的训练数据集;
18.基于所述数据集通过机器学习算法训练对应以对应分类的失效数据个数作为特征维度计算对应分类特征权重,并将所述特征权重作为所述分类的权重系数。
19.在本发明的一些实施方式中,其特征在于,还包括:
20.获取预定时间内对应分类的失效数据的评估得分并分别乘以所述分类对应的权重系数并求和得到所述软件的可靠性评分;
21.基于所述软件的可靠性评分按照预设的评分分布区间匹配对应的可靠性。
22.本发明的另一方面还提出一种软件可靠性评估系统,包括:
23.数据获取模块,所述数据获取模块配置用于获取软件的失效数据并对所述失效数据进行分类;
24.分类数据评分模块,所述分类数据评分模块配置用于基于所述分类对分类后的所述失效数据按照预定策略进行评分;
25.软件评估模块,所述软件评估模块配置用于基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
26.本发明的又一方面还提出一种计算机设备,包括:
27.至少一个处理器;以及
28.存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
29.本发明的再一方面还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
30.通过本发明提出的一种软件可靠性评估方法,获取失效数据并对失效数据进行分类,进一步对分类后的失效数据按照分类方式评估每一分类在预定时间内的评分,并以多个分类的评分计算软件整体可靠性。可在不知晓软件源代码设计的前提下对软件进行可靠性评估,即以一种类似“黑盒”的形式评估软件,从软件的失效数据的角度评估软件的稳定性。可在不获取软件代码的情况下,分析对应的软件的可靠性,为软件可靠性领域增添一种可靠性更好,适应性更强的软件可靠性分析方法。
附图说明
31.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
32.图1为本发明实施例提供的一种软件可靠性评估方法的方法流程图;
33.图2为本发明实施例提供的一种软件可靠性评估系统的系统结构示意图;
34.图3为本发明实施例提供的一种计算机设备的结构示意图;
35.图4为本发明实施例提供的一种计算机可读存储介质的结构示意图;
36.图5为本发明实施例提供的一种软件可靠性评估方法的实施例实施示意图。
具体实施方式
37.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
38.本发明旨在解决现有的软件评估方式存在不足的问题,现有的软件可靠性评估系统大都是获取软件的日志数据,并对日志数据做一些处理后基于日志数据中进行分析软件的运行状态,或者是通过监控软件运行时对硬件资源的使用情况或者是监控软件所运行的整体环境的可用资源状态等对软件的运行状态进行评估,而这些评估方式都是以外在的条件或者是程序自身的输出内容作为评估条件。而软件运行过程中的失效数据对软件可靠性的影响则被忽略。
39.如图1所示,本发明的第一方面提出一种软件可靠性评估方法,包括:
40.步骤s1、获取软件的失效数据并对所述失效数据进行分类;
41.步骤s2、基于所述分类对分类后的所述失效数据按照预定策略进行评分;
42.步骤s3、基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
43.在本实施例中,在步骤s1中,软件的失效数据的定义可以根据不同的应用软件而定,失效数据可以是因外部原因或用户的业务原因导致某任务在执行一半时所放弃的任务,例如,某电商业务系统中,客户在下单后退款导致的某一个交易终止所带来的各种数据,交易终止的节点不同所产生的失效数据的数量也不同,例如客户在收获阶段拒收和下单后取消订单所产生的数据量也不同,拒收阶段已经经历了大量的数据处理,例如货物打包数据、快递订单数据、快递的实时位置信息数据等因不同电商平台的流程相关的失效数据。
44.失效数据也可能是软件运行过程中人为操作和因软件故障导致的异常数据,例如用户创建任务时只创建了在业务流程中的一部分数据,而任务被放弃后任务被搁置导致的长时间无管理的数据,或者软件运行时用户的操作不当造成的残留的数据等。
45.失效数据是将本发明应用到对应的软件时根据软件的数据内容而适配的失效数据,本领域技术人员可以基于对所评估的软件的数据的认知选择采用什么样的数据作为失效数据。
46.失效数据的获取可通过对应的软件的接口或者数据库接口的方式获取,需要本领域技术对对应的软件的接口名等另行配置,因为不同软件的数据访问接口或数据库的地址等均不相同。
47.进一步,对获取的数据进行分类,具体地的分类也要根据对应的软件而定,典型地可以根据不同的业务类型而对数据进行分类,以电商系统为例,可以将销售业务系统的失效数据分为一类、也可以将登录业务的失效数据再分为一类、也可以将商品评价业务对应的失效数据分为一类。
48.特别的,也可以根据数据库中不同的数据表为分类依据,将不同数据表分为一类失效数据,或者是将与某个业务相关的多个数据表分为一类。
49.在步骤s2中,对于分类后的失效数据,可以按照预定的评分方式基于当前获取的该类数据对该类失效数据进行评分,评分的原则可以由本领域技术人员对该类数据对软件的影响而决定。
50.在本发明的一些实施例中,对于一类失效数据的评分则是依赖于当前统计获得的该类失效数据的数量。
51.在本发明的一些实施例中,对于一类失效数据的评分则是依赖于当前获得失效数据对失效问题的严重性。
52.在步骤s3中,通过多个分类的失效数据的评分计算软件的整体性评分,并根据评分结果判定评分的可靠性,例如可以将多个分类的失效数据对应的评分求和后计算得到总分,然后根据总分是否超过设定的阈值来判断是否被评估为不可靠,或者总分低于设定的阈值时评估为可靠。
53.在本发明的一些实施方式中,基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
54.根据不同分类的失效数据的在预定时间内的产生频次对所述分类的失效数据进行评分。
55.在本实施例中,在对不同分类的失效数据进行评分时,可以以该类失效数据的产生频次进行评分。以一定时间内该类失效数据发生的次数作为评分。例如,在设定的时间内,假设7天,某一分类的失效数据共有32条,则该分类的失效数据的评分可以认为是32分。
56.在本发明的一些实施方式中基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
57.根据不同分类的失效数据的所产生的严重性进行评分。
58.在本实施例中,对不同的分类的失效数据进行评分时,可以视情况以对应失效数据对软件的影响进行评分,例如某一类失效数据的产生可能导致软件出现崩溃的情况,则可以将每出现一条属于该分类的数据其得分记为5分,根据严重等级不同的等级有不同的记分值,最后将一段时间内该分类出现的所有的失效数据条数分别乘以对应的记分值求和后作为该分类的评分。同时,对于其他的分类均有对应的影响的记分值,采用的样的方式计算对应分类的评分,影响等级常见的有轻度、中度、重度、致命和灾难性等级别,分别对应一个等级的分数,记分值数可以是1、2、3、4、5。
59.在本发明的一些实施例中,同一分类内的数据根据数据频次的产生,也可以进行记分值的累计分布,例如,当同一分类的失效数据的个数低于一定等级时,此时的记分值可以是1,当失效数据的个数高于该个数时则以更高的记分值进行计算,例如是2,3,4等。
60.在本发明的一些实施例中,对同一分类内的失效数据,如果失效数据可能存在不同的数据类型,例如前面提到订单业务的数据可能包括货物打包数据、快递订单数据、快递的实时位置信息数据,对一这些由不同数据库存储的数据或者以后不同的软件流程执行的数据,其记分值也不相同。
61.在本发明的一些实施方式中,基于分类后的所述失效数据的评分计算软件可靠性的评分包括:对不同分类的失效数据分配不同的加权系数。
62.在本实施例中,在得到多个分类的失效数据的评分后,对不同分类的失效数据分配不同的加权系数,分配的加权系数用于计算对应的软件评估分。
63.在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
64.从所述软件对应的历史失效数据中统计不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值的失效数据的个数,并通过所述统计的不同分类的失效数据的统计个数以归一化的方式计算对应的不同分类的概率,并将所述概率作为所述分类的加权系数。
65.在本实施例中,对不同分类的失效数据的加权系数的分配可以是该分类的历史数据中,计算有多少条失效数据造成软件故障,或者是该分类的失效数据在一个计算周期内有多少个计算周期的评分高于预定值,将高于预定的值的评分次数进行统计,然后将多个分类的评分的高于预定值的次数以归一化的方式计算其对应的权重系数。
66.具体地,假如有5个分类,按照7天为预定的评分周期,如果从历史数据中统计得出,第一分类有5次的评分高于设定的预定值,假设是500,和存在一个评分周期因该分类的失效数据而导致出现软件严重故障,则该第一分类的记为6次,同样的如果其他几个分类满足上述条件的评分周期分别是4、4、2、4。对应的权重系数应为0.3、0.2、0.2、0.1、0.2。
67.在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
68.获取所述软件对应分类的历史失效数据,以及所述历史失效数据对应的所述软件的状态构建对应的训练数据集;
69.基于所述数据集通过机器学习算法训练对应以对应分类的失效数据个数作为特征维度计算对应分类特征权重,并将所述特征权重作为所述分类的权重系数。
70.在本实施例中,对于权重系数的计算,可以采用机器学习的方式进行计算,以每个评分周期内的收集的对应不同分类的失效数据的个数以及对应的评分作为特征数据的x,将对不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值作为y训练对应的多元一次模型,模型中每一个参数的系数为对应分类的权重。
71.在本发明的一些实施方式中,其特征在于,还包括:
72.获取预定时间内对应分类的失效数据的评估得分并分别乘以所述分类对应的权重系数并求和得到所述软件的可靠性评分;
73.基于所述软件的可靠性评分按照预设的评分分布区间匹配对应的可靠性。
74.在本实施例中,对于软件的可靠性评估,首先获取当前评分周期内对应的失效数据的评分,然后不同分类的评分别乘以对应的权重系数再求和得到可靠性评分。
75.进一步按照可靠性评分所述的分布区间判断软件的可靠性,需要对求和后的可靠性评分减去100之后求平均值(计算的评分是失效数据越多,评分越高),以是评分区间落在0-100范围内。评分区间可以根据采用的具体评分标准而定。例如,通过加权系数相乘再求和计算之后的得分在01-100之间,可以设定为:[0-60)为较差,[60-75)可靠性为一般,[75-90)可靠性为良好,[90-100]为优秀。
[0076]
实施例:
[0077]
如图5所示,图5示出的是本发明的一个简单的实施例,实施过程详细如下:
[0078]
1)以所要应用的软件的相应接口方式获取软件系统中某时间段内所有失效数据的数据源,将其按照严重等级,如轻度、中度、重度、致命和灾难性等,进行分类并归纳分析;
[0079]
2)计算各类等级的可靠性评分分值,将所有类别的可靠性分值进行加权平均得出最终的软件可靠性分值:
[0080]
v(h)=α1*v(d)1 α2*v(d)2 α3*v(d)3
……
αn*v(d)n
[0081]
其中,α1、α2、α3、
……
、αn表示每一类失效等级的系数;v(d)1、v(d)2、v(d)3、
……
、v(d)n表示每一类失效等级的评估分值。
[0082]
v(d)是基于某一类失效等级信息如失效产生频次、失效产生的问题严重性等信息进行综合评价得出的分值。
[0083]
v(d)最大值为100,最小值为0。v(h)最大值为100,最小值为0。
[0084]
3)按照上述的计算结果,按照分值大小,软件可靠性程度评估结果可分为:
[0085]

软件可靠性优秀,分值范围为[90,100];
[0086]

软件可靠性良好,分值范围为[75,90);
[0087]

软件可靠性一般,分值范围为[60,75);
[0088]

软件可靠性较差,分值范围为[0,60]。
[0089]
通过本发明提出的一种软件可靠性评估方法,获取失效数据并对失效数据进行分类,进一步对分类后的失效数据按照分类方式评估每一分类在预定时间内的评分,并以多个分类的评分计算软件整体可靠性。可在不知晓软件源代码设计的前提下对软件进行可靠性评估,即以一种类似“黑盒”的形式评估软件,从软件的失效数据的角度评估软件的稳定性。可在不获取软件代码的情况下,分析对应的软件的可靠性,为软件可靠性领域增添一种可靠性更好,适应性更强的软件可靠性分析方法。
[0090]
通过利用现有工单系统中的失效数据,充分结合软件运行实际,对其进行归纳分析;再分别按失效产生频次、失效产生的问题严重性等信息得出该类失效类别的可靠性分值;最后对不同的失效等级赋予不同的加权系数,最终计算得出整体的软件可靠性得分,进而得出软件可靠性评估结果。
[0091]
本发明的另一方面还提出一种软件可靠性评估系统,包括:
[0092]
数据获取模块1,所述数据获取模块1配置用于获取软件的失效数据并对所述失效数据进行分类;
[0093]
分类数据评分模块2,所述分类数据评分模块2配置用于基于所述分类对分类后的所述失效数据按照预定策略进行评分;
[0094]
软件评估模块3,所述软件评估模块3配置用于基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
[0095]
在本发明的一些实施方式中,评分模块2进一步配置用于:
[0096]
根据不同分类的失效数据的在预定时间内的产生频次对所述分类的失效数据进行评分。
[0097]
在本发明的一些实施方式中,评分模块2进一步配置用于:
[0098]
根据不同分类的失效数据的所产生的严重性进行评分。
[0099]
在本发明的一些实施方式中,评分模块2进一步配置用于:
[0100]
对不同分类的失效数据分配不同的加权系数。
[0101]
在本发明的一些实施方式中,评分模块2进一步配置用于:
[0102]
从所述软件对应的历史失效数据中统计不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值的失效数据的个数,并通过所述统计的不同分类的失效数据的统计个数以归一化的方式计算对应的不同分类的概率,并将所述概率作为所述分类
的加权系数。
[0103]
在本发明的一些实施方式中,评分模块2进一步配置用于:
[0104]
获取所述软件对应分类的历史失效数据,以及所述历史失效数据对应的所述软件的状态构建对应的训练数据集;
[0105]
基于所述数据集通过机器学习算法训练对应以对应分类的失效数据个数作为特征维度计算对应分类特征权重,并将所述特征权重作为所述分类的权重系数。
[0106]
在本发明的一些实施方式中,其特征在于,还包括:
[0107]
获取预定时间内对应分类的失效数据的评估得分并分别乘以所述分类对应的权重系数并求和得到所述软件的可靠性评分;
[0108]
基于所述软件的可靠性评分按照预设的评分分布区间匹配对应的可靠性。
[0109]
如图3所示,本发明的又一方面还提出一种计算机设备,包括:
[0110]
至少一个处理器21;以及
[0111]
存储器22,所述存储器22存储有可在所述处理器21上运行的计算机指令23,所述指令23由所述处理器21执行时实现一种软件可靠性评估方法,包括:
[0112]
获取软件的失效数据并对所述失效数据进行分类;
[0113]
基于所述分类对分类后的所述失效数据按照预定策略进行评分;
[0114]
基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
[0115]
在本发明的一些实施方式中,基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
[0116]
根据不同分类的失效数据的在预定时间内的产生频次对所述分类的失效数据进行评分。
[0117]
在本发明的一些实施方式中基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
[0118]
根据不同分类的失效数据的所产生的严重性进行评分。
[0119]
在本发明的一些实施方式中,基于分类后的所述失效数据的评分计算软件可靠性的评分包括:对不同分类的失效数据分配不同的加权系数。
[0120]
在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
[0121]
从所述软件对应的历史失效数据中统计不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值的失效数据的个数,并通过所述统计的不同分类的失效数据的统计个数以归一化的方式计算对应的不同分类的概率,并将所述概率作为所述分类的加权系数。
[0122]
在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
[0123]
获取所述软件对应分类的历史失效数据,以及所述历史失效数据对应的所述软件的状态构建对应的训练数据集;
[0124]
基于所述数据集通过机器学习算法训练对应以对应分类的失效数据个数作为特征维度计算对应分类特征权重,并将所述特征权重作为所述分类的权重系数。
[0125]
在本发明的一些实施方式中,其特征在于,还包括:
[0126]
获取预定时间内对应分类的失效数据的评估得分并分别乘以所述分类对应的权
重系数并求和得到所述软件的可靠性评分;
[0127]
基于所述软件的可靠性评分按照预设的评分分布区间匹配对应的可靠性。
[0128]
本发明的再一方面还提出一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序402被处理器执行时实现一种软件可靠性评估方法,包括:
[0129]
获取软件的失效数据并对所述失效数据进行分类;
[0130]
基于所述分类对分类后的所述失效数据按照预定策略进行评分;
[0131]
基于分类后的所述失效数据的评分计算软件可靠性评分,并基于所述软件可靠性评分确定所述软件的可靠性。
[0132]
在本发明的一些实施方式中,基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
[0133]
根据不同分类的失效数据的在预定时间内的产生频次对所述分类的失效数据进行评分。
[0134]
在本发明的一些实施方式中基于所述分类对分类后的所述失效数据按照预定策略进行评分包括:
[0135]
根据不同分类的失效数据的所产生的严重性进行评分。
[0136]
在本发明的一些实施方式中,基于分类后的所述失效数据的评分计算软件可靠性的评分包括:对不同分类的失效数据分配不同的加权系数。
[0137]
在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
[0138]
从所述软件对应的历史失效数据中统计不同分类的失效数据造成所述软件故障或所述失效数据的评分高于预定值的失效数据的个数,并通过所述统计的不同分类的失效数据的统计个数以归一化的方式计算对应的不同分类的概率,并将所述概率作为所述分类的加权系数。
[0139]
在本发明的一些实施方式中,对不同分类的失效数据分配不同的加权系数包括:
[0140]
获取所述软件对应分类的历史失效数据,以及所述历史失效数据对应的所述软件的状态构建对应的训练数据集;
[0141]
基于所述数据集通过机器学习算法训练对应以对应分类的失效数据个数作为特征维度计算对应分类特征权重,并将所述特征权重作为所述分类的权重系数。
[0142]
在本发明的一些实施方式中,其特征在于,还包括:
[0143]
获取预定时间内对应分类的失效数据的评估得分并分别乘以所述分类对应的权重系数并求和得到所述软件的可靠性评分;
[0144]
基于所述软件的可靠性评分按照预设的评分分布区间匹配对应的可靠性。
[0145]
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
[0146]
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
[0147]
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
[0148]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0149]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
再多了解一些

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

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

相关文献