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