Всем привет. Меня зовут Татьяна Цикунова. Я системный аналитик в компании МойСклад. В этой статье расскажу о том, как организовать оперативный обмен информацией между участниками проекта и поддерживать документацию в актуальном состоянии. Отдельное внимание уделю работе с таск-трекерами — подробно опишу шаблон тикета, который успешно используется в нашей компании. Однако если вы работаете без трекера задач, например, в ворд-файлах, суть от этого не меняется — такой подход работает и с другими инструментами.

Я документирую системы больше 3 лет, и за это время успела поработать в разных сферах. Начинала в финтехе, где успела поработать в разных командах. Потом перешла в МойСклад — здесь углубилась в e-commerce направление. Сейчас вместе с командой делаем интеграции с интернет-магазинами и маркетплейсами. За годы работы я убедилась, что не существует единого стандарта ведения документации — каждая компания и даже отдельные команды внутри одной организации вырабатывают свои подходы.
Однажды в МоемСкладе мы задумались: почему бы не начать системно собирать важные данные, которые появляются на разных этапах разработки? Ведь эти сведения могли бы стать отличной основой для обновления документации к реализованному ПО. Так и появились требования и рекомендации по описанию тикета.
Основные проблемы при работе с постановкой задач
Сначала давайте выделим проблемы, которые возникают при работе с документацией:
Изменение постановки задачи в процессе разработки ПО
Изменения могут быть разные. Например, в процессе разработки появляется альтернативный взгляд на решение проблемы/реализации исходной модели требований. Тогда приходится придумывать новую логику и описывать ее в постановке. Или на каком-либо из этапов реализации изменилось законодательство, и пришлось переписывать бизнес требования. Если не фиксировать апдейты, то на выходе у участника разработки, который будет обновлять документацию реализованного ПО, не будет актуальной информации.Информация хранится в разных местах
Разработчики и тестировщики вынуждены фиксировать решения и изменения, которые возникли в процессе производства в разных местах: треды в Slack/Telegram/Mattermost, письма на почте, устные договоренности. Эта информация легко теряется, а единого места для ее хранения нет.В процессе работы возникают сложности с отслеживанием изменений, поскольку в проекте много участников
Итак, основной вопрос: Как нам работать над задачей так, чтобы было легко и просто фиксировать изменения или детали фактической реализации на протяжении всей работы? Логичным предложением будет фиксировать все важное в одном месте. Тикет становится главным документом, сопровождающим задачу на всех этапах ее жизненного цикла. Поэтому логично использовать его как централизованное хранилище всей ключевой информации.
Шаблон тикета
Чтобы не заполнять тикет с нуля каждый раз, нужно позаботиться о создании шаблона. Этот процесс должен исходить из опыта команды/компании, из выстроенных процессов и потребностей.
Шаблон — это основа для автоматического заполнения тикетов. Хотя каждая команда может дополнять шаблон своими разделами (например, команды мобильной разработки добавляют информацию о версиях приложений), мы выделили общие обязательные блоки для всех. Такой подход позволяет любому сотруднику понять структуру чужого тикета.
Расскажу, как мы сделали такой шаблон в МоемСкладе.
Состав шаблона
Из чего состоит шаблон:
Бизнес-требования
Постановка задачи
Раздел Разработка
Раздел Тестирование
Раздел Миграция данных
Раздел Откат
А теперь давайте кратко пройдемся по каждому разделу, и посмотрим, какой информация вносится в каждый из них.
Раздел: Бизнес-требования

Это раздел бизнес-требований. Он заполняется в процессе заведения тикета. На этапе жизненного цикла TODO.
Его задача — зафиксировать наличие проблемы или пожелания, сформулировать исходное описание: нового процесса, функциональности, изменений UI и т.д.
Из описания должно быть понятно:
что это за изменение
мотивация — цель тикета (зачем) и заинтересованные в его исполнении (для кого)
ожидаемый результат
Описание может быть сделано в свободной форме. Желательно указывать в составе бизнес-требований цель разработки. Важно, чтобы формулировка задачи однозначно отражала ожидаемый результат.
Если триггером для заведения тикета стала ошибка, то нужно описать следующее:
Описание ошибки: Последовательность действий, которую выполнял пользователь. Скриншоты, видео, логи, переписки и другие материалы, которые могут помочь проанализировать ошибку.
Ожидаемый результат: ожидаемый результат, со ссылкой на требования к реализации - ссылка на Confluence (раздел <название раздела>), если он описан в документации.
Фактический результат: реальное состояние и поведение, его отличия от ОР, что происходит на самом деле у пользователя.
Раздел: Постановка задачи

Этот раздел заполняется до оценки трудоемкости тикета.
Его задача — подготовить тикет к этой оценке. Это этап первоначального планирования работ по тикету. Заполнение раздела выполняется на этапе жизненного цикла TODO. Он может заполняться любым членом команды во время разбора бэклога или в момент планирования. В дальнейшем этот раздел может быть уточнен в ходе работ.
Это обязательный раздел в любом тикете.
Подзаголовки раздела Постановка задачи
Доработки
Здесь можно описать набор планируемых изменений и доработок, в том числе приложить подробную спецификацию требований, системный проект и т.п.
Миграция
Если на этапе планирования понятно, что миграция понадобится, это нужно указать в данном разделе. Можно указывать как простой факт, что миграция понадобится, либо описать, какие именно изменения предполагаются, если есть ясность уже на этом этапе.
Конфигурации
Нужно указать, понадобятся ли изменения в конфигурациях.
Далее рассмотрим опциональные подзаголовки.
Фича флаг
Опционально. Есть возможность заранее продумать, нужен ли для данной задачи фича флаг, если да, то как с ним работаем.
Документация
Опционально. Тут можно перечислить, какие статьи в документации необходимо исправить или создать исполнителям тикета, если это требуется.
Дизайн и маркетинг
Опционально. Тут могут быть указаны: ссылка на задачу на UI дизайн; ссылка на макет дизайна в Figma; ссылки на задачи на перевод текстов; видео-инструкция к фиче; ссылка на задачу промо-картинки фичи.
Раздел: Разработка

Этот и последующие разделы заполняются на этапе жизненного цикла IN PROGRESS. За их заполнение отвечает разработчик. Главная цель раздела — рассказать, что именно было сделано в процессе работы над тикетом.
В преамбуле раздела нужно описать в терминах функциональности: что было изменено, исправлено или удалено; какая новая функциональность была добавлена.
Подраздел MR
В нем необходимо перечислить ссылки на MR по данной задаче. Их может быть несколько. Обычно несколько MR возникает, когда для одного тикета есть изменения в нескольких репозиториях.
Далее идут опциональные подразделы.
API методы
Опционально. Можно описать какие ручки были добавлены.
Логирование и метрики
Опционально. Разработчик описывает, как найти строчки в логах, как найти дашборд в Grafana и на какие метрики смотреть.
Изменения в библиотеках
Опционально.
Unit-тесты
Опционально. Если в процессе работы над тикетом были изменены или добавлены unit-тесты, можно указать, какую именно функциональность они покрывают. Это будет полезно при ревью.
Раздел: Тестирование

Этот раздел заполняет разработчик на этапе жизненного цикла IN PROGRESS. Основная задача раздела — передать имеющиеся у разработчика сведения о скоупе внесенных им изменений и их влиянии на существующую функциональность. Этот раздел позволяет тестировщику определить, на что следует обратить внимание при тестировании помимо того, что было напрямую отражено в требованиях (в постановке задачи), а также определить скоуп необходимого регрессионного тестирования. Этот раздел помогает ответить на 2 вопроса: «Какие изменения были внесены?», «На что эти изменения могут повлиять?».
Уже на этапе тестирования тестировщики добавляют артефакты своей работы (например, тест‑лист) в комментарии к тикету. Поскольку эти документы часто содержат большой объем информации, их неудобно добавлять в тело тикета.При работе над задачами, связанными с изменениями в продукте, процесс тестирования строится несколько иначе, чем при исправлении багов. В таких случаях тест‑план обычно разрабатывается заранее — либо на этапе проектирования, либо параллельно с разработкой. Этот документ сначала вносится в общую базу тестовой документации, а потом на него просто ставится ссылка в соответствующем тикете.
Раздел: Миграция

Стоит заметить, что этот раздел будет актуален не для всех команд. Для нас это было оправданно, поскольку значительная часть задач связана с миграциями данных.
Подразделы раздела Миграция
Название
Имя файла миграции.
Тип
Тип миграции бд — ONLINE или OFFLINE.
Время на stage
Замер времени выполнения миграции на stage-окружении.
Время на проде
Оценка времени выполнения миграции на проде, сделанная на основе выполненных замеров, а также с учетом того, что на проде одновременно работают много пользователей.
Физический смысл
Описание, какие таблицы, колонки меняются, какие данные добавляются.
Бизнес-смысл
Цель изменений схемы данных.
Раздел Откат
Здесь можно указать имя файла отката, если откат миграции реализован.
Время отката на stage
Замер времени выполнения отката миграции на stage-окружении.
Флоу работы с тикетом
Итак, мы видим, что шаблон достаточно гибкий, его можно адаптировать под нужды команды.
Шаблон в тикете также служит чек-листом на всех этапах работы. Это как дополнительные края у ведра, которое постепенно заполняется. Риски расплескать содержимое увеличиваются со временем. Часто команды сталкиваются с ситуациями, когда о фича-флаге вспоминают только на предрелизном этапе или забывают обновить документацию.
Давайте подведем итоги и посмотрим на краткий флоу работы с шаблоном тикета:
Инициатор изменений создает тикет
В настройках тикета выбирается функция “Применить шаблон”
Участники команды вносят требования и постановку
Разработка вносит детали реализации и рекомендации для тестирования
Тестировщики прикладывают артефакты, которые получили в процессе тестирования
По мере приближения тикета к релизу команда начинает готовить данные к обновлению документации реализованного ПО. Если источником описания фичи остается тикет, то данные в тикете также актуализируются.
Плюсы подхода
Гибкость в использовании. Можно выделить универсальные заголовки первого уровня, а заголовки последующих уровней сделать рекомендательными
Одно место для информации по задаче, которое в доступе на протяжении всего жизненного цикла работы над задачей
Быстрота применения. Использовать шаблон в тикете легко и очень просто
Шаблон также выполняет функцию чек-листа
Внедрение. Рекомендации
Пошаговый план внедрения нового шаблона тикетов:
Назначьте ответственного за разработку шаблона
Это должен быть человек, который глубоко понимает рабочие процессы команды. Его задача — собрать требования: какие разделы должны быть обязательным, какие — опциональными, какой уровень детализации требуется для разных типов задач.Оформите шаблон визуально и напишите инструкцию по заполнению.
Настройте автоподстановку в таск-трекере.
Проведите презентацию для команды с акцентом на преимущества использования инструмента.
Проведите пилотное тестирование для части пользователей.
Соберите обратную связь участников тестирования.
Доработайте шаблон при необходимости: устраните выявленные проблемы, дополните инструкции
Масштабируйте на все проекты
Комментарии (6)
Elpi
24.06.2025 14:56В чем новизна текста? В любом трекер, с которыми я работал все это есть. Каждая фирма может адаптировать под себя, кто-то лучше, кто-то хуже. Но этапы одни и те же.
***
Не готов согласиться с разделом аналитика. Работал в фирме, где он так и назывался "Постановка". И это не формальность, а подробное изложение того, как будет решаться задача, про которую заведен тикет. Который может изменяться автором по итогам обсуждений. Но это про смысл, а не про формалистику.
А тут такой текст " задача — подготовить тикет к этой оценке. Это этап первоначального планирования работ по тикету. Заполнение раздела выполняется на этапе жизненного цикла TODO. Он может заполняться любым членом команды во время разбора бэклога или в момент планирования ".
***
Так в упомянутой фирме документация (РП и РА, прежде всего) я и писал по этим постановкам. Там все было четко и внятно расписано. Плюс макет в Figma как источник иллюстраций. В первом приближении даже без стенда тестового можно обойтись, чтобы в дедлайн уложиться.
***
Очевидно, что пользовательскую документацию невозможно делать без внятной постановки как итога работы аналитика. А уж потом "подготовка к оценке" и "любые члены команды"...Tatiana_TSikunova Автор
24.06.2025 14:56В чем новизна рождения каждого нового человека на этой планете? До него была толпа таких же...(риторический вопрос). Новизна текста именно в том, что описан кастомный шаблон, который был рожден из уникальной практики определенной компании.
Там также есть подраздел Доработки, где "Здесь можно описать набор планируемых изменений и доработок, в том числе приложить подробную спецификацию требований, системный проект и т.п." - так что не вижу противоречий с тем, о чем пишете вы. Мысль вторая: при работе по, так скажем, экстремальному аджайлу, иногда вполне достаточно требований "на коленке", без скатывания в вотерфол
"Очевидно, что пользовательскую документацию невозможно делать без внятной постановки как итога работы аналитика. А уж потом "подготовка к оценке" и "любые члены команды"..." - во-первых, не всегда нужна пользовательская документация, во-вторых, вполне себе можно написать пользовательскую документацию, если данный шаблон заполнен корректно, даже при отсутствия аналитика в команде. Посмотрите на это, как на процесс работы команды разработки без аналитика, к примеру. Вы сводите все возможные варианты работы к узкому углу зрения.
pnmv
надписи, на кубиках, должны идти в обратном порядке.
Tatiana_TSikunova Автор
Почему?
pnmv
планы, завсегда, наполеоновские. пока разберут и доведут до разработки, часть шелухи облетает. ну и так далее.
Tatiana_TSikunova Автор
да, такое бывает часто)