��若两个人之间需要通信,则在这两人之间存在一条通信路径。如果一个软件开发组有n个人,每两人之间都需要通信,则总的通信路径有 n*(n-1)/2(条),如图9.14所示。假设一个人单独开发软件,生产率是5000行/人年。若4个人组成一个小组共同开发这个软件,则需要6条通信路径(如图(a)所示)。若在每条通信路径上耗费的工作量是250行/人年。则组中每人的生产率降低为:

����5000-6×250/4 = 5000-375 = 4625 行/人年。

如果小组有6名成员,通信路径增加到15条(如图(b)所示)。每条通信路径消耗的工作量不变,则小组中每个成员的软件生产率降低为

����5000-15×250/6 = 5000-625 = 4375 行/人年。


��从上述简单分析可知,一个软件任务由一个人单独开发,生产率最高;而对于一个稍大型的软件项目,一个人单独开发,时间太长。因此软件开发组是必要的。有人提出,软件开发组的规模不能太大,人数不能太多,一般在2~8人左右为宜。
  
图示


图9.14 软件小组中的通信路径
��