В проектах, где участвуют десятки продуктов и команд, есть внешние системы и сложная среда заказчика с множеством ограничений, особенно важно выстроить работу так, чтобы решение оставалось связным и реализуемым на всех уровнях.
Антон, архитектор решений в Naumen, поделился методологией, которая помогает учитывать ограничения среды заказчика и последовательно проходить путь от бизнес‑целей до инфраструктуры.
С чего начинается работа
В сложных проектах я всегда начинаю с верхнего уровня — с бизнес‑целей. На их основе формируются понятные бизнес‑задачи, процессы и процедуры.

Только после этого можно спускаться на следующий уровень и прорабатывать, какими функциями каких систем эти задачи будут реализованы.
Когда задачи и функции определены, я перехожу к тому, как несколько систем должны взаимодействовать между собой при решении задач.
Почему ИБ — отдельный слой
Аспекты информационной безопасности я всегда выделяю в отдельный шаг. Требования ИБ часто оказывают значительное влияние на архитектуру, а проработка этого уровня требует специфической квалификации исполнителя.
Если не учесть эти требования заранее, решение может оказаться нереализуемым в среде заказчика.
Как быть с инфраструктурой
После логики и ИБ я перехожу к вопросам инфраструктуры, на которой все будет работать: от системного ПО, такого как СУБД или ОС, до железа. Важно убедиться, что технические ограничения не делают решения, принятые на верхних уровнях, нежизнеспособными.
Почему важно пройти путь обратно наверх
Когда все уровни проработаны, я иду в обратном направлении — снизу вверх. Это помогает убедиться, что:
ограничения нижних уровней не противоречат решениям, принятым наверху;
исходные бизнес-задачи по‑прежнему решаются.
Нередко при такой проверке становится видно, что ограничения более низкого уровня не позволяют реализовать решение, которое казалось корректным на верхнем уровне. В этом случае я корректирую решение на более высоком уровне и повторяю путь вниз, а затем снова поднимаюсь наверх.
Если в финале все бизнес‑задачи по‑прежнему решаются — мы пришли к рабочему варианту архитектуры.
Что помогает сохранять связь между уровнями
На каждом этапе меня очень выручает трассировка требований. Она позволяет видеть, где именно реализуется каждая бизнес-задача, какие системы в нее вовлечены и как изменения на одном уровне влияют на другие. Без этого легко потерять связь, особенно если в проекте много команд и подсистем.





