运用康威定律设计组织与架构
1. 康威定律概述
康威定律指出,设计系统的组织,其产出的设计等同于组织的沟通结构。简单来说,团队的组织方式会对软件的产出、架构和生产成果产生重大影响。若能合理运用康威定律,可使工作从开发到运营快速流动,实现高质量和良好的客户成果;反之,团队将紧密耦合,相互依赖,小的变更也可能引发严重后果。
1.1 康威定律的起源
1968 年,梅尔文·康威博士进行了一项著名实验。一个由 8 人组成的合同研究组织受委托开发 COBOL 和 ALGOL 编译器,5 人负责 COBOL 工作,3 人负责 ALGOL 工作,最终 COBOL 编译器分 5 个阶段运行,ALGOL 编译器分 3 个阶段运行。
1.2 康威定律的简化表述
埃里克·S·雷蒙德在其术语文件中对康威定律进行了简化表述:“软件的组织和软件团队的组织将是一致的,通俗来讲,就是‘如果有四个团队开发一个编译器,你将得到一个四遍扫描的编译器’”。
2. 康威定律在 Etsy 的应用案例
Etsy 在 2009 年开启了 DevOps 之旅,其技术团队是相关理念的早期开发者和倡导者。2014 年,Etsy 营收近 2 亿美元,并于 2015 年成功上市。
2.1 Sprouter 技术的问题
Sprouter 于 2007 年开发,旨在连接人员、流程和技术,最初是为了让开发人员和数据库团队的工作更轻松。它位于前端 PHP 应用程序和 Postgres 数据库之间,集中了对数据库的访问,并向应用层隐藏了数据库实现。然而,业务逻辑的任何更改都会在开发人员和数据库团队之间产生巨大摩擦。
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



