Типичный ЖЦ разработки системы начинается с формулировки идеи или потребности, проходит все процессы разработки, производства, эксплуатации и сопровождения системы. ЖЦ в практике программирования обычно делиться на этапы, процессы. Каждый процесс характеризуется видами деятельности и задачами, которые выполняются на нем. Переход от одного процесса к другому должен быть санкционирован (определены входные и выходные данные).
Модель общего стандартизованного ЖЦ, как правило, включает в себя следующие процессы:
– определение требований;
– разработка (проектирование);
– верификация, валидация, тестирование;
– изготовление;
– эксплуатация;
– сопровождение.
Данной модели соответствует все виды деятельности, которые начинаются с разработки идеи проблемы или концепции программного продукта и кончая его изготовлением. Стандарт ISO/IEC 12207 объединяет эти виды деятельности в основные, организационные и вспомогательные процессы, которые и составляют ЖЦ ПО.
Процессы ЖЦ приобретения, поставки и разработки используются для анализа и определения системных требований, решений верхнего уровня проектирования системы, и предварительного определения требований к компонентам системы, включая ПО. Процесс разработки может быть использован для анализа, демонстрации, валидации, тестирования, прототипирования требований и проектных решений.
На этом этапе проектирования разрабатывается техническое, программное, организационное обеспечение системы, а также проектируются, разрабатываются, интегрируются, тестируются и оцениваются компоненты системы. Результатом этого процесса является система, которая соответствует нужному продукту.
Исходный стандарт разработан так, чтобы его можно было применить полностью или частично. Процессы, действия и задачи основных процессов отбираются, адаптируются и применяются для разработки или модификации ПО. Процесс проектирования может включать одну или более итераций процесса разработки. Результатом являются основные требования к ПО, проект и его реализация.