软件生命周期质量度量课件.ppt

上传人:石*** 文档编号:42159517 上传时间:2022-09-14 格式:PPT 页数:44 大小:1.81MB
返回 下载 相关 举报
软件生命周期质量度量课件.ppt_第1页
第1页 / 共44页
软件生命周期质量度量课件.ppt_第2页
第2页 / 共44页
点击查看更多>>
资源描述

《软件生命周期质量度量课件.ppt》由会员分享,可在线阅读,更多相关《软件生命周期质量度量课件.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件生命周期质量度量软件生命周期质量度量第1页,此课件共44页哦目录目录2.1 概述2.2 需求分析模型的度量2.3 设计模型的度量2.4 源代码度量2.5 对测试的度量2.6 对维护的度量2.7 本章小结第2页,此课件共44页哦重点重点了解软件生命周期中各个阶段度量的重要性了解每个阶段度量的原理和主要的度量计算方法第3页,此课件共44页哦难点难点了解每个阶段度量的原理和主要的度量计算方法第4页,此课件共44页哦度量度量测量在科学领域有悠久的历史116。相对早在1889年就定义好了度量单位米的长度测量,温度的度量复杂的多 Fahrenheit和Celsius分别在1714年和1742年提出了基

2、于某固定点间隔递增等级的温度度量方法。Celsius将100度和0度之间分为100个等份 第5页,此课件共44页哦2.1 概述概述软件的质量由一系列质量要素组成,每个质量要素又由一些衡量标准组成,每个衡量标准又由一些度量标准加以定量刻画质量度量(software measurement)贯穿于软件工程的全过程以及软件交付前后,在软件交付之前的度量主要包括程序复杂性、模块的有效性、总的程序规模,在软件交付之后的度量则主要包括残存的缺陷数和系统的可维护性方面第6页,此课件共44页哦软件度量研究主要分为两个阵营:一部分认为软件可以度量,一部分认为软件无法通过度量分析。无论如何,研究主流是关心软件的品

3、质和认为软件需要定量化度量。目前有超过上千种软件度量方法被软件研究人员及从业人员提出,并且到今天有超过5000份论文出版发表。第7页,此课件共44页哦软件度量的重要性软件度量的重要性如果没有度量,我们很难想象关于电子、机械、及普通工程的定律能得到发展。但事实上现在在软件工程的主流里度量却被忽略了。第8页,此课件共44页哦现状现状当我们在设计和开发软件产品的时候,我们并未能制定出度量的目标。例如:我们保证说我们将使用户界面友好、可靠、易于维护;而并未使用度量的术语来详细说明它们的具体含义。Gilb曾经说过:所谓模糊目标定理,就是没有明确目标的项目将不能明确地达到它的目标。我们未能对构成软件项目实

4、际费用的各个不同的部分进行有效的度量。譬如:通常我们并不知道,和测试阶段相比,设计阶段花费时间多大。我们并未试图使我们开发的产品的各种质量合格。因此我们未能使用术语(如:在一段时间里使用故障的可能性、把产品安装到新环境中需花费的工作量等)向潜在的用户说明产品的可靠性很高。我们总是试图说服自己使用另一种新的革新的开发技术和方法进行软件开发 第9页,此课件共44页哦现状现状事实上,我们在软件度量方面做的工作很少很少,而且所作的度量方面的工作也与一般科学意义上的度量相分离。我们经常会看到诸如此类的话:“软件的费用有80花费在维护上。”或“软件每一千行程序中平均有55个Bugs。”。但是这些话并没有告

5、诉我们这样的结果是怎样产生的、试验是怎样设计、执行的、度量的是那个实体、及错误的框架是什么等等。因此,归因于度量不充分的问题的产生是由于缺乏严格的度量方法造成的 第10页,此课件共44页哦软件质量度量目的软件质量度量目的软件度量是对软件开发项目、过程及其产品进行数据定义,收集及分析的持续性定量化过程目的在于对此加以理解、预测、评估、控制和改善通过软件度量,可以改进软件开发过程,促进项目成功,开发高质量的软件产品第11页,此课件共44页哦度量取向是软件开发诸多事项的横断面,包括顾客满意度度量、质量度量、项目度量、以及品牌资产度量、知识产权价值度量 度量取向要依靠事实、数据、原理、法则;其方法是测

6、试、审核、调查;其工具是统计、图表、数字、模型;其标准是量化的指标 第12页,此课件共44页哦2.1.1 度量的原则度量的原则度量应该基于该应用领域正确的理论之上,并在度量的定义中确定测量的目标每一个技术度量的定义应该具有一致性、客观性、无二义性,任何度量的第三方对其度量的理解是相同的。度量在经验和直觉上也应该有说服力度量应该被剪裁使之适应特定的产品和过程,而且任何时候应该尽可能的使得收集和分析自动化应该使用正确的统计技术来建立内部产品属性和外部带度量特征的关系度量结果是可靠的第13页,此课件共44页哦2.1.2 软件开发生命周期的度量活动软件开发生命周期的度量活动一方面要遵守一般度量的标准和

7、原则另一方面软件度量很少借助意见设备和仪器测量,更多的借助一些软件的方法软件工具、数理统计的方法和自身特定的方法第14页,此课件共44页哦并不是所有的度量都对软件工程有实际意义有些度量太复杂有些太深奥被人们经常使用的软件度量并不是很多,可以分为产品度量、过程度量、项目度量3大类第15页,此课件共44页哦产品度量产品度量主要用来描述软件产品的特征,用于产品评估和决策包括软件规模大小产品复杂度设计特征性能质量水平第16页,此课件共44页哦项目度量项目度量用来描述项目的特性和执行状态如项目计划的有效性、项目资源使用效率、成本效益、项目风险进度和生产力评估项目开发过程的质量预测项目的进度、工作量辅助管

8、理者进行质量控制和项目控制第17页,此课件共44页哦过程度量过程度量用于软件开发、维护过程的优化和改进,如开发过程中的缺陷移除效率、测试阶段中的缺陷到达模式以及缺陷修复过程的效率第18页,此课件共44页哦三种度量活动的比较三种度量活动的比较过程度量是战略性的项目度量是战术性的产品度量是对产品质量的度量,用于对产品质量的评估和预测第19页,此课件共44页哦软件度量的实施过程软件度量的实施过程度量承诺度量计划度量实施度量评估度量改善第20页,此课件共44页哦2.2 需求分析的度量需求分析的度量软件工程的技术性工作开始于需求分析,所以对这个阶段进行度量是很重要的第21页,此课件共44页哦2.2.1

9、基于功能的度量基于功能的度量功能点度量可以用来作为预测从分析模型得到系统大小的手段举例:safahome软件,该功能管理用户交互,接收一个用户密码来启动和关闭系统,并且允许对安全区状态和不同安全传感器进行查询第22页,此课件共44页哦SafaHome分析模型的一部分分析模型的一部分SafeHomeUserInteractionfunction UserSensorsUserMonitoring&response subsystemSystem configuration dataPasswordZone inquirySensor inquiryPanic buttonActivate/dea

10、ctivateTest sensorZone settingMessagesSensor statusActivate/deactivateAlarm alertPassword,sensors第23页,此课件共44页哦用户的输入数用户输出数用户查询数文件数外部接口书第24页,此课件共44页哦2.2.2 规约质量的度量规约质量的度量需求的功能性有下列的特征 确定性(无二义性),完全性,正确性,可理解性,可验证性,内部和外部一致性,可完成性,简洁性,可跟踪性,可修改性,精确性,可复用性以上的特性看起来都是定性的,无法度量,但是Davis等人建议每一个质量特性用一个到多个度量来表示第25页,此课件

11、共44页哦需求的一致性的度量需求的一致性的度量Q1=n(ui)/n(r)n(ui)是无二义性的需求总数n(r)是需求总数n(r)=n(f)+n(nf)n(f)表示功能性需求的数目,n(nf)为非功能性需求的数目第26页,此课件共44页哦需求稳定性的度量需求稳定性的度量软件的需求,肯定是一次无法确定的,变化是必然的,但是变化又会引起后面的各个阶段的变化,所以需求稳定性度量是关键的度量之一RSI=(所有确定的需求数-累计的需求变化请求数)/所有确定的需求数 N3R=初始需求请求列表数+接受的需求变化请求数而接受的需求变化请求数是累计的需求变化请求数与待定的需求变化请求数之差,是动态的,越到后面,需

12、求越趋于稳定RSI越大,需求越稳定,其值越接近于1第27页,此课件共44页哦2.4 源代码度量源代码度量最简单的度量程序复杂性的方法就是:统计源代码的行数前提:程序复杂性随着程序规模的增加不均衡地增长;控制程序规模的方法最好是采用分而治之的方法,将大程序分解成若干个简单的可理解的程序段第28页,此课件共44页哦出错率:每100行源程序中可能有的错误数目,如1%Thayer指出,程序出错率的估算范围是0.04%7%之间,并且每行代码的出错率与源代码行数之间不是简单的线性关系小于100行的程序,出错率为1.3%1.8%,是线性的大于100行的大程序,出错率增加到2.7%3.2%,出错率以非线性的方

13、式增长第29页,此课件共44页哦2.4.1 Halstead度量法度量法Halstead的软件科学理论是“最著名的赫研究最完全的(软件)复杂度的复合度量之一”代码长度N的公式P43代码的体积V公式P43第30页,此课件共44页哦McCabe度量法度量法McCabe是一种基于程序控制流的复杂性度量方法,又称为环路复杂度,是基于程序模块的程序图中环路的个数V(G)=m-n+2 m是图G中的有向弧个数;n是图G中的节点个数第31页,此课件共44页哦A开始BC输入DEFGH输入JK输出L结束第32页,此课件共44页哦当分支或循环的数目增加时,程序中的环路也随之增加,因此这种度量值为软件测试的难易程序提

14、供了一个度量度量的方法,同时也间接的表示了软件的可靠性第33页,此课件共44页哦说明说明环路复杂度与程序中覆盖的路径条数有关环路复杂度是可累加的复杂度超过10的程序,建议分成几个小程序第34页,此课件共44页哦2.5 对测试的度量对测试的度量测试广度:是指在某一个时刻测量提供的需求有多少已经被测试,它用来度量测试计划的执行、测试进度等状态测试深度:对被测试覆盖的独立基本路径占程序中的基本路径的总数的百分比的策略,可用McCabe环形来计算过程中收集的缺陷数度量,发现的、修正的和关闭的缺陷数量在过程中的差异、发展趋势等第35页,此课件共44页哦测试阶段主要过程质量度量测试阶段主要过程质量度量缺陷

15、度量或缺陷分布度量测试用例的深度、质量、覆盖率和有效性测试执行的效率和质量缺陷报告的质量测试覆盖率测试环境的稳定性或有效性第36页,此课件共44页哦测试用例的深度、质量和有效性测试用例的深度、质量和有效性测试用例的度量包含测试用例的深度、质量、有效性和自动化程度的度量第37页,此课件共44页哦测试用例的深度(测试用例的深度(Test Case Depth)可以表示为每千行代码(kloc)的测试用例数或每个功能点/对象点的测试用例数测试用例的效率可以用每100或1000个测试用例所发现的缺陷数来衡量不同阶段是不一样的,测试用例的质量(Test Case Quality)TCQ=测试用例发现的缺陷

16、数量/总的缺陷数量问题:为什么测试发现的缺陷数量不等于宗的缺陷数量?第38页,此课件共44页哦因为有一部分缺陷是通过其他手段和阶段发现的,比如压力测试,还有软件发布后还是会发现缺陷第39页,此课件共44页哦测试执行的效率和质量测试执行的效率和质量测试执行的质量=软件发布后遗留的缺陷/总的缺陷数一般要求小于0.5%测试执行的效率可以用如下的方法来综合度量每个人日所执行的测试用例数每个人日所发现的缺陷数每修改KLOC所运行的测试用例数第40页,此课件共44页哦缺陷报告的质量缺陷报告的质量缺陷报告的有效性:所有修正或关闭缺陷和测试人员所报的所有缺陷的比值,越接近1,有效性就越高,正常值在0.920.

17、96缺陷报告的质量:处于中间状态的缺陷数/总的缺陷数中间状态指的是:需要补充信息一般占总缺陷数的3%5%为正常太高说明缺陷报告质量太低太低说明测试人员缺乏怀疑精神第41页,此课件共44页哦2.6 对维护的度量对维护的度量在完成一个软件产品的开发并将它发布到市场上,它就进入了维护阶段在这个阶段,按时间区间的缺陷出现数和按时间区间的顾客问题召回数都是事实量缺陷数或问题的出现数是由开发过程决定的在维护阶段对产品质量的改变作用不大第42页,此课件共44页哦软件系统失效严重性度量软件系统失效严重性度量目的:如何对顾客经受的麻烦或损害的严重性使用权重或维护人员所需资源的范围使用权重第43页,此课件共44页哦软件系统失效的平均严重性软件系统失效的平均严重性Average Severity of Software System Failure,ASSSF指一年或半年或一个季度内检测到的软件失效数ASSSF=WYF/NYFWYF指一年内的危害服务期内检测到的软件失效的加权数NYF指一年内的维护服务期内检测到的软件失效数第44页,此课件共44页哦

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁