项目管理一般知识

来自泡泡学习笔记
跳到导航 跳到搜索

项目管理的理论基础与体系

项目管理基础

项目与项目管理的概念

项目是为提供一项独特产品、服务或成果所做的临时性努力。


项目的特点

1. 临时性(一次性)

临时性是指每一个项目都有确定的开始和结束日期,当项目的目的已经达到,或者已经清楚地看到该目的不会或不可能达到时,或者该项目的必要性已不复存在并已终止时,该项目即达到了它的终点。

临时性一般不适用于项目所产生的产品、服务或成果。


2. 独特的产品、服务或成果

项目创造独特的可交付成果,如产品、服务或成果。

独特性是项目可交付成果的一种重要特征。


3. 逐步完善

逐步完善意味着分步、连续的积累。


4. 资源约束

每一个项目都需要具备各种资源来作为实施的保证,而资源是有限的。所以,资源成本是项目成功实施的一个约束条件。


5. 目的性

项目工作的目的在于得到特定的结果,即项目是面向目标的。其结果可能是一种产品,也可能是一种服务。


项目管理定义

项目管理就是把各种知识、技能、手段和技术应用于项目活动之中,以达到项目的要求。

(1)项目管理是一种管理方法体系。

(2)项目管理的对象是项目,即一系列的临时任务。

(3)项目管理的职能,即是对组织的资源进行计划、组织、指挥、协调、控制。

(4)项目管理运用系统理论与思想。

(5)项目管理职能主要是由项目经理执行的。


项日管理的特点

(1)项目管理是一项复杂的工作。

(2)项目管理具有创造性。

(3)项目管理需要集权领导和建立专门的项目组织

(4)项目负责人(或称项目经理)在项目管理中起着非常重要的作用。

(5)社会经济、政治、文化、自然环境等对项目的影响。

系统集成项目的特点

项目干系人

项目管理知识体系的构成

有效的管理要求项目管理组至少能理解和使用以下五方面的专门知识领域。

• 项目管理知识体系。

• 应用领域的知识、标准和规定。

• 项目环境知识。

• 通用的管理知识和技能。

• 软技能或人际关系技能。


项目管理知识体系

项目管理知识体系描述了对于项目管理领域来说独特的知识以及与其他管理领域交叉的部分。美国项目管理协会发布的《项目管理知识体系指南》是大的项目管理知识体系的子集。


理解项目环境

项目管理团队应该在项目的社会、政治和自然环境背景下来考虑该项目。


软技能

软技能包括人际关系管理。软技能包含以下内容。

• 有效的沟通:信息交流。

• 影响一个组织:“让事情办成”的能力。

• 领导能力:形成一个前景和战略并组织人员达到它。

• 激励:激励人员达到高水平的生产率并克服变革的阻力。

• 谈判和冲突管理:与其他人谈判或达成协议。

• 问题解决:问题定义和做出决策的结合

项目管理专业领域的关注点

项目的组织

组织的体系、文化与风格

组织体系

以项目为基础的组织是指他们的业务主要由项目组成,这些组织可以分为两大类。

(1)其主要收入是源自依照合同为他人履行项目的组织。

(2)采用项目制进行管理的组织。


组织的文化与风格

大多数组织都已经形成了自己独特的、可描述的文化。这些文化体现在以下 4 个方面

(1)组织的共同价值观、行为准则、信仰和期望

(2)组织的方针、办审程序

(3)组织对于职权关系的观点

(4)众多其他的因素

组织架构

实施项目组织的结构往往对能否获得项目所需资源和以何种条件获取资源起着制约作用。组织结构可以比喻成一条连续的频谱,一端为职能式,另一端为项目式,中间是形形色色的矩阵式。

项目的生命周期

项目生命周期基础

项目生命周期指项目从启动到收尾所经历的一系列阶段。项目阶段通常按顺序排列,阶段的名称和数量取决于参与项目的一个或多个组织的管理与控制需要、项目本身的特征及其所在的应用领域。

从预测型(或计划驱动的)方法到适应型(或变更驱动的)方法,项目生命周期可以处于这个连续区间内的任何位置。在预测型生命周期中,在项目开始时就对产品和可交付成果进行定义,对任何范围变化都要进行仔细管理。而在适应型生命周期中,产品开发需要经过多次迭代,在每次迭代开始时才能定义该次迭代的详细范围。


项目生命周期的特性

项目的规模和复杂性各不相同,但不论其大小繁简,所有项目都呈现下列通用的生命周期结构:启动项目。组织与准备。执行项目工作。结束项目。

项目阶段的特征

一个项目可以划分为任意数量的阶段。项目阶段是一组具有逻辑关系的项目活动的集合,通常以一个或多个可交付成果的完成为结束。


阶段与阶段的关系有两种基本类型:

(1)顺序关系;

(2)交叠关系。


项目生命周期与产品生命周期的关系

典型的信息系统项目的生命周期模型

瀑布模型

瀑布模型是一个经典的软件生命周期模型,一般将软件开发分为:可行性分析(计划)、需求分析、软件设计(概要设计、详细设计)、编码(含单元测试)、测试、运行维护等几个阶段,瀑布模型中每项开发活动具有以下特点。

(1)从上一项开发活动接受该项活动的工作对象作为输入。

(2)利用这一输入,实施该项活动应完成的工作内容。

(3)给出该项活动的工作成果,作为输出传给下一项开发活动。

(4)对该项活动的实施工作成果进行评审。


V 模型

V 模型从整体上看起来,就是一个 V 字型的结构,由左右两边组成。左边的下画线分别代表了需求分析、概要设计、详细设计、编码。右边的上画线代表了单元测试、集成测试、系统测试与验收测试。


V 模型的特点:

• V 模型体现的主要思想是开发和测试同等重要,左侧代表的是开发活动,而右侧代表的是测试活动。

• V 模型针对每个开发阶段,都有一个测试级别与之相对应。

• 测试依旧是开发生命周期中的阶段,与瀑布模型不同的是,有多个测试级别与开发阶段对应。

• V 模型适用于需求明确和需求变更不频繁的情形


原型化模型

原型法认为在很难—下子全面准确地提出用户需求的情况下,首先不要求一定要对系统做全面、详细的调查、分析,而是本着开发人员对用户需求的初步理解,先快速开发一个原型系统,然后通过反复修改来实现用户的最终系统需求。


原型应当具备的特点如下

(1)实际可行。

(2)具有最终系统的基本特征。

(3)构造方便、快速,造价低。


螺旋模型

螺旋模型是一个演化软件过程模型,将原型实现的迭代特征与线性顺序(瀑布)模型中控制的和系统化的方面结合起来。使得软件的增量版本的快速开发成为可能。 在螺 旋模型中,软件开发是一系列的增量发布。在早期的迭代中,发布的增量可能是一个纸 上的模型或原型;在以后的迭代中,被开发系统的更加完善的版本逐步产生。

螺旋模型强调了风险分析,特别适用于庞大而复杂的、高风险的系统。


迭代模型

在大多数传统的生命周期中,阶段是以其中的主要活动命名的:需求分析、设计、编码、测试。传统的软件开发工作大部分强调一个序列化过程,其中一个活动需要在另一个开始之前完成。在迭代式的过程中,每个阶段都包括不同比例的所有活动。


敏捷开发模型

敏捷软件开发又称敏捷开发,是一种从 20 世纪 90 年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。

敏捷开发是一种以人为核心、迭代、循序渐进的开发方法,相对于传统软件开发方法的“非敏捷”,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。

Scrum 是一种迭代式增量软件开发过程,通常用于敏捷软件开发。包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管,负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。

单个项目的管理过程

项目过程

项目管理过程组

过程的交互