
- •Обучающий курс
- •Основные понятия и определения
- •Модели жизненного цикла разработки программных средств и систем
- •Стратегии
- •Каскадная модель жизненного цикла разработки программных средств и систем
- •Преимущества каскадной модели жизненного цикла
- •Недостатки каскадной модели жизненного цикла
- •Область применения каскадной модели
- •V-образная модель жизненного цикла разработки программных средств и систем
- •Преимущества V-образной модели жизненного цикла
- •Недостатки V-образной модели жизненного цикла
- •Область применения V-образной модели
- •Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем
- •Преимущества структурной эволюционной модели быстрого прототипирования
- •Недостатки структурной эволюционной модели быстрого прототипирования
- •Область применения структурной эволюционной модели быстрого прототипирования
- •Модель быстрой разработки приложений rad
- •Преимущества модели быстрой разработки
- •Недостатки модели быстрой разработки
- •Область применения модели быстрой разработки rad
- •Инкрементная модель жизненного цикла разработки программных средств и систем
- •Преимущества инкрементной модели жизненного цикла
- •Недостатки инкрементной модели жизненного цикла
- •Область применения инкрементной модели
- •Спиральная модель жизненного цикла разработки программных средств и систем
- •Преимущества спиральной модели жизненного цикла
- •Недостатки спиральной модели жизненного цикла
- •Область применения спиральной модели
- •Упрощенные варианты спиральной модели
- •Классические технологии проектирования программ
- •Модульное проектирование программ
- •Метод нисходящего проектирования
- •Пошаговое уточнение
- •Анализ сообщений
- •Связность модуля
- •Типы и силы связности модулей.
- •Сцепление модулей
- •Типы и степени сцепления модулей.
- •Метод восходящего проектирования
- •Методы расширения ядра
- •Метод иерархического проектирования модулей (метод Джексона)
- •Case-технологии проектирования программного обеспечения
- •Общие сведения о case-технологиях
- •Информационное моделирование
- •Сущности
- •Атрибуты
- •Способы представления сущностей с атрибутами
- •5. Студент (с)
- •Классификация атрибутов
- •Правила атрибутов
- •Безусловные связи
- •Условные формы связи
- •Формализация связи
- •Подтипы и супертипы
- •Рабочие продукты информационного моделирования
- •Пример информационной модели
- •Методология структурного анализа и проектирования sadt
- •Синтаксис и применение диаграмм
- •Синтаксис моделей и работа с ними
- •Стратегии декомпозиции при sadt-моделировании
- •Процесс sadt-моделирования
- •Инструментальные средства проектирования программного обеспечения
- •Классификация case средств
Преимущества V-образной модели жизненного цикла
V-образная модель является развитием каскадной модели. Поэтому она обладает всеми достоинствами последней. Кроме того, при подходящем использовании V-образная модель обеспечивает следующие преимущества:
планирование на ранних стадиях разработки системы ее тестирования;
обеспечение аттестации и верификации всех промежуточных результатов разработки;
упрощение (по сравнению с каскадной моделью) отслеживания хода процесса разработки, возможность более реального использования графика проекта;
простота в использовании.
Недостатки V-образной модели жизненного цикла
При использовании V-образной модели для несоответствующего ей проекта выявляются следующие ее недостатки:
сложность поддержки параллельных событий;
непредусмотренность итераций между фазами;
невозможность внесения динамических изменений в требования на разных этапах жизненного цикла;
поздние сроки тестирования требований в жизненном цикле, что оказывает существенное влияние на график выполнения проекта при необходимости выполнить их изменения;
отсутствие в модели действий, направленные на анализ рисков.
Общераспространенная модификация V-образной модели, направленная на преодоление ее недостатков, включает в себя внесение итерационных циклов для разрешения изменения в требованиях за рамками этапа анализа.
Область применения V-образной модели
Использование V-образной модели наиболее эффективно в следующих случаях:
при разработке проектов, для которых требования максимально четко определены и доступны заранее;
при разработке проектов, для которых определены и понятны методы реализации решения и технология, а разработчики имеют опыт в работе с данной технологией;
при разработке систем, в которых требуется высокая надежность.
Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем
При эволюционной стратегии разработки в начале жизненного цикла определяются не все требования. Система строится в виде последовательности версий [9].
Цель прототипирования программ – обеспечение полного понимания требований. Прототипирование наиболее эффективно в тех случаях, когда в проекте используется новая системная концепция или новая технология, так как в этих случаях достаточно сложно полностью и корректно разработать детальные технические требования к системе на ранних стадиях цикла разработки. Прототипирование позволяет итеративно уточнять требования к продукту при достижении предельно высокой производительности разработки проекта. При использовании эволюционного прототипирования снижаются затраты и оптимизируется соблюдение графиков.
Эволюционный прототип – это легко поддающаяся модификации и расширению рабочая модель предполагаемой системы, позволяющая пользователю получить представление о ключевых свойствах системы до ее непосредственной реализации. При этом активное участие в цикле разработки принимает заказчик.
Структурная эволюционная модель быстрого прототипирования, ориентированная на процессы, работы и задачи СТБ ИСО/МЭК 12207-2003, приведена на рис.2.4.
Начало жизненного цикла разработки находится в центре модели. С учетом предварительных требований пользователями и разработчиками разрабатывается предварительный план проекта.
Рис.2.4. Структурная эволюционная модель быстрого прототипирования
Затем выполняется быстрый анализ требований к системе, во время которого совместно с пользователями разрабатываются умышленно неполные требования. На их основе выполняется укрупненное проектирование, программирование и тестирование системы и ее программных компонентов. Таким образом, реализуется построение исходного прототипа.
После этого начинается итерационный цикл быстрого прототипирования. Пользователь оценивает функционирование прототипа. По результатам оценки уточняются требования, на основании которых разрабатывается новый прототип. Этот процесс продолжается до тех пор, пока быстрый прототип окажется удовлетворительным и будет принят пользователем.
Затем осуществляется детализированный процесс разработки системы, во время которого реализуются несущественные функции системы, пользовательские интерфейсы и т.п. После этого выполняется ввод в действие и поддержка приемки системы. В результате ускоренный прототип становится полностью действующей системой.
Существуют различные варианты эволюционной модели жизненного цикла.
Зачастую данная модель применяется в комбинации с каскадной моделью. На начальном этапе проекта используется прототипирование, а на последнем — этапы каскадной модели с целью обеспечения качества и функциональной эффективности системы.
Один из вариантов эволюционной модели приведен в ГОСТ Р ИСО/МЭК ТО 15271-2002 (рис.2.5).
Рис.2.5. Вариант эволюционной модели по ГОСТ Р ИСО/МЭК ТО 15271-2002