10月22日消息,据Jessitron报道,几天前,在匈牙利首都布达佩斯,我和耶斯·哈姆博(Jez Humble)探讨过这样一个问题:对于团队来说,CAP定理同样适用吗?在分布式数据库系统中,CAP定理指的是Consistency(一致性)、 Availability(可用性)、Partition(分区),三者不可兼得。如果一定要在三者中选择2个,必须要有Partition。
比如在开发软件时,除非这个软件全部都是由1个人开发的,否则我们必须要选择Partition,因为我们无法将所有人的思想都融合起来。在数据库中,我们需要在Consistency (保持数据相同)与Availability(总能获取数据)之间做出选择。
而随着团队扩大,我们需要在Consensus (以同样的理由和方式做事)与实际完成工作之间做出选择。换句话说,我们需要在Moving Together与Moving Forward之间找到平衡。
1.Moving Together
第一组的研究毫无价值。尽管决策是一致的,所有工作也都在顺利进行,但输出非常有限。当有人生病时,所有工作都要停止。
第二到第七组的研究比较理想:团队成员通过积极沟通,交流想法,整体对话输出足以弥补互相交谈损耗的时间成本。对于团体中的每个人来说,建立彼此的“心智模型(mental model)”是非常可行的,他们可以了解其他人想要知道的东西。当每个利益相关者都是其他人的朋友时,很容易达成一致性。
当超过1个团队时,就需要对合作协调的成本进行权衡。以2到7人组成、需要密切合作的团队为例,可以用下面这种细高的空心箭头代表他们的输出潜力。