俗话说:常在河边儿走,哪儿能不尿炕。

毕业到现在,web开发行业也已经干了快十年了。参与过,负责过也不少项目了,有大有小,有自研性质的,有外包类型的。
我一直觉得,一个系统到底用何种方式来开发,取决于这个项目在公司所处的位置和重要程度来衡量。
即便是一些处于中间位置的项目,选择外包团队来做的话,至少也要在需求层面把握的足够细致清楚,不要指望外包团队来帮你发现需求问题,甚至是逻辑问题。

不过,最近我就碰到了一个相当奇葩的项目,我认为几乎涵盖了所有失败的必然条件,我一度怀疑客户是故意的,项目就是他用来打发时间的一场游戏。现在,就由我来罗列一下其中的几宗罪吧,让你们也开开眼。

需求提供方素质太低,沟通起来完全就是在耍流氓

关于这一点,你可能会说:客户一般都不是专业人士,你不能期望对方给你提供完美的沟通保证。这一点,完全正确。不过,首先我要明确的是,甲方是日本一家专门做IT项目开发的公司,就是那种将自己公司IT人员外派到客户企业做定制开发的公司。当然,我们也不能因为这个,就假设他们的老板就一定是个程序员。这没问题,但问题在于,在前期项目接洽环节,这个老板的态度是细节完全不管,只负责扯一些官话,什么大家要用心做啊,什么大家辛苦了,一定要把项目做好啊一类的话,我不知道这些话是他用来骗自己的,还是他的口头禅,完全没有卵用啊。一旦涉及到具体项目问题,他立刻就会说:我不管这些细节,你找XXXX来沟通。

听起来是一个甩手掌柜,很懂得放权嘛~~可是,到了验收阶段,他冒出来,对着系统又开始云里雾里:

  • 我感觉咱们的页面看起来有点怪怪的,和我们公司现用的一些系统不太一样。
  • 那请问您是看到了哪个具体地方有问题了吗?
  • 这些细节我不管,你还是找设计人员沟通一下吧,反正我感觉有点不太舒服。

这些细节可能还不足够让你无语,更悲催的是,在项目开发到中期,他突然空降了一个秘书作为项目的负责人,还在项目会议上说:大家以后都要听XXX的指令,我完全信任他的判断,你们要知道,我公司的很多财务转账我都是交给他来做的,可见我对他的信任了吧。

而这个所谓的秘书,对当前的项目完全不清楚需求,自诩也是开发人员出身,但提的很多问题都让人哭笑不得。最可气的是,他完全不理会设计人员提供的设计书,按照他自己的想法后期提了很多需求变更问题。但是他拒绝提供标准的设计书,按照自己的方式提供变更描述,还狐假虎威的勒令开发人员赶进度。

到此为止,就已经犯了软件开发的无数大忌。不过这才刚开始。

在项目验收阶段,我突然收到了这个秘书的一条信息,大致内容是他离职了。此时,甲方老板则一改之前的态度,会议上说:这个人(秘书)对我们项目的需求把握的达不到我的要求,而且由于不是开发人员出身,你们沟通起来可能不顺畅,所以把他撤出项目组了。

这些由于甲方公司内部组织架构变更而导致的风险,难道乙方也要承担么?而在过程中多次要求提供标准设计书和需求变更文档,被当做是无理取闹,最终由于一个人的个人喜好导致的错误的需求变化,老板简简单单的一句“撤出项目”就可以把问题解决了吗?

设计人员参与度不够

由于甲方公司在日本,沟通本来就只能依赖网络,再加上中日文沟通障碍,所以甲方委托了大连的一个设计团队来把控需求。看起来也很合理,但问题在于这些设计人员都是兼职,他们只有晚上的时间才可以提供QA支持,这一点就已经严重了影响到了开发效率。而这些设计人员提供的设计书又十分的粗糙,很多低级错误,如错别字,数据库表字段类型与设计书不匹配,等等。

设计人员对该项目的理解和甲方的存在不一致,导致很多问题两方的回答不一致。本来这也不是解决不了的问题,三方对峙就可以了。但,实际情况是根本就没有组织这种会议的可能性,在每周例会中,开发团队提出的任何问题,都会被甲方当作是借口,不管是设计问题,还是开发问题,都需要开发团队来承担。在甲方眼里,设计人员不存在任何问题。这种不尊重事实的假设,不知道理由到底是什么?

角色定位混乱,没有责任感

在这个项目中,除了开发团队,似乎其它每个参与进来的角色都在提意见。而且,甲方对设计人员的过分信任,对开发团队的质疑,这种厚此薄彼的态度,对于这种三方合作非常的不利。

设计人员初期拥有较多的话语权,中后期被秘书夺走,秘书离职后设计人员又开始颠覆秘书提出的要求。不过,不管是谁拥有话语权的时期,都不愿为自己说过的话来负责,这是核心问题。

不遵守合同

在合同中,明确提到的责任划分,在实际项目实施过程中完全没有被尊重。开发进度中原本只包含的工作量与实际工作量相比,发生了成倍的变化,但工期并没有合理的安排,这一点使得开发团队整体情绪低落,间接影响了各个项目的各个方面,如代码质量,沟通等。


整个项目,我们作为开发方,无疑存在自身的问题。但,尊重事实的讲,我们自身的问题占的比重非常的少。所以,这篇文章并不是反省,而是总结。以后,此类型的项目,最佳的处理方式,就是果断的终止合作。任何一秒的投入,都可以算是浪费资源。