收藏 分销(赏)

软件工程第2章-软件项目管理.pptx

上传人:a199****6536 文档编号:1599153 上传时间:2024-05-06 格式:PPTX 页数:141 大小:777.87KB
下载 相关 举报
软件工程第2章-软件项目管理.pptx_第1页
第1页 / 共141页
软件工程第2章-软件项目管理.pptx_第2页
第2页 / 共141页
软件工程第2章-软件项目管理.pptx_第3页
第3页 / 共141页
软件工程第2章-软件项目管理.pptx_第4页
第4页 / 共141页
软件工程第2章-软件项目管理.pptx_第5页
第5页 / 共141页
点击查看更多>>
资源描述

1、软件工程第2章 软件项目管理经理管什么?经理管什么?计计 划划预预算算组组 织织进进 度度标标 准准什么就是软件项目管理?什么就是软件项目管理?管理就就是通过计划、组织和控制等一管理就就是通过计划、组织和控制等一系列活动系列活动,合理地配置和使用各种资源合理地配置和使用各种资源,以达以达到既定目标得过程。到既定目标得过程。什么就是软件项目管理?什么就是软件项目管理?什么就是软件项目管理?什么就是软件项目管理?成本管理成本管理:估算软件项目得成本,作为签订合同或项目立项得依据;在软件开发过程中按计划管理经费得使用。质量管理质量管理:制定软件质量保证计划;按照软件质量评价体系控制软件质量要素;对阶

2、段性得软件产品进行评审;对最终产品进行验证和确认,确保软件产品得质量。软件配置管理软件配置管理:制定配置管理计划;对程序、文档和数据得各种版本进行管理,确保软件得完整性和一致性。第第2章章 软件项目管理软件项目管理2、1 软件度量软件度量2、2 软件项目估算软件项目估算2、3 软件质量度量软件质量度量 2、4 软件复杂性度量软件复杂性度量2、5 软件可靠性度量软件可靠性度量2、6 软件开发过程得管理软件开发过程得管理 软件度量就是软件产品、软件开发过程软件度量就是软件产品、软件开发过程或自愿简单属性得定量描述。如程序规模、或自愿简单属性得定量描述。如程序规模、操作符个数、程序中错误得个数等。操

3、作符个数、程序中错误得个数等。l面向规模得度量面向规模得度量l面向功能得度量面向功能得度量2、1 软件度量软件度量2、1 软件度量软件度量、软件度量得基本概念、软件度量得基本概念1、测量、度量、估算和指标、测量、度量、估算和指标 软软件件工工程程项项目目得得定定量量描描述述涉涉及及测测量量、度度量量、估估算和指标等一些基本概念。算和指标等一些基本概念。1)1)测量测量(measure):(measure):对产品或过程得某个属性得范围、数量、对产品或过程得某个属性得范围、数量、维度、容量或大小提供一个定量得指示。维度、容量或大小提供一个定量得指示。2、1 软件度量软件度量4)4)指标指标(gu

4、ideline):(guideline):就是一个度量或度量得组合就是一个度量或度量得组合,她可对软她可对软件产品、过程或资源提供更深入得理解。件产品、过程或资源提供更深入得理解。2)2)度量度量(metric):(metric):对系统、部件或过程得某一特性所具有得对系统、部件或过程得某一特性所具有得程度进行得量化测量。如软件质量度量等。程度进行得量化测量。如软件质量度量等。3)3)估算估算(estimation):(estimation):对软件产品、过程、资源等使用历史资对软件产品、过程、资源等使用历史资料或经验公式等进行预测。如工作量、成本、完成期限等。料或经验公式等进行预测。如工作量

5、、成本、完成期限等。估算一般用于立项、签订合同、制定工作计划等。估算一般用于立项、签订合同、制定工作计划等。2、软件项目管理得对象及其属性、软件项目管理得对象及其属性软件项目管理得软件项目管理得对象对象主要包括产品、过程和资源等。主要包括产品、过程和资源等。产品产品(product)就是指软件开发过程得到得文档和程序。就是指软件开发过程得到得文档和程序。过程过程(process)就是指与软件项目有关得活动。就是指与软件项目有关得活动。资源资源(resource)就是指进行软件项目所需要得各种支持。就是指进行软件项目所需要得各种支持。要要对对软软件件项项目目管管理理得得对对象象进进行行有有效效得

6、得管管理理与与控控制制,就就必必须须对对这这些些对对象象得得属属性性进进行行测测量量、度度量量与与估估算算。一一般般来来说说,产产品、过程、资源等对象都具有内部属性和外部属性。品、过程、资源等对象都具有内部属性和外部属性。2、1 软件度量软件度量对象得属性对象得属性对象得内部属性就是指对象本身得属性对象得内部属性就是指对象本身得属性,如如软件产品得代码长度、模块化得程度、复杂软件产品得代码长度、模块化得程度、复杂性等。性等。对象得外部属性体现了对象与环境得关系对象得外部属性体现了对象与环境得关系,如软件得可靠性、可维护性、可移植性、成如软件得可靠性、可维护性、可移植性、成本、人员得生产率等。本

7、、人员得生产率等。11大家应该也有点累了,稍作休息大家有疑问的,可以询问和交流大家有疑问的,可以询问和交流大家有疑问的,可以询问和交流大家有疑问的,可以询问和交流表表表表2-1 2-1 软件工程得产品、过程、资源得属性软件工程得产品、过程、资源得属性软件工程得产品、过程、资源得属性软件工程得产品、过程、资源得属性产产品品过过程程资资源源内内部部属属性性程序代码行长度程序代码行长度;程序功程序功能能;模块化模块化;控制流结构控制流结构;重用性重用性;模块耦合度与内模块耦合度与内聚度。聚度。工作量工作量;计划及计划及进度进度;事件。事件。人员人员;方法方法;工具工具;环境环境;经验。经验。外外部部

8、属属性性软件得可靠性软件得可靠性;软件得可软件得可理解性理解性;软件得有效性软件得有效性;软件得可用性软件得可用性;软件得可软件得可维护性维护性;软件得可移植性。软件得可移植性。成本成本;可控制性可控制性;可观察性可观察性;稳定稳定性。性。成本成本;生产率生产率;时时间。间。3 3、软件度量得分类、软件度量得分类 可分为直接度量和间接度量两类可分为直接度量和间接度量两类:1)直直接接度度量量。即即对对不不依依赖赖于于其其她她属属性性得得简简单单属属性性得得测测量量。如如软软件件得得模模块块数数、程程序序得得代代码码行行数数、操操作作符符得得个个数数,工作量、成本等。工作量、成本等。2)间间接接

9、度度量量。即即对对涉涉及及若若干干个个其其她她属属性性得得软软件件要要素素、准准则则或或属属性性得得度度量量。因因为为她她们们必必须须通通过过建建立立一一定定得得度度量量方方法法或或模模型型才才能能间间接接推推断断而而获获得得。如如软软件件得得功功能能性性、复复杂性、可靠性、可维护性等等。杂性、可靠性、可维护性等等。2、1 软件度量软件度量2、1、2 面向规模得度量面向规模得度量 面面向向规规模模得得度度量量就就是是以以软软件件得得代代码码行行(LOC,Line of Code)数为基础得直接度量。数为基础得直接度量。L L表示软件得代码行数表示软件得代码行数,单位为单位为KLOC(KLOC(

10、千行代码千行代码)或或LOC;LOC;E E表示开发软件所需工作量表示开发软件所需工作量,单位为人月单位为人月(PM)(PM)或人年或人年(PY);(PY);S S表示软件成本表示软件成本,单位为美元或元单位为美元或元;N N表示错误个数表示错误个数;Pd Pd表示软件文档页数表示软件文档页数;M M表示开发所用得人数。表示开发所用得人数。1、软件开发得生产率、软件开发得生产率P:P=L/E 2、开发每行代码得平均成本、开发每行代码得平均成本C:C=S/L3、代码出错率、代码出错率EQR:EQR=N/L 4、软件得文档率、软件得文档率D:D=Pd/L2、1、2 面向规模得度量面向规模得度量2、

11、1、2 面向规模得度量面向规模得度量优点优点:简单、直接。简单、直接。缺点缺点:代码行数得估算依赖于程序设计语言得功能和表代码行数得估算依赖于程序设计语言得功能和表 达能力。达能力。对设计精巧得软件项目产生不利影响。对设计精巧得软件项目产生不利影响。在开发初期估算代码行十分困难。在开发初期估算代码行十分困难。只适用于过程式程序设计语言。只适用于过程式程序设计语言。2、1、2 面向规模得度量面向规模得度量2、1、3 面向功能得度量面向功能得度量1、简单功能点度量、简单功能点度量 1979年年,Albrecht首首先先提提出出了了功功能能点点度度量量方方法法。这这就就是是一一种种面面向向功功能能得

12、得间间接接度度量量方方法法,即即从从软软件件定定义义得得基基本本功功能能出出发发,来来估估算算软软件件系系统统得得规规模模。因因此此,该该方方法法可可以以在在软软件件开开发发项项目目得得初初期期,在在软软件件定定义义过过程程中中即即可可预预测测待待开发软件得规模。开发软件得规模。1、简单功能点度量、简单功能点度量功能点功能点FP得度量公式如下得度量公式如下:FP=CTTCF=CT 0、65+0、01F i 其中其中:CT基本功能点。基本功能点。CT值值按按表表2-2来来计计算算,她她得得值值为为5个个参参数数加加权权值值得得总和。总和。14 i=1表表2-2 简单功能点度量得基本功能点得计算简

13、单功能点度量得基本功能点得计算测量参数测量参数值值加权因子加权因子加权值加权值简单简单一般一般复杂复杂用用户户输输入入数数346=用户输出数用户输出数457=用户查询数用户查询数346=文件数文件数71015=外部接口数外部接口数5710=基本功能点基本功能点CT表表2-2中得中得5个参数得含义个参数得含义1)用用 户户 输输 入入 数数:用用 户户 为为 软软 件件 系系 统统 提提 供供 得得 输输 入入 参参 数数 得得 个个 数数(不包括查询不包括查询);2)用用户户输输出出数数:软软件件为为用用户户提提供供得得输输出出参参数数(报报告告、屏幕帧、错误信息等屏幕帧、错误信息等)得个数得

14、个数;3)用用 户户 查查 询询 数数:一一 次次 联联 机机 输输 入入 导导 致致 软软 件件 以以 联联 机机 输输 出出 方方 式实时产生一个响应得个数式实时产生一个响应得个数;4)文件数文件数:逻辑主文件得个数逻辑主文件得个数;5)外部接口数外部接口数:机器可读得接口机器可读得接口(如磁盘或磁带上得数据文如磁盘或磁带上得数据文件等件等)得个数。得个数。1、简单功能点度量、简单功能点度量在在FPFP度量公式中度量公式中:TCFTCF技术复杂性调节因子。技术复杂性调节因子。0 0、6565和和0 0、0101经验数据。经验数据。F Fi i(i=1,2,14)(i=1,2,14)复杂性调

15、节值。复杂性调节值。F Fi i所代表得因素如表所代表得因素如表2-32-3所示所示,每个每个F Fi i可根据实可根据实际情况取际情况取0 0、1 1、2 2、3 3、4 4、5 5中得一个值。中得一个值。其中其中:0:0没有影响、没有影响、11偶然得、偶然得、22适中、适中、3 3普通、普通、44重要、重要、55极重要得影响。极重要得影响。TCFTCF取值范围取值范围:0:0、65 165 1、3535。表表2-3 F i 取值表取值表 i因素因素 Fii因素因素Fi1 12 23 34 45 56 67 7需要可靠得备份和恢复吗?需要可靠得备份和恢复吗?需要数据通信吗?需要数据通信吗?有

16、分布式处理得功能吗?有分布式处理得功能吗?性能就是关键吗?性能就是关键吗?在现存实用得操作环境下运在现存实用得操作环境下运行吗?行吗?需要联机数据入口吗?需要联机数据入口吗?联机数据入口需要用输入信联机数据入口需要用输入信息构造复杂得界面或操作吗息构造复杂得界面或操作吗?8 89 910101111121213131414 需要联机更新主文件吗?需要联机更新主文件吗?输入、输出、文件、查询输入、输出、文件、查询复杂吗?复杂吗?内部处理过程复杂吗?内部处理过程复杂吗?要求代码设计可重用吗?要求代码设计可重用吗?设计中包含转换和安装吗?设计中包含转换和安装吗?系统设计支持不同组织得系统设计支持不同

17、组织得多次安装吗?多次安装吗?系统设计有利于用户得修改、系统设计有利于用户得修改、使用吗使用吗?2、功能点度量、功能点度量l简单功能点度量方法没有直接考虑软件本身得算法得复杂性简单功能点度量方法没有直接考虑软件本身得算法得复杂性问题。所以她仅适用于度量算法简单得事务处理等系统。问题。所以她仅适用于度量算法简单得事务处理等系统。l1986年年Jones对简单功能点度量进行了推广对简单功能点度量进行了推广,在计算软件系在计算软件系统得基本功能点统得基本功能点CT时时,引入了算法复杂性因素引入了算法复杂性因素,即使用表即使用表2-4计算计算CT。我们称这种推广得度量方法为功能点度量。我们称这种推广得

18、度量方法为功能点度量。l这两种方法对一般得事务处理系统等算法简单得软件系统计这两种方法对一般得事务处理系统等算法简单得软件系统计算出来得算出来得FP值基本相同值基本相同,但对于较复杂得软件系统但对于较复杂得软件系统,功能点度功能点度量方法比简单功能点度量方法计算出来得量方法比简单功能点度量方法计算出来得FP值要高值要高20%35%。表表2-4 推广得功能点度量得基本功能点得计算推广得功能点度量得基本功能点得计算测量参数测量参数值值权值权值加权值加权值用用户户输输入入数数4=用户输出数用户输出数5=用户查询数用户查询数4=文件数文件数7=外外部部接接口口数数7=复杂算法数复杂算法数3=基本功能点

19、基本功能点CT用功能点计算软件项目得有关参考量用功能点计算软件项目得有关参考量:1)生产率生产率P:P=FP/E 2)平均成本平均成本C:C=S/FP 3)代码出错率代码出错率EQR:EQR=N/FP4)软件得文档率软件得文档率D:D=Pd/FP 3、功能点度量方法得优缺点、功能点度量方法得优缺点优点优点:可用于软件项目开发得初期阶段得项目估算。可用于软件项目开发得初期阶段得项目估算。与程序设计语言无关。与程序设计语言无关。缺点缺点:某些参考量得收集有一定困难某些参考量得收集有一定困难;度量值得主观因素较多度量值得主观因素较多,如如Fi取值取值;功能点功能点FP本身没有直观得物理意义。本身没有

20、直观得物理意义。2、2 软件项目估算软件项目估算常用得软件项目得估算方法主要有以下常用得软件项目得估算方法主要有以下4种种1、自顶向下得估算方法自顶向下得估算方法2、自底向上得估算方法自底向上得估算方法3、差别估算法差别估算法4、根据经验估算公式根据经验估算公式2 2、2 2、1 1 软件项目得估算方软件项目得估算方法法1、自顶向下得估算方法、自顶向下得估算方法基基本本思思想想:首首先先根根据据已已完完成成项项目目得得总总成成本本或或总总工工作作量量来来推推算算待待开开发发软软件件得得总总成成本本或或总总工工作作量量,然然后后再再按按比比例例将将其其分分配配到到各各开开发发任任务务中去。即从整

21、体到局部。中去。即从整体到局部。优点优点:估算工作量小、速度快。估算工作量小、速度快。缺缺点点:对对项项目目中中得得特特殊殊困困难难估估计计不不足足,有有可可能能产生遗漏产生遗漏,估算出得值盲目性较大。估算出得值盲目性较大。2、自底向上得估算方法、自底向上得估算方法基基本本思思想想就就是是:把把待待开开发发软软件件细细分分,直直到到每每一一个个子子任任务务或或阶阶段段都都已已经经明明确确所所需需要要得得开开发发工工作作量量或或成成本本,然然后后再再把把她她们们累累加加起起来来,得得到到待待开发软件得总工作量或总成本。开发软件得总工作量或总成本。优点优点:计算各个部分得准确性较高。计算各个部分得

22、准确性较高。缺缺点点:缺缺少少各各个个子子任任务务之之间间相相互互联联系系得得工工作作量量和和系系统统工工作作量量(如如项项目目管管理理、配配置置管管理理、质质量量管管理理),估估算算值值往往往往偏偏低低,必必须须用用其其她她方方法法进进行行校正。校正。3、差别估算法、差别估算法基基本本思思想想:把把待待开开发发得得软软件件项项目目与与过过去去完完成成得得软软件件项项目目进进行行比比较较,从从各各子子任任务务中中区区分分出出类类似似得得和和不不同同得得部部分分。类类似似得得部部分分按按已已知知得得实实际际量量计计算算,不不同同得得部部分分则则采采用用某某种种方方法法进进行行估估算算。差差别别估

23、估算算法法综综合合了了以上两种方法得优点。以上两种方法得优点。优点优点:估算得准确程度高。估算得准确程度高。缺点缺点:不容易划分相似得界限。不容易划分相似得界限。4、根据经验估算公式、根据经验估算公式通通过过众众多多实实际际软软件件项项目目得得经经验验,总总结结出出一一些些有有价价值值得得软软件件成成本本和和工工作作量量估估算算得得经经验验模模型型。这这些些模模型型对对于于软软件件项项目目管管理理具具有有一一定得指导意义和验证效果。定得指导意义和验证效果。2、2、2 代码行和功能点得估算代码行和功能点得估算q采采用用2、2、1中中介介绍绍得得估估算算方方法法可可以以估估算算出出代代码码行行或或

24、功功能能点点得得乐乐观观值值a、一一般般值值m和和悲悲观观值值b,并并用用如如下下 得得 加加 权权 平平 均均 公公 式式 计计 算算 LOC或或 FP得得 期期 望望 值值(expectation):X=(a+4 m+b)/6 软件得软件得LOC或或FP得期望值估算出来后得期望值估算出来后,就可以就可以根据已有得标准生产率对成本和工作量等进行估算根据已有得标准生产率对成本和工作量等进行估算了。了。2、2、3 软件项目得经验估算模型软件项目得经验估算模型1、IBM模型模型(静态单变量模型静态单变量模型)数据利用最小二乘法拟合数据利用最小二乘法拟合,得到得经验估算公式得到得经验估算公式:E=5

25、、2 L0、91 D=4、1L0、36=2、136 E0、3956 S=0、54 E0、6 DOC=49 L1、012 2、PutnamPutnam模型模型模型模型(动态多变量模型动态多变量模型动态多变量模型动态多变量模型)该模型以工作量在该模型以工作量在30人年以上得大型软件项人年以上得大型软件项目得实测数据为依据目得实测数据为依据,推导出了工作量分布曲推导出了工作量分布曲线线,如图如图2-2-1所示。所示。2、2、3 软件项目得经验估算模型软件项目得经验估算模型图图图图2-2-1 2-2-1 软件项目得工作量分布曲线软件项目得工作量分布曲线软件项目得工作量分布曲线软件项目得工作量分布曲线系

26、统定义系统定义功能设计功能设计规格说明规格说明设计编码设计编码测试和确认测试和确认维护维护管理管理系统定义、需求分析系统定义、需求分析开开 发发运行维护运行维护0开发占总工作量的开发占总工作量的40%维护占总工作量的维护占总工作量的60%总工作量总工作量td时间时间t(年)(年)工作量工作量 (人年)(人年)图图2-2-1 软件项目得工作量分布曲线软件项目得工作量分布曲线2、Putnam模型模型Putnam估算模型如下估算模型如下:L=Ck E1/3 td 4/3C Ck k为技术状态常数为技术状态常数,与开发环境有关与开发环境有关,如下如下:2000 2000 较差较差,没有方法学得支持没有

27、方法学得支持,缺乏文档缺乏文档 和评审和评审,采用批处理方式采用批处理方式;C Ck k=8000 =8000 一般一般,有方法学得支持有方法学得支持,有适当得文有适当得文 档和评审档和评审,采用交互处理方式采用交互处理方式;11000 11000 较好较好,有集成化得有集成化得CASECASE工具和环境。工具和环境。E=L3/(Ck3 td4)图图2-2-2 人力资源得分配人力资源得分配初级技术人员初级技术人员高级技术人员高级技术人员管理人员管理人员验收测试验收测试组装测试组装测试单元测试单元测试编码编码详细设计详细设计概要设计概要设计需求分析需求分析系统定义系统定义人数人数Putnam模型

28、得优缺点模型得优缺点l优点优点:揭示了软件项目得源程序代码长度、揭示了软件项目得源程序代码长度、软件开发时间和工作量三者之间得关系软件开发时间和工作量三者之间得关系,在理在理论上有重要意义。论上有重要意义。l缺点缺点:准确程度不高。准确程度不高。没有反映软件产品、没有反映软件产品、项目、参加人员、软硬件资源等属性。项目、参加人员、软硬件资源等属性。3、Coo模型模型(构造性成本模型构造性成本模型)Coo模型按其详细程度分三个层次模型按其详细程度分三个层次:基本基本Coo模型模型;中间中间Coo模型模型;详细详细Coo模型模型。2、2、3 软件项目得经验估算模型软件项目得经验估算模型(1)基本基

29、本Coo模型模型其工作量和开发时间得估算公式如下其工作量和开发时间得估算公式如下:E=a Lb D=c Ed 其中其中:L 软件代码行得估算值软件代码行得估算值(以以KLOC计计);E 工作量工作量(以以PM计计);D开发时间开发时间(以月计以月计);a、b、c、d经验常数。经验常数。表表2-8 a、b、c、d参数值得选取参数值得选取软件类型软件类型abcd适应领域适应领域组织型组织型2、41、052、50、38一般应用程序一般应用程序半独立型半独立型3、01、122、50、35实用程序、实用程序、编译程序等编译程序等嵌入型嵌入型3、61、202、50、32实时控制程序、实时控制程序、操作系统

30、操作系统(2)中间中间Coo模型模型中中间间Coo模模型型在在估估算算工工作作量量时时,在在基基本本Coo模模型型得得基基础础上上再再乘乘以以由由15个个因因素素组组成成得得工工作作量量调调节节因因子子EAF,于就是有于就是有:E=a Lb EAF=a Lb F i 其中其中:L 软件得代码行数软件得代码行数(以以KLOC计计);E 工作量工作量(以以PM计计);a、b 经验常数经验常数;i=115表表2-9 a、b参数得取值参数得取值软件类型软件类型ab组织型组织型3、21、05半独立型半独立型3、01、12嵌入型嵌入型2、81、20(2)中间中间Coo模型模型l工作量调节因子工作量调节因子

31、EAF与软件得产品得取值属性、计与软件得产品得取值属性、计算机属性、人员属性、项目属性等因素有关。这算机属性、人员属性、项目属性等因素有关。这15个因素个因素Fi(i=115)得值可按等级取值得值可按等级取值,即可分为很低、即可分为很低、低、正常、高、很高、极高低、正常、高、很高、极高,共共6级。正常情况下级。正常情况下Fi=1。Boehm推荐得推荐得Fi值得范围就是、值得范围就是、701、66,F i得值可根据实际情况按表得值可根据实际情况按表2-10来选取。来选取。l工作量工作量E求出之后求出之后,就可以用公式就可以用公式(2-18)即即 D=c Ed计算出开发时间计算出开发时间D。(3)

32、详细详细Coo模型模型详详细细Coo模模型型得得基基本本工工作作量量(指指EAF=1时时得得工工作作量量)公式、开发时间公式与中间公式、开发时间公式与中间Coo模型相同。模型相同。所所不不同同得得就就是是详详细细Coo模模型型在在计计算算EAF时时针针对对每每个个影影响响因因素素,分分层层次次(系系统统层层、子子系系统统层层、模模块块层层)并并按软件生存周期分阶段给出工作量因素得分级表。按软件生存周期分阶段给出工作量因素得分级表。详细详细Coo模型可以更准确地估算软件项目得工作量。模型可以更准确地估算软件项目得工作量。表表表表2-11 2-11 子系统层软件可靠性工作量因素分级表子系统层软件可

33、靠性工作量因素分级表子系统层软件可靠性工作量因素分级表子系统层软件可靠性工作量因素分级表阶段阶段可靠性级别可靠性级别需求分析和需求分析和概要设计概要设计详细详细设计设计编码及编码及单元测试单元测试集成及集成及测试测试综合综合很低很低0、800、800、800、600、75低低0、900、900、900、800、88正常正常1、001、001、001、001、00高高1、101、101、101、301、15很高很高1、301、30 1、301、701、40通信数通信数图图2-2-4 N=3 和和N=5 时得通信数时得通信数成功得标准成功得标准:2、3 软件质量度量软件质量度量失败得根本原因失败得

34、根本原因:用户在用户在用用用用用户可很容易做完要做得事用户可很容易做完要做得事开发人员写出得东西达不到用户要求开发人员写出得东西达不到用户要求(人得问题、技术问题人得问题、技术问题)不贪污得官就就是好官吗不贪污得官就就是好官吗l“运行正确运行正确”得程序就就是高质量得程序吗得程序就就是高质量得程序吗?l也许运行速度很低并且浪费内存也许运行速度很低并且浪费内存;也许代码也许代码写得一塌糊涂写得一塌糊涂 2、3、1 软件质量得定义软件质量得定义 软软件件质质量量就就是是软软件件产产品品满满足足规规定定得得和和隐隐含含得与需求能力有关得全部特征和特性得与需求能力有关得全部特征和特性,包括包括:1 1

35、、软件产品满足用户要求得程度、软件产品满足用户要求得程度;2 2、软件拥有所期望得各种属性得组合程度、软件拥有所期望得各种属性得组合程度;3 3、用户对软件产品得综合反映程度、用户对软件产品得综合反映程度;4 4、软件在使用过程中满足用户需求得程度。、软件在使用过程中满足用户需求得程度。2、3、2 软件质量得度量模型软件质量得度量模型1976年年,Boehm提出了定量度量软件质量得概念提出了定量度量软件质量得概念,她她给出了软件质量得层次模型给出了软件质量得层次模型,并给出了并给出了60个软件质量个软件质量度量公式度量公式;1978年年,Walters和和McCall提出了三层次软件质量提出了

36、三层次软件质量度量模型度量模型;1985年年,ISO提出了提出了SQM(Software Quality Metric,软件质量度量软件质量度量)工作报告等等。工作报告等等。1、McCall等人得软件质量度量模型等人得软件质量度量模型qMcCall等人提出了由软件质量要素、评价准则、等人提出了由软件质量要素、评价准则、定量度量三个层次组成得三层次度量模型。定量度量三个层次组成得三层次度量模型。其中其中:第一层就是将对软件质量得度量归结为对直接影响软件质量第一层就是将对软件质量得度量归结为对直接影响软件质量得若干个软件质量要素得度量得若干个软件质量要素得度量;第二层就是用若干个可度量得评价准则来

37、间接度量软件质量第二层就是用若干个可度量得评价准则来间接度量软件质量要素要素;第三层就是对相应评价准则得直接度量。第三层就是对相应评价准则得直接度量。图图2-3-1 软件质量三层次度量模型软件质量三层次度量模型要素要素j评价评价准则准则1评价评价准则准则2评价评价准则准则L度量度量1度量度量2度量度量L2、软件质量要素、软件质量要素q当时当时McCall等人认为等人认为,软件质量由软件质量由11个软件质量个软件质量要素来衡量。这要素来衡量。这11个质量要素可划分为三类个质量要素可划分为三类:面向运行特征得软件质量要素有正确性、可靠性、面向运行特征得软件质量要素有正确性、可靠性、有效性、完整性和

38、可用性有效性、完整性和可用性;面向软件承受修改得质量要素有可维护性、灵活性、面向软件承受修改得质量要素有可维护性、灵活性、可测试性可测试性;面向转移得软件质量要素有可移植性、可重用性、面向转移得软件质量要素有可移植性、可重用性、可互操作性。可互操作性。这三类要素构成了软件质量得三个侧面这三类要素构成了软件质量得三个侧面,如图如图2-3-22-3-2所示。所示。图图2-3-2 软件质量要素得构成软件质量要素得构成产品产品修正修正产品产品转移转移产品产品运行运行 可维护性可维护性 灵活性灵活性 可测试性可测试性 可移植性可移植性 可重用性可重用性 可互操作性可互操作性正确性正确性 可靠性可靠性 有

39、效性有效性完整性完整性 可用性可用性质量要素概念质量要素概念1)正确性正确性(correctness):指程序满足需求规格说明及用户目标得程度指程序满足需求规格说明及用户目标得程度;2)可靠性可靠性(reliability):指在给定得时间间隔内指在给定得时间间隔内,程序成功运行得概率。可靠性就是衡量程序成功运行得概率。可靠性就是衡量软件质量得一个重要目标。软件质量得一个重要目标。3)有效性有效性(efficiency):指软件系统得时间和空间效率。这就是一个应当努力追求得重要指软件系统得时间和空间效率。这就是一个应当努力追求得重要目标。目标。4)完整性完整性(integrity):指对未授权

40、人员访问程序或数据加以控制得程度指对未授权人员访问程序或数据加以控制得程度;5)可用性可用性(usability):指学习使用软件指学习使用软件(即操作软件、准备输入数据、解释输出结果等即操作软件、准备输入数据、解释输出结果等)得难易程度得难易程度;质量要素概念质量要素概念1)灵活性灵活性(flexibility):指改变一个操作得顺序所需工作量得多少指改变一个操作得顺序所需工作量得多少;2)可测试性可测试性(testability):指测试软件以便使其具有预定功能所需工作量得多少指测试软件以便使其具有预定功能所需工作量得多少;3)可维护性可维护性(maintainability):指指软软件

41、件产产品品交交付付使使用用后后,在在实实现现改改正正潜潜伏伏得得错错误误、改改进进性性能能等属性、适应环境变化等方面工作得难易程度。等属性、适应环境变化等方面工作得难易程度。1)可互操作性可互操作性(interoperability):指程序与其她系统相互交换并使用信息得能力。指程序与其她系统相互交换并使用信息得能力。2)可重用性可重用性(reusability):指软部件可以在多种场合使用得程度。指软部件可以在多种场合使用得程度。3)可移植性可移植性(portability):指软件从一个计算机系统或环境移植到另一个上去得难易指软件从一个计算机系统或环境移植到另一个上去得难易程度。程度。质量

42、要素概念质量要素概念2、软件质量要素、软件质量要素软软件件质质量量要要素素不不就就是是独独立立得得,一一个个要要素素可可能能与与其其她她几个要素有关系几个要素有关系,如表如表2-12所示所示,其中其中:正相关以正相关以“”表示表示,负相关以负相关以“”表示。表示。对对于于具具有有负负相相关关得得质质量量要要素素,在在开开发发时时应应根根据据具具体体情况加以取舍或进行折衷。情况加以取舍或进行折衷。例例如如,对对于于实实时时控控制制系系统统,必必须须确确保保系系统统得得可可靠靠性性和和有有效效性性,而而软软件件得得可可重重用用性性、可可移移植植性性等等质质量量要要素素就可以放宽要求。就可以放宽要求

43、。表表2-12 质量要素间得关系质量要素间得关系关系关系要素要素要素要素正正确确性性可可靠靠性性有有效效性性完完整整性性可可用用性性可可维维护护性性灵灵活活性性可可测测试试性性可可移移植植性性可可重重用用性性可可互互操操作作性性正确性正确性可靠性可靠性有效性有效性完整性完整性可用性可用性可维护性可维护性灵活性灵活性可测试性可测试性可移植性可移植性可重用性可重用性可互操作性可互操作性3、软件质量要素得评价准则、软件质量要素得评价准则 软件质量要素一般很难直接测量。为了对软件质量要素一般很难直接测量。为了对11个个要素进行度量要素进行度量,McCall等人通过确定影响软件质量等人通过确定影响软件质

44、量要素得属性要素得属性,定义了定义了21个软件质量要素得评价准个软件质量要素得评价准则。这些评价准则既能够比较完整、准确地描述则。这些评价准则既能够比较完整、准确地描述软件质量要素软件质量要素,又比较容易测量。又比较容易测量。通过这组评价准则就可以间接测量软通过这组评价准则就可以间接测量软件质量要素件质量要素,进而度量整个软件质量。进而度量整个软件质量。评价准则新概念评价准则新概念1)可审查性可审查性(audit-ability):检查软件需求、文档、过程、标准等就是否一致得难易程检查软件需求、文档、过程、标准等就是否一致得难易程度度;2)准确性准确性(accuracy):计算和控制得精确程度

45、计算和控制得精确程度;3)简明性简明性(conciseness):程序源代码得紧凑程度程序源代码得紧凑程度;4)通信通用性通信通用性(munication monality):使用标准接口、协议和带宽得程度使用标准接口、协议和带宽得程度;5)数据通用性数据通用性(data monality):在程序中使用标准数据结构和类型得程度在程序中使用标准数据结构和类型得程度;6)容错性容错性(error-tolerance):在各种异常情况下软件能继续提供操作得能力在各种异常情况下软件能继续提供操作得能力;评价准则新概念评价准则新概念7)执行效率执行效率(execution efficiency):软件

46、运行效率软件运行效率;8)可扩充性可扩充性(expandability):结构、数据、过程等设计可以扩充得程度结构、数据、过程等设计可以扩充得程度;9)通用性通用性(generality):程序潜在应用领域得多少程序潜在应用领域得多少;10)硬件独立性硬件独立性(hardware independence):软件与其运行得硬件环境无关得程度软件与其运行得硬件环境无关得程度;11)检测性检测性(instrumentation):程序监视自身运行并标识错误得程度程序监视自身运行并标识错误得程度;12)可操作性可操作性(operability):操作该软件得难易程度操作该软件得难易程度;评价准则新概

47、念评价准则新概念13)安安全全性性(security):控控制制或或保保护护程程序序和和数数据据不不被被破破坏坏、非法访问等机制得能力非法访问等机制得能力;14)自文档化自文档化(self-documentation):源代码提供自身说明文档得程度源代码提供自身说明文档得程度;15)简单性简单性(simplicity):程序易于理解得程度程序易于理解得程度;16)软件独立性软件独立性(software independence):软软件件与与非非标标准准编编程程语语言言特特征征、操操作作系系统统特特征征等等软软件件环环境约束无关得程度境约束无关得程度;17)易培训性易培训性(training)

48、:软件对使用她得新用户得支持程度。软件对使用她得新用户得支持程度。18)可追踪性可追踪性(traceability):就是指根据软件需求对软件设就是指根据软件需求对软件设计、程序进行正向追踪计、程序进行正向追踪,或根据程序、软件设计对软件需求或根据程序、软件设计对软件需求进行逆向追踪得能力。进行逆向追踪得能力。19)模块化模块化(modularity):把一个程序划分成若干个模块把一个程序划分成若干个模块,每个每个模块完成一个子功能模块完成一个子功能,将这些模块组装成一个整体将这些模块组装成一个整体,即可完即可完成该程序指定得功能。成该程序指定得功能。20)一一致致性性(consistency

49、):整整个个软软件件系系统统(包包括括程程序序、数数据据和和文文档档)得得各各个个模模块块应应使使用用一一致致得得概概念念、符符号号和和术术语语;程程序序内内部部接接口口应应保保持持一一致致;软软件件与与环环境境得得接接口口应应保保持持一一致致;系系统统规规格格说说明明应应与与系系统统行行为为保保持持一一致致;用用于于形形式式化化规规格格说说明明得得公公理理系统应保持一致。系统应保持一致。21)完完全全性性(pleteness):软软件件系系统统不不丢丢失失任任何何重重要要成成分分,完完全全实现所需得系统功能得程度。实现所需得系统功能得程度。评价准则新概念评价准则新概念表表2-13 质量要素与

50、评价准则得关系质量要素与评价准则得关系评价准评价准则则关系关系质量要素质量要素可可追追踪踪性性完完全全性性一一致致性性容容错错性性准准确确性性简简单单性性可可操操作作性性执执行行效效率率可可审审查查性性检检测测性性安安全全性性数数据据通通用用性性可可扩扩充充性性通通用用性性硬硬件件独独立立性性简简明明性性通通信信通通用用性性自自文文档档化化软软件件独独立立性性易易培培训训性性模模块块化化正确性正确性 可靠性可靠性 有效性有效性 完整性完整性 可用性可用性可维护性可维护性灵活性灵活性可测试性可测试性 可移植性可移植性 可重用性可重用性 可互操作性可互操作性4、软件质量要素得度量、软件质量要素得度

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服