- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
个体软件过程——缺陷排除的经济效益.ppt
个体软件过程 —— 缺陷排除的经济效益 欧阳柳波 湖南大学软件学院 一、缺陷排除问题 由于软件的规模和复杂度不断增加,缺陷排除将变得越来越昂贵、越来越耗时。如,一个早期的激光打印机的支持程序需要20,000行代码,但现在需要100万行以上的代码。 为了了解和控制缺陷排除的费用,需要测量缺陷排除的效果。 一种测量方法是计算每小时排除缺陷的个数。 一、缺陷排除问题 另一种是计算缺陷排除效益,即测量通过某一排除方法所发现的缺陷的百分比。如一个产品在开始测量时有100个缺陷,在测试阶段发现了45个缺陷,那么测试阶段的缺陷排除效益就是45%。 当知道每种方法的排除效益和排除率之后,就知道该如何更好地发现和修复缺陷。 二、缺陷排除时间 对于较大型的程序,需要花费很多时间来发现和修复缺陷。如,Microsoft的NT系统进行测试时,250个工程师花了一年的时间共发现和修复30,000个缺陷,平均每16个小时修复一个缺陷。 缺陷越多,修复越迟,修改工作的费用就越大,而且增长得惊人。如修复一个缺陷,在代码复查阶段只要几分钟;在单元测试时就要增长几倍,达几十分钟;而到集成测试或用户使用阶段,一般要几个到几十个小时才能修复。 三、缺陷引入和排除的经验 在设计阶段,工程师一般每小时引入1~3个缺陷; 在编码阶段,一般每小时引入5~8个缺陷; 在测试阶段,每小时排除2~4个缺陷; 在代码复查阶段,每小时可发现6~12个缺陷。 三、缺陷引入和排除的经验 缺陷管理像沿着一个下降的自动扶梯向上走。在设计和编码阶段引入缺陷,当发现和排除缺陷时,又需要花费更多的时间进行重新设计和重新编码。又有可能引入更多的缺陷。 为了赢得这场比赛,就需要减少缺陷引入率,增加缺陷排除率,因此必须计算和跟踪缺陷的引入率和排除率,从而需要使用PSP方法收集必要的数据。 四、节省缺陷排除时间 缺陷引入和排除示例 四、节省缺陷排除时间 假设有5位工程师要开发一个50,000行代码的软件。计划每个人开发10,000行代码的组件,然后集成为一个系统进行测试。 根据一般工程师的数据(如上表),每个人每千行代码中将引入100个缺陷,则总计有5000个缺陷需要发现和修复。 按照典型的比率(如上表),在编译阶段大约发现2500个缺陷,在测试阶段再发现2000个缺陷,则大约还有500个缺陷要到集成和系统测试时才可能发现。 四、节省缺陷排除时间 如果以大约每10个小时的速度发现这些缺陷,则排除这些缺陷大约需要这5位工程师花5000小时。如果整个组不做其他事,每周工作40小时,需要花费6个月的时间。 如果每个人首先自己复查了程序,然后同组之间进行互查,将至少节省5个月的测试时间。对于一个为期2年的项目,其意义是重大的。 五、在PSP项目计划总结表中每小时缺陷数的计算 PSP项目计划总结表 学生 学生A 日期 4/6/2003 、 程序 程序号# 14 、 教师 教师X 程序设计语言 Ada 、 五、在PSP项目计划总结表中每小时缺陷数的计算 五、在PSP项目计划总结表中每小时缺陷数的计算 六、缺陷排除效益的计算 缺陷排除效益:在第一次编译和测试前发现缺陷的百分比。 如前表中,编译前计划的引入缺陷数是1+5=6,编译前计划的排除缺陷是2,则过程效益plan=100×2/(1+5)=33.3%,过程效益actual=100×4/(1+4)=80.0%, 过程效益todate=100×12/(5+25)=40.0%, 七、提高缺陷排除率 把精力集中到过程排除效益上,使之在70%以上 在第一次编译前进行代码复查 在稳定的高缺陷排除效益下,提高代码复查速度 经常对检查表作出调整,以防一直漏掉某类缺陷 八、减少缺陷引入率 记录所有缺陷数据,以利更仔细工作 产生更好的软件设计,防止由于不清楚或不完整的设计引起缺陷 使用更好的方法 使用更好的工具 * * 300 1240 5 12 缺陷排除时间合计 200 1000 集成和系统测试时间 40 200 2 12 个人缺陷排除时间 40 200 2 10 单元测试
文档评论(0)