25
Аналитики не нужны Требования Александр Байкин

Александр Байкин (UML2.ru)

  • Upload
    ontico

  • View
    190

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Александр Байкин (UML2.ru)

Аналитики не нужны ТребованияАлександр Байкин

Page 2: Александр Байкин (UML2.ru)

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

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

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

Page 3: Александр Байкин (UML2.ru)

Зачем эти требования?

Это занимает много времени

Нам и так понятно, что нужно

В итоге все равно переделывать

В Агиле не нужны спецификацииИх все равно не читают

Page 4: Александр Байкин (UML2.ru)

Задача Джоэля Спольски

Анализ Дизайн Разработка Внедрение0

50100150200250300350400450

Стоимость изменененийПростота изменений

Page 5: Александр Байкин (UML2.ru)

Программист 1. Разработка

Программист 1

Page 6: Александр Байкин (UML2.ru)

Программист 1. Переделать

Программист 1

Page 7: Александр Байкин (UML2.ru)

Программист 2. Анализ

Программист 1

Программист 2

Page 8: Александр Байкин (UML2.ru)

Программист 2. Разработка

Программист 1

Программист 2

Page 9: Александр Байкин (UML2.ru)

Что мы увидели со спекой?• Сроки разработки уменьшились• Получили более качественный продукт• Не нужно по 100 раз спрашивать• Можно нормально протестировать• Можно составить адекватный план• Сэкономили нервы себе и заказчику

Page 10: Александр Байкин (UML2.ru)

Почему тогда нужны Аналитики?• Разработчики: f(технологии) >>> f(бизнес)• Разработчики не любят писать текст• Разработчики плохо общаются с Бизнесом• Бизнес не может писать спецификации• Сложность бизнеса и технологий растет• Нужен subject matter expert

Page 11: Александр Байкин (UML2.ru)

Кит в шляпе и с сигаретой

Page 12: Александр Байкин (UML2.ru)

Почему люди не верят?• Не знают, что нужен• Попробовали, не понравился– Аналитик плохо работал– Процесс неправильно поставлен

• В Агиле нет Аналитика

Page 13: Александр Байкин (UML2.ru)

Хороший Аналитик

Профессионал

Разработка Тр

Пр. Обл. и Технологии

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

УТ

Управление людьми

Треу

голь

ник

упра

влен

ия т

ребо

вани

ями:

лю

ди, п

роце

ссы

, ин

стру

мен

ты. Л

АФ 2

103

Page 14: Александр Байкин (UML2.ru)

Кого я часто вижу?• Обычный писарь• Не понимает процесс• Нет концептуального взгляда• Верит в магию инструментов• Нет опыта полного цикла разработки• Не хочет работать

Page 15: Александр Байкин (UML2.ru)

Аналитика превыше всего• Понимание – зачем все это нужно?• Структурирование информации• Выявление взаимосвязей и противоречий• Получение требований в итоге• Отсутствие вопросов и предположений• Сделать понятным всем

Page 16: Александр Байкин (UML2.ru)

Хорошие требования

Полные и точные Приоритет

Важные

Реализуемые Непротиворечивые

Проверяемые

Page 17: Александр Байкин (UML2.ru)

Немного советов• Мы одно и тоже по нескольку раз переделываем!• Мы делаем не то, что нужно Заказчику!• Мы разговариваем с Заказчиком на разных языках!• Да блин, этот Заказчик сам не знает, что хочет!• У нас постоянно расширяется скоуп проекта!• Уже никто не знает, как работает наша Система!• В одном месте правим, в другом ломается!• Но мы же договаривались о другом!!!

Page 18: Александр Байкин (UML2.ru)

Много раз переделываем• Понимать реальные проблемы• Выделять больше времени на анализ• Лучше понимать предметную область• Делать ретроспективу с Заказчиком• Наладить процесс управления изменениями• Много работать ≠ хорошо работать

Page 19: Александр Байкин (UML2.ru)

Говорим на разных языках• Больше общаться с Заказчиком• Изучать предметную область, БП и ПО• Определить Глоссарий• «Посвятить» Заказчика в Технари• Привлечь других экспертов в Пр. Обл.

Page 20: Александр Байкин (UML2.ru)

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

Page 21: Александр Байкин (UML2.ru)

Расширяется скоуп проекта• Правильно определяйте цели разработки• Хорошие требования и планирование• Baseline требований и приоритет• Управление изменениями требований• Больше объем – намного больше изменений• Изменения будут – это естественно

Page 22: Александр Байкин (UML2.ru)

Не знаем, как работает Система• Договориться о норме документирования• Что-то изменяем → документируем• Восстанавливаем по частям• Минимальная трассировка• Удерживать ключевых сотрудников

Page 23: Александр Байкин (UML2.ru)

Мы же договаривались о другом• Аналитик формирует ожидания• Не давать нереальных обещаний• Больше информации и обратной связи• Раньше намного лучше, чем позже• Сэндвич: «+», «–», «+»• Баланс между «получить» и «дать»

Page 24: Александр Байкин (UML2.ru)

В итоге получаем• ↓ ошибок и издержек при выпуске ПО• ↓ времени разработки ПО и переделок• ↑ удовлетворенности и вовлеченности ЗЛ• ↑ качества ПО• ↑ точности планирования• ↑ точности стратегического развития