好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件工程 第三讲.ppt

52页
  • 卖家[上传人]:mg****85
  • 文档编号:49769538
  • 上传时间:2018-08-02
  • 文档格式:PPT
  • 文档大小:408KB
  • / 52 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第三讲 计划n度量软件规模n工作量估算n进度计划一、度量软件规模n代码行技术n功能点技术1、代码行技术n根据以往开发类似产品的经验和历史数据 ,估计实现一个功能需要的源程序行数n多名有经验的软件工程师分别做出估计n最小规模的平均值(a)n最大规模的平均值(b)n最可能的规模的平均值(c)nL=(a+4c+b)/61、代码行技术n优点n容易计算n缺点n用代码行代表整个软件的规模不太合理n不同的语言实现同一软件产品的代码行数不相 同n不适用于非过程语言2、功能点技术n功能点技术依据对软件信息域特性和软件 复杂性的评估结果,估算软件规模n信息域特性输入项数输入项数( (InpInp) )输出项数输出项数(Out)(Out)查询数查询数( (InqInq) )主文件数主文件数( (MafMaf) )外部接口数外部接口数( (InfInf) )功能点估算步骤n计算未调整的功能点数UFPn计算技术复杂性因子TCFn计算功能点FP①计算未调整和功能点数UFPUFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×Inf②计算技术复杂性因子TCFFi(1≤i≤14)的取值为(0(不存在或对软件规模无影响)-5(有很大影响)):②计算技术复杂性因子TCFTCF=0.65+0.01×DI(技术因素对软件规 模的综合影响程度)③计算功能数FPnFP=UFP×TCFn单位:FP(功能点)￿功能点技术的特点n优点:与编程语言无关;比代码行技术 更合理一些。

      n缺点:在判断信息域特性复杂级别及技 术因素的影响程度时,存在相当大的主 观因素二、工作量估算nE(工作量)=f(LOC或FP)n n估算模型估算模型n n静态单变量模型静态单变量模型n n动态多变量模型动态多变量模型n nCOCOM2模型COCOM2模型1、静态变量模型nE=A+B×(ev)C￿n其中,A、B和C是由经验数据导出的常数,E是以人月为单位的工作量,ev是估算变量(LOC或FP)1、具体的静态变量模型(1)面向LOC估算模型的静态变量模型￿￿n(1) Walston￿￿Felix模型(IBM模型)￿￿E=5.2×(KLOC)0.91￿￿￿￿n(2) Bailey￿￿Basili模型￿￿E=5.5+0.73×(KLOC)1.16￿￿￿￿n(3) Boehm简单模型￿￿E=3.2×(KLOC)1.05￿￿￿￿n(4) Doty模型(在KLOC>9的情况下)￿￿E=5.288×(KLOC)1.407￿￿￿￿1、具体的静态变量模型(2)2￿￿面向FP的估算模型￿￿n(1) Albrecht 其中: ASLOC:自动生成的代码行数 AT:自动代码占总代码的百分比 ATPROD:这种类型代码生成方法的生产率水平该模型的工作量nE=PM+ PMm;后体系结构模型n适用于完成体系结构设计之后的软件开 发阶段。

      n单位:人月￿na是模型系数,典型值取3￿n KLOC是估计的代码行数(以千行为单位 ),￿nb是模型指数,￿nfi(i=1到17)是成本因素￿n项目先例性(W1)n开发灵活性(W2)n风险排除度(W3)n项目凝聚力(W4)n过程成熟度(W5)n初始级n可重复级n已定义级n已管理级n优化级nWi:0(特高)-5(特低)二、 工作量估算n单位:人月(或人年)三、进度计划n基本原则n估算软件开发时间n甘特图(Gantt图)n工程网络n估算进度n关键路径n机动时间1、基本原则n划分:根据软件过程模型n相互依赖性n时间分配n工作量确认:不超过项目组中的人员数量n定义责任n定义结果n定义里程碑工作量的分配n典型环境下各个开发阶段需要使用的工作量任务工作量可行性研究2%-3%需求分析10%-25%设计20%-25%编码15%-20%测试30%-40%总计100%2、估算软件开发时间nWalston_Felix模型nT=2.5E0.35n原始的COCOMO模型nT=2.5E0.38nCOCOMO2模型nT=3.0E0.35+0.2(b-1.01)nPutnam模型nT=2.5E1/33、进度计划的工具nGantt (甘特)图n工程网络图nPERT图⑴、Gantt图缺点n不能显式地描绘各项作业彼此间的依赖关 系n进度计划的关键部分不明确,对于判定哪 些部分应当是主攻和主控的对象n计划中有潜力的部分及潜力的大小不明确 ,造成潜力的浪费⑵、工程网络n实箭头:作业n圆圈表示事件(即一项作业开始或结束)n虚箭头:虚拟作业1234⑶PERT图(工程网络图)n为工程网络添加如下:n在箭头上添加作业需要的时间,虚箭头的时间为0n为每个事件添加最早时刻EET和最迟时刻LET,这两个 数字分别写在表示事件的圆圈的右上角和右下角n在箭头的下方添加机动时间,并用括号括起来15205123401535101503515200(0)(0)(10)(15)(5)①最早时刻的计算n第一个事件的最早时刻为零n考虑进入该事件的所有作业n对于每个作业都计算它的持续时间和起始事件的EET之 和n选取上述和数中的最大值作为最早时刻EET1520512340153510150②最迟时刻(LET)的计算n最后一个事件的最迟时刻与最早时刻相等n考虑离开该事件的所有作业n从每个作业的结束事件的最迟时刻减去该作业的的持续时 间n选取上述差数中的最小值作为最迟时刻LET15205123401535101503515200③机动时间的计算n机动时间=(LET)结束-EET(开始)-持 续时间15205123401535101503515200(0)(0)(10)(15)(5)6、关键路径n最早时刻与最迟时刻相等的事件称为关键 路径(计划评审技术)实际上PRET 15205123401535101503515200(0)(0)(10)(15)(5)例如:n假设有一座旧的矩形木板房需 要重新油漆。

      这项工作必须分 成三步完成:首先刮掉旧漆, 然后刷上新漆,最后清除溅在 窗户上的油漆假设一共分配 了15名工人去完成这项工作, 然而工具却很有限;只有5把刮 旧漆用的刮板,5把刷漆用的刷 子和5把清除溅在窗户上的油漆 用的小刮刀 请你为这15人安排任务?工 序墙壁刮 旧 漆刷 新 漆清 理1或3 2312或4 462任务分配表刮第1面墙墙上的旧漆2小时时刮第2面墙墙上的旧漆 给给第1面墙墙刷新漆4小时时 3小时时 清理第1面墙墙 刮第3面墙墙上的旧漆 给给第2面墙墙刷新漆1小时时 2小时时 6小时时刮第4面墙墙上的旧漆 给给第3面墙墙刷新漆 清理第2面墙墙4小时时 3小时时 2小时时 给给第4面墙墙上刷新漆 清理第3面墙墙6小时时 1小时时 清理第4面墙墙2小时时根据任务分 配表画出相 应的Gantt图 、工程网络 图和PERT图进度计划的CASE工具nPROJECT2003nOfficenVISIO。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.