项目运作现状
2007年5月份,我进入公司,参与青岛应急联动指挥系统研发工作。该项目是2008奥运会帆船比赛城市青岛的三警合一及应急联动指挥项目,也是奥运项目之一。项目开始,该项目组没有类似的经验,都是一批新招聘的新人。经验总体来说,都是每一个新人过去的工作经验。以下图表是反映技术投入情况:
序号 |
投 入 项 |
人 力 (人月) |
备注 |
1 |
底层交换机技术 |
5 |
个人历史经验 |
2 |
底层通讯技术 |
3 |
使用公司准备人才库 |
3 |
呼叫中心业务逻辑 |
25 |
个人历史经验 |
4 |
IVR技术 |
10 |
市场购买 + 个人历史经验 |
5 |
DotNet C/S 架构 (客户端) |
6 |
个人历史经验 |
6 |
DotNet C/S 架构 (服务器) |
2 |
个人历史经验 |
7 |
业务调研 |
10 |
个人历史经验。业务需求不明确,客户难以表达自己需求。调研者不能够准确推理引导客户需求表达 |
8 |
重复开发 |
20 |
个人历史经验。因客户需求不明确,造成工作任务反复退到重来 |
9 |
迭代开发 |
25 |
个人历史经验。因客户需求不明确,需要将设计开发结果,与用户交流,逐步达到客户要求 |
10 |
项目实施 |
20 |
个人历史经验。对实施的条件,客户准备程度等问题把握不清。造成很大人力浪费 |
|
合计 |
125 |
项目尚未验收,119在走项目变更流程。 |
(注:以上数据来源EDS项目管理)
项目组创建起初,青岛应急项目团队从公司继承而来的经验是普通的软件开发经验,不是呼叫中心,三警、应急等针对性较强的专业经验。
首先需求调研工作的开展时,由于项目从西门子分包而来,最初的需求调研及需求设计,建立在西门子人员对项目需求的理解基础上,软件开发处于调整设计反复开发阶段;其次,在软件代码原型开发到一定阶段后,达到可以通过演示进行和用户交流后,开始和最终用户交流,软件进入迭代开发阶段;再次,项目实施之前,系统调试经历一个漫长而艰辛的过程,交换机技术、三警呼叫中心业务处理技术、网络通讯技术、DotNet C/S架构技术(分客户端及中间层服务器)、三警业务处理实现技术、大型项目实施技术都经历了从零开始到稳定应用的全部过程。
除交换机底层技术、网络通讯技术及DotNet C/S中间层集群技术由于较好的个人经验可使用外,其他重要的技术都是花费巨大成本和精力从项目过程中摸索及应用的。
作为项目经理,我的体会是:任何工作几乎完全根据自己的经验和技能来主导调解,例如如何展开沟通的课题,如何让用户表达需求,如何反馈对需求的理解,如何获取需求理解的确认,如何让需求设计得到客户的认可,如何测试保证质量,如何实施安装,如何处理需求变更,如何培训上线都是由个人技能而定,需要身兼数职经常顾此失彼。如果历史重现用现在的经验,我能以60%的成本完成目前完成的任务。
作为上千人历经15的软件公司,我之前应该有无数个项目经理,他们的经验和历史总结,应该和我现在一样。为什么在我开始青岛项目时,我没有从他们那里得到呢?
新致软件有呼叫中心的成功案例,仅仅用来在承包时谈及成功案例,其人力及经验没有复用过来。这好比微软公司本来就有个Windows XP,在开发新产品时,非要从零开始弄个Linux出来。如果问原因是什么,就是做Linux的人不是Windows XP团队的。放眼整个新致软件,每一个人力资源分布在所属的项目中,项目与项目之间平时鲜有交流和沟通。一个部门不可能从另一个部门那里,获取毫无保留的能力和资源。一个部门重新的开始,是死是活不关另一个部门的事。但从整个公司利益上,存在人力和资源的巨大浪费,其原因就是软件复用率不高。
所谓软件复用,就是指软件复制,项目复制,将成功项目的经验和资源,复制到一个新项目中,避免新项目从零开始。软件复用有个人能力复用,团队能力复用,及公司能力复用几个级别。
对于个人能力,很容易被考虑到,因为他一种直观的,个体性,最容易得到的过程。我们可以把他成为个体能力复用,只要找到对应的人才,就得到了对应的复用效果。
在企业招聘时,经常注明需要某某方面的开发经验。在青岛项目中交换机技术,网络通讯技术,C/S架构服务端在整个项目技术结构中处于核心中的核心。如果没有些熟悉这些技术的人,从零开始研究,项目建设可能增加数倍的成本。
个人能力复制,其体现方式为个人能力成为事件成败的关键,在需要支持、指导及规范的时候,都没有得到应有充分支援。在需求阶段,没有在公司得到培训,对于如何展开提问,如何引导客户表达,如何理解客户表达,如何确认理解及需求设计全凭个人技能;在软件开发阶段,技术架构如何设计,技术实现如何进行,软件如何保证质量,项目团队如何沟通,也是取决于个人能力;技术力量的准备,像软件行业专业性技术,例如交换机技术,网络通讯技术,Dotnet C/S架构,Dotnet BS架构,Java框架,都是通过对应的个人招聘获得;项目实施阶段,如何部署实施环境,如何调解客户参与,如何控制客户需求变更,都是通过个人能力来赋予实施。每一个阶段,不是经过公司现有经验培训和指导,然后制定计划和方案,再到客户现场根据情况应变;而是直接到现场,从零开始,观察现场,制定计划,摸索实施。
团队是一个集体,容易做到将一个类似的团队成功地复制。专业性很强的软件公司,例如用友软件
的ERP团队,就延伸出理疗行业团队,服装行业团队,汽车行业团队等。
团队能力复用,就是指将一个成功的项目经验,复制到同类或者类似的一个项目中,以实现项目运作成本的降低。这个概念很容易理解,同时也被很多公司成功应用。公司在组建项目团队时,也将此为目标进行建设。像青岛应急项目团队,很容易就延伸出常州项目应急项目团队,唐山应急项目团队;而且在被延伸的项目中,从组建开始就有很多经验和技术准备。团队能力复制,其体现方式为项目必须同类或者类似,存在相同的技术架构和业务逻辑,也就说团队能力复制必须建立在同类或者类似的业务基础上。这个模式对于用友,金蝶,管家婆,速达都很适用,所以他们成长为软件业的巨人。因为他们主打业务都用对应产品软件,其盈利就在于成功运用历史积累团队能力快速复制。
对于新致软件,团队复用也在为企业带来利润。如果将应急项目接连做很多个应急项目,那么历史经验将在新项目建设过程中,为公司带来较好的利润。但是放眼整个新致软件业务模式,新致软件是通过项目来生存的,一个接着一个地项目,是新致软件赖以生存的根本。我们的项目遍及各种行业,银行,证券,政府,物流,通讯,电信等等,凡是有经营活动的领域,似乎都有新致人的身影,公司建设了各行各业的团队,每一个团队都在试图建设自身的团队能力复用;都在通过一个项目的订单,类似青岛项目一样从头开始,摸索本行业项目特点及应对方案,然后掌握行业经验开始复用,每一次复用,都必须付出很大成本来获取经验。这里的重点所在就是行业团队建设,是一个部门或者小组行为,不是一个整体公司整体行为,没有调用或者引用整个公司的资源。如果是整体公司行为,应该通过人力资源库,找到类似行业人才;通过历史经验库,找到类似成功案例并直接引用;通过需要调研库,获取需要调研指导和规范;通过技术架构库,技术资源库获取对应技术资源并可引用。这就是我本文讲的目标“公司能力复用”。
公司能力复用,是指讲团队建设由小组行为提升至一个公司行为,其要点在于建设之着可继承整个公司的历史经验和资源,让公司的历史积累为新业务发挥越来越大支持作用。每个人从出生到大学毕业,经过很多年的学习才能积累一定知识,这些知识为个人奋斗提供决定性的作用;公司的历史经验积累就像个人学习过程,如果不用,或者用的不多,实在可惜。公司能力复用,复用的是软件能力,其包含两各方面,人和物。人,就是各类人才;物,就是历史经验成功案例。
首先,新致软件以项目为生存根本,尤其需要做好项目管理。从两个方面总结切实可行的方案,抓住最为主要的项目管理过程及最为重要的软件开发过程,建立对应的管理标准和指导措施,并且为对应标准和措施建立专家库。
新致软件2008年通过了CMMI5,其中很多关键实践和关键过程,如果全部赋予实施,不切合实际。文本认为最要过程是:需求分析及需求管理,技术应用、技术架构及技术框架,项目实施。至于数据库设计及软件设计、软件开发及测试,由于我们专业的软件公司,目前的水平很好,不需要多提。
需求分析及需求管理过程,提供标准性指标,需求调研要有调研计划,提问范围,提问技巧,引导客户表达技巧,分析文档,需求变更理解确认及签字。
技术应用、技术架构及技术框架,整理历史经验,为历史项目中使用的重要技术例如交换机技术,网络通讯技术,DotNet 服务端、客户端架构,JAVA技术架构等,建立历史库,方面查询调用,直接应用到新项目,达到事半功倍之效。
项目实施,对于项目实施条件,实施计划,实施步骤提供历史库,以供参考。
专家库是发现人才,使用人才的有效途径。针对具体项目经验,分行业,分技术范围建设,以便需要时得到准确信息。
其次为历史经验建立案例库,分行业将为新项目提供参考。
使用者可以从平台吸取经验,实现管理规范,获得指导;也可邀请对应的专家参与新项目的阶段评审会议;也可直接引用历史资源,甚至邀请对应的专家加入新项目中。
公司能力的复用,其目标表现在于快速建设新的高效工作团队。站在巨人肩上才能看得更远,对于公司来说,历史经验积累越多,使用得越好,就是站得更高,看得更远。如果以公司行为建设青岛应急项目团队,其步骤应该是:
第一:搜索公司类似案例,得到呼叫中心案例,从中提出历史资源。
第二:搜索公司类似人才,得到呼叫中心项目经理及架构师,听取他们得意见,请教知识,申请他们对青岛应急各类设计方法进行评审;
第三:搜索项目管理人才,得到需求分析,需求管理,技术架构,设计框架,项目实施等各方面得人才,请教知识,申请他们对青岛应急各类设计方法进行评审和指导。
这样青岛应急项目组从建设之处,及其在运行的过程中,都站立在一个很高的水平上。对于交换机技术、三警呼叫中心业务处理技术、网络通讯技术、DotNet C/S架构技术(分客户端及中间层服务器)、三警业务处理实现技术、大型项目实施技术,及其需求分析,需求控制,迭代开发次数都能大大提高效率。
信息共享对应的风险就是信息安全,可以使用一定的权限管理方案,解决信息泄密风险。
设置不同的权限,使用VSS、SharePoint管理工具。
权限分部门,分行业,分工作组来设置不同的读写权限,可以让具体人员只访问一个组,或者一个案例,或者一类案例。
新致软件历经15年历史,曾经做过的项目有多少,据有哪些技术力量和人才,可以为新项目查询和提供参考,甚至直接引用。好比一个人,学习的知识越多,其视野越广一样;历史积累知识用得越好,其做事效率就越高,成本也越低。试问,从不学习的人能做出成绩吗?公司不使用知识历史积累,每次项目从零开始花费新成本去新积累经验,好比猫抓老鼠偏偏不走直线,非要打个弯走斜边。软件能力复用,使历史积累最大限度地发挥到新项目中,对于以项目为生存根本的新致,是一个很好降低项目运作成本的方式。