汉无为 / 关注 / 收藏:什么是正交缺陷分类方法(ODC)?

分享

   

收藏:什么是正交缺陷分类方法(ODC)?

2022-01-16  汉无为

软件研发过程中产生的缺陷,如何更好的进行分析,来辅助整体的研发能力和测试水平的提升?以下介绍一种使用比较广泛,比较全面的缺陷分类统计分析方法 - 正交缺陷分类方法。

正交缺陷分类法(Orthogonal Defect Classification, ODC)由IBM公司提出,它结合了根本原因分析和统计建模两种软件缺陷分析技术的优势,提供了一套用于捕获缺陷数据关键特性的方案,并就如何对分类的缺陷数据进行分析给予了指导。ODC用多个属性来描述缺陷特征,它的最新版本定义了8个缺陷属性,对应了缺陷的发现和修复两类特定的活动。其中Defect Type和Triggers属性是该分类方法的基础。Defect Type反映了缺陷的内在特征,Triggers则反映了缺陷的形成过程。ODC适用于缺陷的定位、排除、原因分析及预防活动,同样,它也可用于改进的软件开发过程。

ODC的缺陷属性定义如下:

1、Activity 活动 指的是缺陷发现的具体活动,如单元测试、系统测试等。

2、Triggers 触发 指的是促使潜在的缺陷显露成为一个可见的故障需要哪些条件和操作。即通过这个条件和操作,可以重现这个缺陷。触发因素属性与软件的生命周期相联系,在不同的阶段有不同的方法用于发现缺陷,与之相应就有不同的触发因素。

3、Impact 影响 指的是对用户或者认识到的、或者实际的影响。

4、Target 目标 指的是修复缺陷时,需要改动的目标,如设计、代码等修复缺陷。

5、Defect Type 缺陷类型 缺陷类型被分为8大类: 赋值、检验、算法、时序、接口、功能、依赖、文档。对于相关缺陷类型的说明如下:

  • 功能缺陷:严重影响程序功能、影响用户接口、产品接口或者全局数据结构的软件缺陷, 而且一般需要对软件设计进行修改。

  • 赋值缺陷:缺陷是由于没有正确的对变量赋值或初始化而引起的需要修改赋值或初始化语句。

  • 接口缺陷:不同模块、功能实体之间交互时表现出的缺陷。

  • 检验缺陷:在条件语句中没有正确的对变量或参数检查造成的缺陷。

  • 时序缺陷:不同模块顺序执行时影响程序的执行结果。

  • 依赖缺陷:相互依存的处理过程、数据结构或对象之间的关系存在的不确定性,修改此缺陷时需要更改相互依存的条件。

  • 文档缺陷:影响软件开发的各种文档错误或影响软件维护的各种错误文字记录。

  • 算法缺陷:程序有效性方面或者正确性方面的问题, 修正这些算法问题不需要改变软件设计, 只需要重新实现一个算法或者改变局部数据结构。

6、Qualifier 限定词 定义了引起缺陷的原因,确定缺陷类型是缺失、不正确还是多余。即修改要做哪些工作,是增加缺少的功能代码、修改不正确部分还是删除多余的代码。

7、Source 来源 指的是缺陷是通过什么途径引入的。比如:开发人员自己引入,重用库中的错误,第三方软件问题或移植的其它软件的错误。

8、Age 阶段 指的是缺陷是在哪个阶段引入的。指明是原来版本存在的或者新发现的,是重写函数时引入的还是修复之前缺陷时引入的。

利用正交缺陷分类方法,能很好的对缺陷进行定义和分析,但因为其的复杂性,在使用过程中,有几点需要注意的事项:

  • 要对记录缺陷的人员进行培训,因为正交缺陷分类的分析是基于正确的缺陷分类,如果缺陷收集人员不能较好的理解各种分类的定义,为缺陷选择了不适合的分类,将直接影响分析的结果;

  • 根据历史项目数据估计缺陷的分布特征,将实际结果与计划相比较,评价测试是否有效;

  • 需要根据组织的情况对分类进行裁剪或补充,不同的组织在开发不同的软件产品时,根据产品特点,对缺陷的分类有不同的侧重点,只有适合于组织自身的分类,才是对过程改进有效的分类。

图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多