第六章 项目时间管理
1.理解项目进度及做好项目时间管理的重要性。2.定义活动,并将其作为编制项目进度的基础。3.描述项目经理如何运用网络图和活动间的依赖关系进行活动排序。4.理解资源估计和项目进度之间的关系。5.解释各种I具和技术如何帮助项目经理进行活动I期估计。6.运用甘特图来计划和追踪进度信息,找出项目的关键路径,描述关键链进度编制法和计划评审技术如何影响进度的编制。7.讨论如何运用现实检查与纪律来控制和管理项目进度的雯更。8.描述项目管理软件如何帮助项目经理进行项目时间管理,并且在使用软件之前能够审读此类软件的使用说明书。开篇案例 苏-约翰逊是一家咨询公司的项目经理。该公司刚刚签订了一项为当地一所学院提供在线注册系统的合同。合同规定,这个系统必须在5月1日之前完成,以便学生们可以在秋季学期利用它来进行注册。如果系统没有按时到位,按合同规定她所在的公司将要支付一笔巨额违约金。相反,如果能够按时并且出色地完成该项目,苏和他的团队将会得到丰厚的奖金。苏知道她有责任使项目按进度进行,并且做好项目范围、成本和期望质量管理。为了更好地开展这个项目,她和团队编制了详细的进度表和网络图。 编制进度表很容易,但使项目按进度进行要困难得多。管理人事和解决进度冲突是俩项较大的挑战。学校许多员工临时休假,错过了项目报告会,必须重新安排;而在整个系统开始的各个阶段,又都需要用户提供反馈意见,由此引发的一些变更使项目团队很难按原定的进度表开发该系统。一位高级程序员也离开了苏所在的项目团队,她明白,让一个新手接替工作将需要额外的时间。尽管项目刚刚开始,但是苏很清楚,她们已经开始落后了。为使项目在5月1日之前完成,苏应该做些什么呢?6.1 项目进度安排的重要性 许多IT项目在项目范围、时间及成本管理方砸都是失败的。项目经理也常把按时交付项目视为最大的挑战和引发冲突的主要原因。 或许导致进度问题的部分原凶非常普遍,那就是我们可以简单、容易地估量时间。你可以为范围和成本超支辩解,并且使实际的数字看起来更接近估计的情况,但是,项目进度一旦设定,任何人都能够用项目实际完成时间减去原始估计时间的办法,迅速地判断出进度绩效。通常人们在比较项目计划完成时间和实际完成时间时,并没有考虑项目进展中所允许的变更。与此同时,时间也是灵活度最低的变量。无论在项目进展过程中出现了什么情况,时间依然一如既往地流逝。 个人的工作作风和文化差异也会造成进度上的冲突。在第9章中,读者将会了解迈尔斯·布瑞格斯的分类指标—一种团队建设工具。其中的一个维度用于衡量人们对于结构和期限的态度。有些人倾向于制定详细的进度表,专注于任务的完成;而有些人却倾向于让进度保持开放性和灵活性。在不同的文化背景下,甚至在一个国家内,人们对于时间进度的态度也有所不同。例如,在某些国家,企业下午会停止营业几个小时,以便让员工午休;而有些国家可能会在一年的某个时期内规定各种宗教假日或其他长假,假期期间人们不会从事太多的工作。不同文化背景下的人们也可能在工作伦理上有着不同的看法。例如,有些国家的人们工作努力,编制的时间进度表紧张得让人难以喘气,而有些国家更倾向于保持工作进度的宽松和灵活。 鉴于引发进度冲突的种种可能性,做好项目时间管理非常重要,因为这有助于项目经理在这个领域中不断地提高绩效。项目时间管理( project time management),简单的定义就是:确保项目按时完成所需的过程。然而,要想按时完成项目绝不是一件容易的事情。项目时间管理涉及以下6个主要过程。 (1)活动定义(activity definition)是指识别项目成员和利益相关者为完成项目所必须开展的具体活动。活动( activity)或任务(task)是构成工作的基本要素,通常能够在工作分解结构(WBS)中看到。它们往往有预计的工期、成本和资源需求。这一过程的主要输出包括:列出活动清单、活动属性和里程碑清单。 (2)活动排序(activity sequencing)是指识别并记录项目活动之间存在的关系。该过程的主要输出是项目进度网络图和项目文件的更新。 (3)活动资源估计(activity resource estimating)是指估计项目团队为完成项目活动需要使用多少资源( resources) -人力、设备和原料。该过程的主要输出包括:输出活动资源需求、资源分解结构和项目文件的更新。 (4)活动工期估计(activity duration estimating)是指估算完成单个活动需要多长时间。该过程的输出包括:输出活动工期的估算以及项目文件的更新。 (5)进度安排(schedule development)是指通过活动顺序分析、活动资源估计和活动工期估计,制定出项目进度。这一过程的输出包括:项目进度表、进度基线、进度资料、项目文件更新。 (6)进度控制(schedule control)是指控制和管理项目进度的变更。这一过程的输出包括工作绩效测量、组织过程资产更新、变更请求、项目管理计划更新和项目文件更新。 图6-1总结了这些过程以及输出,并显示了在一个典型的项目中它们发生的时间。 通过开展这些过程,并采用一些基本的项目管理工具和技术,项目经理就能更好地进行项目时间管理。每位项目经理都熟悉一些进度编制的方法,但是大部分项目经理并没有使用项目时间管理的专用工具和技术,比如甘特图、网络图、关键路径分析等。6.2活动定义 项目进度来源于发起这个项目的基础文件--项目章程。项目章程中通常会提到项目预计的开始和结束日期,它们可以作为编制更详细的进度的起点。项目经理,正如在第5章中所讲的,要起草项目章程、制定项目范围说明书和工作分解结构。项目章程中也应该包括预期投入到该项目的资金数额。如果可行的话,项目经理和项目团队还可以利用活动定义的主要输入信息--范围基线(范围说明书、工作分解结构、工作分解结构词典)以及企业环境因素和组织过程资产,开始制定详细的活动清单,鉴别活动属性,列出里程碑清单,以及提出变更申请。 活动清单(activity list是一个显示项目涉及哪些活动的表格,应该包括活动名称、活动识别码或号码,以及对活动的简单描述。活动属性(activity attrihutes)则更加详细地显不了每个活动与进度相关的信息,例如紧前活动、紧后活动、逻辑关系、提前和滞后、资源需求、约束条件、强制日期和与活动相关的假设等。活动清单和活动属性应该与工作分解结构及工作分解结构字典相一致。在适当的时候,可以把额外的信息增添到活动的属性中,例如在后续过程中确定的逻辑关系和资源需求。许多项目团队使用自动化系统追踪与活动有关的所有信息。 一个项目的里程碑( milestone)是指那些通常没有活动历时且意义重大的事件。要完成一个里程碑,需要开展多项活动以及做大量的工作,但里程碑本身就像一个用于识别必要活动的标记。里程碑也是制定进度目标并检测项目进展情况的有效工具。以本章“开篇案例”中的项目为例,该项目的里程碑可能包括:制定项且文件任务的结束和校方对文件的签署,如设计文件和测试计划;特定产品的完工,如软件程序模块或安装新的硬件;与重要过程有关的工作的完成,如项目报告会议和测试等。但是,在完成项目的过程中,并不是每一个可交付的输出都是里程碑。里程碑应该是那些最重要的并且显而易见的事件。例如,里程碑一词可用于多种情景,像孩子的成长过程。父母和医生见证了这些里程碑,如孩子第一次打滚、坐、爬、走路、说话等。读者将会在本章的后面部分,更多地了解与里程碑相关的知识。 活动信息对于其他的时间管理过程来说,是一种必需的输入。如果没有彻底地理解项目的活动,你就无法确定活动的顺序、活动所需的资源或者活动工期,也就不能编制或控制项目进度。 回顾项目管理的3个约束条件--范围、时间和成本,并且注意这3项的顺序。理想情况下,项目团队和关键利益相关者首先确定项目的范同,其次是项目的时间,最后是项目的成本。这3项的顺序反映了项目时间管理巾前4个过程的基本顺序:活动定义(进一步确定范围),活动排序(进一步确定时间),活动资源估计和活动工期估计(进一步确定时间和成本)。项目时间管理的这4个过程构成了编制项目进度的基础。 活动定义过程的目标是确保项目团队成员能够彻底地理解他们所必须从事的项目范围内的工作,以便于他们开始制定工作进度。例如,工作分解结构的一个任务是“制定研究报告”。项目团队成员在做出相关进度决定以前,他们必须理解这项工作的意思。这个报告应该多长?制定这个报告,是否需要调查和进一步的研究?报告撰写人应该达到怎样的水平?进一步定义任务将有助于项目团队决定花费多长时间完成这项任务,以及由准来做这个任务。 当项目冈队成员进一步定义开展工作所需从事的活动时,工作分解结构通常在活动定义过程中会被进一步分解。例如,“制定研究报告”的任务可能会被分解成若干个次任务,这些次任务描述了制定报告的步骤。例如,设计一项调查,进行调查,分析调查结果,起草报告,编辑报告,以及最后生成报告。这一渐进式细化的过程正是第1章提到的项目属性,有时也被称为“滚动式计划”。 根据前面所讲的内容,活动和任务是项目过程中所从事工作的基本要素。它们有预计的工期、成本及资源需求。活动定义也提供了详细的材料来证明重要的产品信息以及与具体活动相关的假设和约束条件。开展项目时间管理时,在转向下一个步骤之前,项目团队应该和利益相关者一起回顾一下活动清单和活动属性。否则,他们编制的进度表可能会不符合实际,也可能会造成让人无法接受的后果。例如,一位项目经理经过简单的估计得出只需一天就能完成研究报告,然后派一个实习生或培训生写了一份共有10页的报告,这样就算完成了任务。结果可能让客户大发雷霆,因为客户期望得到的是一份经过充分研究、调查共有100页厚的报告。清晰地定义工作是所有项目的关键。如果没有正确理解活动,将来肯定需要做出必要的变更。 在“开篇案例”中,苏-约翰逊和她的项目团队签订了一份为学院开发在线注册系统的合同,并且附有系统规格的详细说明书。他们也必须集中精力在5月1日前完成系统的开发,以便学院可以用这个新系统进行新学期注册。为了编制项目进度表,苏和她的团队必须仔细研究一下合同、系统规格详细说明书及合适的运营日期,从而开发出活动清单、活动属性和里程碑清单。在对项目活动进行更加详细的定义之后,苏和她的团队将与他们的客户一起评审活动清单及活动属性,以确保这些活动能按进度进行。错在哪里 在美国联邦调查局(FBI),三部曲项目失败的原因之一就是糟糕的时间管理。“三部曲”是一个损失惨重且耗资巨大的系统项目,开发软件用了4年多的时间。这个系统本应该能够帮助联邦调查局情报员把来自调查局内部的各个独立的信息数据库的情报进行汇总。2006年5月,政府预算机构宣称三部曲项目并没有发挥它的核心功能--提高联邦调查局的调查能力,并且该项目不但没有按时完成里程碑事件,而且成本激增。 为应对“9-11”等类似事件的袭击,美国联邦调查局在2001年初仓促地开始开发这套新系统。以前的联邦调查局情报员急需这套新的软件,戴维德吉-威廉姆斯回想起“9-11”事件发生后不久,他加入到一群情报囊中间帮助收集情报的那段时间。情报员整日坐着椅子,在20台老式计算机终端间前后牙棱,结果他们椅子上的滑轮最后都磨坏了。这20台中的大多数计算机与包舍不回信息的各种数据库相连。 国会听证会揭露了项目的许多问题。例如,对项目要求规定的过于究松;整个项目过程中多次变更领导者;合同中并没有设定完成项目的里程碑,也没有针对工作延误而制定惩罚措施。迭套新系统最终于2006年完工,成本超过5.37亿美元--该项目延期1年多完工,成本超出预算2亿多美元。现在联邦调查局可能马上就要用一种新的、有望改进的系统一一“哨兵”来取代“三部曲”系统。6.3活动排序 在定义完项目活动之后,项目时间管理的下一步就是活动排序或决定它们的依赖关系。活动排序过程的输入包括活动清单和活动属性、项目范围说明书、里程碑清单和组织过程资产,从而决定活动间的关系。活动排序也涉及寻找活动间存在依赖关系的原因和识别活动问依赖关系的不同种类。6.3.1依赖关系 依赖关系( dependency)或关系(relationship)与项目活动或任务的排序有关。例如,开始另一项活动前,是否必须完成某一项活动7项目团队是否可以同时开展多个活动?某些活动是否可以交叉进行?对活动间的这些关系或依赖关系的确定将会在很大程度上影响项日进度的制定和控制。 项目活动间之所以产生依赖关系,有3个基本原因: -强制依赖关系( mandatory dependencies)是指项目中所开展工作的内在本性。有时我们称它为硬逻辑。例如,你必须在输入密码之后,才能测试密码。 -自由依赖关系( discretionary dependencies)是指可以由项目团队央定的活动之间的关系。例如,一个经验丰富的项目团队,会在用户对其所有分析工作提出反馈意见之后,才开始详细地设计一套新的信息系统。有时我们称自由依赖关系为软逻辑,而且我们要谨慎地使用这种自由依赖关系,因为它可能会限制后面的进度选择。 -外部依赖关系( external dependencies)是指项目和非项目活动之间的关系。新操作系统和其他软件的安装可能取决于外部供应商能否及时交付新硬件。尽管新硬件的交付可能不属于项目的范围,你也应该给它增加一种外部依赖关系,因为交付延误将会影响项目的进度。 和活动定义一样,与项目利益相关者一起确定项目活动问存在的依赖关系,是一项十分熏要的工作。如果不进行活动排序,项目经理就不能使用一些有效可行的项目进度管理工具,如网络图和关键路径分析。6.3.2网络图 网络图是显示活动顺序的有效技术。网络图( network diagram)是一个显示项目活动间逻辑关系或顺序的示意图。一些人称网络图为项目进度网络图或计划评审技术图。本章后面的内容将讲述计划评审技术(PERT)。图6-2就是项目X的网络图。在该网络图中,使用了箭线图法(ADM)或双代号网络图法(AOA)。 注意这个网络图中的主要元素。字母A-J代表了为完成项目而开展的具有相互依赖关系的活动,这些活动来自工作分解结构和前面完成的活动定义过程。箭线代表了活动间的顺序或任务间的关系。例如,只有活动A完成后才能开始活动D,活动D完成后才能开始活动H,等等。 绘制这个网络图使用的是双代号网络图法( activity-on-arrow,AOA)或箭线图法(arrow dia.-gramming method,ADM一种网络图技术。在AOA中,箭线代表活动,节点用来连接活动,进而表示了活动间的顺序。节点(node)仅代表一项活动的起点和终点。第一个节点代表项目的开始,最后一个节点代表项目的结束。 我们应当牢记,网络图表示的是为完成项目而必须开展的活动,而并不是一场从第一个节点到最后一个节点的赛跑。另一个需要特别注意的是,工作分解结构中的每一项并非都必须绘制在网络图上,仅把存在相互依赖关系的活动绘制在网络罔上就可以了。然而,有些人喜欢把项目从开始到结束的所有活动都绘制到网络图上,这是一个个人喜好的问题。因为一个项目中有数以百计的活动,绘制网络图时,仅列出存在相互依赖关系的活动,可能会更简单一点,尤其是对于大型项目来说。有时仅把总结性任务绘制在网络图上就足够了,或者你也可以把一个项目分解成若干个小网络图。 假设给你一组项目活动,并给出这些活动的起始和终止节点,按照下列步骤,你可以绘制一个双代号网络图。 (1)找出所有在第一个节点开始的活动。画出它们的终止节点,然后在第一个节点和每一个活动的终止节点间画出箭线。把活动名称或代表活动的字母标注在相应的箭线上。如果有估计的活动工期,就像图6-2中显示的那样,把它标注在活动名称或字母的旁边。例如,A=l是指活动A的工期是一天、一周或是其他时间单位。还要确保所有箭线都带有箭头,以表示关系的方向。 (2)继续从左到右绘制网络图,找到发散点和汇聚点。当两个或两个以上的活动跟在单个节点之后时叫做发散( hursts);当两个或两个以上的节点排在单个节点之前时叫做汇聚(merge)。例如,在图6 2中,节点l是一个发散点,因为它后面跟有节点2、3和4。节点5是一个汇聚点,因为它前面有节点2和3。 (3)继续绘制双代号网络图,直到所有的活动都包含在网络图中。 (4)一般情况下,所有的箭头应该指向右边。在双代号网络图中,箭线不能出现交叉。有时还需要重新绘制网络网,以便让它看起来更加美观。 总体来说,双代号网络图比较容易理解和绘制,但另外有一种方法使用更加普遍,即前导网法。前导图法( precedence diagramming method,PDM)是一种用方框表示活动的网络图技术。在显示活动的某种时间关系类型时,该方法十分有效。 网6-3显示了项目活动间可能存在的各种关系。在找出项目活动问存在的依赖关系的原因后(强制的、自由的或外部的),你就能确定这些关系的类型。需要注意的是,有关活动和任务的术语可以互换使用,就像依赖关系和关系可以互换使用一样。读者可查看附录A,了解MS Project2007是如何确定活动关系的。活动间共有4种关系: -完成一开始(finish-to-start):该关系表示“从”活动(前置活动)完成后才能开始“到”活动(后续活动)。例如,只有安装完一个软件或一个系统之后,才能开始对用户进行培训。完成一开始是最常见的关系类型,在双代号网络图中仅使用完成开始关系。 -开始一开始(start-to-start):该关系表示只有“到”活动(后续活动)开始后,“从”活动才能开始。例如,在几个IT项目中,一组活动可以同时进行。当一个新系统运行时,许多任务都在执行。 -完成一完成(finish-to-finish):该关系表示“到”活动完成前,“从”活动必须完成。在另一项任务还没有完成时,一项任务就无法完成。例如,产品生严没有结束,质量控工作就不能停止,尽管两项活动可以同时进行。 -开始一完成(start-to-finish):该关系表明“从”活动必须开始后,“到”活动才能完成。这种关系很少使用,但在有些情况下使用这种关系是合理的。例如,一个组织在开始制造过程时,尽量及时补充好原材料。制造过程开始的推迟将会延迟原材料的补给。另外一个例子是,一个保姆是否能结束照看孩子的任务只能取决于孩子父母是否到家。必须是父母到家以后,保姆才能完成照顾孩子的任务。 图6-4显示了项目X是如何使用前导图法的。在前导图中,我们注意到,活动被标注在方框内,而方框代表节点。箭线表明了活动间的关系,这个前导图是用MS Project软件绘制而成的,该软件自动地把其他信息标注在每一个节点内。每一个任务方框都注有开始和完成日期(图中标注为Start和Finish),任务的编码(图中标注为ID),任务的工期(图中标注为Dur)。如果分配给任务资源,还会注有资源名称(在图中标注为Res)。在MS Project软件绘制的网络图中,关键路径巾的任务方框边界自动显示为红色。在图6-4中,关键任务方框的边界由粗线条绘制。 与双代号网络图技术相比,前导图法使用得更加普遍,并且还有许多优势。第一,大部分项目管理软件使用的都是前导图法。第二,前导图法无需使用虚活动。虚活动( dummy activities)是指没有工期和资源需求的活动,有时偶尔在双代号网络图中,用来辅助表示活动间的逻辑关系。它们通常用虚箭线来表示,估计的工期为零。第三,前导图法可表明任务间的多种关系,而在双代号网络图中只有完成开始这一种关系。在附录A中,读者将更多地了解如何使用MSProject 2007进行活动排序。 6.4活动资源估计 在估计每一项活动的工期前,你必须充分了解分配给每项活动的资源(人、设备和原材料)的数量和类型。项目和组织的特征将会影响到资源估计。专家判断、备选方案分析、估算数据和项目管理软件(参见第7章)都是有助于资源估计的可行工具。重要的一点是,决定哪些是项目必需资源的人应该有过类似项目的经历和经验,并与组织一起开展过项目。 在活动资源估计过程中,需要关注以下重要问题: -在这个项目中,完成具体活动的难度有多大? -项目说明书中是否有特殊的内容会影响到资源的使用? -组织过去开展类似项目的历史,组织以前是否执行过类似的任务?做这些工作的人员水平怎样? -组织是否有可用的人力、设备及材料来开展项目?组织中的政策是否有一些会影响到资源的使用? -组织是否需要获得更多的资源来完成工作可以把一些工作外包吗?当外包可行时,到底是增加还是减少了资源的需求量?为了回答这些问题,我们必须知道项目的活动清单、活动属眭、项目管理计划、企业的环境因素、组织过程资产(例如人事和外包政策)和可用资源的信息。在项目初期,项目团队可能不知道有哪些人、设备和原材料可用。例如,他们可能从以前的项目中了解到,项目的执行人员巾既包括有经验的,也有没有经验的。他们可能也会根据可用的信息估计正常完成活动所要花费的时间和人力。 充分利用头脑风暴法并评估资源的备选方案十分重要,尤其当一个项目中的人员具有不同的背景或来自不同的公司时。因为大部分项目都会有大量人员参与,成本大部分用于支付工资和津贴。在项目早期,听取不同人的意见,能够有效地帮助选择资源和处理资源事务。当可利用的信息越来越多时,资源估计电应相应地进行更新。 资源估计过程的主要输出包括:活动资源清单、资源分解结构、变更申请,以及必要的时候,列活动属性和资源日历的更新。如果分配给初级员工许多任务,那项目经理可能会分配额外的时间和资源来帮助培训和指导这些员丁。活动资源估计不仅是活动工期估计的基础,而且还为项目成本管理(参见第7章)、项目人力资源管理(参见第9章)、项目沟通管理(参见第10章)、项目风险管理(参见第11章)及项目采购管理(参见第12章)提供了重要的信息。资源分解结构( resource breakdown structure)是一种根据类别和类型来识别项目资源的层级结构。例如,资源类别中可能包括分析师、程序员和检验员。拿程序员来说,又可能有多种程序员,比如,Java程序员和COBOL程序员等。这类信息都有助于确定资源成本和获得资源等。6.5活动工期估计 在和主要的利益相关者一起定义了活动、确定了活动间的关系并估计了活动所需的资源之后,项目时间管理的下一个过程就是活动工期估计。需要特别注意的是,工期( duration)等于开展活动的实际时间加占用时间。例如,尽管可能只花一周或5天就能完成一项实际的工作,但估计的工期可能是两周,目的是根据外部信息留出一些额外的时间进行调整。分配给一项任务的资源也会影响该任务的工期估计。不要混淆工期和人工量这两个概念,人工量(effort)是指完成一项任务所需(多少个单位)的工作天数和工作小时。一天的工期估计可以是基于8小时工作或每周80小时工作。工期是指时间估计,而不是人工量估计。当然,二者之间也存在联系,所以在项目进展过程中进行工期估计或更新工期估计时,项目团队成员必须验证他们的假设。实际上,工作执行者在做活动工期估计时是最有发言权的,因为要依据能否按工期完成活动来评估他们的工作绩效。如果项目的范围发生了变化,应更新工期估计以反映这些变化。回顾类似的项目和寻求专家的建议将有助于做好活动工期估计。 进行活动工期估计还需要有几项输入。活动清单、活动属性、活动资源需求、资源日历、项目范围说明、企业环境因素和组织过程资产所包含的信息都会影响工期估计。除了阿顾过去的项目信息,项目团队也应该回顾一下工期估计的准确性。也就是说,与项目的实际执行情况有多大偏差。例如,如果发生所有的工期估计都太长或是太短,就应该更新所做的估计,以反映他们所发生的情况。在做活动工期估计时,要特别注意资源的可得性,尤其是人力资源。从事工作的人员都需要什么特殊技能?项目巾人员的技能水平如何?在项目进行的任何时间,预计有多少人可用? 活动工期估计的输出包括活动工期的估计和项目文件更新。估计的工期常常是不连续的数字,比如4周;或是一个时问范同,比如3-5周;或是进行三点估计。三点估计(three-point es-timate)是一种包括乐观估计、最大可能估计和悲观估计的估计方法。例如,乐观估计的工期为3周,最大可能估计的工期是4周,而悲观估计的工期是5周。乐观估计以最好的设想为基础,而悲观估计则以最坏的设想为基础。所谓最大可能估计就像其字面意思那样,它以最有可能发生的设想为基础。三点估计可用于计划评审技术( PERT)的估计(本章后面将会讲述)和蒙特卡罗模拟(参见第11章)。其他的工期估计技术还有类比估计、参数估计和反向分析(参见第7章)。专家判断法也是进行活动工期估计的重要工具。6.6进度安排 进度安排就是依据项目时间管理前几个过程的结果确定项目的开始和结束日期。项目进度表生成之前,项目时间管理的全部过程常常会反复进行。进度安排的最终日标是编制一份切实可行的项目进度表,从而为在时间维度七监控项目的进展情况提供了依据。进度安排过程的主要输出有项目进度表、进度模型数据、进度基线、变更申请,以及对资源需求、活动属性、项目日历和项目管理计划的更新。一些项目团队通过构建计算机模型、绘制网络图、输入资源需求和可用时间、校正其他信息,进而快速生成备选进度方案。参见附录A,读者可以了解如何使用Project2007进行进度安排。 以下几个工具和技术有助于做好进度安排。 -甘特图:一种用于显示项目进度信息的常见工具。 -关键路径分析:一种用于设定和控制项目进度的重要工具。 -关键链进度安排法:当编制项目进度表时,这种技术主要考虑如何使用有限的资源。 -计划评审技术(PERT)分析:一种评估项目中进度风险的工具。 下面分别举例说明这些工具和技术,并分析它们的优缺点(参见《项目管理知识体系指南》(第4版),读者可了解这些主要技术和其他工具是怎样分类的)。6.6.1甘特图 甘特图( Gantt charts)提供了一套显示项目进度信息的标准模式(是一个日历模式,其中列举了项目活动和活动的开始日期和结束日期)。有时甘特图也被人们称为条形图,因为在甘特图中活动的开始日期和结束日期都用水平横条来显示。图6 5是一个用MS Project软件绘制的项目X的简易甘特图。图6-6是用微软提供的模板为一个软件发布项目绘制的更为复杂的甘特图。甘特图上的活动应该与工作分解结构中的活动相一致,而丁作分解结构中的活动要与活动清单和里程碑清单相一致。注意,在软件发布项目生成的甘特图中包含里程碑、总结性任务、每个任务的工期和表明任务间关系的箭线。 注意,图6-6中使用了不同的符号。 -黑色钻石符号代表里程碑。在图6-6中,任务1,“营销计划书分发”是项目的一个里程碑,该里程碑于3月17日发生。任务3、4、8、9、14、25、27、43和45也都是项目的里程碑。对于每一个大型项目来说,高层项目经理可能只想了解甘特图里的里程碑。MSProject软件允许过滤甘特图中的信息,这样就能方便地指示特定的任务,比如里程碑。 -两端带有箭头的黑色粗条代表总结性任务。例如,活动12 -15-“设计创新性的大纲”,“开发概念”,“创新性概念”和“广告设计”都是总结性任务11“广告”的次任务。在大部分项目管理软件中,工作分解结构中的活动被称为任务和次任务。 -浅灰色的水平线条代表了每项任务的工期,像图6-6中任务5、6、7、10、12、13、l5、22、24、26和44。例如,与次任务5“包装”所对应的灰色水平条表示该活动在2月中旬开始到5月初结束。 -连接这些符号的箭线表明了任务间的关系。通常甘特图不显示任务间的关系,这是它最大的不足之处。但如果把活动间的关系输入到MS Project中,软件也会自动地在甘特图中显示这些信息。 1.在甘特图中添加里程碑 里程碑是一个进度表中相当重要的部分,尤其对于大型项目来说。许多人喜欢集中精力实现里程碑,所以你可以通过设定里程碑来强调重要的事件和项目的输出。一般来说,我们通过输入零工期任务设定里程碑。在MS Project中,在“任务信息”对话框的“高级”标签中选择合适的选项就能把任何任务设定为里程碑。该任务的工期不会变为零,但在甘特图中会显示里程碑的符号,用来表示基于这个开始时间的任务。参见附录A,你可以了解更多的信息。 为了让里程碑更加有意义,一些人使用SMART标准来定义里程碑。SMART标准(SMARTcriteria)是一种指导方针,按照该标准,里程碑应当: -Specific-具体。 -Measurable-可测量。 -Assignable-可分配。 -Realistic-符合实际。 -Time-framed-有时间限制。 例如,如果每一个人都知道营销计划的内容,如何发布计划、发放多少份复印件、发放给谁、谁负责发放,那么发布营销计划就是具体的、可测量的和可分配的里程碑。如果发布营销计划这项任务可以实现并在合适的时间里安排,它就是符合实际且有时间限制的里程碑。 2.使用追踪甘特图比较计划日期和实际日期 追踪甘特图是一种显示项目实际进度信息的特殊甘特图,可用于评估项目的进度。 图6-7显示的就是一个追踪甘特图(Tracking Gantt chart)这种甘特图比较了原计划项目进度的信息和实际项目进度的信息。活动的计划进度日期叫做基准日期( baseline dates),已批准的整个原计划进度叫做进度基线( schedule baseline)。追踪的甘特图中有两种方框(图6—7中隐藏了)。一类方框中标注有“开始”和“完成”代表每项任务的实际开始和完成日期,另一类方框中标注有“开始基线”和“完成基线”代表每项任务的原计划开始日期和完成日期。在本例中,该项目已经完成,但是有几项任务并没有按原定的开始日期和完成日期执行。 作为进度评估的工具,追踪甘特图中使用了一些其他的符号。 -注意在如图6-7所示的甘特图中,每一项任务通常有两个水平条与之相对应。上面的水平条代表每项任务的计划工期或基准工期,下面的水平争代表了任务的实际工期。图中次任务1.2和l.3分别就有两个水平条与之相对应。如果上下两个水平条长度相等,并且开始和完成日期一样,那么该任务的实际进度和计划进度是相同的。图中次任务l.l就是这种情况,任务在计划的3月4日开始并完成。如果上下两个水平条的两端所对应的日期不一致,就表示实际进度与计划进度或基准进度不同。如果上面的水平条比下面的拉平条短,就表明实际完成该任务花的时间比原计划要长;如果上面的水平条比下面的水平条长,就说明实际完成该任务花的时间比原计划要少。图中主任务1和2所对应的条状水平条表示了总结性任务的原计划工期。,黑色的水平条与之相接,表示总结性任务的延续进行。例如,图中清晰地表明主任务2所花的实际工期比原计划长。 -追踪甘特图中的白色钻石符号代表了延误的里程碑( slipped milestone)。延误的里程碑是指里程碑活动的完成比原计划推迟了。例如,图中的最后一项任务所对应的条状水平条代表了延误的里程碑,它表示最终陈述报告任务的完成时间比原计划要晚。 -水平条右边的百分数表示每项任务的完成百分比。例如,100%是指一项任务已经完成。50%是指任务仍在进行中,但已经完成了50%。 追踪甘特图是以项目任务完成的百分比或实际的开始日期和结束日期为基础。项目经理利用追踪甘特图可以监控单个任务或整个项目的进度进展情况。例如,图6-7表示该项目已经完成。该项目按原计划开始,但是完成的时间稍微有点推迟,原计划完成日期是5月8日,而实际完成日期是5月13日。 使用甘特图的主要好处在于,它提供了一套显示计划和实际项目进度信息的标准模式。另外,甘特图也比较容易理解和绘制。甘特图最大的不足在于,它不显示任务之间的关系。如果用项目管理软件绘制甘特图,并且任务间存在联系,那么任务间的关系也能被显示出来,但显示的方式与网络图所显示的方式截然不同。不管你是喜欢用甘特图还是喜欢用网络图来表示任务间的关系,这都只是个人喜好的问题。6.6.2关键路径法 许多项目都没能按原计划的进度进行。关键路径法( critical path method,CPM)也叫关键路径分析(critical path analysis),是一种用于预测整个项目工期的网络图技术。这个重要的工具能帮助你克服项目进度的延误。一个项目的关键路径( critical path)是指决定该项目最早完成时间的一系列活动。它是嗣络图中最长的路径,并具有最小的浮动或时差。浮动或时差( float orslack)是指在不耽误后续活动开展或推迟项目完成日期的前提下,一项活动可以推迟开始的时间。在项目开展的过程中,通常多个任务可以同时进行,因此,大多数项目网络图中都存在多条路径。最长路径或路径t},所含的关键任务决定着项目的完成日期。当然,只有在完成所有任务之后,才能完成整个项口。 1.计算关键路径 为了找出项目的关键路径,首先必须绘制一份好的网络图,而绘制一份好的网络网需要根据工作分解结构制定一份好的活动清单。一旦绘制完网络图,就需要估计每一项活动的工期,以确定关键路径。计算关键路径就是把网络图中每一条路径上所有活动的工期加总求和,最长的路径就是关键路径。 图6-8再次显示了项目X的双代号网络图。注意,既可以使用双代号网络图法,也可以使用前导图法来确定项目的关键路径。图6-8显示了网络图中的所有路径,共4条路径。注意,在双代号网络图中每一路径都是从节点1开始,以节点8结束。图中电显示了网络图中每一条路径的长度或工期总和。把路径上每一个活动的工期加总求和就得到了路径的长度。因为路径B-E-H-J的工期最长,共16天,所以它就是该项目的关键路径。 关键路径的真正意义是什么?关键路径表明了完成项目所需的最短时间。尽管关键路径是最长的路径,但它表示的却是完成项目所需的最短时间。如果关键路径中的一个或多个活动的实际完成工期比原计划的要长,那整个项目进度就会出现延误,除非项目经理采取必要的措施。 项目团队在管理关键路径时可以采取创新的方法。例如,乔思-克纳特森--项目管理领域的著名作家和演说家,常常讲起一个大猩猩玩具是如何帮助苹果电脑公司按时完成项目的故事。在项目团队成员的工作区域有许多小隔间,当前负责执行关键路径上任务的人,无论是谁,会在他的隔间上面放一个大而呆板的大猩猩,这样大家就会知道这个人的时间是最紧张的,其他人就会尽量不打扰他。当一项关键任务完成后,那个大猩猩就会传给负责执行下一个关键任务的人。 2.种草可能是关键路径中的任务 人们常常不明白什么是一个项日的关键路径以及它的真正意义是什么。一些人认为关键路径中包含有最关键的任务。然而,关键路径仅仅与项目的时间维度有关。尽管它的名称中有“关键”一词,但这并不是指它包含所有的关键活动。例如,在2000年5月的项目管理协会(PMI-ISSIG)专业研讨会上,弗兰克-埃德曼,迪士尼“创意工程”的项日执行总裁在其演讲中说道,在建造迪士尼动物王国主题公园这一项目中,种草是该项目关键路径上的任务1500英亩大的公园需要种植许多特殊的草以供动物栖息,并且一些草要数年才能艮成。另一种误解认为关键路径是网络图中最短的路径。在某些领域中,比如研究运输建模问题时,绘制类似网络图的目标就是从中找出最短路径。然而,对一个项目来说,要完成整个项目就必须完成每一项活动或任务。选择最短的路径并不是问题的关键。 关键路径分析的其他方面也可能让人迷惑不解。一个项目可能有多个关键路径吗?关键路径会改变吗?在项目X的例子中,假设估汁活动A的工期是3天而不是1天,这个新估计的工期使路径1的长度变为16天。现在项目中有两条最长的路径,它们的工期相等,因此存在两条关键路径。所以,一个项目中可能存在多条关键路径。项目经理应密切监控关键路径上活动的绩效,以避免延误项日的完成。如果项目巾存在多条关键路径,项目经理必须密切监控所有的关键路径。 项目中的关键路径随着项目的进展可能会发生变化。例如,在这个例子中,假设项目开始时一切都按原计划进行,活动A、B、C、D、E、F和C都按原计划开始并按原计划完成。然后,假设活动I出现了问题,活动I推迟4天才能完成,其他活动仍按原计划进行,结果这使路径C-G-I-J成为最长的路径。这个变化使路径C-G-I-J成为新的关键路径。所以项目中的关键路径是会改变的。 3.使用关键路径分析法保持进度平衡 在项目的整个生命周期中,知道项目的关键路径非常重要。因为只有知道了项目的关键路径,项目经理才能够保持进度平衡。如果项目经理了解到关键路径上的一项任务在执行时没有赶上进度,他就需要对此采取一些措施。是否应该和项目利益相关者一起商讨一下进度?是否应该给关键路径上的其他活动多分配一些资源以加快项目速度,从而弥补延误的时间?项目是否可以迟于进度计划完成?通过追踪关键路径,项目经理及其团队应时时刻刻预先主动地管理项目进度。 有一种技术能够帮助项目经理保持进度平衡,该技术就是确定每一个项目活动的自由时差和总时差。自由时差(free slack or free float)是指在不耽误其任何紧后活动最早开始时间的前提下,一项活动能够推迟进行的时间。一项活动的最早开始日期(early start date)是指根据项目网络中的逻辑关系,一项活动最早可能开始的时间。总时差(total slack or total float)是指在不耽误整个项目的计划完成时间的前提下,一项活动从它的最早开始时间算起可以推迟的时间。 项目经理可以使用正推法和逆推法来计算网络图中的自由时差和总时差。正推法( forward pass)用来确定每项活动的最早开始日期和最早完成日期。一项活动的最早完成日期(early finish date)是指根据项目网络中的逻辑关系,一项活动最早可能完成的时间。项目的开始日期等于该项目网络图中第一个活动的最早开始日期。项目的最早开始日期加上第一个活动的工期就等于第一个活动的最早完成日期。如果一项活动只有一个紧前活动,那么它的最早完成日期也就等于其紧后活动的最早开始日期。当一个活动有多个紧前活动时,该活动的最早开始日期就等于其所有紧前活动中最后完成活动的最早完成日期。例如,图6-8中任务H有两个紧前活动任务D和任务E。任务H的最早开始日期等于任务E的最早完成日期,因为任务E的最早完成日期在任务D的最早完成日期之后。逆推法( backward pass)用类似的方法确定网络图中每项活动的最晚开始日期和最晚完成日期。一项活动的最晚开始日期(late start date)是指在不耽误项目完成日期的前提下,该项活动的最晚可能开始时间。一项活动的最晚完成日期(late finish date)是指在不耽误项目完成日期的前提下,该项活动的最晚可能完成的时间。 项目经理可以手工计算每项活动的最早开始、完成日期和最晚开始、完成日期。例如,图6-9显示的是一个仅有3项任务--A、B和C的简易网络图。任务A和任务B都是任务C的紧前活动。假设所有的工期都以天来计算。估计任务A的工期为5天,估计任务B的工期为10天,估计任务C的工期为7天。在这张网络图中仅有两条路径:路径A-C的工期为12天(5+7),路径B-C的工期为17天(10+7)。因为路径B-C最长,所以它就是关键路径。在这条路径中不存在浮动时差,所以最早和最晚的开始、完成日期相同。然而,任务A有5天的浮动时差。它的最早开始日期是O,最晚开始日期是5,最早完成日期是5,最晚的完成日期是10。任务A的自由时差和总时差都是5天。 在确定活动的最早和最晚开始、完成日期及活动的自由时差和总时差时,有一种更快、更容易的方法--使用项目管理软件。假设任务A、B和C的开始日期是2009年8月1日,并把图6-8中的数据输入到软件中,就会生成表6-1。它显示了项目X的网络图中所有活动的自由时差和总时差(图6-4显示了该项目的网络图)。在MS Project中选择进度表视图就生成了该表格中的数据。知道了活动的自由时差和总时差后,项目经理就知道进度是否可变以及有多大的可变余地。例如,任务F的自由时差和总时差最大,都是7天(7d),其他剩余任务的时差最大的也仅有2天(2d)。如何计算和利用时差是进行项目进度协调的基础。读者可参考MS Project中的帮助信息或者阅读其他的资料,以获取更多的有关计算时差的信息。 4.使用关键路径法缩短项目的工期 一般来说,利益相关者都想缩短项目估计的进度。项目团队可能会通过定义活动、确定活动顺序并估计每项活动所需的资源和工期,竭尽全力编制项目的进度表。编制的进度表可能表明项目团队需要用10个月完成这个项目。这时,项目发起人可能会问,该项目是否能用8个月或9个月完成。几乎没有人会要求项目团队花更艮的时间来完成项目。知道了关键路径后,项目经理及其团队就可以使用几种工期压缩技术来尝试缩短项目进度,其中一种技术就是减少关键路径上活动的工期。项目经理可以把更多的资源分配给关键路径上的活动,或者变更它们的范围,从而缩短这些活动的工期。 回顾本章的“开篇案例”,由于几个用户错过了重要的项目报告会和一名高级程序员辞职,在线注册系统项目出现了进度问题。如果苏和她的团队编制的项目进度表符合实际情况,估计的活动工期准确,并且任务间的关系也已经确定,那她们就会知道自己的处境了--她们能否在5月1日按时交工。如果关键路径上的某些活动已经落后于进度,她们又没有在项目末期留有多余时间,那她们就不得不采取一些纠偏措施,以保证活动能按时完成。苏可以要求她的公司或学院分派更多的人投入到项目中进行赶工。她也吲以要求减少活动的范围,从而按时完成项目。因此,苏可以使用项目时间管理技术,比如赶工或快速追踪来缩短项目的进度。 赶工(crashing)是一种保持成本和进度平衡的技术。该技术强调用最少的追加投入成本,获得最大幅度的项目进度压缩。例如,存在线注册系统项目的关键路径上,其中有一项任务是把新学期课程数据输入到这个新系统中。如果该项任务马上就要执行,原计划由校方负责派出一名兼职数据录入员在两星期内完成该项任务。苏可能建议校方让那位数据录入员改为全职员工,并在一星期内完工。这种变更并没有增加苏所在公司的成本费用,但却可以缩短项目的完成时间,使项目提前一周完工。如果校方不能满足这一要求,苏可以考虑雇用一名临时的数据录人员,雇用期为一个星期,从而使这项任务更快地完成。因此,关键路径上会有一些任务,在不增加成本或增加少量成本的情况下就可以使其更快地完成。集中精力完成这些任务,就能够缩减项目的进度。 赶工的优点是缩短了项目完成所需的时间;赶工的不足之处是往往会增加整个项目的成本。在第7章,读者会更加详细地了解项目成本方面的内容。 另外一个用于缩短项目进度的技术是快速追踪。快速追踪(fast tracking)是指平行地开展几项活动,而这些活动在正常情况下应是依次展开的。例如按原计划,苏领导的项目团队在做完所有分析工作之后,才会开始在线注册系统的编码。但她们可以考虑在分析工作做完之前就开展一些编码活动。快速追踪的优势和赶工一样,那就是能够缩短完成项目所需的时问。快速追踪的主要不足之处在于,它可能反而造成项目进度的延误。因为过早地开始一些任务常常会增加项目的风险,或者导致一些返工情况的发生。 5.更新关键路径数据的重要性 在项目刚刚开始时,除了要找出项目的关键路径,还有一件重要的工作要做,那就是根据实际数据更新项目进度。项目团队完成一些活动后,项目经理应将那些活动的实际工期记录存档,还应该把正在开展或有待开展活动的修改过的工期估计记录存档。这些修改往往会造成关键路径的变化,并估计出一个新的项目完成日期。此外,预先主动的项目经理和其团队往往能最先了解这些变化,所以他们能及时做出决策,并让利益相关者知道和参与到重大项目的决策中来。 6.6.3关键链进度编制技术 另一种保证项目按时完工的技术是关键链进度编制技术。该技术应用了约束理论。约束理论(Theory of Constraints,TOC)是一种管理哲学思想,由艾利亚虎·梅高德法特在其《目标与关键链》一书中提出。约束理论基于这样一个事实:任何复杂的系统在任何时间点通常只有一方面或一种约束条件,限制了它达到更高的目标。就像一条铁链中的最薄弱的一环决定了它的强度。系统如果想取得重大的突破,必须找出这个约束条件,并且管理系统时要始终考虑这个约束条件。关键链进度编制技术(critical chain scheduling)是一种进度编制方法,在编制进度表时该技术考虑了资源的限制性,并设置了时间缓冲以保证项日的按时完丁。 关键链进度编制技术中一个重要的概念是稀缺资源的可得性。有时在执行一项或几项任务时,由于缺少某种特殊的资源,一些任务就无法完成。例如,如果一个电视台想制作一期有关某位名人的电视节目,首先要知道能否邀请到这位名人。再举另外一个例子,有两项任务,按原计划要同时开展,但是要完成这两项任务自始至终都必须使用一套特殊的设备,而此时该设备只有一套。按照关键链进度编制技术,就必须推迟其中一项任务的开展,直到这套设备可用了;或者找到另外一套设备按进度同时开展这两项任务。与关键链进度编制技术相关的其他概念还有多任务化和时间缓冲。 多任务化(multitasking)是指一种资源同时用于多项任务的情况。在项目的开展过程中常常会出现这种情况,像一个人在一个项目中执行多个任务,或者在多个项目中执行多个任务。例如,假设一个人在3个不同的项目中负责执行3项任务:任务1、任务2和任务3,完成每项任务都需要10天时间。如果不存在多任务化的情况,而是依次完成各项任务,就像图6-10a所示,这个人先从任务1开始,然后任务1在10天后完成,任务2在20天后完成,任务3在30天后完成。然而,许多人在这种情况下,为了址这3项任务的委托人满意,就像图6-10b中显示的那样,他们往往先执行任务1一段时间,然后再依次执行任务2和任务3,然后再回过头执行任务l,在这个例子中,在某个时间点3个任务都完成了一部分,然后,在某个时间点完成其中的一项任务,结果任务1在20天后完成而不是10天,任务2在25天后完成而不是20天,任务3仍然在30天后完成。这个例子解释了多任务化是如何耽误任务完成的。多任务化也常常浪费任务间的启动时间,因此,增加了任务的工期。 关键链进度编制技术认为,资源不能同时用于多项任务,即不能存在多任务化或者尽量避免出现多任务化情况。在采用关键链进度编制技术时,一个人不能在同一个项目中同时执行多个任务。同样地,关键链理论认为,项目问应该有主次之分,所以同时在多个项目中工作的人应该知道哪个任务是最重要的。避免出现多任务化情况就会避免出现资源冲突,也会减少转移任务时启动时间的浪费。 运用关键链进度编制技术保证项日按时完工的关键是改变人们估计任务工期的方法。许多人在估计项目工期时增加了一个安全时间或缓冲。缓冲(huffer)是指为保证任务的完成,在考虑了各种因素之后所增加的额外时间。这些因素包括:多任务化的负面影响、外界因素干扰和精力分散、消减预算的顾虑和墨菲定律等。墨菲定律(Murphy8 Law)认为,如果一件东西可能会坏的话,那它就一定会坏。关键链进度编制技术去掉了单个任务的缓冲,而是设置了一个总的项目缓冲。项目缓冲( project buffer)是指添加在项目截止日期前的一段额外时间。关键链进度编制技术也可以使用汇人或输入缓冲来保证关键链上的任务能够按时完成。汇入缓冲(feeding buff-ers)是添加在关键链任务之前和非关键路径任务之后的额外时间。 图6-11显示的是使用关键链进度编制技术绘制的网络图。注意,关键链解释了有限的资源是如何用于任务X的。进度包括了网络图中使用的汇人缓冲和项目缓冲。任务X是关键链的一部分,这就像关键路径法中的关键路径。在使用关键链进度编制技术时,任务的工期估计应该比传统的丁期估计要短,因为它们不包括单个任务本身的缓冲。没有任务缓冲就减少了帕金森法则的发生。帕金森法则( Parkinsons Law)是指工作会自动填满允许的时间。汇人缓冲和项目缓冲要用于保护真正需要保护的日期,即项目完工日期。 关键链进度编制技术已经在若干组织中成功地得到了使用。例如,美国保健护理行业正使用约束理论,学习换个角度来考虑问题。 “考虑一个相对简单的系统--医生的办公室或会诊室。病人看病的过程包括以下步骤:病人挂号,填写表格,得到护士的签字,医生会诊,找护士开药,例如接种疫苗等。这些步骤可以以一种简单的线性顺序开展,按这个流程1小时才诊断8个病人。一条铁链的强度取决于它最薄弱的一环。在这个例子中,最低的资源使用率——l小时会诊8个病人是系统最薄弱的一环。因为它忽视了其他各项资源的使用率、每个过程的工作量大小以及过程或过程衔接的繁杂程度。而且在约束条件之内改善任何过程的缋效,都不会提高整个系统的绩效。” 你可以看到,关键链进度编制技术是一种相当复杂但也非常有用的工具。它涉及关键路径分析、资源限制和任务工期估计方法的变化——设置了缓冲。有些人认为关键链进度编制法是项目管理领域最为重要的新概念之一。6.6.4项目评审技术 另一个项目时间管理技术叫做项目评审技术( pr。gram evaluation and review technique,PERT)一种当个别活动的工期估计具有高度的不确定性时,可用于估计项目工期的网络分析技术。PERT把关键路径法(CPM)应用于工期的加权平均值估计。PERT和CPM同时出现在20世纪50年代后期。PERT中也应用了网络图技术,有时我们称它为PERT图表。 PERT使用概率时间估计(probabilistic time estimates)一种基于使用活动工期的乐观估计、最大可能估计和悲观估计的工期估计方法。它不同于在关键路径分析中只需要一个单个的或特定的工期估计。换句话说,PERT使用了前面讲述的三点估计法。使用PERT,就必须使用下面的公式计算每一个项目活动的工期加权平均值。 由于使用的是每项活动的工期估计加权平均值,估计整个项目的工期时就考虑了单个活动工期估计的风险或不确定性。 在本章“开篇案例”中,假设苏-约翰逊的项目团队使用PERT来制定在线注册系统项目的进度,那他们就必须得到每一个项目活动工期的乐观估计值、最大可能估计值和悲观估计值。假设项目中有一项活动是设计系统的输入界面。有人可能估计完成这项活动需要两周或10天时间。如果不使用PERT,这项活动的工期估计就是lO天。但如果使用PERT的话,项目团队还需要估计完成该活动所需的乐观时间和悲观时间。假定完成系统输入界面的设计工作,乐观的估计需要8个工作日,悲观的估计需要24个工作日。应用PERT公式,我们能得到以下结果: 当项目团队在分析项目的关键路径时,将使用12个工作日,而不是该活动工期的最大可能估计值--10个工作日。额外的两天时间也许真的能够帮助项目团队按时完成工作。 PERT的主要优点在于,该技术试图在降低工期估计的风险。现实中有许多项目没能按进度开展,PERT能帮助人们制定更加符合实际的进度。PERT的不足之处在于,比起CPM它需要更多的工作投入,因为它要求使用多个工期估计值。评估进度风险还有更好的概率统计方法(读者可参考第11章中蒙特卡罗模型的内容)。6.7进度控制 项目时间管理的最后一个过程就是进度控制。像范围控制一样,进度控制也是项目集成管理中集成变更控制过程的一部分。进度控制的目标就是了解进度的状况,干预导致进度变更的因素,确定进度是否已经发生变更,以及当进度发生变更时,管理好这些变更。 进度控制过程的主要输入包括:项目管理计划、项目进度计划、工作绩效信息、组织过程资产。所使用的工具和技术包括: -进展报告: -进度变更控制系统,它是第4章项目集成管理中介绍的集成变更控制系统的一部分; -项目管理软件,比如MS Project 2007或类似的软件; -进度对比条形图,比如追踪甘特图; -偏差分析,比如浮动时间或时差分析; -假设情景分析,需要手动或是在软件的辅助下进行; -调整时间的提前量与滞后量: -进度压缩,比如本章前面介绍的赶工和快速跟踪; -绩效管理,比如第7章中的挣值; -资源级别,比如第9章将介绍的内容。 进度控制的主要输出包括:丁作绩效测量、组织过程资产的更新(比如与进度控制有关的经验教训报告)、变更请求、项目管理计划(更新)、项目文件(更新)。 控制项目进度的变更会涉及许多事情。首先,最重要的是要确保所编制的项目进度符合实际。许多项目,尤其是IT项目,制定的期望进度与实际相差甚远。其次,还有一点非常重要,要使用纪律手段来控制项目的进度,并且要由领导来强调按进度开展项目的重要性。尽管有多种工具和技术能够帮助制定和管理项目的进度,但是项目经理必须掌控几个重要的人事问题,以保证项目按进度开展。“大部分项目的失败不是因为绘制的PERT图不好,而是因为人事管理的失败。8项目经理可以采取许多实际度量核查的方法来管理项目进度的变更。若干软技能能够帮助项目经理控制进度的变化。 进度的现实检验以及对纪律的需要 在开展项目时,有一件重要的事情就是制定一个符合实际的进度目标,同时项目经理要会使用纪律手段去实现那些目标。项目经理初次进行现实核查是在其评估项目章程中的草拟进度计划的时候。尽管在这个草拟进度计划中可能只有项目的开始日期和结束口期,但是项目章程中设定了项目的一些初始进度。接下来,项目经理及其团队应该制定一份更加详细的进度表,以得到利益相关者的批准。制定进度的关键在于全体项目团队成员、高层管理人员、客户以及其他关键利益相关者的共同参与和努力。 有几位专家已经论述了IT项目中进度估计不符合实际的问题。爱德-约登,一位著名的软件开发专家,指出“死亡行军”项目从一开始就注定要失败,因为该项目的进度估计不符合实际,尤其是时问约束条件。9嵌入软件系统的许多进度计划都是“靠祈祷和充满希望的祝福支撑着。”例如,在2008年,在美国俄勒冈州波特兰市要对超过300个关键的IT系统进行检修整合,这个项目计划用20个月完成,但其后不断增加的成本和进度改变了IT顾问的估计。代表阿里斯顿咨询技术公司汇编语言或动态服务器包含文件的波特兰代理商罗伯特-斯托尔在与波特兰市政当局的终止谈判中说道,阿里斯顿已经竭尽所能,处理这个城市提供的各种信息。从阿里斯顿的角度来说,由于准备项目需求书并将其用于投标的城市官员对于整个IT系统和具体需求并不熟悉,他们拟定的T作目标不可能实现,是一个死亡行军计划。斯托尔说:“如果你能理解我的意思,你也会认为这就是一种无用输入( garbage in)和无用输H{(garbage out)。我坚决认为,在这个项目中,阿里斯顿没有出现任何失误。” 混沌理论的专家建议,项目经理不仅必须考虑由于估计误差而产生的项目风险,还必须顾及多个独立的项目经理考虑到项目风险而在组织的做出的复杂行为。在这样一个复杂的系统中,相互依赖性通常会导致无效率,这种无效率广泛存在,并且可预见。专家建议,通过准备额外的资源来支持项目,无效率的问题可以解决。用一个比喻来说明问题--怎样才能避免公路上出现堵车现象?他们建议项目经理在开展项目时要合理配置资源,每一种资源的使用度不能超过75%。每个组织都能够并且应该评估出这种无效率的程度,而事实上只有70%- 80%的组织可以做到这一点。所以制定符合实际的项目进度和预见项目生命周期巾会发生的意外事件非常重要。 另一种现实核查发生在利益相关者参加的项目进展报告会议上。项目经理负责使项目按原进度进行,而利益相关者也想通过总体水平的定期项目进展报告来了解项目的有关信息。经理们大约每个月都会审视一次项目的进展情况。项目经理通常使用追踪甘特网来说明项目的进展情况,其中追踪甘特图显示了项目的可交付输出和活动。项目经理需要深刻理解进度,比如要明白有些活动为什么能或不能按原进度开展,并且要积极主动地采取措施以满足利益相关者的期望。核查进度的进展情况也是非常重要的事情,就像本章“开篇案例”中苏-约翰逊所发现的那样(见“案例结局”)。不能仅仅因为一名项目团队成员说一项任务按时完成了,我们就认为任务真的按时完成了,实际上情况往往相反。项目经理必须评估实际的工作情况,并且与项目团队成员保持良好的关系,确保工作按计划完成或公布所需做出的变更。 高层管理人员对于突然出现状况会感到厌恶,所以项目经理必须清楚、诚实地报告项目的进展状况