一、SI的兴起—中国软件产业的一个“机会”
顾名思义,SI就是系统集成的意思。系统集成的概念在IT业界一直十分模糊,假如你经营一家攒机店,假如你是做EAI的或是做MIS的,都可以标榜自己是做系统集成的公司。由于笔者是做软件的,所以本文我所讲的SI仅限于软件产业。
在当今社会中,企业信息化浪潮一浪高过一浪,SI的概念也被炒得沸沸扬扬,许多软件企业已经达到了言必称系统集成的地步,笔者认为,这虽然有些过热,但SI的确是中国软件产业的一个机会。
众所周知,软件在概念上被划分成几个层次,有操作系统、数据库、中间件、开发平台和应用软件等等,每个层次都有各自的霸主,比如微软和Unix/Linux就基本垄断了操作系统的市场,Oracle等厂商在数据库领域的称雄,BEA以及IBM的中间件产品,微软的开发工具集以及诸多的知名国外厂商在应用软件领域的地位,都是我们国内软件企业所望尘莫及的。
大家仔细分析一下就能够发现,这些国外的老牌软件企业哪个都是有10年以上的积累,做操作系统等高技术含量的产品,我们根本没有实力和人家抗衡。
但是,做软件SI研发就不同了,既然是做项目,大家在技术水平上基本没什么差距,所差的就是项目管理的经验,笔者写下本文的目的就是总结了自己在做联想SCM外挂系统开发的项目经理时的一些经验和体会,供大家分享,也欢迎各位提出宝贵的意见!
二、什么是SI中的项目管理---“享受软件开发”
为了保证SI系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快SI系统开发的速度、保证质量、以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。
SI系统开发的项目管理是根据管理科学的理论,联系SI系统开发的实际,保证工程化系统开发方法顺利实施的管理实践。它包括SI系统开发中的项目评估及可行性分析、人员管理、进度管理及成本控制等方面。
所谓的项目管理,笔者认为其形式上是由项目经理通过对项目组成员的管理,最终完成项目的开发,提升客户满意度,但实际上,项目经理的作用越大,风险也就越大,软件开发中的“个人英雄主义问题”就出现了。当然,笔者非常肯定“大师”,“大虾”在项目中的巨大作用,但这些都是做小项目时的风格,一旦你参与甚至管理一个大型的SI类项目的时候,就会发现一套实用的流程和几个清楚的模版要比一个项目经理更重要,如果制订了好的流程和模版,项目经理会工作得十分轻松愉快,项目组开发成员也会充分享受到软件工程和CMM给你带来的享受。
三、SI类项目进程中的角色扮演与职责划分---SI类项目中的“五角色”
当然,任何一种项目管理方法最终是要由人来实施的,人们在实施过程中不可避免地要遇到许多项目管理方面的问题,如何正确对待、解决这些问题,直接关系到SI系统开发的成败。
目前IT界虽有许多关于SI系统开发中项目管理方面的问题的讨论,但大多局限于针对理想开发环境中的理想开发模型的讨论。而实际的开发环境和开发模型却各不相同,它受到各种客观因素的影响,忽略这些因素,或者回避、不解决存在的问题,必将导致开发工作的不完善、甚至于失败。本文就是要通过讨论如何处理实际SI系统开发中一些重要因素之间的关系,分析项目管理中存在的矛盾,来揭示其中存在的问题并探讨解决的方案。
笔者认为,在大型SI类项目研发的过程中,大致有两大类五种角色:用户方和开发方;如果将他们细分一下,大家不难发现,在一个项目中有如下几类人:
用户方项目经理:他是开发项目的组织者,负有开发项目的计划、系统的阶段验收及对系统整体进度的监控、经费的使用、与开发方的项目管理人员工作的协调、用户方的使用人员的组织与培训等职责。
用户方业务人员:SI系统的需求的提出者,也是SI系统的最终用户。他们是对应用系统开发成功与否的最终评判者,当然他们也是项目的测试角色,一般情况下可以做到确认测试。
......More↓↓↓