一、需求持续变化带来的痛苦

我们时常会从《硅谷传奇》之类的传记里面读到,一两个天才程序员,凭借在车库里面的一些天才的开发工作,写出了惊世骇俗的程序,然后迅速成为IT业界的明星。然而现实是大量的软件,都是在类似黑网吧的“软件血汗工厂”里面被开发出来的。难道开发能力真的存在那么大的差别吗?

软件项目管理的书籍汗牛充栋,无数专家学者都在这个领域花费毕生心血。但是软件项目管理也是至今为止进步最缓慢的一门“学科”。假设世界上真的存在一种知识,能复制车库里的神话,那么我相信它现在应该早已传遍全世界了。

为什么神话确实存在,而大量的开发团队却在苦苦挣扎,我们要看一看两者项目之间的差别:

◇ “车库”产品的需求提出者是开发者本身,他们一心一意地做自己想要做的东西。“工厂”产品的需求提出者往往不是开发团队,而他们需要满足很多不同方面的需求,有些甚至是互相矛盾或模糊不清的。

◇ “车库”产品的开发者人数很少,他们最多的沟通也就是在左脑和右脑之间。“工厂”产品往往涉及大量的不同岗位,从客户代表、市场人员、销售经理、售后工程师到程序员、美工、产品设计、项目经理、老板/投资人、测试人员,等等。

◇ “车库”产品的开发者目标很清晰,以自己认为的最好方式,去做自己认可的事情。“工厂”产品的开发者往往很纠结,项目中有一些令他们感兴趣的技术或者创意想要实现,但是这些又不一定能被允许在项目中实施。

其实归根到底,两者最大的区别,还是关于需求的:

(1)需求是否明确;

(2)需求的沟通是否通畅;

(3)开发者自身的需求取舍。