基于正交试验设计的软件操作剖面构造方法_第1页
基于正交试验设计的软件操作剖面构造方法_第2页
基于正交试验设计的软件操作剖面构造方法_第3页
基于正交试验设计的软件操作剖面构造方法_第4页
基于正交试验设计的软件操作剖面构造方法_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、-2994-0引 言操作剖面是软件可靠性工程的关键元素,在软件可靠性 工程中非常重要,开发操作剖面是软件可靠性工程的主要开 销 1。实践表明, 为一个 “平均” 项目开发操作剖面所需费用一 般为 1个人月 (“ 平均” 项目指的是由 10个开发人员、 历时 18个 月完成的、 源代码行数为 100000行的项目 。 该费用受产品或 领域操作总数量的影响很大, 所以需要对操作数目进行控制。传统的操作数目控制方法包括减小输入空间、 增大操作 宽度和忽略不频繁的操作 2。减小输入空间可以减少测试工 作量, 但可能造成系统的灵活性降低、 复杂度增加; 增大操作宽 度首先定义一个发生概率的差异范围, 然

2、后合并那些输入变量 相同而发生概率相差在规定范围内的操作, 方法能保证对软件 输入空间的覆盖, 但花费较多、 结果不易控制; 忽略不频繁的操 作是指除去那些发生概率小于 1减去可靠性目标值的非关键 操作, 方法既需要额外费用又不能覆盖软件的输入空间。针对传统的操作数目控制方法的不足, 本文提出一种基 于正交试验设计的解决方案。 正交试验设计具有 “均匀分散” 的特点 3,在软件测试领域主要用于选取软件的测试数据。Phadke 指出了在软件测试中如何系统地使用正交试验设计 4; R.Brownlie 等人基于正交试验设计开发了 OATS (orthogonal ar-rays testing s

3、ystem , 极大地提高了软件测试效率 5; 聂长海等人 将正交试验设计与多次单因素试验、 均匀设计进行比较, 指出 正交试验设计生成的配置测试用例更为实用与合理 6; 马长捷 等人使用包括正交试验设计在内的组合设计方法来优化软件 可靠性测试数据 7; 严进宝等人不仅通过正交试验设计来选取 可靠性测试数据, 还在此基础上提出了一个完整的软件可靠 性测试方法 8。与上述研究不同, 本文选取的不是测试数据而是构成操 作剖面的操作。 通过正交试验设计选择的操作在输入空间内 分布均匀, 这样进行的软件可靠性测试更有可能发现软件缺 陷。本文首先介绍相关的基本概念, 然后介绍方法的具体过 程,结合实例讲

4、述如何应用本文的方法,最后对方法进行分 析, 给出结论。1基本概念1.1属性属性在软件可靠性工程中没有明确的定义。 尽管同操作收稿日期:2007-07-29E-mail :fu_jianping作者简介:付剑平 (1979- ,男,湖南衡阳人,博士研究生,研究方向为软件可靠性、测试性; 陆民燕,女,教授,研究方向为可靠性管理和 度量、测试技术; 阮镰,男,教授,研究方向为系统工程、并行工程和软件可靠性。基于正交试验设计的软件操作剖面构造方法付剑平, 陆民燕, 阮镰(北京航空航天大学 工程系统工程系,北京 100083摘要:为了解决传统的操作数量控制方法中出现的问题, 提出一种基于正交试验设计的

5、软件操作剖面构造方法。该方法 首先确定操作额定值, 接着建立一个粗略的操作剖面, 然后在一些粗略操作对应的多属性区域内通过比较发生概率和正交 试验设计等方法选取新的操作, 最后整理操作及发生概率, 得到最终的操作剖面。应用该方法能够开发出满足要求的操作 剖面, 并分析指出了该方法的优越性。关键词:正交试验设计 ; 操作剖面 ; 额定值 ; 多属性区域 ; 发生概率 中图法分类号:TP311.5文献标识码:A文章编号:1000-7024(2008 12-2994-04Method to developing software operational profiles based on ortho

6、gonal experiment designFU Jian-ping,LU Min-yan,RUAN Lian(Department of System Engineering of Engineering Technology, Beijing University of Aeronautics and Astronautics,Beijing 100083, China Abstract :Many traditional approaches to controlling the number of operations have some problems and a new met

7、hod based on orthogonal experiment design is proposed to develop the software operational profile. First, calculate the operation rating and then develop a rough operational profile. Partition some operations corresponding to multi-attribute regions by comparing occurrence probabilities and design o

8、f orthogonal experiment. After some adjustment to operations and occurrence probabilities, the operational profile is accomplished fin-ally. An application indicates the method can generate an operational profile meeting demands and the analysis shows its superiority. Key words :orthogonal experimen

9、t design; software operational profile; operation rating; multi-attribute region; occurrence probability2008年 6月 计算机工程与设计June 2008第 29卷 第 12期 Vol. 29No. 12Computer Engineering and Design-2995-一样代表一个显著不同的处理过程, 属性不能独自成为操作, 只能是操作的一个组成部分, 因为它可能不是一个主要的系 统逻辑任务或者结束时未将控制权还给系统。 以 “ Word 打印” 中的 “页面范围” 为例, 它与

10、“打印机” 、 “副本” 的处理过程明显 不同, 三者具有不同的失效行为。然而为了打印 Word 文档, 除了需要设置页面范围, 还需要设置打印机和副本数目, 因此 同 “打印机” 和 “副本” 一样, “页面范围” 只是构成 “ Word 打印” 操作的一个属性。1.2多属性区域如前所述, 操作可能由多个属性构成。不同的操作可能具有相同的属性, 只是其中某些属性的取值不同。从软件输 入空间的观点来看, 操作可以对应输入空间内的一块区域, 而 多属性区域就是输入空间内具有相同属性的操作区域的和。 如果用 =1, 2,= 个属性_2, _=1,2, 则属性_2, ,最多可能组 成, 单个操作的预

11、计分析费用为/ºÍµ¥¸ö²Ù×÷Ô¤¼Æ·ÖÎö·ÑÓã»(2 分析被测软件, 为每个显著不同的处理分配一个操作 或属性值, 对于多属性区域暂时不作细分, 当作一个操作;(3 确定操作的发生概率。对于多属性操作, 除了确定操 作的发生概率, 还需确定所有属性取值的分支概率;(4 统计当前操作数量, 如果数量小于额定值就继续下一 步, 否则直接进行最后一步

12、;(5 判断是否存在多属性操作, 如果存在就继续下一步, 否 则直接进行最后一步;(6 分析多属性操作, 在额定值允许的情况下进一步划分 这类操作;(7 根据实际情况整理得到的操作及发生概率, 生成最终 的操作剖面。方法的第 1步计算额定值, 用于控制全过程的操作数目; 第 2、 3步与 Musa 操作剖面构造方法 1的对应过程类似, 区别 就在于没有将多属性区域进行细分;第 4步判断是否需要控 制操作数目; 第 5步判断操作数目能否再进一步控制; 第 6步 是方法的核心, 前面提过的操作选取原则就在该过程中具体 应用;第 7步是对操作剖面的微调。其中操作划分和剖面整 理的内容将在下面详细介绍

13、。2.1操作划分操作划分是本文方法的核心, 它既要根据额定值控制操作数量, 又要根据发生概率选取使用频繁的操作, 还要通过正 交试验设计在多属性区域中均匀地选取操作, 具体过程如下:(1 将所有多属性操作都标记成未正交处理状态; (2 将所有未正交处理的操作和已正交处理操作中的组合 作为候选元素, 选择其中发生概率最大的元素;(3 判断选择的元素是未正交处理的操作还是已正交处理 操作的一个组合, 如果是未正交处理的操作就对其进行正交 处理, 如果是一个组合就将该组合从其所在的操作中分离出来作为一个独立的操作;(4 判 断操 作数量是 否达到额 定值, 如果达 到额定值就 结束当前过程, 否则继

14、续选择发生概率最大的元素, 重复上 述过程。其中正交处理就是根据正交试验设计, 在多属性区域内 均匀选择操作的过程, 包括如下内容:(1 将选择的操作标记成已正交处理状态; (2 根据操作属性及取值数目选择合适的正交表; (3 预计操作数目, 如果当前操作数目加上选择的正交表 行数大于额定值就结束正交处理, 否则进行下一步;(4 根据正交表从多属性区域中抽取操作, 每次抽取都将 操作对应的区域从多属性区域中分离出来; 正交表的每一行 都对应抽取一个操作, 抽取完成后, 原多属性操作对应的区域 将减小。2.2剖面整理剖面整理是方法的最后一步。 经过前面的处理已经得到一系列的操作和发生概率, 一般

15、情况下, 此时得到的操作剖面 已可以作为最终的操作剖面使用, 除非出现以下情况:(1 操作数量超出额定值。 这种情况只可能出现在方法的第 2步, 为每个显著不同的处理分配一个操作或属性值后, 生 成的操作数量就大于额定值。此时有两种解决方案:追加 分析费用以提高额定值, 因为此时的分析费用已明显不能满 足当前软件的分析要求; 减小实际测试的软件输入空间, 如 前面介绍的减小输入空间、 忽略不频繁的操作等方法。(2 如果分析人员熟悉被测软件情况, 可以根据经验添加或合并某些操作。无论上述哪种情况, 都要保证操作数目在额定值的范围 之内同时所有操作的发生概率之和为 1。3实例应用3.1被测软件Te

16、st Case Studio (TCS 是本单位开发的一款软件可靠性测 试数据自动生成工具, 可以辅助用户对被测软件的使用情况 进行建模, 然后根据软件描述自动生成可靠性测试数据。 TCS 具有系统分析、变量分析、剖面分析和数据生成等功能,操 作众多。3.2应用过程如果细分, TCS 的操作多达几百个, 测试所有操作所需的 费用将远远超过对它进行可靠性测试的预算。 为了控制操作 数目, TCS 在操作剖面的构造过程中应用了本文提出的方法, 具体过程如下:(1 确定额定值:TCS 可靠性测试计划中用于分析操作、 准 备可靠性测试数据的费用为 100人时, 根据以往的经验, 预计 操作的平均分析费

17、用为 0.8人时, 由此得到操作剖面的额定值 为 125(/43的属性及其取值概率。(4 统计当前操作数量:从表 1可以看到, 当前共分析出 43个软件操作, 尚未达到操作剖面的额定值 125, 因此可以进行 下一步工作。(5 判断是否存在多属性操作:分析表明 TCS 存在多属性 操作, 这些操作将在下一步工作中分解。(6 划分操作:划分操作的第一步是将表 1的所有多属性 操作都标记成未正交处理状态, 然后在这些操作中选择发生 概率最大的操作。 由于在所有多属性操作中43共包含 3个属性, 每个属性包含 2个取值,根据属性和取值的个数可以确定使用正交表 L 4 (23 选取新的操作。由于即使当

18、前的操作数 43加上正交表 L4(23 的行数 4仍 小于额定值 125 ,所以可以从44 , 46、= 表 示新操作的发生概率、 表示新操作在原操作的分叉树中经 过的第43还 剩余 4个组合, 划分后的具体情况如表 3所示 ( 表明43 1打开项目 无 0.0843数据生成设置输入方式0.11截尾原则统计使用情况图 1属性及取值概率O 43“输入方式”属性顺序输入 =0.55时序输入 =0.45定数截尾 =0.95 定时截尾 =0.05定数截尾 =0.40定时截尾 =0.60“截尾原则”属性“统计使用 情况” 属性 统计 =0.10不统计 =0.90统计 =0.10统计 =0.10统计 =0

19、.10不统计 =0.90不统计 =0.90不统计 =0.90 44顺序输入, 定数截尾, 统计使用情况 0.00575 46时序输入, 定数截尾, 不统计使用情况 0.01782 43-2996-4分 析本文将操作数目控制方法与操作剖面的开发过程相结 合, 所产生的操作剖面构造方法具有如下特点:(1 节省剖面开发费用。 由于在操作剖面的开发过程中使 用了额定值对操作数目进行控制, 方法不会产生过多操作。 而 其它方法由于在开发过程中没有控制, 不仅需要较多的费用 来生成多余的操作, 还需要额外的费用来减少操作。(2 有效的使用分析费用。与其它方法相比, 方法能在分 析费用的范围内尽可能的细分操

20、作, 同时在细分过程中尽量 寻找那些使用频繁、 分布均匀的操作。由这些操作分析得到 可靠性测试数据将更有针对性, 更有可能发现软件缺陷。 (3 保证对输入空间的覆盖。 方法可以看作是对软件输入 空间的逐次细分, 在此过程没有出现减小输入空间的现象, 始 终保证了对被测软件输入空间的覆盖。(4 易于控制和实施。方法的基础是正交试验设计, 这是 在很多领域都已广泛应用的成熟方法, 具有规范的流程; 方法 的所有过程也都经过严格定义, 既易于人员实施也适合实现 软件自动化。通过分析可以发现, 基于正交试验设计的软件操作剖面 构造方法既节约费用、易于控制,又能保证对输入空间的覆 盖、 不会降低系统的灵

21、活性, 从而克服了传统的操作数目控制 方法的不足。尽管如此, 方法在以下方面还存在不足: (1 对于操作没有超过额定值的软件, 使用本文提出的方 法不但不能节省开发费用, 为控制操作数目所采取的措施还 可能需要较多的花费。(2 额定值的计算过于粗略。 方法在计算额定值的过程中 仅仅考虑了分析费用, 有些情况下开发费用和分析费用并不 能严格区分:当开发费用降低时, 分析费用增多; 而当开发费 用升高时, 分析费用又相应的降低, 这种情况下额定值就不能 通过简单的计算得到。(3 在多属性区域概念中提出的多属性区域包含所有属性 取值组合的假设, 实际情况可能并不满足。5结束语在软件行业日新月异的今天

22、, 软件可靠性已成为人们日 益关心的话题。如何有效的进行可靠性测试, 提高软件质量 也成为行业的热点。 本文提出了一个基于正交试验设计的软 件操作剖面构造方法, 实例应用和分析表明该方法具有经济 有效的特点, 能够开发出满足要求的操作剖面, 支持软件可靠 性测试。对于方法中存在的不足, 还需要通过进一步的研究 加以解决。参考文献 :1Musa J D. 软件可靠性工程 M . 韩柯译 . 北京 :机械工业出版社 , 2003.2Musa J D.Operational profile in software-reliability engineering J .IEEE Software,19

23、93,10(2 :14-32.3邓远北 , 周润兰 . 应用概率统计 M . 北京 :科学出版社 ,2001. 4Madhav S Phadke.Software reliability through design of experi-ments C .Proceedings of 2004Annual Reliability and Maintaina-biltiy Symposium.Alamitors,CA,USA:IEEEComputer Society Press,2004.5Richard Kuhn D,Michael J Reilly.An investigation of t

24、he applica-bility of design of experiments to software testing C .Procee-dings of the 27th NASA/IEEESoftware Engineering Workshop. Alamitors,CA,USA:IEEEComputer Society Press,2002. 6Nie Changhai, Xu Baowen. Generating test cases for software configuration testing J .Journal of Southeast University (

25、English Edition ,2004,20(1 :26-30.7马长捷 , 朱小冬 , 袁野 . 基于组合设计的软件可靠性测试用例设 计方法 J . 微计算机信息 ,2006,22(7-3 :263-265.8严进宝 , 徐锡山 , 钟读杭 . 基于正交试验设计的软件可靠性测试 J . 计算机工程 ,2006,32(4 :52-54.(上接第 2993页 5结束语Hibernate 是基于 Java 的开放源代码的持久化中间件, 它 对 JDBC 做了轻量级的封装,在应用程序中取代了大部分 JDBC 代码。利用 Hibernate 提供的持久化服务, 可完成对象 /关系映射工作,简化了数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论