Файл: Программное обеспечение справочной службы аэропорта.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 25.05.2023

Просмотров: 1568

Скачиваний: 23

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

2 Проектирование информационной системы «Программное обеспечение кассы аэропорта»

2.1 Проект базы данных информационной системы

2.1.1 Анализ информационных потоков предметной области. ER-модели

Проведем концептуальное проектирование базы данных разрабатываемой информационной системы. Для этого словесно опишем структуру разрабатываемой базы данных.

Сотрудники авиакомпании оформляют билеты на рейсы. Каждый сотрудник обладает определенной должностью.

Билеты приобретаются пассажирами.

Каждый рейс принадлежит определенной авиакомпании.

Каждый рейс выполняется определенным самолетом в определенный пункт назначения.

На билеты могут быть предусмотрены какие-либо скидки.

Таким образом, перечень сущностей разрабатываемой базы данных следующий:

  • Сотрудники;
  • Билеты;
  • Рейсы;
  • Должности;
  • Пассажиры;
  • Авиакомпании;
  • Самолеты;
  • Пункты назначения;
  • Скидки.

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

Рисунок 2.1. Концептуальная модель предметной области

Атрибуты таблиц базы данных следующие.

Сущность «Билет»:

  • Код;
  • Рейс;
  • Пассажир;
  • Сотрудник;
  • Номер;
  • Вылет.

Сущность «Рейс»:

  • Код;
  • Пункт назначения;
  • Номер рейсса;
  • Дата начала;
  • Дата конца;
  • Авиакомпания;
  • Стоимость билета;
  • Самолёт.

Сущность «Авиакомпания»:

  • Код;
  • Название;
  • Описание;
  • Контакты.

Сущность «Сотрудник»:

  • Код;
  • Фамилия;
  • Имя;
  • Отчество;
  • Телефон;
  • Адрес;
  • Должность;
  • Пароль;
  • Логин.

Сущность «Должности»:

  • Код;
  • Наименование;
  • Описание;
  • Право продавать билеты.

Сущность «Пассажир»:

  • Код;
  • Фамилия;
  • Имя;
  • Отчество;
  • Телефон;
  • Адрес;
  • Паспорт;
  • Скидка.

Сущность «Скидка»:

  • Код;
  • Процент;
  • Название.

Сущность «Самолет»:


  • Код;
  • Бортовой номер;
  • Модель;
  • Вместимость;
  • Дата ввода в эксплуатацию.

Сущность «Пункт назначения»:

  • Код;
  • Название;
  • Адрес;
  • Координаты;
  • Описание.

2.1.2 ER-модель

Логическая модель разработанной базы данных показана на рисунке ниже:

Рисунок 2.2. Логическая модель базы данных

Путем добавления типов данных к атрибутам модели была получена физическая модель базы данных.

Рисунок 2.3. Физическая модель базы данных

2.1.3 Описание структуры базы данных «Программное обеспечение кассы аэропорта»

Таблица 2.1. Должности

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

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

Длинный текст

255

Описание

Длинный текст

255

Право продавать билеты

Да/Нет

1

Таблица 2.2. Сотрудник

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Фамилия

Длинный текст

255

Имя

Длинный текст

255

Отчество

Длинный текст

255

Телефон

Длинный текст

255

Адрес

Длинный текст

255

Должность

Длинное целое

Внешний

Логин

Длинный текст

32

Пароль

Длинный текст

32

Таблица 2.3. Билет

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Рейс

Длинное целое

Внешний

Пассажир

Длинное целое

Внешний

Сотрудник

Длинное целое

Внешний

Номер

Длинный текст

50

Вылет

Дата/Время

Полный формат даты


Таблица 2.4. Рейс

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

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

Длинный текст

255

Пункт назначения

Длинное целое

Внешний

Номер рейса

Длинное целое

Внешний

Дата начала

Дата/Время

Дата окончания

Дата/Время

Авиакомпания

Длинное целое

Внешний

Стоимость билета

Длинное целое

Самолет

Длинное целое

Внешний

Таблица 2.5. Самолет

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Бортовой номер

Длинный текст

255

Модель

Длинный текст

255

Вместимость

Длинное целое

Дата ввода

Дата/время

Таблица 2.6. Пункт назначения

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Название

Длинный текст

255

Адрес

Длинный текст

255

Координаты

Длинный текст

255

Описание

Memo

Таблица 2.7. Пассажир

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Фамилия

Длинный текст

255

Имя

Длинный текст

255

Отчество

Длинный текст

255

Телефон

Длинный текст

32

Адрес

Длинный текст

255

Паспорт

Длинный текст

150

Скидка

Длинное целое

Внешний

Таблица 2.8. Авиакомпания

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

Название

Длинный текст

255

Описание

Memo

Контакты

Длинный текст

255

Адрес офиса

Длинный текст

255


Таблица 2.9. Скидки

Имя поля

Тип данных

Размер

Ключ

Код

Счетчик

Длинное целое

Первичный

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

Длинный текст

255

Процент

Длинное целое

2.1.4 Схема базы данных «Программное обеспечение кассы аэропорта»

Схема базы данных в Access 2013 показана на рисунке ниже.

Рисунок 2.4. Схема базы данных в Access

2.2 Структурная схема пользовательского приложения

Структурная схема пользовательского приложения показана на рисунке ниже.

Рисунок 2.5. Структурная схема пользовательского приложения

2.3. Разработка приложения

После того, как база данных создана, необходимо организовать её связь с программой в Delphi. Наша задача состоит в том, чтобы организовать такое взаимодействие без использования дополнительных SQL-запросов и представлений.

Итак, создаем проект Delphi. Для того, чтобы таблицы обрабатывались централизованно (что в дальнейшем значительно облегчит работу с ними) мы будем использовать компонент типа Data Module. Data Module – это разновидность формы Delphi, на которой не может быть представлено никаких визуальных компонентов, кроме компонентов, предназначенных для работы с базами данных.

Создаем такой модуль, выбрав в главном меню File – New – Data Module. Сохраним программную часть этого компонента под названием UDataModule.

Разместим в данном модуле компонент ADOConnection для связи с базой данных. Для того, чтобы иметь доступ к БД, необходимо указать в свойстве ConnectionString данного компонента строку подключения к базе данных.

Для этого нажимаем на кнопку с тремя точками рядом с этим свойством. На экран выводится следующее окно.

Рисунок 2.6 – Свойства подключения


Далее нажимаем кнопку Build и настраиваем соединение с базой данных, указывая расположение базы данных.

Рисунок 2.7 – Настройка подключения к базе данных

Для проверки соединения можно нажать на кнопку «Проверить подключение». Если выведется сообщение о том, что подключение успешно, то данные правильны. После нажатия на кнопку «ОК» строка соединения будет сформирована.

Разместим на полученном модуле несколько компонентов типа ADOTable и несколько компонентов типа DataSource, дав им соответствующие имена.

После того, как мы добавили компоненты и указали их свойства, необходимо создать связи внешних ключей в одних таблицах с ключевыми в других, чтобы при отображении на компоненте DBGrid можно было выбирать значения из списка и значения соответствующих ключевых полей подставлялись в таблицу автоматически. Для этого используется поле таблицы типа fkLookup.

Сначала настроим такие связи для таблицы TSotrudnik. Для этого два раза щелкаем мышью по таблице на форме. Появляется редактор полей. Сейчас он пуст. В него необходимо добавить все поля таблицы. Для этого нажимаем в поле редактора правой кнопкой мыши и выбираем в контекстном меню Add Fields. Появится список, в котором автоматически будут выделены все поля, содержащиеся в исходной таблице. Нажимаем ОК, поля будут добавлены в редактор.

Теперь создадим подстановочные поля. Для этого нажимаем правой кнопкой в окне редактора, и выбираем «New Field».

В появившемся окне необходимо указать следующие параметры:

Рисунок 2.8 – Создание Lookup поля

Поясним эти параметры.

В поле Name указывается название поля. Можно указать любое не дублирующееся с имеющимся название.

В поле Type указывается тип данных в поле. Для корректной работы необходимо выбрать значение Variant.

Поле Field Type указывает на тип поля. Необходимо указать тип Lookup.

Поле Key Fields указывает поле в исходной таблице для подстановки ключевого значения.

Поле Dataset указывает на таблицу, из которой будут браться значения для автоподстановки в таблицу.

Поле Lookup Keys указывает значения ключевых полей, которые будут подставляться.

Поле Result Fields указывает поля с названиями ключевых полей.

Нажимаем на кнопку OK. Таким образом мы добавили поле типа Lookup в таблицу TSotrudnik

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