103
Владелец продукта. Работа с требованиями в Agile

Работа с требованиями в Agile

  • Upload
    issoft

  • View
    556

  • Download
    6

Embed Size (px)

Citation preview

Page 1: Работа с требованиями в Agile

Владелец продукта.Работа с требованиями в Agile

Page 2: Работа с требованиями в Agile

Обоснование• Agile – бесспорный лидер по популярности среди

методологий• Работа с требованиями в Agile отличается от традиционной

модели работы с требованиями• В тренинге рассматривается весь процесc работы над

требованиями в Agile: от понимания концепции продукта до создания User Stories

• Особое внимание уделяется определению реальных потребностей пользователя

• Рассматриваются различные инструменты систематизации и анализа представлений о потребностях пользователя

Page 3: Работа с требованиями в Agile

Гибкая разработка

Почему Agile?

Page 4: Работа с требованиями в Agile

Эффективность выполнения проектов

Source: Standish Group Chaos Report 1995-2008

Page 5: Работа с требованиями в Agile

Эффективность управления требованиями

Up to 50%

35%

65%

Процент от общего календарного времени проекта, который тратится на сбор, разработку и передачу требований

Процент требований, меняющихся в ходе проекта

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

Page 6: Работа с требованиями в Agile

Традиционное управление разработкой ПО

Scope

Time Cost (resources)Es

timat

eFi

x

Page 7: Работа с требованиями в Agile

Ключевые препятствия для повышения эффективности

Неопределенность +

Функциональный подход =

Эффект Ряби

Page 8: Работа с требованиями в Agile

Ключевые препятствия для повышения эффективности

Сложность +

Тщательный анализ =

Аналитический Паралич

Page 9: Работа с требованиями в Agile

Agile – общие принципы

Почему Agile?

Page 10: Работа с требованиями в Agile

TimeBoxing. Фиксация времени

Scope

Time Cost

Estim

ate

Fix

Scope

Time CostAgile Software Development

Traditional Software Development

Page 11: Работа с требованиями в Agile

Agile ManifestoМенее важно Более важно

Процессы Люди

Инструментарий Общение

Документация Код

Проект Заказчик

План Изменения

Page 12: Работа с требованиями в Agile

Agile-принципы

Page 13: Работа с требованиями в Agile

Инкрементальный подход

Page 14: Работа с требованиями в Agile

Итерационный подход

Page 15: Работа с требованиями в Agile

Гибкость процесса добавляет около 40% трудозатрат на управление

продуктом

Page 16: Работа с требованиями в Agile

Scrum Процесс

Page 17: Работа с требованиями в Agile

Особенности Scrum•Backlog ранжированных задач•Фиксация и последовательное выполнение серии задач «быстрыми» итерациями – спринтами•Короткое ежедневное собрание для анализа результатов, проблем и перспектив•Короткая «планерка» по выбору задач для спринта из backlog`a•Краткий «разбор полетов» по прошедшему спринту с участием всей команды

Page 18: Работа с требованиями в Agile

Team

•Отвечает за результат

•Самоорганизующаяся

•Принимает решение по дизайну и имплементации

Page 19: Работа с требованиями в Agile

SCRUM-master

•Создает атмосферу прозрачности

•Управляет конфликтами

•Фасилитатор (модератор) митингов

•Отвечает за процесс

Page 20: Работа с требованиями в Agile

Product BackLog

Высокоуровневый план разработки:

-Адекватно детализирован-Оценен-Приоритезирован

Page 21: Работа с требованиями в Agile

Product Owner

•Владелец Product Backlog

•Управление ожиданиями заинтересованных лиц•Представляет пользователя•Взаимодействует с командой•Принимает продукт

Page 22: Работа с требованиями в Agile

Product Owner. ПроцессСоздает и

поддерживает

Участвует ВСЕГДА

Доступен для ответов на вопросы

Участвует в оценках

результатов разработки

Верифицирует достижение целей в

историях

Определяет цели, ценности и критерии их достижения в

Пользовательских Историях

Page 23: Работа с требованиями в Agile

Product Owner и команда•Создает и поддерживает Product BackLog

•Определяет Цели, Ценность и Критерии достижения в User Stories

•Верифицирует достижение целей в историях

•Участвует в оценке результатов разработки

Page 24: Работа с требованиями в Agile

Product Owner. Предметная область

•Эксперт в предметной области-Понимает область достаточно хорошо, чтобы представить продукт целиком-Отвечает на технические вопросы тех, кто создает продукт

•Адвокат конечного пользователя-Понимает все нюансы и детали использования продукта

•Адвокат Клиента-Понимает потребности бизнеса и выбирает возможности наиболее ценные для клиента

Page 25: Работа с требованиями в Agile

Product Owner. Бизнес•Адвокат Бизнеса

-Понимает цели и задачи компании, которая оплачивает создание ПО, и выбирает набор возможностей наиболее подходящий для их удовлетворения

•Коммуникатор-Способен донести видение и детали реализации точно и вовремя

•Принимает решения-Имея множество противоречивых целей, способен принять наиболее оптимальное решение

Page 26: Работа с требованиями в Agile

Традиционная разработка

Page 27: Работа с требованиями в Agile

Гибкая разработка

Page 28: Работа с требованиями в Agile

Понимание проблемы

Каковы причины «провала» продуктов?

Page 29: Работа с требованиями в Agile

Каковы причины?•24% - ошибочный анализ потребителя и его нужд•16% - проблемы продукта и дефекты•14% - недостаточность маркетинговых усилий•10% - затраты выше запланированных•9% - конкуренция•8% - неверное время запуска на рынок•6% - технические/производственные проблемы•13% - совокупность иных причин

Source: Robert Cooper, Winning at New Products

Page 30: Работа с требованиями в Agile

Генри ФордЕсли бы я слушал своих клиентов, то вряд ли должен был бы им дать что-то большее, чем немного более быстрая и выносливая лошадь.

Page 31: Работа с требованиями в Agile

Подход: пространство проблем и пространство решений

Page 32: Работа с требованиями в Agile

Задача аналитика

Page 33: Работа с требованиями в Agile

Упражняемся!

5 почему (5 WHYs, 5W)

Page 34: Работа с требованиями в Agile

Инструмент 5 WHY

-Используется для поиска первопричин

-Помогает найти корень проблемы

-5 вопросов «почему», заданных последовательно

-Возможность выделять ключевые и неключевые причины

Page 35: Работа с требованиями в Agile

Еще раз. Теперь в Excel

Page 36: Работа с требованиями в Agile

Упражняемся!

Диаграмма Исикавы (Fishbone Diagram, Рыбий Скелет, Cause &

Effect diagram)

Page 37: Работа с требованиями в Agile

Инструмент Диаграмма Исикавы

- Используя мозговой штурм, определить основные причины возникновения проблемы

-Разбить причины по категориям

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

-Устранить «подвластные» причины

Page 38: Работа с требованиями в Agile

И еще для разнообразия

Page 39: Работа с требованиями в Agile

Нулевая итерация

• Концепция решения (Vision)

• Высокоуровневое планирование

• Осуществимость решения

• Оценка

Page 40: Работа с требованиями в Agile

Концепция. Vision.

Page 41: Работа с требованиями в Agile

Системы мышления человека

By Malcolm Gladwell, ‘Blink’

Page 42: Работа с требованиями в Agile

Конвергентное и дивергентное мышление

Page 43: Работа с требованиями в Agile

Осуществление выбора

Page 44: Работа с требованиями в Agile

Design Thinking Process

Page 45: Работа с требованиями в Agile

ЭМПАТИЯ

Page 46: Работа с требованиями в Agile

Создание персон

-имя и фотография

-тип личности: темперамент, жизненная позиция

-краткая биография

-навыки

- сентиментальности

Page 47: Работа с требованиями в Agile

Создание персон

Page 48: Работа с требованиями в Agile

На что обращать внимание?

Page 49: Работа с требованиями в Agile

Поиск проблемы

•ЭМПАТИЯ

- Что говорит?- Что думает?- Что чувствует?- Что делает?

•ИНТЕРПРЕТАЦИЯ

- Что хочет?- Что для него важно?

•ФОКУС

- В чем состоит проблема/задача?- Что будет решением?

Page 50: Работа с требованиями в Agile

Процесс разработки персон

-Синтезируется на основе интервью реальных людей

-Суммарное описание одержит:

ПоведениеЦелиНавыкиОтношение

Page 51: Работа с требованиями в Agile

Упражняемся!

Моделирование персон

Page 52: Работа с требованиями в Agile

Карта опыта. Experience Map

Задачи и активности.Шаги создания

Page 53: Работа с требованиями в Agile

Активности и задачи

• Задачи требуют преднамеренных действий от пользователя инструмента

• Задачи имеют цель, которая должна быть достигнута• Задачи распадаются на более мелкие задачи

• Задачи часто группируются вместе в activity

Page 54: Работа с требованиями в Agile
Page 55: Работа с требованиями в Agile

Шаги создания Карты Опыта

Page 56: Работа с требованиями в Agile

Карта Опыта

Page 57: Работа с требованиями в Agile

Упражняемся!

Создание карты опыта

Page 58: Работа с требованиями в Agile
Page 59: Работа с требованиями в Agile
Page 60: Работа с требованиями в Agile

Определение проблемы

Да, это удовлетворяет моим требованиям,

но не решает мою ПРОБЛЕМУ

Page 61: Работа с требованиями в Agile

Девушке нужна не дрель, а отверстие

Девушке нужны не отверстия, а полка на стене

Девушке нужна не полка на стене, а место, где можно хранить вещи

Page 62: Работа с требованиями в Agile

Формулировка Проблемы: Почему и Как?

Помогает найти причину проблемы

Помогает найтирешение проблемы

Page 63: Работа с требованиями в Agile

Формирование определения проблемы

Page 64: Работа с требованиями в Agile

Упражняемся!

Формирование определения проблемы

Page 65: Работа с требованиями в Agile

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

Page 66: Работа с требованиями в Agile

Упражняемся!

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

Page 67: Работа с требованиями в Agile

Понимание проблемы

Концепция решения (Vision)

Персоны (Pragmatic Personas)

Карта Опыта (Experience Map)

Формулировка проблемы (Problem Statement)

Page 68: Работа с требованиями в Agile
Page 69: Работа с требованиями в Agile

Планирование

User Story. Story Mapping.

Page 70: Работа с требованиями в Agile

Требования являются многоцелевым элементомПотребности ПользователяОписание продуктаЭлемент планированияИдентификатор темы (token) для обсужденияИдентификатор темы, чтобыотложить обсуждение

Page 71: Работа с требованиями в Agile

Двухуровневое планирование

Гибкая разработка основана на двух видах планов:

Высокоуровневого внешнего плана: Product Backlog

Серия внутренних планов: Iteration Backlog

Page 72: Работа с требованиями в Agile

Requirements Workshop

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

Page 73: Работа с требованиями в Agile

Мозговой штурм•Подготовка

-Post-Its, Маркеры

• Сбор идей- Написать- Озвучить- Ведущий клеит на доску

•Очистка идей- Комбинировать похожие- Удалять неприменимые

•Систематизация

•Правила - Четко определить цели- Генерировать максимум идей- Любые фантастические идеи- Не позволять критиковать идеи

Page 74: Работа с требованиями в Agile

Упражняемся!

Генерация возможностей

Page 75: Работа с требованиями в Agile

•Бизнес цели (Epic)

•Активности «Кайт уровень»Longer Term goals often with no precise ending. I`ll perform several functional tasks in the context of the activity

•Задачи «Уровень поверхности»I`d reasonably expect to complete this in a single sitting

•Подфункции «Рыбы»Small tasks that by themselves don`t mean much. I`ll do several of these before I reach a functional level goal

•Марианская впадина

Уровни абстракции

Page 76: Работа с требованиями в Agile

Agile customers or product owner prioritize stories into a backlog

• Весь набор историй для программного продукта называется Product Backlog

• Backlog упорядочивается таким образом, чтобы наиболее ценные элементы были первыми

Page 77: Работа с требованиями в Agile

Story Map• Задачи размещаются вертикально, если пользователь

выполняет их в одно и то же время• Распределяя карту в пространстве, можно описать очень

большие истории

Page 78: Работа с требованиями в Agile
Page 79: Работа с требованиями в Agile
Page 80: Работа с требованиями в Agile
Page 81: Работа с требованиями в Agile
Page 82: Работа с требованиями в Agile

Формирование Решения

Планирование релизов. Приоритезация.

Планирование продуктов.

Page 83: Работа с требованиями в Agile
Page 84: Работа с требованиями в Agile
Page 85: Работа с требованиями в Agile
Page 86: Работа с требованиями в Agile
Page 87: Работа с требованиями в Agile
Page 88: Работа с требованиями в Agile
Page 89: Работа с требованиями в Agile

Планирование внутренних релизов

Page 90: Работа с требованиями в Agile
Page 91: Работа с требованиями в Agile

Формирование Решения

Люди: персоны и ролиUser Story

Page 92: Работа с требованиями в Agile
Page 93: Работа с требованиями в Agile

Roles and ActorsРоль и актер называют взаимоотношения персоны с

некоторой сущностью

Персоны (actors) определяют индивидуальные особенности определенного сегмента пользователей.

Роли определяют определяют функциональные особенности использования ПО с точки зрения зон ответственности.

Page 94: Работа с требованиями в Agile

Моделирование пользователей это простой первый шаг для обеспечения

максимально эффективной коммуникации целей проектирования

Page 95: Работа с требованиями в Agile

User StoriesПостепенное наращивание деталей:

Назавние (+ ID)

Сжатое описание:Как [type of user]Я хочу [выполнить некоторую работу/задачу]Для того чтобы [достичь конкретной цели]

Комментарий, детали или модели

До процесса планирования - Acceptance criteria (Definition Of Done)

Page 96: Работа с требованиями в Agile

User Story Template

Page 97: Работа с требованиями в Agile

Продукт который будет нравиться пользователям

Модель Кано

Page 98: Работа с требованиями в Agile

Привлекательные (Attractive)

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

• Возможности, которые потребители не ожидают в продукте

• Пример:- Термометр на пакете молока

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

афишированы

Page 99: Работа с требованиями в Agile

Одномерные (One-Dimensional)

• Характеристики продукта, которые приводят в удовлетворению, когда реализованы, и к недовольству, когда отсутствуют.

• Возможности, в области которых разворачивается конкурентная борьба

• Пример:- Если задекларировано, что пакет молока содержит на 10% больше молока за те же деньги, это приведет к удовлетворению клиентов- Но если молока окажется всего на 6% больше, клиент будет чувствовать себя обманутым

Page 100: Работа с требованиями в Agile

Обязательные (Must-be)

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

• Пример:- Пакет молока течет

Page 101: Работа с требованиями в Agile

Нейтральные (Indifferent)

• Возможности, которые относятся к аспектам, которые не являются ни положительными, ни отрицательными. И явно не ведут к удовлетворению или неудовлетворению клиента.

• Пример:-Разные формы упаковок для молока

Page 102: Работа с требованиями в Agile

Обратное воздействие (Reverse)

• Эти возможности при высокой степени реализации ведут к высокой степени неудовлетворенности (не все клиенты одинковы)

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

Page 103: Работа с требованиями в Agile

Спасибо за внимание