分布式多项目调度管理与优化
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 多项目管理的全生命周期

1.2.1 项目管理生命周期阶段的划分

无论是单一的项目,还是项目集(群)与项目组合的多个项目,从项目启动至项目结束都会经历不同的管理时期,因此需要对多项目管理全生命周期的各个阶段进行区分。对于建筑项目而言,其生命周期一般可以划分为4个阶段:一是项目初步设计,即可行性分析阶段,主要涉及项目描述、项目可行性研究、策略设计等,该阶段标志着项目立项决策的制定;二是计划编制与设计阶段,主要包括施工方案图纸的设计、费用预算与进度计划、合同条款和相关条件的编制等,该阶段结束将完成主要合同发包;三是建造阶段,涉及具体建造施工、土建工程、确定可交付成果等;四是移交和测试维护阶段,该阶段主要完成竣工验收和运行监督等工作,这意味着建筑项目生命周期的结束。

对于典型的软件研发项目而言,其生命周期一般划分为6个阶段:一是计划阶段,主要进行相关系统的定义,明确用户需求,确定总体研究目标,分别从资源、成本、效益、研发进度等方面开展可行性分析,并提出粗略的计划实施方案;二是需求分析阶段,需要对软件功能、可靠性、相关的性能、接口标准等要求有明晰的认识,并在此基础上分析数据流程,构建初始系统逻辑模型,同时对第1阶段的计划实施方案进行修改和完善;三是设计阶段,首先是系统概要设计,包括建立系统结构、划分具体的模块、按照对应要求确定接口等,其次是系统详细设计,包括开发算法、构建数据结构和流程图等;四是编码阶段,即根据第3阶段构建的流程图,将其编码为计算机程序,并完成程序的调试工作;五是测试阶段,按照单元测试、模块集成测试、确认测试、系统测试的流程,软件开发人员逐一完成模块内部结构与功能的检验、系统接口问题的检测,并与用户共同完成需求内容的逐项核验以及实际操作环境的测试检验,当测试出现问题时及时返回修改;六是运行维护阶段,软件研发过程中难免出现各种问题,需要进行有针对性的维护,有时是为了实际运行时出现的错误进行问题改正维护,有时是由于环境发生变化需要进行环境适应维护,有时需要进行系统完善维护以满足用户的新需求。如果软件运行维护时改动幅度过大,则很有可能成为一个新的开发项目,相应地也就进入新生命周期的计划阶段。

通过了解上述两个典型项目的全生命周期可以发现,虽然任何一个项目都有其从开始到结束的生命周期过程,但是项目的复杂性和多样性导致不同项目的生命周期各阶段的划分可能不一致,并且至今也没有形成统一的生命周期划分标准(Kerzner,2003)。按照Demeulemeester、Herroelen(2006)和寿涌毅(2010)对单项目生命周期阶段的划分,本书分别从概念、定义、计划、调度和控制5个阶段归纳多项目管理的全生命周期。

1.2.2 全生命周期各阶段的主要内容

作为企业高层管理者,对多项目进行管理要从全局的视角,不仅要横向地统筹多个并行项目,也要纵向地指导每个项目实施。相比单项目管理,多项目管理更加复杂,其全生命周期涉及的内容更多。

(1)概念阶段,也称为需求分析阶段,主要是为了明确多项目需求。一般在项目集或者项目组合形成之前,组织通过开展调研活动,搜集并整理各组成项目以及多项目整体的详细需求,由相关项目经理汇总形成各自负责的项目需求分析提案,同时对提案开展论证分析,并总结出具体的项目需求分析报告。企业中负责多项目的高层管理者通知各项目经理提交项目需求分析报告,随后从企业全局战略视角出发,结合各个项目的实际情况,从项目需求设计是否合理、需求分析是否全面具体、需求实施的可行性与风险性等方面开展详细研讨,从而基于研讨结果决策每个项目是否可以立项或启动。需求分析既是多项目管理的第1步,也是各项目后续顺利进行的基础。当项目需求在多项目全过程管理过程中发生变化时,需要企业高层管理者与项目经理及时对新需求进行具体分析,并协商制定切实可行的需求变更方案。

(2)定义阶段。项目需求确定后,即进入项目具体描述的定义阶段。一是多项目高层管理者定义各项目范围,明确所涉及的关键业务问题,当多项目问题非常复杂时,有必要对项目范围进行缩小。二是定义多项目的目标,高层管理者根据企业发展定位制定多项目战略目标,这是多项目管理的重要前提。定性的目标包括开拓新的市场、研发新的技术、开发新的产品、发展更多的客户、超越同行业竞争者等;定量的目标则更加具体且广泛,如多项目尽早完工、总成本最低、平均拖期最小、按时完工的概率最大等。有的定性目标可以由相关的定量目标进行衡量。企业管理多项目往往会同时考虑多个目标,如果多个目标不能同时满足,则管理者需要在不同目标之间进行权衡。比如,项目工期越短意味着投入的项目成本越高,多项目管理者可以根据需求分析报告明确项目优先级和目标优先级,然后按照优先级设置项目或目标权重。传统的多项目管理更加侧重于企业的经济利益目标,如今的多项目制企业受环境和政策等影响,需要考虑更多的影响企业长远发展的其他目标,如环境效益目标、社会效益目标等。

(3)计划阶段。完成需求分析和相关定义之后,企业开始进行多项目计划。计划是项目执行的依据,一个好的项目计划具有应对实际环境中不确定性干扰的能力,如果实际执行偏离计划太多,则项目将面临失败的风险。该阶段需要明确多项目的主要任务,清楚地描述为了完成多项目目标需要完成哪些具体工作,各项目以及任务之间具有怎样的联系,哪些任务是关键任务或工作重点,各项目执行需要企业哪些部门的配合或所涉及的工序由什么部门负责,多项目执行所需的资源有哪些,企业能够提供哪些资源以及可以实现的资源供应量有多少,等等。项目工作分解结构(Work Breakdown Structure,WBS)是按照一定的原则和规定对项目进行任务层层分解的常用方法,能够全面地列出完成整个项目所需的全部工作要素,并通过上下层逐层分解的方式明确各工作要素的关联性与协调性。

多项目的工作分解结构以实现战略目标的可交付成果为“根节点”,不断扩展延伸为树状结构。具体而言,从“根”出发分支多个项目,再从每个项目出发逐层分解各项任务,使整棵“树”结构层次清晰,涵盖多项目范围。在编制好WBS后,由企业负责多项目的高层管理者确定相应的职责分配矩阵(Resposibility Allocation Matrix,RAM)。也就是说,企业高层管理者需要为WBS中列出的每一项具体任务落实相应责任,并细化到责任部门、工作岗位或相关人员(Kerzner,2003)。责任落实完成后,管理者需要结合WBS编制资源需求计划(Resource Requirement Plan,RRP)。区别于传统的单项目,多项目同时执行所需的资源既包括每个项目独享的资源,也包括多项目之间共享的资源。上述资源既包括资金、材料等不可更新资源,也包括人力、机器、设备等可更新资源。资源需求计划中明确了WBS各层次任务所需的资源情况,包括资源的特点、种类和数量信息。计划阶段是项目全生命周期过程的中间阶段,在WBS、RAM、RRP确定形成文件并由企业高层管理者审核通过之后,其将作为多项目实际执行的参考依据和基础指南。

多项目计划是为了实现多项目目标而做的前期规划,因此需要在目标框架下制订。由于多项目管理涉及不止一个项目,因此制订的总计划会包含一系列的子计划,计划之间存在相关性、层次性和协调性。考虑到实际多项目环境的复杂性与可能面临的各种不确定性因素,多项目全生命周期过程中可能发生实际执行偏离原有计划的情况,即使只有其中的一个子计划发生偏离,也可能会导致其他各个项目不能按原计划顺利进行。因为各项目和各子计划之间存在一定的关联性,任何子计划的变动都会通过“耦合效应”影响到其他子计划的执行,所以多项目计划涉及的所有责任部门应联合协商,根据实际环境的变化及时做出调整或修复反应,从而保障多项目顺利且高效地实施。从另一个角度来看,多项目计划是有效解决多项目管理冲突的重要途径。WBS很好地实现了多项目分层级管理,在企业内部通过任务分解可合理安排下属公司或子部门工作,高层管理者基于企业总体目标协调各层级任务的有序实施,有效避免烦琐流程与重复工作;RAM为每个项目和每项工作明确了责任部门或责任人,相关人员可以根据计划执行和监控各自的任务,这就使职责关系一一对应,能够有效避免相互推诿责任的问题;RRP明确了具体的资源需求信息,使得多项目在执行时不会面临没有相应资源的情况,也为合理分配资源、解决共享资源冲突问题提供了信息支撑。

(4)调度阶段,也称为进度计划阶段,是对上一阶段工作的进一步细化,旨在得出多项目基线进度计划(Multi-Project Baseline Plan),指导多项目的实际执行工作,并为多项目控制提供监控依据。在计划阶段,WBS主要明确了多项目管理需要完成哪些任务、涉及哪些责任部门、资源的需求情况,在该阶段需要明确WBS各层级的任务具体在什么时间开始或什么时间结束,并在任务执行的时段为其分配所需的资源。相比单一项目管理,在资源有限的情况下,多项目管理面临更加复杂的资源分配问题。

在早期的项目管理研究中,进度计划的编制方法包括:①关键日期法(Critical Date Method,CDM),即仅列出项目中的关键任务,同时标出关键任务所对应的执行日期;②甘特图(Gantt Chart),也称横道图,其以日期或时间为横坐标,以项目中的各项任务为纵坐标绘制条形图,直观清晰地展示任务执行情况;③关键路线法(Critical Path Method,CPM),基于项目任务之间的关系和任务工期等信息绘制项目网络图,通过计算项目网络时间参数,确定影响项目工期的关键路线,并进行资源的优化分配;④计划评审技术(Project/Program Evaluation and Review Technique,PERT),与CPM基本原理一致,均以网络图的形式表示项目任务信息,计算网络时间参数,利用任务时差优化项目网络,缩短项目完工日期(蔡晨、万伟,2003)。除了CPM和PERT网络计划技术外,后期也出现了图解评审技术(Graphical Evaluation and Review Technique,GERT)、风险评审技术(Venture Evaluation and Review Technique,VERT)等新的网络计划方法。

以上方法在单项目进度计划中已有较为广泛的应用,虽然方法简单易理解,但是项目进度计划的主要编制过程并没有考虑资源的有限性,只是在生成进度计划后加入资源信息,对进度计划进行一定的调整,使之满足资源约束,结果导致最终得到的基线进度计划并不是最优的项目执行方案。最重要的是,对于大规模复杂的多项目调度问题而言,根据资源供应量约束调整初始进度计划将面临更多的困难,甚至无法在可行的时间范围内找到多项目进度计划调整方案。因此,在传统的项目进度计划编制方法的基础上,研究更高效的多项目调度方法是近些年来广受关注的话题,也不断涌现出精确算法、启发式算法、元启发式算法或智能优化算法等用于解决企业实际的多项目管理问题。可以看出,调度是多项目管理全生命周期的关键阶段,为实现多项目目标制订满足各类资源约束且符合各层次任务优先顺序的多项目基线进度计划,是多项目管理最具挑战性的工作,也是下一阶段,即多项目控制的前提和依据。本书在后续章节将围绕多项目调度管理展开具体问题研究。

(5)控制阶段。多项目控制主要是对计划和调度阶段的工作开展多项目实际执行情况的信息反馈。具体而言,多项目在实际执行调度阶段制订的基线进度计划时,受到内外部环境、资金、工作人员、物资材料、工艺流程、机器设备资源等不确定性因素的影响,往往会与原计划发生偏离,进而影响多项目目标的实现。为阻止这一现象的出现,项目管理者应实时对比基线进度计划,第一时间找出发生偏离预期的项目及其对应的任务,分析具体的原因,与相关负责人商议探究纠偏对策,并施以有效措施使之及时回到计划轨道,或者通过论证计划存在的问题及时对原计划进行适当的调整,最大限度地降低某个或某些任务的变动对整个多项目产生的影响。

按照内容划分,多项目控制主要包括范围控制、质量控制、工期控制和成本控制(Stephen,2015)。其中,多项目范围控制主要是对比计划阶段的WBS各层次任务范围,当项目中增加任务甚至加入一个新的项目时,原有WBS结构发生变更,通过范围控制尽量减少因临时任务介入而产生的多项目延期和超支风险;质量控制旨在保证多项目最终交付物符合最初要求,为实现这一目的需要设计有效的检测方法,通过检查和测试及早发现影响交付物质量的问题所在,避免造成更多的损失;工期控制一方面是为了纠正相关人员对任务执行时间的错误估算,另一方面是受实际执行环境中不确定因素的影响,导致任务工期变动,对其进行有效控制可以尽量降低多项目延期完工风险;成本控制主要是为了将多项目实施成本控制在合理的预算范围内,避免多项目超预算执行,实时监督每个项目或每项任务的成本情况,当实际与计划发生偏离时分析其合理性,若合理则变更需求计划,若不合理则采取纠偏措施。

此外,按照发生的时间划分,多项目控制主要分为预先控制、同步控制和反馈控制(傅晨曦,2019)。预先控制也称为前馈控制,主要是在多项目开始执行之前预设可能出现的偏差情况及相应的应对方案;同步控制也称过程控制,即在多项目实施过程中一旦出现偏离计划情况就立即进行调整或修改;反馈控制也称为事后控制,是在某项任务执行一段时间后,或者完工后再与计划进行对比,从而发现问题,减少对后续任务的影响。作为多项目全生命周期的最后一个阶段,实施控制能够很好地监控其实际执行情况,同时可以验证计划制订的合理性;通过及时发现和解决问题,预防并降低不确定性干扰因素带来的风险,从而保证多项目的各项任务按照合理的计划平稳进行,以顺利实现多项目目标。

一般情况下,每个项目在经历全生命周期的不同阶段时会表现出一些共同的特点,如在项目的生命周期初始阶段,相关资源包括人员和资金的投入相对较低,随着项目的进行而逐渐增多,在项目生命周期的收尾阶段资源投入会迅速下降;项目完工的成功率随着项目的推进逐渐升高;项目风险和面临的不确定性在生命周期的各阶段逐渐降低。