我经历了开发商业系统和产品两种开发形式,在我个人里,发现了些自己感觉极其不舒服的东西。
商业系统开发,简单一句话,就是客户和开发人员的需求的一个平衡。客户希望得到的系统是功能越强大,各个方面都达到自己的200%的满意,而开发人员则站在自己的角度尽量舍去不必要的功能,为了是自己能有更大的利润。往往花大量的时间去取的平衡,而忽略了系统的一些东西,最后开发出来的系统往往都不尽人意。在中国国情里,我只要能交出东西,就万事OK了。有时候即使能在很短时间内完成的功能,非得磨上几天。在开发上,尽量减少“不必要”的东西,例如文档和注释等等。这些就导致了一些IT的特有现状。一个词“悲哀”来形容。
产品开发,则是要实现一个真正的商品。公司自己要拿这些产品来卖钱。因为是公司自己的角度,不存在和客户之间的矛盾,自然而然会去避免上面的一些问题,然而另一方面的问题就暴露出来了。在开发产品时,产品经理自然要把产品描述的很清楚,需求,设计都要做的很全面(过度),从而导致了文案化。公司花费在这些东西的成本过于庞大。如果产品好买的好,也就OK了,否则,就只能面临资金紧张,倒闭等问题。然而,开发人员毕竟是拿工资的,自然就会去消极怠工,希望这个产品能开发久些。原本可以在半年开发完成的,在开发人员手上非得磨个8-9个月。如果外加管理不好,往往产品组(程序管理组)和开发部协调不好,又会导致产品畸形。

从上面的问题,这些问题都或多或少的存在。对于开发商业系统,如果能有具有开发技能的客户参与到商业系统的开发,那么可以缓解一些问题。而开发产品,如果能把产品流水线化,那么我想也可以或多或少地解决一些问题。当然也可以把产品利益相关话,产品开发买钱如果关系到产品开发里的每个人,产品开发就不会象现在这样了。

一句话,感觉开发那么久,开发还是没有采用敏捷思想来解决一些问题。国内的开发还是处于国外十几年前的状况,或者更远。。。。在这种开发体制下,无论哪个人开发,无论是管理和开发人员,都不会感到舒服。。