2022年一种多维度的软件系统可靠性测试方法研究 .pdf
《2022年一种多维度的软件系统可靠性测试方法研究 .pdf》由会员分享,可在线阅读,更多相关《2022年一种多维度的软件系统可靠性测试方法研究 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一种多维度的软件系统可靠性测试方法研究一种多维度的软件系统可靠性测试方法研究摘 要: 传统的软件可靠性测试更多偏重于软件的功能方面。针对于这个不足之处,提出了结合操作剖面和性能测试的一种相对完善、全面的软件可靠性测试方法。归纳总结软件内部可靠性设计、外部高可用技术以及容灾恢复规范等诸多影响软件系统可靠性的因素,设计可靠性操作剖面要全面考虑这些因素。此方法是对传统方法的有用补充。最后通过一个案例简要介绍了该方法。关键词:可靠性测试;可靠性设计;高可用技术;容灾恢复;性能测试0 引言对于软件可靠性不同的标准有着不同的定义,从国内标准和国外标准两个方面看:IEEE对软件可靠性做出了如下的定义1 :(
2、1)规定的条件下,在规定的时间内,软件不引起系统失效的概率;(2)在规定的时间周期内,在所述条件下软件执行所要求功能的能力。我国 GB/T 16260.1-2006软件工程产品质量第1 部分:质量模型对可靠性的定义 2 :在指定的使用条件下,软件产品维持规定的性能级别的能力。该标准并解释软件不会损耗和老化。软件可靠性取决于软件产品的使用方式和所选择的程序选项,与时间无关,可靠性的定义已经被名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - -
3、- - 扩展为“维持所规定的性能级别的能力”,而不是“完成所需功能” 。上述两种说法的侧重点略有不同,IEEE强调的是概论和能力,偏重功能,而国标强调的是能力,偏向于性能。虽然侧重点不一样,但是可以看出计算机软件系统是指由系统软件、支撑软件、应用软件以及相关硬件组成的计算机软件系统。作为一个综合的整体系统,其可靠性依赖因素不仅仅是其软件本身,还涉及多方面的因素,包括人员、技术、管理等。可靠性的评价不局限于功能性,应该扩展到性能方面。本文立足于分析影响软件系统特定使用环境下的可靠性的脆弱点,提出从软件本身和外部使用环境所涉及的高可用技术和管理制度等多方面设计软件可靠性测试操作剖面,并结合性能测试
4、进行可靠性的验证测试。1 软件可靠性测试操作用例设计的考虑因素1.1软件内部可靠性影响因素通常软件内部可靠性问题是软件本身所固有的,与外部因素无关,只与软件本身的使用选项有关。例如一个有溢出错误的软件,不论软件的备份机制如何完备,当溢出错误的输入满足时,软件输出必将溢出。在严格遵循软件工程原理的基础上,为了保证和提高软件的可靠性,通常在软件设计过程中采用避错设计、 查错设计、 改错设计和容错设计等软件可靠性设计方法,所以从内部可靠性影响因素来说,软件可靠性测试用例应考虑如下设计以提高有效性和正确性。(1)避错设计软件可靠性设计的首要方法体现在预防为主的思想。软件产品在设计过程中的避错设计目的是
5、使软件不发生错误或少发生错误。原则是控制和名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 减少程序的复杂性。下列方法可以在避错程序设计中参考,如参数化、公共数据和变量、非授权存取限制、无意指令跳转处理、程序检测点设置、寻址模式选用、数据区隔离、安全关键信息要求、信息存储要求、算法选择要求。下列的结构和技术容易引起系统的缺陷,设计测试用例时优先考虑如下操作和结构类型:浮点数、指针、动态内存分配、并行、递归、中断、继承、别名、默认输
6、入的处理。(2)查错设计软件查错设计是通过赋予程序自校验功能,使程序在运行中能自动发现错误的设计方法。包含被动式错误检测和主动错误检测。前者即在程序的若干部位设置检测点,等待错误出现时触发告警;后者能自动对程序状态进行检查。对于查错设计的验证,测试用例优先考虑如下操作进行设计:按照已知的数据极限值检查数据边界的输入输出;按照变量间恒定关系检验变量的输入和结果输出;检查所有多值数据的有效性;对冗余的输入数据进行一致性检验;循环等待次数控制。(3)改错设计改错设计通过赋予程序自我改正错误的能力,减少错误危害程度。故障隔离技术是改错设计的常用方法。改错设计的关键前提是准确地定位软件错误原因和错误的代
7、码,减少软件错误造成的损害,将损害限制在可以接受的范围内。对于改错设计的验证,可靠性测试用例可以参考如下方法:用户的应名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 用程序或数据访问受控,其他用户不能轻易修改;应用程序引用或修改操作系统的编码或操作系统内部的数据应受控;操作系统的错误不应引起应用程序和数据的变更;应用程序不能终止操作系统工作;应用程序不能触发操作系统修改其他程序或数据。(4)容错设计软件容错是程序在错误已被触发的
8、情况下,系统仍然具有正常运行能力。常用的容错设计有时间冗余、结构冗余和信息冗余。时间冗余是以消耗时间开销为代价获取软件系统高可靠性的一种手段,如指令重复执行和程序重复执行。对于重复执行不成功时,通常发出中断,转入错误处理程序,或对程序重复技术计算、重新组合系统、放弃程序处理。结构冗余是针对软件系统不同版本的并行运行的冗余设计。对相同的初始条件、相同的输入操作,多版本结构的结果应一致,或者对不同的结果实行表决后决定是否继续执行(多数决定、一致决定)。信息冗余是为检测或纠正信息在运算或传输中的错误外加的一部分信息。如奇偶校验码或者类似MD5 的完整性校验来确保数据完整和正确;信息之间应保持足够的安
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年一种多维度的软件系统可靠性测试方法研究 2022 一种 多维 软件 系统 可靠性 测试 方法 研究
限制150内