Complexity Migrates
Сложность не исчезает. Она мигрирует.
Любая попытка «упростить» систему перемещает сложность в другое место. Единственный выбор — где она будет жить.
Она мигрирует.
Сложность мигрирует
Когда сложность убирают из архитектуры, она возвращается в людей. Когда её скрывают за интерфейсами, она накапливается в процессах.
Когда её выталкивают из кода, она всплывает во встречах, эскалациях и исключениях.
Архитектура как крепление
Организации часто путают перемещение сложности с её устранением. Они празднуют более чистые интерфейсы и быстрые потоки, одновременно повышая когнитивную нагрузку на тех, кто поддерживает систему.
Поэтому многие системы легко строить и тяжело эксплуатировать. Архитектура — это не удаление сложности, а пригвоздить её в нужном месте.
Локализация сложности
Хорошо спроектированная система делает сложность явной, локализованной, предсказуемой. Плохая позволяет ей растекаться, пока никто уже не может ответить, где происходят решения.
Граница слабого звена
Сложность мигрирует к самой слабой границе. Архитектура определяет, где эта граница будет. Выбор сделан всегда — вопрос в том, был ли он осознанным.