PRISMATICA
← Блог

Проектирование архитектуры системы: что решается до первой строки кода

8 мин чтенияПредпроектное обследование

Проектирование архитектуры — это не картинка со стрелками между квадратами. Это набор решений, каждое из которых потом дорого менять: откуда система берёт данные, что считается истиной при расхождении, какие роли существуют и что происходит, когда внешний сервис недоступен. Если эти ответы не получены до разработки, их всё равно придётся дать — только уже под давлением сроков.

Что проектируется до кода

  • Источник правды по каждому блоку: заказы, документы, остатки, платежи, статусы. Один блок — один источник.
  • Интеграции: с чем связываемся, по какому протоколу, с какой частотой и кто отвечает за справочники.
  • Роли и права: кто что видит, кто что меняет, как выдаётся и отзывается доступ.
  • Жизненный цикл документа или заявки: состояния, переходы, кто и на каком шаге принимает решение.
  • Поведение при отказе: что показывает система, если 1С, банк или внешний сервис недоступны.
  • Данные, которые нельзя терять: журнал изменений, история статусов, требования по защите.
  • Этапы: что выходит в первом контуре, что во втором, где точки проверки.

В управленческом контуре для группы из пяти агропроизводств проектирование началось именно с этого списка: обследование процессов, источники данных, роли пользователей. Дальше появились архитектура решения и интеграционный слой, и только после этого — подключение 1С, СКУД и внутренних баз пяти производств. Итог: 63 пользователя, данные за предыдущий день вместо недельного ручного сбора, шесть месяцев от обследования до сдачи.

Роли проектируются раньше интерфейсов

В многоролевой системе главный источник переделок — интерфейс, собранный «по сущностям базы», а не по задачам ролей. В системе оценки квалификации для СПКФР работают пять ролей со своими интерфейсами: соискатель, эксперт, центр оценки, совет и администратор. Заявление, экзамен, протокол и передача сведений в реестр идут одним процессом вместо переписки и файлов — и каждая роль видит свою очередь задач. Плюс три внешние интеграции и требования 152-ФЗ к защите данных: три месяца до ввода в эксплуатацию.

  • Сначала описывается маршрут процесса, потом экран, который его обслуживает.
  • Права доступа фиксируются до разработки: кто видит, кто меняет, кто утверждает.
  • Состояния показываются явно: на каком шаге документ, кто следующий, что блокирует.
  • История действий доступна: кто изменил статус, когда и на каком основании.

Интеграции: где чаще всего ломается проект

Интеграция — это не «обмен по API», а правила совместной жизни двух систем. Проверяются четыре вещи: кто владеет справочником, с какой частотой идёт обмен, как разрешаются конфликты и что система делает при недоступности второй стороны. Если эти правила не заданы, проект идёт в срок, а потом месяцами лечит расхождения.

  • Справочники: номенклатура, контрагенты, подразделения — у каждого должен быть владелец и правило создания.
  • Частота обмена: реальное время, раз в час или по событию. Это выбор, а не следствие технологии.
  • Конфликты: кто побеждает, если данные изменились в двух местах, и как это видно пользователю.
  • Деградация: что показываем, когда источник недоступен, и какие действия блокируем.
  • Проверка: как убеждаемся, что данные сошлись — сверки, а не «мы посмотрели глазами».
До открытия приёма заявок было семь дней, сайта не было, даты утверждены официальным положением и перенести их нельзя. Мы запустили первый релиз платформы премии, а затем по ходу проекта превратили её в систему: заявки с модерацией, каталог участников, двухэтапное голосование и антифрод. В итоге — 871 участник и более 50 000 голосов.
Кейс: платформа региональной премии «Человек труда»

Как выглядит результат проектирования

Результат — не презентация, а рабочий документ, по которому можно оценивать бюджет и запускать разработку: карта процессов, перечень ролей и прав, схема интеграций с владельцами данных, перечень сущностей и состояний, план этапов с составом первого контура. Плюс честный список того, что в проект не входит.

  • Требования к системе на понятном языке — согласуются с руководителями, а не только с ИТ.
  • Схема интеграций: системы, протоколы, частота обмена, владельцы справочников.
  • Модель ролей и прав, включая администратора и внешних участников.
  • План этапов с содержанием первого контура и точками проверки результата.
  • Оценка бюджета и сроков — с допущениями, названными вслух.

Сколько это стоит и сколько занимает

Базовое обследование — 50 000 ₽ за 7 дней: процессов и требований хватает, чтобы запускать разработку. Расширенное — 75 000 ₽ за 10 дней: добавляется экономическое обоснование и материалы, с которыми можно защищать бюджет перед руководством или советом директоров. Проектирование дешевле первой переделки: пересмотр архитектуры после запуска обычно стоит как несколько обследований.

Нужно спроектировать систему до разработки?

Проведём обследование, зафиксируем требования, роли, интеграции и этапы. На выходе — документ, по которому можно считать бюджет и начинать работу.