Как старт проекта не сделать его финишем
Многие проекты умирают уже на старте.
Не успев стартовать, разработка вязнет в трясине согласований и бесконечной детализации.
В этой статье мы расскажем, как стартовать правильно, чтобы финишная прямая не закончилась в точке старта.
Зачастую клиент приходит и говорит что-то вроде:
— “Сделайте мне сайт на 3 странички. Сколько будет стоить? И когда сдадите работу?”
Сложность в том, что точно ответить на этот вопрос — практически невозможно.
Ответ на такой стадии — это как гадание на кофейной гуще до того, как выпит кофе.
А чтобы перейти от “гадания” к конкретике, необходимо учесть следующие моменты, ранее уже описанные в “Парадоксе оценки проекта” .
1. Нет клиента с полностью готовой идеей. Ее всегда необходимо дорабатывать.
Даже самый подготовленный клиент ошибается, думая, что учёл всё. При анализе всегда всплывают сюрпризы: например, клиент заказал сайт по доставке еды, но забыл про форму отслеживания заказов.
При анализе проекта всегда открываются моменты, о которых клиент не думал или не знал.
2. Изменения неизбежны.
Даже если клиент идеально подготовился и учёл все детали на старте, изменения всё равно неизбежны.
Рынок, конкуренты и технологии развиваются стремительно, и проект должен адаптироваться, чтобы оставаться актуальным.
Кроме того, в процессе разработки к клиенту приходят новые идеи и его проект из “трехстраничного” сайта вырастает в портал с кучей интеграций с внешними сервисами и нетривиальной архитектурой.
3. Процесс разработки проекта — это взаимодействие с командой клиента.
Без взаимодействия ничего не получится.
Поскольку клиент не может описать всё до мелочей, приходится постоянно уточнять требования, согласовывать нюансы и вникать в детали вместе с ним.
И не факт, что это взаимодействие будет успешным, ведь квалификация команды клиента тоже играет важную роль.
Вот почему важна предсказуемость и прозрачность процесса. Клиент должен понимать, как строится работа, какие этапы предстоит пройти и каковы его ожидания на каждом из них. Это снижает тревожность, повышает вовлеченность и помогает обеим сторонам избежать недоразумений.
Мы выяснили 3 важных момента и теперь приведем пример из жизни.
Парень встречается с девушкой.
Цветочно-букетный период — романтика, свидания, всё красиво. И вот они решают пожить вместе. Проходит неделя — начинаются бытовые моменты: кто выносит мусор, кто моет посуду. Вроде люди те же, а ощущения уже другие.
Цветочный период — это одно, реальная совместная жизнь — совсем другое.
А теперь представьте, что молодую пару на стадии цеточно-букетного периода просят оценить все нюансы будущего совместного проживания. Однозначно оценка будет слишком оптимистичной и оторванной от реальности.
Также и с оценкой проекта клиента.
Без того, чтобы начать процесс разработки в тесном взаимодействии с клиентом — сделать оценку невозможно.
Именно поэтому мы предлагаем следующий алгоритм:
1. Знакомство с клиентом и его командой
Перед тем как погружаться в детали проекта, важно понять, кто наш клиент, его потребности и ожидания. На этом этапе:
- Мы проводим первую встречу с клиентом.
- Выясняем ключевые бизнес-цели, которые клиент хочет достичь с помощью проекта.
- Определяем, кто из его команды будет участвовать в процессе – часто это менеджер проекта, маркетолог, технический специалист.
- Узнаем, есть ли у клиента опыт работы с разработчиками, насколько он вовлечен в процесс и готов ли он взаимодействовать на регулярной основе.
- Определяем уровень технической грамотности клиента, чтобы адаптировать коммуникацию.
Почему это важно?
Без понимания контекста бизнеса клиента невозможно предложить действительно полезные решения. Этот этап позволяет избежать несоответствий между ожиданиями клиента и реальными возможностями проекта.
2. Предварительный анализ проекта
После общего знакомства мы начинаем разбирать сам проект:
- Что за продукт или услуга?
- Какие задачи он должен решать?
- Кто целевая аудитория и как она будет взаимодействовать с этим продуктом?
- Какие ключевые функции необходимы?
- Есть ли конкуренты, аналоги, референсы?
В обычных компаниях с клиентом взаимодействует бизнес-аналитик, который «вытягивает» из клиента бизнес-требования и передает их разработчикам. Проблема в том, что разработчики получают ограниченную картину, урезанную квалификацией аналитика.
В dZENcode эту роль выполняет команда:
- Менеджер проекта,
- Технический руководитель,
- Дизайнер проекта,
- Менеджмент со стороны клиента.
Такой подход позволяет получить гораздо более детализированное и точное видение проекта, чем если бы этим занимался один бизнес-аналитик.
Почему это важно?
Проект становится более проработанным, так как задействованы специалисты высокой квалификации разного профиля, которые могут взглянуть на него с разных углов.
3. Планирование первой итерации
Первая итерация начинается с дизайна. Мы садимся с клиентом и вместе рисуем черновые макеты, чтобы понять, что ему нужно.
Почему это важно?
Так мы в сжатые сроки получим понимание количества страниц, блоков, функций, форм, API. Это, в свою очередь, позволит сделать оценку проекта с высокой точностью.
4. Предоплата 50%
Когда все базовые детали обсуждены, клиент вносит предоплату за итерацию. Это не только финансовая гарантия, но и подтверждение серьезности его намерений.
- Мы фиксируем стоимость первой итерации.
- Заключаем договор, где прописаны ключевые этапы работы, обязанности сторон и сроки.
- После оплаты начинаем разработку.
Почему это важно?
Финансовая вовлеченность клиента повышает ответственность с обеих сторон. Клиент осознает, что процесс уже запущен, а команда понимает, что работа ведется с серьезным партнером, готовым к сотрудничеству.
5. Итерация
Клиент садится с дизайнером и накидывает идеи: вот тут кнопка, тут форма. За пару часов они создают прототип.
Обычно хватает нескольких часов совместной работы для того, чтобы понять:
- Подходят ли клиент и дизайнер друг другу?
- Комфортно ли им работать вместе?
- Смогут ли они выдать необходимый результат?
Почему это важно?
- Позволяет клиенту быстро визуализировать свои идеи и понять, насколько они реализуемы.
- Прозрачность ожиданий. Клиент сразу видит, как дизайнер интерпретирует его идеи, что позволяет избежать сюрпризов в дальнейшем.
- Экономия времени. Часто при письменном описании идей возникают недопонимания, а при совместной работе процесс идет быстрее.
- Минимальные риски. Клиенту не нужно сразу инвестировать в полный цикл разработки – он может убедиться, что команда понимает его правильно, и только потом продолжить сотрудничество.
- Гибкость. На этом этапе можно быстро вносить корректировки, так как правки в макетах значительно дешевле и проще, чем переделки готового кода.
6. Результат
По факту, клиент, практически ничем не рискуя, за короткий срок получает прототип своего проекта. После завершения первой итерации клиент оценивает результат.
Мы:
- Презентуем клиенту прототип, объясняем принятые решения.
- Показываем, как работает навигация, какие блоки включены, как пользователь будет взаимодействовать с продуктом.
- Получаем обратную связь, фиксируем замечания и корректировки.
- Анализируем, насколько итоговый продукт соответствует изначальному запросу клиента и насколько он доволен процессом.
Почему это важно?
- Тестирование гипотез. Клиент может убедиться, что его идеи работают так, как он задумывал. Если что-то не соответствует ожиданиям, это исправляется до начала программирования.
- Контроль качества. Клиент видит результат и может сравнить его с тем, что он представлял, а также скорректировать стратегию при необходимости.
7. Решение
После первой итерации принимается решение:
-
— Продолжаем ли мы сотрудничество?
-
— Нужно ли вносить изменения в процесс взаимодействия?
-
— Как планировать следующую итерацию?
Если клиент не доволен результатом, он может не доплачивать 50% за первую итерацию.
Мы просто прекращаем сотрудничество.
Если клиент доволен, мы двигаемся дальше и переходим к более детальной проработке проекта и планированию следующих итераций.
Если есть спорные моменты, мы их обсуждаем и ищем компромиссные решения.
Почему это важно?
На этом этапе становится понятно, насколько эффективно выстроено взаимодействие с клиентом. Иногда после первой итерации клиент понимает, что его запросы меняются, и тогда проект требует переработки.
Вывод
Такой процесс работы с клиентом защищает от разочарований.
Без него проект может "финишировать" раньше времени, так и не достигнув результата.
Часто бывает так: клиент думал одно, команда сделала другое, итог — хаос, переделки и сгоревшие дедлайны. Работа с клиентом — это не просто выполнение заказа, а полноценное взаимодействие, требующее вовлеченности с обеих сторон.
Если клиент на старте хочет просто услышать цену и сроки без проработки деталей — это первый тревожный звоночек. Такой проект рискует затянуться, перерасти в бесконечные исправления или вообще не дойти до финиша.
Поэтому важно заранее объяснять логику работы и вовлекать клиента в процесс разработки, чтобы результат действительно соответствовал его ожиданиям.
Ну, или его ожидания безболезненно адаптировались к реальности