Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие.doc
Скачиваний:
434
Добавлен:
04.06.2015
Размер:
2.33 Mб
Скачать

Якунин Юрий Юрьевич

Учебное пособие по теоретической подготовке «Технологии разработки программного обеспечения»

Аннотация

Пособие содержит теоретический материал, необходимый для освоения курса «Технология разработки программного обеспечения». В пособии представлен материал в соответствии с учебной программой дисциплины, который охватывает технологии, методики и стандарты, обеспечивающие процесс разработки программного обеспечения на протяжении всего жизненного цикла. Особое внимание уделено новой технологии, ориентированной на архитектуру, управляемую моделью – MDAи языкам модельной разработки –UMLиOCL.

Для студентов обучающихся по направлению 230100 – Информатика и вычислительная техника. Для освоения данного курса студенты должны иметь навыки объектно-ориентированного проектирования и программирования, а также иметь знания по курсу «Базы данных».

Оглавление

Введение 7

1. Введение в технологии разработки программного обеспечения 7

1.1. Основные этапы развития технологии разработки 7

1.1.1. Первый этап – «стихийное» программирование. 8

1.1.2. Второй этап – структурный подход к программированию (60-70-е годы XX в) 11

1.1.3. Третий этап – объектный подход к программированию (с середины 80-х годов до нашего времени) 13

1.1.4. Четвертый этап – компонентный подход и CASE-технологии (с середины 90-х годов до нашего времени) 15

1.1.5. Пятый этап – разработка, ориентированная на архитектуру и CASE-технологии (с начала XXI в. до нашего времени) 18

1.2. Эволюция моделей жизненного цикла программного обеспечения 19

1.2.1. Каскадная модель 19

1.2.2. Спиральная модель 22

1.2.3. Макетирование 23

1.2.4. Быстрая разработка приложений 26

1.2.5. Компонентно-ориентированная модель 28

5.1.1 XP-процесс 28

1.3. Стандарты, регламентирующие процесс разработки программного обеспечения 32

1.3.1. ГОСТ Р ИСО 9000-2001. Системы менеджмента качества. Основные положения и словарь 32

1.3.2. ГОСТ Р ИСО/МЭК ТО 15504 42

1.3.3. ГОСТ Р ИСО/МЭК 12207-99. Информационная технология. Процессы жизненного цикла программных средств 60

2. Анализ проблемы и постановка задачи 67

2.1. Введение в системный анализ 67

2.2. Системные ресурсы 68

2.3. Анализ проблемы и моделирование предметной области с использованием системного подхода 70

2.3.1. Основные положения 70

2.3.2. Этап 1. Достижение соглашения об определении проблемы 71

2.3.3. Этап 2. Выделение основных причин – проблем, стоящих за проблемой 71

2.3.4. Этап 3. Выявление заинтересованных лиц и пользователей 73

2.3.5. Этап 4. Определение границ системы-решения 75

2.3.6. Этап 5. Выявление ограничений, налагаемых на решение 76

2.4. Методология ARIS 79

2.4.1. Организационная модель 81

2.4.2. Диаграмма цепочки добавленного качества 83

2.4.3. Модели eEPC 84

2.5. Стандарты IDEF0 - IDEF3 86

2.5.1. Методология описания бизнес процессов IDEF3 86

2.5.2. Методология функционального моделирования IDEF0 95

3. Анализ требований и их формализация 111

3.1. Методы определения требований 111

3.1.1. Интервьюирование 111

3.1.2. Мозговой штурм и отбор идей 114

3.1.3. Совместная разработка приложений (JAD – Joint application design) 116

3.1.4. Раскадровка 118

3.1.5. Обыгрывание ролей 120

3.1.6. CRC-карточки (Class-Responsibility-Collaboration, класс-обязанность-взаимодействие) 121

3.1.7. Быстрое прототипирование 122

3.2. Формализация требований 125

3.2.1. Метод вариантов использования и его применение 125

3.2.2. Псевдокод 129

3.2.3. Конечные автоматы 130

3.2.4. Графические деревья решений 131

3.2.5. Диаграммы деятельности 131

3.3. Техническое задание (ГОСТ 34.602-89) 133

3.3.1. Общие сведения 133

3.3.2. Назначение и цели создания (развития) системы 133

3.3.3. Характеристики объекта автоматизации 133

3.3.4. Требования к системе 134

3.3.5. Состав и содержание работ по созданию системы 138

3.3.6. Порядок контроля и приемки системы 139

3.3.7. Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие 139

3.3.8. Требования к документированию 139

3.3.9. Источники разработки 140

4. Архитектуры программных систем 140

4.1. Планирование архитектуры 140

4.1.1. Архитектурно-экономический цикл 140

4.1.2. Программный процесс и архитектурно-экономический цикл 143

4.1.3. Суть программной архитектуры 145

4.2. Проектирование архитектуры 156

4.2.1. Атрибутный метод проектирования 156

4.2.2. Создание макета системы 158

4.3. Документирование программной архитектуры 160

4.3.1. Варианты применения архитектурной документации 160

4.3.2. Представления 161

4.3.3. Документирование представления 163

4.4. Методы анализа архитектуры 171

4.4.1. Метод анализа компромиссных архитектурных решений – комплексный подход к оценке архитектуры 171

4.4.2. Метод анализа стоимости и эффективности — количественный подход к принятию архитектурно-проектных решений 173

5. Технология MDA. 178

5.1. Использование архитектуры, управляемой моделью 178

5.1.1. Концепция архитектуры, управляемой моделью 178

5.1.2. Модельные точки зрения и модели MDA 180

5.2. Язык объектных ограничений OCL 183

5.2.1. Типы данных и операции OCL 184

5.2.2. Инфиксная форма записи выражений OCL 185

5.2.3. Последовательности доступа к объектам в языке OCL 186

5.2.4. Операции над коллекциями 187

5.3. Возможности технологии ECO 190

5.3.1. Введение в технологию ЕСО 190

5.3.2. Модель ЕСО 192

5.3.3. Пространство имен ЕСО 192

5.4. Разработка приложений на основе ECO 193

5.4.1. Этапы создания приложения по технологии ECO 193

5.4.2. Создание простого MDA-приложения 193

6. Документирование программных систем в соответствии с ГОСТ 204

6.1. Управление документированием программного обеспечения 204

6.1.1. Предисловие 204

6.1.2. Область применения 205

6.1.3. Роль руководителей 205

6.1.4. Функции программной документации 206

6.1.5. Установление стратегии документирования 208

6.1.6. Определение стандартов и руководств по документированию 209

6.1.7. Установление процедуры документирования 214

6.1.8. Распределение ресурсов для документирования 215

6.1.9. Планирование документирования 216

6.2. Требования к содержанию документов на автоматизированные системы 217

6.2.1. Общие положения 217

6.2.2. Требования к содержанию документов по общесистемным решениям 218

6.2.3. Требования к содержанию документов с решениями по организационному обеспечению 230

6.2.4. Требования к содержанию документов с решениями по программному обеспечению 234

6.2.5. Другие разделы 235

6.3. Принципы разработки руководства программиста 236

6.3.1. Общие положения 236

6.3.2. Содержание разделов 236

6.4. Разработка руководства пользователя 237

6.4.1. Общие замечания 237

6.4.2. Содержание разделов руководства 239

Заключение 241

Библиографический список 242

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]