База данных для информационной системы "Туристическое агентство"

Выбор автоматизируемых функций и информационного обеспечения, служащих основой для дальнейшего проектирования структуры базы данных. Описание предметной области "Туристическое агентство". Иерархическая модель данных и локальные ограничения целостности.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.12.2010
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

3

Размещено на http://www.allbest.ru/

Федеральное агентство по образованию Российской Федерации

УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра автоматизированных систем управления

База данных для информационной системы «Туристическое агентство»

Пояснительная записка к курсовому проекту

по дисциплине

«Базы данных и знаний»

Уфа-2009

Содержание

1. Выбор автоматизируемых функций

1.1 Краткое описание предметной области

1.2 Выбор и описание автоматизируемых функций

1.3 Первичное описание информационного обеспечения

1.4 Вывод

2. Проектирование исходных локальных моделей

2.1 Составление исходных локальных моделей

2.2 Спецификации локальных ограничений и правил

2.3 Вывод

3. Проектирование нормализованных локальных ER-моделей

3.1 Нормализация локальных ER-моделей

3.2 Спецификации локальных ограничений и правил

3.3 Вывод

4. Проектирование глобальной ER-моделей

4.1 Анализ дублирования в локальных моделях

4.2 Спецификации локальных ограничений и правил

4.3 Синтез глобальной ER-модели

4.4 Вывод

5. SQL-код создания таблиц

1. Выбор автоматизируемых функций

Данный раздел посвящен выбору автоматизируемых функций и информационного обеспечения, служащих основой для дальнейшего проектирования структуры базы данных. Здесь дается краткое описание предметной области «Туристическое агентство»; производится выбор и описание автоматизируемых функций; выполняется первичное описание информационного обеспечения.

1.1 Краткое описание предметной области

В данном подразделе дается краткое описание предметной области, в которой функционирует информационная система «Туристическое агентство».

Описываются среда функционирования, объект и субъект управления, цели и задачи управления.

1.1.1 Среда функционирования информационной системы «Туристическое агентство».

Информационная система «Туристическое агентство» позволяет упорядочить работу туристического агентства: все договора, путевки, заявки, данные туристов и т.д. хранятся в электронном виде в одном файле на компьютере и легко могут быть найдены и воспроизведены на бумаге. Информационная система позволяет печатать данные о путешествии на типографском бланке - нет необходимости заполнять бланк от руки, намного облегчается ведение и анализ клиентской базы, упрощается работа и расчеты с клиентами: расчетные документы (например, приходные кассовые ордера) легко могут быть оформлены и учтены. Данные клиента и информация о путешествии вносятся в базу один раз и используются для оформления всех необходимых документов: путевок, заявок, договоров, памяток и т.д. При этом значительно уменьшается вероятность ошибок при заполнении документов (например, ошибок в ФИО туристов или их паспортных данных). Информационная система позволяет легко собирать и анализировать статистические данные о количестве и характере путешествий туристов, качестве работы менеджеров агентства, популярности туристических маршрутов, отелей и т.д.

1.1.2 Объект управления представляет собой подсистему материальных элементов экономической деятельности и хозяйственных процессов.

1.1.3 Субъектами управления системы «Туристическое агентство» являются работники туристического агентства. Но, в первую очередь, данная информационная система адресована руководителям туристических агентств, как инструмент эффективного управления офисами продаж.

1.1.4 Цель управления заключается в повышении качества обслуживания клиентов за счет сокращения сроков обслуживания на всех этапах, начиная с подбора подходящего тура и заканчивая оформлением документов, а также за счет сокращения ошибок персонала. Все это, в конечном итоге, должно привести к увеличению прибыли предприятия.

1.2 Выбор и описание автоматизируемых функций

В данном подразделе выбираются и кратко описываются четыре функции управляющей системы, которые предполагается автоматизировать с использованием разрабатываемой информационной системы.

1.2.1 Перечень автоматизируемых функций

Для автоматизации были выбраны следующие типовые бизнес-процессы:

1) Учет кадров;

2) Учет клиентов;

3) Учет туроператоров;

4) Оформление заказа.

1.2.2 Функция 1 «Учет кадров»

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

Особенности автоматизированной реализации функции состоят в том, что в базе данных размещаются сведения о контактных телефонах сотрудника, позволяющие обеспечить руководству быструю связь с ним в критических ситуациях.

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

1.2.3 Функция 2 «Учет клиентов»

Данная функция предназначена для учета всех клиентов туристического агентства, в том числе и потенциальных.

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

1.2.4 Функция 3 «Учет туроператоров»

Данная функция предназначена для учета контрагентов туристического агентства.

Ожидается, что автоматизация данной функции приведет к значительному сокращению времени и трудоемкости этого вида учета.

1.2.5 Функция 4 «Оформление заказа»

Данная функция вести единую базу заказов клиентов в рамках одного туристического агентства.

Особенности автоматизированной реализации функции состоят в том, что заказ представляет собой совокупность услуг. В системе есть возможность заводить девять услуг: туры, отели, авиабилеты, ж/д билеты, визы, загранпаспорта, страховки, трансферы, экскурсии. Для всех услуг в рамках одного заказа покупателем является одно и то же лицо. Одна услуга может оформляться на несколько клиентов.

Ожидается значительное сокращение времени и трудоемкости оформления заказов, а также печати всех необходимых документов (Договор, тур-1, приходный ордер и т.д.) с уже заполненными данными клиентов.

1.3 Первичное описание информационного обеспечения

В данном подразделе дается описание информационного обеспечения функций, выбранных для автоматизации. Информационное обеспечение функций -- это совокупность данных, значения которых должны храниться в создаваемой базе данных для реализации автоматизируемых функций. Ниже для каждой из автоматизируемых функций перечислены необходимые атрибуты с соответствующими пояснениями.

Функция 1 «Учет кадров». Для реализации этой функции требуются следующие данные в базе данных:

1) Табельный номер - однозначно идентифицирует каждого сотрудника

2) Сведения о сотруднике - фамилия, имя и отчество сотрудника, дата рождения

3) Сведения о стаже - общий стаж работы сотрудника на каждой должности в различных подразделениях организации

4) Контактные сведения - сведения о контактных телефонах сотрудника. У одного сотрудника может быть несколько телефонов, причем различных категорий (типов): служебных, домашних, мобильных, прочих. Для каждого телефона могут быть указаны номер по порядку контактного телефона данного сотрудника; номер телефона в соответствующем формате; категория телефона; дополнительные сведения

5) Сведения о местах работы сотрудника - отделах или др. подразделениях организации. Каждый сотрудник мог работать на нескольких местах, что должно отражаться в базе данных. В каждый момент времени сотрудник может иметь только одно место. По каждому месту работы сотрудника необходимы: номер по порядку места работы данного сотрудника; идентификатор места работы сотрудника; название места работы; дата зачисления сотрудника на данное место; дата увольнения сотрудника с данного места. На каждом месте работы сотрудник может занимать несколько должностей, для это необходимы следующие атрибуты: номер по порядку; идентификатор должности; название должности; дата назначения сотрудника на данную должность; дата снятия сотрудника с данной должности.

Функция 2 «Учет клиентов». Для реализации этой функции требуются следующие данные в базе данных:

1) Сведения о клиенте - уникальный код, фамилия, имя, отчество, пол, дата рождения, количество полных лет, гражданство, категория клиента, e-mail, место работы

2) Контактные сведения - сведения о контактных телефонах клиента. У одного клиента может быть несколько телефонов, причем различных категорий (типов): служебных, домашних, мобильных, прочих. Для каждого телефона могут быть указаны номер по порядку контактного телефона данного клиента; номер телефона в соответствующем формате; категория телефона; дополнительные сведения

3) Сведения о российском паспорте клиента - код, серия, номер, дата выдачи, кем выдан паспорт

4) Сведения о заграничном паспорте клиента - код, серия, номер, дата действия, кем выдан паспорт.

Функция 3 «Учет туроператоров». Для реализации этой функции требуются следующие данные в базе данных:

1) Сведения о туроператоре - уникальный код, наименование, юридическое название, ИНН, номер в реестре, финансовое обеспечение, название, адрес гарантирующей организации, банковская гарантия, договор страхования, примечание

2) Контактные сведения - ФИО руководителя, контактного лица, адрес сайта, e-mail, сведения о контактных телефонах туроператора. У одного туроператора может быть несколько телефонов, причем различных категорий (типов): служебных, домашних, мобильных, прочих. Для каждого телефона могут быть указаны номер по порядку контактного телефона данного туроператора; номер телефона в соответствующем формате; категория телефона; дополнительные сведения

3) Сведения о реквизитах - у одного туроператора может быть несколько реквизитов: номер по порядку, код банка, наименование банка, расчетный счет, корреспондентский счет, БИК, адрес

4) Сведения об оказываемых услугах - каждый туроператор может оказывать несколько услуг. Для каждой услуги указывается уникальный код, наименование

5) Сведения о комиссии туроператора - размер комиссии, размерность комиссии.

Функция 4 «Оформление заказа». Для реализации этой функции требуются следующие данные в базе данных:

1) Сведения о заказе - код, номер, дата, курс доллара, курс евро, количество туристов

2) Сведения о менеджере, оформившем заказ - табельный номер, фамилия, имя, отчество сотрудника

3) Сведения о покупателе - код, фамилия, имя, отчество

4) Сведения об услугах заказа - в одном заказе может быть несколько услуг. Для каждой услуги необходимо указать следующие сведения: уникальный код услуги, наименование, статус, код туроператора, наименование туроператора, код валюты, наименование валюты, стоимость к оплате, размер предоплаты, дата последней предоплаты. На каждую услугу можно оформить несколько туристов. Для каждого туриста услуги указываются уникальный код клиента, фамилия, имя, отчество.

1.4 Вывод

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

2. Проектирование исходных локальных моделей

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

2.1 Составление исходных локальных моделей

В данном подразделе на основе описательных моделей данных, полученных на предшествующих этапах проектирования для каждой автоматизируемой функции, строятся исходные концептуальные модели иерархического вида в графической форме. Рисунки, содержащие исходные модели, приведены в конце раздела.

2.1.1 Функция 1 «Учет кадров»

Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.1.

Состав и структура модели. Модель содержит единственную сущность «Сотрудник», набор атрибутов которой имеет сложную структуру: простой агрегат «ФИО», повторяющиеся агрегаты «Телефон» и «Место работы». Последний агрегат, в свою очередь, содержит повторяющийся агрегат «Карьера».

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

2.1.2 Функция 2 «Учет клиентов»

Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.2.

Состав и структура модели. Модель содержит единственную сущность «Клиент», набор атрибутов которой имеет сложную структуру: простой агрегат «ФИО» и повторяющиеся агрегаты «Телефон» и «Паспорт».

Обобщение атрибутов. Исходные атрибуты, отражающие различные паспорта, имеющиеся у клиента («российский», «заграничный»), обобщены в повторяющийся агрегат «Паспорт» с атрибутами «Код», «Вид», «Серия», «Номер», «Дата выдачи/Действителен до», «Место выдачи».

2.1.3 Функция 3 «Учет туроператоров»

Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.3.

Состав и структура модели. Модель содержит единственную сущность «Туроператор», набор атрибутов которой имеет сложную структуру: простые агрегаты «ФИО руководителя», «Контактное лицо», а также повторяющиеся агрегаты «Услуга», «Телефон» и «Реквизиты».

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

2.1.4 Функция 4 «Оформление заказа»

Исходная иерархическая модель для данной функции, полученная на основе описания, приведенного в разд. 1, представлена на рисунке 2.4.

Состав и структура модели. Модель содержит единственную сущность «Заказ», в набор атрибутов которой входят простые агрегаты «Менеджер», «Покупатель» и повторяющийся агрегат «Услуга», который, в свою очередь, имеет в своем составе повторяющийся агрегат «Клиент».

Обобщение атрибутов. Для данной функции обобщение атрибутов не производилось.

2.2 Спецификации локальных ограничений и правил

В данном подразделе для построенных выше исходных моделей выявляются и записываются локальные ограничения целостности и операционные правила, а именно:

- ограничения атрибутов и агрегатов (таблица 2.1);

- ограничения кортежей (таблица 2.2);

- ограничения уникальности (таблица 2.3);

- динамические ограничения (таблица 2.4);

- прочие ограничения (таблица 2.5);

- операционные правила (таблица 2.6).

Столбец «Источник» в указанных таблицах содержит ссылки на предыдущий этап проекта, где содержится определение, на основании которого специфицирован данный объект. Символ «+» означает, что соответствующий атрибут, агрегат или ограничение добавлено на текущем этапе проектирования.

Таблица 2.1

Ограничения атрибутов и агрегатов

Имя атрибута или агрегата

Источник (разд. 1.3)

Тип

Размер

Границы или допустимые значения

Структура

Условие

Многозначность

Значение по умолчанию

мин

макс

Функция 1 «Учет кадров»

1.1. Табельный номер

1

строка цифр

6

1)

1

1

1.2. ФИО

агрегат

1

1

1.3. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

1.4. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

1.5. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

1

1

1.6. Дата рождения

дата

3)

1

1

1.7. Стаж

3

положит. целое

вычисл. 4)

1

1

1.8. Телефон

4

агрегат

0

М

1.9. « .Нпп

положит. целое

1

1

инкр. 5)

1.10. « .Номер

строка

6)

1

1

1.11. « .Тип

строка рус. букв

7)

1

1

1.12. « .Примечание

текст

<=255

0

1

1.13. Место работы

5

агрегат

1

М

1.14. « .Нпп

положит. целое

1

1

инкр. 8)

1.15. « .Код подразделения

строка цифр

6

1

1

1.16. « .Название подразделения

текст

<=255

1

1

1.17. « .Дата прихода

дата

1

1

1.18. « .Дата ухода

дата

0

1

1.19. Карьера

5

агрегат

1

М

1.20. « .Нпп

положит. целое

1

1

инкр. 9)

1.21. « .Код должности

строка цифр

6

1

1

1.22. « .Название должности

текст

<=255

1

1

1.23. « .Дата назначения

дата

1

1

1.24. « .Дата снятия

дата

0

1

Функция 2 «Учет клиентов»

2.1 Код

строка цифр

6

1

1

2.2. ФИО

агрегат

1

1

2.3. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

2.4. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

2.5. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

0

1

2.6. Дата рождения

дата

1

1

2.7. Пол

строка рус. букв

10)

1

1

2.8. Полных лет

целое

вычисл. 11)

1

1

2.9.Гражданство Код

+

строка цифр

6

1

1

2.10.Гражданство Страна

текст

<=100

1

1

2.11. Категория

строка рус. букв

12)

1

1

2.12. Место работы

текст

<=255

0

1

2.13. E-mail

текст

<=50

0

1

2.14. Телефон

2

агрегат

0

М

2.15. « .Нпп

положит. целое

1

1

инкр. 5)

2.16. « .Номер

строка

6)

1

1

2.17. « .Тип

строка рус. букв

7)

1

1

2.18. « .Примечание

текст

<=255

0

1

2.19. Паспорт

3

агрегат

1

1

2.20. « .Код

строка цифр

6

1

1

2.21. « .Вид

+

строка рус. букв

13)

1

1

2.22. « .Серия

текст

<=20

1

1

2.23. « .Номер

строка цифр

<=10

1

1

2.24. « .Дата выдачи / Действителен до

дата

1

1

2.25. « .Место выдачи

текст

<=255

1

1

Функция 3 «Учет туроператоров»

3.1. Код

строка цифр

6

1

1

3.2. Наименование

текст

<=255

1

1

3.3. Юридическое наименование

текст

<=255

1

1

3.4. ИНН

строка цифр

12

1

1

3.5. Размер комиссии

вещественный

1

1

3.6. Размерность комиссии

строка рус. букв

14)

1

1

3.7. ФИО руководителя

агрегат

1

1

3.8. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.9. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.10. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.11. Контактное лицо

агрегат

1

1

3.12. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.13. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.14. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

1

1

3.15. Услуга

4

агрегат

1

М

3.16. « .Код

строка цифр

6

1

1

3.17. « .Наименование

текст

<=255

1

1

3.18. Телефон

агрегат

0

М

3.19. « .Нпп

+

положит. целое

1

1

инкр. 5)

3.20. « .Номер

+

строка

6)

1

1

3.21. « .Тип

+

строка рус. букв

7)

1

1

3.22. « .Примечание

+

текст

<=255

0

1

3.23. Сайт

текст

<=50

0

1

3.24. E-mail

текст

<=50

0

1

3.25. Реквизиты

3

агрегат

1

М

3.26. « .Нпп

положит. целое

1

1

инкр. 15)

3.27. « .Код банка

строка цифр

6

1

1

инкр. 16)

3.28. « .Наименование банка

текст

<=255

1

1

3.29. « .РС

строка цифр

20

1

1

3.30. « .КС

строка цифр

20

1

1

3.31. « .БИК

строка цифр

9

1

1

3.32. « .Адрес

текст

<=255

1

1

3.33. Номер в реестре

строка цифр

20

1

1

3.34. Фин. обеспечение

текст

<=255

1

1

3.35. Название, адрес гарантирующей организации

текст

<=255

0

1

3.36. Банковская гарантия

текст

<=255

0

1

3.37. Договор страхования

текст

<=255

0

1

3.38. Примечание

текст

<=255

0

1

Функция 4 «Оформление заказа»

4.1. Код

строка цифр

6

1

1

4.2.Номер

строка цифр

6

1

1

инкр. 17)

4.3. Дата

дата

1

1

4.4.Курс доллара

вещественный

6

19)

1

1

4.5.Курс евро

вещественный

6

20)

1

1

4.6. Менеджер

2

агрегат

1

1

4.7. « .Табельный номер

строка цифр

6

1)

1

1

4.8. « .ФИО

агрегат

1

1

4.9. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.10. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.11. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.12. Количество туристов

целое

вычисл. 18)

1

1

4.13. Покупатель

3

агрегат

1

1

4.14. « .Код

строка цифр

6

1

1

4.15. « .ФИО

агрегат

1

1

4.16. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.17. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.18. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

0

1

4.19. Услуга

4

агрегат

1

М

4.20. « .Код

строка цифр

6

1

1

4.21. « .Наименование

текст

<=255

1

1

4.22. « .Статус

строка рус. букв

21)

1

1

4.23. « .Клиент

агрегат

1

М

4.24. « .Код

+

строка цифр

6

1

1

4.25. « .ФИО

+

агрегат

1

1

4.26. « .Фамилия

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.27. « .Имя

+

строка рус. букв

<=50

А…Яя

2)

1

1

4.28. « .Отчество

+

строка рус. букв

<=50

А…Яя

2)

0

1

4.29. Код туроператора

строка цифр

6

1

1

4.30. Наименование туроператора

текст

<=255

1

1

4.31. Код валюты

строка цифр

6

1

1

4.32. Наименование валюты

текст

<=100

1

1

4.33. Стоимость к оплате

денежный

1

1

4.34. Размер предоплаты

денежный

0

1

4.35. Дата последней предоплаты

дата

0

1

Примечания:

1) ггппнн, где гг - год поступления; пп - номер подразделения; нн - порядковый номер сотрудника в подразделении;

2) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные -- строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.

3) Дата рождения > Текущая дата - 100 лет; Дата рождения < Текущая дата - 16 лет.

4)Вычисляется как суммарное время работы на каждой должности в различных подразделениях организации по значениям атрибутов Дата прихода, Дата ухода.

5)Следующее значение (инкремент).

6) Необязательный (цифровой код города) цифровой номер, допустимы разделители-дефисы.

7)«служ», «дом», «мбл», «проч»

8)Следующее значение (инкремент)

9) Следующее значение (инкремент)

10) «мужской», «женский»

11)Вычисляется как разница между текущей датой и датой рождения (в годах)

12) «обычный», «VIP»

13) «российский», «заграничный»

14) «%», «руб.», «долл.», «евро»

15) Следующее значение (инкремент)

16) Следующее значение (инкремент)

17) Следующее значение (инкремент) внутри календарного года

18)Вычисляется как количество неповторяющихся клиентов по всем услугам заказа

19) Принимает значение >0

20) Принимает значение >0

21) «рассматривается», «заказана» и т.д.

Таблица 2.2

Ограничения кортежей

п/п

Источник

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

+

Дата рождения, Дата прихода

Дата прихода - Дата рождения >= 18 лет

1.2

+

Дата прихода, Дата ухода

Дата ухода > Дата прихода

1.3

+

Дата рождения, Дата назначения

Дата назначения - Дата рождения >= 18 лет

1.4

+

Дата назначения, Дата снятия

Дата снятия > Дата назначения

Функция 2 «Учет клиентов»

2.1

+

Дата рождения, Паспорт.Дата выдачи/Действительно до

Дата рождения < Дата выдачи

Функция 3 «Учет туроператоров»

3.1

+

Размер комиссии, Размерность комиссии

Если Размерность комиссии = ”%”, то Размер комиссии <=100

Функция 4 «Оформление заказа»

4.1

+

Дата, Дата последней предоплаты

Дата <= Дата последней предоплаты

4.2

+

Стоимость к оплате, Размер предоплаты

Стоимость к оплате >= Размер предоплаты

Таблица 2.3

Ограничения уникальности

п/п

Источник

Группа атрибутов

Среди каких экземпляров имеет место уникальность

Функция 1 «Учет кадров»

1.1

+

Табельный номер

среди всех сотрудников

1.2

+

Фамилия, Имя, Отчество

среди всех сотрудников

1.3

+

Телефон.Нпп

среди всех телефонов одного сотрудника

1.4

+

Телефон.Номер

среди всех телефонов одного сотрудника

1.5

+

Место.Нпп

среди всех мест работы одного сотрудника

1.6

+

Место.Дата прихода

среди всех мест работы одного сотрудника

1.7

+

Должность.Нпп

среди всех должностей сотрудника на одном месте работы

1.8

+

Должность.Дата назначения

среди всех должностей сотрудника на одном месте работы

Функция 2 «Учет клиентов»

2.1

+

Код

среди всех клиентов в базе

2.2

+

Гражданство Код

среди всех стран в базе

2.3

+

Телефон.Нпп

среди всех телефонов одного клиента

2.4

+

Телефон.Номер

среди всех телефонов одного клиента

2.5

+

Паспорт.Код

среди всех паспортов в базе

2.6

+

Паспорт.Серия, Паспорт.Номер

среди всех паспортов в базе

Функция 3 «Учет туроператоров»

3.1

+

Код

среди всех туроператоров в базе

3.2

+

ИНН

среди всех туроператоров в базе

3.3

+

Услуга.Код

среди всех услуг в базе

3.4

+

Реквизиты.Нпп

среди всех реквизитов туроператора

3.5

+

Реквизиты.Код банка

среди всех банков

Функция 4 «Оформление заказа»

4.1

+

Код

среди всех заказов

4.2

+

Номер, Дата

среди всех заказов

4.3

+

Номер

среди всех заказов текущего года

4.4

+

Менеджер.Табельный номер

среди всех сотрудников

4.5

+

Покупатель.Код

среди всех клиентов

4.6

+

Услуга.Код

среди всех услуг

4.7

+

Код туроператора

среди всех туроператоров

4.8

+

Клиент.Код

среди всех клиентов

4.9

+

Код валюты

среди всех валют

Таблица 2.4

Динамические ограничения

п/п

Источник

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

+

Телефон.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

1.2

+

Место работы.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

1.3

+

Карьера.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

Функция 2 «Учет клиентов»

2.1

+

Телефон.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

Функция 3 «Учет туроператоров»

3.1

+

Телефон.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

3.2

+

Реквизиты.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

3.3

+

Реквизиты.Код банка

Код банка < Код банка + 1 -- значение атрибута «Код банка» может лишь увеличиваться на единицу

Функция 4 «Оформление заказа»

4.1

+

Номер

Номер < Номер + 1 -- значение атрибута «Номер» может лишь увеличиваться на единицу внутри календарного года. Самый первый номер заказа в году = 1

Таблица 2.5

Другие ограничения

п/п

Источник

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

+

Место.Дата ухода

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

1.2

+

Место.Нпп, Дата прихода,

Дата ухода

Хронологическая последовательность значений «Дата прихода», «Дата ухода» в агрегатах «Место работы», соответствующих одному сотруднику, упорядоченных по «Номеру места»

1.3

+

Должность.Нпп, Дата назначения

Хронологическая последовательность значений «Дата назначения» в агрегатах «Карьера», соответствующих одному «Месту работы» одного сотрудника, упорядоченных по «Номеру должности»

1.4

+

Место.Нпп

Последовательность номеров, соответствующая местам работы одного сотрудника, должна начинаться с 1 и не иметь пропусков

1.5

+

Должность.Нпп

Последовательность номеров, соответствующая должностям на одном месте работы одного сотрудника, должна начинаться с 1 и не иметь пропусков

Функция 2 «Учет клиентов»

2.1

+

Телефон.Нпп

Последовательность номеров, соответствующая телефонам одного клиента, должна начинаться с 1 и не иметь пропусков

Функция 3 «Учет туроператоров»

3.1

+

Телефон.Нпп

Последовательность номеров, соответствующая телефонам одного туроператора, должна начинаться с 1 и не иметь пропусков

Функция 4 «Оформление заказа»

4.1

+

Номер, Дата

Последовательность заказов, отсортированных по дате и номеру

Таблица 2.6.

Операционные правила

п/п

Источник

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

+

Атрибуты, относящиеся к сотруднику:

Табельный номер, Фамилия, Имя, Отчество, … и т.д.

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

Функция 2 «Учет клиентов»

2.1

+

Атрибуты, относящиеся к клиенту:

Код, Фамилия, Имя, Отчество и т.д.

При изменении каких-либо сведений о клиенте произвести изменения соответствующих атрибутов без сохранения старых сведений

Функция 3 «Учет туроператоров»

3.1

+

Атрибуты, относящиеся к туроператору

При изменении каких-либо сведений о туроператоре произвести изменения соответствующих атрибутов без сохранения старых сведений

Функция 4 «Оформление заказа»

4.1

+

Атрибуты, относящиеся к заказу

При изменении каких-либо сведений о заказе произвести изменения соответствующих атрибутов с сохранением истории изменений

2.3 Вывод

В результате анализа информационного обеспечения функций выявлены и сформулированы 172 ограничения и 4 правила поддержания целостности данных, которые должны быть учтены при дальнейшем проектировании.

база данные туристическое агенство целостность

Рисунок 2.1 -- Исходная модель для функции 1 «Учет кадров»

Рисунок 2.2 -- Исходная модель для функции 2 «Учет клиентов»

Рисунок 2.3 -- Исходная модель для функции 3 «Учет туроператоров»

Рисунок 2.4 -- Исходная модель для функции 4 «Оформление заказа»

3. Проектирование нормализованных локальных ER-моделей

Данный раздел посвящен проектированию нормализованных локальных ER-моделей. Каждая исходная локальная модель преобразуется в нормализованную ER-модель. Разрабатываются спецификации ограничений целостности и операционных правил для локальных ER-моделей.

На диаграммах ER-моделей, приведенных ниже, прямоугольники обозначают сущности, овалы -- связи, выносные линии -- атрибуты. Ключевые атрибуты и связи помечены квадратами, обязательные -- темным кружком, необязательные -- светлым.

3.1 Нормализация локальных ER-моделей

В данном подразделе на основе анализа и преобразования исходных иерархических моделей для каждой автоматизируемой функции строятся нормализованные ER-модели, не содержащие «скрытых» сущностей (т.е. каждая сущность находится в третьей нормальной форме). Ниже приведены описания моделей; диаграммы моделей (рис. 3.1-3.4) вынесены в конец раздела.

3.1.1 Функция 1 «Учет кадров»

Нормализованная ER-модель для данной функции представлена на рис. 3.1 (в конце раздела).

Нормализованная модель содержит:

- четыре самоидентифицирующих сущности: «Сотрудник», «Подразделение»; «Должность», «Телефон».

- три связи типа «многие ко многим»: «Место», «Карьера», «Контакт».

Сущность «Сотрудник» содержит данные о табельном номере, фамилии, имени, отчестве, дате рождения и стаже сотрудника.

Сущность «Подразделение» содержит данные о коде и названии подразделения.

Сущность «Телефон» содержит данные о номере и типе телефона.

Сущность «Должность» содержит данные о коде и названии должности.

Связь «Место» задает подразделения, в которых работал и работает в настоящее время сотрудник.

Связь «Контакт» задает телефоны, которые имеются у сотрудника.

Связь «Карьера» задает должности, которые когда-либо занимал сотрудник.

3.1.2 Функция 2 «Учет клиентов»

Нормализованная ER-модель для данной функции представлена на рис. 3.2 (в конце раздела).

Нормализованная модель содержит:

- четыре самоидентифицирующих сущности: «Клиент», «Паспорт»; «Гражданство», «Телефон».

- две связи типа «многие ко многим»: «Документ», «Контакт».

Сущность «Клиент» содержит данные о коде, фамилии, имени и отчестве, дате рождения, поле, количестве полных лет, категории, месте работы и e-mail клиента.

Сущность «Паспорт» содержит данные о серии, номере, дате и месте выдачи документа.

Сущность «Гражданство» содержит данные о коде и наименовании страны клиента.

Сущность «Телефон» содержит данные о номере и типе телефона.

Связь «Документ» задает паспорта клиента.

Связь «Контакт» задает телефоны, которые имеются у клиента.

3.1.3 Функция 3 «Учет туроператоров»

Нормализованная ER-модель для данной функции представлена на рис. 3.3 (в конце раздела).

Нормализованная модель содержит:

- четыре самоидентифицирующих сущностей: «Туроператор», «Телефон», «Услуга» и «Банк».

- две связи типа «многие ко многим»: «Контакт» и «Реквизиты».

Сущность «Туроператор» содержит данные о туроператоре: код, наименование, юридическое наименование, ИНН, размер комиссии, размерность комиссии, ФИО руководителя и контактного лица, сайт, e-mail, номер в реестре, финансовое обеспечение, название, адрес гарантирующей организации, банковская гарантия, договор страхования, примечание.

Сущность «Телефон» содержит данные о номере и типе телефона.

Связь «Контакт» задает телефоны, которые имеются у туроператора.

Связь «Реквизиты» задает банки, в которых открыты расчетные счета туроператора.

3.1.4 Функция 4 «Оформление заказа»

Нормализованная ER-модель для данной функции представлена на рис. 3.4 (в конце раздела).

Нормализованная модель содержит:

- шесть самоидентифицирующих сущностей: «Заказ», «Курс»; «Покупатель», «Туроператор», «Менеджер» и «Клиент».

- одну связь типа «многие ко многим» «Услуга» и одну связь типа «один ко многим» «Дата».

Сущность «Заказ» содержит данные о коде, номере заказа и количестве туристов.

Сущность «Курс» содержит данные о курсах доллара и евро на дату заказа.

Сущность «Покупатель» содержит данные о коде и ФИО покупателя.

Сущность «Туроператор» содержит данные о коде и наименовании оператора.

Сущность «Менеджер» содержит данные о табельном номере и ФИО менеджера.

Сущность «Клиент» содержит данные о коде и ФИО клиента.

Связь «Услуга» задает туроператоров, валюты и клиентов.

3.2 Спецификации локальных ограничений и правил

В данном подразделе локальные ограничения и правила, сформулированные в разд. 2 для иерархических моделей, трансформируются применительно к локальным ER-моделям, а именно:

- ограничения атрибутов сущностей (таблица 3.1);

- ограничения кортежей (таблица 3.2);

- ограничения уникальности (таблица 3.3);

- динамические ограничения (таблица 3.4);

- прочие ограничения (таблица 3.5);

- операционные правила (таблица 3.6).

- правила ссылочной целостности (таблица 3.7);

Таблица 3.1

Ограничения атрибутов

Имя атрибута

или агрегата

Источник (табл.2.1)

Тип

Размер

Границы

или

допустимые

значения

Структура

Условие

Значение

по умолчанию

Функция 1 «Учет кадров»

1.1. Сотрудник.Табельный номер

1.1

строка цифр

6

1)

1.2. Сотрудник.ФИО

1.2

агрегат

2)

1.3. Сотрудник.Дата рождения

1.6

дата

3)

1.4. Сотрудник.Стаж

1.7

положит. целое

вычисл. 4)

1.5. Телефон.Номер

1.10

строка

5)

1.6. Телефон.Тип

1.11

строка рус. букв

6)

1.7. Контакт.Нпп

1.9

положит. целое

инкр. 7)

1.8. Контакт.Примечание

1.21

текст

<=255

1.9. Место.Нпп

1.14

положит. целое

инкр. 8)

1.10. Место.Дата прихода

1.17

дата

1.11. Место.Дата ухода

1.18

дата

1.12. Подразделение.Код подразделения

1.15

строка цифр

4

1.13. Подразделение.Название подразд.

1.16

текст

<=255

1.14. Карьера.Дата назначения

1.23

дата

1.15. Карьера.Дата снятия

1.24

дата

1.16. Должность.Код должности

1.21

строка цифр

6

1.17. Должность.Название должности

1.22

текст

<=255

1.18 Карьера.Нпп

1.20

положит. целое

инкр. 9)

Функция 2 «Учет клиентов»

2.1 Клиент.Код

2.1

строка цифр

6

2.2. Клиент.ФИО

2.2

агрегат

2.3. Клиент.Дата рождения

2.6

дата

2.4. Клиент.Пол

2.7

строка рус. букв

10)

2.5. Клиент.Полных лет

2.8

целое

вычисл. 11)

2.6.Гражданство.Гражданство Код

2.9

строка цифр

6

2.7.Гражданство.Гражданство Страна

2.10

текст

<=100

2.8. Клиент.Категория

2.11

строка рус. букв

12)

2.9. Клиент.Место работы

2.12

текст

<=255

2.10. Клиент.E-mail

2.13

текст

<=50

2.11. Контакт.Нпп

2.15

положит. целое

инкр. 5)

2.12. Телефон.Номер

2.16

строка

6)

2.13. Телефон.Тип

2.17

строка рус. букв

7)

2.14. Контакт.Примечание

2.18

текст

<=255

2.15. Документ.Код

2.20

строка цифр

6

2.16. Документ.Вид

2.21

строка рус. букв

13)

2.17. Паспорт.Серия

2.22

текст

<=20

2.18. Паспорт.Номер

2.23

строка цифр

<=10

2.19. Паспорт.Дата выдачи / Действителен до

2.24

дата

2.20. Паспорт.Место выдачи

2.25

текст

<=255

Функция 3 «Учет туроператоров»

3.1. Туроператор.Код

3.1

строка цифр

6

3.2. Туроператор.Наименование

3.2

текст

<=255

3.3. Туроператор.Юридическое наименование

3.3

текст

<=255

3.4. Туроператор.ИНН

3.4

строка цифр

12

3.5. Туроператор.Размер комиссии

3.5

вещественный

3.6. Туроператор.Размерность комиссии

3.6

строка рус. букв

14)

3.7. Туроператор.ФИО руководителя

3.7

агрегат

3.8.Туроператор.Контактное лицо

3.11

агрегат

3.9.Услуга.Код

3.16

строка цифр

6

3.10.Услуга.Наименование

3.17

текст

<=255

3.11. Контакт.Нпп

3.19

положит. целое

инкр. 5)

3.12. Телефон.Номер

3.20

строка

6)

3.13. Телефон.Тип

3.21

строка рус. букв

7)

3.14. Контакт.Примечание

3.22

текст

<=255

3.15. Туроператор.Сайт

3.23

текст

<=50

3.16. Туроператор.E-mail

3.24

текст

<=50

3.17. Реквизиты.Нпп

3.26

положит. целое

инкр. 15)

3.18. Банк.Код банка

3.27

строка цифр

6

инкр. 16)

3.19. Банк.Наименование банка

3.28

текст

<=255

3.20. Реквизиты.РС

3.29

строка цифр

20

3.21. Банк.КС

3.30

строка цифр

20

3.22. Банк.БИК

3.31

строка цифр

9

3.23. Реквизиты.Адрес

3.32

текст

<=255

3.24. Туроператор.Номер в реестре

3.33

строка цифр

20

3.25. Туроператор.Фин. обеспечение

3.34

текст

<=255

3.26. Туроператор.Название, адрес гарантирующей организации

3.35

текст

<=255

3.27. Туроператор.Банковская гарантия

3.36

текст

<=255

3.28. Туроператор.Договор страхования

3.37

текст

<=255

3.29. Туроператор.Примечание

3.38

текст

<=255

Функция 4 «Оформление заказа»

4.1. Заказ.Код

4.1

строка цифр

6

4.2. Заказ.Номер

4.2

строка цифр

6

инкр. 17)

4.3. Курс.Дата

4.3

дата

4.4.Курс.Курс доллара

4.4

вещественный

6

19)

4.5.Курс.Курс евро

4.5

вещественный

6

20)

4.6. Менеджер

4.6

агрегат

4.7. Менеджер.Табельный номер

4.7

строка цифр

6

1)

4.8. Менеджер.ФИО

4.8

агрегат

4.9. Заказ.Количество туристов

4.12

целое

вычисл. 18)

4.10. Покупатель

4.13

агрегат

4.11. Покупатель.Код

4.14

строка цифр

6

4.12. Покупатель.ФИО

4.15

агрегат

4.13. Услуга.Код

4.20

строка цифр

6

4.14. Услуга.Наименование

4.21

текст

<=255

4.15. Услуга .Статус

4.22

строка рус. букв

21)

4.16. Клиент.Код

4.24

строка цифр

6

4.17. Клиент.ФИО

4.25

агрегат

4.18. Туроператор.Код туроператора

4.29

строка цифр

6

4.19. Туроператор.Наименование туроператора

4.30

текст

<=255

4.20. Валюта.Код валюты

4.31

строка цифр

6

4.21. Валюта.Наименование валюты

4.32

текст

<=100

4.22. Услуга.Стоимость к оплате

4.33

денежный

4.23. Услуга.Размер предоплаты

4.34

денежный

4.24. Услуга.Дата последней предоплаты

4.35

дата

Примечания:

1) ггппнн, где гг - год поступления; пп - номер подразделения; нн - порядковый номер сотрудника в подразделении;

2) Русскоязычные фамилии, имена, отчества (первая буква прописная, остальные -- строчные; возможны двойные фамилии, разделенные дефисом, многословные имена, разделенные пробелами.

3) Дата рождения > Текущая дата - 100 лет; Дата рождения < Текущая дата - 16 лет.

4)Вычисляется как суммарное время работы на каждой должности в различных подразделениях организации по значениям атрибутов Дата прихода, Дата ухода.

5)Следующее значение (инкремент).

6) Необязательный (цифровой код города) цифровой номер, допустимы разделители-дефисы.

7)«служ», «дом», «мбл», «проч»

8)Следующее значение (инкремент)

9) Следующее значение (инкремент)

10) «мужской», «женский»

11)Вычисляется как разница между текущей датой и датой рождения (в годах)

12) «обычный», «VIP»

13) «российский», «заграничный»

14) «%», «руб.», «долл.», «евро»

15) Следующее значение (инкремент)

16) Следующее значение (инкремент)

17) Следующее значение (инкремент) внутри календарного года

18)Вычисляется как количество неповторяющихся клиентов по всем услугам заказа

19) Принимает значение >0

20) Принимает значение >0

21) «рассматривается», «заказана» и т.д.

Таблица 3.2.

Ограничения кортежей

п/п

Источник

(табл. 2.2)

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

1.1

Сотрудник.Дата рождения, Место.Дата прихода

Дата прихода - Дата рождения >= 18 лет

1.2

1.2

Место.Дата прихода, Место.Дата ухода

Дата ухода > Дата прихода

1.3

1.3

Дата рождения, Дата назначения

Дата назначения - Дата рождения >= 18 лет

1.4

1.4

Дата назначения, Дата снятия

Дата снятия > Дата назначения

Функция 2 «Учет клиентов»

2.1

2.1

Клиент.Дата рождения, Паспорт.Дата выдачи/Действительно до

Дата рождения < Дата выдачи

Функция 3 «Учет туроператоров»

3.1

3.1

Туроператор.Размер комиссии, Туроператор.Размерность комиссии

Если Размерность комиссии = ”%”, то Размер комиссии <=100

Функция 4 «Оформление заказа»

4.1

4.1

Заказ.Дата, Услуга.Дата последней предоплаты

Дата <= Дата последней предоплаты

4.2

4.2

Услуга.Стоимость к оплате, Услуга.Размер предоплаты

Стоимость к оплате >= Размер предоплаты

Таблица 3.3.

Ограничения уникальности

п/п

Источник

(табл.2.3)

Атрибут или группа атрибутов

Среди каких экземпляров какой сущности

или связи имеет место уникальность

Функция 1 «Учет кадров»

1.1

1.1

Сотрудник.Табельный номер

всех экз. сущности Сотрудник

1.2

1.2

Сотрудник.ФИО

всех экз. сущности Сотрудник

1.3

1.3

Контакт.Нпп

всех экз. связи Контакт одного сотрудника

1.4

1.4

Телефон.Номер

всех экз. сущности Телефон

1.5

1.5

Место.Нпп

всех экз. связи Место одного сотрудника

1.6

1.6

Место.Дата прихода

всех экз. связи Место одного сотрудника

1.7

+

Место.Дата ухода

всех экз. связи Место одного сотрудника

1.8

1.7

Карьера.Нпп

всех экз. связи Карьера одного сотрудника на одном месте

1.9

1.8

Карьера.Дата назначения

всех экз. связи Карьера одного сотрудника на одном месте

1.10

+

Подразделение.Код подразделения

всех экз. сущности Подразделение

1.11

+

Должность.Код должности

всех экз. сущности Должность

Функция 2 «Учет клиентов»

2.1

2.1

Клиент.Код

всех экз. сущности Клиент

2.2

2.2

Гражданство .Гражданство Код

всех экз. сущности Гражданство

2.3

2.3

Телефон.Нпп

всех экз. сущности Телефон

2.4

2.4

Телефон.Номер

всех экз. сущности Телефон

2.5

2.5

Документ.Код

всех экз. связи Документ

2.6

2.6

Паспорт.Серия, Паспорт.Номер

всех экз. сущности Паспорт

Функция 3 «Учет туроператоров»

3.1

3.1

Туроператор.Код

всех экз. сущности Туроператор

3.2

3.2

Туроператор.ИНН

всех экз. сущности Туроператор

3.3

3.3

Услуга.Код

всех экз. сущности Услуга

3.4

3.4

Реквизиты.Нпп

всех экз. связи Реквизиты одного туроператора

3.5

3.5

Банк.Код банка

всех экз. сущности Банк

Функция 4 «Оформление заказа»

4.1

4.1

Заказ.Код

всех экз. сущности Заказ

4.2

4.2

Заказ.Номер, Дата.Дата

всех экз. сущности Заказ

4.3

4.3

Заказ.Номер

всех экз. сущности Заказ

4.4

4.4

Менеджер.Табельный номер

всех экз. сущности Менеджер

4.5

4.5

Покупатель.Код

всех экз. сущности Покупатель

4.6

4.6

Услуга.Код

всех экз. связи Услуга

4.7

4.7

Туроператор.Код

всех экз. сущности Туроператор

4.8

4.8

Клиент.Код

всех экз. сущности Клиент

4.9

4.9

Валюта.Код

всех экз. сущности Валюта

Таблица 3.4.

Динамические ограничения

п/п

Источник

(табл. 2.4)

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

1.1

Контакт.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

1.2

1.2

Место.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

1.3

1.3

Карьера.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

Функция 2 «Учет клиентов»

2.1

2..1

Телефон.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

Функция 3 «Учет туроператоров»

3.1

3.1

Телефон.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

3.2

3.2

Реквизиты.Нпп

Нпп < Нпп + 1 -- значение атрибута «Нпп» может лишь увеличиваться на единицу

3.3

3.3

Банк.Код банка

Код банка < Код банка + 1 -- значение атрибута «Код банка» может лишь увеличиваться на единицу

Функция 4 «Оформление заказа»

4.1

4.1

Заказ.Номер

Номер < Номер + 1 -- значение атрибута «Номер» может лишь увеличиваться на единицу внутри календарного года. Самый первый номер заказа в году = 1

Таблица 3.5.

Другие ограничения

п/п

Источник

(табл. 2.5)

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

1.1

Место.Дата ухода

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

1.2

1.2

Место.Нпп, Дата прихода,

Дата ухода

Хронологическая последовательность значений Дата прихода, Дата ухода в связях Место, соответствующих одному сотруднику, упорядоченных по Нпп

1.3

1.3

Карьера.Нпп, Дата назначения

Хронологическая последовательность значений Дата назначения в связях Карьера, соответствующих одному Месту одного сотрудника, упорядоченных по Нпп

1.4

1.4

Место.Нпп

Последовательность номеров, соответствующая одному Месту одного сотрудника, должна начинаться с 1 и не иметь пропусков

1.5

1.5

Карьера.Нпп

Последовательность номеров в связи Карьера одного сотрудника должна начинаться с 1 и не иметь пропусков

1.6

+

Сотрудник.Дата рождения,

Место.Дата прихода

для одного сотрудника:

Дата прихода - Дата рождения >= 25 лет

Функция 2 «Учет клиентов»

2.1

2.1

Телефон.Нпп

Последовательность номеров, соответствующая телефонам одного клиента, должна начинаться с 1 и не иметь пропусков

Функция 3 «Учет туроператоров»

3.1

3.1

Телефон.Нпп

Последовательность номеров, соответствующая телефонам одного туроператора, должна начинаться с 1 и не иметь пропусков

Функция 4 «Оформление заказа»

4.1

4.1

Заказ.Номер, Дата.Дата

Последовательность заказов, отсортированных по дате и номеру

Таблица 3.6.

Операционные правила

п/п

Источник

(табл. 2.6)

Группа атрибутов

Ограничение

Функция 1 «Учет кадров»

1.1

1.1

Атрибуты, относящиеся к сотруднику:

Табельный номер, Фамилия, Имя, Отчество, … и т.д.

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

Функция 2 «Учет клиентов»

2.1

2.1

Атрибуты, относящиеся к клиенту:

Код, Фамилия, Имя, Отчество и т.д.

При изменении каких-либо сведений о клиенте произвести изменения соответствующих атрибутов без сохранения старых сведений

Функция 3 «Учет туроператоров»

3.1

3.1

Атрибуты, относящиеся к туроператору

При изменении каких-либо сведений о туроператоре произвести изменения соответствующих атрибутов без сохранения старых сведений

Функция 4 «Оформление заказа»

4.1

4.1

Атрибуты, относящиеся к заказу

При изменении каких-либо сведений о заказе произвести изменения соответствующих атрибутов с сохранением истории изменений

Таблица 3.7.

Ссылочные правила

п/п

Источник

Родительская

сущность/связь

Дочерняя

сущность/связь

Правило

удаления

Другие

правила

Функция 1 «Учет кадров»

1.1

+

Сотрудник

Место

каскадное

1.2

+

Подразделение

Место

строгое

1.3

+

Место

Карьера

каскадное

1.4

+

Должность

Карьера

строгое

1.5

+

Сотрудник

Контакт

каскадное

1.6

+

Телефон

Контакт

строгое

Функция 2 «Учет клиентов»

2.1

+

Клиент

Контакт

каскадное

2.2

+

Телефон

Контакт

строгое

2.3

+

Клиент

Документ

каскадное

2.4

+

Паспорт

Документ

строгое

2.5

+

Клиент

Гражданство

строгое

Функция 3 «Учет туроператоров»

3.1

+

Туроператор

Контакт

каскадное

3.2

+

Телефон

Контакт

строгое

3.3

+

Туроператор

Услуга

строгое

3.4

+

Туроператор

Реквизиты

каскадное

3.5

+

Банк

Реквизиты

строгое

Функция 4 «Оформление заказа»

4.1

+

Заказ

Дата

каскадное

4.2

+

Курс

Дата

строгое

4.3

+

Заказ

Покупатель

строгое

4.4

+

Заказ

Услуга

строгое

4.5

+

Заказ

Менеджер

строгое

4.6

+

Валюта

Услуга

строгое

4.7

+

Клиент

Услуга

строгое

4.8

+

Туроператор

Услуга

строгое

3.3 Вывод

В результате проектирования локальных ER-моделей, соответствующих иерархическим моделям автоматизируемых функций, получены нормализованные локальных ER-модели, включающие от 4 до 6 сущностей в третьей нормальной форме. Разработанные спецификации 147 ограничений и 33 правил поддержания целостности включают все ограничения и правила, полученные на предыдущем этапе и трансформированные для локальных ER-моделей.

Рисунок 3.1 -- Нормализованная ER-модель для функции 1 «Учет кадров»

Рисунок 3.2 -- Нормализованная ER-модель для функции 2 «Учет клиентов»

Рисунок 3.3 -- Нормализованная ER-модель для функции 3 «Учет туроператоров»

Рисунок 3.4 -- Нормализованная ER-модель для функции 4 «Оформление заказа»

4. Проектирование глобальной ER-модели

Данный раздел посвящен проектированию глобальной ER-модели. Здесь производится выявление эквивалентных сущностей и их слияние, выявление категорий и синтез обобщающих сущностей, выявление и устранение дублирования атрибутов и связей. Строится графическое представление глобальной модели, специфицируются ограничения целостности и операционные правила.

4.1 Анализ дублирования в локальных моделях

В данном подразделе в совокупности локальных ER-моделей выявляются эквивалентные сущности, категории сущностей, дублирование атрибутов и связей. Результаты анализа в дальнейшем используются для синтеза глобальной ER-модели. Ниже представлены пояснения к указанным действиям.

4.1.1 Выявление эквивалентных сущностей

Выявлено, что следующие сущности являются эквивалентными:

1) «Сотрудник» функции 1 и «Менеджер» функции 4;

2) «Телефон» функции 1, «Телефон» функции 2 и «Телефон» функции 3;

3) «Клиент» функции 2 и «Клиент» функции 4;

4) «Туроператор» функции 3 и «Туроператор» функции 4;

5) «Услуга» функции 3 и «Услуга» функции 4.

4.1.2 Выявление категорий сущностей

Выявлено, что следующие сущности являются категориями других сущностей:

Сущность «Менеджер» функции 4 является категорией сущности «Сотрудник» функции 1.

4.1.3 Выявление дублирования атрибутов и связей

Выявлены следующие дублирующиеся атрибуты:

1) Атрибут «Контакт.Нпп» функции 1, атрибут «Контакт.Нпп» функции 2 и атрибут «Контакт.Нпп» функции 3;

2) Атрибут «Контакт.Примечание» функции 1, атрибут «Контакт. Примечание» функции 2 и атрибут «Контакт. Примечание» функции 3;

3) Атрибут «Телефон.Номер» функции 1, атрибут «Телефон.Номер» функции 2 и атрибут «Телефон.Номер» функции 3;

4) Атрибут «Телефон.Тип» функции 1, атрибут «Телефон.Тип» функции 2 и атрибут «Телефон.Тип» функции 3;

5) Атрибут «Сотрудник.Табельный номер» функции 1 и атрибут «Менеджер.Табельный номер» функции 4;

6) Атрибут «Сотрудник.ФИО» функции 1 и атрибут «Менеджер.ФИО» функции 4;

7) Атрибут «Клиент.Код» функции 2 и атрибут «Клиент.Код» функции 4;

8) Атрибут «Клиент.ФИО» функции 2 и атрибут «Клиент.ФИО» функции 4;

9) Атрибут «Туроператор.Код» функции 3 и атрибут «Туроператор.Код» функции 4;

10) Атрибут «Туроператор.Наименование» функции 3 и атрибут «Туроператор.Наименование» функции 4;

11) Атрибут «Услуга.Код» функции 3 и атрибут «Услуга.Код» функции 4;

12) Атрибут «Услуга.Наименование» функции 3 и атрибут «Услуга.Наименование» функции 4.

Выявлены следующие дублирующиеся связи:

1) Связи «Контакт» функции 1, «Контакт» функции 2 и «Контакт» функции 3.

4.2 Синтез глобальной ER-модели

В данном подразделе из совокупности локальных ER-моделей строится единая глобальная ER-модель путем слияния эквивалентных сущностей, синтеза обобщенных сущностей и их категорий, устранения дублирования атрибутов и связей. Ниже представлены пояснения к указанным действиям. Графическое представление глобальной ER-модели приведено на рис. 4.1 в конце раздела.

4.2.1 Слияние эквивалентных сущностей

Эквивалентные сущности, выявленные в п. 4.1.1, слиты в одну с объединением множеств атрибутов:

«Сотрудник» функции 1 и «Менеджер» функции 4 слиты в единую сущность «Сотрудник».

4.2.2 Синтез обобщающих сущностей и категорий

По результатам анализа (п. 4.1.2) введены следующие обобщающие сущности и их категории:

Обобщающая сущность «Сотрудник» с категорией «Менеджер».

4.2.3 Устранение дублирования атрибутов и связей

Устранены следующие дублирующиеся атрибуты:

1) Атрибут «Контакт.Нпп» функции 2 и атрибут «Контакт.Нпп» функции 3 удалены как избыточные;

2) Атрибут «Контакт. Примечание» функции 2 и атрибут «Контакт. Примечание» функции 3 удалены как избыточные;

3) Атрибут «Телефон.Номер» функции 2 и атрибут «Телефон.Номер» функции 3 удалены как избыточные;

4) Атрибут «Телефон.Тип» функции 2 и атрибут «Телефон.Тип» функции 3 удалены как избыточные;

5) Атрибут «Менеджер.Табельный номер» функции 4 удален как избыточный;

6) Атрибут «Менеджер.ФИО» функции 4 удален как избыточный;

7) Атрибут «Клиент.Код» функции 4 удален как избыточный;

8) Атрибут «Клиент.ФИО» функции 4 удален как избыточный;

9) Атрибут «Туроператор.Код» функции 4 удален как избыточный;

10) Атрибут «Туроператор.Наименование» функции 4 удален как избыточный;

11) Атрибут «Услуга.Код» функции 3 удален как избыточный;

12) Атрибут «Услуга.Наименование» функции 3 удален как избыточный.

Устранены следующие дублирующиеся связи:


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.