Transcript
Page 1: Эффективная работа распределенной команды

Эффективная работа распределенной команды

Светлана Федянина,

Softline

Page 2: Эффективная работа распределенной команды

О себе

• в прошлом web-developer, scrum master

• в настоящем – PM / Product Owner

http://web.sysart.fi

Page 3: Эффективная работа распределенной команды

План доклада

• Наша распределенная команда

Page 4: Эффективная работа распределенной команды

План доклада

• Наша распределенная команда

• Этапы работы над проектом

Page 5: Эффективная работа распределенной команды

План доклада

• Наша распределенная команда

• Этапы работы над проектом

• Проблемы распределенной команды по этапам

Page 6: Эффективная работа распределенной команды

План доклада

• Наша распределенная команда

• Этапы работы над проектом

• Проблемы распределенной команды по этапам

• Средства повышения эффективности

Page 7: Эффективная работа распределенной команды

Распределенная команда

http://myastronomy.ru/

Page 8: Эффективная работа распределенной команды

Наш экипаж

Москва

2 разработчика

1 архитектор

1 аналитик

Page 9: Эффективная работа распределенной команды

Наш экипаж

Новосибирск

1 аналитик

1 верстальщик

7 разработчиков

1 архитектор

2 тестировщика

1 сис. админ

Page 10: Эффективная работа распределенной команды

Роли

Product Owner

Page 11: Эффективная работа распределенной команды

Роли

Системный аналитик

Разработчик

Верстальщик Команда

Тестировщик

Page 12: Эффективная работа распределенной команды

Роли

Scrum - master

Page 13: Эффективная работа распределенной команды

Этапы работы над проектом

итерация … итерация итерация … итерация

1 N 1 M

РЕЛИЗ 1 РЕЛИЗ 2

Пл

ани

ро

ван

ие

р

ели

зов

Page 14: Эффективная работа распределенной команды

Коммуникации

Проблемы распределенной команды

Page 15: Эффективная работа распределенной команды

Интеграция

Проблемы

Page 16: Эффективная работа распределенной команды

Скорость

Проблемы

Page 17: Эффективная работа распределенной команды

Управляемость

Проблемы

Page 18: Эффективная работа распределенной команды

Эффективность

Definition of Done

Page 19: Эффективная работа распределенной команды

Этапы работы над проектом

итерация … итерация итерация … итерация

1 N 1 M

РЕЛИЗ 1 РЕЛИЗ 2

Пл

ани

ро

ван

ие

р

ели

зов

Page 20: Эффективная работа распределенной команды

Story Mapping

1. Определение персонажей,

их активностей

Page 21: Эффективная работа распределенной команды

Story Mapping

1. Определение персонажей,

их активностей

2. Формулирование требований

Page 22: Эффективная работа распределенной команды

Story Mapping

1. Определение персонажей,

их активностей

2. Формулирование требований

3. Планирование релизов: приоритезирование требований

Page 23: Эффективная работа распределенной команды

Результат Story Mapping

План релизов PO заносит в Backlog

Page 24: Эффективная работа распределенной команды

Результат Story Mapping

Скока бумажек…

Page 25: Эффективная работа распределенной команды

Не все могут поехать

Москва Новосибирск

Представители бизнеса

Представители команды

Команда

Page 26: Эффективная работа распределенной команды

Этапы работы над проектом

итерация … итерация итерация … итерация

1 N 1 M

РЕЛИЗ 1 РЕЛИЗ 2

Пл

ани

ро

ван

ие

р

ели

зов

Page 27: Эффективная работа распределенной команды

Роль

Product Owner

Приоритеты Product Backlog

Аналитик Проработка требований1

Проработка требований2

Разработчик Изучение документации

1. Планирование2. Реализация3. Интеграция

Zoom In

Page 28: Эффективная работа распределенной команды

Проработка требований

Анализ аналогов

Моделирование Прототипирование

Подготовка развернутых требований

Видение продукта

Проработанные требования

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

Page 29: Эффективная работа распределенной команды

User Story

Как [персонаж] [действует] для достижения [цели]:

Спецификация ,

прототипы продукта,

приёмочные тесты

Page 30: Эффективная работа распределенной команды

User Story

Redmine

Axure

Page 31: Эффективная работа распределенной команды

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

Распределенная команда

• оценивает временные затраты на реализацию User Story

• пакует итерациюhttp://planningpoker.com

Page 32: Эффективная работа распределенной команды

Грязный хак

Page 33: Эффективная работа распределенной команды

Стартуем одновременно

Page 34: Эффективная работа распределенной команды

Оценки требований

• Человеко-часы

• Story points

• «Майки»

Page 35: Эффективная работа распределенной команды

Человеко-часы

слишком мелкая единица измерения для большой команды

Page 36: Эффективная работа распределенной команды

Story points

оценка относительно эталонной задачи

Page 37: Эффективная работа распределенной команды

Story points: success

Page 38: Эффективная работа распределенной команды

«Майки»

S: простая задачаM: средняяL: сложная

Page 39: Эффективная работа распределенной команды

Интеграция

• Детальная проработка спецификаций модулей неприемлема.

• Решение: по мере того как появляются вопросы по реализации, коммуникации.

Page 40: Эффективная работа распределенной команды

Применение инженерных

практик Agile

Page 41: Эффективная работа распределенной команды

Парное

программирование

Page 42: Эффективная работа распределенной команды

Test Driven Development

Скорость разработки:

Page 43: Эффективная работа распределенной команды

Code review

Page 44: Эффективная работа распределенной команды

Code freeze

Page 45: Эффективная работа распределенной команды

Перенос кода и данных между средами

Page 46: Эффективная работа распределенной команды

Профит: багов <

Page 47: Эффективная работа распределенной команды

Профит?

Definition of Done

Удовлетворенность заказчика

Page 48: Эффективная работа распределенной команды

Команда

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

Page 49: Эффективная работа распределенной команды

Обмен знаниями

• Wiki

• Проведение вебинаров

http://www.slweb.ru

Page 50: Эффективная работа распределенной команды

Итоги1.Распределенная команда2.Планирование релизов и итераций3.Оценки временных затрат4.Инженерные практики Agile5.Построение базы знаний

Page 51: Эффективная работа распределенной команды

Вопросы

Светлана Федянина,

Softline

[email protected]

http://twitter.com/Fedyanina

http://fedyanina.blogspot.com/