Product Owner

Руководство созданием и развитием продукта.
Личный опыт и краткое описание знаний предметной области.

Знания и навыки по управлению продуктами

краткий конспект тех знаний и опыта, которыми обладаю как Product Owner
SWEBOK
Software Engineering Body of Knowledge. Свод знаний по инженерному подходу к процессу разработки программного обеспечения (программной инженерии).

Области знаний SWEBOK
  • Software requirements – программные требования
  • Software design – дизайн (архитектура)
  • Software construction – конструирование программного обеспечения
  • Software testing - тестирование
  • Software maintenance – эксплуатация (поддержка) программного обеспечения
  • Software configuration management – конфигурационное управление
  • Software engineering management – управление в программной инженерии
  • Software engineering process – процессы программной инженерии
  • Software engineering tools and methods – инструменты и методы
  • Software quality – качество программного обеспечения
и смежные дисциплины:
  • Computer engineering
  • Computer science
  • Management
  • Mathematics
  • Project management
  • Quality management
  • Systems engineering
AGILE
Agile манифест

  • Люди и взаимодействие важнее процессов и инструментов
  • Работающий продукт важнее исчерпывающей документации
  • Сотрудничество с заказчиком важнее согласования условий контракта
  • Готовность к изменениям важнее следования первоначальному плану
SCRUM
Идеология
- Эмпирическое управление: источник знаний - опыт, источник решений - реальные данные.
- Итеративный инкрементальный подход.
- Прозрачность, инспекция, адаптация.
- Прозрачность: все участники процесса (стейкхолдеры, PO и Dev team) должны одинаково понимать происходящее (терминология, требования, критерии готовности). Обеспечивает - Product Owner. Инструменты: обратная связь, демо (обзор спринта).
- Инспекция: проверка прогресса и результатов итераций на отклонения. Инструменты: скрам-митинги, ретроспектива.
- Адаптация: если выявлены отклонения - меняется процесс. Чем раньше - тем лучше.

Роли

  • Product Owner
  • Stakeholders
  • Dev team: кроссфукнциональная команда (нет деления на роли), полное автономное самоуправление.
  • Скрам-мастер: обеспечивает процесс скрам в команде разработки. Фасилитатор.

Артефакты

- Бэклог продукта: упорядоченный список всех известных требований к продукту.
- Бэклог спринта: набор требований, включенных в спринт. В процессе спринта постоянно детализируется.
- Инкремент: сумма всех завершенных элементов бэклога продукта и всех предыдущих инкрементов спринтов. То, что можно "выпускать".

События

  • Планирование спринта: формирование бэклога спринта на основе бизнес-целей и бэклога. Формулировка Цели спринта.
  • Ежедневный скрам-митинг (15 минут). Планирование работ на день и оптимизация взаимодействия между членами команды разработки.
  • Обзор спринта (демо). Показ результатов стейкхолдерам и совместное обсуждение, корректировка планов.
  • Ретроспектива. Внутренняя инспекция и планирование улучшений процесса.
KANBAN
Идеология
Создание непрерывного потока на основе сингальной системы (таблички).
Уменьшение складских запасов (незавершенных работ).

Задачи вытягиваются командой разработки из бэклога по мере завершения предыдущих задач и в соответствии с приоритетом.

Визуализация работы (канбан-доска).
Каждая карточка - отдельная задача. Колонки - этапы процесса создания ценности.

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

Постоянное улучшение.

Артефакты

Бэклог продукта
Канбан-доска
Карточки с задачами

Личный опыт управления продуктами
моя история
В 2009 году, работая в компании ПЕТЕР-СЕРВИС, организовал внутренний стартап по созданию программного продукта: специализированной системы мониторинга для контроля состояния программного обеспечения BSS у крупных операторов связи.

Проект был успешно реализован, продукт выдержал конкуренцию с общепризнанными мировыми лидерами в этой области (системы мониторинга Nagios, Zabbix, Zenoss, HP OVO, в дальнейшем MS SCOM, IBM Tivoli) и на данный момент используется в сегменте мониторинга BSS во всех филиалах Мегафон и у ряда зарубежных клиентов.
Суммарный объем обрабатываемых данных в рамках Мегафон - несколько сотен тысяч операций в секунду.

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

После создания продукта стал его владельцем (Product Owner) и в течение восьми лет занимался его дальнейшим развитием.
Руководил группой программистов, которые занимались его реализацией.

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

  • Люди и взаимодействие важнее процессов и инструментов
  • Работающий продукт важнее исчерпывающей документации
  • Сотрудничество с заказчиком важнее согласования условий контракта
  • Готовность к изменениям важнее следования первоначальному плану


В 2013-м году мне удалось убедить ответственных за внутреннее обучение и организовать тренинги по SCRUM, причем не локальный тренинг для своей группы, а масштабный, для всего звена руководителей подразделений разработки.
Тренинги проводил один из гуру SCRUM в России - Никита Филиппов (Scrumtrack). Эффект от тренингов был сравним со взрывом атомной бомбы. Большинство приверженцев водопадной модели, были "перевербованы" практически за один день.
Дальше я активно пропагандировал переход с водопада на Agile, который получал все больше приверженцев внутри компании, в том числе и среди высшего руководства.
В итоге через пару лет разработка в компании (более 1000 человек) велась уже только по гибким методологиям.

Сейчас в компании повсеместно внедрен процесс Continuous Integration (без моего участия), который мы использовали в своей команде уже давно (git, gitflow, codereview, TeamCity с автоматическими сборками и астотестами).


Опыт управления проектами смотреть -> ЗДЕСЬ <- click
Портрет владельца продукта (на мой взгляд)
Задачи и ответственность Product Owner:
  • Ведение бэклога продукта (формулировка элементов бэклога и приоритезация исходя из бизнес-целей)
  • Определение задач для каждой итерации (если используется методология с итерациями)
  • Формулировка задач (требований) для команды разработки на понятном ей языке
Что нужно для качественного выполнения этих задач:
  • PO должен четко понимать, что нужно бизнесу, мыслить категориями прибыли (навыки: основы фин. грамотности, основы маркетинга);
  • PO должен уметь вести проектную деятельность: устав проекта (цели, границы, действующие лица), организационная схема проекта, план управления проектом (ИСР, контрольные точки, критерии достижения целей, риски, границы проекта и т.д.), календарный план (навыки: управление проектами).
  • PO должен очень хорошо понимать ЦА продукта, ее потребности, ее привычки, сценарии использования продукта, включая окружение, обстоятельства (понимать Продукт "снаружи") (навыки: UX, психология, бизнес-анализ);
  • PO должен уметь разговаривать на одном языке с разработчиками, разбираться в архитектуре продукта, способах взаимодействия модулей продукта (понимать Продукт "изнутри") (навыки: знания в области программной инженерии, знание методологий разработки ПО)
  • PO должен уметь эмоционально "заряжать" команду разработчиков (навыки: психология, лидерство)
Итого, в идеале Product Owner должен обладать следующими навыками:
  • основы финансовой грамотности
  • основы маркетинга
  • управление проектами
  • UX, психология, бизнес-анализ
  • знания в области программной инженерии, знание методологий разработки ПО
  • лидерство
--------------------------------------

По сути, PO является переводчиком между языком бизнеса и языком разработчиков.