《软件工程管理》PPT课件.ppt_第1页
《软件工程管理》PPT课件.ppt_第2页
《软件工程管理》PPT课件.ppt_第3页
《软件工程管理》PPT课件.ppt_第4页
《软件工程管理》PPT课件.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、第十一章软件工程管理Chapter 11Software Engineering Management,11.1 管理的目的与内容,管理的目的:按预定的时间和费用,成功地完成软件的计划、开发和维护任务。 管理的内容 1.费用管理 估算软件的开发费用; 管理开发费用的有效使用。 2.质量管理(包括配置管理) 3.项目的其它管理 项目进度安排; 人员的分配与组织。,11.2 软件估算模型 (Resource Estimation Model) 11.2.1 资源估算模型 (Resource Estimation Model),资源模型用来估算软件在开发中花费的资源,如开发时间、开发人数以及工作量等

2、(人-月 或 人- 年)。,1.静态单变量资源模型 资源 = c1 (估计的软件特征) c2 其中: 资源为开发工作量 E(人-月)、开发时间 T(月)或开发人数 P; “估计的软件特征”通常用源程序长度L(千行)表示; c1、c2为依赖于开发环境和应用领域的2个经验常数。 如: E = 5.1 L 0.91 (人-月) T = 2.47 E 0.35 (月),2. Putnam (普特南)资源模型,Putnam 资源模型是动态多变量资源模型。用以下的方程式表示: K = L3 / ( c3 T4 ) 其中: L (行):源程序长度。 T (年):开发时间。 K (人-年): 全生存周期工作量

3、。 c: 与开发环境有关的常数。,11.2.2 COCOMO模型 (COnstructive COst MOdel,结构性成本模型) COCOMO模型分为基本COCOMO模型、中间COCOMO模型 和 详细COCOMO模型三种。,基本COCOMO模型是静态单变量模型,它将软件分类为:组织型、半独立型和嵌入型 3种类型,每类分别使用一组不同的模型方程(见表11.1)。 例11.1 有一个嵌入型的电信处理程序,程序规模为10000行。计算所需的工作量与开发时间。 E = 2.8 10 1.20 = 44.4 (人-月) T = 2.5 44.4 0.32 = 8.4 (月) 中间COCOMO模型以

4、静态单变量模型为基础,增加15个工作量调节因子,是静态多变量模型。,表11.1 不同类型软件的 COCOMO模型,软件 类别,模 型 方 程,适用范围,组织型,E=3.2L1.05 T=2.5E0.38,高级语言应用程序,如科学计算、数据处理、企业管理程序等规模较小的软件产品,半独立型,E=3.0L1.12 T=2.5E0.35,大多数实用程序,如编辑程序、连接程序、编译程序等。 (规模较大的软件产品),嵌入型,E=2.8L1.20 T=2.5E0.32,与硬件关系密切的程序,如操作系统、 数据库管理系统、实时处理与控制程序等。,表11.2 调节因子和它的值范围,属性,调节因子,调节值范围,例

5、11.1中 使用的值,产品 属性,要求的可靠性等级 数据库规模 产品复杂度,0.75 - 1.40 0.94 - 1.16 0.70 - 1.65,1.00 0.94 1.30,计算机 属性,对程序执行时间的约束 对程序占用存储容量的约束 开发环境的变动 开发环境的响应时间,1.00 - 1.66 1.00 - 1.56 0.87 - 1.30 0.87 - 1.15,1.11 1.06 1.00 1.00,人员 属性,分析员水平 程序员水平 对应用领域的熟悉程度 对开发环境的熟悉程度 对所用语言的熟悉程度,1.46 - 0.71 1.42 - 0.70 1.29 - 0.82 1.21 -

6、0.90 1.14 - 0.95,0.86 0.86 1.00 1.10 1.00,项目 属性,开发方法的现代化 软件工具的数质量 完成时间的限制,1.24 - 0.82 1.24 - 0.83 1.23 - 1.10,0.91 1.10 1.00,11.3 软件成本估计,软件成本估计方法有主要类:自顶向下成本估计、由底向上成本估计和算法模型估计。,. 自顶向下成本估计 (1)首先估算总成本(可以采用特尔斐专家估计法); 特尔斐( Delphi )法: 多个专家各自填“成本估计表”; 综合专家意见,把摘要意见通知大家; 开始新一轮估计; 多次反复,直到专家意见接近。 (2)然后在项目内部(按阶

7、段或任务单元)进行成本分配。 自顶向下成本估计的缺点是:对某些局部问题或特殊困难容易低估;如果所开发的软件缺乏可以借鉴的经验,估计时就可能出现较大的误差。,2. 由底向上成本估计,(1)先将开发任务分解为许多子任务; (2)子任务再分成子子任务,直到每一个任务单元; (3)估计各个任务单元的成本; (4)汇合成项目总成本。 由底向上成本估计的缺点是:具体工作人员往往只注意到自己范围内的工作,对涉及全局的花费可能估计不足,可能使成本估计偏低。 3. 算法模型估计 算法模型就是资源模型,要选择适用的模型。 算法模型估计法常与自顶向下估计或由底向上估计结合使用。,11.4 人员的分配与组织 各个开发

8、阶段需要的人力并不相同。一般地说, 计划与分析阶段只需要很少的人; 概要设计的人多一些; 详细设计的人又多一些; 编码和测试阶段的人数最多; 在运行初期, 需要较多的人参加维护, 但很快就可以减少下来, 只需保留很少的维护人员就可以满足需要。,1. Rayleigh-Norden 曲线,td,t,人力, td 相当于软件开发完成的时间; 用虚线画出来的矩形,显示了平均使用人力的问题:浪费的人力不足的人力过晚的人力。,图11.5 Rayleigh - Norden 曲线,MAINTENANCE,SOFTWARE DEVELOPMENT STEPS,ANALYST,DESIGNER,PROGRAM

9、MER,TESTER,TRAINER,2.两条重要的定律,(1)人员-时间权衡定律 软件项目开发存在一个最佳的开发时间。不能通过增加人员来缩短开发时间,因为人员的增加意味着增加相互通信的时间,从而减少直接用于软件生产的时间,导致开发时间的增加,所以“时间与人员不能互换”。 (2)Brooks定律 向一个已经延晚的项目追加开发人员,可能使它完成得更晚。,3.人员组织 通常采用层次型组织结构: 软件经理项目经理开发小组 (1)民主开发小组 组长轮流担任;组内人人平等;一切问题集体决定。 (2)主程序员小组 一元化领导;主程序员分配工作;主程序员决定重大问题。,主程序员(组长),文档员,25名程序员

10、,后援程序员(副组长),图11.6 主程序员小组,11.5 项目进度安排,1.计划评审技术图( Program Evaluation and Review Techniques, 简称PERT图 ) , 也称为工程网络图。 (1)建立PERT图 图中的每一圆圈, 代表一项开发活动; 圈内的数字, 表示完成这一项活动所需的时间; 圈间的箭头, 表示活动发生的先后顺序。,图11.7 一个简单软件开发项目的PERT图,测试 数据,编码 ,产品 测试,测试 软件,测试 计划,起点,分析 3,终点,文档 ,设计 ,(2)找出关键路径(Critical Path) 从起点到终点, 耗时最长的路径就是关键路

11、径,它决定了完成整个工程所需要的时间。 最早开始时间(Earliest Start time,ES)是指某项活动能够开始的最早时间。 最早结束时间(Earliest Finish time,EF)是指某项活动能够完成的最早时间。 EF = ES + 该项活动的时间 最早开始时间采取从前往后的计算方法,它等于所有“紧前活动”的最早结束时间的最大值 在每个活动框的上方标出该项活动的最早起止时间。,编码 ,产品 测试,测试 软件,测试数据,测试 计划,起点,终点,文档 ,设计 ,分析 ,(0,0),(0,3),(0,2),(3,5),(2,8),(3,7),(7,9),(7,11),(15,15),

12、(11,15),图11.8 某软件开发项目的关键路径,(3) 标出最迟开始时间,最迟结束时间 (Latest Finish time,LF)是指为了使整个项目在要求完工时间内完成,某项活动必须完成的最迟时间。 最迟开始时间(Latest Start time,LS)是指某项活动必须开始的最迟时间:LS=LF该活动的时间。 关键路径上各项活动的最迟起止时间等于该活动的最早起止时间。 非关键路径上各项活动的最迟结束时间采取从后往前的计算方法,它等于所有“紧后活动”的最迟开始时间的最小值。 每个活动的最迟起止时间均标在活动框的下方。,编码 ,产品 测试,测试 软件,测试数据,测试 计划,起点,终点,

13、文档 ,设计 ,分析 ,(0,0),(0,3),(0,2),(3,5),(2,8),(3,7),(7,9),(7,11),(15,15),(11,15),(3,5),(5,11),(9,11),(13,15),图11.9 注有最迟开始时间的PERT图,(15,15),(4) PERT图的使用,确保关键路径上的各项活动按时完成。 通过缩短关键路径上某项活动的时间,达到缩短项目开发时间的目的。 对于不处在关键路径上的活动时间,可以根据需要,或者调整其起止时间,或者延缓活动的进度。,2. Gantt 图 ( Gantt Chart, 甘特图 ),Gantt图中,左方列出项目的开发活动,上方列出时间,

14、水平线段表示对活动的进度安排。 在每一活动的开始时间和结束时间各画一个小三角形,当活动已经开始或结束时,就把小三角形涂黑。,图11.11 Gantt图示例, Gantt图的优点:简单易用,容易修改,直观方便,能够描述各个任务的起止时间以及各个任务之间的并行性。 Gantt图的缺点:不能显示各项活动之间的依赖关系,难以确定整个项目的关键所在。,习题6:图11.12是某项目的PERT图,起点,A 3,F 5,H 2,B 6,C 5,I 3,D 3,G 8,J 2,E 3,终点,图11.12 习题6 (关键路径),起点,A 3,F 5,H 2,B 6,C 5,I 3,D 3,G 8,J 2,E 3,终点,(18, 18),(0, 0),图11.12 习题6 (活动的最早起止时间),起点,A 3,F 5,( 0, 5 ),H 2,( 0, 2 ),B 6,( 5, 11),C 5,( 11,16),I 3,( 5, 8 ),D 3,( 11,14 ),G 8,( 5, 13),J 2,( 13,15 ),E 3,( 15,18 ),终点,(18, 18),(0, 0),( 0, 3 ),图

温馨提示

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

评论

0/150

提交评论