[摘要]
2013年10月,我参加了某某省中国移动综合分析系统项目的建设,担任了项目经理的角色。该项目面向移动网络的各级管理、规划、维护、优化及网络分析人员,利用现有业务系统产生的海量数据资源,进行加工分析挖掘,为企业运营决策和维护优化提供信息支撑。该项目作为移动集团的战略性项目,执行一省研发多省部属的开发模式,受到了移动集团和本公司的高度重视。本人也在项目的范围管理中,结合公司要求和项目实际情况,科学的运用信息系统项目进度管理的理论知识。本文结合笔者的实践,探讨了在项目的进度管理中遇到的问题及解决方法。以活动定义、工作量及技术难度估算、识别项目关键任务、随时了解项目进度,必要时调整进度表等方面讨论了该项目进度管理的基本活动与方法。项目历时1年并于2014年11月顺利验收,系统运行稳定并具有良好的行业示范作用,在文章结束之处总结了项目管理的一些经验与不足。
[正文]
一、项目概述。
随着移动通信用户、业务种类的不断增多,移动通信网络规模不断扩大,网络资源种类、数量不断增加,终端客户对网络质量要求不断提高,网络运维面临前所未有的挑战和压力。为适应日趋激烈的市场竞争环境,全面增强网管运维支撑水平和网络服务能力,全面提高客户满意度,由此提出了建设综合分析系统,在2013年10月该项目作为重点项目启动了。
综合分析系统总投资2000万,要求在2014年10月1日前投入使用。系统采用B/S构架,研发平台采用Windows Server 2008 R2,数据库平台采用SQL Server 2008 R2,集成平台采用SharePoint Server 2013 ,数据服务器、ETL服务器、前置应用服务器均采用IBM x3755M3,存储采用IBM DS3512。该综合分析系统的主要功能包括:领导试图专题、端到端分析专题、价值小区专题、四网协同专题、数据质量专题、元数据专题、功能导航、自动化分析周报、节假日预测以及指标查找模型搜索以及小区GIS呈现(WebGIS)等通用功能。该项目的干系人涉及到客户方项目领导,客户方顾问,客户方项目负责人,我方项目领导,项目顾问,项目经理,分析设计人员,开发人员,测试人员,美工等。由此可见,该项目周期长、投资大、干系人多,有效的管理是项目成功的关键。
通过公司的项目经理竞争上岗机制,我有幸获得了公司领导与业主的信任,成为该项目的项目经理,全面主持项目的管理工作。项目历时1年并于2014年11月顺利验收,系统运行稳定并具有良好的行业示范作用。下面结合项目,分别从活动定义、工作量及技术难度估算、识别项目关键任务、随时了解项目进度,必要时调整进度表几个方面来论述。
二、 进度管理是项目管理的灵魂。
进度管理是项目控制的首要内容,是项目管理的灵魂,项目超过完成期限,其它的做的再怎么完美,也不算是一个成功的项目,同时由于信息系统项目不确定性,项目的进度控制是项目管理中最大的难点。项目进度管理与项目的质量、成本管理密切相关,其基本过程包括了以下活动:
项目活动定义:确定为完成项目必须进行的各项目具体活动和工作内容;
活动排序:根据业务逻辑,找出活动之间的依赖关系;
活动资源估算:确定在实施项目活动时要使用何种资源以及每一种资源使用的数量;
活动历时估算:资源持续时间的估算;
制定进度计划:通过对以上几点的研究和分析,进而制项目的进度计划;
进度控制:跟踪项目进度计划表,对于出现的偏差进行分析,并采取相应措施。
本人在参与该项目之前,有多个中小型企业管理信息系统的项目管理经验。做过项目经理的人都知道,项目范围边界不明确、需求定义不准确是导致项进度失控的主要原因之一,有效的项目进度管理是项目在规定工期内完成的重要保障。本人非常清楚项目管理金三角在项目管理中的重要地位,工期上的延误,往往会带来一系列的问题。如项目成本增加,质量难以保证,甚至引起合同争端,造成严重的后果。
以下是结合本人在该项目中的实际工作情况,从项目进度管理几个方面的工作进行简要论述。
三 项目进度管理工作方法
首先、定义活动并估算其工作量和技术难度
我们在定义活动并估算其工作量和技术难度上采用面向对象技术和类比法原则,先将每个子系统进行逐步分解,直到分解成基本模块(当然,分解的工作在WBS中基本完成),借鉴项目历史经验,估算出实现基本模块的技术难度和所需要的工作量,因为和以往项目相同或者相似之处我们认为没有太大技术难度,资源和时间估算上不会有太大误差。对于以往项目中没有用到的技术,我们作为重点考虑对象。一方面靠项目内部核心技术人员提前试验,另外一方面向行业内专家进行咨询并向公司申请相关的培训。比如我们在该项目中用到了数据仓库技术(ETL)和商务智能技术(BI),在进行工作量估算之前特别邀请产品供应商过来对产品和技术进行相关介绍和培训,为工作量估算、技术难度分析提供重要依据。项目工作估算完成后,召集子系统负责人对项目进度进行讨论,获得大家对估算结果的认可。当然,在资源安排上,对于技术难度相对较大的工作,一般会安排给经验丰富的程序员,这样不至于在某个技术细节上而影响项目的整体进度。
由于本公司之前曾有多个大型管理信息系统开发经验,因此有不少的案例可供参考。如系统框架部分的组织机构、功能授权、系统登录等,甚至包括数据库设计我们都是复用以前的案例,在此基础上做一些修改。这对工作量的估算也是一个重要的参考。另外,前台的常用操作,如增加、删除、修改、查询等一系列活动各模块大体上也是相同的,我们就编写统一的类,通过传递参数的方式实现对不同的表的增、删、改、查等常用操作业务。这样我们就可以在需求分析和软件测试上多花点时间。
其次、识别关键任务。
领导试图专题是客户领导首要关注的,应优先保证开发,我们把他设为重要的里程碑。由于国庆即将来临,客户也很希望能使用节假日预测专题进行预测,我们把此专题设为优先级高的专题。同样根据重要性和优先级,比较重要的任务还有还有四网协同专题,价值小区专题、系统的原型。在进度控制时我们将其作为重点对象进行控制。
再次、随时了解项目进度。
第一、制定详细的工作进度表
在确定项目开发计划时,我们制定了详细的进度表。我们在确定每一项任务时都确定该任务的工作量、开始时间、持续时间、结束时间。同时让每个小组成员知道自己所承担任务的时间表,小组成员根据自己的任务制定自己的详细工作计划。
第二、执行严格的工作日志制度
工作日志是了解每个小组成员工作情况的很好的方式,我们要求每个小组成员对自己的工作都要做工作日志,对自己每天的工作做详细记录。每周对自己的工作进展做出结论,向项目组汇报。在做结论时,不得使用“差不多”、“大概”、“完成了90%”…等模糊字眼。而是采用某项任务“已经全部完成”、或者“90%的工作全部完成”或者“再过1天全部完成,等方式。每个小组成员对自己做出的结论负责,这样可以做到随时了解项目进度,为调整项目计划提供客观基础。
第三、设定合理的里程碑计划
同时我们在项目进度计划中根据项目设计定义了相关的里程碑,在每个里程碑我们都采取小组会议形式对本阶段的工作进行确认、总结,对本阶段的进展情况做出结论,并决定是否调整下一阶段的进度计划。
各个网管的数据抽取到本系统的数据库中定义完成为一个里程碑,抽取过来的数据经过转换放到本系统的事实表中又为一个里程碑,领导试图专题的完成也是一个里程碑等等。每个里程碑的标准在系统设计时已经定义好。
基于该项目在项目初期范围界定不明,需求难以定义和项目工期紧的原因,为了避免多次返工情况,我们选择迭代模式进行开发,设计与编码同时进行,尽量保证项目人力资源没有闲置的情况。除此之外,鼓励员工适当加班也,要手段,我们给予愿意加班和主动承担项目任务的员工多发奖金和公开表扬进行激励。
当然,在项目实施过程中,还成立变更控制委员会,来合理的控制各种变更。变更控制委员会成员包括,各小组组长、系统分析人员、系统架构师、项目经理、客户负责人。其变更控制流程具体为:当变更需求时,由项目经理提出书面的变更申请;申请提出后,由变更控制委员会来针对紧急度必要性优先级等来进行影响分析,评估是否有必要执行变更。通过审核的变更需要对相关联的工作进行重新计划,然后实施变更行。变更实施后,需要对实施结果进行确认,及时的通知干系人,并做好相关的文档归档。未通过审核的变更,也需要做好相应的归档工作,以避免以后有类似的变更提出。
经过努力,综合分析系统在原定的2014年9月底试运行成功并在11月初通过了验收。
回顾整个项目过程,虽然该项目工期长,业务复杂,干系人多等各种难题,但是通过有效的进度管理,还是多次受到公司和移动集团的表扬,并按时上线验收。但在这期间也有很多问题存在,现将主要经验教训总结如下:
1、有效的沟通和确认能事半功倍。
2、进度计划不能走过场,一定要严格执行。
3、资源紧缺时可以适当的引入外包人员。
4、建立奖惩制度,激发员工的工作热情。
5、除此之外还有很多不足,不在此一一列举。
在以后的工作中,我将继续努力学习、总结经验,更好地完成项目。
各省软考办 | ||||||||||