- •Основные понятия и определения
- •Модели жизненного цикла разработки программных средств и систем
- •Стратегии разработки программных средств и систем
- •Каскадная модель жизненного цикла разработки программных средств и систем
- •Преимущества каскадной модели жизненного цикла
- •Недостатки каскадной модели жизненного цикла
- •Область применения каскадной модели
- •V-образная модель жизненного цикла разработки программных средств и систем
- •Преимущества V-образной модели жизненного цикла
- •НедостаткиV-образной модели жизненного цикла
- •Область применения V-образной модели
- •Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем
- •Преимущества структурной эволюционной модели быстрого прототипирования
- •Недостатки структурной эволюционной модели быстрого прототипирования
- •Область применения структурной эволюционной модели быстрого прототипирования
- •Модель быстрой разработки приложений rad
- •Преимущества модели быстрой разработки
- •Недостатки модели быстрой разработки
- •Область применения модели быстрой разработки rad
- •Инкрементная модель жизненного цикла разработки программных средств и систем
- •Преимущества инкрементной модели жизненного цикла
- •Недостатки инкрементной модели жизненного цикла
- •Область применения инкрементной модели
- •Спиральная модель жизненного цикла разработки программных средств и систем
- •Преимущества спиральной модели жизненного цикла
- •Недостатки спиральной модели жизненного цикла
- •Область применения спиральной модели
- •Упрощенные варианты спиральной модели
- •Классификация проектов по созданию и развитию программных средств и систем
- •Классические технологии проектирования программ
- •Модульное проектирование программ
- •Метод нисходящего проектирования
- •Пошаговое уточнение
- •Кодирование программы с помощью псевдокода и управляющих конструкций структурного программирования
- •Использование комментариев для описания обработки данных
- •Анализ сообщений
- •Связность модуля
- •Сцепление модулей
- •Метод восходящего проектирования
- •Методы расширения ядра
- •Метод иерархического проектирования модулей (метод Джексона)
- •Основные конструкции построения структур данных
- •Построение структур данных
- •Создание структур программ
- •Этапы конструирования программы
- •Case-технологии проектирования программного обеспечения
- •Общие сведения о case-технологиях
- •Информационное моделирование
- •Сущности
- •Атрибуты
- •Способы представления сущностей с атрибутами
- •5. Студент (с)
- •Классификация атрибутов
- •Правила атрибутов
- •Безусловные связи
- •Условные формы связи
- •Формализация связи
- •Подтипы и супертипы
- •Рабочие продукты информационного моделирования
- •Методология структурного анализа и проектирования sadt
- •Введение
- •Общие сведения о методологии структурного анализа и проектирования sadt
- •Достоинства методологии sadt
- •Основные понятия idef0-модели
- •Синтаксис диаграмм
- •Синтаксис моделей
- •Декомпозиция и её стратегии при idef0-моделировании
- •Процесс моделирования в idef0
- •Инструментальные средства проектирования программного обеспечения
- •ЭволюцияCase-средств
- •Case–модель жизненного цикла.
- •Сравнительная оценка трудозатрат по этапам жизненного цикла.
- •Концептуальные основыCase–средств
- •Состав и функциональные особенностиCase–средств
- •КлассификацияCase–средств
СОДЕРЖАНИЕ
1 Основные понятия и определения 2
2 Модели жизненного цикла разработки программных средств и систем 4
2.1 Стратегии разработки программных средств и систем 4
2.2 Каскадная модель жизненного цикла разработки программных средств и систем 5
2.3 V-образная модель жизненного цикла разработки программных средств и систем 10
2.4 Структурная эволюционная модель быстрого прототипирования жизненного цикла разработки программных средств и систем 13
2.5 Модель быстрой разработки приложений RAD 18
2.6 Инкрементная модель жизненного цикла разработки программных средств и систем 23
2.7 Спиральная модель жизненного цикла разработки программных средств и систем 27
2.8 Упрощенные варианты спиральной модели 32
2.9 Классификация проектов по созданию и развитию программных средств и систем 39
3 Классические технологии проектирования программ 40
3.1 Модульное проектирование программ 40
3.2 Метод нисходящего проектирования 40
3.3 Связность модуля 46
3.4 Сцепление модулей 48
3.5 Метод восходящего проектирования 49
3.6 Методы расширения ядра 50
4 CASE-технологии проектирования программного обеспечения 69
4.1 Общие сведения о CASE-технологиях 69
4.2 Информационное моделирование 69
4.3 Методология структурного анализа и проектирования SADT 81
5 Инструментальные средства проектирования программного обеспечения 100
5.1 Эволюция Case-средств 100
5.2 CASE–модель жизненного цикла. 100
5.3 Сравнительная оценка трудозатрат по этапам жизненного цикла. 102
5.4 Концептуальные основы Case–средств 102
5.5 Состав и функциональные особенности CASE–средств 103
5.6 Классификация CASE–средств 103
Основные понятия и определения
Технология разработки программного обеспечения(ПО) – это совокупность процессов и методов создания, сопровождения и применения программного продукта. Любая технология разработки ПО базируется на методологии разработки программ.
Под методологиейпонимается система принципов и способов организации процесса разработки программ.Цельметодологии разработки ПО – внедрение методов проектирования программ, обеспечивающих достижение соответствующих характеристик качества.
В настоящее время широкую известность приобрели два базовых принципа разработки программных средств (ПС): модульный принципиобъектно-ориентированный принцип. Разработка модульных программ основывается на использовании таких классических методов как нисходящее проектирование, расширение ядра, восходящее проектирование и их комбинаций, а также ряда современных методологий разработки ПО. Объектно-ориентированная разработка базируется на комбинации методологий объектно-ориентированного анализа и объектно-ориентированного программирования.
Одним из базовых понятий технологии разработки программного обеспечения является жизненный цикл программного средства или системы. В соответствии со стандартом СТБ ИСО/МЭК 12207-2003 под жизненным циклом (ЖЦ) программного средстваили системыподразумевается совокупность процессов, работ изадач, включающая в себя разработку, эксплуатацию и сопровождение ПС или системы,охватывающая их жизнь от установления требований к ним до прекращения их использования.
В соответствии с даннымстандартом ЖЦ ПС состоит изпроцессов. Каждый процесс ЖЦ разделен на наборработ. Каждая работа разделена на наборзадач.
Процессы ЖЦ ПСделятся на следующие группы:
основные;
вспомогательные;
организационные.
К основным процессамотносятся следующие процессы:
заказ;
поставка;
разработка;
эксплуатация;
сопровождение.
Процесс разработкисостоит из работ и задач, выполняемых разработчиком, и включает работы по анализу требований, проектированию, программированию, сборке, тестированию, вводу в действие и приемке ПС. Процесс разработки содержиттринадцатьработ:
подготовка процесса;
анализ требований к системе;
проектирование системной архитектуры;
анализ требований к программным средствам;
проектирование программной архитектуры;
техническое проектирование программных средств;
программирование и тестирование программных средств;
сборка программных средств;
квалификационные испытания программных средств;
сборка системы;
квалификационные испытания системы;
ввод в действие программных средств (системы);
обеспечение приемки программных средств.
К вспомогательным процессамотносятся следующие процессы:
документирование;
управление конфигурацией;
обеспечение качества;
верификация;
аттестация;
совместный анализ;
аудит;
решение проблем.
Вспомогательные процессы входят в состав других процессов и обеспечивают успешную реализацию и качество выполнения программного проекта.
К организационным процессамотносятся следующие процессы:
управление;
создание инфраструктуры;
усовершенствование;
обучение.
Организационные процессы применяются в организации для создания структуры, охватывающей процессы ЖЦ и соответствующий персонал.
С понятием жизненного цикла программного средства или системы тесно связано понятие модели жизненного цикла. Модель жизненного цикла– это совокупность процессов, работ и задач ЖЦ, отражающая их взаимосвязь и последовательность выполнения.