Магический этап аналитики
Разница в профессионализме среди компаний из сферы разработки, наиболее наглядно видна именно на этом этапе. Компании которые выстроили качественный процесс аналитики способны сделать сложный творческий процесс разработки наиболее прогнозируемым и управляемым. Если ваш подрядчик уверяет, что он телепатическим методом знает, что вы хотите, что тут вообще все просто и предлагает быстрее приступить к следующим этапам, стоит задуматься.
Вообще запуск проекта в разработку можно сравнить с баллистическим движением. Правильные установки на старте позволяют увеличить вероятность попадания в цель.
В рамках проекта - это вероятность закончить проект в срок. Группа аналитиков - это люди, которые занимаются предстартовыми установками. Глобально этап аналитики разработке ИТ проекта можно разбить на 2 этапа
Бизнес аналитика
Анализ текущего бизнес процесса, его описание (как есть) и предложения по его оптимизации (как должно быть).
Системная аналитика
Описание процесса на уровне работы системы. Описание требований к системе в разрезе ролей пользования. Формализация требования и управление их изменением.
В проектах со сложной спецификой бизнеса (например банки) у нас работают минимум два аналитика. Собственно бизнес аналитик и системный аналитик. В нашей компании на плечи аналитиков так же ложиться риск менеджемент. Инициализация рисков, определение реакции, определение реакции. Подробнее об этом можно прочитать в книжке Вальсируя с медведями Томаса Де Марко
Часто в компаниях роль аналитика выполняет менеджер проекта. Такое совмещение ролей имеет место быть, если проект не сложный. Однако стоит помнить, что первоочередная задача менеджера проекта обеспечить процесс разработки таким образом, чтобы он соответствовал требованиям, не вышел за рамки бюджета и закончился в срок. Аналитик же должен передать информацию о проекте менеджеру команде в таком виде, чтобы минимизировать риски несоответствия проекта требованиям пользователей, заказчика, рынка. Этапы аналитики, которые внедрены у нас:
1. Сбор бизнес требований
Целью этого этапа является понять как работает бизнес заказчика. Что он хочет усовершенствовать, прибегая к нашим услугам. На этом этапе аналитик строит модель бизнес процесса, анализирует его, предлагает решения. Итогом этапа является документ из которого становится ясны проблемы и гипотезы о возможности их решения.
2. Требования пользователей
Более низкий уровень абстракции. На этом уровне важно выявить роли пользователей и описать сценарии использования системы. Понять как они пересекаются и взаимодействуют с другими процессами. Мы используем для этого UML диаграммы.
3. Функциональные требования
На этом этапе мы детально описываем функционал системы. Данные на входе и выходе, формулы и алгоритмы обработки данных. Требования по безопасности, шифрованию И так далее.
4. Не функциональные требования
Думаю каждый из нас видел систему, которая работает, но процесс пользования похож на медленную и изощренную пытку. Итоговый продукт должен не просто выполнять свою функцию, но нравится своей аудитории. Здесь мы анализируем эстетические представления о системе, рекомендуем визуальные референсы. Как сделать так, чтобы нравилось - отдельная большая тема для друго разговора.
Внедрение этапа аналитики положительно повлияло на другие процессы компании:
- Мы начали глубже понимать задачи наших клиентов и их проблемы, это помогло нам точнее попадать в ожидания клиентов. Это увеличило количество лояльных клиентов и повторное обращение к нам за услугами.
- Процесс разработки становится намного более управляемым и прогнозируемым. Мы сильно увеличили точность прогнозов в сроках разработки. Лучше потратить больше времени на этап аналитики и уложить в срок, чем бесконечно исправлять ошибки не правда-ли?
- Качественные данные от аналитиков на входе повышают качество прототипирования и отрисовки пользовательского интерфейса. Как известно, ограничения, которые стимулируют творческий процесс. Мы улучшил качество создаваемых нами интерфейсов.
Есть притча о двух лесорубах, которые поспорили на то, кто из них больше нарубит дров. Один из них рубил весь день не покладая рук. Стук топора апонента время от времени затихал. Первый был уверен, что победа у него в кармане, когда с удивлением обнаружил, что проиграл. Как оказалось второй время от времени переставал рубить, чтобы точить топор. Аналитика - это возможность наточить топор до того как начать рубить лес. Она делает процесс намного более осмысленным, управляемым и результативным.
Булат Ганиев
Управляющий партнер в "Технократия" www.technokratos.com