CN102708041A - 一种软件可信性质最小测试用例数的计算方法 - Google Patents
一种软件可信性质最小测试用例数的计算方法 Download PDFInfo
- Publication number
- CN102708041A CN102708041A CN2011101935239A CN201110193523A CN102708041A CN 102708041 A CN102708041 A CN 102708041A CN 2011101935239 A CN2011101935239 A CN 2011101935239A CN 201110193523 A CN201110193523 A CN 201110193523A CN 102708041 A CN102708041 A CN 102708041A
- Authority
- CN
- China
- Prior art keywords
- software
- test case
- case number
- layer
- judgment matrix
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种软件可信性质最小测试用例数的计算方法,首先,利用层次分析法构造出一个层次结构模型,并据此建立判断矩阵;其次,应用专家Delphi法来确定该判断矩阵的值;最后应用经典统计假设理论确定工程实践中最小测试用例数。软件可信性质的层次划分为目标层、准则层及对象层3个层次,对每个层次中的各个因子进行两两比较后建立成对比较矩阵,并在此基础上构建判断矩阵。本发明的优点是:根据ISO/IEC9126中提供的影响软件可信性质的要素,利用AHP法和经典统计假设理论计算每个可信性质的最小测试用例数,在保证可信软件全面测试的前提下,最大可能的减少测试用例,节约测试成本。
Description
【技术领域】
本发明涉及于软件测试,具体地说是涉及一种软件可信性质最小测试用例数的计算方法。
【背景技术】
软件已渗透到国民经济和国防建设各个领域,在信息社会中发挥着至关重要的作用,人们也越来越依赖软件。 然而软件质量不能令人满意,软件常常发生失效,并对人们的工作和生活带来不利影响,甚至造成巨大损失。例如,亚利安娜5 号火箭发射失败,Therac225 放射性治疗仪事故等就是血的教训。这些影响和事实使人们对软件的正确性、可靠性、安全性等可信性质给予了十分的关注。在美国,DARPA、NSF、NASA、NSA、NIST、FAA、FDA 和其他DoD机构都积极参与可信软件系统的研究和开发,并由NSTC先后形成一系列报告。可信软件是指软件系统的运行行为及其结果总是符合人们的预期,在受到干扰时仍能提供连续服务的软件。软件可信性质常包括可靠性(reliability) 、可靠安全性(safety) 、保密安全性(security) 、生存性(survivability) 、容错性(fault tolerance) 、实时性(real time)等。
软件是否可信,需要通过严格测试,软件测试是通过执行软件来判断软件是否具备所期望的性质,是可信软件开发中一个行之有效的、客观地评估软件可信性的方法。目前,国内外在软件可信性测试方面已开展了一些研究。Sadeghi Ahmade-Reza等人首次针对可信平台模块(Trusted Platform Module,TPM)给出一个详细的测试方案和测试结果,同时对测试结果进行了详细分析,以确定其测试的有效性;陈小峰提出一个TPM的形式化模型,并利用该模型设计了一个完整的自动化测试方案,解决了可信性测试用例自动生成问题,保证了针对TPM测试具有一定的覆盖范围;李昊等人提出了一种可信密码模块(TCM)符合性测试的形式化方法,采用基于扩展有限状态机(EFSM)模型与测试向量相结合的方式对TCM的标准进行形式化建模,有效地产生了测试用例,提高了TCM符合性测试的错误检测率。
从研究现状看,有效性和充分性是当前软件可信性测试研究的焦点,但很少有人关注软件可信性测试的成本问题。实际上,软件测试本身是一个工程,需要考虑投入和产出。随着软件测试在整个软件开发周期中所占比例的增加,软件测试的代价也在迅速增长,目前许多软件开发机构已将40% 以上的研制力量花费在软件测试上,特殊情况下,对于要求高可信软件来说,其测试费用往往大于50% ,因为可信软件测试已不仅仅是功能和性能测试了,而是包括可信性质及其运行环境的全面测试。
【发明内容】
本发明所要解决的技术问题在于提供一种软件可信性质最小测试用例数的计算方法,针对当前研究不足,利用AHP法和经典统计假设理论研究软件可信性测试成本问题,提出对可信性质进行有针对地测试,最大可能地降低测试成本。
本发明是通过以下技术方案解决上述技术问题的:一种软件可信性质最小测试用例数的计算方法,首先,利用层次分析法构造出一个层次结构模型,并据此建立判断矩阵;其次,确定该判断矩阵的值;最后应用经典统计假设理论确定工程实践中最小测试用例数。
该发明可进一步具体为:
软件可信性质的层次划分为目标层、准则层及对象层3个层次,对每个层次中的各个因子进行两两比较后建立成对比较矩阵,并在此基础上构建判断矩阵。
所述目标层是对可信软件的各个可信性性质进行评价;所述准则层是构成软件可信性的各种要素;所述对象层是软件的可信性质。
所述目标层用A来表示,所述准则层用B1、B2、B3、…、Bn来表示,所述对象层分别用C1、C2、C3、... 、Cn来表示,假定层A中元素Ak与下层B中元素B i(i=1,2,…,n)有联系,则将层B中元素两两比较,构成如下判断矩阵:
其中,p i,j表示对Am而言,元素Bi对Bj的相对重要性的判断值。
p i,j一般取1,3,5,7,9及它们的倒数。
应用专家Delphi法来确定所述判断矩阵的值。
判断矩阵的值是否准确,还需进行逻辑混乱检验和满意一致性检验2个步骤:
(1)逻辑混乱检验
用下面的公式(1)、公式(2)进行逻辑混乱检验:
当时认为无逻辑混乱,反之则需要重新调整判断矩阵的值,直到消除逻辑混乱为止,上式中m为受检验层次的子目标数目, 为判定矩阵的特征根的平均值, 为该层子目标成对比较判定矩阵的特征根,W i 为各层指标的初始权重系数;
(2)满意一致性检验
所述经典统计假设理论确定工程实践中最小测试用例数的步骤如下:
对规定的某个可信性指标( P0 ,C) 给出两个对立的假设
规定检验的显著性水平为α= 1-C,一般情况下,如果在某个可信性测试中允许r 个用例失效,则需的测试用例数N 是满足下式中n 的最小值
特别地,当r = 0 时,即测试中不容忍失效,有
利用上面方法分析的可信性质权重排序,结合公式(5)得到满足不同可信性质测试要求的最小测试用例数。
本发明的优点是:根据ISO/IEC 9126中提供的影响软件可信性质的要素,利用AHP法和经典统计假设理论计算每个可信性质的最小测试用例数,在保证可信软件全面测试的前提下,最大可能的减少测试用例,节约测试成本。
【附图说明】
图1为LMDS可信性质层次结构图。
图2为可信要求和测试用例数之间的关系图。
【具体实施方式】
下面参照附图结合实施例对本发明作进一步的描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明内容主要为以下3个部分:
⒈ 判断矩阵的构建方法
反映软件质量的可信性质是有诸多要素构成的,如反映可靠性的要素有MTTF、完整性、稳定性等;反映安全性的要素有MTTUF、完整性、机密性等;反映可维护性的要素有易分析性、易改变性、稳定性等。当然这些要素不一定只体现某一可信性质,它们之间可能有交叉,如完整性既是反映可靠性的要素,也是反映安全性的要素;稳定性是反映可维护性的要素,但在某种程度上也反映了软件的可靠性。综上所述,软件可信性质的层次结构模型可按如下方式建立:
⑴目标层(A):对可信软件的各个可信性性质进行评价,用A来表示;
⑵准则层(B):构成软件可信性的各种要素,如上面所述的MTTF、MTTUF、完整性、机密性等,用B1、B2、B3、…、Bn来表示;
⑶对象层(C):软件的可信性质,如软件的可靠性、安全性、兼容性、容错性等,分别用C1、C2、C3、... 、Cn来表示。
问题被分解分层后,可对各个因子进行两两比较建立成对比较矩阵。假定层A中元素Ak与下层B中元素B i(i=1,2,…,n)有联系,则将层B中元素两两比较,构成如下判断矩阵:
其中,pi,j表示对Am而言,元素Bi对Bj的相对重要性的判断值,一般取1,3,5,7,9及它们的倒数。判断矩阵的值用专家Delphi法来确定,但专家给出的意见往往不一定准确,需要进行逻辑混乱检验和满意一致性检验。
⒉ 判断矩阵值的检验方法
判断矩阵的值是否准确,还需进行逻辑混乱检验和满意一致性检验2个步骤。
⑴ 逻辑混乱检验
(2)
当时可认为无逻辑混乱,反之则需要重新调整判断矩阵的值,直到消除逻辑混乱为止。上式中m为受检验层次的子目标数目, 为判定矩阵的特征根的平均值, 为该层子目标成对比较判定矩阵的特征根,W i 为各层指标的初始权重系数。
⑵ 满意一致性检验
无逻辑混乱并不说明指标间一致性较好,为进一步度量判断矩阵是否具有满意的一致性,还需计算值。,其中可以查表得到。当时,即可认为判断矩阵具有满意的一致性,否则还需反复调整,最终使各指标间具有满意的一致性。
各层次判断矩阵建立并检验后,根据其最大特征值下的特征向量,对每一层进行层次单排序,然后进行层次总排序,最终得到对象层各方案对于目标的排序权重,从而进行方案选择。
⒊ 可信性质的权重排序及最小测试用例数的确定
可信软件在交付之前需要经过充分测试,以尽可能地提高软件的可信性。假定在测试某个可信性质时,该性质失效概率为P, 且每次操作都满足贝努利(Bernoulli)实验的统计独立性,则在n 次测试中,出现R次软件失效的概率满足二项分布
在以上假设的前提下,可用经典统计假设测试法确定工程实践中测试用例数N。经典统计假设方法对规定的某个可信性指标( P0 ,C) 给出两个对立的假设
规定检验的显著性水平为α= 1-C。一般情况下,如果在某个可信性测试中允许r 个用例失效,则需的测试用例数N 是满足下式中n 的最小值
特别地,当r = 0 时,即测试中不容忍失效,有
利用上面AHP法分析的可信性质权重排序,结合公式(5)可得到满足不同可信性质测试要求的最小测试用例数。
方法应用:
以“铸铁材质参数液态在线智能检测和质量控制系统”为代表的大规模工业检测系统是一种服务于铸造工业现场的智能软件,实现了对工业产品质量的实时在线管理,极大的提升了我国装备制造业的市场竞争力,创造了巨大的经济和社会效益。下面将以该系统核心部件--金属液态检测软件(Liquid metal detection software, LMDS)为研究对象,利用上面提出的方法,求出该软件不同可信性质的最小测试用例数。
1.确定LMDS可信性质权重排序。
对LMDS系统的应用背景和应用环境等分析可知,该系统需要对可靠性、安全性、可维护性和容错性四个可信性质进行评价。因此,目标层为“LMDS可信性评价”;根据ISO/IEC 9126中的描述,可得到影响这些可信性质的要素有“完整、稳定、易分析、易改变、易恢复、MTTF”。因此准则层为完整、稳定、易分析、易改变、易恢复、MTTF;对象层为可靠性、安全性、可维护性和容错性四个可信性质。图1显示了它们的层次关系。
根据图1,利用专家Delphi法构造判断矩阵。首先构造A-B判断矩阵,如下表1所示
表1 A-B判断矩阵
A | B1 | B2 | B3 | B4 | B5 | B6 |
B1 | 1 | 3 | 1/3 | 5 | 3 | 7 |
B2 | 1/3 | 1 | 1/4 | 3 | 1 | 5 |
B3 | 3 | 4 | 1 | 7 | 4 | 9 |
B4 | 1/5 | 1/3 | 1/7 | 1 | 1/3 | 3 |
B5 | 1/3 | 1 | 1/4 | 3 | 1 | 5 |
B6 | 1/7 | 1/5 | 1/9 | 1/3 | 1/5 | 1 |
计算A-B矩阵最大特征值的归一化特征向量为:。利用公式(1)和公式(2)对该结果进行逻辑混乱和满意一致性检验,发现该判断矩阵符合要求。如不符合要求,则要再次利用专家Delphi法,对判断矩阵中相对重要性比例尺度进行修改,直到满意为止。用同样的方法,我们可以得到B1-C,B2-C,B3-C,B4-C,B5-C,B6-C判断矩阵以及它们最大特征值下的特征向量。检验通过后,根据各向量层次排序的结果,可得到对象层C的层次总排序为
C1(可靠性)(0.259)>C4(安全性)(0.251)>C3(容错性)(0.233)>C2(可维护性)(0.227)。
2 .最小测试用例数求解
假定可信性质C1(可靠性)要求要达到99.9%(可由用户提出,或由领域专家给出),则根据可信性质相应的权重,可得到其他可信性质要达到的要求。C4(安全性)为96.8%(0.999×0.251/0.259=0.968),C3(容错性)为89.9%(0.999×0.233/0.259=0.899),C2(可维护性)为87.6%(0.999×0.227/0.259=0.876)。由公式(5)可得,可信性质在不同的要求和检验显著性水平下,其测试的最小用例数是不同的。
表2 不同可信要求和显著水平下的最小测试用例数
如上表2所示,随着可信性质要求的降低,所需测试用例数急剧减少。可靠性要达到99.9%的话,则在90%的置信度下,至少要2302个测试用例,99.9%的置信度下,至少要6905个测试用例;相对于可靠性来说,安全性要求要小些,排在第二,为96.8%,同样在90%的置信度下,其需要的测试用例数只要71个,在99.9%的置信度下,测试用例数为213个,比同等置信度下的可靠性测试用例数减少了80% 以上。同样,排序靠后的容错性和可维护性测试用例减少的更多,图2形象地反映了这种变化趋势。
实例分析可知,在全面测试的前提下,分层次、有针对地测试,要比笼统的、不加区分的测试,节约大量的测试用例,极大地降低了测试成本。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (9)
1.一种软件可信性质最小测试用例数的计算方法,其特征在于:首先,利用层次分析法构造出一个层次结构模型,并据此建立判断矩阵;其次,确定该判断矩阵的值;最后应用经典统计假设理论确定工程实践中最小测试用例数。
2.根据权利要求1所述的软件可信性质最小测试用例数的计算方法,其特征在于:软件可信性质的层次划分为目标层、准则层及对象层3个层次,对每个层次中的各个因子进行两两比较后建立成对比较矩阵,并在此基础上构建判断矩阵。
3.根据权利要求2所述的软件可信性质最小测试用例数的计算方法,其特征在于:所述目标层是对可信软件的各个可信性性质进行评价;所述准则层是构成软件可信性的各种要素;所述对象层是软件的可信性质。
5.根据权利要求4所述的软件可信性质最小测试用例数的计算方法,其特征在于:p i,j一般取1,3,5,7,9及它们的倒数。
6.根据权利要求1所述的软件可信性质最小测试用例数的计算方法,其特征在于:应用专家Delphi法来确定所述判断矩阵的值。
7.根据权利要求1至3任一项所述的软件可信性质最小测试用例数的计算方法,其特征在于:判断矩阵的值是否准确,还需进行逻辑混乱检验和满意一致性检验2个步骤。
8.根据权利要求4所述的软件可信性质最小测试用例数的计算方法,其特征在于:判断矩阵的值是否准确,还需进行逻辑混乱检验和满意一致性检验2个步骤:
逻辑混乱检验
用下面的公式(1)、公式(2)进行逻辑混乱检验:
(1)
当时认为无逻辑混乱,反之则需要重新调整判断矩阵的值,直到消除逻辑混乱为止,上式中m为受检验层次的子目标数目, 为判定矩阵的特征根的平均值, 为该层子目标成对比较判定矩阵的特征根,W i 为各层指标的初始权重系数;
满意一致性检验
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101935239A CN102708041A (zh) | 2011-07-12 | 2011-07-12 | 一种软件可信性质最小测试用例数的计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101935239A CN102708041A (zh) | 2011-07-12 | 2011-07-12 | 一种软件可信性质最小测试用例数的计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102708041A true CN102708041A (zh) | 2012-10-03 |
Family
ID=46900848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101935239A Pending CN102708041A (zh) | 2011-07-12 | 2011-07-12 | 一种软件可信性质最小测试用例数的计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102708041A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073506A (zh) * | 2016-11-17 | 2018-05-25 | 百度在线网络技术(北京)有限公司 | 测试方法和装置 |
CN109190901A (zh) * | 2018-08-03 | 2019-01-11 | 中国船舶工业综合技术经济研究院 | 基于多指标度量的可靠性评估结果的可信评价方法 |
CN111274142A (zh) * | 2020-01-20 | 2020-06-12 | 中国人民解放军国防科技大学 | 一种基于扩展有限状态机的软件通信体系架构符合性测试建模方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1908892A (zh) * | 2005-08-01 | 2007-02-07 | 王彤 | 测试用例设计方法和系统 |
CN101719096A (zh) * | 2009-12-29 | 2010-06-02 | 北京航空航天大学 | 一种提高实时嵌入式系统测试脚本执行速度的方法 |
US20110138229A1 (en) * | 2009-12-08 | 2011-06-09 | Telcordia Technologies, Inc. | Automated Testing of Software with Targeting of Deep Paths |
-
2011
- 2011-07-12 CN CN2011101935239A patent/CN102708041A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1908892A (zh) * | 2005-08-01 | 2007-02-07 | 王彤 | 测试用例设计方法和系统 |
US20110138229A1 (en) * | 2009-12-08 | 2011-06-09 | Telcordia Technologies, Inc. | Automated Testing of Software with Targeting of Deep Paths |
CN101719096A (zh) * | 2009-12-29 | 2010-06-02 | 北京航空航天大学 | 一种提高实时嵌入式系统测试脚本执行速度的方法 |
Non-Patent Citations (2)
Title |
---|
阚红星: "可信软件自动测试成本与风险研究", 《CNKI博士学位论文全文库》 * |
陈磊: "中药(新药)临床疗效综合评价方法学研究—生脉胶囊治疗CHF临床疗效多属性综合评价", 《CNKI博士学位论文全文库》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073506A (zh) * | 2016-11-17 | 2018-05-25 | 百度在线网络技术(北京)有限公司 | 测试方法和装置 |
CN108073506B (zh) * | 2016-11-17 | 2021-04-30 | 百度在线网络技术(北京)有限公司 | 测试方法和装置 |
CN109190901A (zh) * | 2018-08-03 | 2019-01-11 | 中国船舶工业综合技术经济研究院 | 基于多指标度量的可靠性评估结果的可信评价方法 |
CN111274142A (zh) * | 2020-01-20 | 2020-06-12 | 中国人民解放军国防科技大学 | 一种基于扩展有限状态机的软件通信体系架构符合性测试建模方法 |
CN111274142B (zh) * | 2020-01-20 | 2023-04-21 | 中国人民解放军国防科技大学 | 一种基于扩展有限状态机的软件通信体系架构符合性测试建模方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108833416B (zh) | 一种scada系统信息安全风险评估方法及系统 | |
CN110569197B (zh) | 一种用于软件可信性评估的可信证据分析与度量方法 | |
CN106101252A (zh) | 基于大数据和可信计算的信息安全风险防护系统 | |
CN105045251A (zh) | 工业控制系统功能安全与信息安全的需求分析及融合方法 | |
CN105913173A (zh) | 一种基于三角模糊数的消防指挥自动化系统效能评估方法 | |
CN104320271B (zh) | 一种网络设备安全评估方法及装置 | |
CN107491694A (zh) | 用于量化评估scada系统信息安全脆弱性的方法 | |
CN108183897B (zh) | 一种信息物理融合系统安全风险评估方法 | |
Tang et al. | Securing microgrid optimal energy management using deep generative model | |
CN110472839A (zh) | 基于sa-pso-ahp的火电厂控制系统信息安全评估系统 | |
CN102799531A (zh) | 一种基于层次分析理论的软件测试方法 | |
CN101610184A (zh) | 一种p2p网络中基于模糊逻辑的共谋团体识别方法 | |
CN113408114A (zh) | 一种评估电力监控系统设备脆弱性威胁程度的方法及系统 | |
Zheng et al. | Cyber security risk assessment for industrial automation platform | |
Liu et al. | Imperfect debugging software belief reliability growth model based on uncertain differential equation | |
CN105046421A (zh) | 电动汽车充换电设施安全综合评价方法 | |
CN106997437A (zh) | 一种系统漏洞防护方法和装置 | |
CN102708041A (zh) | 一种软件可信性质最小测试用例数的计算方法 | |
CN104022899A (zh) | 一种网络管理系统的三维评估方法及系统 | |
Zhang et al. | A cyber-insurance scheme for water distribution systems considering malicious cyberattacks | |
Ruo-xin et al. | Model for cloud computing security assessment based on AHP and FCE | |
Lv et al. | A ranking method for information security risk management based on ahp and promethee | |
Zhu et al. | Research on smart home security threat modeling based on STRIDE-IAHP-BN | |
CN113408117A (zh) | 一种评估电力监控系统网络攻击破坏力程度的方法及系统 | |
Chernov et al. | Determining the Hazard Quotient of Destructive Actions of Automated Process Control Systems Information Security Violator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20121003 |