一、项目管理的理论基础与体系
l 项目与项目管理的概念
项目:是为达到特定的目的、使用一定资源、在确定的时间内、为特定发起人而提供独特的产品、服务或成果而进行的一次性努力。
项目管理:是在项目活动中综合运用知识、技能、工具和技术、在一定的时间、成本、质量等要求下来实现项目的成果性目标。
l 系统集成项目的特点
(1) 以满足客户和用户的需求为根本出发点;
(2) 客户的需求常常不够明确、复杂多变,应加强需求变更管理以控制风险;
(3) 系统集成不是选择最好产品的简单行为,而是选择最适合用户的需求和投资规模的产品和技术;
(4) 高技术与高技术的集成;
(5) 是一项综合性的系统工程;
(6) 项目团队年轻、流动率高;
(7) 强调沟通的重要性。
l 项目干系人
项目干系人指那些积极参与项目,或是其利益会受到项目执行的影响或项目结果影响的个人和组织,他们也可能对项目及结果施加影响。
项目干系人包括:客户和用户;项目经理;执行组织;项目团队成员;项目发起人;职能经理;影响者;项目管理办公室(project management office,PMO)。
项目经理必须管理项目干系人的期望,因为项目干系人经常会有相互不同甚至是冲突的目标。通常,解决项目干系人之间不同意见应该以使客户满意为主,但不要忽略其他项目干系人的要求和期望,应找到对分歧的恰当解决方案,是项目经理的主要挑战。
l 项目管理知识体系的构成
美国项目管理学会提出的项目管理的知识体系(PMBOK,project management body of knowledge),包括5个过程组,9大知识域。
过程组:启动过程组、计划过程组、执行过程组、监控过程组、收尾过程组。
知识域:整体管理、范围管理、时间管理、成本管理、质量管理、人力资源管理、沟通管理、采购管理、风险管理。
l 项目管理专业领域关注点
项目管理知识体系;
项目应用领域的知识、标准和规定;
项目环境知识;
通用的管理知识和技能;
软技能或人际关系技能;
经验、知识、工具和技术。
二、项目的组织
l 组织的体系、文化与风格
组织体系分类:以项目为基础的组织、不以项目为手段进行管理的组织。
组织文化:
(1) 组织的共同价值观、行为准则、信仰和期望;
(2) 组织的方针、办事程序;
(3) 组织对于职权关系的观点;
(4) 职业道德;
(5) 众多其他因素
组织文化对项目的影响:
(1) 在一个进取心较强或具有开拓精神的组织中,团队提出的非常规、高风险的建议更容易获得批准;
(2) 在一个等级制度森严的组织中,一个喜欢高度参与的项目经理可能会经常遇到麻烦;而在一个民主的、鼓励参与的组织中,一个喜欢独裁的项目经理也会吃不开。
l 组织结构
组织结构对项目的影响:
(1)项目往往隶属于组织,所以不可避免地受到组织结构的影响;
(2)组织结构影响着项目如何获取所需资源和对资源获取的条件;
项目组织结构分类:职能型组织、项目型组织、矩阵型组织、复合型组织。
组织结构的应用:
(1) 职能型结构:主要由一个部门完成的项目;技术上比较成熟。
(2) 项目型结构:开拓风险比较大的项目;进度、成本、质量等指标有严格要求的项目。
(3) 矩阵型结构:运用在管理规范、分工明确的公司;一般用作跨职能部门的项目。
三、项目的生命周期
l 项目生命周期
项目生命周期定义了从项目开始直至结束的项目阶段。
项目生命周期从技术上划分的阶段:需求分析、系统设计、系统构建、系统运行。
项目生命周期从管理上划分的阶段:启动、计划、执行、收尾。
l 项目生命周期的特征
(1)在初始阶段,费用和人员水平较低,在中间达到最高,当项目接近结束时则快速下降;
(2)在项目初始阶段不确定性最高,因此不能达成项目目标的风险是最高的。随着项目的继续,完成项目的确定性通常会逐渐上升;
(3)在项目初始阶段,项目干系人影响项目的最终产品特征和项目最终费用的能力最高,随着项目的继续开展则逐渐降低。造成这种现象的主要原因是随着项目的开展,变更和缺陷修改的费用会增加。
(项目干系人和成本的变化曲线)
l 项目阶段的特征
(1) 项目阶段以一个或多个可交付物的完成和正式批准为标志;可交付物是一种可度量、可验证的工作产物。
(2) 项目阶段由连续过程组成,这些过程按一定的顺序前后相连。阶段之间的关系是时间先后关系。
(3) 阶段可进一步划分为子阶段。
(4) 项目阶段的结束以对完成的工作和可交付物的技术和设计评审为标志。
(5) 项目本阶段的完成并不意味着对后续阶段的批准。
上图:依据改为输入;思想和项目管理团队改为概念和资源。
l 项目生命周期与产品生命周期的关系
在某些应用领域中(例如新产品开发和软件开发),组织将项目生命周期作为产品生命周期的一部分来考虑。
四、典型的信息系统项目的生命周期模型
l 瀑布模型
特点:
(1) 从上一项开发活动接受其成果作为本次活动的输入;
(2) 利用这一输入,实施本次活动应完成的工作内容;
(3) 给出本次活动的工作成果,作为输出传给下一项开发活动;
(4) 对本次活动的实施工作成果进行评审。若其工作成果得到确认,则继续进行下一项开发活动;否则返回前一项,甚至更前项的活动。
l V模型
V模型的左边下降部分是开发过程各阶段,相对应的是右边上升部分的各个测试过程。V模型的价值在于它非常明确的标明了测试过程中存在不同的级别。在不同的开发阶段,会出现不同类型的缺陷和错误,所以需要不同的测试技术和方法来发现这些缺陷。
l 原型化模型
原型化模型是为了弥补瀑布模型的不足而产生的。
原型化模型的第一步是建造一个快速原型,实现客户和系统的交互,经过和用户对原型的讨论,弄清需求,再在原型基础上开发产品。
瀑布和V模型将原型化模型的思想用于需求分析环节,来解决因为需求不明确而导致产品出现严重后果的缺陷。
对于复杂的大型软件,开发一个原型往往达不到要求,为了减少开发风险,出现了螺旋模型和迭代模型(RUP)。
l 螺旋模型
在螺旋模型中,软件开发是一系列的增量发布,下图中的螺旋线代表随时间推进的工作进展,开发过程具有周期性重复的螺旋形状。
l 送代模型(RUP)
RUP用二维坐标来描述:
横轴是项目的生命周期,分为初始、细化、构件、交付4个阶段。
纵轴是活动,分为核心过程工作流、核心支持工作流。
每个阶段,从上到下迭代,即次序完成核心过程工作流和核心支持工作流。根据需要,在一个阶段内部可以多次迭代。
五、单个项目的管理过程
l 项目过程
一个过程指为了得到预先指定的结果而要执行的一系列相关的行动和活动。
一个项目至少需要4个过程:
(1)技术类过程;(指单纯的技术实施活动)
(2)管理类过程;按时间先后划分,分为:启动、计划、执行、监控、收尾
(3)支持类过程;如配置管理过程等
(4)改进类过程;如总结经验教训,部署改进等过程
l 项目管理过程组
5个项目管理过程组:启动;计划;执行;监督与控制;收尾。这5个项目过程组具有明确的依存关系,并在各个项目中按一定的次序执行,它们与应用领域或特定产业无关。
从整体上看,项目管理过程比基本的PDCA循环要复杂的多,但是这个循环可以被应用于项目过程内部及各过程组之间的相互关联。
其中计划对应P,执行对应D,监督与控制对应C/A,将项目管理过程组映射成PDCA循环。
项目过程组之间的执行流向:
启动过程组:
(1) 制定项目章程
(2) 制定初步的项目范围说明书;
计划过程组:
(1) 制定项目管理计划:这一过程用于定义、准备、集成和协调所有分计划,并将它们合并成整体的项目管理计划。
(2) 分计划:范围管理计划、进度管理计划、成本管理计划、质量管理计划、人力资源管理计划、沟通管理计划、合同管理计划、采购管理计划、风险管理计划
执行过程组:
(1) 指导和管理项目执行(完成计划过程组中确定的工作)
(2) 团队组建、团队建设
(3) 信息发布
(4) 询价、供方选择、合同管理(卖方管理)
监督和控制过程组:
(1) 监督和控制项目工作(对照项目管理计划来监督正在进行的项目活动)
(2) 整体变更控制,使得只有经批准的变更才被实施,包含内容:范围确认(验证)、范围变更控制、进度控制、成本控制、质量控制、项目团队管理、项目干系人管理、风险监督和控制、合同管理、绩效报告。
收尾过程组:
(1) 项目收尾
(2) 合同收尾
项目的5个管理过程组和项目管理知识领域映射关系
知识领域 | 项目管理过程组 | ||||
启动过程组 | 计划过程组 | 执行过程组 | 监督和控制过程组 | 收尾过程组 | |
项目整体管理 | 1、 制定项目章程 2、 制定项目范围说明书(初步) | 编制项目管理计划 | 指导和管理项目执行 | 1、 监督和控制项目工作 2、 整体变更控制 | 项目收尾 |
项目范围管理 | 1、 编制范围管理计划 2、 范围定义 3、 建立WBS | 1、 范围核实 2、 范围控制 | |||
项目时间管理 | 1、 活动定义 2、 活动排序 3、 活动资源估算 4、 活动历时估算 5、 制定进度计划 | 进度控制 | |||
项目成本管理 | 1、 成本估算 2、 成本预算 | 成本控制 | |||
项目质量管理 | 制定质量管理计划 | 质量保证 | 质量控制 | ||
项目人力资源管理 | 制定人力资源计划 | 1、 团队组建 2、 团队建设 | 管理项目团队 | ||
项目沟通管理 | 沟通计划 | 信息发布 | 1、 绩效报告 2、 管理项目干系人 | ||
项目风险管理 | 1、 制定风险管理计划 2、 风险识别 3、 风险定性分析 4、 风险定量分析 5、 风险对应计划 | 风险监督预控 | |||
项目采购管理 | 1、 编制采购管理计划 2、 合同计划编制 | 1、 询价 2、 供方选择 | 合同管理 | 合同收尾 |
l 过程的交互
项目过程组很少会是离散的或只出现一次,它们是相互交迭的活动,在整个项目中以不同的强度出现。