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

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

Оценка проекта

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

Поэтому работа над проектом начинается еще до подписания договора. Основная задача в этой фазе — собрать (сформулировать) начальные требования, проанализировать и рассчитать бюджет проекта.

Первый контакт

Начало работы над проектом начинается с первого контакта, здесь все стандартно:

Телефонный звонок
(495) 215-13-85
с 10:00 до 20:00
Запрос по E-mail
В свободной форме на нашу электронную почту

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

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

Промежуточный результат:
Предварительная оценка
Границы бюджета и сроки, необходимые для разработки проекта под-ключ

Сбор требований

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

Бизнес-требования
Контекст, заинтересованные лица и их роль в проекте, описание бизнес-процессов
Функциональные требования
Разделы и функции, которые обязательно должны быть реализованы
Системные требования
Нагрузки, отказоустойчивость, инфраструктура, информационная безопасность
Требования к интеграции
Платежные системы, CRM/ERP системы, 1С, SMS-шлюзы и другие
Требования по монетизации
Модель монетизации интернет-проекта и способы ее реализации
Требования к интерфейсу и дизайну
Интерфейс, стилистика, адаптивность, подготовка к 4K мониторам, дизайн-концепция

Сбор требований — это комплексный процесс, включающий общение с клиентом, проработка концепции, анализ существующих бизнес-процессов клиента, анализ конкурентов и т.д.

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

Промежуточный результат:
Коммерческое предложение
Оценка стоимости и сроков создания сайта на основе собранных требований

Переговоры

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

В процессе переговоров с клиентом определяется финальное видение проекта, на базе которого готовится договор с приложениями:

Техническое задание
Описание требований и постановка задачи
Календарный план
Сроки разработки проекта и промежуточных этапов

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

Спецификация разрабатывается сразу после подписания договора в течение 4-8 недель. После согласования спецификации, она прикрепляется к основному договору в качестве дополнения к техническому заданию.

Результат на данном этапе:
Договор
Финальный комплект документов для заключения договора на создание интернет-проекта

Проектирование и дизайн

Работы по проектированию длятся от 4-х до 10-ти недель, в зависимости от сложности и объема проекта.

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

На данном этапе разрабатываются следующие документы и артефакты:

Прототип
Схематичное представление всех страниц/экранов сайта с перелинковкой для упрощения навигации
Дизайн-концепция
Концепция визуальной стилистики и оформления страниц сайта на примере 1-2 основных страниц
Спецификация проекта
Подробное описание структуры проекта и функционала, реализуемых в рамках договора
Результат на данном этапе:
Полное понимание проекта
На данном этапе все участники имеют полное понимание необходимого результата.

Разработка

Длительность этапа разработки составляет от 4-х до 12-ти недель в зависимости от объема и сложности проекта.

На данном этапе осуществляется непосредственное производство продукта: проектирование и разработка программного обеспечения, разработка дизайн-макетов, верстка и т.д.

Первые результаты мы начинаем показывать показывать через 2-4 недели после начала работ.Первые версии выкладываются на закрытый сервер, доступ к которому есть только у нас и у клиента.

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

Технический проект
Средство постановки задач для разработчиков с привязкой к среде разработки
Комплект макетов
Макеты для всех оригинальных страниц и экранов сайта, в том числе почтовых рассылок
Программный код
На языке PHP с применением паттерна MVC с выделением слоя бизнес-логики
Верстка дизайн-макетов
Современная адаптивная и валидная верстка в соответствии со стандартами HTML5 и CSS3
Документирование
По мере разработки осуществляется документирование разрабатываемого проекта
Результат на данном этапе:
Альфа-версия проекта
Готовность 90% задач проекта, сверстано и интегрировано не менее 90% макетов.

Стабилизация

Средняя длительность стабилизации составляет от 2-х до 6-ти недель.

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

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

Фаза стабилизации выполняется в несколько итераций (последовательно формируется несколько списков ошибок, исправлений и доработок). Завершается получением бета-версии проекта, готовой к запуску и работе с внешними пользователями.

Функциональное тестирование
Ручное и автоматизированное тестирование интернет-проекта
Нагрузочное тестирование
Выявление узких мест для дальнейшей оптимизации
Контроль качества
Проверка результатов работ с помощью различных чек-листов и тестирования
Внесение изменений
Внесение небольших изменений по пожеланиям клиента, не противоречащим спецификации
Результат на данном этапе:
Бета-версия проекта
Проект готов к вводу в эксплуатацию с реальными пользователями

Ввод в эксплуатацию

Средняя длительность ввода в эксплуатацию составляет 1-2 недели.

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

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

Результат на данном этапе:
Запуск проекта
Проект опубликован и корректно функционирует. Осуществляется мониторинг работы

Поддержка и развитие

По мере начала эксплуатации проекта реальными пользователями, будут возникать задачи для разработчиков по изменению или доработкам.

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

Крупные задачи оцениваются отдельными сметами и оплачиваются по факту выполнения.

Также мы предоставляем бессрочную гарантию на корректное функционирование проекта. Это означает, что в случае выявления ошибок в процессе эксплуатации мы бесплатно и оперативно устраняем ошибку.