Рисунок 3.1.0 – Нормализованная ER-модель для функции 5 «Учет сведений о контрагентах (поставщиках)»
3.3. Перевод целостных и операционных ограничений на уровне локальных моделей
3.3.1 Модель1: Атрибут Водительские права => атрибут Категория ТС
3.3.2 Модель.1: атрибут Дата выдачи прав – ат. Дата рождения<= 18 лет
3.3.3 Модель.1: атрибут Дата выдачи паспорта – ат. Дата рождения <= 16 лет
3.3.4 Модель.2: если ат. флаг VIP клиента=истина, то ат. номер карты не пуст
3.3.5 Модель.2: если ат. флаг почасовой оплаты=истина, то ат. время движения не пуст
3.3.6 Модель.2: ат.НАЧАЛО_МАРШРУТА.Улица не = ат. КОНЕЦ_МАРШРУТА.Улица
3.3.7 Модель.3: если ат. Баланс <1000 руб., то ат.Скидка <= 10%
3.3.8 Модель.3: атрибут Дата Договора <(раньше) ат.Дата записи
3.3.9 Модель.4: атрибут Номинальная стоимость < ат. Затраты на Эксплуатацию
3.3.10 Модель.4: если ат. Код ответ-го сот-ка= ат. Код сот-ка , то ат. ФИО ответ-го сот-ка должен быть равным ат. ФИО ответ-го сот-ка
3.3.11 Модель.5: атрибут Телефон должен соответствовать коду города, который указан в ат. Юридический адрес
3.3.12 Модель.5: атрибут Факс должен соответствовать коду города, который указан в ат. Юридический адрес
3.3.13 Модель.5: атрибут Дата Договора <(раньше) ат. Дата записи
3.3 Вывод
В результате проектирования локальных ER-моделей, соответствующих отдельным автоматизируемым функциям, получены нормализованные локальные ER-модели, включающие от 2 до 4 сущностей в третьей нормальной форме. Разработанные спецификации ограничений и правил поддержания целостности включают все ограничения и правила, полученные на предыдущем этапе и трансформированные для локальных ER-моделей.
4 ПРОЕКТИРОВАНИЕ ГЛОБАЛЬНОЙ ER-МОДЕЛИ
Данный раздел посвящен проектированию глобальной ER-модели. Здесь производится выявление и устранение эквивалентных сущностей, выявление категорий и синтез обобщающих сущностей, выявление и устранение дублирования атрибутов и связей. Строится графическое представление глобальной модели, специфицируются ограничения и правила поддержания целостности на уровне глобальной модели.
4.1 Выявление и слияние эквивалентных сущностей
4.1.1 Сущности ЗАПИСЬ в локальных моделях эквивалентны, следовательно происходит их слияние в сущность ЗАПИСЬ в глобальной модели
4.1.2 Сущности ПАСПОРТ и НОМЕР (паспорта) в локальных моделях эквивалентны, следовательно происходит их слияние в сущность ПАСПОРТ и НОМЕР (паспорта) в глобальной модели соответственно
4.1.3 Сущности МАРКА МОДЕЛЬ в локальной модели №1 эквивалентны, следовательно происходит их слияние в сущность МАРКА МОДЕЛЬ в глобальной модели
4.1.4 Сущность СОТРУДНИК в локальной модели №2 эквивалентна сущности СОТРУДНИК в модели №1, следовательно происходит их слияние в сущность СОТРУДНИК в глобальной модели
4.1.5 Сущности ТЕЛЕФОН в моделях № 2,3,5 эквивалентны, следовательно, происходит их слияние в сущность ТЕЛЕФОН в глобальной модели
4.2 Выявление и синтез обобщающих сущностей
4.2.1 Сущности Личный А/М и ТС (Транспортное средство предприятия) имеют общие атрибуты, поэтому вводим обобщающую сущность АВТОМОБИЛЬ
4.3 Выявление и устранение дублирующихся атрибутов
4.3.1 В сущности МАТЕРИАЛЬНОЕ СРЕДСТВО есть атрибуты ФИО ответственного сотрудника и ФИО сотрудника, которые дублируются в сущности СОТРУДНИК, следовательно нужно убрать эти атрибуты из сущности МАТЕРИАЛЬНОЕ СРЕДСТВО
Выявление и устранение дублирующихся связей
Были выявлены контуры, что является необходимым, но недостаточным признаком дублирующей связи.
4.4 Графическое представление глобальной ER-модели
Глобальная ER-модель представлена на рисунке 4.1
1 М М 1
Имеет Заявка Выполнение Использование
VIP Карта Мат. Средство Сотрудник
Поставщик
1
ПаспортРисунок 4.1 – Глобальная ER-модель
4.5 Перевод целостных и операционных ограничений на уровень глобальной модели
4.5.1 Сущность СОТРУДНИК Атрибут Водительские права => Сущность МАРКА МОДЕЛЬ атрибут Категория ТС
4.5.2 Сущность СОТРУДНИК атрибут Дата выдачи прав – Сущность СОТРУДНИК ат. Дата рождения<= 18 лет
4.5.3 Сущность НОМЕР атрибут Дата выдачи паспорта – Сущность СОТРУДНИК ат. Дата рождения <= 16 лет
4.5.4 Сущность ВЫЗОВ: если ат. флаг VIP клиента=истина, то Сущность ВЫЗОВ ат. номер карты не пуст
4.5.5 Сущность ВЫЗОВ: если ат. флаг почасовой оплаты=истина, то Сущность ВЫЗОВ ат. время движения не пуст
4.5.6 Сущность НАЧАЛО ат.Улица не = Сущность КОНЕЦ ат. Улица
4.5.7 Сущность VIP КЛИЕНТ если ат. Баланс <1000 руб., то ат.Скидка <= 10%
4.5.8 Сущность VIP КАРТА: атрибут Дата Договора <(раньше) Сущность ЗАПИСЬ ат.Дата записи
4.5.9 Сущность МАТЕРИАЛЬНОЕ СРЕДСТВО атрибут Номинальная стоимость < Сущность МАТЕРИАЛЬНОЕ СРЕДСТВО ат. Затраты на Эксплуатацию
4.5.10 Сущность КОНТРАГЕНТ: атрибут Телефон должен соответствовать коду города, который указан в ат. Сущность КОНТРАГЕНТ Юридический адрес
4.5.11 Сущность КОНТРАГЕНТ: атрибут Факс должен соответствовать коду города, который указан в Сущность КОНТРАГЕНТ ат. Юридический адрес
4.5.12 Сущность КОНТРАГЕНТ: атрибут Дата Договора <(раньше) Сущность ЗАПИСЬ ат. Дата записи
4.6 Вывод
В результате проектирования глобальной ER-модели, соответствующей автоматизируемым функциям, получена модель, включающая 7 сущностей, 2 связи типа «многие ко многим» и 8 связей типа «один ко многим».
5 ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННОЙ SQL-МОДЕЛИ
Данный раздел посвящен проектированию реляционной SQL-модели. Здесь выполняется перевод глобальной ER-модели в реляционную форму, специфицируются ограничения и правила поддержания целостности на реляционном уровне, записывается SQL-код для создания реляционной модели.
5.1 Перевод глобальной ER-модели в реляционную форму
Устранение связей типа «один ко многим». Такие связи устраняются путем копирования первичных ключей исходной сущности в множество атрибутов дочерней.
Конкретные данные приведены в таблице 5.1
Таблица 5.1 - «Копирование первичных ключей при устранении связей типа «один ко многим».