首页 > 代码库 > 项目管理开发概述

项目管理开发概述

1     背景

1.1      目的与作用

项目管理开发规范用于规范管理开发活动,提升工作效率,减少项目质量问题的出现,并能够对项目基准、成本绩效进行有效的控制,当然,也包括了对实施人员的绩效考核工作。

 

2     概述

一个项目,可以分为项目管理部分和项目开发两部分。其两者的关系可以说是相互依存,缺一不可。

开发过程是项目目标的具体生产过程,而项目管理过程则对此生产过程进行控制,使其约束在一定的范围、进的、成本之内,并需要达到规定的质量目标。

归纳起来说,项目管理是按照预先规定好的步骤,在满足一些约束的条件下,一步步进行项目目标生产的过程。

要进行规范化的建设,首要做的,就是建立起相应的管理开发流程,流程是秩序的一种具体的体现。

流程应以管理为主要流程过程,将开发过程变成管理过程控制的一部分,管理过程对开发过程进行控制。同时,本流程还结合了研发部现在执行的模块化开发模式和基于原型的开发流程,使得本流程更加适合现有的工作模式,并弥补现在存在的管理上的缺陷。

现先将项目管理过程和项目开发过程进行简单的概述,然后对再说明如何对其进行融合,形成一个统一的管理流程。

2.1.1   项目管理流程概述

项目管理的生命周期分为四个阶段,分别是概念阶段、计划阶段、实施阶段、收尾阶段。

?  概念阶段

主要是进行可行性分析及论证工作,确定项目是否可行。

一般还会对招投标进行管理。

可以将制定项目章程过程放到了概念阶段。

?  计划阶段

对项目对的实施过程进行计划,包括制定各种管理计划:进度、成本、质量、范围、变更控制、沟通等等。

根据项目实际情况,制定项目的各种基准,如范围基准、进度基准、成本基准。

 

?  实施阶段

主要包括按照进计划进行实施,对实施进行控制,对偏离进度的情况进行纠正;在实施的过程中,根据实际情况,也可能对进度计划进行变更,从而改变项目基准;

?  收尾阶段

针对整个项目进行收尾,也可以针对某个阶段进行收尾。

项目的收尾工作主要包括行政收尾和合同收尾两部分工作。在各个阶段和整个项目结束时,需要进行行政收尾工作。收尾应包括相应的检查工作。确保阶段中的各个活动均已完成,并进行测试或检查。保证能够进行下一阶段。

2.1.2   项目开发流程概述

2.1.2.1     软件开发模型

选择V模型+原型法作为开发模型,并采用模块化的方式将项目系统分割成一系列独立的、可部署、测试的模块,进行设计开发工作。

       此软件开发模型,具有如下的特点:

?  基于模块化。

将要做的项目产品,按照功能模块进行拆分。具体的模块化实现思路及执行方法,参见相关模块化文档。

?  采用V模型

基于V模型在瀑布开发模型的基础上,在功能融合了测试,以确保错误能尽早的暴露出来并被改正。

结合V模型和模块化,将V模型的最小实施单位定义为进度计划网络图中的活动单元

?  原型法

在需求分析结束后,需进行原型设计工作。以最小的代价,展现出项目的整体轮廓。使模糊的文字表达,转换成清晰直观的图形展示。

2.1.2.2     软件开发流程阶段概述

2.1.2.2.1       软件开发流程图

2.1.2.2.2       开发流程整体流程概述

开发流程活动将融合到管理流程中,具体如下:

2.1.2.2.2.1   整体需求分析和原型设计

在项目计划阶段,会对软件开发进行整体需求和整体原型功能设计工作。这两部分工作的细分程度,视项目具体情况而定。如果项目的需求明确,项目目标清晰,则可以目标的所有功能进行详细的需求分析和原型设计工作。若项目需求不明确,项目目标模糊。则可以对上述工作进行概述型的描述即可。

2.1.2.2.2.2   整体设计工作

整体需求和原型工作完成后,会对项目进行设计工作。同样,设计工作也会分为多个层次。在整体设计过程中,可以根据项目的情况,选择合适的设计方式:

?  项目简单/具有可比性

需求明确、简单的项目,可以进行简单设计即可。可选项包括整体功能描述、整体设计思路、功能模块划分、功能模块描述、框架级别伪码。

?  项目目标明确

具有详细目标的项目,可以在整体设计时,进行完功能模块的设计工作。设计文档内容同上

?  项目目标不明

对于目标不明确的项目,可以采用渐进明细的方式,在计划阶段,可以先进行简单设计,但需要在后期不断修正完善相关文档。

 

       对于大型项目,可以按照功能模块,将计划文档划分为子文档。以方便查阅和维护。

2.1.2.2.2.3   模块级别需求及原型设计

对于整体需求分析和原型设计阶段未进行详细分析设计的模块,在相应的模块活动中,将进行详细需求及原型设计工作,以保证在设计和编码工作开始前,进一步明确需求,降低风险。此工作会项目的时间、进度、成本、范围产生变更。

 

步骤同整体需求分析和原型设计

2.1.2.2.2.4   模块级别设计工作

对于整体设计阶段未进行详细分析设计的模块,在相应的模块活动中,可以对相应的设计文档进行细化和调整。此工作会项目的时间、进度、成本、范围产生变更。

步骤同整设计工作。

2.1.2.2.2.5  编码工作

根据设计文档、开发规范、进行编码工作。编码应遵循进度计划、范围要求,并遵守相应的开发规范。

开发过程中,如发现与设计、需求不符,应与项目负责人、系统设计人员进行协商。如确实需要更改,需走整体变更流程。

 

2.1.2.2.2.6  模块级别测试工作

当功能模块开发完毕后,开发人员应保证模块符合部门定制的各种规范,如编码规范、测试规范等。是否符合规范,将以符合各种质量检查单为标准。

还需根据研发部测试组提供的开发人员自测规范,对常见的但不应该出现的问题,还应形成自测检查单。

 

2.1.2.2.2.7  系统/集成测试

在里程碑或某一组相关活动结束、以及全部功能开发完成后。需要对其进行集成测试。系统/集成测试从整体的角度,对一组功能模块进行测试,测试应遵循测试规范和标准。测试的结果应是可以度量的。

3      辅助的工具

知道怎么做不难,难的地方在于如何去做

第一是执行力,如何去严格按照规范执行,按规矩去办事,这是最难做到的。秩序不光需要建立,还应需要去维持,去强化。

第二是成本问题,如果执行的成本过高,也就失去了价值。由人去管理人是困难的,但如果交由系统呢,对吧?