10790

Спиральная модель ЖЦ ПО

Реферат

Информатика, кибернетика и программирование

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

Русский

2013-04-01

62.61 KB

30 чел.

Спиральная модель ЖЦ ПО

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

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

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

Стадии разработки спиральной модели

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

  1.  определение целей, альтернативных вариантов и ограничений. 

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

  1.  оценка альтернативных вариантов, идентификация и разрешение рисков.

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

  1.  разработка продукта следующего уровня. 

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

  1.  планирование следующей фазы. 

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

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

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

В квадрантах отсутствует заданное количество циклов. Их количество нужно выбрать по необходимости, а итерации можно адаптировать под определенный проект.

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

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

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

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

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

  1.  спиральная модель разрешает пользователям "увидеть" систему на ранних этапах, что обеспечивается посредством использования ускоренного прототипирования в жизненном цикле разработки ПО;
  2.  обеспечивается определение непреодолимых рисков без особых дополнительных затрат;
  3.  эта модель разрешает пользователям активно принимать участие при планировании, анализе рисков, разработке, а также при выполнении оценочных действий;
  4.  она обеспечивает разбиение большого потенциального объема работы по разработке продукта на небольшие части, в которых сначала реализуются решающие функции с высокой степенью риска, позволяющие устранить необходимость продолжения работы над проектом (таким образом, в случае необходимости становится возможным прекратить работу над проектом, и уменьшаются расходы);  
  5.  в модели предусмотрена возможность гибкого проектирования, поскольку в ней воплощены преимущества каскадной модели, и в тоже время, разрешены итерации по всем фазам этой же модели;
  6.  реализованы преимущества инкрементной модели, а именно выпуск инкрементов, сокращение графика посредством перекрывания инкрементов, рассортированных по версиям, и неизменяемость ресурсов при постепенном росте системы;
  7.  здесь не ставится цель выполнить невозможное — довести конструкцию до совершенства;
  8.  обратная связь по направлению от пользователей к разработчикам выполняется с высокой частотой и на ранних этапах модели, что обеспечивает создание нужного продукта высокого качества;
  9.  происходит усовершенствование административного управления над процессом обеспечения качества, правильностью выполнения процесса разработки, затратами, соблюдением графика и кадровым обеспечением, что достигается путем выполнения обзора в конце каждой итерации;
  10.  повышается продуктивность благодаря использованию пригодных для повторного использования свойств;
  11.  повышается вероятность предсказуемого поведения системы с помощью уточнения поставленных целей;
  12.  при использовании спиральной модели не нужно распределять заранее все необходимые для выполнения проекта финансовые ресурсы;
  13.  можно выполнять частую оценку совокупных затрат, а уменьшение рисков связано с затратами.

Недостатки спиральной модели

При использовании спиральной модели относительно проекта, для которого она не подходит в достаточной мере, проявляются следующие недостатки:

  1.  если проект имеет низкую степень риска или небольшие размеры, модель может оказаться дорогостоящей. Оценка рисков после прохождения каждой спирали связана с большими затратами;
  2.  модель имеет усложненную структуру, поэтому может быть затруднено ее применение разработчиками, менеджерами и заказчиками;
  3.  серьезная нужда в высокопрофессиональных знаниях для оценки рисков;
  4.  спираль может продолжаться до бесконечности, поскольку каждая ответная реакция заказчика на созданную версию может порождать новый цикл, что отдаляет окончание работы над проектом (принятие общего решения о прекращении процесса разработки);
  5.  большое количество промежуточных стадий может привести к необходимости в обработке внутренней дополнительной и внешней документации;
  6.  использование модели может оказаться дорогостоящим и даже недопустимым по средствам, так как время, затраченное на планирование, повторное определение целей, выполнение анализа рисков и прототипирование, может быть чрезмерным;
  7.  при выполнении действий на этапе вне процесса разработки возникает необходимость в переназначении разработчиков;
  8.  могут возникнуть затруднения при определении целей и стадий, указывающих на готовность продолжать процесс разработки на следующей итерации;
  9.  отсутствие хорошего средства или метода прототипирования может сделать использование модели неудобным;
  10.  в производстве использование спиральной модели еще не получило такого широкого масштаба, как применение других моделей.

Область применения спиральной модели

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

  1.  когда создание прототипа представляет собой подходящий тип разработки продукта;
  2.  когда важно сообщить, каким образом будет происходит увеличение затрат, и подсчитать затраты, связанные с выполнением действий из квадранта риска;
  3.  когда организация обладает навыками, требуемыми для адаптации модели;
  4.  для проектов, выполнение которых сопряжено со средней и высокой степенью риска;
  5.  когда нет смыла браться за выполнение долгосрочного проекта из-за потенциальных изменений, которые могут произойти в экономических приоритетах, и когда такая неопределенность может вызвать ограничение во времени;
  6.  когда речь идет о применении новой технологии и когда необходимо протестировать базовые концепции;
  7.  когда пользователи не уверены в своих потребностях;
  8.  когда требования слишком сложные;
  9.  при разработке новой функции или новой серии продуктов;
  10.  когда ожидаются существенные изменения, например, при изучении или исследовательской работе;
  11.  когда важно сконцентрировать внимание на неизменяемых или известных частях, при чем сбор информации об изменяющихся частях еще не закончен;
  12.  в случае больших проектов;
  13.  для организаций, которые не могут себе позволить выделить заранее все необходимые для выполнения проекта денежные средства, и когда в процессе разработки отсутствует финансовая поддержка;
  14.  при выполнении затянувшихся проектов, которые могут вызывать раздражение у менеджеров и заказчиков;
  15.  когда преимущества разработки невозможно точно определить, а достижение успеха не гарантировано;
  16.  с целью демонстрации качества и достижения целей за короткий период времени;
  17.  когда в процесс вовлекаются новые технологии, такие как впервые применяемые объектно-ориентированные принципы;
  18.  при разработке систем, требующих большого объема вычислений, таких как систем, обеспечивающих принятие решений;
  19.  при выполнении бизнес-проектов, а также проектов в области аэрокосмической промышленности, обороны и инжиниринга, где использование спиральной модели уже получило популярность.


 

А также другие работы, которые могут Вас заинтересовать

67537. МЕХАНИЧЕСКАЯ ЧАСТЬ СИЛОВОГО КАНАЛА ЭЛЕКТРОПРИВОДА 300.5 KB
  На рис. 13.3 показана тележка, на которую действует сжатая пружина с силой F = cx, где с – коэффициент жесткости пружины; x – величина ее деформации. Сила направлена вправо независимо от направления движения – влево или вправо. Действие пружины обусловлено ее потенциальной энергией упругой деформации.
67538. Функции передаточного устройства. Характеристики агрегата «двигатель-редуктор». Выбор мощности двигателя по типовому движению 213 KB
  Третьей функцией передаточного устройства является изменение скорости вращения и момента для согласования характеристик двигателя и исполнительного механизма. Масса объем мощность потерь и стоимость электродвигателя определяются его моментом М2 а мощность на валу дается формулой P2 = M2 ω.
67539. Электропривод с упругими связями. Уравнения трехмассовой системы и колебания в двухмассовой системе. Люфт в механической передаче. Удары и выход из контакта. Механическая передача с упругими связями 247.5 KB
  Рассмотрим упругий стержень, к концам которого приложены моменты М1, М2 (см. рис. 15.1). Концы имеют углы поворота α1 и α2, коэффициент жесткости стержня с12 . Если не учитывать момент инерции стержня, то из условия равновесия моментов получаем равенства...
67540. Установившиеся и переходные процессы в электроприводах. Система уравнений динамики двигателя постоянного тока независимого возбуждения 72.5 KB
  Система уравнений динамики двигателя постоянного тока независимого возбуждения Переходные процессы в электрических приводах. Примеры установившихся процессов для тока На рис.1 приведены примеры установившихся процессов для электрического тока постоянный ток переменный синусоидальный...
67541. Электромеханический и электромагнитный переходные процессы в двигателе постоянного тока независимого возбуждения. Электромеханический переходной процесс 140.5 KB
  Через время Тэм экспонента уменьшается в е = 2,71828 раз. За время 2Тэм она уменьшится в е2 раз. Через время 3Тэм экспонента уменьшается приближенно в 20 раз, тогда считают, что переходной процесс заканчивается (остается 5 % от первоначального значения экспоненты).
67542. Совместное протекание электромагнитного и электромеханического переходных процессов в двигателе постоянного тока независимого возбуждения 163 KB
  Апериодический и колебательный процессы Совместное протекание электромагнитного и электромеханического переходных процессов в двигателе постоянного тока независимого возбуждения. Допустим что в двигателе постоянного тока независимого возбуждения uв = const; Ф = const но индуктивность якоря...
67543. Метод последовательных интервалов. Включение обмотки возбуждения. Пуск двигателя постоянного тока последовательного возбуждения и трехфазного асинхронного двигателя. Метод последовательных интервалов 143 KB
  Для решения нелинейных дифференциальных уравнений на ЭВМ в настоящее время применяются эффективные численные методы. Включение обмотки возбуждения Рассмотрим переходный процесс при включения обмотки возбуждения двигателя постоянного тока на постоянное напряжение.
67544. Качания ротора синхронного двигателя. Уравнения электромагнита постоянного тока. Качания ротора синхронного двигателя 339.5 KB
  Качания ротора синхронного двигателя. При работе синхронной электрической машины подключенной к сети бесконечной мощности возможны качания ротора. При отклонении продольной оси ротора-индуктора от оси МДС возникает момент который стремится вернуть ротор в нейтральное положение.
67545. Виды теплопередачи. Электрические схемы замещения. Нагревание одного и двух тел 258 KB
  Отметим что теплопередача теплопроводностью наблюдается не только через твердые тела но и через жидкости и газы если они неподвижны. Теплопередача конвекцией Тогда закон Ома для теплового сопротивления имеет тот же вид: Отметим что в отличие от коэффициента теплопроводности λ имеющего достаточно...