Модели жизненного цикла (ЖЦ)

При описании жизненного цикла системы используются следующие понятия:

· Процесс - цепочка последовательно выполняемых работ;

· Этапы – последовательные отрезки времени, в течении которого выполняются работы.

Модель жизненного цикла (ЖЦ) программного обеспечения информационной системы (ПО ИС) при автоматизированном проектировании ИС играет достаточно важную роль. Это обусловлено тем, что каждая из CASE-систем, ориентирована на (поддерживает) определенную модель ЖЦ ПО ИС.

Жизненный цикл ПО ИС представляет собой непрерывный процесс, начинающийся с момента принятия решения о создании ПО и заканчивающийся при завершении его эксплуатации.

Основным нормативным документом, регламентирующим ЖЦ ПО, является международный стандарт ISO/IEC 12207 (ISO-Международная организация по стандартизации IEС международная комиссия по электротехнике). В нём определяется структура ЖЦ, содержащая процессы, действия и задачи, которые должны быть выполнены при создании ПО.

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

Наибольшее распространение получили следующие модели ЖЦ ПО: каскадная, с промежуточным контролем и спиральная.

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

Каскадная модель (водопад)

Каскадная модель (в 70-80-е годы) предусматривает последовательную организацию работ. При этом основной особенностью является разбиение всей разработки на этапы, причем переход с одного этапа на следующий происходит только после полного окончания работ по предыдущему этапу. Каждый этап завершается выпуском полного комплекта документации.

Достоинствами такой модели являются: формирование на каждом этапе законченного комплекта документации и возможность планирования сроков завершения работ и соответствующих затрат.

Недостатком модели является её несоответствие реальному процессу создания ПО, который обычно не укладывается в жесткую схему и требует возврата к предыдущим этапам для уточнения или пересмотра принятых решений.

Каскадная модель (или «водопад») применяется при создании однородных ИС, для которых приложение – единое целое, поскольку в этом случае можно достаточно точно и полно сформулировать требования к будущей системе. К однородным системам относятся сложные расчетные системы и системы реального времени.

 

Рис. 1 Каскадная модель. Схема разработки ПО

Модель с промежуточным контролем (в 80-85-е годы) приближает ЖЦ к реальному процессу создания и применения ПО. В отличие от каскадной модели, она допускает возврат с каждого этапа жизненного цикла на любой предыдущий этап для выполнения межэтапной корректировки. При этом обеспечивается большая надежность ПО, но вместе с тем увеличивается длительность периода разработки.

·

Рис. 2 Каскадная схема с промежуточным контролем

Спиральная модель(в 86-90-е годы)- Спиральная модель предполагает итерационный процесс разработки информационной системы.

Итерация – повторение.

При этом делается упор на начальные этапы ЖЦ - анализ и проектирование. Реализуемость технических решений проверяется на этих этапах путем создания прототипов.

Прототип –формирование информационного объекта, как некоторой действующей модели.

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

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

Использование спиральной модели позволяет осуществлять переход на следующий этап выполнения проекта, не дожидаясь полного завершения работы на текущем – недоделанную работу можно будет выполнить на следующей итерации.

Главная задача каждой итерации – как можно быстрее создать работоспособный продукт, который можно показать пользователям системы. Таким образом, упрощается процесс внесения уточнений и дополнений в проект.

Основная проблема спирального цикла - определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла.

Переход с этапа на этап осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков

Рис Спиральная модель жизненного цикла.