CN116225949B - 软件可靠性验收风险评估方法 - Google Patents
软件可靠性验收风险评估方法 Download PDFInfo
- Publication number
- CN116225949B CN116225949B CN202310240267.7A CN202310240267A CN116225949B CN 116225949 B CN116225949 B CN 116225949B CN 202310240267 A CN202310240267 A CN 202310240267A CN 116225949 B CN116225949 B CN 116225949B
- Authority
- CN
- China
- Prior art keywords
- software
- reliability
- failure rate
- function group
- functional group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012502 risk assessment Methods 0.000 title claims abstract description 9
- 125000000524 functional group Chemical group 0.000 claims abstract description 74
- 238000013522 software testing Methods 0.000 claims abstract description 8
- 238000004364 calculation method Methods 0.000 claims description 9
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 6
- 230000000694 effects Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 74
- 238000004458 analytical method Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000019771 cognition Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了软件可靠性验收风险评估方法,涉及软件测试技术领域,通过预先对软件进行功能组划分,再将功能组按照调用逻辑关系划分为不同的功能组集合,每个功能组集合中的功能组之间存在相互调用关系,对于每个功能组集合中的功能组采用顺序执行分配法,获得每个功能组的第一可靠性需求,再采用并行执行分配法为每个独立功能组分配第二可靠性需求,再对于每个功能组,分别使用复杂因子分配法以及重要度分配法来评测软件的失效率指标,最后综合各个功能组的各个失效率指标的得分,确定软件的综合可靠度;综合考虑了软件的复杂度以及软件系统多方面的可靠性指标需求,能够更全面的评估软件可靠性风险。
Description
技术领域
本发明属于软件测试领域,涉及软件可靠性验收技术,具体是软件可靠性验收风险评估方法。
背景技术
软件的可靠性是指软件在规定的硬件条件和规定的时间内,不引起整个系统失效的能力;其中,规定条件,包含的主要是使用者和使用方式;使用方式可以是使用的任务和功能,以及使用的频度;一般对软件可靠性的度量采用可靠度、失效率进行评估;
而由于软件逻辑的复杂性,在软件系统中即存在相互关联的功能组,也存在相互独立的功能组,因此传统的使用单一的顺序执行分配法或并行执行分配法已不足以对软件的可靠性进行分析;进一步的,其他的常用可靠性分析方法,如复杂度因子分配法以及重要度分配法均只考虑了软件系统的某一个方面,对软件的可靠性衡量有失偏颇;
为此,提出软件可靠性验收风险评估方法。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出软件可靠性验收风险评估方法,该软件可靠性验收风险评估方法综合考虑了软件的复杂度以及软件系统多方面的可靠性指标需求,能够更全面的评估软件可靠性风险。
为实现上述目的,根据本发明的第一方面的实施例提出软件可靠性验收风险评估方法,包括以下步骤:
步骤一:将软件进行功能组的划分,并使用程序分析软件,构造出各个功能组之间的逻辑关系图;
步骤二:将功能组按照调用逻辑关系进行分组,且每组功能组使用集合进行保存;每个功能组集合标记为G;
步骤三:对于每个功能组集合G,对其中的功能组采用顺序执行分配法,获得每个功能组的第一可靠性需求;
步骤四:对于独立的每个功能组集合,采用并行执行分配法为每个独立功能组分配第二可靠性需求;
步骤五:对于每个功能组,分别使用复杂因子分配法以及重要度分配法来评测软件的失效率指标;
步骤六:综合各个功能组的各个失效率指标的得分,确定软件的综合可靠度;
其中,所述可靠度指软件在规定条件下和规定时间内,不引起系统失效的概率;设规定的时间为t0,软件发生失效的时间为t,则可靠度R(t0)=P(t>t0);
其中,所述失效率指软件在规定条件下和规定时间内,丧失规定功能的概率;设规定的时间为t0,软件发生失效的时间为t,则失效率F(t0)=P(t<t0);显然失效率与可靠度的关系为F(t0)=1-R(t0);
所述顺序执行分配法包括以下步骤:
步骤S1:使用失效率定义可靠性指标;
步骤S2:根据功能组集合G在软件系统中的实际重要性,确定功能组集合G的可靠性需求;将功能组集合G的可靠性需求标记为DG;
步骤S3:统计功能组集合G中功能组的数量;将功能组集合G中功能组数量标记为NG;
步骤S4:为每个功能组分配第一可靠性需求;将功能组集合G中每个功能组标记为Gi,则功能组Gi的第一可靠性需求DGi 1=DG;
所述并行执行分配法包括以下步骤:
步骤P1:使用失效率定义可靠性指标;
步骤P2:根据软件的实际需求,确定整个软件系统的可靠性需求;将软件系统的可靠性需求标记为D;
步骤P3:统计整个软件系统中功能组集合的数量;将功能组集合的数量标记为N;
步骤P4:对于每个功能组,分配第二可靠性需求;将第二可靠性需求标记为DGi2;则第二可靠性需求DGi2=D/N;
其中,所述复杂度因子分配法是基于每个功能组的相应复杂度分配失效率;
所述复杂度因子分配法包括以下步骤:
步骤P1:对于每个功能组,确定功能组的复杂度因子WGi;
步骤P2:确定软件系统的任务持续时间T;
步骤P3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤P4:计算软件系统的第一失效率调节因子K1;其中,所述第一失效率调节因子K1的计算公式为
步骤P5:计算每个功能组Gi分配的第一失效率指标;将功能组Gi分配的第一失效率指标标记为SGi1;则第一失效率指标
所述重要度分配法包括以下步骤:
步骤Q1:对于每个功能组,确定该功能组的重要度因子CGi;
步骤Q2:确定系统的任务持续时间T;
步骤Q3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤Q4:计算软件系统的第二失效率调节因子K2;其中,所述第二失效率调节因子K2的计算公式为
步骤Q5:计算每个功能组Gi分配的第二失效率指标;将功能组Gi分配的第二失效率指标标记为SGi2;则第二失效率指标
综合各个失效率指标的得分,确定软件的综合可靠度的方式为:
将软件综合可靠度标记为DS,则综合可靠性DS的计算公式为其中,a、b、c以及d均为预设的比例系数。
与现有技术相比,本发明的有益效果是:
本发明通过预先对软件进行功能组划分,再使用程序分析软件构造出功能组之间的逻辑关系图;再将功能组按照调用逻辑关系划分为不同的功能组集合,每个功能组集合中的功能组之间存在相互调用关系,对于每个功能组集合中的功能组采用顺序执行分配法,获得每个功能组的第一可靠性需求,再采用并行执行分配法为每个独立功能组分配第二可靠性需求,再对于每个功能组,分别使用复杂因子分配法以及重要度分配法来评测软件的失效率指标,最后综合各个功能组的各个失效率指标的得分,确定软件的综合可靠度;
传统的软件可靠性分析手段往往使用单一的顺序执行分配法或并行执行分配法,难以应对逻辑复杂且功能繁多的当前软件系统;进一步的,其他传统常用的可靠性分析方法,如复杂度因子分配法以及重要度分配法均只考虑了软件系统的某一个方面,例如复杂度和功能的重要度,难以全面覆盖软件系统的各个可靠性指标;
本发明综合考虑了软件的复杂度以及软件系统多方面的可靠性指标需求,具有更全面的评估软件可靠性风险的有益效果。
附图说明
图1为本发明的流程图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,软件可靠性验收风险评估方法,包括以下步骤:
步骤一:将软件进行功能组的划分,并使用程序分析软件,构造出各个功能组之间的逻辑关系图;优选的,所述程序分析软件可以是代码分析工具;例如:understand和bouml等分析软件;
步骤二:将功能组按照调用逻辑关系进行分组,且每组功能组使用集合进行保存;每个功能组集合标记为G;
需要理解的是,每个功能组集合中的功能组之间存在相互调用关系,且各个功能组集合之间为并行以及独立关系;
步骤三:对于每个功能组集合G,对其中的功能组采用顺序执行分配法,获得每个功能组的第一可靠性需求;
步骤四:对于独立的每个功能组集合,采用并行执行分配法为每个独立功能组分配第二可靠性需求;
步骤五:对于每个功能组,分别使用复杂因子分配法以及重要度分配法来评测软件的失效率指标;
步骤六:综合各个功能组的各个失效率指标的得分,确定软件的综合可靠度;
可以理解的是,软件的可靠性是指软件在规定的硬件条件和规定的时间内,不引起整个系统失效的能力;其中,规定条件,包含的主要是使用者和使用方式;使用方式可以是使用的任务和功能,以及使用的频度;一般对软件可靠性的度量采用可靠度、失效率进行评估;
其中,所述可靠度指软件在规定条件下和规定时间内,不引起系统失效的概率;设规定的时间为t0,软件发生失效的时间为t,则可靠度R(t0)=P(t>t0);
其中,所述失效率指软件在规定条件下和规定时间内,丧失规定功能的概率;设规定的时间为t0,软件发生失效的时间为t,则失效率F(t0)=P(t<t0);显然失效率与可靠度的关系为F(t0)=1-R(t0),因此,通过评估失效率可同时获知软件的可靠度;
在一个优选的实施例中,将功能组按照调用逻辑关系进行分组的方式为:
将软件源码中的工具类函数文件进行筛除,再将每个代码文件作为一项功能,使用程序分析软件获取代码文件中各个函数的调用关系,再根据每个函数所在的代码文件,获得各个代码文件的调用关系;可以理解的是,代码文件的调用关系即为各个功能组的调用关系;
在一个优选的实施例中,顺序执行分配法是在软件各个功能组是顺序执行,各个功能组中的功能是系统功能的子功能时使用的可靠性分配方法;
所述顺序执行分配法包括以下步骤:
步骤S1:使用失效率定义可靠性指标;
步骤S2:根据功能组集合G在软件系统中的实际重要性,确定功能组集合G的可靠性需求;将功能组集合G的可靠性需求标记为DG;
步骤S3:统计功能组集合G中功能组的数量;将功能组集合G中功能组数量标记为NG;
步骤S4:为每个功能组分配第一可靠性需求;具体的,将功能组集合G中每个功能组标记为Gi,则功能组Gi的第一可靠性需求DGi1=DG;
其中,并行执行分配法是软件的各个功能组是并行执行,但这些功能组的功能代表了整个软件的一系列的功能,任何一个功能组的执行不依赖于其他功能组的执行结果时使用的可靠性分配方法;
所述并行执行分配法包括以下步骤:
步骤P1:使用失效率定义可靠性指标;
步骤P2:根据软件的实际需求,确定整个软件系统的可靠性需求;将软件系统的可靠性需求标记为D;
步骤P3:统计整个软件系统中功能组集合的数量;将功能组集合的数量标记为N;
步骤P4:对于每个功能组,分配第二可靠性需求;将第二可靠性需求标记为DGi2;则第二可靠性需求DGi2=D/N;
其中,所述复杂度因子分配法是基于每个功能组的相应复杂度分配失效率;
优选的,所述复杂度因子分配法包括以下步骤:
步骤P1:对于每个功能组,确定功能组的复杂度因子WGi;优选的,所述复杂度因子为该功能组所涉及到的代码复杂度,评估标准包括但不限于代码行数和时间复杂度等;
步骤P2:确定软件系统的任务持续时间T;
步骤P3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤P4:计算软件系统的第一失效率调节因子K1;其中,所述第一失效率调节因子K1的计算公式为
步骤P5:计算每个功能组Gi分配的第一失效率指标;将功能组Gi分配的第一失效率指标标记为SGi1;则第一失效率指标
进一步的,所述重要度分配法是基于对软件失效影响认知来分配失效率,将重要度等级与维持系统运行并且保持故障防护能力联系起来;
优选的,所述重要度分配法包括以下步骤:
步骤Q1:对于每个功能组,确定该功能组的重要度因子CGi;优选的,所述重要度因子CGi根据该功能组在软件功能中的实际重要程度设定;
步骤Q2:确定系统的任务持续时间T;
步骤Q3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤Q4:计算软件系统的第二失效率调节因子K2;其中,所述第二失效率调节因子K2的计算公式为
步骤Q5:计算每个功能组Gi分配的第二失效率指标;将功能组Gi分配的第二失效率指标标记为SGi2;则第二失效率指标
进一步的,综合各个失效率指标的得分,确定软件的综合可靠度的方式为:
将软件综合可靠度标记为DS,则综合可靠性DS的计算公式为其中,a、b、c以及d均为预设的比例系数。
以上实施例仅用以说明本发明的技术方法而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方法进行修改或等同替换,而不脱离本发明技术方法的精神和范围。
Claims (1)
1.软件可靠性验收风险评估方法,其特征在于,包括以下步骤:
步骤一:将软件进行功能组的划分,并使用程序分析软件,构造出各个功能组之间的逻辑关系图;
步骤二:将功能组按照调用逻辑关系进行分组,且每组功能组使用集合进行保存;每个功能组集合标记为G;
步骤三:对于每个功能组集合G,对其中的功能组采用顺序执行分配法,获得每个功能组的第一可靠性需求;
步骤四:对于独立的每个功能组集合,采用并行执行分配法为每个独立功能组分配第二可靠性需求;
步骤五:对于每个功能组,分别使用复杂度因子分配法以及重要度分配法来评测软件的失效率指标;
步骤六:综合各个功能组的各个失效率指标的得分,确定软件的综合可靠度;
所述顺序执行分配法包括以下步骤:
步骤S1:使用失效率定义可靠性指标;
步骤S2:根据功能组集合G在软件系统中的实际重要性,确定功能组集合G的可靠性需求;将功能组集合G的可靠性需求标记为DG;
步骤S3:统计功能组集合G中功能组的数量;将功能组集合G中功能组数量标记为NG;
步骤S4:为每个功能组分配第一可靠性需求;将功能组集合G中每个功能组标记为Gi,则功能组Gi的第一可靠性需求DGi1=DG;
所述并行执行分配法包括以下步骤:
步骤P1:使用失效率定义可靠性指标;
步骤P2:根据软件的实际需求,确定整个软件系统的可靠性需求;将软件系统的可靠性需求标记为D;
步骤P3:统计整个软件系统中功能组集合的数量;将功能组集合的数量标记为N;
步骤P4:对于每个功能组,分配第二可靠性需求;将第二可靠性需求标记为DGi2;则第二可靠性需求DGi2=D/N;
所述复杂度因子分配法是基于每个功能组的相应复杂度分配失效率;
所述复杂度因子分配法包括以下步骤:
步骤P1:对于每个功能组,确定功能组的复杂度因子WGi;
步骤P2:确定软件系统的任务持续时间T;
步骤P3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤P4:计算软件系统的第一失效率调节因子K1;其中,所述第一失效率调节因子K1的计算公式为
步骤P5:计算每个功能组Gi分配的第一失效率指标;将功能组Gi分配的第一失效率指标标记为SGi1;则第一失效率指标
所述重要度分配法包括以下步骤:
步骤Q1:对于每个功能组,确定该功能组的重要度因子CGi;
步骤Q2:确定系统的任务持续时间T;
步骤Q3:确定在软件系统的任务持续时间T内,每个功能组集合G中每个功能组的经软件测试得到的活动时间TGi;
步骤Q4:计算软件系统的第二失效率调节因子K2;其中,所述第二失效率调节因子K2的计算公式为
步骤Q5:计算每个功能组Gi分配的第二失效率指标;将功能组Gi分配的第二失效率指标标记为SGi2;则第二失效率指标
综合各个失效率指标的得分,确定软件的综合可靠度的方式为:
将软件综合可靠度标记为DS,则综合可靠性DS的计算公式为 其中,a、b、c以及d均为预设的比例系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310240267.7A CN116225949B (zh) | 2023-03-08 | 2023-03-08 | 软件可靠性验收风险评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310240267.7A CN116225949B (zh) | 2023-03-08 | 2023-03-08 | 软件可靠性验收风险评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116225949A CN116225949A (zh) | 2023-06-06 |
CN116225949B true CN116225949B (zh) | 2023-11-10 |
Family
ID=86574945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310240267.7A Active CN116225949B (zh) | 2023-03-08 | 2023-03-08 | 软件可靠性验收风险评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116225949B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010018415A1 (en) * | 2008-08-15 | 2010-02-18 | Verum Holding B.V. | A method and system for testing complex machine control software |
CN106933737A (zh) * | 2017-01-19 | 2017-07-07 | 北京航空航天大学 | 一种基于时间扩展petri网的嵌入式软件可靠性评估方法 |
WO2019089443A1 (en) * | 2017-10-30 | 2019-05-09 | Hitachi Vantara Corporation | Generating code for deploying cloud infrastructure |
CN111679972A (zh) * | 2020-05-20 | 2020-09-18 | 北京航空航天大学 | 软件系统可靠性预计方法、装置、计算机设备和存储介质 |
CN112558927A (zh) * | 2020-12-09 | 2021-03-26 | 中国电子科技集团公司第十五研究所 | 基于逐层分解方法的软件可靠性指标分配方法及装置 |
-
2023
- 2023-03-08 CN CN202310240267.7A patent/CN116225949B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010018415A1 (en) * | 2008-08-15 | 2010-02-18 | Verum Holding B.V. | A method and system for testing complex machine control software |
CN106933737A (zh) * | 2017-01-19 | 2017-07-07 | 北京航空航天大学 | 一种基于时间扩展petri网的嵌入式软件可靠性评估方法 |
WO2019089443A1 (en) * | 2017-10-30 | 2019-05-09 | Hitachi Vantara Corporation | Generating code for deploying cloud infrastructure |
CN111679972A (zh) * | 2020-05-20 | 2020-09-18 | 北京航空航天大学 | 软件系统可靠性预计方法、装置、计算机设备和存储介质 |
CN112558927A (zh) * | 2020-12-09 | 2021-03-26 | 中国电子科技集团公司第十五研究所 | 基于逐层分解方法的软件可靠性指标分配方法及装置 |
Non-Patent Citations (2)
Title |
---|
Software Development and Reliability;Milena Krasich等;《2018 Annual Reliability and Maintainability Symposium》;全文 * |
软件配置管理策略模型及其关键技术研究;匿名;《中国优秀硕士学位论文全文数据库(电子期刊) 信息科技辑》(第S1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116225949A (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5655074A (en) | Method and system for conducting statistical quality analysis of a complex system | |
KR101781705B1 (ko) | 원격 사이트 모니터링용 방법 및 장치 | |
Hutchinson | Evaluation of preventive services | |
CN113095652B (zh) | 用于案例分配的技术 | |
US10303705B2 (en) | Organization categorization system and method | |
Pasek et al. | Package ‘anesrake’ | |
Henningsson et al. | Assuring fault classification agreement-an empirical evaluation | |
Gediga et al. | Skill set analysis in knowledge structures | |
CN116225949B (zh) | 软件可靠性验收风险评估方法 | |
GOODGHILD et al. | Performance evaluation and work-load estimation for geographic information systems | |
Plöesch et al. | On the validity of the it-cisq quality model for automatic measurement of maintainability | |
CN111639025B (zh) | 一种软件测试方法、装置、电子设备及存储介质 | |
CN112328335A (zh) | 一种并发请求超时的诊断方法及装置、设备、存储介质 | |
Gigot | Analyzing plant disease epidemics with R package epiphy | |
CN113837368A (zh) | 一种在联邦学习中评估各参与方数据价值的控制方法及装置 | |
Bell | Computer performance analysis-Measurement objectives and tools | |
Harrison | Software measurement: a decision-process approach | |
CN106846136A (zh) | 一种数据比对方法和设备 | |
US20080195453A1 (en) | Organisational Representational System | |
Norsworthy et al. | Worker attitudes and the cost of production: Hypothesis tests in an equilibrium model | |
CN112396430A (zh) | 用于企业评价的处理方法及系统 | |
JPH0981386A (ja) | 適正ジョブ診断装置およびその方法 | |
Fryer | Organizational Structure of Dual‐Constraint Job Shops | |
Verdam | Power analyses for response shift detection with structural equation modeling | |
Harun et al. | The Confirmatory Factor Analysis (CFA) on GST Compliance Research Model in Malaysia |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |