теория

Три оси, одна формула

Смотри, за курс ты уже собрал три отдельных мерила — давай наконец сложим их вместе, и всё щёлкнет.

Первое — : какое знание течёт через границу. Второе — : как далеко разнесены связанные части (разные процессы, сервисы, команды). Третье — : как часто они, как ожидается, будут меняться.

А теперь главный трюк, ради которого всё затевалось. Модульность в борьбе со сложностью держится не на силе и не на дистанции по отдельности, а на их сочетании — точнее, на их «либо-либо» (XOR):

  • сильная связь + малая дистанция — это когезия: всё, что меняется вместе, лежит рядом. Хорошо.
  • слабая связь + большая дистанция — далёкие и почти не связаны, каждый живёт сам. Тоже хорошо.
  • совпали значения — тут дисбаланс, но разной тяжести: сильная связь на большой дистанции — беда всерьёз (распределённый монолит), а слабая на малой — лишь локальная сложность: терпимо, потому что чинить дёшево, хоть и не бесплатно.

Осталась третья ось — она работает как выключатель. Если компонент почти не меняется, дисбаланс можно и стерпеть: ну неудачно разложено, но кого это трогает, если туда годами не заглядывают. Отсюда и вся формула одной строкой:

BALANCE = (STRENGTH XOR DISTANCE) OR NOT VOLATILITY

По-человечески: связь , если сила и дистанция разведены (одна высокая — другая низкая) — или если оно всё равно не меняется. Заметь, чего в формуле нет: требования «сделать связь как можно слабее». Цель не в том, чтобы убрать связи, а в том, чтобы три оси стояли в равновесии. И сразу условимся: это качественная прикидка, а не калькулятор — каждую ось огрубляем до «да/нет», порогов и точных чисел здесь нет и не будет. Дальше проверим её на живых кандидатах — начиная с тех самых Платежей.

← назад