軟件开发质量和风险的定量监理.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
軟件开发质量和风险的定量监理

软件开发质量和风险的定量监理  软件质量是指与软件产品满足规定和隐含的需求的能力和有关的特征的全体,即所有描述计算机软件优秀程度的特性的组合。   应用软件的质量依赖于问题需求的描?述、解决方案的建模设计、可执行程序的编码的产生以及为发现错误而运行软件的测试。一个优秀的监理工程师应该能够使用定量的方法来评估软件开发过程中产生的分析及设计模型、源代码和测试用例(use?case)的质量。?   软件开发质量的定量监理?   为了实现这种实时的质量评估,监理工程师们必须采用技术度量来客观地评估质量,而不能仅仅采用主观的方法进行评估。?   在评估中,首先要明确的一点是,软件需求是度量软件质量的基础。不符合需求的软件就不具备质量。?   而在定量监理实践中,通常需要使用一种被称为尺度度量的方法,这种定量度量适用于一些能够直接度量的特性,比如,出错率定义为错误数/KLOC/单位时间等。?   因而,对质量控制所应该建立的一些定量数据是:?   (1)明确性(无二义性)、完全性、正确性、可理解性、可验证性、内部和外部一致性、可完成性、简洁性、可追踪性、可修改性、精确性和可复用性的数据。这些数据可以用来评价分析模型和相应的需求规约质量的特征。?   公开的可能缺陷数与报告总缺陷数的对比则可以用来评价测试精确度和测试覆盖度,同时也可以预测项目发布时间。?   (2)产品发布前清除的缺陷数在总缺陷数中所占的百分比,有助于评估产品的质量。?   (3)按严重缺陷、子系统缺陷来划分,分类统计出平均修复时间,这样将有助于规划纠正缺陷的工作。?   (4)利用测试的统计数据,估算可维护性、可靠性、可用性和原有故障总数等数据。这些数据将有助于评估应用软件的稳定程度和可能产生的失败。?   在上述定量数据的基础上,就可以开始进行估算。?   1、基本的定量估算?   基本定量估算示例:?   设?   F为用功能点描述的软件规模;?   D1为在开发过程(提交之前)中发现的所有缺陷数;?   D2为提交后发现的缺陷数;?   D为发现的总缺陷数。?   因此, D=D1+D2?   对于一个应用软件项目,则有如下计算方程式(可以从不同的角度估算软件的质量):?   质量=D2/F;?   缺陷注入率=D/F;?   整体缺陷清除率=D1/D;?   同样以上期中的CAD软件为例,根据上期计算所得结果,功能点F为366,而在开发过程中发现了15个错误,提交后又发现了4个错误,则:?   D1=15,D2=4?   D=D1?+D2=15+4=19?   质量(每功能点的缺陷数)=D2/F=4/366=0.0109?   缺陷注入率=D/F=19/366=0.05191?   整体缺陷清除率=D1/D=15/19=0.7895?   有资料报告,美国的平均整体缺陷清除率目前只达到大约85%。而像ATT、IBM、摩托罗拉和惠普这样一些大公司的顶级项目,通过实施最佳实践,其缺陷清除率可以超过99%。?   众所周知,清除软件缺陷的难易程度是不同的。需求错误、规格说明、设计问题及错误修改是最难清除的。表1给出了美国平均缺陷的情况:?   表2反映的是CMM五个等级是如何影响软件质量的,其数据来源于美国空军1994年委托SPR(美国一家著名的调查公司)进行的一项研究。?   从表中可以看出,CMM级别越高,缺陷清除率也越高。?   在监理过程中,可以将这这些标准或指标结合起来使用,用以辨明可能存在的质量问题。?   2、对软件需求的估算?   假设在一个规约中有nr个需求,所以?   nr=nf+nnf?   其中,nf是功能需求的数目,nnf是非功能需求数目(例如性能)。?   为了确定需求的确定性(无二义性),一种基于复审者对每个需求解释的一致性的度量方法为:?   Q1=nui/nr?   其中,Q1表示需求的确定性,nui是所有复审者都有相同解释的需求数目。当需求的模糊性越低时,Q1的值越接近1。?   在CAD软件的例子中,假设计算机图形显示功能模块的功能性需求是10个,非功能性需求(响应速度和分辨率)是2个,所有复审者都有相同解释的需求数目是11个,则:?   Q1=11/12=0.916667?   而功能需求的完整性Q2则可以通过计算以下比率获得:?   Q2=nu/(ni×ns)?   其中,nu是唯一功能需求的数目,ni是由规约定义或包含的输入(刺激)的个数,ns是被表示的状态的个数。?   Q2只是测度了一个系统所表示的必需的功能百分

您可能关注的文档

文档评论(0)

d47fv82b5hI + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档