- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向开发阶段软件缺陷分类方法研究
面向开发阶段软件缺陷分类方法研究
摘要:提出一种面向开发阶段的软件缺陷分类方法PhaseDC,将缺陷和软件开发各阶段相关联,计算阶段及过程的缺陷排除有效性,并结合缺陷的类型和表现形式等详细信息分析开发过程的质量,以帮助软件组织促进并实施过程改进活动。通过实例说明了该方法在过程改进中的应用,并对方法的完备性、正交性和一致性进行了分析验证。
关键词:软件缺陷;缺陷分类;开发阶段;过程改进
中图分类号:TP393.04文献标志码:A
文章编号:1001-3695(2008)03-0759-05
0引言
软件缺陷分类是软件缺陷度量和分析的基础,IEEE/ANSI标准中将缺陷理解为产品中的反常现象。一方面,缺陷的检测和清除能够保证最终开发的软件产品的质量;另一方面,缺陷包含着丰富的信息,对缺陷的分析可以帮助软件组织获得开发过程的质量,跟踪并控制项目的进程,从而实施过程改进活动。缺陷的度量已成为软件产品度量和过程度量中的必要环节;同时缺陷的分析既可以用来评估软件产品的质量,又可以帮助掌握和评价软件开发过程的质量。良好的缺陷分类方法是帮助实施缺陷度量和分析的必要前提。
目前有很多应用成熟的缺陷分类方法,这些方法的侧重点不同,其复杂程度和适用的具体条件也不相同。本文提出了一种面向开发过程中的各个阶段来实施缺陷分类的分类方法PhaseDC。这种分类方法能够帮助软件项目的开发人员和测试人员快速地定位各个缺陷的属性值,建立缺陷和开发阶段的关联关系,从而分析每个阶段的缺陷排除有效性;结合缺陷的详细描述信息找到改进软件过程的依据,从而有效地实施过程改进活动。不同于已有的缺陷分类方法,该方法着重关注缺陷关联的开发阶段,确定了每个缺陷的引入阶段和发现阶段;利用阶段的信息对缺陷进行充分的分析,找到开发过程中存在的问题和需要改进的地方。
1相关工作
缺陷可以被捕获并分析的属性特征有多种,通常包括的语义信息有:缺陷被检测到的位置、引入;发现及修改缺陷的活动;缺陷产生的征兆及原因、严重程度、最终影响、形成或修复机制以及发现并排除缺陷的成本等[1]。
最初使用的缺陷分类方法比较简单,如Putnam等人提出的缺陷分类方法[2];国家军用标准GJB437的软件错误分类方法。这两种方法可以分析缺陷的来源和出处,为开发过程的改进提供线索,但提供的缺陷相关信息是很有限的。
Thayer软件错误分类方法是按错误性质分类[3],包括16个类、164个子类。该方法通过对错误进行分类统计来了解错误分布状况,对错误集中的位置重点加以改进。其执行过程比较复杂,同时没有考虑缺陷相关的过程原因,并不适用于过程改进活动。
正交缺陷分类ODC是IBM公司提出的缺陷分类方法[4]。该分类方法提供了一个从缺陷中提取关键信息的测量范例,用于评价软件开发过程,提出过程改进方案。ODC分类方法主要包括缺陷的八个属性特征,即发现缺陷的活动、缺陷影响、缺陷引发事件、缺陷载体、缺陷年龄、缺陷来源、缺陷类型和缺陷限定词。该方法覆盖的语义信息包括缺陷的位置、缺陷产生的征兆、最终影响以及缺陷的形成机制等。其中并没有特别针对开发阶段来对缺陷进行分类的属性,即没有明确的缺陷引入阶段、发现阶段等信息。此外,ODC中的缺陷类型主要是针对编码阶段的缺陷划分的,也不适用于对整个软件生命周期中产生的缺陷进行分类。
HewlettPackard缺陷分类方法是HP公司软件度量委员会于1986年开发的缺陷分类方法[5]。HP缺陷分类方法主要通过三个属性来描述缺陷,即缺陷来源、缺陷类型和缺陷的形成方式。这种分类方法同样没有获取缺陷被引入和发现时所在的开发阶段,因此也不易明确地将缺陷定位在开发过程的各个阶段上。
电气和电子工程师学会制定的软件异常分类标准(IEEE standard classification for anomalies对软件异常进行了全面分类,给出整个缺陷分类方法的属性框架,具有较高的权威性;同时可针对实际的软件项目进行裁剪,灵活度高。然而,该标准通常需要根据项目情况订制,且分类过程复杂,不利于快速地对缺陷进行分类和度量。
此外还有一些用于特定活动的缺陷分类方法,如用于需求检查的缺陷分类方法、用于设计检查的缺陷分类方法[6]等。由于这些方法是为某一特定的软件开发活动提出的,其使用范围也是有限的。
2PhashDC软件缺陷分类方法
PhaseDC是笔者提出的一种新的缺陷分类方法,它通过结合对软件开发阶段的分析来指导过程改进。
2.1总体框架
在缺陷分类方法中,采用缺陷的属性来描述缺陷。为了能够清晰地定义刻画缺陷的属性,本文首先建立了P
文档评论(0)