(1)初始阶段:系统地阐述项目的范围、确定项目的边界,选择可行的系统构架, 计划和准备商业文件。商业文件包括验收规范、风险评估、所需资源估计、体现主要里 程碑日期的阶段计划。
(2)细化阶段:分析问题领域,建立健全体系结构并选择构件,编制项目计划,淘 汰项目中最高风险的元素。同时为项目建立支持环境,包括创建开发案例,创建模板、 准则并准备工具。
(3)构建阶段:完成构件的开发并进行测试,把完成的构件集成为产品,测试产品 所有的功能。构建阶段是一个制造过程,其重点放在管理资源及控制运作以优化成本、 进度和质量。
(4)交付阶段:交付阶段的目的是将软件产品交付给用户群俸。当本次开发的产品 成熟得足够发布到最终用户时,就进入了交付阶段。
交付阶段的重点是确保软件对最终用户是可用的。交付阶段可以跨越几次迭代,包 括为发布做准备的产品测试,基于用户反馈的少量的调整。
软件产品交付给用户使用一段时间后,如有新的需求则该开始另一个开发周期,就 开始下一个的“初始、细化、构建和交付”周期。
4.5单个项目的管理过程
项目管理是指在项目活动中综合运用知识、技能、工具和技术以确保达成项目目标。 项目管理、大型项目管理和项目组合管理不仅应用了项目管理的知识和技术,同时也应 用了项目管理过程。项目管理是通过一系列过程柬完成的,每个过程都会使用相应的工
具和技术以接受输入和产生输出。
除此之外,为了对项目的实施进行管理,项目团队还必须: (1)明确客户的需求。
(2)在管理项目时,选用达到项目目标的合适的过程。
(3)平衡范围、时间、成本、质量和风险等方面的不同要求,生产出高质量的产品。 (4)调整产品规格、计划和管理体系,以满足不同项目干系人的需求,并管理他们 的期望。
对于项目活动所对应的项目管理细节是否应该形成文件化的标准,目前在国际上或 行业内还没有达成完全一致的意见。这种标准需要描述一个项目的启动、计划、执行、 监控和控制以及项目的收尾过程。本节主要阐述那些被大多数项目认为是昆好惯例的过 程。良好惯例意味着人们普遍认为,对于多数项目,应用这些项目管理过程有助于提高 项目成功的可能性。这不意味着本书所描述的知识、技能和过程应一批应用到所有项目 中;在项目团队中,项目经理总要负贵确定怎样的过程更适用于给定的项目。实际上, 项目经理及其团队应明确考虑每个过程及其输入和输出要素。本节可以作为项目经理及 其团队在管理项目时的参考。项目管理人员在管理项目时,要结合项目的实际对通用的 管理过程进行“剪裁”,为项目制订出量身定做的系列过程,分阶段进行管理。
一个过程是指为了得到预先指定的结果而要执行的一系列相关的行动和活动。过程 与过程之间相互作用。每个过程在所有项目中至少出现一次,而且如果项目划分了阶段, 同样的过程可能出现在一个或多个项目阶段,只是这个过程会越来越明确和详细。 一般说来,要把一个项目管好,至少需要4种过程。 (1)技术类过程(或称工程类过程)。技术过程要解决“研制特定产品、完成特定
成果或提交特定服务的具体技术过程”,要回答怎么在技术上完成.7怎么把产品制造出 来?要回答“技术上怎么做t”。技术过程跟项目所在的行业有关,例如信息系统项目的 技术过程有“需求分析”、“总体设计”、“编码”、“测试”、“布线”、“纽网”等。
(2)管理类过程。大多数行业的项目都有共同的管理过程。按出现的时间先后划分, 管理过程可以被分为启动、计划、执行、监控和收尾过程组。 (3)支持类过程。例如配置营理过程就属于支持类过程。 (4)改进类过程。例如总结经验教训、部署改进等过程。
本节及后续各节将着重介绍管理类过程,支持类过程和改进类过程也会有所提及。 技术类过程将在本书的“信息系统技术”部分章节介绍。
以上4类过程,依时间的先后,协同开展以完成一个项目,因而项目管理是一项整 体活动。项目管理从整体上要求每个过程都恰当地与其他过程排列和连接起来,以利于 相互协调。这些交互作用经常会导致对项目需求和目标进行权衡。例如,范围变更几乎 总是会影响到项目进度和成本。对于不同的组织和不同的项目,这种权衡会有很大的不 同。成功的项目管理就包括积极地管理这些交互作用以成功地满足项目干系人的要求和 他们的期望。
如不特指,下文中的过程主要指的是管理过程。
本节从过程之间的关联、过程的相互作用以及过程为之服务的目标等多个方面阐述 项目管理过程的本质。这些过程可以归纳为:启动过程组、计划过程组、执行过程组、 监控过程组和收尾过程组。
4.5.1项目过程
在本教程里,项目管理过程是一个接一个地单独介绍的,每个过程都有明确的输入
和输出。但在实践中,过程是相互作用的。管理项目的方法不止一种。实施项目的细节 必须基于项目复杂度、风险、规模、时间框架、项目团队经验、历史信息数量、组织的 项目管理成熟度、行业和应用领域等因素来完成。必需的项目过程组和它们组成的道程, 可以在项目生命周期内引导项目管理知识和技能的恰当应用。项目经理和项目团队有责 任去确定,为了达到期望的项目目标,必须采用哪些过程、涉及哪些人员以及执行的严 密程度。
由舍瓦特( Shewart)提出一种关于项目管理过程交互的根本概念,并由戴明 ( Deming)对其进行了修订,这就是著名的PDCA循环 (Plan-Do-Check-Act cycle,参见《American Society for Quality》,p13-14,ASQ Handbook,1999)。这个循环由 其产生的结果而构成,即其每一部分的结果又是其他部分 的输入,如图4-17所示。
从整体上看,项目管理过程比基本的PDCA循环要 复杂得多。可是,这个循环可以被应用于项目过程组内部 及各过程组之间的相互关联。计划过程组符合PDCA循环 中相应的Plan部分。执行过程组符合PDCA循环中相应 的Do部分,而监控过程组则符合PDCA循环中的
Check/Act部分。另外,因为项目管理是个有始有终的工 作,启动过程组开始循环,而收尾过程组则结束循环。从 整体上看,项目管理的监控过程组与PDCA循环中的各个 部分均进行交互,如图4-18所示。
4.5.2项目管理过程组
本节确定并描述了对于任何项目都必需的5个项目过程组。这5个项目过程组具有 明确的依存关系并在各个项目中按一定的次序执行。它们与应用领域或特定产业无关。 在项目完工前,通常个别项目过程组可能会反复出现。项目过程组内含的过程在其组内
或组间也可能反复出现。这些项目过程组有如下一些。 (I)启动过程组:定义并批准项目或阶段。
(2)计划编制过程组:定义和细化目标,规划最佳的技术方案和管理计划,以实现 项目或阶段所承担的目标和范围。
(3)执行过程组:整合人员和其他资源,在项目的生命期或某个阶段执行项目管理 计划,并得到输出与成果。
(4)监督与控制过程组(监控过程组):要求定期测量和监控进展、识别实际绩效
与项目管理计划的偏差、必要时采取纠正措施,或管理变更以确保项目或阶段目标达成。 (5)收尾过程组:正式接受产品、服务或工作成果,有序地结束项目或阶段。
每个单独的过程都明确了如何使用输入来产生项目过程组的输出。一个项目过程产 生的过程成果又会成为其他过程的输入。图4-19简要说明了项目过程组的这种交互作 用。例如监督和控剞过程组不仅监控当前项目过程组内的工作,也要监控整个项目的工 作。同时监督和控制过程组也要为前面的项目阶段是否需要采取纠正措施和为下阶段采 取预防措施提供反馈,或实施变更修改计划以确保项目的执行。图4-19没有完全展示出 在图4-18中所表现的监督和控制过程组的所有交互关系。
项目过程组根据过程的性质(启动、计划、执行(或称实施)、监控、收尾)合并 同类项,从而组成过程组。过程组不是项目的阶段,虽然过程组与阶段有一定的联系, 例如计划过程组主要出现在项目的计划阶段,但在执行(或者说实施)阶段,变更也会 引起某个计划过程的更新更改。
1.启动过程组
启动过程组是由正式批准开始一个新项目或一个新的项目阶段所必需的一些过程 组成的。很多启动类型的过程经常会超出项目范围,而受组织、大型项目或项目组合管 理过程控制(参见圄4-20)。例如,在开始启动过程组的话动之前,要制定组织的业务 要求文件,确定新项目的可行性并明确描述项目的目标,再加上可交付物在内,被制定 成台同文件或工作说明书(Statement of Work)。这一文件也包括对于项目范围、项目 工期估算、执行组织投资的资源预测的基本描述。通过将项目选择过程形成文件可烈明 确项目的轮廓。项目与组织战略计划之间的关系可以确定项目在执行组织内的管理职责。
在项目启动过程中,会对初始项目范围和执行组织计划投入的资源进一步细化。如 果还未指定项目经理,那么在此时将选定项目经理。初始的假设和限定、项目的正式启 动决定、项目经理的任命这些内容统一包括在项目章程中,当其被批准后,项目就获得 了正式授权。尽管项目章程可能是由项目管理团队编写完成,但是否批准和投资项目, 却是在项目外的更高层次上决定的。
许多大型或复杂的项目被划分出阶段,在每个阶段的开始,要重新评估项目的范围 和耳标,这也是项目启动过程组的一部分。对下一阶段的进入条件、所需资源和要完成 的工作进行检查,然后决定项目是已经准备好可以进入该阶段,还是应该延期或废止。 在每个阶段开始时重复进行这样的检查,有助于将项目的关注焦点集中在项目所要达到 的业务要求上。重复进行这样的检查同样有助于当业务要求己不复存在或项目已无法满