缺陷分析之缺陷预防的过程

在研发过程中,使用缺陷预防的策略是一个很复杂的过程,关于缺陷预防的具体过程,如图所示。
在这里插入图片描述
整个缺陷预防策略的详细步骤说明如下:
第一步:项目进行研发,研发的过程主要包括需求管理、设计和编码三个阶段,这里统称为研发阶段,因为在分析缺陷预防时,研发的阶段没必要分的那么仔细。
第二步:在测试过程中就会发现一些缺陷,此时就需要记录这些缺陷并对缺陷进行跟踪,现在主要是通过缺陷管理工具来对这些缺陷进行记录和跟踪。
第三步:记录的问题会被收集到缺陷数据库中,同时可以对这些问题进行分析,分析这些缺陷出现的原因和解决的情况。
第四步:对缺陷分布的趋势和原因进行深入的分析,分析的目的是找到现阶段研发存在的问题。
第五步:阶段过分析过程找到改进的方法,进而对现在的研发流程进行改进。
需要注意的是,在分析过程中其实是很难一次就改进完成,可能需要多轮的分析与改进。
在使用DP策略时,管理层必须在组织层和项目层进行一些书面的说明,当然这类书面说明又包括几方面的内容:长期的一个资金计划、资源和DP活动组织相关的内部管理。
在实施DP之前,需要对DP项目成员进行培训,培训主要包括软件保证、配置管理、文档支持和DP中常见的主要的统计方法。
在整个DP活动过程中,应该定期的检查DP团队沟通和协调的事项,评审过程中,通常需要确定以下几个方面的内容:
Ø 引入缺陷的原因;
Ø 缺陷的影响;
Ø 预防缺陷所花费的改进成本;
Ø 对软件质量的预期影响;
具体的关于缺陷预防和分析的步骤如下:

  1. 数据文件与度量
    数据文件是整个缺陷分析最基础的工作,如果没有一个数据文件来支撑,那么就无法对缺陷进行详细的分析。通常缺陷的数据会被集中记录在一个存储库中,在一些成熟的公司是有专门的缺陷分析管理工具,这和我们现在用的缺陷管理工具可能还会有所不同,这样可以方便DP团队对缺陷进行跟踪和分析。通过缺陷分析管理系统可以详细的看到缺陷的细节和开发修改的计划或建议。这个分析系统还会记录缺陷修复成本与时间的关系,以及如果这个缺陷最后不被修复后所带来的风险。
    在对缺陷进行度量时,需要定期组织缺陷预防活动的审查,这样的目的是更好的帮助管理人员去判断缺陷预防的情况。当然关于审查或评审的时间应该是由组织来决定,当然有可能这个时间会很长,当能这个过程中应该存在处理异常的机制,如果出现异常应该有方法可以处理。在评审时评审需要关注内容包括:主要缺陷、缺陷的分类和缺陷分析的频率。
    此外,相关的管理层应该评审CP策略的成效,记录活动的一些属性,缺陷实际修复的成本和预计的成本。对活动的有效性进行验证,是确保缺陷预防策略成功的有效途径。
  2. 案例研究分析
    在第一步我们收集了整个分析过程中的一些数据,也就是做成了数据仓库,并对这些数据进行分析和度量,完成这些之后,应该实时的对这些案例数据进行分析,这是整个缺陷预防中一个最重要的步骤。案例分析的方法就是常用的缺陷分析方法,关于常用的缺陷分析方法在7.6节中进行了详细的介绍。
  3. 基准线
    在对以前的项目进行分析时,需要对已分析的数据创建一个参考基线,这个参考基线主要是用于对其它项目进行分析时参考用的,包括很多的缺陷分析方法其实都应该有一个参考值,否则很难对数据进行分析。
    在对数据进行分析时,应该对数据进行分类,就如ODC缺陷分析法其实就是从不同维度对缺陷进行分析,也就是从不同的分类角度来对缺陷进行分析。分析时按研发阶段从5个阶段进行分析,研发的5个阶段包括:需求分析、系统设计、详细设计、编码和系统测试。一般情况下对缺陷从10大类的角度进行分析,并且将每个分类划分为三级,这个就可以用一个4位数来表示每类缺陷,通常缺陷的10个分类与说明见表:
    在这里插入图片描述
    上面只是对缺陷进行简单的分类,但这个分类还是太大了,不足以找到预防的方法,所以需要对缺陷进行再次挖掘,找到更深层次的原因,这样才能更好的定位引起缺陷的原因,下面以分析需求为例,对需求引起的缺陷进行详细的分析。
    下面是一个项目的实际数据,按上面的10大类对缺陷进行分类,分类后的缺陷分布见表。
    在这里插入图片描述
    现在对上面10大类的的缺陷中的需求类的缺陷进行第二次挖掘,主要从四个方面对需求的缺陷进行分析:需求的完整性、需求的演示、需求变更和需求的正确性四个维度。分类后的缺陷分布见表。
    在这里插入图片描述
    下面对需求的完整性进行第三次挖掘,分析由于什么原因影响需求完整性,主要从三个维度进行分析:需求不完整、丢失或未指定的需求、过于广义的需求,分类后的缺陷分布见表。
    在这里插入图片描述
    之所以需要对缺陷进行多次挖掘的目的是找到缺陷分布的根本原因,上面只是针对需求进行了分析,接下来使用同样的方法对其它的维度进行分析。
    当每个维度的内容都经过深度挖掘和分析后,接下来就可以根据根本原因分析法找到改进的方法或过程,以防止下一版本出现类似的缺陷,当然对于常见的缺陷类型显然在我们关注时优先级是最高的。在DP分析过程中将DP预防的会议或相关培训灌输到研发阶段中,并且需要对缺陷进行记录和度量,以确定预防措施是否生效。
    最后一步是分析改进后缺陷分布的情况,并和改进前的缺陷分布进行比较,以确定缺陷预防策略的有效性,之后将预防策略写入到公司的标准流程体系中,之后再次对缺陷进行分析,如此不断的循环,不断的完善OSSP标准流程,这样缺陷预防的策略就会越来越有效。
  4. 期望结果
    期望结果是指当我们不断改进缺陷预防策略时,必须将这些预防的策略建立成一套标准流程并且列出每个阶段预防策略的检查点,形成规范文章。
    需要完善的策略主要包括以下内容:
    Ø 应该有一套方法对需求文档中的需求进行编号;
    Ø 在描述需求时应该有一套方法来降低二义性的需求出现;
    Ø 将公用的支持和实施提取为策略;
    Ø 改进软件需求规格说明书的模板;
    Ø 在需求阶段应该使用上下文的方式来表达,在设计阶段应该使用功能接口或界面的方式来表达;
    Ø 在研发的所有阶段,改进每个阶段检查点清单;
    Ø 制定原因分析的策略和会议讨论或评审策略;
    Ø 测试应该有一套策略;
    如何评估缺陷预防策略的质量呢?一般从以下四个维度来评估:
    Ø 在研发过程中,每个阶段总的缺陷数减少;
    Ø 研发的各个阶段的缺陷分布转变,即前期发现的缺陷数占总缺陷数的比例增多;
    Ø 开发的成本降低;
    Ø 开发的周期缩短。
  5. 改进策略的成果
    通过上面的分析可以找到缺陷预防的改进策略,但这些改进策略必须应用到整个研发过程中去,这样才能达到真正意义上的对缺陷进行预防。
    在项目开始时,在研发的每一个阶段都需要举行相关的会议,来表达预防缺陷和因果分析的重要性,并且在每个阶段评审时应该有相应的检查清单,在进行同行评审时,应该对照这些检查清单来评审。
    在整个研发过程中,每个阶段都应该使用缺陷跟踪系统详细记录缺陷并对其原因进行分析,现在很多公司都有自己的缺陷管理系统,将缺陷记录在缺陷管理系统中,这样可以更好的跟踪缺陷解决的方法和缺陷从开始记录到处理结束后的整个解决过程。
    在对缺陷进行原因分析时,缺陷的解决方案必须是要让人满意的,并且通过会议来讨论,这样可以让大家在整个过程中,对缺陷的预防和改进有一个较好的理解。
    以上是缺陷预防的5个步骤,核心步骤还是缺陷分析和改进流程的确定。
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件质量管理实践 ——软件缺陷预防、清除、管理实用方法 目录 前言 1 致谢 3 序 3 宣传语 4 目录 4 第4章 同行评审 5 4.1 同行评审与测试的关系 6 4.2 同行评审的种类和对象 7 4.2.1 同行评审的种类 7 4.2.2 同行评审的对象 8 4.3 同行评审过程 8 4.3.1 正式评审流程 9 4.3.2 技术审查流程 9 4.3.3 走查流程 10 4.4 同行评审方式的选择 10 4.4.1 三种同行评审方式的比较 10 4.4.2 同行评审的结果 11 4.4.3 正式评审的特征 11 4.4.4 工作产品的同行评审方式 11 4.5 迭代生命周期的审查 12 4.6 同行评审的注意事项 13 4.6.1 同行评审遵循的原则 13 4.6.2 同行评审关注的问题 14 4.6.3 同行评审通过的准则 14 4.6.4 同行评审的经验共享 14 4.6.5 文档审查重点 15 4.7 同行评审的度量 15 4.7.1 常用度量元 16 4.7.2 同行评审的质量准则 16 4.7.3 建议的同行评审效率 16 4.7.4 同行评审覆盖率 17 4.8 评审常见问题 17 4.8.1 文化问题 18 4.8.2 准备问题 18 4.8.3 焦点问题 19 4.8.4 人员问题 19 4.8.5 效率问题 20 4.8.6 效果问题 20 4.9 小结 20 第7章 软件度量 21 7.1 软件度量及其方针 22 7.2 度量活动 23 7.2.1 度量目标 23 7.2.2 度量元 25 7.2.3 度量模型 26 7.2.5 度量方法与采集(1) 28 7.2.5 度量方法与采集(2) 31 7.3 资源模型 32 7.3.1 资源模型的定义 32 7.3.2 项目级资源模型 34 7.3.3 组织级资源模型 35 7.3.4 软件质量度量 36 7.4 数据质量 37 7.4.1 数据的真实性 37 7.4.2 数据的同步性 37 7.4.3 数据的有效性 37 7.4.4 数据的一致性 37 7.5 软件度量相关问题 38 7.5.1 增加度量正确性的措施 38 7.5.2 软件过程性能 38 7.5.3 度量过程的常见问题 39 7.6 缺陷度量 40 7.6.1 什么是缺陷度量 40 7.6.2 缺陷度量元 41 7.6.3 缺陷密度的定义 41 7.6.4 缺陷密度的用途 42 7.6.5 缺陷管理库 42 7.7节"缺陷分析"。 43 7.7.1 缺陷种类分析 43 7.7.2 缺陷根源分析 44 7.7.3 缺陷注入-发现矩阵 45 7.7.4 收敛趋势分析 45 7.7.5 回归分析 48 7.7.6 缺陷排除分析 49 7.7.7 ODC缺陷分析 51 7.8 小结 51

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值