logo
GOSy_raspredelenie_otvety_10_06_11_v_7-ITOG

Модели разработки ис

Существует 3 типа моделей ЖЦ:

1) Каскадная модель, в которой переход на следующий этап означает полное завершение работ на предыдущем этапе.

В изначально существовавших однородных ИС каждое приложение представляло собой единое целое. Для разработки такого типа приложений применялся каскадный способ (или “водопад”). Его основной характеристикой является разбиение всей разработки на этапы, при этом переход на следующий этап происходит только после полного завершения работ на текущем (см. рис).

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

Каскадная модель ИС состоит из последовательно выполняемых этапов. Каждый этап полностью заканчивается до того, как начнется следующий. Этапы не перекрываются во времени: следующий этап не начинается до тех пор, пока не завершится предыдущий. Возврат к предыдущим этапам не предусмотрен или всячески ограничен. Исправление ошибок происходит лишь на стадии тестирования. Результат появляется только в конце разработки ИС. Критерием появления результата является отсутствие ошибок и точное соответствие полученной ИС первоначальной её спецификации.

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

Преимущества каскадной модели:

Недостатки каскадной модели:

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

2) Для преодоления этих проблем предложена спиральная модель ЖЦ (рис. 2.3), в которой на начальных этапах ЖЦ осуществляются анализ и проектирование.

Рис 2.3. Спиральная модель.

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

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

Модель состоит из последовательно расположенных этапов (как и “водопад”) в пределах одного витка спирали. Внутри витка спирали этапы не имеют обратной связи. Анализ результата осуществляется в конце витка и инициирует новый виток спирали. Исправление ошибок происходит при тестировании на каждом витке спирали. Ошибки, которые не могут быть исправлены и требуют более глубоких структурных изменений, инициируют новый виток спирали. Этапы могут перекрываться во времени в пределах одного витка спирали. Результат появляется в конце каждого витка спирали и подвергается подробному анализу. При переходе от витка к витку происходит накопление и повторное использование программных средств, моделей и прототипов. Процесс ориентирован на развитие и модификацию ИС в процессе её проектирования, на анализ рисков и издержек во время проектирования.

Основная особенность данного метода состоит в концентрации сложности на начальных этапах разработки ИС (анализ, проектирование). Сложность и трудоёмкость последующих этапов в пределах одного витка спирали относительно невысокие. При этом методе предлагается способ снижения затрат в целом при разработке ИС (и любого иного ПО) за счёт предотвращения потенциальных ошибок на этапах её анализа и проектирования. При этом используется подход к организации проектирования ИС “сверху-вниз”, когда сначала определяется состав функциональных подсистем, а затем постановка отдельных задач.

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

3) Поэтапная (итерационная) модель с промежуточным контролем. Разработка ПО ведётся итерациями с циклами обратной связи между этапами. Межэтапные корректировки позволяют уменьшить трудоёмкость процесса разработки по сравнению с каскадной моделью. Время жизни каждого из этапов растягивается на весь период разработки.

В итерационной модели, так же, как и в модели “водопад” используется последовательность расположения этапов создания ИС. Но каждый следующий этап имеет обратную связь с предыдущими этапами. Исправление ошибок происходит на каждом из этапов, сразу при выявлении проблемы – промежуточный контроль. Следующий этап не начинается, пока не завершится предыдущий. При первом проходе по модели сверху вниз, как только обнаружена ошибка, осуществляется возврат к предыдущим этапам (снизу вверх), вызвавшим ошибку. Этапы оказываются растянутыми во времени. Результат появляется только в конце разработки ИС, как и в модели “водопад”.

Преимущества итерационной модели:

Недостатки итерационной модели: