软件工程产品度量课件_第1页
软件工程产品度量课件_第2页
软件工程产品度量课件_第3页
软件工程产品度量课件_第4页
软件工程产品度量课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十六讲

量第十六讲

产品度量产品度量软件产品质量的生命周期及其度量软件产品度量用于对软件产品进行评价,并在此基础之上推进产品设计、产品制造和产品服务优化。软件产品的度量实质上是软件质量的度量,而软件的质量度量与其质量的周期密切相关。

产品度量软件产品质量的生命周期及其度量软件质量对明确陈述的功能和性能需求、明确记录的开发标准以及对所有专业化软件开发应具备的隐含特征的符合度软件需求是质量测量的基础特定标准定义了用以指导软件开发的准则有一组未被提及的隐式需求软件质量对明确陈述的功能和性能需求、明确记录的开发标准以及对为什么软件质量需要有度量?有效产品质量管理改进用户满意度改进产品质量减少产品开发和售后服务支持费用没有质量度量,等于没有质量标准!为什么软件质量需要有度量?有效产品质量管理软件测试的质量需要有度量有效实行测试质量分析和管理可及时检查测试进度和质量帮助发现测试漏洞比较测试质量变化趋势,风险分析帮助找出最佳实践软件测试的质量需要有度量有效实行测试质量分析和管理使用软件产品质量度量的挑战无公认准确和科学的度量产品性质不同,很难有通用的度量最佳实践实际上是经验积累总结涉及不定因素和人为因素片面理解和使用可以造成负面影响和效果使用软件产品质量度量的挑战无公认准确和科学的度量制定软件质量度量时注意事项跟踪度量的变化的一致性提供基础数据以便杜绝滥用数据讨论会或所有有关方面认可体现产品质量结果是否满足质量标准明确谁是使用者制定软件质量度量时注意事项跟踪度量的变化的一致性软件产品质量度量模型

软件产品的度量主要针对作为软件开发成果的软件产品的质量而言,独立于其过程。软件的质量由一系列质量要素组成,每一个质量要素又由一些衡量标准组成,每个衡量标准又由一些量度标准加以定量刻划。质量度量贯穿于软件工程的全过程以及软件交付之后。在软件交付之前的度量主要包括程序复杂性、模块的有效性和总的程序规模在软件交付之后的度量则主要包括残存的缺陷数和系统的可维护性方面。一般情况下,可以将软件质量特性定义成分层模型。

软件产品质量度量模型软件产品的度量主要针对作为软件开发成果勃姆(BarryW.Boehm)在《软件风险管理》(SoftwareRiskManagement)中第一次提出了软件质量度量的层次模型。麦考尔(McCall)等人将软件质量分解至能够度量的层次,提出FCM3层模型:软件质量要素(factor)衡量标准(criteria)量度标准(metrics)包括11个标准,分为产品操作(productoperation)、产品修正(productrevision)和产品转移(producttransition)。ISO9126将软件质量总结为6大特性,每个特性包括一系列副特性,其软件质量模型包括3层:高层:软件质量需求评价准则(SQRC);中层:软件质量设计评价准则(SQDC);低层:软件质量度量评价准则(SQMC)。

勃姆(BarryW.Boehm)在《软件风险管理》(SoMcCall的质量因素产品运行产品修改产品转移可维护性灵活性可测试性可移植性可复用性互操作性正确性

可靠性

易用性

完整性

效率McCall的质量因素产品运行产品修改产品转移可维护性可移植软件质量度量FCM模型

软件质量度量FCM模型

McCall的质量因素(II)

正确性:程序满足需求规格说明和完成用户任务目标的程度。可追踪性:从一个设计表示或实际程序追踪到需求的能力。完备性:所需功能完全实现的程度一致性:设计文档与系统实现的一致性。

McCall的质量因素(II)正确性:程序满足需求规格说McCall的质量因素(III)

可靠性:程序以所要求的精度完成预期功能的程度。准确性:计算和控制的精度容错性:在各种异常条件下继续提供操作的能力

与正确性的区别

正确性:它按我的需要工作吗?

可靠性:在任何时候它都能适当地响应吗?

McCall的质量因素(III)可靠性:程序以所要求的精McCall的质量因素(IV)完整性:对未授权人员访问软件或数据的可控程度。

易用性(易培训性):对程序学习、操作、准备输入和解释输出所需要的工作量

效率:程序完成其功能所需的资源

计算效率存储效率McCall的质量因素(IV)完整性:对未授权人员访问软件或McCall的质量因素(V)可维护性:定位和修复程序中的一个错误所需要的工作量简单性:理解程序的难易程度

简明性:程序源代码的紧凑与简洁性

检测性:系统能监视自身的运行,一旦发生错误,能明确地标识出产生错误的位置

McCall的质量因素(V)可维护性:定位和修复程序中的一个McCall的质量因素(VI)灵活性(适应性):修改一个可正常运行的程序所需的工作量

模块化:程序部件的独立性

通用性:程序部件潜在应用范围的广泛性,即可重用性

软件系统独立性:程序与非标准的程序设计语言特征、操作系统特征以及其他环境限制无关的程度。

硬件独立性:软件同支持它运行的硬件系统不相关的程度。

与可维护性的区别可维护性:我能修复它吗?

灵活性:我能改变它吗?McCall的质量因素(VI)灵活性(适应性):修改一个可正McCall的质量因素(VII)可移植性:将软件从一个硬件和软件系统环境移植到另一个所需要的工作量

可复用性:软件的各个构件可以在另一个软件中使用的程度

互操作性:将一个系统连接到另一个系统所需要的工作量

通信通用性:使用标准接口、协议、规范的程序

数据通用性:在程序中使用标准的数据结构和类型

McCall的质量因素(VII)可移植性:将软件从一个硬件和产品度量框架测度(measure)产品或过程的某些属性的程度、数量、维数、容量或大小的量化指示测量(measurement):确定测度的动作度量(metrics)是一个系统、构件或过程具有给定属性的量化测量程度指标:一个度量或多个度量的组合,提供了对软件过程、软件项目或产品本身的深入理解产品度量框架测度(measure)产品度量框架(II)分析模型的度量交付功能系统规模规格说明质量设计模型的度量体系结构度量构件级度量接口设计度量面向对象设计度量产品度量框架(II)分析模型的度量产品度量框架(III)源码的度量Halstead度量复杂性度量V(G)<=10为宜长度的度量测试的度量语句与分支覆盖度量与缺陷相关的度量测试有效性过程中度量产品度量框架(III)源码的度量产品度量框架(1)Halstead复杂性度量法,基本思路是根据程序中可执行代码行的操作符和操作数的数量来计算程序的复杂性。操作符和操作数的量越大,程序结构就越复杂。产品度量框架(1)Halstead复杂性度量法,基本思路是根产品度量框架(IV)Halstead度量根据程序中运算符和操作数的总数来度量程序的复杂程度令N1为程序中运算符出现的总次数,N2为操作数出现的总次数,程序长度定义为:N=N1+N2程序中使用的不同运算符(含关键字)的个数为n1,不同操作数(含变量和常数)的个数为n2Halstead预测程序长度公式为:H=n1log2n1+n2log2n2Halstead预测错误个数的公式为:E=Nlog2(n1+n2)/3000产品度量框架(IV)Halstead度量产品度量框架(V)程序Z=0;whileX>0Z=Z+Y;X=X–1;End_while;print(Z);操作数有:Z,0,X,Y,1

即n2=5运算符有:=,;,whileend_while,>,+,-,print,()

即n1=8预测程度长度为n1log2n1+n2log2n2=8*log28+5*log25=35.6产品度量框架(V)程序操作数有:Z,0,X,Y,1即n2产品度量框架(VI)产品度量框架(VI)产品度量框架(VII)产品度量框架(VII)第十六讲

量第十六讲

产品度量产品度量软件产品质量的生命周期及其度量软件产品度量用于对软件产品进行评价,并在此基础之上推进产品设计、产品制造和产品服务优化。软件产品的度量实质上是软件质量的度量,而软件的质量度量与其质量的周期密切相关。

产品度量软件产品质量的生命周期及其度量软件质量对明确陈述的功能和性能需求、明确记录的开发标准以及对所有专业化软件开发应具备的隐含特征的符合度软件需求是质量测量的基础特定标准定义了用以指导软件开发的准则有一组未被提及的隐式需求软件质量对明确陈述的功能和性能需求、明确记录的开发标准以及对为什么软件质量需要有度量?有效产品质量管理改进用户满意度改进产品质量减少产品开发和售后服务支持费用没有质量度量,等于没有质量标准!为什么软件质量需要有度量?有效产品质量管理软件测试的质量需要有度量有效实行测试质量分析和管理可及时检查测试进度和质量帮助发现测试漏洞比较测试质量变化趋势,风险分析帮助找出最佳实践软件测试的质量需要有度量有效实行测试质量分析和管理使用软件产品质量度量的挑战无公认准确和科学的度量产品性质不同,很难有通用的度量最佳实践实际上是经验积累总结涉及不定因素和人为因素片面理解和使用可以造成负面影响和效果使用软件产品质量度量的挑战无公认准确和科学的度量制定软件质量度量时注意事项跟踪度量的变化的一致性提供基础数据以便杜绝滥用数据讨论会或所有有关方面认可体现产品质量结果是否满足质量标准明确谁是使用者制定软件质量度量时注意事项跟踪度量的变化的一致性软件产品质量度量模型

软件产品的度量主要针对作为软件开发成果的软件产品的质量而言,独立于其过程。软件的质量由一系列质量要素组成,每一个质量要素又由一些衡量标准组成,每个衡量标准又由一些量度标准加以定量刻划。质量度量贯穿于软件工程的全过程以及软件交付之后。在软件交付之前的度量主要包括程序复杂性、模块的有效性和总的程序规模在软件交付之后的度量则主要包括残存的缺陷数和系统的可维护性方面。一般情况下,可以将软件质量特性定义成分层模型。

软件产品质量度量模型软件产品的度量主要针对作为软件开发成果勃姆(BarryW.Boehm)在《软件风险管理》(SoftwareRiskManagement)中第一次提出了软件质量度量的层次模型。麦考尔(McCall)等人将软件质量分解至能够度量的层次,提出FCM3层模型:软件质量要素(factor)衡量标准(criteria)量度标准(metrics)包括11个标准,分为产品操作(productoperation)、产品修正(productrevision)和产品转移(producttransition)。ISO9126将软件质量总结为6大特性,每个特性包括一系列副特性,其软件质量模型包括3层:高层:软件质量需求评价准则(SQRC);中层:软件质量设计评价准则(SQDC);低层:软件质量度量评价准则(SQMC)。

勃姆(BarryW.Boehm)在《软件风险管理》(SoMcCall的质量因素产品运行产品修改产品转移可维护性灵活性可测试性可移植性可复用性互操作性正确性

可靠性

易用性

完整性

效率McCall的质量因素产品运行产品修改产品转移可维护性可移植软件质量度量FCM模型

软件质量度量FCM模型

McCall的质量因素(II)

正确性:程序满足需求规格说明和完成用户任务目标的程度。可追踪性:从一个设计表示或实际程序追踪到需求的能力。完备性:所需功能完全实现的程度一致性:设计文档与系统实现的一致性。

McCall的质量因素(II)正确性:程序满足需求规格说McCall的质量因素(III)

可靠性:程序以所要求的精度完成预期功能的程度。准确性:计算和控制的精度容错性:在各种异常条件下继续提供操作的能力

与正确性的区别

正确性:它按我的需要工作吗?

可靠性:在任何时候它都能适当地响应吗?

McCall的质量因素(III)可靠性:程序以所要求的精McCall的质量因素(IV)完整性:对未授权人员访问软件或数据的可控程度。

易用性(易培训性):对程序学习、操作、准备输入和解释输出所需要的工作量

效率:程序完成其功能所需的资源

计算效率存储效率McCall的质量因素(IV)完整性:对未授权人员访问软件或McCall的质量因素(V)可维护性:定位和修复程序中的一个错误所需要的工作量简单性:理解程序的难易程度

简明性:程序源代码的紧凑与简洁性

检测性:系统能监视自身的运行,一旦发生错误,能明确地标识出产生错误的位置

McCall的质量因素(V)可维护性:定位和修复程序中的一个McCall的质量因素(VI)灵活性(适应性):修改一个可正常运行的程序所需的工作量

模块化:程序部件的独立性

通用性:程序部件潜在应用范围的广泛性,即可重用性

软件系统独立性:程序与非标准的程序设计语言特征、操作系统特征以及其他环境限制无关的程度。

硬件独立性:软件同支持它运行的硬件系统不相关的程度。

与可维护性的区别可维护性:我能修复它吗?

灵活性:我能改变它吗?McCall的质量因素(VI)灵活性(适应性):修改一个可正McCall的质量因素(VII)可移植性:将软件从一个硬件和软件系统环境移植到另一个所需要的工作量

可复用性:软件的各个构件可以在另一个软件中使用的程度

互操作性:将一个系统连接到另一个系统所需要的工作量

通信通用性:使用标准接口、协议、规范的程序

数据通用性:在程序中使用标准的数据结构和类型

McCall的质量因素(VII)可移植性:将软件从一个硬件和产品度量框架测度(measure)产品或过程的某些属性的程度、数量、维数、容量或大小的量化指示测量(measurement):确定测度的动作度量(metrics)是一个系统、构件或过程具有给定属性的量化测量程度指标:一个度量或多个度量的组合,提供了对软件过程、软件项目或产品本身的深入理解产品度量框架测度(measure)产品度量框架(II)分析模型的度量交付功能系统规模规格说明质量设计模型的度量体系结构度量构件级度量接口设计度量面向对象设计度量产品度量框架(II)分析模型的度量产品度量框架(III)源码的度量Halstead度量复杂性度量V(G)<=10为宜长度的度量测试的度量语句与分支覆盖度量与缺陷相关的度量测试有效性过程中度量产品度量框架(III)源码的度量产品

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论