《第2版第3章 软件项目进度计划.ppt》由会员分享,可在线阅读,更多相关《第2版第3章 软件项目进度计划.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 软件项目进度计划软件项目进度计划 零售摊位成功的关键要素是-位置项目成功的关键要素是-计划计划是通向目标的路线图,进度计划是最重要的计划。计划是通向目标的路线图,进度计划是最重要的计划。3.1 关于进度计划编制进度计划的过程:编制进度计划的过程:1、根据、根据WBS进一步分解出主要的任务进一步分解出主要的任务(活动活动)2、确定任务之间的关联关系、确定任务之间的关联关系 3、估算每个任务需要的资源和历时。、估算每个任务需要的资源和历时。最后,编制出项目进度计划。最后,编制出项目进度计划。3.2 任务定义任务定义n1、进度、进度 是对执行的活动和里程碑制定的工作计划日期表.n2、任务
2、定义、任务定义 WBS的每个工作包需要被划分成所需要的任务。任务定义是对WBS做进一步分解的结果。任务(活动Activity):指从工作包分解出来的,在项目过程中实施的工作单元。活动1活动2功能1软件产品工作包2功能2功能3工作包1工作包3活动具有的内容属性举例活动具有的内容属性举例 3.3 任务关联关系任务定义后就需要进行适当排序。任务定义后就需要进行适当排序。3.3.1任务之间的关系任务之间的关系 确定项目各项活动之间的相互联系与相互依赖关系,根据这些关系安排各项活动的先后顺序。任务(活动)之间的关系类型:FS(finish-start)、FF、SS、SF 3.3.2任务任务(活动活动)之
3、间排序的依据之间排序的依据强制性依赖关系(硬逻辑):客观条件限制造成。软逻辑关系:人主观制定的活动关系。外部依赖关系:活动与非项目活动有依赖关系。3.4 进度管理图示工具进度管理图示工具3.4.1 网网络络图图:是活动排序的成果,展示项目中的各个活动、活动的历时以及活动之间的逻辑关系。(1)PDM(Precedence Diagramming Method紧前关系绘图法紧前关系绘图法):单代号网络图单代号网络图 节点(Box)表示活动(工序,工作),用箭线表示各活动(工序,工作)之间的逻辑关系。可以使用种关系(FF、FS、SS、SF)。开始 活动1 活动3 活动2 结束 在软件项目中PDM比A
4、DM更通用。PDM图例 1:PDM图例图例2开始需 求获取项目规划需求确认项 目计 划评审 总 体设计详细设计系 统测试集 成测试 编码 结束粗线表示关键路径。(2)ADM(箭线图法箭线图法Arrow Diagramming Method):双代号网络图:双代号网络图箭线表示活动(工序工作),节点(圆圈)表示前一道工序的结束,同时也表示后一道工序的开始。只能使用FS一种关系。可以有虚活动。总体设计需求确认需求获取系统测试集成测试编码详细设计计划评审项目规划123698754虚活动:不消耗资源的活动,通常用虚线表示。虚活动虚活动 活动B完成后必须等待一段时间(不消耗资源),才能和A一起完成进入下
5、一个活动。(3)CDM:条件箭线图法条件箭线图法 在绘制网络图的过程中允许形成条件分支和回路条件分支和回路循环,而在PDM,ADM中是绝对不允许的。CDM网络图在实际项目中使用得很少。关于网络图的说明关于网络图的说明 网络图能很好地显示活动间的优先次序网络图能很好地显示活动间的优先次序,但对有许多但对有许多活动的大型项目活动的大型项目,图可能会很乱图可能会很乱,难于遵循难于遵循,可借助其它更好可借助其它更好的方法来做计划。的方法来做计划。并非所有的工作分解结构中单独的事项都需要出现并非所有的工作分解结构中单独的事项都需要出现在网络图中,尤其是在大型项目中。有些情况下,在项目在网络图中,尤其是在
6、大型项目中。有些情况下,在项目网络图中只需加入一个总结性的任务,或者将项目分解为网络图中只需加入一个总结性的任务,或者将项目分解为几个更小的网络图即可。几个更小的网络图即可。3.4.2 甘特甘特图图Gantt chart,也叫横道图横道图(Bar Chart)横轴表示时间,纵轴表示计划的活动(典型的甘特图的活动自上而下列于图左侧,日期自左而右显示于图上部),活动持续时间用标有日期的横道表示。两种甘特图表示方法两种甘特图表示方法 关于甘特图的说明关于甘特图的说明 甘特图是小型项目的常用工具。在大型项目中,经常甘特图是小型项目的常用工具。在大型项目中,经常作为高级管理层了解全局、为基层安排进度时的
7、工具。作为高级管理层了解全局、为基层安排进度时的工具。但该图没有表示出各项活动之间的制约关系及关键路但该图没有表示出各项活动之间的制约关系及关键路径,不太适于复杂的项目。径,不太适于复杂的项目。3.4.3 里程碑图里程碑图由一系列里程碑事件组成。里程碑事件:时间为0的任务,仅是一个标志性事件,不消耗资源。例如:“完成测试报告”事件。SpecificationDesign08/9811/98Testing02/995/99AvailableCoding9/0011/00Announce里程碑将项目分成了若干阶段。根据每个阶段完成情况可调整阶段任务量和完成时间,利于计划的动态调整。里程碑阶段点设置
8、应有挑战性和可达性,不轻易改变。3.4.4 资源图资源图用于显示项目进展过程中资源分配情况。用于显示项目进展过程中资源分配情况。例:人力资源图(人力资源随时间分布情况)。例:人力资源图(人力资源随时间分布情况)。3.5 活动资源估算活动资源估算 估计任务的历时之前,要先对每个任务需要的资源估计任务的历时之前,要先对每个任务需要的资源进行估算。进行估算。资源估算依据:任务列表;任务的属性;历史经验;企业的可用资源状况、过程制度及环境因素等。3.6 项目历时估计项目历时估计 估估计计任任务务的的持持续续时时间间,包包括括完完成成每每个个任任务务的的历历时时估估计计和和项目总历时估计。项目总历时估计
9、。估算需要考虑的历时影响因素:估算需要考虑的历时影响因素:(1)实际工作时间。实际工作时间。如一周工作几天、一天工作几个小时等。(2)项目人员等资源量。项目人员等资源量。(3)生产率。生产率。与人员的技能等资源质量因素有关。(4)有效工作时间。有效工作时间。在正常工作时间内要去掉聊天、休息、接待等非工作时间。一天工作8小时的时间利用率问题。历时估计的数值应该是有效工作时间加上额外时间。历时估计的数值应该是有效工作时间加上额外时间。(5)历史项目。历史项目。可以帮助估计。3.6.1 定额估算法定额估算法T=Q/(R*S)T:活动持续时间,可以用小时,日,周等表示 Q:活动的工作量,以实物度量单位
10、表示 R:人力或设备的数量,以人或台数表示 S:产量定额,以单位时间完成的工作量表示定额估算法适用情况:定额估算法适用情况:方法较简单,容易计算。适合较小规模的项目,比如说小于方法较简单,容易计算。适合较小规模的项目,比如说小于10000LOC或者说小于或者说小于6个月的项目。个月的项目。例如:Q=6人月,R=5人,S=1.2 T=1月月 3.6.2 经验导出模型经验导出模型经验导出模型:经验导出模型:D=AEb D:月进度A=24之间的参数E:人月工作量B:1/3左右的参数,具体值依赖于项目的自然属性 经验导出模型是根据大量项目数据统计而推导得出的模型。可根据项目具体情况确定合适参数。特点是
11、简单易用,但也可能因为基于经验的历史数据过时而导致评估出错。3.6.3 工程评价技术(工程评价技术(PERT:Program Evaluation and Review Technique,又叫,又叫“计划评审技术计划评审技术”)基于对某项任务的乐观,悲观以及最可能的概率时间估计。采用加权平均得到期望值:E=(O+4m+P)/6 O是最小估算值:乐观(Optimistic),P是最大估算值:悲观(Pessimistic),M是最大可能估算(Most Likely)。例例 某项活动:最小估算值=8个工作日,最大可能估算=10个工作日,最大估算值=24个工作日。则:该活动的历时=(8+4 X 10
12、 +24)/6=12(个工作日)适用情况:当估算项目中某项单独的活动,存在很大的不确定性时采用。适用情况:当估算项目中某项单独的活动,存在很大的不确定性时采用。PERT方法的风险分析方法的风险分析 见课本P72 课堂案例课堂案例 某项目,乐观估计最快某项目,乐观估计最快30天完成,最悲观估计天完成,最悲观估计120天完成,多数情况下是天完成,多数情况下是60天完成。请估计天完成。请估计80天完天完成的概率是多少?成的概率是多少?3.6.4 专家估计法依靠专家估算。依靠专家估算。由于不同项目团队的资源质量等因素不同,而专家依靠过去资料估算,也有风险。3.6.5 类推估计法类推估计法用过去类似活动
13、的实际时间估计未来活动时间。用过去类似活动的实际时间估计未来活动时间。类推法是常用方法,适用于项目早期掌握项目信息类推法是常用方法,适用于项目早期掌握项目信息不多的时候。不多的时候。3.6.6 模拟估计法模拟估计法 用不同模拟假设进行估算,比如假设都处于用不同模拟假设进行估算,比如假设都处于最悲观的情况,则项目需要多少时间。最悲观的情况,则项目需要多少时间。3.6.7 基于承诺的估计方法基于承诺的估计方法 不进行中间的工作量估计,从需求出发,并根据开发人员做出的进度承诺来安排进度。优点优点 有利于开发者对进度的关注 有利于开发者在接受承诺之后的士气高昂缺点缺点 开发人员估计的比较的乐观,低20
14、-30%易于产生大的估算误差3.6.8 Jones的一阶估算准则的一阶估算准则取得功能点的总和取得功能点的总和,从幂次表中选择合适的幂次将它升幂。例:例:如果:某项目功能点FP=350,且做该项目的公司是平均水平的商业软件公司。则:粗略的进度=350 0.43=12月3.7 进度计划编制进度计划编制(一一)概念概念 进度计划是在工作分解的基础上对项目活动做出一系列时间安排。要注意综合考虑时间、费用、资源。进度计划工具比较:进度计划工具比较:1、甘特图、甘特图:适于进度报告适于进度报告,作为管理陈述,易于读懂和使用。没有表示活动间的逻辑关系,作为计划编制工具不是太强。2、网络图、网络图:表明了活
15、动间关系和工作流程。可用于识别关键路径、项目历时、活动排序。适合用于编制计划适合用于编制计划和组织工作。3、里程碑图、里程碑图:表明重要事件,利于与客户和上级沟通项目状利于与客户和上级沟通项目状态态。(二二)编制进度时使用的基本方法编制进度时使用的基本方法1、关键路径法(、关键路径法(CPM:Critical Path Method)计算网络图中完成时间最长的路径,它代表了完成项目的最短时间。CPM还可计算每项活动的浮动时间。如果关键路径上的一个活动比计划的时间长,整个项目的进度将会拖延。在项目的进行过程中,关键路径可能改变的。关键路径关键路径是用于预测项目总历时的网络分析技术。先计算每个活动
16、的最早和最晚开始和结束时间,然后计算网络图中的最长路径,以确定项目的完成时间。关键路径关键路径是项目网络图中最长的路径。关键路径上的任何活动延迟都会导致整个项目完成时间延迟,需要加强管理;关键路径可能有多条(时间都一样);随着项目进展中对活动的管理、调整,关键路径可能发生改变。2、进度压缩的方法、进度压缩的方法(1)应急法应急法(赶工):通过权衡成本和进度间的得失,来决定是否和怎样用最小增量成本获得最大量的时间压缩。应急法经常导致成本增加。(2)平行作业法平行作业法(快速跟进:即采用“搭接”技术):对通常要按前后顺序进行的活动,考虑安排这些活动并行进行。如系统设计完成前,就部分的开始编程工作。
17、平行作业可能导致返工,增加了风险。说明:应该将注意力集中于关键路径,压缩了进度后,要注意重新检查关键路径,因为压缩后可能出现新的关键路径。进度压缩与工作量、费用增长关系的分析进度压缩与工作量、费用增长关系的分析(1)线性关系分析线性关系分析 假设进度压缩与成本增长成正比假设进度压缩与成本增长成正比,通过计算活动的单位进度的压缩成本来计算压缩总费用。见课本P78表3-5例原理:先计算A、B、C、D四个活动的单位压缩成本(万/周),压缩进度时,先选择压缩那些压缩成本最小的活动,这些活动不能再压缩后,再压缩那些压缩成本次小的活动,依次类推。(2)进度压缩因子方法进度压缩因子方法 进度压缩与费用上涨不
18、总是线性正比关系进度压缩与费用上涨不总是线性正比关系,当压缩到一定范围后,再压缩就会导致成本急剧增加。另外,软件项目存在一个不能突破的最短进度。压缩进度因子方法的原理公式压缩进度因子方法的原理公式 进度压缩因子期望进度/原估算进度压缩进度的工作量原估算工作量进度压缩因子 例:原估算:进度=12个月,工作量78人月现在期望:进度10个月则:压缩后的工作量原工作量进度压缩因子=78人月(10/12)78/0.83 =94人月即:进度压缩17%,将增加21%的工作量 3、资源平衡法、资源平衡法 关键路径法通常产生一个初始进度计划,然后再分析调整、优化。工作要点:(1)资源平衡:维持工期不变,通过调整
19、进度计划,使资源需求平稳连续、资源强度尽可能平衡,使资源闲置的时间最小。(2)将资源从非关键活动转到关键活动,使工期最短。例:某项目有例:某项目有A、B、C三个活动任务的网络图如下三个活动任务的网络图如下 A:2人2天B:4人5天C:2人3天 4、关键链法、关键链法思想:思想:工作安排不应该尽早开始,因为一项工作如果最工作安排不应该尽早开始,因为一项工作如果最晚开始,则没有富裕时间,人员有压力,效率高。晚开始,则没有富裕时间,人员有压力,效率高。项目估算时,要设法把每个个人估算中的隐藏的项目估算时,要设法把每个个人估算中的隐藏的富余量剔除出来,作为一个统一的安全备用。富余量剔除出来,作为一个统
20、一的安全备用。具体参见课本具体参见课本P81-84关于进度追回的具体方法讨论在工作中对落后于计划的工作进度采取哪些具体措施?(1)加班:常用,但不好。长时间加班会造成生产率下降加班:常用,但不好。长时间加班会造成生产率下降,出错和返工的可能出错和返工的可能性大增,反而拖延了工期。用于落后不多的情况性大增,反而拖延了工期。用于落后不多的情况。(2)外包:将风险小的部分外包给一般资源,将风险大的任务外包给项目组外包:将风险小的部分外包给一般资源,将风险大的任务外包给项目组外的更专业团队来做。外的更专业团队来做。(3)资源优化:增加资源和调整资源到关键路径等。资源优化:增加资源和调整资源到关键路径等
21、。(4)加强沟通:实现团队知识、经验共享,避免重复工作。也使成员合作更加强沟通:实现团队知识、经验共享,避免重复工作。也使成员合作更好,发挥一加一大于二的作用。好,发挥一加一大于二的作用。(5)加强控制:对近期活动加强控制,防止再延期;加强控制:对近期活动加强控制,防止再延期;对工期长、预算大的活动加强控制,争取压缩;对工期长、预算大的活动加强控制,争取压缩;对已经出现延迟多的活动加强控制,密切关注、跟踪。对已经出现延迟多的活动加强控制,密切关注、跟踪。(6)缩小范围:与用户或项目发起人沟通,争取获得缩小项目范围的认可。缩小范围:与用户或项目发起人沟通,争取获得缩小项目范围的认可。(7)改变工
22、艺或流程:改进技术方法和操作方法;考虑对任务进行分解的可改变工艺或流程:改进技术方法和操作方法;考虑对任务进行分解的可能,若能分解,对分解后的多个活动考虑并行进行。能,若能分解,对分解后的多个活动考虑并行进行。(8)注意成员的时间管理注意成员的时间管理小结:建立实际进度表的完整过程小结:建立实际进度表的完整过程1、开发工作分解结构、开发工作分解结构(WBS)2、识别活动的依赖关系:可先做什么再做什么?可同时做什么?、识别活动的依赖关系:可先做什么再做什么?可同时做什么?3、根据、根据WBS和依赖关系编制网络图和依赖关系编制网络图(PDM)4、做关键路径分析、计算:计算活动的最早开始、结束时间;
23、、做关键路径分析、计算:计算活动的最早开始、结束时间;计算活动的最晚开始、结束时间;计算活动的最晚开始、结束时间;整个持续时间可接受吗?整个持续时间可接受吗?5、分析关键路径的活动:每个活动可以缩短吗?、分析关键路径的活动:每个活动可以缩短吗?若可以,关键路若可以,关键路径会改变吗?径会改变吗?6、进行资源分配:平衡资源,整个持续时间仍可接受吗?、进行资源分配:平衡资源,整个持续时间仍可接受吗?7、将网络图转换为甘特图、将网络图转换为甘特图案例讨论案例讨论 某公司准备管理信息化建设,全面建立计算机管理信息系统。在3年中设立了31个软件项目,每个项目都由一个项目经理领导。在可行性分析完成后,要求每个项目经理提交一份成本分析和预算。第一年底,14个项目有11个延迟,而且都超出预算,有的超预算100%。经理开会要求相关负责人对超支做出解释。会上,项目经理们解释说早在需求定义阶段前就制定项目完成期,这是不科学的;而且高层只强调时间,不讲质量,而我们做系统的时候却必须注重质量,这是导致延期和超支的另一个原因。开始定的日期目标只能作为大概的计划,具体时间计划要根据全面的项目需求、资源等来定。问题:问题:1、通过会议发言,你总结一下当前的主要问题是什么?2、针对目前情况,经理能给出今后工作的什么建议?End
限制150内