Проектирование информационных систем

Автор: Пользователь скрыл имя, 12 Марта 2012 в 19:35, курсовая работа

Краткое описание

Данная курсовая работа направлена на:
• закрепление знаний и умений по дисциплине Базы данных
• выработку новых навыков в создании реляционных баз данных
• получение навыков разработки ИС

Оглавление

Введение 3
1. Задание 4
2. Построение инфологической концептуальной модели (ER-модели) 6
3. Построение реляционной схемы из ER-модели данных 10
4. Описание приложения 13
5. Проектирование форм, запросов и отчетов 16
6. Код программы 21
7. Тестирование базы данных 22
Список использованной литературы 28

Файлы: 1 файл

Курсовая работа по Базе Данных - Гостиничный комплекс.doc

— 2.71 Мб (Скачать)


Содержание

 

Введение

1. Задание

2. Построение инфологической концептуальной модели (ER-модели)

3. Построение реляционной схемы из ER-модели данных

4. Описание приложения

5. Проектирование форм, запросов и отчетов

6. Код программы

7. Тестирование базы данных

Список использованной литературы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

 

Данная курсовая работа направлена на:

       закрепление знаний и умений по дисциплине Базы данных

       выработку новых навыков в создании реляционных баз данных

       получение навыков разработки ИС

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


1. Задание

 

Разработать информационную сис­тему гостиничного комплекса, которая несет собой следующую информацию: занятость номеров, заказ (дата заказа, дата въезда/выезда, стоимость), сведения о клиенте, занимающего тот или иной номер (ФИО, сведения о документе, удостоверяющем личность, адрес) и о самом номере  (расположение, вид, стоимость периодичность обслуживания), а также использование служб быта: ежедневная уборка номера, прачечная, химчистка, питание (рестораны, бары) и развлечения (бассейн, сауна, бильярд и пр.).

Необ­ходимо составить пакет из процедур и функций, который позво­ляет:

1)          получить  перечень  и  общее число  постояльцев,  заселявшихся  в  номера с указанными характеристиками за некоторый период;

2)          получить список свободных номеров на данный момент;

3)          получить сведения о постояльце из заданного номера: его счет гостинице за дополнительные   услуги, виды услуг, которыми он пользовался;

4)          получить сведения о наиболее часто посещающих гостиницу постояльцах;

5)          получить список занятых сейчас номеров, которые освобождаются к указанному сроку;

6)          получить сведения о конкретном номере: кем он был занят в определенный период.

 

 

Список требований к выполнению работы:

1.       Построить инфологическую концептуальную модель (ER-модель), для чего:

       Проанализировав  предметную  область,  при  необходимости  уточнив  и  дополнив ее, выявить необходимый набор сущностей;

       Определить требуемый набор атрибутов для каждой сущности, выделив идентифицирующие атрибуты;

       Определить связи между объектами;

       Описать полученную ER-модель на языке инфологического проектирования и на языке ER-диаграмм.

       Получить реляционную схему из ER-модели, для чего:

       Построить набор необходимых отношений базы данных;

       Выделить первичные и внешние ключи определенных отношений;

       Привести полученные отношения к третьей нормальной форме;

       Определить ограничения целостности для внешних ключей отношений и для отношений в целом.

2.       Используя имеющуюся СУБД создать спроектированную базу данных.

3.       На языке SQL записать выражения для указанных в варианте задания типов запросов.

4.       Проверить работоспособность написанных запросов в интерактивном режиме.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


2. Построение инфологической концептуальной модели (ER-модели)

 

В результате анализа предметной области было выделено три класса объектов: заказ, клиент, описание номера, класс обслуживания, перечень услуг и используемые услуги.

Опишем, какими свойствами обладает каждый класс объектов для нашей конкретной задачи:

       «Заказ» - номер заказа, дата заказа, дата прибытия, дата выезда, номер клиента, № номера, стоимость заказа.

       «Клиент» - ФИО, номер клиента, номер паспорта, серия, адрес, гражданство

       «Описание номера» - № номера, расположение, вид.

       «Класс обслуживания» - вид номера, стоимость номера, периодичность обслуживания.

       «Перечень услуг» - номер услуги, наименование, стоимость, ед. измерения.

       «Используемые услуги» - номер заказа, номер услуги, дата, количество, общая стоимость.

Изобразим графически каждый объект и его свойства (см. рис. 1 - 6).

Рис. 1 Изображение связи «Объект - Свойство» для объекта «Заказ»

 

 

Рис. 2 Изображение связи «Объект- Свойство» для объекта «Клиент»

 

 

Рис. 3 Изображение связи «Объект - Свойство» для объекта «Описание номера»

 

Рис. 4 Изображение связи «Объект - Свойство» для объекта «Класс обслуживания»

 

Рис. 5 Изображение связи «Объект - Свойство» для объекта «Перечень услуг»

 

Рис. 6 Изображение связи «Объект - Свойство» для объекта «Используемые услуги»

 

 

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

 

 

Рис. 7 Инфологическая модель базы данных гостиничного комплекса

 

 

 

 

 

 

 

 

 


3. Построение реляционной схемы из ER-модели данных

 

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

  1. Для каждого простого объекта и его единичных свойств строится таблица, атрибутами которой являются идентификатор объекта и реквизиты, соответствующие каждому из свойств.
  2. Если у объекта имеются множественные свойства, то каждому из них ставиться в соответствии отдельная таблица.
  3. Если между объектом и его свойствам имеется условная связь, то при отображении в реляционной модели возможны следующие варианты:

       Если многие из объектов обладают рассматриваемым свойством, то его можно хранить в базе данных так же, как и обычное.

       Если только незначительное число обладает указанным свойством, то при использовании предыдущего решения для многих записей в таблице значение соответствующего поля будет пустым. Для устранения этого недостатка выделяют отдельную таблицу, которая включает в себя идентификатор объекта и атрибут, соответствующий рассматриваемому свойству (аналогично пункту 2).

  1. Если у объекта имеется составное свойство, то составляющие составного свойства либо помещаются в отдельные поля реляционной таблицы, либо в одно поле.
  2. Если связь между объектами 1:1 и классы принадлежности обоих объектов являются обязательными, то для отображения данных объектов и связей между ними можно:

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

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

  1. Если связь между объектами 1:1 и класс принадлежности одного объекта является обязательным, а другого – нет, то для каждого из этих объектов используют отдельные таблицы, а идентификатор объекта, для которого класс принадлежности является необязательным, добавляется в таблицу, соответствующую тому объекту, для которого класс принадлежности обязателен.
  2. Если между объектами связь 1:1 и класс принадлежности является необязательным, то следует воспользоваться тремя таблицами: по одной для каждого объекта и одну для отображения связи между ними.
  3. Если между объектами связь 1:М и класс принадлежности одного из них обязателен, то используют две таблицы – по одной для каждого объекта. При этом в таблицу, соответствующую объекту, класс принадлежности которого является обязательным, добавляется идентификатор второго объекта.
  4. Если между объектами предметной области имеется связь 1:М и оба класса принадлежности не обязательны, то поступают аналогично пункту 7 (создают три таблицы: по одной для каждого объекта и одну для связи между ними)
  5. Если между объектами предметной области имеется связь М:М, то для хранения информации требуется три таблицы: по одной для каждого объекта и одна для отображения связи между ними (классы принадлежности могут быть любыми).
  6. Агрегированному объекту, имеющему место в предметной области, ставится в соответствии одна таблица, атрибутами которой являются идентификаторы всех объектов, задействованных в данном агрегированном объекте, а так же реквизиты, соответствующие свойствам этого объекта.

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

  1. При отображении обобщенных объектов могут быть приняты разные решения:

       Всему обобщенному объекту может быть поставлена в соответствии одна таблица.

       Каждой из категорий ставится в соответствии отдельная таблица, которая содержит в себе идентификатор объекта, общие свойства и свойства данной категории.

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

  1. При отображении составного объекта так же возможны варианты:

       Если речь идет о составе изделий, то между изделием и деталью связь будет М:М. В этом случае – см. пункты 7, 9, 10.

       Если речь идет о составе какой-нибудь организации, то между объектами скорее всего будет связь 1:М. В этом случае – см. пункты 8, 9.

 

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

Заказ (Номер заказа, Дата заказа, Дата прибытия, Дата выезда, Номер клиента, № номера, Стоимость);

Клиент (ФИО, Номер клиента, Номер паспорта, Серия, Адрес, Гражданство);

Описание номера (№ Номера, Расположение, Вид);

Класс обслуживания (Вид номера, Стоимость номера, Периодичность обслуживания);

Перечень услуг (Номер услуги, Наименование, Стоимость, Ед. измерения);

Используемые услуги (Номер заказа, Номер услуги, Дата, Количество, Общая стоимость).

 

Проверим соответствие данной модели нормальной форме Бойса-Кодда.

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

Данная модель удовлетворяет 2НФ, т.к. она удовлетворяет 1НФ и во всех отношениях имеющих сложный первичный ключ, каждый не ключевой атрибут полностью зависит от первичного ключа.

Данная модель удовлетворяет 3НФ, т.к. она удовлетворяет 2НФ и никакой не ключевой атрибут не зависит от другого не ключевого атрибута.

Данная модель удовлетворяет НФБК, т.к. она удовлетворяет 3НФ и каждый из детерминантов отношений модели является ее ключом.


4. Описание приложения

 

Для хранения данных было создано 6 таблиц, структура которых приведена в таблице 1.

Таблица 1. Структура таблиц

Информация о работе Проектирование информационных систем