Andersen

Важность дискавери-фазы при разработке нового проекта

Jan 05, 2021
Blog

Какой бы невероятной и оригинальной ни была изначальная идея проекта, заказчик не всегда сразу получает именно тот продукт, который он хочет. Даже если заказчик сформулирует свою идею предельно четко, а разработчики смогут полностью понять концепцию, может остаться множество мелких деталей, которые не заметны сразу, но окажут огромное влияние на разработку проекта впоследствии. Выявление ряда проблем уже в процессе разработки приводит к спонтанным изменениям в уже написанном коде, незапланированным тратам бюджета и, как следствие, срыву сроков, заморозке проекта или даже его провалу. Такого исхода для проекта можно избежать, если провести дискавери-фазу.

Что такое дискавери-фаза и из каких этапов она состоит

Дискавери-фаза – этап, в результате которого могут быть определены ориентировочные (планируемые) сроки выполнения проекта (в тех рамках, которые оговариваются на дискавери фазе). И эти сроки будут реалистичными и точными настолько, насколько это вообще возможно при работе в гибких методологиях. Также в процессе этапа прописывается план действий, необходимых для получения успешного продукта.

Срок проведения дискавери-фазы может варьироваться. Обычно она занимает от нескольких недель до месяца, или даже больше – всё зависит от степени сложности проекта. Бывали случаи, когда дискавери проводилась за неделю, но на маленьком проекте. Соответственно, некоторые этапы дискавери-фазы могут опускаться или же, напротив, им будет уделяться больше внимания. В целом, общий план дискавери-фазы выглядит следующим образом:

1. Определение тех, кто будет вовлечен в проект: заказчик или его представители, БА, дизайнер, архитектор, конечный пользователь и так далее. Следует наладить контакт между всеми участниками, чтобы получить наиболее полное представление о проекте и обеспечить возможность быстро устранять недостатки, которые могут возникать в процессе разработки.

2. Четкая постановка целей. На данном этапе формулируются ответы на вопросы: Какова цель продукта? Какую проблему пользователя он может решить? Как он должен выглядеть и каким требованиям соответствовать? Это поможет получить общее представление об интерфейсе и функциях будущего продукта.

3. Проверка уже существующих исследований и документации. На этом этапе бизнес-аналитик собирает информацию, которая может существенно упростить и ускорить процесс разработки. Аналитик также знает, как лучше и понятнее подать эту информацию — например, дополнив ее диаграммами и другими визуальными инструментами. На выходе можно оформить SWOT/AsIsToBe-анализ.

4. Изучение целевой аудитории и конечного пользователя. Могут рассматриваться уже существующие исследования, а также проводиться новые, в самых разных форматах. Если продукт или сервис создается для использования, к примеру, в рамках какой-либо определенной компании, то на этом этапе может проводиться опрос ее сотрудников, как будущих пользователей.

5. Анализ конкурентов. На этом этапе проводится не только исследование рынка, но и выясняется, чем уникален именно этот продукт и что нового он может предложить. Сравнивая предлагаемые заказчиком идеи с тем, что уже было реализовано конкурентами, аналитик определяет, какой пробел по функциональности может заполнить новый продукт. 

6. Рассмотрение полученных данных и составление списка требований к будущему продукту, который в дальнейшем будет направлен команде разработчиков. 

7. Разработка Software Architecture Document, который содержит 40-60 страниц важных архитектурных представлений.

8. Оценка бюджета и сроков разработки. Это, пожалуй, самый важный этап дискавери-фазы, в котором основную роль играет архитектор. Определив все функциональные и нефункциональные требования к продукту, количество участников разработки и все связанные с разработкой факторы, архитектор может более точно рассчитать срок готовности проекта и его стоимость. Стоит отметить, что архитектор не делает оценку в одиночку. Он может привлекать экспертов под нужды проекта, например Cloud-инженеров. 

Далее, на митинге с командой, архитектором и ПМом, аналитик может досконально и просто рассказать обо всех функциональных особенностях продукта, чтобы команда смогла дать оценку своих ориентировочных (планируемых) трудозатрат на проект, по которых определяются примерные сроки. На основе этих данных может быть сделана диаграмма Ганта.

9. Составление итогового пакета документов с результатами исследования. Он может иметь различный формат и наполнение. Со стороны БА чаще всего результаты представляются в виде документа Vision & Scope или SRS. Иногда в дополнение могут использоваться Mind Maps или презентации. 

Заказчик получает документ, содержащий следующую информацию:

  • цели проекта, 
  • его нефункциональные требования и временные рамки,
  • рекомендации по свойствам системы или ограничениям, не относящимся к поведению системы — оптимальному стеку технологий, архитектуре инфраструктуры и ожидаемой нагрузке,
  • требования и характеристики продукта.

От архитектора заказчик получает Software Architecture Document (SAD), от дизайнера — UI/UX прототипы.

Эти данные отражают видение всех участников процесса разработки и корректируются бизнес-аналитиком на основании исследований конкурентов и конечного пользователя. Все это создает отличную базу для завершения проекта в срок и успеха готового продукта.

Какие преимущества дает наличие дискавери-фазы?

Разработан четкий план, содержащий все необходимые требования к продукту

Нередко заказчику трудно правильно донести идею до технических специалистов. В данном случае бизнес-аналитик может выступать в роли посредника и коммуникатора между заказчиком и командой, избавляя заказчика от необходимости тратить время на возникающие по ходу работы вопросы технического характера. 

Архитектор, в свою очередь, полностью настраивает процессы в команде, следит за четким соблюдением требований, передает знания техлиду и подготавливает его к самостоятельному ведению проекта. На небольших проектах этот процесс может завершиться за несколько месяцев, на крупных архитектор может работать постоянно.

Чем крупнее проект, тем важнее в нем роль архитектора, в том числе и на этапе дискавери. Однако даже не небольших проектах участи архиектора необходимо, по крайней мере, на начальном этапе. Мы написали отдельную статью, в которой подробно разобрали, что такое архитектура, какой она бывает и почему она необходима, особенно при разработке бизнес-приложений.  

Документы, подготовленные в результате завершения дискавери-фазы, дают команде четкий план действий, чтобы готовый продукт устроил заказчика. У каждого в команде есть четкое представление о том, зачем нужен разрабатываемый продукт, какова его цель и каким будет его пользователь. Помимо этого, выстраивается коммуникация между участниками: в документах будет описано, кто за что отвечает, поэтому каждый из участников будет знать, к кому из команды обратиться по тому или иному вопросу.

Определены сроки работы и их стоимость

Четкие сроки и заранее спланированный список функционала с приоритезацией разработки будущего продукта помогают не отклоняться от заданного пути и не отвлекаться на дополнительные изменения, которые на самом деле не являются существенными, но могут затянуть разработку и потратить часть бюджета. В итоге денег может не хватить даже на реализацию основных функций. Кроме того, имея конкретный план с четкими сроками, инвестиции получить, как правило, легче.

Подобрана команда специалистов, которая потребуется для успешной разработки и выпуска продукта

Дискавери-фаза проекта позволяет заранее определиться с тем, сколько человек и для какой задачи будет необходимо привлечь, а также как это повлияет на бюджет. Каждому из участников отведена своя роль и свой объем задач. Благодаря этому, не возникнет ситуация, когда приходится прерывать проект, чтобы найти новых специалистов, которых не учли заранее.

Бизнес-аналитик может ускорить процесс разработки

Потенциальная выгода, которую может иметь дискавери-фаза – это новые предложения и идеи от бизнес-аналитика. Он следит за последними изменениями на рынке и запросами клиентов, поэтому может оценить актуальность идеи заказчика и облечь ее в концепцию, а иногда даже подсказать пути упрощения разработки или ее модернизации. Это также поможет сэкономить деньги и время.

Что будет, если не включать дискавери-фазу в процесс?

Прежде всего, готовый продукт может не соответствовать требованиям или изначальному замыслу заказчика. У команды не будет четкого представления о том, каким именно должен быть продукт – не будут ясны его цели, функции, вид, конечный пользователь. Это приведет к расхождению между ожиданием и результатом – и, как следствие, к разочарованию заказчика.

Во-вторых, при отсутствии четкого плана придется вносить необходимые правки уже по ходу процесса разработки, поскольку можно легко забыть учесть что-то важное или не объективно оценить условия. Например, окажется, что нужно вовлечь больше людей в команду – это заморозит проект на время, пока не найдутся нужные специалисты. Кроме того, в проект могут добавляться спонтанные изменения, целесообразность и актуальность которых не исследована. Из-за этого может затянуться срок готовности и проект выйдет за рамки бюджета.

Следует понимать, что изменения в гибких методологиях изменения — это нормально. Однако имея проработанный список видения и границ проекта, намного легче и безболезненнее добавлять, при необходимости, новый функционал.

Заключение

Включение дискавери-фазы в процесс может предупредить многие проблемы и существенно сэкономить средства и время. Кроме того, проведение предварительного анализа и составление четкого плана определенно обеспечит наиболее комфортный и эффективный процесс разработки.

 

Previous articleNext article