第9章软件质量与软件工程标准化詳解.pptVIP

第9章软件质量与软件工程标准化詳解.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
9.4.2 CMM的内部结构和进化过程 表9-4 关键过程域分类表 过程分类 等级 管理方面 组织方面 工程方面 优化级 技术改造(12) 过程改造管理(10) 缺陷防范(18) 可管理级 定量完成过程(19) 软件质量管理(13) 已定义级 集成软件管理(19) 组间协调(17) 组织过程聚焦(16) 组织过程定义(11) 培训程序(16) 软件产品工程(20) 同级评审(9) 可重复级 需求管理(12) 软件项目策划(25) 软件项目跟踪监控(24) 项目子合同管理(22) 软件质量保证(17) 软件配置管理(21) 初始级 无序过程 9.4.3 利用CMM进行成熟度评估 CMM有两个基本用途 软件过程评估的目的是确定一个开发组织的当前软件过程的状态,找出组织所面临的急需解决的与软件过程有关问题,进而有步骤地实施软件过程改进,使开发组织的软件过程能力不断提高。 软件能力评价的目的是识别软件开发组织的能力。通过利用CMM模型确定评价结果后,就可以利用这些结果确定选择某一开发组织的风险。或者用来监控开发组织现有软件工作中软件过程的状态,进而提出应改进之处。 9.4.4 CMM与ISO9000系列标准 CMM和ISO 9000系列标准都以全面质量管理为理论基础,都针对过程进行描述,二者在实质上是基本相同的,并且都强调过程控制、体系文档化、PDCA持续改进等。 ISO9000标准可通用于各个行业、各种规模、各种性质的组织。 CMM则是专门针对软件行业设计的描述软件过程能力的模型,其标准描述、实施方式、相关要求均非常适合软件产品的开发、生产流程,在软件项目的开发管理过程中更具有指导意义和实效效果。但只是属于美国软件开发标准。 9.4.5 我国的软件评估体系SPCA “软件过程及能力成熟度评估”(简称SPCA)是软件过程能力评估和软件能力成熟度评估的统称,是我国信息产业部会同国家认证认可监督委员会在研究了国际软件评估体制。 企业实施SPCA一般需进行七个阶段:标准培训、组织职能建立和文件体系完善、文件评审、差距分析、持续支持、中期评估、最终评估。 通过软件能力评估制度强化软件工程标准贯彻,带动软件过程方法的工具软件的开发与应用,促进软件过程管理专业化、规范化,降低软件开发风险、增加软件企业的市场竞争力。 小结 本章主要介绍了软件质量的特性、软件质量、软件可靠性和复杂性、软件工程标准化及质量认证等。 软件质量是软件工程活动追求的主要目标之一。追求产品的质量有两个主要目的,一是开发正确的产品,二是正确的开发产品。 软件可靠性表明了一个软件系统按照用户的要求和设计的目标,执行其功能的正确程度。软件的可靠性评价指标有很多种。软件复杂性是指程序的结构性、模块性、简明性、简洁性和可理解性的程度。提高和保证软件可靠性应贯穿整个软件生命周期,落实到软件生命周期中各阶段的每个环节。 软件危机的出路在于软件开发的工程化和标准化。软件标准化包括程序设计语言的标准化和软件过程的标准化。 习题 :P366 第1、3、5、8题 2)分别测试法 设想由两个测试人员同时测试一个软件程序的两个副本。用T表示测试时间。 在T=0时,故障总数为B0; T=T1时,测试员甲发现的故障数为B1; T=T1时,测试员乙发现的故障数为B2; T=T1时,测试员甲、乙发现的相同故障数为Bc; 则在统计的角度上,测试之前的故障总数: 为进一步求精,可以每隔一段时间进行一次并行测试,如果几次估算的结果相差不多,则可取其均值作为Et的结果估算值。 例:对一长度为72000条指令的程序进行测试,第1个月由A、B两名测试员独立测试。第1个月后,A发现并改正40个错误,使MTTF达到20h。而B发现32个错误,其中的8个A也发现了。以后由A单独继续测试这个程序。问: (1)刚开始测试时,程序原有错误共多少个? (2)为使MTTF达到360h,还必须改正多少个错误? 解:(1)本题采用了分别测试法,因此,可以估算出刚开始测试时程序中原有错误总数为: (2) 由于: 则: 如果: 那么: (个) 所以,为了达到平均无故障时间360h,总共需改正153个错误,A测试员已经改正40个错误,还需再改正113个错误。 9.2.5 复杂性 软件复杂性(complexity)是指程序的结构性、模块性、简明性、简洁性和可理解性的程度。 程序复杂性度量的参数主要有: 规模:程序指令条数或源程序行数; 难度:与程序操作数和操作符有关的度量; 结构:与程序分支数有关的度量; 智能度:算法的难易程度。 程序复杂性度量的方法主要有三种。 1)代码行度量法 它是用程序代码行的多少来衡量程序的复杂性。 该方法的基本考虑

文档评论(0)

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

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

1亿VIP精品文档

相关文档