- •Базовые принципы разработки программ (их описание)
- •Программный модуль, программный продукт, система, нотация
- •Основные процессы жизненного цикла (определения). Работы, из которых состоит процесс разработки
- •Вспомогательные процессы жизненного цикла. Организационные процессы жизненного цикла
- •Вспомогательные процессы жизненного цикла:
- •Базовые стратегии разработки по
- •Каскадная стратегия разработки программных средств и систем (понятие, достоинства и и недостатки)
- •Инкрементная стратегия разработки программных средств и систем (понятие, достоинства и недостатки)
- •Эволюционная стратегия разработки программных средств и систем (понятие, достоинства и недостатки)
- •Каскадная модель, варианты каскадной модели (рисунок справа)
- •Модели быстрой разработки приложений
- •Базовая модель быстрой разработки приложений. Достоинства, недостатки и области использования rad-моделей
- •Компонентно-ориентированная спиральная модель
- •Категории критериев классификации проектов по разработке программ
- •Стадии применения модели в конкретном проекте
- •Характеристики проекта (для решения задач процесса разработки)
- •Структурное программирование. Концепции структурного программирования
- •Базовые структуры программирования в соответствии с принципом Бома и Джакопини
- •Управляющие конструкции структурного программирования
- •Метод Дамке. Основные конструкции структурного программирования по методу Дамке.
- •Схемы Насси–Шнейдермана (структурограммы)
- •Обозначение конструкций структурированных алгоритмов в схемах Насси–Шнейдермана
- •Модульное проектирование программных средств
- •Признаки модульности программ. Достоинства модульного проектирования. Недостатки модульности
- •Методы нисходящего проектирования: суть метода.
- •Основные классические стратегии, на которых основана реализация метода нисходящего проектирования
- •Пошаговое уточнение. Способы реализации. Преимущества метода
- •Проектирование программных средств с помощью псевдокода и управляющих конструкций структурного программирования
- •Использование комментариев для описания обработки данных. Анализ сообщений
- •Методы восходящего проектирования. Случаи применения.
- •Методы расширения ядра, подходы к реализации метода
- •Метод jsp ДжексонаОсновные конструкции данных метода jsp Джексона. Этапы метода jsp
- •Виды документов для создания структур
- •Создание структуры программы. Этапы создания
- •Связанность модуля. Сцепление модуля
- •Сущность, особенности сущности
- •Основные понятия idef0-модели
- •Синтаксис idef0-диаграмм.Дуги в idef0-моделиВзаимоотношения между блоками в idef0-модели
- •Представление блоков и дуг на диаграмме
- •Основной принципом методологии Варнье–Орра. Базовые конструкции диаграмм Варнье–Орра
- •Способы представления сущностей с атрибутами
- •Графическое представление сущностей. Текстовый способ представления сущностей. Табличный способ представления сущностей
- •Контекстная диаграмма и ее декомпозиция. Стратегии декомпозиции в idef0-модели
- •Методы структурного анализа и проектирования
- •Принципы объектно-ориентированного анализа и проектирования
- •Виды отношений между объектами
- •Виды диаграмм языка uml
- •Язык uml Модели языка uml
- •Уровни моделей языка uml
- •Диаграмма вариантов использования
- •Виды отношений между элементами на диаграммах вариантов использования
- •Технология разработки программ
- •Динамическое программирование
- •Поиск. Поиск в списках Деревья поиска
- •Стратегия распределения памяти Сопрограммы
- •Матричное управление проектом
- •Структура группы выпуска документации
- •Компонент. Характеристики компонента Разновидности компонентов
- •Интерфейс компонента. Компоненты реализации программной системы
- •Компонентная объектная модель com
Базовая модель быстрой разработки приложений. Достоинства, недостатки и области использования rad-моделей
Достоинства:
1) сокращение продолжительности цикла разработки
2) сокращение риска
3) привлечение заказчика на постоянной основе к циклу разработки;
4) возможность повторного использования существующих компонентов
Недостатки
1) необходимость в постоянном участии пользователя в процессе разработки
2) необходимость в высококвалифицированных разработчиках
3) возможность применения только для систем или ПС, для которых отсутствует требование высокой производительности;
4) жесткость временных ограничений на разработку прототипа;
5) неприменимость в условиях высоких технических рисков, при использовании новых технологий.
Область применения
если пользователь может принимать постоянное участие в процессе разработки;
если в проекте заняты разработчики, обладающие достаточными навыками в использовании инструментальных средств разработки;
при выполнении проектов в сокращенные сроки;
при невысокой степени технических рисков;
в составе других моделей жизненного цикла.
Инкрементная модель. Инкрементная модель экстремального программирования
Инкрементные модели поддерживают инкрементную стратегию разработки ПС и систем. Данная стратегия представляет собой запланированное улучшение продукта в процессе его ЖЦ.
Существуют различные варианты реализации инкрементных моделей.
И
нкрементная
модель экстремального программирования
используется,
когда требования заказчика неопределены
или постоянно изменяются.
эволюционная модель (выше)
Структурная эволюционная модель быстрого прототипирования
П
рограммное
средство строится в виде последовательности
эволюционных прототипов.
Основное достоинство – ускорение
процеса разработки.
Спиральная модель Боэма. Спиральная модель «win-win»
Объединяют в себе преимущества других видов моделей. Этапы:
1 - определение потребности;
2 - анализ рисков;
3 - концептуальное прототипирование;
4 - разработка концепции требований к системе/программному продукту.
5 - планирование проекта.
6 - анализ целей,
7 - анализ рисков
8 - прототипирование требований
9 - оценка характеристик системы
10-разработка требований к системе
11 - планирование перехода на фазу проектирования системы
12-анализ цедей 13 - анализ рисков
14 - прототипирование проектирования системы
15 - проектирование системной/программной архитектуры, 16 - планирование перехода на фазу реализации.
17 - анализ возможности реализации в текущем цикле целей,
18 - анализ рисков фазы реализации;
19 - прототипирование реализации
20 - техническое проектирование программного средства;
21 - программирование и тестирование программного средства;
22 - сборка и квалификационные испытания программного средства;
23 - сборка и квалификационные испытания системы;
24 - планирование перехода на фазу расширения функциональных возможностей.
25 - анализ целей,
26 - приемочные испытания.
27 - оценка концепции;
28 - оценка требований;
2
9
- оценка проектирования;
30 - оценка версии системы
31 - поставка версии
32 - поставка очередной пригодной i
33 - аудит конфигурации версии.
