
- •Основные понятия и определения
- •Модели жизненного цикла разработки программных средств и систем
- •Стратегии разработки программных средств и систем
- •Каскадная модель жизненного цикла разработки программных средств и систем
- •Преимущества каскадной модели жизненного цикла
- •Недостатки каскадной модели жизненного цикла
- •Область применения каскадной модели
- •V-образная модель жизненного цикла разработки программных средств и систем
- •Преимущества V-образной модели жизненного цикла
- •НедостаткиV-образной модели жизненного цикла
- •Область применения V-образной модели
- •Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем
- •Преимущества структурной эволюционной модели быстрого прототипирования
- •Недостатки структурной эволюционной модели быстрого прототипирования
- •Область применения структурной эволюционной модели быстрого прототипирования
- •Модель быстрой разработки приложений rad
- •Преимущества модели быстрой разработки
- •Недостатки модели быстрой разработки
- •Область применения модели быстрой разработки rad
- •Инкрементная модель жизненного цикла разработки программных средств и систем
- •Преимущества инкрементной модели жизненного цикла
- •Недостатки инкрементной модели жизненного цикла
- •Область применения инкрементной модели
- •Спиральная модель жизненного цикла разработки программных средств и систем
- •Преимущества спиральной модели жизненного цикла
- •Недостатки спиральной модели жизненного цикла
- •Область применения спиральной модели
- •Упрощенные варианты спиральной модели
- •Классификация проектов по созданию и развитию программных средств и систем
- •Классические технологии проектирования программ
- •Модульное проектирование программ
- •Метод нисходящего проектирования
- •Пошаговое уточнение
- •Кодирование программы с помощью псевдокода и управляющих конструкций структурного программирования
- •Использование комментариев для описания обработки данных
- •Анализ сообщений
- •Связность модуля
- •Сцепление модулей
- •Метод восходящего проектирования
- •Методы расширения ядра
- •Метод иерархического проектирования модулей (метод Джексона)
- •Основные конструкции построения структур данных
- •Построение структур данных
- •Создание структур программ
- •Этапы конструирования программы
- •Case-технологии проектирования программного обеспечения
- •Общие сведения о case-технологиях
- •Информационное моделирование
- •Сущности
- •Атрибуты
- •Способы представления сущностей с атрибутами
- •5. Студент (с)
- •Классификация атрибутов
- •Правила атрибутов
- •Безусловные связи
- •Условные формы связи
- •Формализация связи
- •Подтипы и супертипы
- •Рабочие продукты информационного моделирования
- •Методология структурного анализа и проектирования sadt
- •Введение
- •Общие сведения о методологии структурного анализа и проектирования sadt
- •Достоинства методологии sadt
- •Основные понятия idef0-модели
- •Синтаксис диаграмм
- •Синтаксис моделей
- •Декомпозиция и её стратегии при idef0-моделировании
- •Процесс моделирования в idef0
- •Инструментальные средства проектирования программного обеспечения
- •ЭволюцияCase-средств
- •Case–модель жизненного цикла.
- •Сравнительная оценка трудозатрат по этапам жизненного цикла.
- •Концептуальные основыCase–средств
- •Состав и функциональные особенностиCase–средств
- •КлассификацияCase–средств
Преимущества модели быстрой разработки
При использовании модели RAD в соответствующем ей проекте проявляются следующие ее достоинства:
сокращение времени цикла разработки для всего проекта за счет использования мощных инструментальных средств;
уменьшение количества разработчиков, связанное с постоянным участием в жизненном цикле разработки пользователей, осведомленных в предметной области;
возможность быстрого просмотра продукта;
сокращение затрат за счет сокращенного времени цикла, современных CASE-технологий, меньшего количества разработчиков;
сокращение риска, связанного с соблюдением графика, за счет использования принципа временного блока;
эффективное использование имеющихся в наличии средств;
сокращение риска, связанного с неудовлетворенностью заказчика разработанным продуктом, за счет его привлечения на постоянной основе к циклу разработки;
возрастание уверенности, что система будет соответствовать требованиям;
итерации прототипов предотвращают возникновение проблем и способствуют созданию обратной связи с потребителем;
основное внимание переносится с документации на код;
в модели повторно используются компоненты уже существующих продуктов.
Рисунок 2.11 – Вариант модели быстрой разработки приложений RAD
Недостатки модели быстрой разработки
Недостатки модели быстрой разработки при использовании в неподходящем для нее проекте:
необходимость пользователю постоянно принимать участие в процессе разработки на протяжении всего жизненного цикла, что часто невыполнимо и в итоге сказывается на конечном продукте;
необходимость в высококвалифицированных разработчиках, умеющих работать с инструментальными средствами разработки;
необходимость в больших людских ресурсах для создания достаточного количества групп при разработке крупномасштабных проектов;
необходимость моделирования системы;
возможность применения только для систем или программных средств, которые могут быть декомпозированы на отдельные модули;
возможность применения только для систем или программных средств, для которых отсутствует требование высокой производительности;
неэффективность модели при отсутствии пригодных для повторного использования компонентов;
жесткость временных ограничений на разработку прототипа;
сложность ограничения затрат и определения сроков завершения работы над проектом;
неприменимость в условиях высоких технических рисков, при использовании новых технологий;
существование риска незавершения работы над проектом в связи с возможностью появления замкнутого цикла;
необходимость в ускоренном процессе разработки для реализации эффективной обратной связи с пользователем.
Область применения модели быстрой разработки rad
Модель RAD подходит для применения в следующих ситуациях:
при разработке систем, которые поддаются моделированию;
при разработке систем и продуктов, требования для которых хорошо известны;
если пользователь может принимать участие в процессе разработки на протяжении всего жизненного цикла;
если пользователи хотят использовать инструментальные средства разработки;
при выполнении проектов в сокращенные сроки (как правило, не более чем за 60 дней);
при разработке систем, для которых требуется быстрое наращивание функциональных возможностей на последовательной основе;
при разработке систем, для которых имеются пригодные к повторному использованию компоненты;
при разработке систем, предназначенных для концептуальной проверки, являющихся некритическими или имеющих небольшой размер;
при разработке проектов, для которых затраты и соблюдение графика не являются очень важными;
при разработке систем низкой производительности;
при невысокой степени технических рисков;
при разработке информационных систем;
при разработке проектов в известной разработчикам предметной области;
если в проекте заняты разработчики, обладающие достаточными навыками в использовании инструментальных средств разработки.