Автор работы: Пользователь скрыл имя, 06 Июня 2012 в 12:50, лабораторная работа
Существует множество различных моделей или представлений жизненного цикла разработки ПО. Все они представляют собой логически построенную последователь¬ность действий, начиная с определения потребности и заканчивая производством ПО. Каждая модель представляет собой процесс, который структурно состоит из эта¬пов, направленных на обеспечение целостности соответствующих субкомпонентных действий. Каждая фаза снижает степень риска при выполнении проекта, что достига¬ется благодаря применению критериев входа и выхода для определения дальнейшего хода действий. По завершении каждой фазы получают внутренние или результатив¬ные внешние действия.
Жизненные циклы разработки ПО иногда называют методиками менеджмента жиз¬ненных циклов. Эти методики охватывают все стандарты и процедуры, оказывающие влияние на планирование, сбор требований и анализ, разработку проекта, конструиро-вание и внедрение программной системы. С целью обеспечения эффективности произ-вольного жизненного цикла его потребуется аккуратно выбрать и зачастую настроить (подогнать и разработать) в соответствии с задачами и целями определенного проекта.
Вместо того чтобы начать разработку "с нуля", в некоторых популярных, обоб-щенных моделях обеспечиваются готовые начальные схемы. Каждая модель имеет присущие ей преимущества и недостатки, определяющие ее применение для опреде-ленных типов проектов.
Модель, выбранная для какого-либо проекта, должна обеспечивать потребности организации, соответствовать типу выполняемых работ, а также навыкам и инстру-ментальным средствам, которые имеются у специалистов-практиков.
Убедившись в эффективности использования моделей жизненного цикла в рамках процесса, вы можете помочь вашей организации достичь гибкости при выполнении проекта. В каждом проекте, выполняемом организацией, можно применить отдельную модель жизненного цикла, которая подвергается настройке. Однако интеграция моде¬лей жизненного цикла с "каркасом" процесса — это уже другая стадия в ходе достижения более высокого уровня завершенности процесса разработки ПО. Организация должна осознать то, что разрабатываемые программы должны обладать постоянными характе-ристиками. В то же время реализация этого процесса должна быть гибкой, что обеспе-чивается с помощью настраиваемых моделей жизненного цикла разработки ПО.
Модели жизненного цикла разработки ПО 4
Модели жизненного цикла разработки ПО 4
Определение модели ЖЦ разработки ПО 4
Каскадная модель жизненного цикла разработки ПО 6
Краткое описание фаз каскадной модели 8
Преимущества каскадной модели 9
Недостатки каскадной модели 10
Область применения каскадной модели 11
V-образная модель жизненного цикла разработки ПО 12
Фазы V-образной модели 12
Преимущества V-образной модели 13
Недостатки V-образной модели 14
Область применения V-образной модели 14
Модель прототипирования жизненного цикла разработки ПО 14
Определения прототипирования 16
Описание структурной модели эволюционного прототипирования 16
Преимущества структурной эволюционной модели быстрого прототипирования 18
Недостатки структурной эволюционной модели быстрого прототипирования: 19
Область применения структурной эволюционной модели быстрого прототипирования 20
Модель быстрой разработки приложений RAD (Rapid Application Development) 21
Фазы модели RAD 21
Преимущества модели RAD 22
Недостатки модели RAD 23
Область применения модели RAD 23
Инкрементная модель жизненного цикла разработки ПО 24
Фазы инкрементной модели ЖЦ разработки ПО 25
Преимущества инкрементной модели 25
Недостатки инкрементной модели 26
Область применения инкрементной модели 26
Спиральная модель жизненного цикла разработки ПО 27
Стадии разработки спиральной модели 28
Преимущества спиральной модели 29
Недостатки спиральной модели 30
Область применения спиральной модели 30
Адаптированные модели жизненного цикла разработки ПО 31
Быстрое отслеживание 31
Параллельный инжиниринг 32
Спиральная модель "Win-Win" 32
Эволюционный/инкрементный принцип 33
Принцип V-образной инкрементной модели 33
Выбор приемлемой модели жизненного цикла разработки ПО 34
Отличительные категории проекта 34
Подгонка модели жизненного цикла разработки ПО 37
Резюме 38
Нетрудно заметить, что каскадная модель имеет множество преимуществ, если ее использовать в проекте, для которого она достаточно приемлема. Ниже перечислены эти преимущества:
Но при использовании каскадной модели для проекта, который трудно назвать подходящим для нее, проявляются следующими недостатки:
Из-за недостатков каскадной модели ее применение необходимо ограничить ситуациями, в которых требования и их реализация максимально четко определены и понятны.
Каскадная модель хорошо функционирует при ее применении в циклах разработки программного продукта, в которых используется неизменяемое определение продукта и вполне понятные технические методики.
Если компания имеет опыт построения определенного рода системы — автоматизированного бухгалтерского учета, начисления зарплаты, ревизии, компиляции, производства, — тогда в проекте, ориентированном на построение еще одного продукта такого же типа, возможно, даже основанного на существующих разработках, можно эффективно использовать каскадную модель. Другим примером надлежащего применения модели может служить создание и выпуск новой версии уже существующего продукта, если вносимые изменения вполне определены и управляемы. Перенос уже существующего продукта на новую платформу часто приводят в качестве идеального примера использования каскадной модели в проекте.
При всей справедливости критики этой модели все же следует признать, что модифицированная версия каскадной модели является в значительной степени менее жесткой, чем ее первоначальная форма. Здесь включаются итерации между фазами, параллельные фазы и менеджмент изменений. Обратные стрелки предполагают возможность существования итераций между действиями в рамках фаз. Чтобы отобразить согласованность между этапами, их объединяют прямоугольниками или под прямоугольниками перечисляют выполняемые на данных этапах действия, чтобы продемонстрировать согласованность между ними. Несмотря на то, что модифицированная каскадная модель является значительно более гибкой, чем классическая модель, она все же не является наилучшим выбором для выполнения проектов по ускоренной разработке.
Каскадные модели на протяжении всего времени их существования используются при выполнении больших проектов, в которых задействовано несколько больших команд разработчиков.
V-образная модель была создана с целью помочь работающей над проектом команде в планировании с обеспечением дальнейшей возможности тестирования системы. В этой модели особое значение придается действиям, направленным на верификацию и аттестацию продукта. Она демонстрирует, что тестирование продукта обсуждается, проектируется и планируется на ранних этапах жизненного цикла разработки. План испытания приемки заказчиком разрабатывается на этапе планирования, а компоновочного испытания системы - на фазах анализа, разработки проекта и т.д. Этот процесс разработки планов испытания обозначен пунктирной линией между прямоугольниками V-образной модели.
V-образная модель, показанная на рис. 4, была разработана как разновидность каскадной модели, а значит, унаследовала от нее такую же последовательную структуру. Каждая последующая фаза начинается по завершению получения результативных данных предыдущей фазы. Модель демонстрирует комплексный подход к определению фаз процесса разработки ПО. В ней подчеркнуты взаимосвязи, существующие между аналитическими фазами и фазами проектирования, которые предшествуют кодированию, после которого следуют фазы тестирования. Пунктирные линии означают, что эти фазы необходимо рассматривать параллельно.
Рис. 4. V –образная модель жизненного цикла разработки ПО
Ниже подано краткое описание каждой фазы V-образной модели, начиная от планирования проекта и требований вплоть до приемочных испытаний:
При использовании V-образной модели при разработке проекта, для которого она в достаточной мере подходит, обеспечивается несколько преимуществ:
При использовании V-образной модели в работе над проектом, для которого она не является в достаточной степени приемлемой, становятся очевидными ее недостатки:
Информация о работе Обзор моделей жизненного цикла разработки программного обеспечения