Учебно-исследовательская лаборатория "Математические и программные технологии для современных компьютерных систем (Информационные технологии)" Обзор моделей жизненного цикла разработки программного обеспечения





НазваниеУчебно-исследовательская лаборатория "Математические и программные технологии для современных компьютерных систем (Информационные технологии)" Обзор моделей жизненного цикла разработки программного обеспечения
страница9/12
Дата публикации16.03.2015
Размер0.75 Mb.
ТипДокументы
100-bal.ru > Информатика > Документы
1   ...   4   5   6   7   8   9   10   11   12

Спиральная модель жизненного цикла разработки ПО



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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

  • спиральная модель разрешает пользователям "увидеть" систему на ранних этапах, что обеспечивается посредством использования ускоренного прототипирования в жизненном цикле разработки ПО;

  • обеспечивается определение непреодолимых рисков без особых дополнительных затрат;

  • эта модель разрешает пользователям активно принимать участие при планирова­нии, анализе рисков, разработке, а также при выполнении оценочных действий;

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

  • в модели предусмотрена возможность гибкого проектирования, поскольку в ней воплощены преимущества каскадной модели, и в тоже время, разрешены итерации по всем фазам этой же модели;

  • реализованы преимущества инкрементной модели, а именно выпуск инкрементов, сокращение графика посредством перекрывания инкрементов, рассортированных по версиям, и неизменяемость ресурсов при постепенном росте системы;

  • здесь не ставится цель выполнить невозможное — довести конструкцию до совершенства;

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

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

  • повышается продуктивность благодаря использованию пригодных для повторного использования свойств;

  • повышается вероятность предсказуемого поведения системы с помощью уточнения поставленных целей;

  • при использовании спиральной модели не нужно распределять заранее все необходимые для выполнения проекта финансовые ресурсы;

  • можно выполнять частую оценку совокупных затрат, а уменьшение рисков связано с затратами.



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



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

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

  • модель имеет усложненную структуру, поэтому может быть затруднено ее применение разработчиками, менеджерами и заказчиками;

  • серьезная нужда в высокопрофессиональных знаниях для оценки рисков;

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

  • большое количество промежуточных стадий может привести к необходимости в обработке внутренней дополнительной и внешней документации;

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

  • при выполнении действий на этапе вне процесса разработки возникает необходи­мость в переназначении разработчиков;

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

  • отсутствие хорошего средства или метода прототипирования может сделать ис­пользование модели неудобным;

  • в производстве использование спиральной модели еще не получило такого широ­кого масштаба, как применение других моделей.



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



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

  • когда создание прототипа представляет собой подходящий тип разработки продукта;

  • когда важно сообщить, каким образом будет происходит увеличение затрат, и под­считать затраты, связанные с выполнением действий из квадранта риска;

  • когда организация обладает навыками, требуемыми для адаптации модели;

  • для проектов, выполнение которых сопряжено со средней и высокой степе­нью риска;

  • когда нет смыла браться за выполнение долгосрочного проекта из-за потенциаль­ных изменений, которые могут произойти в экономических приоритетах, и когда такая неопределенность может вызвать ограничение во времени;

  • когда речь идет о применении новой технологии и когда необходимо протестиро­вать базовые концепции;

  • когда пользователи не уверены в своих потребностях;

  • когда требования слишком сложные;

  • при разработке новой функции или новой серии продуктов;

  • когда ожидаются существенные изменения, например, при изучении или исследо­вательской работе;

  • когда важно сконцентрировать внимание на неизменяемых или известных частях, при чем сбор информации об изменяющихся частях еще не закончен;

  • в случае больших проектов;

  • для организаций, которые не могут себе позволить выделить заранее все необходимые для выполнения проекта денежные средства, и когда в процессе разработки отсутствует финансовая поддержка;

  • при выполнении затянувшихся проектов, которые могут вызывать раздражение у менеджеров и заказчиков;

  • когда преимущества разработки невозможно точно определить, а достижение успеха не гарантировано;

  • с целью демонстрации качества и достижения целей за короткий период времени;

  • когда в процесс вовлекаются новые технологии, такие как впервые применяемые объектно-ориентированные принципы;

  • при разработке систем, требующих большого объема вычислений, таких как систем, обеспечивающих принятие решений;

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


1   ...   4   5   6   7   8   9   10   11   12

Похожие:

Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconИнформационное обеспечение систем управления
Целью изучения дисциплины является обучение студентов основам современных информационных технологий в части разработки логических...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconРабочая программа по дисциплине с 3 «Технологии и методы программирования»
Цель преподавания дисциплины: Целью изучения дисциплины «Технологии и методы программирования» является изучение современных технологий...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconРеферат Данная работа посвящена разработке программного обеспечения...
В главе 1 рассмотрены задачи автоматизации процессов Оператора связи, а также важность вопроса обеспечения автоматизированного тестирования...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconРабочая программа учебной дисциплины технологии разработки программного обеспечения
Охватывает данный подход? Какие модели используются в качестве функциональных спецификаций при структурном подходе? Какие характеристики...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconМетодические рекомендации по организации внеаудиторной самостоятельной...
Пм 01 Разработка программных модулей программного обеспечения для компьютерных систем
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconРабочая программа учебной дисциплины информационные технологии в прикладной биотехнологии
Дисциплина “ Информационные технологии ” относится к дисциплинам математического и естественнонаучного цикла
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconПрограмма по формированию навыков безопасного поведения на дорогах...
Использованные технологии: информационные и компьютерные технологии, личностно-ориентированная, исследовательская, дифференцированное...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconУчебно-методический комплекс учебной дисциплины «Информационные технологии...
В последующих темах осуществляется аналитический, исторический и методологический обзор основных теоретических систем коммуникации...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения icon«Информационные технологии в образовании»
Технологии разработки, экспертизы, оценки программных средств и регистрация интеллектуальной собственности
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconОпорный план открытого урока Преподаватель
Дисциплина: мдк. 01. 01 Системное программирование пм. 01 Разработка программных модулей программного обеспечения для компьютерных...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconОпорный план открытого урока Преподаватель
Дисциплина: мдк. 01. 01 Системное программирование пм. 01 Разработка программных модулей программного обеспечения для компьютерных...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconАно «Информационные технологии в образовании»
Технологии разработки, экспертизы, оценки программных средств и регистрация интеллектуальной собственности
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconПрограмма дисциплины «Архитектура вычислительных систем» для направления...
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов направления подготовки 010400....
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconУчебно-методический комплекс дисциплины «информационные технологии в юридической деятельности»
Дисциплина относится к базовой части информационно-правового цикла ооп и изучается на первом курсе в первом и втором семестрах. Освоение...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconПрограмма учебной дисциплины «Информационные технологии в приборостроении»
Дисциплина «Информационные технологии в приборостроении» является частью профессионального цикла дисциплин подготовки студентов по...
Учебно-исследовательская лаборатория \"Математические и программные технологии для современных компьютерных систем (Информационные технологии)\" Обзор моделей жизненного цикла разработки программного обеспечения iconУчебно-методический комплекс для студентов специальности 230201....
Рассмотрено на заседании умк института математики и компьютерных наук, протокол №


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск