Границы, которые держат систему

Фотография из набора Twenty Twenty-Five, общественное достояние

Демонстрационная публикация. Это пример оформления, а не текст автора сайта.

Систему легко описать списком частей. Труднее сказать, где она заканчивается. Пока граница не названа, каждая новая задача кажется внутренней: ещё один модуль, ещё один отчёт, ещё одна договорённость. Объём растёт, а мысль о том, что именно система обязана сохранять, размывается.

Каменные руины с чётким контуром стен
Граница видна даже тогда, когда внутреннее устройство уже изменилось. Изображение темы Twenty Twenty-Five, общественное достояние.

Что считается входом

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

Полезно держать короткий перечень. Кто передаёт данные. В каком виде. Что происходит, если данные не пришли или пришли дважды. Эта запись не заменяет проект, но не даёт границе остаться устной привычкой.

Что система отдаёт наружу

Выход тоже стоит ограничить. Наружу уходит не внутренний ход мысли, а результат, на который можно опереться: статус, документ, изменённая запись, сигнал о сбое. Если соседи читают внутренние таблицы напрямую, граница уже не держит. Любая перестановка внутри становится чужой проблемой.

  • Один понятный результат вместо набора промежуточных следов.
  • Имя и срок, чтобы результат можно было найти.
  • Явный отказ, когда работу выполнить нельзя.

Где можно менять устройство

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

Пишущая машинка на столе
Фиксировать договорённость полезнее, чем помнить её. Изображение темы Twenty Twenty-Five, общественное достояние.

Связи, которые не стоит прятать

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

Граница нужна не для того, чтобы отделить людей, а чтобы изменение в одном месте не становилось сюрпризом в другом.

Демонстрационная формулировка для проверки цитаты

Короткий порядок проверки

  1. Назвать, что входит и что выходит.
  2. Проверить, нет ли скрытого чтения чужих внутренностей.
  3. Оставить один пример удачной и один пример неудачной передачи.
  4. Решить, какое изменение внутри не требует согласия снаружи.

Такой конспект не делает архитектуру за автора. Он только показывает, как длинная статья может держать широкое фото, внутренний кадр, список, цитату и несколько уровней заголовков. Слова «её», «ещё» и «объём» здесь стоят нарочно, чтобы было видно кириллицу, включая ё и й в соседних заметках.

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

Как не раздуть описание

Когда границу уже можно показать на одной странице, появляется соблазн добавить исключения. Исключение полезно, только если без него система принимает чужую работу или отдаёт наружу то, чего не обещала. Остальные случаи лучше оставить внутри и не выносить в общий договор.

Имеет смысл отдельно записать, что система не делает. Не хранит историю чужих решений. Не превращает черновик в обязательство. Не обещает срок, который зависит от соседней службы. Отрицательный список часто короче положительного и быстрее снимает ложные ожидания.

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

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

Что оставить на потом

Не стоит в первом описании решать имена полей, цвета статусов и точный текст ошибок. Это внутреннее устройство. Его можно менять, пока снаружи сохраняется обещанный результат. Запись про границу заканчивается там, где начинается реализация. Иначе документ устаревает в тот же день, когда меняется первый шаг внутри.