Ничего лишнего: как вычистить свой продукт от лишних...
DESCRIPTION
Борис Вольфсон, HeadHunter (Москва) Как сделать простой и качественный продукт? В своем докладе я расскажу, как в продуктах появляются лишний функционал, почему это происходит и как влияет на продукт и его разработку. Также мы обсудим, что можно сделать, чтобы ненужных фич в продукте не появлялось.TRANSCRIPT
![Page 1: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/1.jpg)
Ничего лишнего!
Как сделать простой и качественный продукт
![Page 2: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/2.jpg)
Слайд, призванный внушить уважение
• CTO at HeadHunter• CTO at Softline Development• Автор книги «Гибкие методологии
разработки»• Спикер (несколько десятков
выступлений)• Опыт тренера– Более 30 команд– Более 200 человек
![Page 3: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/3.jpg)
Современные программные продукты содержат слишком большое количество функций
![Page 4: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/4.jpg)
Почему это плохо?
![Page 5: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/5.jpg)
Почему лишние фичи – это плохо?
Сложно пользоваться
Сложно разрабатывать
Дорого поддерживат
ь
![Page 6: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/6.jpg)
Экономика лишнего
![Page 7: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/7.jpg)
Сколько стоит сделать фичу X?
• N рублейПлохой
менеджер
• ManHours * HourCostНеплохой менедже
р
• StoryPoints * StoryPointCostХороший менедже
р
![Page 8: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/8.jpg)
Это правильно? В чем ошибка?
FeatureCost = StoryPoints * StoryPointCost
![Page 9: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/9.jpg)
В чем ошибка?
Сколько стоить сделать фичу X и поддерживать ее еще в N месяцев?
![Page 10: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/10.jpg)
Продвигаемся к истине
FC = StoryPoints * StoryPointCost + SupportCost
![Page 11: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/11.jpg)
Цена поддержки (SupportCost)
1. Исправление дефектов2. Мелкие «хотелки»3. Рефакторинги4. Глобальные рефакторинги– Смена архитектуры– Смена платформ, фреймворков и технологий
5. Зависимые фичи
![Page 12: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/12.jpg)
Предельный переход
FC = StoryPoints * StoryPointCost + SupportCost
Что станет с нашей формулой в проекте с длинным жизненным циклом:• StoryPoints * StoryPointCost = const• SupportCost – будет увеличиваться
FeatureCost ≈ SupportCost
![Page 13: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/13.jpg)
При определенной длине проекта стоимость поддержки превзойдет стоимость разработки
Время
Стои
мос
ть Поддержка
Разработка
Точка G
![Page 14: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/14.jpg)
Следствия
1. В бесконечном проекте важна только стоимость поддержки
2. Чем длиннее проект, тем важней стоимость поддержки
3. В долгосрочных проектах нужно оценивать стоимость поддержки, а не разработки
4. Чем длиннее проект, тем выгодней вырезать ненужные фичи
![Page 15: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/15.jpg)
Длина проекта
Время
Стои
мос
ть Поддержка
Разработка
Точка G
Стартап Длинный жизненный цикл
![Page 16: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/16.jpg)
Стартапам полезно оставаться маленьким…
![Page 17: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/17.jpg)
…но команде не всегда выгодно делать маленький продукт
![Page 18: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/18.jpg)
В длинных проектах выгодно вырезать бесполезные фичи
![Page 19: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/19.jpg)
Количество бесполезных фич
![Page 20: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/20.jpg)
Кто виноват?
![Page 21: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/21.jpg)
«Больше» не значит лучше для клиентов
![Page 22: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/22.jpg)
Уровни фич
История пользователя
Эпик
Продукт
![Page 23: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/23.jpg)
Фичи не удаляются, потому что это воспринимаются крайне негативно публикой
![Page 24: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/24.jpg)
“Менеджерам” надо отчитываться и получать бонусы
Вы умеете поставлять кучу ненужного функционала
точно в срок?
Я же менеджер!
Стартап
![Page 25: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/25.jpg)
Методологии разработки ПО учат быстро делать поставку
![Page 26: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/26.jpg)
Разработчики часто любят «крутую» архитектуру
![Page 27: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/27.jpg)
Кто виноват?
Маркетологи
МенеджерыРазработчики
![Page 28: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/28.jpg)
Почему в продуктах появляются бесполезные фичи?
![Page 29: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/29.jpg)
Почему в продуктах появляются бесполезные?
![Page 30: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/30.jpg)
Чтобы вырезать что-нибудь
ненужное, нужно сначала сделать
что-нибудь ненужное…
![Page 31: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/31.jpg)
Распределение функционала по частоте использования
Никогда45%
Редко19%
Иногда16%
Часто13%
Всегда7%
Standish Group, 2002
![Page 32: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/32.jpg)
Распределение функционала по частоте использования в 90% стартапах
Никогда100%
Вольфсон Борис, 2013
![Page 33: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/33.jpg)
ТЗ = ХЗ
![Page 34: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/34.jpg)
Кто работает использую Lean Startup или похожую методологию?
![Page 35: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/35.jpg)
Быстро получайте и обрабатывайте обратную связь
Идея
КодДанные
РазработкаОбучение
Измерение
![Page 36: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/36.jpg)
Валидация гипотезы
• ВырезаемN < A• Развиваем фичуN > B• Оставляем «как есть»A < N <
B
A B
N
![Page 37: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/37.jpg)
Старые фичи
![Page 38: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/38.jpg)
Метрики необходимо измерять постоянно для всех фич
Время
Мет
рика
Порог отсечения
Метрика фичи
![Page 39: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/39.jpg)
Кладбище фич
![Page 40: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/40.jpg)
Вырезание функционала
Сложно
• Низкий приоритет для задач по вырезанию
• Неочевидная польза
Просто
• Маленькие трудозатраты
• Понятно, что делать
• Минимальные риски
![Page 41: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/41.jpg)
Выводы
1. Новые фичи выгодно создавать для всех2. Признать, что фича бесполезна и вырезать
ее – невыгодно для всех
В результате получаются продукты с бесполезным функционалом
![Page 42: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/42.jpg)
Что делать?
1. Не стремитесь к бездумному увеличение количества функционала
2. Определяйте численные условия по вырезанию функционала
3. Периодически вырезайте ненужный функционал
4. Используйте верхний вырост на вашем теле!
![Page 43: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/43.jpg)
![Page 44: Ничего лишнего: как вычистить свой продукт от лишних фич!](https://reader036.vdocuments.site/reader036/viewer/2022062613/545280faaf795907798b6252/html5/thumbnails/44.jpg)
Вопросы и контакты?
• www.twitter.com/borisvolfson
• www.facebook.com/borisvolfson