TGViewer
(Не)Системная аналитика by Андрей Царев (Не)Системная аналитика by Андрей Царев @notsystemanalysis · 7.57K subscribers
Post #438 5.08K
Документация. Документация никогда не меняется

Хочу сегодня поговорить об основном артефакте аналитика - документации. Сколько ни работал, практически всегда дока ведется с какими-то косяками. Как минимум, присутствует технический долг или некоторые разделы теряют актуальность. А «задачи на развитие» звучит как «ну, у нас есть сервис, который кто-то когда-то сделал, но не описал, вот займись».

Давай про доку, которую ведут в конфе (или любой другой вики-подобной системе). Я вижу 2 подхода, как можно действовать: создавать описание системы (и прямо в нем вносить изменений) и хранить описание отдельно, а «постановки» на разработку отдельно.

С описанием системы плюс минус понятно - мы по слоям описываем, что у нас есть. Базы данных, с таблицами, атрибутами и связями между ними. Методы бэка, которые вызываются на каждом из слоев. Топики брокера, с указанием консьюмеров и продюсеров. Наконец, фронтенд, где показываем макеты и поведение элементов. Идеально, если у нашего проекта есть отрисованная архитектура, которую можно использовать для «взгляда сверху».

Как вносить изменения? В каждом слое вносишь изменение цветом, указываешь, какая логика добавилось, что удалилось. В истории изменений и в задаче пишешь, какой цвет использовался. Также, в задаче коротко описываешь суть и прикладываешь набор ссылок. На выходе получаем:
1) Таску, где коротко описано, что нужно сделать.
2) Страницы конфы, где уже выделены конкретные куски, которые разрабу нужно поправить
В момент, когда задача заливается в прод, все это добро нужно перекрасить, так будет понятно, что функционал крутится в боевой среде.

Какие минусы? Документация будет похожа на светофор.
Плюсы - все в одном месте, нет никакой «другой» документации.

И второй подход - описание системы отдельно, «постановки» отдельно. Описание создается точно также, единственное, туда не вносятся изменения цветом.

А вот «постановки» - это страницы в конфе, где описываются все моменты, которые надо изменить. Вносим такую-то правку в бд (ссылка на бд), вносим правку в бэк (ссылка на бэк) и т.д. Это может быть удобно для разработчика, ведь ему не надо прыгать по страницам, но минусов, как по мне, сильно больше.

1) Тебе придется делать двойную работу - писать в одном месте, и переносить в другое. Это явно дольше, чем перекрасить текст.
2) Описание системы сто процентов будет неактуальным, потому что где-то там есть «постановка» в которой логика будет меняться. Плюс кто-то забудет внести изменения после выкатки и все, кранты.
3) Типичная ситуация - коллега внес изменения в сервис, его «постановка» ждет разработки. Тебе прилетает задача, которая предполагает внесение правок в тот же сервис. Но, ты уже можешь работать по неактуальной документации. Да, есть дейлики, где ты слушаешь, кто чем занят, но надеяться на «авось услышу» глупо.

Я не сторонник второго подхода, считаю, что он порождает слишком много лишней работы. А что думаете вы? Как ведется документация у вас?
  • ❤ 26
  • 🔥 16
More from @notsystemanalysis
  1. Sep 21, 2026Цикл работы агента «Напиши мне в сваггере три метода», попросил я как-то агента, который в…
  2. Sep 18, 2026Друзья, нужна ваша помощь У нашего ученика Вадима нашли рак ободочной кишки в 19 лет. Несм…
  3. Sep 18, 2026Почему тебе не нужно перегружать контекст лишней инфой Ситуация: работаешь себе с нейронко…
  4. Sep 16, 2026Обучение с куратором в октябре 5 октября стартует очередной групповой поток с куратором, в…
  5. Sep 15, 2026Покидайте курсы по ИИ для чайников (не себе, честное слово, подруга попросила)
  6. Sep 14, 2026Агент vs Чат «Я составил реально грамотный промпт, закинул его в чат и получил результат.…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →