
- •Оглавление
- •6.8.2.1. Отношение ассоциации 208
- •6.8.2.2. Отношение обобщения 212
- •1.1. Основные понятия
- •1.2. Жизненный цикл по
- •1.3. Модели жизненного цикла по
- •Каскадная модель жц:
- •Спиральная модель жц:
- •2. Методологии и технологии проектирования ис
- •2.1. Общие требования к методологии и технологии
- •2.2. Структура комплекта документов
- •2.3. Наиболее перспективные и приемлемые технологии разработки по
- •2.3.1. Технологии, базирующиеся на case–средствах Computer Associates
- •2.3.2. Технологии, базирующиеся на case–средствах ibm Rational
- •2.3.2.1. Краткая характеристика основных технологических программных продуктов ibm Rational
- •3. Методология функционального моделирования idef0
- •3.1. Концепция методологии функционального моделирования idef0
- •3.2. Основные определения (понятия) методологии и языка idef0
- •3.3. Синтаксис графического языка idef0
- •3.4. Семантика языка idef0
- •3.5. Имена и метки
- •3.6. Отношения блоков на диаграммах
- •3.7. Диаграммы idef0
- •3.8. Дочерняя диаграмма
- •3.9. Родительская диаграмма
- •3.10. Свойства диаграмм
- •3.10.1. Стрелки как ограничения
- •3.10.2. Параллельное функционирование
- •3.10.3. Ветвление и слияние сегментов стрелок
- •3.11. Создание диаграмм idef0 в среде AllFusion Process Modeler
- •3.12. Диаграммы dfd
- •3.13. Пример проектирования функций подсистемы обработки и хранения данных
- •4. Idef3 – методология описания и моделирования процессов
- •4.1. Функциональный элемент
- •4.2. Элемент связи
- •4.2.1. Связи старшинства
- •4.2.2. Сдерживаемые связи старшинства
- •4.2.3. Относительные связи
- •4.2.4. Связь поток объектов
- •4.3. Перекресток
- •4.3.1. Типы перекрестков
- •4.3.2. Значения комбинаций перекрестков
- •4.4. Декомпозиция описания процесса
- •4.5. Примеры
- •5. Язык моделирования баз данных idef1x
- •5.1. Сущности
- •5.2. Связи и отношения
- •5.2.1. Мощность связей
- •5.3. Ключи
- •5.3.1 Внутренние и внешние ключи
- •5.3.2. Ссылочная целостность
- •5.4. Домены
- •5.5. Представления
- •5.6. Нормализация данных
- •5.7. Примеры построения диаграмм
- •5.8. Общие сведения о среде проектирования AllFusion Erwin Data Modeler
- •5.8.1. Построение логической модели
- •5.8.1.1. Диаграмма сущность – связь
- •5.8.1.2. Модель данных на основе ключа
- •5.8.1.3. Полная атрибутивная модель
- •5.8.2. Создание новой модели
- •5.8.3. Создание физического уровня базы данных на основе логического
- •5.8.4. Редактирование таблиц
- •5.8.5. Редактирование столбцов таблицы
- •5.8.6. Редактирование ключей и индексов таблицы
- •5.8.7. Редактирование связей таблиц
- •5.8.8. Сохранение модели базы данных
- •5.8.9. Генерация операторов для создания базы данных
- •5.8.10. Подготовка исходных данных для разработки новой версии бд
- •6. Язык uml, модели по, объектно–ориентированный анализ и проектирование по.
- •6.1. Основные элементы языка uml
- •6.1.1. Сущности
- •6.1.2. Отношения
- •6.1.3. Диаграммы
- •6.2. Диаграмма вариантов использования как концептуальное представление бизнес–системы в процессе ее разработки
- •6.2.1. Базовые элементы диаграммы вариантов использования
- •6.2.2. Отношения на диаграмме вариантов использования
- •6.2.2.1. Отношение ассоциации
- •6.2.2.2. Отношение включения
- •6.2.2.3. Отношение расширения
- •6.2.2.4. Отношение обобщения
- •6.2.3. Дополнительные обозначения языка uml для бизнес–моделирования
- •6.2.4. Примеры use case и их реализация
- •6.3. Диаграммы последовательности
- •6.3.1. Сообщения на диаграмме последовательности
- •6.3.2. Ветвление потока управления
- •6.3.3. Пример диаграммы последовательности
- •6.4. Диаграмма кооперации
- •6.4.1. Объекты диаграммы кооперации и их графическое изображение
- •6.4.2. Кооперация объектов
- •6.4.3. Пример совместного использования диаграмм кооперации и последовательности
- •6.5. Сравнение диаграммы последовательности и диаграммы кооперации
- •6.6. Диаграммы состояний
- •6.6.1. Составное состояние и подсостояние
- •6.6.1.1. Последовательные подсостояния
- •6.6.1.2. Параллельные подсостояния
- •6.6.1.3. Несовместимые подсостояния
- •6.6.2. Исторические состояния
- •6.6.3. Сложные переходы и псевдосостояния
- •6.6.4. Состояние синхронизации
- •6.6.5. Рекомендации по построению диаграмм состояний
- •6.6.6. Примеры диаграмм состояний
- •6.7. Диаграммы деятельностей
- •6.7.1. Примеры диаграмм деятельностей
- •6.8. Классы
- •6.8.1. Области видимости и действия, кратность и иерархия классов
- •6.8.2. Отношения между классами
- •6.8.2.1. Отношение ассоциации
- •6.8.2.2. Отношение обобщения
- •6.8.2.3. Отношение агрегации
- •6.8.2.4. Отношение композиции
- •6.8.3. Примеры диаграмм классов
- •6.9. Компоненты
- •6.9.1. Виды компонентов
- •6.9.2. Отношения между компонентами
- •6.9.3. Компоненты и классы
- •6.9.4. Компоненты и интерфейсы
- •6.9.5. Варианты графического изображения компонентов
- •6.9.6. Пример диаграммы компонентов
- •6.10. Диаграмма развертывания
- •6.10.1. Узел диаграммы развертывания
- •6.10.2. Отношения между узлами диаграммы
- •6.10.3. Пример диаграммы развертывания
- •Литература
5.4. Домены
Стандарт IDEF1x определяет домен как – поименованный и определенный набор значений, такой что один или более атрибутов получают значения из этого домена.
Домен, как и класс, который фиксирует и определяет допустимое множество значений. Например, домен «код–страны» (см. рис. 5.5.) – определяет код страны, который может состоять из двух специальных букв. Домен – это неизменный класс значения, которого не изменяются во времени. В противоположность этому значения сущности меняются во времени. Каждое значение домена уникальное в этом домене.
Рис. 5.5. Пример домена
Существуют два типа доменов: базовые домены (Character, Numeric, Boolean в IDEF1x, а в Erwin: String, Number, Datetime, Blob) и типизированные домены (производные), например, «код–страны–СНГ». Все базовые домены имеют правила использования значений данных из домена. Наиболее используемые это два правила: список значений и диапазоны. Для каждого домена могут быть установлены свои правила определения значений.
Типизированные домены – это подтипы базовых типов или другие типизированные домены.
На логическом уровне домены можно описать без конкретных физических свойств, а уже на физическом уровне они получают конкретные специфические свойства. Например, домен «код–страны–СНГ» на логическом уровне может иметь тип String, а на физическом уровне (DB2) будет присвоен тип Char(2) и указано конкретное множество значений домена и правила валидации. Для другой БД физический уровень значений может быть задан свой.
5.5. Представления
Представления (View) представляют собой объекты СУБД данные, в которых формируются динамически при обращении к представлению, т.е. данные не хранятся постоянно как в таблицах БД. Представление определяется в терминах тех таблиц БД и их атрибутов, которые уже есть БД. Для создания представления может использоваться одна или более реальных таблиц БД.
Использование представлений (View) крайне удобный механизм:
– для обеспечения безопасности и секретности доступа к данным в БД, для каждого пользователя (разработчика), может быть разработано и предоставлено свое представление (видение) данных;
– для разработки интерфейса взаимодействия между подсистемами или системами;
– для разработки пользовательского интерфейса WEB – сайта;
– для замены сложной системы репликацией данных в другие системы, в которых модели данных существенно отличаются от модели данных исходной системы.
Разработка представлений разрабатывается на физическом уровне и AllFusion Erwin Data Modeler содержит специальные средства для создания таблиц представления и операторов SQL для заполнения их данными.
Так на рис. 5.6. приведена диаграмма представления для таблиц БД. Эти таблицы содержат внутренние суррогатные PK ключи идентификации данных, которые для пользователя БД ни о чем не говорят. Пользователю БД необходимы реальные общепринятые данные: код дороги, код отделения дороги, код станции на дороге – поэтому для отображения реальных данных используются представления. Таблицы представлений (прямоугольники с овальными углами) связаны отношениями с таблицами БД (прямоугольники) и содержат те атрибуты, которые будут заполнены из соответствующих атрибутов таблиц БД.
Рис. 5.6. Диаграмма представления для таблиц БД
На рис. 5.7. и 5.8. приведен диалог Views для определения представления и генерации оператора Create для его создания в среде ERwin.
На рис. 5.9. приведен диалог создания оператора Select для заполнения представления.
Рис. 5.7. Определение представления
Рис. 5.8. Генерации оператора Create для создания представления
Рис. 5.9. Диалог создания оператора Select для заполнения представления
На рис. 5.10. приведена информация, выдаваемая пользователю прямо из таблицы БД, которая содержит внутренние ключи (PK и FK) и на рис. 5.11. приведена информация, выдаваемая пользователю через разработанное представление.
Рис. 5.10. Информация, выдаваемая пользователю прямо из таблицы БД
Рис. 5.11. Информация, выдаваемая пользователю через разработанное представление