27
Работа с требованиями в Интернет стартапе Александр Байкин

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

Embed Size (px)

DESCRIPTION

В презентации: • Что такое Концепция требований, для чего она нужна и что туда должно войти? • Какие техники сбора и анализа требований можно использовать на старте проекта? • Как можно формировать ТЗ к такому проекту и что туда должно войти? • Какие моменты нужны учесть и какие инструменты можно использовать при управлении требований? * Показаны и рассказаны реальные примеры докладчика.

Citation preview

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

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

Александр Байкин

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

Кто я?• Разработчик и сисадмин• Аналитик• Менеджер проектов• CIO• Идеолог uml2.ru• Тренер, консультант• Докладчик на многих конференциях

[email protected]://baikin.moikrug.ru

Байкин Александр

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

Различия

• Разработчики• Процесс не поставлен• Время критично• Частые изменения• Нет аналогов

• Разные специалисты• Процесс налажен• Время ставим сами• Фикс. рамки• Проект не первый

Плановая разработка Разработка в Старапе

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

Проект №1• Факт

– Заказчик пришел с «готовым» ТЗ– После 3 месяцев тр. кардинально изменились – После 6 месяцев проект закрыли

• Проблемы– Непонятны ЗЛ– Непонятны цели– Непонятны преимущества продукта

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

Рецепт №1• Создайте перед стартом концепцию

– Для кого?– Зачем?– Что?– Чем лучше?

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

Контекстная Д

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

Ментальная карта

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

Анализ проблем• 5 Why’s

– Зачем, для чего, каким образом…?• 5 Ws

– Who, what, when, where, why?• Д Ишикавы

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

Проект №2• Факт

– Требования рождались спонтанно– Требования не хранились– Через 1 год нельзя дальше развивать проект

• Проблемы– Изменения происходят долго и бесконтрольно– Изменяют в одном месте, рушится в другом– Сложно вводить нового разработчика

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

Рецепт №2• Документирование и хранение требований

– Wiki или Система версионного контроля– Ссылки– Согласование/Презентации– Требования за итерацию до разработки

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

Рецепт №3• Система управления задачами

– Выдача и контроль задач– Приоритезация задач и требований– Контроль изменений– Связь задач и требований

• Требование -> Задача -> Код

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

Проект №3• Факт

– Долгий процесс разработки требований– Готовое решение показало много проколов– Изменения не фиксировались

• Проблемы– Опоздание запуска на 3 месяца– Непонятно, что в итоге реализовано– Реализовались фичи хаотично

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

Рецепт №4• Итерационная разработка• Как можно раньше в тест• Привлекать бета тестеров• Приоритезация требований• Хранение изменений требований

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

Проект №…• Нет времени на требования• Нет выделенного аналитика

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

Рецепт №5• Планируйте время на требования• Требованиями могут заниматься все• Доступность требований для всех• Больше диаграмм• Договаривайтесь о рамках требованиях• Не забывайте про нефункциональные тр.

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

Сохранность границ• Решение корневых проблем, а не хотелок• Правильно определяйте цели разработки• Baseline требований и приоритет• Управление изменениями требований• Больше объем – на много больше изменений• Изменения будут – это естественно• Научитесь говорить НЕТ

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

Нефункциональность• Не забывайте про НФТ

– Требования к производительности– Требования к браузерам– Требования к железу и доп софту– Требования к интрефейсу– И т.д.

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

MoSoLo

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

Как делаю я

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

Концепция

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

Детализация требований• Пользовательские требования (use cases)• Другие функциональные требования• Нефункциональные требования• Диаграммы (UML)

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

ДВИ

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

Д Данных class Пользователи

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version EA 9.0 Unregistered Trial Version

Пользователь

- логин :string- пароль :string- мыло :string

Заемщик

Кредитор

Статус пользователя

- Название :string- Описание :string

Группа

- Название :string- Описание :string

Аккредит пользователь

- Дата рождения :date- ИНН :string- Номер СНИЛС :string- Моб телефон :string- Дом телефон :string- Раб телефон :string- Адрес регистрации :struct- Адрес проживания :struct

«паспорт»- Серия П :string- Номер П :string- Дата выдачи П :date- Кем выдан П :date- Скан П :blob

«загран паспорт»- Нет загран паспорта :byte- Номер ЗП :string- Дата выдачи ЗП :date- Кем выдан ЗП :date- Скан ЗП :blob

«вод удостоверение»- Нет вод удостоверения :byte- Серия ВУ :string- Номер ВУ :string- Дата выдачи ВУ :date- Кем выдан ВУ :date

Оператор

Админ

Редактор

Сообщение

- Тема :string- Сообщение :string- Файлы :blob

Профиль Пользователя

- Фамилия :string- Имя :int- Отчество :string- пол :int- Фото :blob- О себе :string

Рейтинг

- Название :string- Описание :string

Владелец

Город

Область

Регион

Транзакции::Счет

- Наименование :string- ФИО в счете :string

Еще есть куча атрибутов

0..*

кому

1

0..*

1

0..* 1

0..*

от кого

1

проживания

0..*1

рождения

0..*

владелец

0..1

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

Другие диаграммы• Действий• Состояний• Развёртывания• Последовательности

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

Инструменты• Wiki (TWiki, Confluence, ….)• Task tracker (Jira, Redmine, ….)• Диаграммы (Sparx EA, Visio, ручка+бумага, …)

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

Итого• Понимайте корневые проблемы• Договоритесь о целях• Работайте с требованиях• Применяйте методы анализа• Организуйте процесс изменений требований• Смотрите немного наперед

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

В итоге