集中决策和分散决策(3)

集中决策和分散决策(3)

黄国强 2011-12-31

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

你可能感兴趣的:(架构设计,产品,测试,扩展,c,C/C++,软件工程)