软件工程课件:3-第三讲(1).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程课件:3-第三讲(1).ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课件 第三
- 资源描述:
-
1、毛新军毛新军http:/ 计算机科学与技术系计算机科学与技术系602教研室教研室 0731-(45)73649软件项目管理课程软件项目管理课程 之之Copyright Xinjun Mao 200521.项目案例2.什么是软件度量?3.为什么需要软件度量?4.软件度量的内容5.软件度量的方法6.在软件开发过程中进行软件度量7.小结Copyright Xinjun Mao 20053案例角色和人物小王:软件项目负责人小王:软件项目负责人老王:公司技术老总老王:公司技术老总Copyright Xinjun Mao 20054n在项目策划阶段的碰头会上 公司技术总监询问小王项目开发估计需要多少时间,
2、需要多少成本? 小王回答说“时间估计不会太长,成本也在一个可接受的范围之内”,老王显然对这种回答不满意,他希望能够得到一个较为准确定量性的描述 经过一番考虑后,小王确认回答说“时间78个月,成本需4045万”,老王显然对这种回答也不满意,况且用户要求在6个月内完成项目。于是他进一步问道“你是如何得到这组数据”,小王显然没有准备,也没有充分的依据,于是他哑口无言Copyright Xinjun Mao 20055n在制定软件项目计划时 小王不知如何预测项目可能所需的工作量? 小王不知如何预测项目可能所需的成本? 小王不知所制定的计划是否可行和科学? 因此,小王尽管制定了软件开发计划,但对于该计划
3、能否得到有效的实施、实施能否遵循计划执行没有足够的信心Copyright Xinjun Mao 20056n项目已进展了2个月,各个方面进展尚可,在某周的碰头会上,老王继续向小王发问 “目前软件质量如何?”,小王回答道“不错” 老王对这种回答不满意,他希望能够得到一个较为准确定量性的描述,但是小王又没有办法给他一个更加确切的答复,实际上连他自己也没有办法说清楚目前软件产品的质量情况,因为他只有直观的、定性了解。Copyright Xinjun Mao 20057n工程化的软件开发需要定量、科学的描述(实施前、实施过程中、实施完成后)n定量、科学的描述有助于获取软件项目以及所开发的软件的某种可视
4、性,促进软件项目的管理n定量的信息描述必须在软件项目开发过程中采集Copyright Xinjun Mao 20058n在软件项目实施过程中,需要哪些方面的定量描述以促进软件项目的有效开发和管理?n如何获取这些方面的科学定量描述?n如何在软件项目开发过程中集成度量?n如何将这些定量描述用于指导软件项目的管理?Copyright Xinjun Mao 20059n项目案例n什么是软件度量?n为什么需要软件度量?n软件度量的内容n软件度量的方法n在软件开发过程中进行软件度量n小结Copyright Xinjun Mao 200510n对事物属性的定性描述 个子很高, 软件的成本很高n对事物属性的定
5、量描述 高个子有1.9米, 软件成本是 23.5万Copyright Xinjun Mao 200511n软件度量(Metrics)是指对软件产品、软件开发过程或者资源的简单属性的定量描述。 产品:软件开发过程中所生成的各种文档和程序 过程:与软件开发有关的各种活动,如软件设计等 资源:软件开发过程中所需支持,如人员、费用等n注意点 定量描述,而不是定性描述 简单属性,无需参照其它属性便可直接获得定量描述Copyright Xinjun Mao 200512n软件测量(Measure)是对软件产品、软件开发过程和资源复杂属性的定量描述,它是简单属性度量值的函数,软件测量用于事后或实时状态, 如
6、软件可靠性n注意点 定量描述,而不是定性描述 复杂属性-不可直接获得、需参照其它属性的度量值 实时或者事后状态,用于对历史进行评估Copyright Xinjun Mao 200513n估算(Estimation)对软件产品、软件开发过程和资源复杂属性的定量描述,它是简单属性度量值的函数,软件估算用于事前, 如软件开发成本n注意点 定量描述,而不是定性描述 复杂属性-不可直接获得、需参照其它属性的度量值 事前状态 可采用经验公式,也可参考历史资料和数据。估算的 结果一般用于签订合同、立项、制定工作计划等Copyright Xinjun Mao 200514n项目案例n什么是软件度量?n为什么需
7、要软件度量?n软件度量的内容n软件度量的方法n在软件开发过程中进行软件度量n小结Copyright Xinjun Mao 200515n任何工程化的工作都需要度量,软件工程也不例外 准确了解工程的实施情况n项目实施之前 辅助制定软件项目的计划 估算成本和工作量,以便制定计划Copyright Xinjun Mao 200516n项目实施过程中 提供软件开发的可视性 跟踪和控制软件项目的开发 评估软件开发质量,进行质量控制 加强风险管理n项目实施之后 对项目的实施情况进行评估 为后续项目的积累经验数据Copyright Xinjun Mao 200517n项目案例n什么是软件度量?n为什么需要软
8、件度量?n软件度量的内容n软件度量的方法n在软件开发过程中进行软件度量n小结Copyright Xinjun Mao 200518n三个方面 产品:各种文档和程序 过程:各种软件开发活动 资源:各种资源如人员、费用等Copyright Xinjun Mao 200519n二个层次 内部属性n软件产品,过程和资源本身所具有属性,如软件产品的复杂度、程序长度等n易于度量 外部属性n软件产品,过程和资源与外部环境(用户、管理人员等)间的关系如成本、效益、可靠性、可维护性等n难以度量,但由内部属性所决定Copyright Xinjun Mao 200520Copyright Xinjun Mao 20
9、0521n项目案例n什么是软件度量?n为什么需要软件度量?n软件度量的内容n软件度量的方法n在软件开发过程中进行软件度量n小结Copyright Xinjun Mao 2005221.面向规模的度量2.面成功能的度量3.项目成本和工作量估算4.软件质量度量Copyright Xinjun Mao 200523n 用软件代码行数目来表示软件项目规模 生产率: PM = L / E, L表示代码总量(单位:KLOC),E表示软件工作量(单位:人月) 每千行代码的平均成本:CKL = S / L,S为软件项目总开销 文档与代码比: Dl = Pd / L,Pd表示文档页数 代码出错率: EQRl =
10、 Ne / L,Ne表示代码出错的数目Copyright Xinjun Mao 200524项目项目(KLOC)人月人月成本成本($)文档页数文档页数 错误错误人员人员a12.124241680001680003653651341343 3b27.227.26262440000440000122412243213215 5c20.220.24343314000314000105010502562566 6Copyright Xinjun Mao 200525n优点 简单易行,自然直观n缺点 依赖于程序设计语言的表达能力和功能 软件开发初期很难估算出最终软件的代码行数 对精巧的软件项目不合适 只
11、适合于过程式程序设计语言Copyright Xinjun Mao 200526n用软件的功能表示软件的规模 “功能”不能直接度量,需要依靠其他度量结果导出 功能点度量涉及多种因素 项目开发初期就可估算出 功能点计算目前主要基于经验公式Copyright Xinjun Mao 200527n功能点计算方法 FP = (0.65 + 0.01Fi)CT CT : 5个信息量的“加权和” Fi: 14个因素的“复杂性调节值” (i =1.14) 0.65, 0.01都是经验常数Copyright Xinjun Mao 200528nCT的计算方法 用户输入数加权因子(简单=3,平均=4,复杂=5)
12、用户输出数加权因子(简单=3,平均=4,复杂=5) 用户查询数加权因子(简单=3,平均=4,复杂=5) 文件数加权因子(简单=3,平均=4,复杂=5) 外部界面数加权因子(简单=3,平均=4,复杂=5)nCT 上述计算值的总和Copyright Xinjun Mao 200529nFi的取值(0,1,2,3,4,5):0-没有影响,1-偶有影响,2-轻微影响,3-平均影响,4-较大影响,5-严重影响 系统需要可靠的备份和复原码? 系统需要数据通信吗? 系统有分布处理功能吗? 性能是临界状态吗? 系统是否在一个实用的操作系统下运行? 系统需要联机数据项吗? 联机数据项是否在多屏幕或多操作之间进行
13、切换?Copyright Xinjun Mao 200530 需要联机更新主文件吗? 输入、输出、查询和文件很复杂吗? 内部处理复杂吗? 代码需要被设计成可重用吗? 设计中需要包括转换和安装吗? 系统的设计支持不同组织的多次安装吗? 应用的设计方便用户修改和使用吗?Copyright Xinjun Mao 200531n优点 与程序设计语言无关, 在开发前就可以估算出软件项目的规模(事前)n不足 没有直接涉及算法的复杂度,不适合算法比较复杂的软件系统; 功能点计算主要靠经验公式,主观因素比较多 数据不好采集Copyright Xinjun Mao 200532程程序序设设计计语语言言L LO
14、OC C/ /F FP P( (平平均均值值) )汇汇编编语语言言300C CO OB BO OL L100F FO OR RT TR RA AN N100P PA AS SC CA AL L90A AD DA A70O OO OP PL L304 4G GL L20代代码码生生成成器器15n代码行度量和功能点度量间的关系Copyright Xinjun Mao 200533n软件项目成本和工作量估算极为重要 计算机系统中软件成本占总成本的比例很大 用户和项目管理人员对软件成本和工作量估算都很重视n软件项目成本估算比较困难 软件是逻辑产品,软件开发是一个逻辑思维的过程 涉及多方面因素Copyr
展开阅读全文