⌛ SDLC: Жизненный цикл ПО
Жизненный цикл программного обеспечения (Software Development Life Cycle, SDLC) — структурированный процесс создания систем
Путь идеи от концепции до рабочего продукта
Фазы жизненного цикла ПО
1️⃣Инициация (Планирование)
Определяется цель проекта, его границы и заинтересованные стороны
Оценивается бизнес-ценность, риски и целесообразность разработки
Результат фазы — бизнес-кейс, дорожная карта проекта, первичные требования и оценка ресурсов
2️⃣ Сбор и анализ требований
Вывляются:
🔸проблемы бизнеса, которые нужно решить
🔸функциональные требования (что система должна делать)
🔸нефункциональные требования (какими качествами обладать: производительность, безопасность, надежность)
Выходные артефакты: ТЗ или спецификация требований к ПО (SRS), модели процессов, диаграммы прецедентов
3️⃣ Проектирование
Решается как система будет удовлетворять требованиям
〰️архитектура системы: Выбираются технологии, определяются основные компоненты и их взаимодействие (микросервисы, монолит)
〰️проектирование данных: разрабатывается модель БД
〰️проектирование интерфейсов: как система будет взаимодействовать с пользователями (UI) и другими системами (API)
Результат — набор архитектурных и дизайнерских документов
4️⃣ Разработка (реализация)
Пишется код в соответствии с архитектурой и требованиями
Ревью кода, сборка и автоматизация сборочного процесса через CI/CD
На выходе — рабочие модули и инкременты системы
5️⃣ Тестирование
Проверяется соответствие продукта требованиям
Примеры тестирования:
⚫️модульное (проверка отдельных компонентов)
⚫️интеграционное (проверка взаимодействия компонентов)
⚫️системное (проверка системы в сборе по всем требованиям)
⚫️приемочное (финальная проверка с заказчиком)
6️⃣ Внедрение
Продукт разворачивается в целевой среде
〰️развертывание на production-серверах
〰️перенос данных из старых систем
〰️обучение пользователей
〰️подготовка документации
Завершается релизом и переходом системы в эксплуатацию
7️⃣ Эксплуатация и сопровождение
После запуска система требует поддержки:
🟣исправление ошибок
🟣адаптация к изменениям в окружении (например, обновление ОС)
🟣новые функциий и улучшения
🟣тех поддержка пользователей
Фаза продолжается до момента окончательного вывода системы из эксплуатации
Модели жизненного цикла ПО
Подход к организации фаз SDLC определяется моделью: как эти фазы взаимодействуют друг с другом, их последовательность
🔵 Последовательные (плановые)
🔹Каскадная (Waterfall)
Фазы выполняются строго последовательно: от анализа до сопровождения
Переход на следующую стадию возможен только после завершения предыдущей
Подходит для проектов с чётко определёнными и стабильными требованиями
🔹 V-модель (Verification & Validation)
Идея каскада с добавлением акцент на тестирование
Каждая стадия разработки имеет свой этап проверки и валидации
🟢 Инкрементальные
Продукт создаётся поэтапно, небольшими инкрементами. Каждый релиз добавляет часть функционала
Каждый инкремент проходит полный цикл SDLC (анализ, проектирование, кодирование, тестирование)
В результате пользователь постепенно получает готовые части системы
🟡 Итерационные (адаптивные)
🔸Спиральная
Комбинирует идеи каскадной и прототипной моделей
Каждая итерация проходит все фазы SDLC, но с акцентом на анализ рисков
Применяется для крупных и исследовательских проектов
🔴 Гибкие (Agile)
🔸 Scrum
Разработка короткими итерациями — спринтами (1–4 недели). Команда поставляет работающий инкремент продукта к концу каждого спринта.
🔸 Kanban
Ориентирован на непрерывный поток задач и визуализацию процессов
Основной инструмент — канбан-доска, где задачи перемещаются по статусам
📎 Материалы
1. Этапы жизненного цикла разработки ПО или что такое SDLC?
2. SDLC
3. База про жизненный цикл разработки ПО (SDLC): этапы, виды моделей и их различия
4. Про семь основных методологий разработки
5. Модели жизненного цикла ПО
📚 Книги
Управление проектным бизнесом от Алексея Васильева
#инфраструктура
➿➿➿➿➿➿➿➿
🧑🎓 Больше полезного в базе знаний по системному анализу
Post #659
14.3K
- ❤ 19
- 👍 10
- 🔥 4