1.2 Перечень входных данных.
Входную информацию делят на условно-постоянную, сохраняющую свои значения на длительный период времени, и, на постоянно меняющуюся оперативно-учётную.
В результате обследования предметной области определены входные данные, необходимые для решения комплекса задач:
Тур.путёвки, путёвки в санаторий, информация о клиентах, информация о странах.
Поэтому при разработке базы данных, необходимо создать формы для ввода этой информации.
Входная информация может быть представлена следующими документами:
Таблица 1. Входные данные по клиенту
Код клиента | ФИО | Телефон | Адрес |
… | … | … | … |
Таблица 2. Входные данные по путёвкам
Номер путёвки | Начало тура | Продолжительность | Стоимость | Название тура |
… | … | … | … |
Примечание: по возможности входная информация представляется в графическом виде
1.3. Перечень выходных данных.
Выходная информация представляется в виде отчётов.
Выходную информацию представим в виде отчётных форм:
не оплаченные путёвки
Клиенты № тура Оплата Стоимость
Смирнов Д.А. Золотой песок Не оплачено 500
… … … …
самый дешёвый тур
Страна Начало Продолжитель № Название Транспорт Стои Колич
тура ность тура тура тура мост ство
1.4. Ограничения предметной области.
По рассматриваемой предметной области введём некоторые ограничения:
- В таблице «путёвки» значение поля «стоимость» должно быть больше нуля.
- В таблице «путёвки» значение поля «количество» должно быть больше нуля.
- В таблице «путёвки в санаторий» значение поля «дата окончания пребывания» должна вычисляться как сумма «даты начала» и «продолжительности».
1.5. Взаимодействие с другими программами.
Представленная информационная система должна выводить отчёты в текстовый редактор MS Word. Прайс-лист о путёвках может выводится в MS Excel.
2. Постановка задачи
Разрабатываемая информационная система предназначена для структурированного хранения данных и вывода информации о турах по странам, путёвках туров, клиентах
Разрабатываемая информационная система должна выполнять следующие функции:
3. Проектирование концептуальной модели
3.1 Выделение информационных объектов.
Одним из первых объектов предметной области можно выделить «тур путёвки» и «путёвки в санаторий». Далее определяем, кто оформляет путёвки, для этого вводим объект «сотрудник». Путёвки покупаются клиентами ( объект «клиент»).Тур путёвки продаются в разные страны, отсюда объект «страна». Переезд в туристических путёвках осуществляется транспортом, поэтому возникает необходимость в объекте «транспорт». Клиентам необходимо представлять список санаториев, куда он может поехать (объект «санаторий» ). В санаториях выполняют лечение заболеваний (объект «заболевание»).
Объект «оформление путёвки» является сложным, так как включает в себя несколько объектов: «клиенты», «путёвки», «сотрудники»
3.2 Определение атрибутов объектов.
Рассмотрим атрибуты перечисленных объектов.
Таблица 3. Атрибуты объектов
Объект | Атрибуты объектов | Ключевой атрибут |
тур путёвки | № тура, Начало тура, Окончание тура, Стоимость, Кол-во путевок | № тура |
Оформление путёвки | № путёвки, № тура, Оплата | № путёвки |
Санаторий | санаторий, адрес, город | санаторий |
Заболевания | заболевание | заболевание |
Путёвки в санаторий | код поступления, санаторий, дата прибытия, продолжительность, кол-во путёвок | код поступления |
Необходимо проанализировать каждый атрибут на наличие взаимосвязей с другими реквизитами объекта. Реквизит приобретает смысл, только тогда, когда он связан с другими атрибутами, обладающими смысловым единством.
3.3 Определение отношений и мощности отношений между объектами.
Рассмотрим взаимосвязи между объектами и мощности отношение и построим матрицу отношений.
Страны ->Путёвки. «Страны» главный объект, а «путёвки» подчинённый объект. Тип связи «один ко многим». Так как в одну страну может быть несколько путёвок. Связь между этими объектами осуществляет атрибут «код_страны»
|
Транспорт ->Путёвки. «Транспорт» главный объект, а «путёвки» подчинённый объект. Тип связи «один ко многим». Один транспорт может использоваться для переезда по нескольким путёвкам. Связь между этими объектами осуществляет атрибут «код_транспорта»
|
ТурПутёвки ->ОформлениеПутёвки. «ТурПутёвки» главный объект, а «оформление путёвки» подчинённый объект. Тип связи «один ко многим». Один тур может быть оформлен несколько раз. Связь между этими объектами осуществляет атрибут «номер_тура»
И так описываются все отношения предметной области.
Составим матрицу смежности для рассматриваемой предметной области. По строкам и столбцам записываем выделенные объекты предметной области. Если между объектами существуют отношения, то на пересечении строки и столбца ставится мощность отношения. Если объекты не взаимодействуют, то указывается 0.
Таблица 4. Матрица смежности.
Страны | Транспорт | Оформление путёвки | Путёвки | ….. |
Страны | 0 | 0 | 0 | 1:N |
Транспорт | 0 | 0 | 0 | 1:N |
Путёвки | 0 | 0 | 1:N | 0 |
… |
3.4 Построение схемы концептуальной модели.
На основе полученных объектов, атрибутов объектов и отношений между ними, можно построить концептуальную модель.
Часть 1
Рис 1. Концептуальная модель часть1
|
Рис 1. Концептуальная модель часть2
4. Разработка логической структуры базы данных.
Логическая структура реляционной базы данных определяется совокупностью логически связанных реляционных таблиц.
Логические связи соответствуют структурным связям между объектами в концептуальной модели, каждый объект в логической модели отображается соответствующей реляционной таблицей.
Связи между таблицами осуществляются посредством общих атрибутов. Логическая структура реляционной базы данных имеет вид:
Рис 3. Логическая структура реляционной базы
5. Реляционная модель.
Вначале раздела приводится теоретическая информация о реляционной модели.
Реляционная модель проектируемой базы данных:
Клиенты (Код клиента, ФИО)
Сотрудники ( Код сотрудника, ФИО, код фирмы)
Внешний ключ: код фирмы
Страны ( Код страны, название страны)
Транспорт (код транспорта, вид транспорта)
Путевки (№ тура, Код страны, Начало тура, Окончание тура, Код транспорта, Стоимость, Кол-во путевок)
Внешний ключ: Код страны
Внешний ключ: Код транспорта
Оформление путёвки (№ путёвки, Код клиента, Код сотрудника, № тура, Оплата)
Внешний ключ: Код клиента
Внешний ключ: Код сотрудника
Санаторий (санаторий, адрес, город)
Заболевания (заболевание)
Заболнвание_и_санаторий (санаторий, заболевание)
Путёвки в санаторий (код поступления, санаторий, дата прибытия, продолжительность, кол-во путёвок)
Внешний ключ: санаторий
Оформление путёвки в санаторий (№ путёвки, код клиента, код сотрудника, код поступления, оплата)
Внешний ключ: код клиента
Внешний ключ: код сотрудника
Внешний ключ: код поступления
6. Определение типов данных в заданном формате
Таблица «Клиенты»
Содержит информацию о клиентах, приобретавших путёвки.
Таблица 5 Структура таблицы данных «Клиент»
Наименование поля | Тип поля | Размер поля | Обязательное поле | Ключевое поле |
Код клиента | Числовой | Длинное целое | Да | Да |
ФИО | Текстовое | 50 | Нет | Нет |
Таблица «Сотрудники»