Как мы проектируем и выпускаем программное обеспечение
Для каждого этапа заранее определяем проверяемый результат и решение о следующем шаге. Границы, риски и критерии приёмки становятся видимыми до масштабирования проекта.
Как начать проектОт неопределённости к контролируемому запуску
Этапы могут пересекаться, но у каждого есть конкретный выход.
-
Обследование
Цель, процесс, роли, системы, ограничения, риски и исходная точка.
-
Архитектура
Границы, контракты, данные, права и критерии приёмки.
-
Разработка
Рабочий сквозной сценарий, тесты и регулярные демонстрации.
-
Приёмка
Проверка функций, ошибок и эксплуатационных процедур.
-
Запуск
Проверка на тестовой среде, ограниченный выпуск, сверка результата, наблюдение и развитие.
Контроль проекта
Важные решения и процедуры не остаются устными.
-
Реестр решений
Архитектурные решения, допущения и отклонённые варианты.
-
Приёмка
Сценарии, данные и критерии приёмки первого выпуска.
-
Выпуск
Пробный запуск, резервная копия, контрольная точка и сверка результата.
-
Передача
Состав кода, документации, прав, эксплуатационного контекста и следующего плана работ фиксируется договором.
Практики поставки
Набор зависит от риска конкретной системы.
- Качество Контрактные, модульные и дымовые тесты, статическая проверка и проверка кода.
- Поставка Docker, Kubernetes, GitLab CI/CD, тестовая среда и наблюдаемость.
- Безопасный выпуск Пробный запуск, снимок состояния, восстановление, сверка и план отката.
Определим формат старта
Сверим задачу и выберем обследование, ограниченный пилот или первый релиз.