经验借鉴:外包失败三条血泪经验分享
那虽然与现在已经间隔多年了,但是,还时时在我耳边缭绕。我清楚的记得,那是一个春天,一个百花待放的季节。但是,我心里一点都没有春天的感觉。原来,前不久,我们公司上了一个开源的办公自动化(OA)项目。但是,我们公司因为人手不够,而公司人力资源部门又不同意给这个项目加派人手,所以,我们决定寻找外部的合作伙伴,来帮助我们进行一些功能的开发与定制。
那时,我们有两个选择。一是选择这个开源软件的专门服务商。虽然这个软件是开源的,但是,已经有软件公司看到了其的商业价值,开始研究这个开源软件,并为其提供服务。可惜的是,那时,这些公司还是凤毛麟角,而且,都在广州、北京等地区,连上海都没有,离我们公司比较远。我们认为,若选择这么远的公司,到时候服务起来不方便。虽然我们跟他们接触后,发现他们水平还可以,但是出于路途的考虑,我们还是放弃了。
另外一个选择就是离我们公司近一点的地方,找一家软件开发企业。我们公司在杭州。杭州的信息化企业虽然不能跟上海、广州、北京比,但是,也差不了哪里去。所以,找一家专门为公司提供软件定制的企业,也不是很困难。不过,他们有一个不好的地方,而且,这个缺陷可以说是致命的。一方面,他们对于这套软件不是很熟悉,若让他们进行开发的话,他们需要花费比较多的时间去研究这套软件,而这个成本最后肯定会转嫁到我们身上;二是他们以前也没有接触过OA软件,可以说,对于办公自动化的业务没有直观的了解。
虽然他们有不足的地方,但是,我们最后还是考虑选择跟附近的一家软件公司合作。主要出于以下考虑。一是他们不懂OA软件,但是,我们公司有一位以前实施过OA软件的人才,则只要他提需求与解决方案,让对方进行开发即可;二是他们虽然不懂这个软件,但是,我们现有已经有了全套的资料,他们根据这套资料,应该可以在短时间内了解这套系统;三主要还是出于路途的考虑,离我们公司近,方便我们的沟通与协作。另外还有一个原因,就是起公关做的不错,借助我公司一位副总的朋友的关系,顺利的促成了跟我公司合作的机会。
但是,后来的经历我那时的选择是多么的不明智,导致我现在是进退两难。
一是软件公司没有我想象的那么兢兢业业。因为OA软件开发来说,对他们是一个陌生的业务,重要的是,不是他们的主要业务。他们主要是为一些超市、卖场的企业开发软件。所以,他们在签合同之前口头答应会派一些经验丰富的程序员,但是,后来呢,派出的都是一些刚入门的程序员。但是,这也不能说他们违反合同,因为他上面还有一个软件工程师在做指导。可惜的是,其只是挂着名儿的,没有参与任何功能的开发。
经验教训1:技术项目要对口
所以,我们选择信息化合作伙伴的时候,不用太过考虑软件公司的规模,但是,一定要考虑软件公司跟你的项目是否对口;千万不能象瞎猫抓老鼠,抓到一个是一个。若你选择的外包服务商,跟你的项目不对口的话,虽然其实力可能比较强,但是,你也不要想他们给予你太多的关注,因为他们不会“不务正业”,他们现在接受你的项目,可能是他们现在正处于淡季,没多少项目。所以,就接一个项目是一个项目了。
其实,现在通讯这么发达,有时候,路途不一定非常关键。虽然路途远的企业,在上门服务上会遇到一定的问题,但是,通过远程协助工具也可以解决一些常规问题;就算让对放派个一两个专业人员,我们包吃包住,集中精力花个一个月时间搞开发,也花不了我们多少钱,效果,却比找一家没有经验的软件公司要好的多。
二是软件公司不熟悉OA项目的具体业务,跟他们交流非常的困难。其实利用过OA系统或者其他大型管理系统的人都知道,这些系统的开发,难度不大;难的在于业务的熟悉与系统的设计。主要系统设计与业务处理逻辑做好后,软件开发就是一件很简单的事情。但是,我们在刚开始考虑的时候,把问题想的过于简单。我们错误的认为,只要我们有熟悉OA系统的人才,即使对方没有这方面的人员,也没什么问题。但是,后来,不幸的证明了我这个想法是多么的一相情愿。由于软件公司人员以前没有接触过OA系统,对于OA系统的相关业务非常不熟悉,结果呢,我们跟他们沟通起来非常的麻烦。一个简单的业务,我们要重复好几遍,他们才能够接受。最重要的是,我们不可能老是在旁边站着看他们开发。最后,他们开发出来的功能,跟我们设想的,总是有距离。
经验教训2:双方沟通很重要
管理软件的本质在于业务流程,在于管理思想。软件设计的好坏,直接关系到软件的利用效果。若想要没有OA软件使用经验、开发经验的人,开发出一套OA软件,即使在原有的模板上进行开发,也是一件非常困难的事情。因为他们程序开发人员的思维跟我们用户的思维还是有一定差异的,有时候,这些差异很难通过语言来解决。
所以,我们在选择信息化业务伙伴的时候,特别是涉及到一些比较复杂的管理软件时,除了要考虑对方的程序员能力时,非常重要的,还要考虑对方除了技术员之外,有没有比较熟悉实际业务的专业人员。如此的话,我们只需要跟对方的熟悉业务的人员沟通即可。至于他如何跟他们的程序员沟通、如何保证需求的实现,就不是我们关注的内容了。我们只需要关注最终的结果就可以了。
三是在跟信息化合作伙伴洽谈时,没有提出一个合理的考核方案。我们在起草合作合同时,虽然也想到考核的问题,但是,出于经验的限制,没有没有设计出一个好的考核方案。这导致了在信息化项目的后期,我们跟软件公司之间相互扯皮,踢皮球。
经验教训3:项目考核必须有
若我们选择外包服务商的时候,一个切实可行的考核方案是非常有必要的,不能够让软件公司,把项目简单的完成了,甚至只是时间到了,就可以轻松的拿到项目资金了,这显然是不行的。为了能够督促合作伙伴完成项目,则就必须要有考核方案,而不能简单的用项目时间来度量。值得高兴的是,我们在这方面虽然做的不够,但是至少还做了一些。在项目开始前,我们还是进行了一番比较深入的需求调研,对开源的OA软件也进行了试用,然后,两者比较,就罗列了一些在系统中无法满足的需求。我们在签定合同时,就明确了要实现这些需求,对方才能够拿到项目资金。所以,现在的状况是,我们跟对方都陷入了泥潭,不可自拔。对方软件公司虽然不能实现全部需求,但是,为了拿到这笔资金,还在那边不断的努力;而我们呢,因为由这个软件开发公司的限制,也不能再随便的寻找其他的开发商。现在至少有软件公司陪着我们一起熬,心里至少安慰一点。虽然,这对我们的影响可能会更大。
最后,这个项目还是以失败告终。投入了不少精力与金钱,开源OA软件还是没有在企业中上线运行。我一发狠,最后,还是在企业财务总监那边,争取到一笔资金,上了一个成熟的商业OA软件,没花多少时间,就完成了OA项目。
经受这个打击之后,我在以后选择信息化项目外包服务商的时候,就特别小心了,不能太过于简单。而且,从这次事件之后,我对开源的软件也不是很看好。因为一般的企业,毕竟不是专业的软件公司,没有这么多的人员,更加没有专业人员来维护开源系统。
来源: 中国系统集成论坛 原文链接:http://bbs.systemcn.net/thread-13719-1-4.html