Модель ЖЦ ПО

Понятие жизненного цикла ПО

Жизненный цикл ПО

Основным понятием программной инженерии является понятие жизненного цикла. Основной нормативный документ, регламентирующий ЖЦ ПО – стандарт ISO/IEC 12207: 1995 “Information Technology – Software Life Cycle Processes” (ГОСТ Р ИСО/МЭК 12207-99). В рамках технологий создания ПО понятие ЖЦ уточняется, но указанные стандарты не нарушаются.

С точки зрения статической структуры ЖЦ является совокупностью процессов ЖЦ.

Процесс ЖЦ – набор взаимосвязанных действий, преобразующих некоторые входные данные и ресурсы в выходные.

Каждый процесс характеризуется задачами, методами их решения, действующими лицами, результатами. Процессы ЖЦ протекают параллельно. Каждый процесс разделен на набор действий, каждое действие – на набор задач. Каждый процесс, действие или задача инициируется и выполняется по мере необходимости, причем не существует заранее определенных последовательностей выполнения.

● основные (приобретение, поставка, разработка, эксплуатация, сопровождение);

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

● организационные (управление, создание инфраструктуры, усовершенствование, обучение).

Процессы ЖЦ ПО взаимосвязаны.

Динамику, т. е. развитие ЖЦ во времени определяет модель жизненного цикла.

Модель ЖЦ ПО – это структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении всего ЖЦ.

В любой модели ЖЦ рассматривается как совокупность стадий ЖЦ.

Стадия ЖЦ – это часть ЖЦ ограниченная временными рамками, по завершении которой достигается определенный важный результат в соответствии с требованиями для данной стадии ЖЦ.

Рис.1 показывает типичные стадии жизненного цикла ПО :

1 анализ требований;

2 проектирование системы;

3 реализация;

4 интеграция и внедрение;

5 процесс функционирования и сопровождения.

 

Рисунок 1.1. Типичные стадии жизненного цикла ПО

Изделие создается поэтапно, за ряд стадий. Таким образом, разработка является повторяющейся и пошаговой. В конечном счете, изделие поэтапно выводится из работы — его использование постепенно прекращается. Рис. 1.1 демонстрирует, что как только программный продукт внедрен в организацию, он остается там навсегда, хотя и под различными «перевоплощениями». Организация уже не может вернуться к ручному способу ведения бизнеса.

Сопровождение, даже если оно развивает систему, ведет, в конечном счете, к ухудшению ее первоначальной структуры. Система становится унаследованной системой— она не может быть больше «усовершенствована», и даже вспомогательное и корректирующее сопровождение становится большой проблемой. Вся система или основные ее компоненты должны постепенно удаляться. Осознание, что система является унаследованной, приводит к решению разработать новую систему. Это стимулирует новый жизненный цикл. Особенностью рис. 1.1 является отсутствие тестирования как стадии жизненного цикла. Тестирование является всеобъемлющей деятельностью, которая выполняется на всех стадиях жизненного цикла.