集中决策和分散决策(3)
黄国强 2011-12-31
根据我多年的开发经验,在以下几个方面得出一些结论:
1 项目的规模和难易程度
首先,对于比较小的简单项目,采用集中决策的写法,代码结构清晰,优势很明显。而对于大的复杂项目,采用分散决策比较好。分散决策写法可以分出大量的模块供多人同时开发,而且每个模块的规模也比较好控制,便于测试和管理。
2 产品生命周期
对于很多一锤子买卖的项目来说,采用集中决策写法可以节省大量的前期分析时间,软件质量可以通过程序员以及测试员来保证。由于是一次性的项目,无需考虑产品的未来的扩展性。
而对于一个准备从1.0做到6.0的产品,采用分散决策显然是明智的。前期在架构设计上的投入是完全必要而且划算的。
3 团队组成以及成员的经验和水平
对于习惯了集中决策式写法的团队来说,贸然引入分散决策的写法风险很大。可以从一些小的项目开始积累一些这方面的经验,虽然小项目用集中决策的写法更好。