- Анализ бизнес-требований: определение потребностей и целей заказчика, векторов возможного дальнейшего развития.
- Если есть возможность, подбор «стартовой системы» для дальнейшего развития и кастомизации.
- Если разработка ведется «с нуля», то выбор технологий, определение основных компонентов будущей системы, необходимого оборудования и мощностей для устойчивой работы.
- Подробное обследование и детализация бизнес-процессов, которые должны быть перенесены в систему. Установление связей между ними, при необходимости определение контрольных точек (для проверки корректности работы процесса).
- Определение возможных «узких мест», которые могут сильно повышать нагрузку системы (иногда проще сразу создать отдельный сервис для экономии ресурсов основной системы)
- Построение архитектуры системы:
- ядро (безопасность, доступ к системе, базовая функциональность);
- необходимые объекты, участвующие в цепочках бизнес-процессов;
- система логирования информации для осуществления поддержки и контроля;
- административная часть системы;
- необходимый набор вспомогательных сервисов и их примерная детализация;
7.
Разработка дизайна системы.8.
Построение сборочной инфраструктуры системы (хранение кода, тестовые и «боевые» стенды, автоматическая сборка для обновления кода и миграции данных и т.д.)
9.
Создание демо-макета системы.10.
Анализ сроков, и трудозатрат, требуемых на разработку.
В идеале после представления проекта и согласования всех моментов с заказчиком, этап проектирования должен завершиться и далее начинаться непосредственно разработка, строго по утвержденному плану. Но бывает и так, что процесс проектирования продолжается в «фоновом» режиме на протяжении всей разработки, что сильно замедляет работу и – соответственно – ведет к сдвиганию сроков и удорожанию проекта.