上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
总结:康威定律对于有效的技术团队设计至关重要
康威定律告诉我们,组织结构和团队间真实的沟通路径会直接影响所构建系统的架构。试图把软件设计看作一个独立的活动而脱离团队自身的设计是不成立的。
这个看似简单的定律影响深远。一方面,组织的设计限制了一个给定系统的可行架构数量。另一方面,软件交付的速度也会受到组织设计中团队依赖项的直接影响。
快速流动需要限制团队间的沟通。团队协作对于开发中的灰色地带非常重要,尤其是那些需要探索和专业度才能有所进展的领域。但对于执行而非探索领域来说,沟通就成了不必要的开销。
实现软件架构(以及与之相关的好处,比如交付速度或者故障恢复时长等)的一个关键方法就是使用逆康威定律:设计团队来满足理想的软件架构。我们提供了一个简单的例子,通过将数据库能力注入应用团队从而避免单体数据库,这样一来他们就有足够的自主权来维护一个独立的数据存储(可能会依赖一个核心DBA团队来推荐数据库设计或者与其他数据库保持同步)。
简而言之,在设计软件架构或者进行组织结构调整时,将康威定律纳入考虑因素之中,就能够受益于兼顾软件架构和团队设计的同态力。