Пример: как настроить Трекер для команды разработки

Трекер — инструмент совместной работы, который подходит для управления разработкой программ и приложений. В Трекере предусмотрено множество инструментов для разработчиков:

Рассмотрим пример, как настроить в Трекере рабочий процесс для команды разработки.

  1. Создать очередь для команды разработки
  2. Структурировать задачи
  3. Использовать гибкие методологии (Agile)
  4. Настроить шаблоны задач
  5. Подключить репозиторий
  6. Автоматизировать рутинные действия
  7. Интегрировать Трекер с другими системами

Создать очередь для команды разработки

У каждой команды есть сложившийся процесс планирования работы, выполнения задач, выпуска версий продукта. Чтобы настроить привычный рабочий процесс в Трекере, используйте очередь задач. Очередь — это пространство для задач, объединенных общим процессом или продуктом.

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

Чтобы создать очередь для команды разработки:

  1. Если ваша организация еще не работает в Трекере, зарегистрируйтесь в Яндекс.Коннекте и подключите Трекер.
  2. Убедитесь, что все участники команды разработки добавлены в вашу организацию в Яндекс.Коннекте, и выдайте им подписки на Трекер.
  3. В Яндекс.Коннекте создайте команду и добавьте в нее сотрудников, которые будут работать над вашим продуктом. Команду можно будет призвать в комментарии к задаче и создать для нее почтовую рассылку (если у вашей организации есть почтовый домен).
  4. Создайте очередь задач. Для очереди выберите шаблон с типами задач и статусами, которые лучше подходят для вашего рабочего процесса:

    • «Базовая разработка» — этот шаблон содержит типы задач и статусы, которые часто используют при разработке программ и приложений. При выборе этого шаблона автоматически создается простая доска задач.
    • «Разработка на заказ» — в этом шаблоне предусмотрен тип задач «Проект» и статус для согласования результатов работы с заказчиком.
    • «Скрам» — этот шаблон подходит для команд, которые работают по методологии Скрам. При выборе этого шаблона автоматически создается доска задач «Скрам».
    • «Канбан» — этот шаблон подходит для команд, которые работают по методологии Канбан. При выборе этого шаблона автоматически создается простая доска задач «Канбан».
    Примечание. Если вы выбрали шаблон очереди без доски задач, доску можно создать позже.
  5. Если вы хотите изменить возможные статусы задач в вашей очереди, в настройках очереди скопируйте базовый воркфлоу и отредактируйте его.
  6. Добавьте сотрудников, которые будут работать над вашим продуктом, в команду очереди.
  7. Если требуется, настройте права доступа к очереди. Например, определенным группам пользователей можно запретить создавать или просматривать задачи в очереди.

Структурировать задачи

В Трекере есть несколько способов структурировать задачи. Вы можете использовать их по отдельности или сочетать.

Типы задач

В очереди можно использовать несколько типов задач с разными рабочими процессами. Например, в шаблоне очереди «Базовая разработка» по умолчанию заданы типы «Задача», «Улучшение», «Ошибка» и «Релиз».

Если требуется, вы можете добавить в очередь новые типы задач и настроить для них отдельный воркфлоу — набор статусов и правила перехода между ними.

Связи

В Трекере можно связывать задачи друг с другом. Список связей со ссылками отображается на странице задачи. С помощью связей вы можете:

  • Декомпозировать задачи — разбивать крупные части проекта на отдельные задачи и подзадачи.

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

  • Показать зависимости между задачами — если выполнить задачу можно только после того, как будет закончена блокирующая задача.
  • Добавлять ссылки на задачи с общей темой.
Компоненты

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

Версии

Версии помогают группировать задачи очереди, относящиеся к одной версии продукта.

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

Использовать гибкие методологии (Agile)

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

Доска задач

Если при создании очереди вы выбрали шаблоны «Базовая разработка», «Скрам» или «Канбан», автоматически будет создана доска задач с таким же названием, как у очереди. На доске будут отображаться все задачи вашей очереди.

Вы можете создать несколько досок задач, например для разных рабочих групп или для задач разного типа:

  1. На верхней панели Трекера выберите Доски → Создать доску.

  2. Выберите тип доски.
  3. Включите опцию Добавлять задачи автоматически и задайте условия фильтра, чтобы отображать на доске задачи с определенными параметрами.

    Например, вы можете настроить фильтр, чтобы на доску попадали все задачи из вашей очереди, задачи с указанными компонентами, задачи указанных сотрудников и так далее.

Типы досок в Трекере

В Трекере можно использовать несколько типов досок:

  • «Простая» — доска с минимальными возможностями, отображает задачи команды и их статус.

  • «Канбан» — похожа на простую доску, но все задачи в статусе Открыт автоматически попадают в колонку Бэклог .

  • «Скрам» — помимо отображения статусов задач, позволяет управлять спринтами, оценивать задачи и смотреть диаграмму сгорания задач.

Инструменты на Скрам-доске

На доске «Скрам» доступны инструменты, которые помогут организовать работу по методологии Скрам:

  • Спринты

    В методологии Скрам работа выполняется небольшими итерациями — спринтами. Обычно спринт длится одну или две недели. Старайтесь планировать спринты так, чтобы за время спринта команда успела выполнить все намеченные задачи. Чтобы понимать объем запланированной работы, предварительно оцените задачи с помощью покера планирования.

    Чтобы запланировать спринт в Трекере:

    1. На доске задач в правом верхнем углу нажмите кнопку Спринты.
    2. Создайте спринт и задайте даты его начала и конца.
    3. Добавьте в спринт задачи: перетащите задачи из столбца Бэклог в список задач спринта или на странице задачи укажите спринт в поле Agile → Спринт.

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

  • Покер планирования

    Чтобы точно спланировать объем работы в следующем спринте, нужно оценить трудоемкость задач. Для этого в методологии Скрам используется покер планирования (Planning Poker). Этот метод позволяет получить независимые оценки задачи от всех участников команды, обсудить их и сформировать итоговую оценку. Обычно для оценки используют относительную единицу трудоемкости задач Strory Point.

    Вы можете использовать покер планирования в Трекере:

  • Диаграмма сгорания

    Диаграмма сгорания задач показывает скорость выполнения задач и оставшийся объем работы в течение спринта. По диаграмме сгорания можно спрогнозировать, успеет ли команда выполнить запланированные задачи.

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

    Чтобы посмотреть диаграмму сгорания в Трекере, на доске задач в правом верхнем углу нажмите кнопку Диаграмма сгорания задач.

Декомпозиция задач

В гибких методологиях разработки задачи декомопозируют следующим образом:

  • Крупные задачи, которые невозможно выполнить в течение одной итерации (спринта), называют эпиками (Epics).
  • Эпики разбивают на «пользовательские истории» (User Stories) — законченные возможности продукта, которые можно реализовать за один спринт.
  • Истории разбивают на отдельные задачи, например дизайн интерфейса, разработка бэкенда и разработка фронтенда.

Чтобы использовать такую систему декомпозиции задач, в шаблоне очереди «Скрам» предусмотрены типы задач Epic и Story. Если при создании очереди вы выбрали шаблон, в котором нет типов задач Epic и Story, вы можете добавить их в настройках очереди.

Настроить шаблоны задач

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

Чтобы создать шаблон задачи для вашей очереди и разрешить использовать его участникам команды:

  1. На верхней панели Трекера нажмите  → Управление шаблонами.

  2. Выберите опцию Задачи и нажмите кнопку Создать шаблон.
  3. Задайте название и описание шаблона.
  4. Чтобы шаблон можно было использовать только в вашей очереди, укажите ключ или название очереди в поле Привязка к очереди. В этом случае участники команды очереди автоматически получат доступ к шаблону на чтение.
  5. Заполните поля шаблона и сохраните его. Заданные значения полей будут автоматически подставляться в задачи, созданные с помощью шаблона.
  6. Чтобы настроить доступ к шаблону, рядом с шаблоном нажмите кнопку Права доступа и добавьте нужные группы или пользователей.
  7. Чтобы участники вашей команды могли использовать шаблон для создания задач:
    • У сотрудников должен быть доступ к шаблону на чтение.
    • Сотрудники должны подключить шаблон. Для этого нужно перейти на страницу управления шаблонами и включить шаблон с помощью переключателя.

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

Подключить репозиторий

Если вы используете облачные сервисы GitHub, GitLab или Bitbucket, вы можете подключить ваши репозитории к Трекеру и привязывать коммиты к задачам. Это позволит при необходимости найти изменения в коде, связанные с определенной задачей.

Ограничение. К Трекеру нельзя подключить Git-репозитории, размещенные на вашем собственном сервере.

Чтобы подключить репозиторий:

  1. Убедитесь, что вы авторизованы в Яндекс.Коннекте как администратор организации.

  2. В настройках Трекера перейдите на вкладку Репозитории и нажмите кнопку Подключить репозиторий.
  3. Выберите сервис, в котором расположен репозиторий, и укажите данные для подключения:

    • Ссылку на репозиторий.
    • Для закрытых репозиториев GitHub и GitLab — токен. Для публичных репозиториев указывать токен не нужно.
    • Для репозитория Bitbucket — ваш логин на Bitbucket и специально созданный пароль для Трекера.

    Подробнее о параметрах подключения читайте в разделе Подключить репозиторий.

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

Чтобы связать коммит с задачей в Трекере, в комментарии к коммиту укажите ключ задачи.

Автоматизировать рутинные действия

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

Рассмотрим несколько примеров автоматизации в Трекере:

Автоматически назначать исполнителя задачи

Если задача относится к области ответственности определенного сотрудника, можно автоматически назначить его исполнителем задачи с помощью триггера. Триггер срабатывает при заданных условиях и автоматически меняет параметры задачи.

Например, тестировщик должен приступать к тестированию новой функции продукта, когда разработчик перевел задачу в статус «Можно тестировать». Чтобы автоматически назначать тестировщика исполнителем задачи, настройте триггер следующим образом:

  • Условия срабатывания: задача изменилась и перешла в статус «Можно тестировать».
  • Действие триггера: в поле «Исполнитель» указать тестировщика.

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

  1. В вашей очереди настройте компоненты, которые соответствуют частям продукта: «Сервер» и «Клиент». При создании новой ошибки добавляйте в нее нужный компонент.
  2. Настройте триггер для ошибок в серверной части:
    • Условия срабатывания: задача изменилась и поле «Компоненты» стало равно «Сервер».
    • Действие триггера: в поле «Исполнитель» указать разработчика серверной части.
  3. Настройте аналогичный триггер для ошибок в клиентской части:
    • Условия срабатывания: задача изменилась и поле «Компоненты» стало равно «Клиент».
    • Действие триггера: в поле «Исполнитель» указать разработчика клиентской части.

Подробно пример настройки триггера описан в разделе Автоматически назначать исполнителя задачи.

Напоминать исполнителю задачи о дедлайне

Чтобы исполнители не забывали выполнять задачи вовремя, можно отправлять им напоминания с помощью автодействия. Автодействие срабатывает периодически и обновляет параметры задач, которые соответствуют заданным условиям.

Например, нужно раз в день проверять все задачи в вашей очереди. Если задача не решена и срок, указанный в поле «Дедлайн», наступит менее чем через 3 дня, нужно добавлять к задаче комментарий и призывать исполнителя задачи. Для этого настройте автодействие следующим образом:

  • Тип автодействия: Обновление задач.
  • Периодичность: 1 раз в день.
  • Параметры фильтра: запрос, написанный с помощью языка запросов:
    Resolution: empty() AND Deadline: <= today() + 3d
  • Действие над задачей: отправить комментарий и призвать пользователя из поля «Исполнитель».

Подробно пример настройки автодействия описан в разделе Пример автоматического обновления.

Создавать повторяющиеся задачи

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

Для этого настройте автодействие следующим образом:

  • Тип автодействия: Создание задач.
  • Периодичность действия: 1 раз в неделю по пятницам.

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

  • Действие в очереди: создать задачу. Заполните поля шаблона для автоматического создания задач.

Подробно пример настройки автодействия описан в разделе Пример автоматического обновления.

Интегрировать Трекер с другими системами

Разработчики используют в своих процессах различные системы для сборки, тестирования, развертывания приложений и так далее. Работать с несколькими системами будет удобно, если в задаче Трекера можно будет найти ссылки на связанные ресурсы или задачи в других системах. Чтобы передавать в Трекер информацию из сторонних систем, используйте API Трекера. Подробнее о возможностях API Трекера читайте в документации.

Чтобы передавать информацию из Трекера в другую систему, можно отправлять HTTP-запросы с помощью триггеров.

Рассмотрим примеры, как можно связать Трекер с другими системами.

Отслеживать статус ревью кода

Предположим, что команда использует репозиторий Bitbucket. Когда разработчик делает пул-реквест в репозиторий, его коллеги проводят ревью кода и принимают либо отклоняют пул-реквест. Если пул-реквест принят, разработчик переводит свою задачу в статус «Можно тестировать», а если отклонен — в статус «Нужны доработки».

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

  1. Разработчик делает пул-реквест и указывает в комментарии ключ задачи. Это поможет определить, статус какой задачи требуется изменить.
  2. В Bitbucket должен быть настроен веб-хук: когда ревьюер принимает или отклоняет пул-реквест, Bitbucket отправляет HTTP-запрос в промежуточный сервис.
  3. Промежуточный сервис получает запрос, определяет тип события (был ли рул-реквест принят или отклонен) и извлекает из комментария к пул-реквесту ключ задачи.
  4. Промежуточный сервис отправляет в API Трекера запрос на изменение статуса задачи. В URL запроса должен быть указан ключ задачи и ключ статуса. Ключ статуса можно посмотреть в настройках Трекера на вкладке Статусы задач .

    Формат запроса описан в документации API.

Привязать к задаче тестовый стенд

Чтобы тестировать новые функции продукта, обычно используют тестовые стенды. Если идет параллельная разработка нескольких функций, удобно создавать отдельный стенд для каждой задачи. Чтобы такой стенд было легко найти, ссылку на него нужно добавлять в задачу. Это можно делать автоматически с помощью API Трекера.

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

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

  1. В Трекере создайте новое поле задачи«Ссылка на стенд».
  2. При разработке новой функции продукта создавайте в репозитории отдельную ветку, в имени которой должен быть указан ключ задачи. Ключ задачи потребуется для отправки запроса в API Трекера.
  3. После того как скрипт развернул тестовый стенд, он отправляет в API Трекера запрос, который добавляет адрес стенда в поле задачи «Ссылка на стенд». В URL запроса должен быть указан ключ задачи, а в теле запроса — ключ и новое значение поля. Ключ поля можно посмотреть в настройках Трекера на вкладке Поля .

    Формат запроса описан в документации API.

Отправлять оповещения в мессенджер

Для быстрого оповещения сотрудников о важных событиях удобно использовать мессенджеры. Если у мессенджера есть API, в Трекере можно настроить триггер, который отправляет в API мессенджера HTTP-запросы при наступлении определенных событий. Например, если в очереди создается ошибка с критическим приоритетом.

Примеры настройки триггеров для отправки уведомлений в Slack и Telegram приведены в разделе Интеграция с мессенджерами.