Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Введение в технологию разработки промышленного ПО



ОГЛАВЛЕНИЕ

1. Введение в технологию разработки промышленного ПО.. 8

1.1. Основные понятия. 8

1.2. Жизненный цикл ПО.. 9

1.3. Модели жизненного цикла ПО.. 11

2. Методологии и технологии проектирования ИС.. 15

2.1. Общие требования к методологии и технологии. 15

2.2. Структура комплекта документов. 17

2.3. Наиболее перспективные и приемлемые технологии разработки ПО.. 20

2.3.1. Технологии, базирующиеся на CASE–средствах Computer Associates. 21

2.3.2. Технологии, базирующиеся на CASE–средствах IBM Rational 24

2.3.2.1. Краткая характеристика основных технологических программных продуктов IBM Rational 26

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

3.1. Концепция методологии функционального моделирования IDEF0. 36

3.2. Основные определения (понятия) методологии и языка IDEF0. 38

3.3. Синтаксис графического языка IDEF0. 41

3.4. Семантика языка IDEF0. 42

3.5. Имена и метки. 43

3.6. Отношения блоков на диаграммах. 44

3.7. Диаграммы IDEF0. 47

3.8. Дочерняя диаграмма. 51

3.9. Родительская диаграмма. 52

3.10. Свойства диаграмм.. 54

3.10.1. Стрелки как ограничения. 54

3.10.2. Параллельное функционирование. 55

3.10.3. Ветвление и слияние сегментов стрелок. 56

3.11. Создание диаграмм IDEF0 в среде AllFusion Process Modeler. 58

3.12. Диаграммы DFD.. 62

3.13. Пример проектирования функций подсистемы обработки и хранения данных. 63

4. IDEF3 – методология описания и моделирования процессов.. 72

4.1. Функциональный элемент. 74

4.2. Элемент связи. 75

4.2.1. Связи старшинства. 75

4.2.2. Сдерживаемые связи старшинства. 76

4.2.3. Относительные связи. 76

4.2.4. Связь поток объектов. 76

4.3. Перекресток. 77

4.3.1. Типы перекрестков. 77

4.3.2. Значения комбинаций перекрестков. 78

4.4. Декомпозиция описания процесса. 82

4.5. Примеры.. 84

5. Язык моделирования баз данных IDEF1x.. 89

5.1. Сущности. 89

5.2. Связи и отношения. 91

5.2.1. Мощность связей. 92

5.3. Ключи. 94

5.3.1 Внутренние и внешние ключи. 95

5.3.2. Ссылочная целостность. 96

5.4. Домены.. 98

5.5. Представления. 99

5.6. Нормализация данных. 104

5.7. Примеры построения диаграмм.. 105

5.8. Общие сведения о среде проектирования AllFusion Erwin Data Modeler. 112

5.8.1. Построение логической модели. 117

5.8.1.1. Диаграмма сущность – связь. 117

5.8.1.2. Модель данных на основе ключа. 119

5.8.1.3. Полная атрибутивная модель. 121

5.8.2. Создание новой модели. 123

5.8.3. Создание физического уровня базы данных на основе логического. 124

5.8.4. Редактирование таблиц. 124

5.8.5. Редактирование столбцов таблицы.. 126

5.8.6. Редактирование ключей и индексов таблицы.. 127

5.8.7. Редактирование связей таблиц. 128

5.8.8. Сохранение модели базы данных. 129

5.8.9. Генерация операторов для создания базы данных. 130

5.8.10. Подготовка исходных данных для разработки новой версии БД.. 133

6. Язык UML, модели ПО, объектно–ориентированный анализ и проектирование ПО. 135

6.1. Основные элементы языка UML.. 137

6.1.1. Сущности. 137

6.1.2. Отношения. 145

6.1.3. Диаграммы.. 147

6.2. Диаграмма вариантов использования как концептуальное представление бизнес–системы в процессе ее разработки. 149

6.2.1. Базовые элементы диаграммы вариантов использования. 150

6.2.2. Отношения на диаграмме вариантов использования. 153

6.2.2.1. Отношение ассоциации. 153

6.2.2.2. Отношение включения. 154

6.2.2.3. Отношение расширения. 155

6.2.2.4. Отношение обобщения. 156

6.2.3. Дополнительные обозначения языка UML для бизнес–моделирования. 157

6.2.4. Примеры USE CASE и их реализация. 159

6.3. Диаграммы последовательности. 163

6.3.1. Сообщения на диаграмме последовательности. 166

6.3.2. Ветвление потока управления. 168

6.3.3. Пример диаграммы последовательности. 170

6.4. Диаграмма кооперации. 170

6.4.1. Объекты диаграммы кооперации и их графическое изображение. 171

6.4.2. Кооперация объектов. 173

6.4.3. Пример совместного использования диаграмм кооперации и последовательности. 175

6.5. Сравнение диаграммы последовательности и диаграммы кооперации. 176

6.6. Диаграммы состояний. 179

6.6.1. Составное состояние и подсостояние. 183

6.6.1.1. Последовательные подсостояния. 184

6.6.1.2. Параллельные подсостояния. 185

6.6.1.3. Несовместимые подсостояния. 186

6.6.2. Исторические состояния. 187

6.6.3. Сложные переходы и псевдосостояния. 188

6.6.4. Состояние синхронизации. 190

6.6.5. Рекомендации по построению диаграмм состояний. 191

6.6.6. Примеры диаграмм состояний. 192

6.7. Диаграммы деятельностей. 195

6.7.1. Примеры диаграмм деятельностей. 202

6.8. Классы.. 204

6.8.1. Области видимости и действия, кратность и иерархия классов. 207

6.8.2. Отношения между классами. 210

6.8.2.1. Отношение ассоциации. 210

6.8.2.2. Отношение обобщения. 214

6.8.2.3. Отношение агрегации. 217

6.8.2.4. Отношение композиции. 219

6.8.3. Примеры диаграмм классов. 220

6.9. Компоненты.. 223

6.9.1. Виды компонентов. 224

6.9.2. Отношения между компонентами. 225

6.9.3. Компоненты и классы.. 226

6.9.4. Компоненты и интерфейсы.. 227

6.9.5. Варианты графического изображения компонентов. 230

6.9.6. Пример диаграммы компонентов. 232

6.10. Диаграмма развертывания. 233

6.10.1. Узел диаграммы развертывания. 233

6.10.2. Отношения между узлами диаграммы.. 236

6.10.3. Пример диаграммы развертывания. 237

Литература.. 238


Введение в технологию разработки промышленного ПО

Основные понятия

Трудозатраты, связанные с созданием программного обеспечения (ПО) прямо связаны с качеством и сложностью создаваемого ПО. Так трудозатраты на создание программного продукта в три раза больше, чем обычной программы, а трудозатраты на создание простого приложения (редактор текстов), среднего уровня сложности (трансляторы) и высокого уровня сложности (операционные системы) возрастают еще в три раза.

Поэтому крайне важны используемые технологии для разработки промышленного программного продукта.

Технология ПО включает в себя такие понятия, как методы, инструменты, организационные мероприятия направленные на создания промышленного ПО.

Под технологией программирования понимают организованную совокупность методов, средств и их программного обеспечения, организационно–административных установлений, направленных на разработку, распространение и сопровождение программной продукции.

Создание ПО включает:

Существенные задачи – моделирование сложных концептуальных структур объектов реального мира большой сложности с помощью абстрактных программных объектов;

Второстепенные задачи – создание представлений этих абстрактных объектов в программе и описание их поведения.

И если 90% усилий разработчиков (затрат) связано не с существенными задачами, то сведя все затраты к нулю не получим роста в порядки (сравните с электроникой).

Если просмотреть историю, то все усилия были направлены на преодоление второстепенных задач.

Пути преодоления существенной сложности:

Массовый рынок (главное не скорость, а качество и сопровождение);

Лучший способ повысить производительность труда – купить;

Быстрое макетирование для установления технических требований к ПО;

Наращивать программы постепенно, добавляя функциональность (хорошо протестированную);

Хорошая команда.

Трудности создания ПО:

1. Внутренние, присущие ему (задание технических требований, проектирование и проверка):

Сложность – размеры, одинаковых нет, они не просто объединяются, масштабирование это непростое увеличение, это добавление новых элементов и связей, нелинейный рост сложности – сложность присуща (существенна) программным объектам и от нее абстрагироваться нельзя;

Согласованность – между людьми, между интерфейсами, которые появились не понятно, как и когда (10 и более лет);

Изменяемость – постоянно изменяются требования и применение ПО;

Незримость – ПО невидимо, различные графовые модели дают некоторое представление только с определенной точки зрения, но само ПО не плоское и его трудно передать такими моделями.

2. Сопутствующие, внутренне ему не присущие.

Движущей силой использования принципов программной инженерии было опасение крупных аварий, к которым могла привести (и привела) разработка все более сложных систем неуправляемыми художниками (не производительность в разы, хотя она и возросла от 3 до 5 раз)

Данные МО США по цене исправления одной ошибки следующие: обнаруженные и исправленные на стадии требований – 139$, на стадии кодирования – 1000$, на стадии тестирования – 7000$, на стадии внедрения – 14000$.





Дата публикования: 2014-10-25; Прочитано: 479 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...