Мой профиль...

Search This Blog

Tuesday, December 9, 2014

Закон Конвея - Conway's law

Итак, Джон Конвей когда-то заявил что:
Organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations
что можно перевести как:
Организация которая разрабатывает систему ... вынуждена делать систему по структуре повторяющую структуру коммуникаций внутри организации
В общем если в компании разрабатывающей ПО есть 3 отдела, которые занимаются этим проектом, то он, с точки зрения архитектуры, будет представлять из себя 3 больших модуля.

Или если у вас есть 2 офшорные команды, то и проект будет состоять из двух частей.

Причем если эти команды тесно общаются, например устраивая ежедневные skype митинги и вообще, то и модули будут тесно связаны — например единая сборка, репозиторий, документация, трекер, но разные библиотеки лежащие рядом. Но если общаются лишь переписываясь по email, то получите связь через какой нибудь RESTful API.
Десятки раз видел подобные примеры.

Или, как сказал Эрик Реймонд:
Если у вас есть 4 команды разрабатывающие один компилятор — вы получите компилятор работающий в 4 прохода (4-pass compiler)
См. закон на википедии: Conway's law

No comments:

Релевантные посты...

Related Posts with Thumbnails