IT项目管理课件5.ppt

上传人:本田雅阁 文档编号:2145350 上传时间:2019-02-21 格式:PPT 页数:98 大小:1.25MB
返回 下载 相关 举报
IT项目管理课件5.ppt_第1页
第1页 / 共98页
IT项目管理课件5.ppt_第2页
第2页 / 共98页
IT项目管理课件5.ppt_第3页
第3页 / 共98页
亲,该文档总共98页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《IT项目管理课件5.ppt》由会员分享,可在线阅读,更多相关《IT项目管理课件5.ppt(98页珍藏版)》请在三一文库上搜索。

1、第5章 范围管理与工作量估计,对外经济贸易大学信息学院,第一节 需求管理,软件需求 什么是软件需求 需求是指用户对软件的功能和性能的要求,就是用户希望软件能做什么事情,完成什么样的功能,达到什么性能。,第一节 需求管理,软件需求的三个层次 业务需求、用户需求和功能需求。,第一节 需求管理,软件需求 业务需求: 业务需求反映客户对信息系统的总体需求。客户希望通过系统达到什么管理目的,解决什么管理问题。 业务需求通常就是客户的近期目标。是客户对系统高层次的目标要求,由管理人员和市场人员确定。,第一节 需求管理,软件需求 用户需求: 用户需求反映用户通过使用信息系统要完成的任务。 用户需求由用户提供

2、。,第一节 需求管理,软件需求 功能需求: 定义开发人员必须实现的软件功能,使得用户通过使用此软件能完成他们的任务,从而满足了业务需求。,第一节 需求管理,软件需求,计算机辅助教学,仅供外经贸大学生使用,用户管理,业务需求,用户需求之一,功能需求之一,第一节 需求管理,软件需求,纠正文档中的拼写错误,找出文档中的拼写错误 并通过一个提供的替换项列表 来供选择替换拼错的词,找到并高亮度提示错词 显示提供替换词的对话框 以及实现整个文档范围的替换,业务需求,用户需求,功能需求,项目失败的原因分析,Source: Carnegie-Mellon University, Software Engine

3、ering Institute,第二节 任务分解WBS(范围管理) (Work Breakdown Structure),任务分解的过程 将一个项目分解为更多的工作细目或者子项目,使项目变得更小、更易管理、更易操作。 任务分解的结果 WBS(任务分解结构)。 WBS 面向可交付成果的。 Work packages(工作包) WBS的最低层次的可交付成果,WBS实例,PMI defines WBS工作分解结构,是面向可交付成果的对项目元素的分组,它组织并定义了整个项目范围。不在WBS中包括的工作就不是该项目的工作 它是一个分级的树型结构,是对项目由粗到细的分解过程。工作结构每细分一个层次表示对项

4、目元素更细致的描述,PMI defines Work packages工作包,WBS的最低层次的可交付成果 工作包应当由唯一主体负责 这一交付成果可以分配给另外一位项目经理进行计划和执行,或者通过子项目的方式完成,WBS类型,清单 图表,图表类型,清单类型,1. 变化计数器 1.1 比较两个版本的程序 1.1.1 预处理 1.1.2 文件比较 1.1.3 结果处理 1.2 找出修改后的程序中增加和删除的代码行 1.2.1 找出增加的代码行 1.2.2 找出删除的代码行 1.3 统计修改后的程序中增加和删除的代码行数 1.3.1 统计增加代码行数 1.3.2 统计删除代码行数 1.4 统计总的代

5、码行数 1.5 设定标记以指示修改的次数 1.6 在程序的头部增加修改纪录,任务分解过程,输入,分解,WBS,分解方法,类比 模版 自上而下 自下而上,WBS模板举例按生存期,分解方法-自上而下按功能,分解方法-自下而上,“变化计数器”系统,文件比较,预处理,增加 代码,结果处理,统计总行,标记修改,记录 修改,版本 比较,找出 增删行,统计 增删行,删除代码,增加 行数,删除 行数,任务结构分解(WBS)步骤,确认并分解项目的组成要素 确定分解标准 确定分解是否详细 确定项目交付成果 验证分解的正确性(建立编号),WBS编号系统,WBS与OBS(组织分解结构),分解标准,生存期 功能组成,分

6、解标准应统一,学生管理 按照生命期分解 规划 需求 设计 编码 测试 提交 按照产品组成分解 1.1 招生管理 1.2 分班管理 1.3 学生档案管理 1.4 学生成绩管理,分解标准应统一(续),不能同时使用两种标准进行分解 招生管理 分班管理 学生档案管理 学生成绩管理 规划 需求 设计 编码 测试 提交,检验分解结果的标准,最底层的要素是否是实现目标的充分必要条件 最底层要素是否有重复的 每个要素是否清晰完整定义 最底层要素是否有定义清晰的责任人,是否可以进行成本估算和进度安排,WBS的指南(1),WBS分解的规模和数量因项目而异、因项目经理而异 收集与项目相关的所有信息 参看一下类似的项

7、目的WBS,与相关人员讨论 可以参照模板 最低层是可控的和可管理的,但是避免不必要的过细,最好不要超过7层, 软件项目推荐分解到40小时的任务,WBS的指南(2),每个Work package必须有一个提交物 定义任务完成的标准 每个WBS必须有利于责任分配 可以准备WBS的字典 最后与相关人员进行评审,WBS字典内容,WBS意义,提供了项目范围基线,是范围变更的重要输入 为评估和分配任务提供具体的工作包 进行估算和编制项目进度的基础 对整个项目成功的集成和控制起到非常重要的作用,网管系统(图表)分解实例,F,F1 配置管理,F2 故障管理,F3 安全管理,F4 性能管理,F3.2,F3.3,

8、F3.1,F3.4,F4.2,F4.3,F4.5,F4.6,F4.7,F4.4,F4.1,F4.7.1,F4.7.2,网管系统(图表)分解实例,网管系统(图表)分解实例,F2,F2.1,F2.2,F2.3,F2.4,F2.5,F2.6,F2.7,F2.8,F2.9,F2.6.1,F2.6.2,F2.9.2,F2.9.4,F2.9.3,F2.9.1,F2.9.5,F2.9.6,George and Martha一次野餐会,George and Martha计划与家人和朋友举行一次特殊的野餐活动,以庆祝Martha的升职和他们35周年的结婚纪念。Martha是工程师, George是会计,他们有两

9、个非常活泼的孩子,Mary 13岁,Thomas 17岁。经过过去几年的发展,家里不断壮大,无论是时间和金钱上的需要都在增加,所以他们已经逐渐成为非常好的计划能手,最近他们又通过了PMP的认证考试,所以他们非常清楚对于这样野餐活动也需要开发一个WBS。,野餐准备活动任务分解,小结,WBS的分解类型 WBS的分解步骤 范围基准的形成,课堂练习,你是某项目的项目经理,这个项目是为用户创建一个新的邮件服务器以及在所有100个工作站上部署相应的邮件客户端(要满足用户的期望)。其中,2个服务器需要重新购置,而客户端的机器已经存在。请提交任务分解结果WBS, WBS的图表,第三节 工作量估计,一、为什么要

10、进行工作量估计 成功项目的基本标准:满足功能、质量要求下,按时、在预算内交付。 要按时的“时”是否合理,“预算”是否准确,这些在可实现的条件下,都依赖于工作量。 工作量估计是项目进度计划和成本估算的基础。,第三节 工作量估计,二、IT项目工作量估计的困难 新颖应用:IT项目多数是新应用,几乎没有先例。 变更技术:技术发展快,即使有类似系统,新项目可能采用的具体技术也不尽相同。 同类项目可借鉴性差:先前项目可借鉴性差,很多项目缺少记录资料。,第三节 工作量估计,二、IT项目工作量估计的困难 例:计算表5-1中的每个项目的生产率(即每工作月SLOC),计算总体的平均生产率。假如项目负责人正确估计了

11、项目SLOC(源代码行数),按平均生产率计算,计算a、d项目的误差。,第三节 工作量估计,二、IT项目工作量估计的困难 估计的主观特性:过低估计自己熟悉项目的工作量,过高估计自己不熟悉项目的工作量。 角色因素:不同小组目的不同,容易站在有利于自己立场看问题。,第三节 工作量估计,三、何处需要进行估计 战略策划:信息化潜在的应用成本和好处。以帮助确定要给与每个项目什么优先权。 可行性研究:证明成本的合理性。 系统规格说明: 评价供应商建议书:投标者是否理解需求。 项目策划:对项目具体活动进行更详细的估计。 项目进展过程中重新估计。,第三节 工作量估计,四、高估和低估的后果(管理思想) 帕金森定律

12、(Parkinsons Law):“工作总是用完所有可以利用的时间”。 布鲁克斯定律(BrooksLaw):实现一个项目完成的工作量不与投入的员工数同步增长。 可靠性零定律(WeinbergLaw):如果一个系统不要求是可靠的,那么它能满足任何其他目的。 略低的估计可以激发项目经理的积极性。,第三节 工作量估计,五、软件估计技术和方法 由底向上、自顶向下、类比、专家判断、算法模型。 单位:SLOC,KLOC,人天 由底向上估计 估计人员将项目分解成任务,任务进一步分解成子任务,直到子任务能被一个人在1-2周内完成为止。然后对各子任务的工作量进行估计、汇总,计算出项目总工作量。 适合项目后期的更

13、详细的项目策划。,第三节 工作量估计,五、软件估计技术和方法 自顶向下估计 工作量=系统规模生产率 系统规模可以是 KLOC,生产率是KLOC/Day。 如:一个模块2KLOC,张三的生产率是25SLOC/Day,则:工作量=2/0.025=80天 李四的生产率是20SLOC/Day,则:李四的工作量=2000/20=100天 一般取平均生产率作为计算机标准来估计工作量。 计算出工作总量后,把工作量按比例分配给项目内各活动。 适合总体估计,第三节 工作量估计,五、软件估计技术和方法 专家判断 对应用领域或开发环境有丰富知识和经验的人对任务所需的工作量作出的估计。 适合对已有部分变更的估计。,专

14、家估算法,由多位专家进行成本估算,一个专家可能会有偏见,最好由多位专家进行估算,取得多个估算值,最后得出综合的估算值。,专家估算法-Deiphi,组织者发给每位专家一份软件系统的规格说明和一张记录估算值的表格,请他们估算 专家详细研究软件规格说明后,对该软件提出3个规模的估算值 最小ai 最可能的mi 最大bi 组织者对专家的表格中的答复进行整理 计算每位专家的Ei=(ai+4mi+bi)/6,PERT,专家估算法-Deiphi(续),综合结果后:E=E1+E2+En/n(N:表示N 个专家) 再组织专家无记名填表格,比较估算差,并查找原因 如果各个专家的估算差异超出规定的范围(例如:15%)

15、,则需重复上述过程 ,最终可以获得一个多数专家共识的软件规模,专家估算法-举例,某多媒体信息查询系统专家估算 专家1:1,8,9=(1+9+4 * 8 )/6=7(万元) 专家2: 4, 6 , 8 =(4+8+4*6)/6=6 (万元) 估算结果=(6+7)/2=6.5 (万元),第三节 工作量估计,五、软件估计技术和方法 类比估计 从已经完成的项目中寻找出与新项目有类似特征的模块(任务),将匹配的源案例记录的工作量作为目标案例的估计基础。,第三节 工作量估计,五、软件估计技术和方法 类比估计 欧几里德距离:ANGEL软件计算项目中模块相似程度的单位。 欧几里德距离=(目标参数-源参数)2+

16、(目标参数-源参数)21/2,越小越相似。 例5.1 p88 练习5.4,第三节 工作量估计,五、软件估计技术和方法 类比估计 例5.1 p88 某项目有7个输入和15个输出,过去有一个项目有8个输入和17个输出,求殴基里得距离。 (7-8)2+(15-17) 21/2=2.24,第三节 工作量估计,五、软件估计技术和方法 类比估计 例:项目P与项目P1、P2比较,求殴基里得距离。 D01=(9-11)2+(180-200) 21/2=20.1 D01=(9-10)2+(180-175) 21/2=5.1 ?,五、软件估计技术和方法,功能点估计 不考虑开发所使用的语言环境,仅考虑组成系统的功能

17、模块。 计算机信息系统的模块由五个功能部件组成: ILF:Internal Logical File内部逻辑文件 EIF: External Interface File外部接口文件 EI: External Input外部输入 EO: External Output外部输出 EQ: External Inquiry外部查询 其中ILF和EIF属于数据类型的功能点,EI、EO、EQ属于人机交互类型的功能点。,功能点估计,ILF(Internal Logical File)内部逻辑文件 是指一组以用户角度识别的,在应用程序边界内且被维护的逻辑相关数据或控制信息。 ILF的主要目的是通过应用程序的

18、一个或多个基本处理过程来维护数据。,一个外贸订单系统只包含录入、修改、删除、查询和统计订单的功能,而汇率查询转换服务是不属于该系统的。,订单,订单,功能点估计,ILF的主要目的是通过应用程序的一个或多个基本处理过程来维护数据的文件。 订单和客户,功能点估计,EIF: External Interface File 外部接口文件 允许输入和输出从其它计算机应用程序传出或传入的功能点 汇率查询转换系统,功能点估计,EI: External Input外部输入 更新计算机系统内部的输入事务。 如:录入订单、修改订单、删除订单,功能点估计,EO: External Output外部输出 输出数据给用户

19、的事务。特点 a) 原子性(Elementary process) b) 来自边界外(cross boundary) c) 运算后输出 对内部的数据进行处理之后输出的结果(如sum之后打印) 订单统计,功能点估计,EQ: External Inquiry外部查询 指用户可以通过计算机系统选择特定的数据并显示结果。为了获得这项结果,用户要输入选择信息抓取符合条件的数据。此时没有对数据的处理,是直接从所在的文件抓取信息。例如:驾驶员要显示预先设置的地形图,输出的结果就是直接从信息存贮位置提取的信息;这里我们称作“外部查询”(EQ)。 查询订单,功能点估计,功能类型: EI录入订单、修改订单、删除订

20、单 3 EO 订单统计 1 EQ 查询订单 1 ILF 订单和客户 2 EIF 汇率查询转换系统 1 总计:,复杂度,不同类型构件的复杂度不同,即使同类构件复杂度也不尽相同。在FP分析中,复杂度以不同的权重表示。,功能点估计,功能点FP= TCFUFC UFC未调整功能点数,TCF复杂度因子 例:p89.Brigette负责的任务需要一个程序,该程序从工资文件中取出年薪,并从计时表系统中取出课程细节和每名员工每门课的课时数。该程序将计算每门课的课时成本并将结果存放到由总会计系统读取的一个文件中。该程序还将产生一个报告来显示每名员工每门课的课时数及这些课时数相应的成本。 计算功能点FP,假定报告

21、是高复杂度,其它为中复杂度。,功能点估计,例:p89.Brigette负责的任务需要一个程序,该程序从工资文件中取出年薪,并从计时表系统中取出课程细节和每名员工每门课的课时数。该程序将计算每门课的课时成本并将结果存放到由总会计系统读取的一个文件中。该程序还将产生一个报告来显示每名员工每门课的课时数及这些课时数相应的成本。 计算功能点FP,假定报告是高复杂度,其它为中复杂度。,第三节 工作量估计,五、软件估计技术和方法 功能点估计 例:p89.,功能类型: EI 0 EO 报告 1 EQ 0 ILF 0 EIF 工资文件、计时表, 总会计文件 3 总计:,功能点:TCFUFC 0 71=7 0

22、0 73=21 28,第三节 工作量估计,五、软件估计技术和方法 功能点估计 Abrecht复杂度定义是凭经验确定的,合理性受分析员对系统的理解程度和经验影响比较大。 国际功能点组织IFPUG发布了判断复杂度规则,见p90 这里的记录是构件涉及的表文件,数据是处理的字段。,第三节 工作量估计,五、软件估计技术和方法 功能点估计 通过一个基本处理过程的执行,对ILF进行维护或从ILF/EIF中返回一个特定的、用户可识别的、非重复的字段,那么每个这样的字段算一个数据类型DET。 例如:添加一个外贸订单时需要保存“订单号码、订单日期、地址、邮编”,那么对于ILF订单来说它的DET就是4个。,第三节

23、工作量估计,五、软件估计技术和方法 功能点估计 记录类型RET是指一个EIF/ILF中用户可以识别的DET的集合。如果把DET简单理解为字段的话,那RET就可以简单理解为数据库中的表。 例如:在外贸订单系统中添加一个订单时会保存“订单信息、客户的ID、部门的ID”。那么订单系统ILF中RET为: 1、订单信息(必选的) 2、客户信息(必选的) 3、部门信息(可选的) 因此ILF中RET的个数为3个。,第三节 工作量估计,五、软件估计技术和方法 功能点估计 例2:p90.一个内部逻辑文件中包括了关于购买合同的数据,合同用两种独立的记录类型表示:Purchase-Order记录了有关合同的信息,包

24、括Order_Num,Suppliers,Date;Purchase_Order_Item记录了条款信息,包括Item_Num,Price,Quantity。 记录类型是2,数据类型6。查表得复杂度为低。,第三节 工作量估计,五、软件估计技术和方法 功能点估计 功能点与代码行数的转换: 使用不同语言转换的复杂程度不同,如用C语言实现,一个功能点需要128行代码,,功能点与代码行的转换,第三节 工作量估计,五、软件估计技术和方法 功能点估计 功能点识别步骤,第三节 工作量估计,五、软件估计技术和方法 面向过程代码方法 设想在最终系统中程序的数目和类型 估计每个程序的SLOC 估计程序的复杂程度

25、计算工作量,第三节 工作量估计,五、软件估计技术和方法 构造性成本模型COCOMO(COnstructive COst MOdel ) 工作量E=c规模k 有机式,嵌入式,半相连(半有机) 主要问题:系数c、k的确定,第三节 工作量估计,五、软件估计技术和方法 构造性成本模型COCOMO(COnstructive COst MOdel ) 有机式:各类应用程序,例如数据处理、科学计算 等 受硬件的约束比较小,程序的规模不是很大 嵌入式:受约束,系统程序,例如实时处理、控制程序等 紧密联系的硬件、软件和操作的限制条件下运行,软件规模任意 半嵌入式:各类实用程序,介于上述两种软件之间,例如编译器(

26、程序),规模和复杂度都属于中等或者更高,第三节 工作量估计,五、软件估计技术和方法 构造性成本模型COCOMO(COnstructive COst MOdel ) 基本COCOMO参数,第三节 工作量估计,五、软件估计技术和方法 构造性成本模型COCOMO(COnstructive COst MOdel ) 例:开发一个估计规模为30KLOC的银行应用程序项目,其功能以数据处理为主,根据专家建议,c=2.4,k=1.05,求E? E=2.4301.05=85.3人月,第三节 工作量估计,五、软件估计技术和方法 构造性成本模型COCOMO参数模型 修正 pmest=pmnomdem 根据成本驱动

27、因子,模型,1977年,IBM的Walston和Felix提出了如下的估算公式 E 5.2L 0.91 ,L是源代码行数(以KLOC计),E是工作量(以PM计) D 4.1L 0.36,D是项目持续时间(以月计) S 0.54E 0.6,S是人员需要量(以人计) DOC 49L 1.01。DOC是文档数量(以页计),举例,采用java 完成项目,366功能点,则 L = 36646 = 16386行 = 16.386KLOC E 5.2L 0.91 5.216.386 0.91 66人月 DOC 49L 1.01 4916.386 1.01 826页,估算方法总结,初期 类比 专家估算 计划阶

28、段 自下而上 参数模型 实施阶段(包括变更发生) 自下而上 参数模型,第四节 项目成本估计,技术人员工作量估计的单位 LOC(Loc of Code) 源代码程序长度的测量 FP(Function Point) 用系统的功能数量来测量,第四节 项目成本估计,管理者接受的工作量单位 人月 人天 人年,第四节 项目成本估计,财务人员接受的成本单位 货币 人民币元 美元 ,成本估算,直接成本:与具体项目相关的成本。 间接成本:不能具体到某个项目中的成本, 可以分摊到各个具体项目中的成本,例如: 培训 房租水电 员工福利 市场费用 管理费 其他等等,估算每个任务的成本,直接估算成本Ei 先估算规模Qi

29、,然后估算成本Ei= Qi *人力成本参数 唯一估计值:Qi=Avg PERT算法: Qi=(Max+4Avg+Min)/6,直接成本估算,直接成本=规模*人力成本参数 直接成本组成 开发成本 管理成本 质量成本 例如:人力成本参数=2万/人月,30人月规模的项目的直接成本是 60万,直接成本估算简易估算:,开发(工作量)规模: Scale(Dev) (单位:人月) 管理、质量(工作量)规模: Scale(Mgn)=a* Scale(Dev) a为比例系数:例如:20%-25% 直接成本 Scale(Dev) a* Scale(Dev),项目总估算成本,估算成本=直接成本+间接成本 间接成本估

30、算: 按照企业模型直接估算: 简易算法: 间接成本=直接成本*间接成本系数 间接成本= 规模*人力成本参数*间接成本系数 例如:间接成本系数=0.3,项目总估算成本,估算成本=直接成本+间接成本 估算成本=直接成本+直接成本*间接成本系数 估算成本=直接成本(1+间接成本系数) 估算成本=规模*人力成本参数(1+间接成本系数) 成本系数=人力成本参数*(1+间接成本系数) 简易算法: 估算成本=规模*成本系数 例如:成本系数= 3万/人月,项目总报价,项目总报价=项目总估算成本+风险利润 项目利润=估算成本*a% 风险基金=估算成本*b% 税=估算成本*c% (例如:c为5.5左右) 项目总报价=(a+b+c) %*项目总估算成本+项目总估算成本,参数成本估算实例(适合单价合同),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1