大众的车为什么偏贵:软件项目管理Follow Me--软件项目管理基础知识

来源:百度文库 编辑:偶看新闻 时间:2024/05/04 16:59:19

既然是项目管理,那么首先要清楚项目的定义,项目就是为了创建某一独特的产品、服务或成果所进行的一次性的努力,其特点为:

1、  临时性:临时性是相对“运作”的概念而言的,因为项目都是有开始和结束时间的,所以才称其为“临时性”。不管这个项目有多大,就算是中外文明的三峡项目它也是有开始和结束的时间的。虽然项目结束了,但项目的影响力还是会持续下去的,例如修建人民英雄纪念碑本身是个项目,但人民英雄纪念碑所代表的含义会在我们心中代代流传。

2、  独特性:没有完全一样的项目,这里“完全一样”不说针对某工作产品而言的,而是说整个项目过程不可能会完全一样。项目的过程中是伴随各种各样的事件和问题的,这些事件或问题的发生也可能具有一定的先后顺序,而且某些事件或问题也是只有在当时情况下才会出现的,因此某项工作产品有可能会相同,但项目过程本身是不会完全一模一样的。

3、  渐进细化性:对于软件项目来说需求的明确就是一个逐渐细化的过程,项目的工作产品也是可以被细化的,项目的管理过程也可以被细化。(风险是不可以被细化的,风险的管理工作是可以被细化的)

 

由于软件的项目常常是为了某个企业或行业来开发的,因此信息系统项目的特点就具有一定的业务背景,具有跨领域、跨学科的特点。其他的例如:目标不明确、需求变化频繁等特点就不再这里强调了。

 

如图1所示项目的三要素:时间、成本、质量,该三要素都与项目的范围有着密切的关系。

图1 项目三要素

1.2   项目与运作的区别

日常工作可以分为项目或运作两种方式,因为他们都具有共同的特点:

1、  由人完成

2、  受限于各种资源

3、  都会有计划、执行和控制的过程。

 

其主要区别在于项目的特点是临时性、独立性的;运作正好相反,运作方式的特点是连续性、重复性。

大家也可以参考“1.6项目生命周期”来辅助进行理解项目与运作之间的区别。

1.3   标准和规范

我们经常听说的ISO、CMMI就是个标准,标准是公认的、通用的规则、指南、活动或结果等特征,经常是一种最佳实践。

在新闻中经常听到国家制定了某种规范,因此规范是具有强制性的,这是与标准最大的不同。

1.4   项目的分类

项目可以分为大项目和小项目,根据某些实际需要我们也可以把项目继续拆分为子项目。

在项目管理中有一个概念叫做“计划”,计划是多个项目的组合,这些项目之间不一定有什么直接的联系。例如大家常听说的“863计划”,2007年是第十一个五年计划的开始年。

 

项目管理办公室(PMO)是在其管辖范围内集中、协调管理多个项目的一个组织。PMO所做的工作范围有点类似CMMI中CCB和SEPG的一些工作:

1、  在项目间协调和共享资源。

2、  提供、制定企业的最佳实践或标准。

3、  收集、总结和共享项目的财富。

4、  对组织级风险库和度量库进行管理。

5、  参与评审,指导项目的实施。

但PMO主要是组织级的管理行为,项目管理是项目级的管理行为,因此PMO是不能取代项目管理的。

1.5   项目干系人

识别项目干系人,处理好与项目干系人之间的关系是项目经理一个重要的工作。项目干系人不仅仅包括项目团队的成员,还包括了客户、供应商、甚至还包括反对该项目的人。因此项目干系人的定义就是指哪些积极参与项目或是其利益与项目的执行或结果有着各种各样影响的人或组织。

项目团队的组成会经历:形成期、震荡期、正规期、表现期。在不同期间团队的精神、工作的绩效和项目经理对其调控的力度都不同,其表现形式如图2所示。


项目的生命周期是指项目开始和结束的这段时间。有些时候也可以将产品的可行性调研工作作为项目进行管理。项目的生命周期通常有不同的阶段组成,其目的是为了明确:

1、  每个阶段应该完成哪些任务

2、  每个阶段有哪些可交付的工作产品

3、  都有哪些资源参与其中

4、  是否批准进入下个阶段

  产品的生命周期是在项目生命周期后面增加了运作的生命周期,也就是说项目的生命周期可能是产品生命周期的一个部分。例如:某企业研发了一个新的CRM软件,那么这个研发工作可以作为一个单独的项目来管理,此外研发出来的产品会经过市场的运作,将其持续不断的推广下去。假如经过若干年后该产品没有了市场,那么该产品的生命周期就将结束。

 

项目阶段的划分是以一个或多个可交付物的完成和正式批准作为标志的。可交付物必须是可度量的、可验证的,因此可交付物必须是客观存在的。交付物的可验证性往往是通过CMMI的VAL评审或VER验证的方式来确定的。例如对某员工进行培训,我们说他掌握了相应的技能,这是不客观的,必须通过考试来进行验证,另外考试的结果可以作为度量的数据进行收集和分析。评审的另外一个目的是判断项目是否可以进入下个阶段,或者项目应该暂停或终止。

因此项目的评审有时也被称为阶段末评审、阶段出口或终止点。

 

前面已经讲过项目的三要素,那么随着项目的逐渐开展,不同阶段项目的成本、风险和项目干系人对项目的影响力都有所不同,其表现形式如图3所示。

1.2   典型的软件项目生命周期

生命周期的图形可以参考《信息系统项目管理师教程》的2.1.4

  瀑布式模型分为定义阶段、开发阶段、维护阶段。

  螺旋式模型是由原型和迭代演化来的,是由制定计划、风险分析、开发测试、客户评估四个阶段组成。

  迭代式模式由初始化阶段、细化阶段、构造阶段、移交阶段组成。

  原型式模型由快速开发阶段,最终设计阶段、最终开发测试阶段、维护阶段组成。原型式开发又分为原型的抛弃和原型的演化两种方式。

 

对需求十分清晰的项目可以采用瀑布式开发,对风险性比较高的项目;按照风险等价的划分,从高到低按照螺旋式模型逐步开发;对于需求调研非常困难的项目可以采用原型式开发;在实际工作中大多数项目都属于迭代式的增量开发模型。

1.3   项目的组织结构

项目组成员的职责和沟通往往与该项目采用何种组织结构有关,常见的有职能型、弱矩阵、平衡矩阵、强矩阵和项目型。其图形可以参考《信息系统项目管理师教程》的2.3.3。这里我们只谈他们的重点。

1、  在职能型结构中一般是没有项目经理的,项目管理工作是由项目协调员负责的。

2、  在平衡矩阵中才开始出现项目经理。

3、  职能型的好处是上下级关系清楚,按照专业进行划分,易于提高专业技术。缺点是跨部门之间的沟通比较困难,防碍客户对项目的参与,对问题处理速度比较慢。

4、  项目型的好处是项目沟通比较容易,对问题处理速度比较快。由于项目的临时性导致项目成员缺乏稳定性,资源利用率较低。

5、  矩阵型好处是项目资源利用率高,利用沟通。缺点是管理成本增加,多头领导。

6、  PMO可以存在与任何一种组织结构中。


CMMI所从事的工作是对软件过程的改进,那什么是过程呢?以PMBOK的定义:过程就是为了实现某个特定目标而进行的一系列活动。软件项目的过程大体上可以分为以下5类,其表现形式如图4所示。

1、  启动过程

2、  计划过程

3、  执行过程

4、  控制过程

5、  收尾过程

图4 项目管理过程关系图

      

       对质量管理熟悉的朋友看到“图4 项目管理过程关系图”就必然会想到“PDCA戴明环”。项目管理过程之间的关系与戴明环有着极为相像的含义和原理。

W.爱德华.戴明(W.Edwards Deming)博士于1900年10月4日生于美国爱荷华州,1928年取得耶鲁大学的物理博士学位。戴明博士从1950年去日本讲学,并在日本持续了长达40多年的质量管理指导工作,他被日本企业称为“质量之神”。1980年6月24日美国 NBC广播公司播放了举世闻名的“If Japan Can, Why Can’t We?”的纪录片,使得戴明博士一夜成名,并也赢得了“第三次工业革命之父”的美誉。

戴明的重要成就之一就是“PDCA戴明环”理论,如图5所示它将管理过程分为四个阶段,并且形成封闭的环路,以达到持续改进的效果。

1、 Plan(计划):指定提高质量的改进计划。

2、 Do(执行):执行计划。

3、 Check(检验):通过检查来判断是否达到期望的结果。

4、 Action(纠正):实施纠正行动。

 

图5 PDCA戴明环

 

       那么项目管理的这五个过程又与CMMI L3的PA之间有什么对应关系呢?大家可以参考下表进行理解。

项目管理过程

CMMI L3对应的PA

启动过程

DAR

计划过程

PP、MA、CM、RSKM、SAM

执行过程

VER、TS、PI、RD、ReqM

控制过程

PMC、VAL、PPQA

收尾过程

VAL

图2 项目团队形成的阶段