项目管理就是为了实现项目目标,而进行的一系列的组织、筹划、激励、沟通、检查、控制活动。项目管理是通过一个组织来实施的。常使用目标管理的方法。
为满足协同产品开发环境对项目管理系统的需求,结合自行开发的工作流管理系统与工作流仿真系统,提出了一种适合协同产品开发环境的分布式集成项目管理系统体系结构,介绍了系统的主要模块及基本功能。在系统实现过程中,融入了关键链项目管理系统的方法,提升了项目计划制定的质量。在协同开发过程中,往往存在着大量的信息交互和共享,任务的交叠与变化,资源的分配、冲突,以及分布式的协同。因此,协同产品开发环境下的项目管理系统具有以下特征:
(1)群组交互性协同产品开发采用开发人员群组协作工作的方式,各项子任务只能通过密切地协作完成,各个小组成员之间是合作关系,项目经理人只能通过协调和合同来管理各个成员的活动。
(2)时空分布性协同开发各小组成员分布在不同地方,可能处于世界各地,他们在不同的时间相互合作进行新产品的开发,由于文化、习惯等的差异,增加了项目管理的难度。
(3)动态性产品开发过程中,开发的进程和设备的状况等均在动态的变化之中,而客户要求的不断变化和频繁修改也使开发过程的项目管理系统更加复杂。
面对上述特征,传统的项目管理系统在进度协调控制和资源配合等方面都已不太适合,有待及时改进。
对产品开发而言,缩短开发周期是关键,所以协同产品开发环境下的项目管理系统的重点应该放在进度的控制和人员的协作上。
现在市场上比较流行的项目管理软件主要有Microsoft公司的Project2003、Primavera公司的P3、Lucas管理系统公司的Artemis7和Scitor公司的ProjectScheduler8,此外应用比较多的还有国内梦龙科技的LinkProject。
MSProject2003虽提供了较强的项目规划、监控和跟踪,以及专门的协作功能,但是在制定进度计划时仍然采用传统的关键路径法(CriticalPathMethod,CPM)建模。在项目管理系统的实践中,CPM一直都没有克服多任务和不确定因素的负面影响,在应用中出现了延期、超支等现象,失败率比较高。此外,MSProject2003的任务时间模型采用了确定型的工期估算模型,增加了项目计划在动态环境中修改的几率。在多个项目或多个任务并行发生时,MSProject2003还无法处理好项目之间、任务之间的协调问题。
P3和LinkProject等适用于运行模式为建造一运行一移交(BuilOperate-nansfer,BCIT)和管理承包(ManagementContracting,MC)的工程项目管理系统,它们都以成本和合同为核心,不适合对协同产品开发项目进行管理。
目前,国内对协同产品开发工作方式下项目管理系统的研究所建立的一些系统也都是依赖于传统的CPM和计划评审技术(ProgramEvaluationandReviewTechnique,PERT)。而采用CCPM技术建立的系统都过于关注进度的控制,不能很好地支持协同产品开发模式。
本文从协同开发环境的特点出发,建立了一种以进度控制为核心的协同产品开发的项目管理系统。该模型系统采用先进的项目进度规划方法–CCPM,同时通过个人管理模块及信息模块提供的强大的层次协作功能,进行项目的各种协同,为产品开发项目的成功提供了保障。
一:协同产品开发项目管理系统的结构及功能设计
1、协同开发环境下项目管理系统的体系结构基于客户机/服务器(C1ient/Server,C/S)结构的系统,具有较强的数据操纵和事务处理能力,数据的安全性和完整性较高,但协同开发环境中的项目成员是不断变化的,C/S结构不能适应这种变化;而单纯的浏览器/服务器(Browser/Server,B/S)结构虽然大大简化了客户端,只需一个Web浏览器即可,但它在实现项目的建模、优化等复杂的功能时又显得非常困难。因此,本文结合B/S和C/S各自的特点优势,在实验室开发出的网络化制造系统原型的基础上,提出了一种3层混合体系结构的协同产品开发的项目管理系统框架,
(1)客户层客户层为参加协同产品开发的系统用户提供了良好的操作界面。
根据B/S和C/S结构的不同特点,将客户层分成两种形式。一种是采用标准的Web浏览器的形式,用户无需安装客户端软件,只需拥有一个用户名及密码即可,这种形式主要应用于大量异地分散数据的采集等简单的业务计算机集成制造系统客户层服务层数据库层web浏览器可下载服务组件web服务器墅删匪务器应用服务器理项目管理系统的三层体系结构示意图分布式产品数据管理系统操作,如产品开发的进度、成本的统计等;而对于较集中的复杂管理应用过程,则通过组件的下载,在本机安装相应的客户端应用程序,再通过客户端经由Socket服务器调用相应的服务实现应用功能。
(2)服务层该层为三层结构中的核心层,也是与分布式产品数据管理(ProductDataManage-ment,PDM)系统应用的重要交互层,它几乎包括了项目管理系统所必要的全部业务逻辑处理功能。
服务层主要由Web服务器、Socket服务器和应用服务器组成。Web服务器为客户端浏览器提供服务;socket服务器结合应用服务器为客户端提供一些复杂的应用服务请求;应用服务器为客户端应用程序提供程序,或结合web服务器响应浏览器的服务请求。应用服务器集中了协同产品开发项目管理所涉及的包括系统的管理、项目定义、计划建模、个人管理、进度控制、变数管理、合同管理和信息管理在内的几乎全部管理内容,以及一个用于与分布式PDM系统进行集成的接口。
(3)数据层数据层为系统服务层提供了各种数据的操作通道,他们共同完成协同产品开发过程中数据的存储管理。
2、项目管理系统的主要功能
(1)系统管理该模块担负项目管理系统的日常管理工作,并维护整个系统的一致性和完整性,它为系统管理员的行为提供支撑。
(2)项目定义项目定义即确定项目目标,制定实现目标的一系列方法和措施,建立项目执行的行动指南,同时明确协作团队成员的职责。
(3)计划建模该模块是项目管理系统最重要和核心的模块,它是项目进行控制和管理的基础,也是同工作流进行集成的重要模块。
(4)个人工作管理该模块管理协作团队成员的日常工作,为项目提供了最直接的管理工具。
(5)进度控制进度控制为项目协作团队提供了以进度的控制为基础,辅以资源、成本、质量控制的跟踪监测和控制功能。
(6)变数管理将组成项目整体,并相互联系和互相作用,决定项目整体性质功能的各组成部分称为项目的一组变数。
(7)合同管理在协同产品开发环境下,项目基本都采用合同的方法进行管理,项目中的各种责权利关系通常用合同的方式进行表达。
(8)信息管理协同产品开发过程中,协作团队之间的信息共享对项目的成功完成极其重要
二:项目管理系统实现的关键
技术对新产品开发过程管理的目的就是缩短产品的开发周期,加快产品上市的速度,迅速占领市场。而通过分析产品开发组织、资源和产品对象等,协商建立一个详尽合理的产品开发过程模型,是进行产品开发管理、缩短开发时间的首要前提。因此,计划建模和团队成员间的协作功能是协同产品开发项目管理系统实现的关键。
1、计划建模在协同产品开发的项目计划阶段,采用异地协同计划编制的方法,团队成员以网络、多媒体视频为协商载体,讨论编制产品开发的作业计划。根据项目管理系统过程中信息的流程,建模模块提供项目分解、过程建模、视图管理、计划优化和计划确认5大模块。
1)基本功能
(1)项目分解产品协作开发组根据过程控制的需要和产品的设计结构特点,将开发项目分解成适当粒度层次的若干个任务,同时定义任务的预期开始时间、预定期限、里程碑、各任务的可交付成果和分配资源等。
(2)过程建模为项目管理人员提供CPM,PERT和关键链等多种建模方法,其中基于CCPM的建模技术是重点。
此外,根据待开发产品的结构特点,针对CPM模型和PERT模型,与工作流系统实现集成,提供了工作流微观建模。即将宏观的任务模型中的任务节点进一步分解成工作流活动实例,建立任务节点的工作流模型。改变了传统项目管理系统中任务内部的不可见性和不可控性,实现了任务内部的透明管理,增强了反馈信息的实时性。
(3)视图管理提供如网络图、甘特图等多种视图的计划查看方式。
(4)计划的优化提供了传统的工期优化、费用优化和资源优化。
(5)计划确认提供了优化后的项目计划浏览、项目计划日历、网络图和甘特图的打印等功能。
2)关键链项目管理
将这种管理技术引入系统中,改进了传统的项目管理软件在计划制定过程中只进行关键路径建模,以及根据资源的使用状况修改计划方面的不足,提升了项目计划制定的质量,很好地适应了协同产品开发环境下项目管理系统的特点。
2、协同功能
协同环境下的产品开发就是要集中开发团队的知识,使分散的项目团队成员跨越时间和空间的限制协同工作,系统通过信息管理模块的信息发布和实时协同工具提供了项目管理系统必要的协同功能。