Оставить заявку
Напишите нам

Как управлять проектами по веб-разработке

Прочитали: 826
Как управлять проектами по веб-разработке
Редакция Completo
Редакция Completo

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

156-1.jpg
 

Основы управления проектами: детализация, оценка, поэтапная реализация

Любой проект — это «слон», которого нужно «съесть». Целиком не проглотить, но его нужно употребить в пищу с минимальными затратами времени и других ресурсов.

Детализация

Придется резать — делить задачу на составляющие. Даже создание простого лендинга — это десяток этапов от художественного задания до выкладки страницы на хостинг.

156-2.png

Делим так. Сам «слон», то есть задача — это epic, большая конечная цель — сайт, лендинг, что угодно. Epic разбиваем на stories — задачи поменьше: программирование, верстку, дизайн, создание контента.

Далее, детализируем процессы до неделимых задач, каждая из которых займет 4–6 часов. Такие задачи называются Tasks. Список задач может быть очень большим — это норма; так на самом деле легче работать.

156-3.pngСписок Tasks (синяя иконка) и Stories (зеленая иконка) внутри одного epic (неполный список)

Пример. В программе постановки задач Jira мы создали epic под названием «Главная страница». Внутри — stories, подзадачи: «прорисовать», «закодить», «написать текст», «подобрать иллюстрации». И в каждой такой stories-задаче у нас несколько Tasks. Это мелкие задачи, каждая из них занимает до 4 часов. Например, в story «Нарисовать дизайн сайта» у нас будет task «Нарисовать шапку» или «Нарисовать иконки».

Хорошая задача (task) длится максимум 4 часа и уже не может быть разбита на более мелкие задачи — без абсурда вроде «Вдохнуть, включить лэптоп, кликнуть лкм, выдохнуть». У любой задачи должны быть ответственные, то есть исполнители.

156-4.jpg

Если epic — создать главную страницу сайта, то одна из stories — «Написать тексты для главной», а tasks будет очень много: «Заполнить бриф», «Написать тексты», «Защитить тексты перед клиентом», «Отредактировать тексты».

156-5.pngВ Jira можно связать крупную задачу (story) с более мелкими (tasks)

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

Оценка

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

Оценить более мелкую задачу проще, чем крупную. Сложно оценить задачу «Собрать ядро запросов&raquo. Сделать это намного проще, если разбить ее на  максимально односложные задачи: «Собрать кластеры запросов», «Собрать по кластерам в нужном формате», «Свести данные в Excel» и так далее. Создавайте отдельный task для каждого шага — тогда будет легче понять, во что обойдется выполнение задачи.

156-6.pngОценка общего списка задач внутри эпика в Jira

При оценке задачи мы выставляем оценочное время (estimated). Это наш прогноз временных затрат. Выполняя задачу, исполнители заполняют графу с фактически затраченным временем (logged).

156-7.pngВ Jira оценка задачи (estimated) показывается в блоке Time Tracking
 

Поэтапная реализация

В сутках — ограниченное количество рабочих часов. Для того мы и применяем детализацию, чтобы осознанно использовать временные циклы. Обычно в веб-разработке цикл занимает рабочую неделю. В начале недели на планерке мы смотрим, какую часть «слона» мы «съели» и приступаем к новому циклу.

Когда мы разбиваем «слона» на задачи, мы расставляем таски в рамках временного недельного цикла. В Jira мы видим, кто и что делает на этой неделе. При этом человек может не делать задачи по списку, а выбирать ближайшие и важнейшие таски из существующих. Можно одновременно делать несколько задач по частям, а программа покажет прогресс по каждому таску.

156-8.pngЗеленым цветом выделяется прогресс выполнения задачи

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

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

156-9.pngПример таблицы управление проектом в Google Sheets
 

Как ставить задачи в Jira

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

 

Четко сформулируйте задачу

Как придумывать удобные и полезные названия задач? Название хорошей задачи отвечает на вопрос «что делать». «Сверстать страницу „О компании“», «Написать текст для страницы „О нас“», «Показать клиенту анимацию кнопок X». Правильное название задачи описывает не процесс, а результат: не «Подумать над ускорением сайта», а «Ускорить сайт до 90 баллов по Google Page Speed». Результат выполнения задачи измерим и выражается либо в цифрах, либо в конкретных действиях.

Так не надо Надо так!
Подумать над ускорением сайта Ускорить сайт до 90 баллов по Google Page Speed
Потестировать верстку Записать в файл с багами все проблемы верстки
Посмотреть текст на сайт Оставить комментарии в гугл документе к тексту от копирайтера

Облегчают наименование типовых задач шаблоны. Используйте один и тот же термин, например, «сверстать» для типовых задач. Выработайте типовые критерии того, что результат достигнут. Ставьте задачи по схеме: Название проекта/Что сделать/Результат Например: Официальный сайт ГРУ МО РФ/Ускорить сайт/90 баллов по Google PS

Так не надо Надо так!
сделать верстку о компании alta-profil.ru: сверстать страницу «О компании»
реализовать верстку страницы услуги alta-profil.ru: сверстать страницу «Услуги»
верстать главную alta-profil.ru: сверстать страницу «Главная»

 

Детально опишите задачу

Пишите всё, что знаете о задаче. Всё, что вы не скажете, гарантированно потеряется, забудется, не будет учтено или будет неверно интерпретировано. Расписывайте все мысли по задаче. А чтобы это не было потоком сознания, используйте маркированные списки, группируйте задачи иерархически и по смыслу, визуально выделяйте важное. И: обязательно назначайте ответственных и устанавливайте сроки.

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

Задача не задача, если исполнитель не понимает:

  • для какого сайта или объекта нужно выполнить задачу;
  • каков объем работ в часах и какие серии подзадач;
  • какие трудозатраты на задачу: фиксированные или «от» — если «от», то когда надо остановиться;
  • в какие сроки нужно выполнить.

Добавьте в задачу:

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

156-10.pngПример максимально подробного описания задачи
 

Определите сроки

Для каждой задачи мы выставляем два дедлайна. Внутренний дедлайн называется redline («красная черта»). В этот срок работа должна быть сделана внутри компании, но еще остается срок на доработки перед показом клиенту. Deadline — крайний срок демонстрации результатов клиенту. Дедлайн не сдвигается.

156-11.png

Используйте redline — это снижает стресс и повышает качество итоговой работы.
 

Проконтролируйте

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

156-12.png

По всем фильтрам можно делать «напоминалки»: вы будете получать письма про задачи с определенными параметрами.

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

Кейс: разбиение и детализация

Мы используем программу Jira и платное дополнение Jira Portfolio. Вы можете применить сам подход в любой программе или таблице.
На скриншоте ниже мы сделали три вещи, лежащие в основе управления проектами:

  1. Разрезали «слона» на кусочки — детализировали задачи.
  2. Дали оценку задачам.
  3. Назначили ответственных.

156-13.png

С помощью Jira Portfolio мы создали зависимости между задачами. Одна задача не начнется, пока не закроется связанная с ней более ранняя. Это представлено визуально.

156-14.pngПример заданной зависимости между задачами

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

156-15.png

Почему так происходит? Внутри отчета по загрузке времени сотрудников видим, что ключевые специалисты по этому проекту уже заняты на возможные 40 часов в неделю.

156-16.png
 

Как ускорить выполнение задачи

Нужно видеть общую картину проекта, чтобы с учетом зависимости задач перераспределить объем работ по спринтам и успеть к сроку. Мы увеличиваем приоритет epic-задачи. Тогда остальные проекты автоматически (по мнению системы) станут менее важными.

156-17.png

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

156-18.png
 

Резюмируем: управление проектами

Чтобы «вытащить» проект по веб-разработке:

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

Проджект-менеджер тем эффективнее, чем лучше знает специфику работы специалистов, вовлеченных в проект. Например, чтобы поставить ТЗ веб-разработчику, нужно иметь хотя бы базовые представления о его профессиональной области. В идеале проджект может представить себя на месте исполнителя и, какие вводные ему необходимы, чтобы выполнить задачу. Стремитесь к этому.
 

Бонусы

100 правил управления проектами NASA

Смешное видео по управлению проектами
 


Оставить комментарий