Декомпозиция и таск-менеджер: как эффективно разбивать проект на задачи. Личный опыт

Декомпозиция и таск-менеджер: как эффективно разбивать проект на задачи. Личный опыт

Насколько быстро цифровой продукт выйдет в свет зависит от многих факторов: сколько времени уйдет на создание дизайн-макета и написание кода, сколько багов будет в нем найдено на этапе тестирования и прочее-прочее. На каждом уровне согласования будут свои условия, которые неизбежно влияют на сроки и качество. Как эффективно управлять этим процессом, чтобы клиент остался доволен, а сотрудники не выгорели после релиза, а также какой таск-менеджер оказался наиболее эффективным для нас, рассказал начальник проектного отдела Fusion Tech.

В самом начале пути, на этапе планирования проекта (проектного менеджмента), и вплоть до реализации на скорость выхода конечного продукта и его качество будут влиять следующие факторы:

- как описана задача (насколько подробно и доступно изложена для понимания всем членам команды);

- на какие поделена части (как она декомпозирована*) и поделена ли вообще.

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

ПЛЮСЫ ДЕКОМПОЗИЦИИ*

*Декомпозиция или разбивка задач на мелкие части позволяет проще осознать, оценить и в конце концов выполнить быстрее и эффективнее одну большую задачу.

Декомпозиция помогает:

  • окинуть взглядом весь проект, лучше понять его общую структуру;
  • правильно спланировать предстоящие задачи и наметить взаимосвязи между ними;
  • выделить приоритеты;
  • эффективнее управлять работами и распределять ресурсы (люди, время, деньги) между задачами;
  • контролировать прогресс и результаты.

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

К примеру, возьмем создание бизнес-мессенджера. Казалось бы, главная фича продукта — сообщения, но не все так просто. Если разложить задачу на кирпичики, то появятся дополнительные функции:

  • наличие/отсутствие форматирования при наборе;
  • оповещение о новом сообщении;
  • повторная его отправка, если оно не достигло адресата;
  • сохранение сообщения в черновике;
  • редактирование или удаление отправленного сообщения;
  • “закрепление” или добавление его в папку “Избранное”;
  • оповещение о прочтении;
  • эмоджи и многое другое.

Реальный случай из нашей практики

В компанию обратился давний партнер, чтобы улучшить разработанное ранее приложение по онлайн-бронированию нянь. Задача заключалась в добавлении еще одного раздела — новый “Тип работы”, который отличается от существующего несколькими параметрами. Звучит вполне легко, однако при последующей декомпозиции начинает всплывать масса нюансов:

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

Таким образом, с учетом особенностей старого кода и сложной бизнес-логики, наша оценка на полную реализацию задачи с тестами возрастает с 1-2 дней до 2-3 недель.

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

МИНУСЫ ДЕКОМПОЗИЦИИ И КАК ИХ ИЗБЕЖАТЬ

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

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

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

ИНСТРУМЕНТЫ ДЛЯ ДЕКОМПОЗИЦИИ

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

Среди наиболее популярных таск-менеджеров можно выделить следующие:

  • Jira;
  • Wrike;
  • Trello;
  • Asana;
  • Things;
  • ClickUp;
  • Todoist;
  • Habitica;
  • Basecamp;
  • Worksection;
  • и многие другие.

КАКУЮ СИСТЕМУ ВЫБРАЛИ МЫ И ПОЧЕМУ?

На этапе стартапа мы использовали Trello — это отличный инструмент для небольших проектов. Но с ростом команды и повышением уровня сложности задач нам в нем стало тесно. Около трех лет назад мы перешли на другой популярный сервис. Долго выбирали между конкурентами, рассматривали и привычную многим Jira, и Monday, и бесплатный опенсорсный Redmine. Но по совокупности функциональностей, удобству, поддержке и стоимости наиболее привлекательным для нас на тот момент оказался ClickUp.

Преимущества ClickUp:

1) Удобная иерархическая структура системы, интуитивно понятный интерфейс, гибкие настройки и кастомные поля в задачах, огромное количество интеграций. Например, на проектах мы используем интеграцию с Gitlab и Github, к конкретным задачам подтягиваем ветки из репозиториев (хранилищ данных), в рамках одной задачи можно видеть все коммиты, состояние ветки, комментарии и так далее. Это очень удобно для работы код-ревьюера или техлида, которые следят за качеством кода и архитектурными решениями.

2) Помимо базового набора любого таск-менеджера: создание досок проектов и задач, есть также свой “Notion” для составления документации и базы знаний, тайм-трекер, конструктор дашбордов и целей. В ClickUp Docs, например, мы ведем базы знаний по проектам, где хранится документация и полезные ссылки, к которым имеют доступ все члены команды — нет необходимости “бегать” по разным продуктам и искать нужную информацию. Еще один плюс — база знаний сразу связана со спейсом проекта. В нем можно составлять проектную документацию, строить иерархический документ с глубокой вложенностью и встроенными ссылками на внешние ресурсы.

3) Мы используем ClickUp в первую очередь для работы над проектами, но также удобно применять его для управления задачами внутри отделов и их взаимодействия между собой.Система позволяет размещать в одном месте необходимые данные и внутренние доски проектных менеджеров: можно быстро переключаться между задачами, не покидая один инструмент.

ПРОЦЕСС СОЗДАНИЯ ЗАДАЧ В ТАСК-МЕНЕДЖЕРЕ

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

В целом, процесс создания задачи в таск-менеджере можно изобразить так:

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

В зависимости от задачи (разработка, багфиксинг (поиск багов), исследование и так далее) эта схема может дополняться или сужаться. На примере самых популярных задач покажем, как это происходит:

  • Разработка: если требуется создать новую фичу, то в структуре таска (задания) обязательно будет User Story, Acceptance Criteria, ссылки на дизайн, документацию, на родительские или связанные с ней другие задачи.
  • Багфиксинг: если цель направлена на исправление ошибок, то кроме описания самого бага (что, где и при каком условии происходит или не происходит), следует добавить предусловия и шаги воспроизведения, ожидаемый и фактический результат, скриншоты и запись экрана.
  • Исследование: помимо задач на разработку или багфиксинг, мы используем и Spike-задачи. Они нужны, когда требуется создать новый, ранее не известный продукт. Обычно в такой задаче описывается, какой конечный результат мы хотим получить, какой инструмент или технологию для этого следует использовать.

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

Новости из мира IT-технологий, о трендах индустрии, бизнес-сервисах и не только — в ТГ-канале или на сайте Fusion Tech.

Читайте также:

88
2 комментария

Спасибо, очень информативная статья!

2
Ответить

Благодарим за мнение)

Ответить