Разработка модуля информационной системы для отдела по контролю полетов и личного состава и справочной службы аэропорта
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
СУМСКОЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Курсовая работа
по предмету «Базы данных
и информационные системы»
на тему: «Разработка модуля информационной системы для отдела по контролю полетов и личного состава и справочной службы аэропорта »
Выполнил студент группы ИН-52: Билак Н.П.
Проверил преподаватель: Чекалов А.П.
Сумы-2007
Оглавление
1.Постановка задачи.
1.1 Вариант задания курсовой работы.
1.2 Результаты предпроектного исследования.
2.Анализ области применения и планирование требований. Семантика построенных DFD диаграмм в Case Studio 2.19
2.1 DFD диаграмма 0 уровня
2.3 1 часть DFD диаграммы 0 уровня
2.4. DFD диаграмма 1 уровня
2.5 2 часть DFD диаграммы 0 уровня
3.Проектирование базы данных.
4 Реализации таблиц.
4.1 Создание таблиц.
4.2 Реализация бизнес правил.
4.3 Формирование основных SQL запросов.
5 Программная реализация.
Список использованной литературы.
Приложение
1. Постановка задачи
Администрация аэропорта заказала разработку модуля информационной системы для отдела по контролю полетов и личного состава и справочной службы аэропорта. Система предназначена для автоматизации процесса регистрации и хранения данных о самолетах и их экипажах, а так же для автоматизации получения справок о полетах потенциальными пассажирами.
1.1 Вариант задания курсовой работы
Задание № 6
Спроектируйте базу данных аэропорта так, чтобы она позволяла реализовать следующее запросы:
список моделей самолетов летающих по рейсу Z;
номер экипажа и фамиля командира самолета с номером N;
наличие свободных мест на рейс в город Х с временем отправления Y.
1.2 Результаты предпроектного исследования
Во время предпроектного исследования составлено следующее описание событий, происходящих во время запроса пассажирами либо администрацией данных о полетах:
Сотруднику администрации аэропорта необходимо узнать список моделей самолетов летающих по рейсу Z, то есть характеристики самолетов(модель, бортовой номер и дальность возможного перелета.) Он делает запрос по конкретному рейсу Z и получает результат в виде списка всех моделей самолетов, летающих по этому рейсу, а так же их бортовых номеров и летных характеристик (дальность полета).
При получении информации о номере экипажа и фамилии командира самолета с номером N сотрудник администрации аэропорта делает запрос по конкретному бортовому номеру самолета (с учетом его летных характеристик) и получает информацию : Фамилия имя отчество командира самолета, информацию об экипаже( номер экипажа, фамилии, имена и отчества пилотов и обслуживающего персонала). Дальность полета самолета используется для систематизации данных об экипажах самолетов, так как каждый экипаж, включая командира самолетов и пилота, обучен работать только на определенном типе самолетов.
Потенциальный пассажир делает запрос о наличии свободных мест на рейс в город X с временем отправления Y. Пассажир делает запрос и получает сведенья о наличии свободных мест на рейс Z в город X с временем отправления Y, а также борт номер каждого самолета, который соответствует запросу потенциального пассажира. Далее потенциальный пассажир (пли условии получения подходящей ему информации о свободных местах) имеет возможность бронировать место в самолете на определенное время при условии оплаты стоимости проезда.
2.Анализ области применения и планирование требований. Семантика построенных DFD диаграмм в Case Studio 2.19
2.1 DFD диаграмма 0 уровня
1. В ходе выполнения курсовой работы при реализации зарпосов была построена DFD диаграммы 0 уровня и составлено следующее описание хода событий :
Запускаем Запустить среду построения DFD диаграм («CASEStudio»).
Исходя из условия поставленной задачи создаем 2 внешних сущности: одну из них называем «Администрация аэропорта», а вторую – «Потенциальный пассажир».
Добавляем 2 процесса, переименовываем их так: первый называем «Выборка самолетов рейса Z» (внешняя сущность по средствам потока данных обращается к процессу с запросом о списке моделей самолетов летающих по рейсу Z, то есть характеристики самолетов(модель, бортовой номер и дальность возможного перелета.) а так же о номере экипажа и фамилии командира самолета с номером N). Второй же процесс называем «Поиск Билетов».
Создаем поток данных от внешней сущности «Администрация аэропорта» к процессу «Выборка самолетов рейса», и изменяем его имя на «Характеристики самолетов рейса Z» в Edit Data Flow на вкладке Data Flow.
Создаем поток данных от процесса «Выборка самолетов рейса» к внешней сущности «Администрация аэропорта», и изменяем его имя на «Отчет», т.е. результат в виде списка всех моделей самолетов, летающих по этому рейсу, а так же их бортовых номеров и летных характеристик (дальность полета).
Создаем поток данных от внешней сущности «Потенциальный пассажир» к процессу «поиск билетов», и изменяем его имя на «Свободные места рейса Z направления Y.»
Создаем поток данных от процесса «поиск билетов» к внешней сущности «Потенциальный пассажир », и изменяем его имя на «свободные места».
Добавляем новое хранилище данных «Данные аэропорта» на нашу диаграмму, соединяем хранилище данных парами потоков данных с процессами.
Изменяем цвет внешних сущностей(светло-синий), процессов(желтый) а так же хранилища данных(серый).
На вкладке «Edit Process» на каждом из двух процессов, задействованных в нашей DFD диаграмме 0 - уровня снимаем флажок с пункта Lowest level и нажимаем OK.
2.2 Семантика DFD диаграммы 0 уровня
Сотруднику администрации аэропорта необходимо узнать список моделей самолетов летающих по рейсу Z. Он делает запрос по рейсу Z и получает результат в виде списка всех моделей самолетов, летающих по этому рейсу.
Сотруднику администрации аэропорта необходимо узнать номер экипажа и фамилию командира самолета с номером N. Он делает запрос по конкретному бортовому номеру самолета и получает интересующую его информацию.
Потенциальный пассажир делает запрос о наличии свободных мест на рейс в город X с временем отправления Y. Пассажир делает запрос и получает сведенья о наличии свободных мест на рейс Z в город X с временем отправления Y.
2.3 1 часть DFD диаграммы 0 уровня
Добавим процесс в нашу DFD диаграмму 1 уровня, процесс называем «Выборка характеристик самолетов» (номер экипажа и фамилия командира самолета с номером N, характеристики самолетов(модель, бортовой номер и дальность возможного перелета)) .
Создаем поток данных от внешней сущности «Администрация аэропорта» к процессу «Выборка характеристик самолетов», и изменяем его имя на «Характеристики самолетов рейса Z» в Edit Data Flow на вкладке Data Flow.
Добавляем новое хранилище данных «Данные аэропорта» на нашу диаграмму, соединяем хранилище данных парой потоков данных с процессом.
Изменяем цвет внешних сущностей(светло-синий), процессов(желтый) а так же хранилища данных(серый).
На вкладке «Edit Process» на процессе, задействованном в нашей DFD диаграмме 1 - уровня снимаем флажок с пункта Lowest level и нажимаем OK.
Сотруднику администрации аэропорта необходимо узнать список моделей самолетов летающих по рейсу Z, то есть характеристики самолетов(модель, бортовой номер и дальность возможного перелета.) Он делает запрос по конкретному рейсу Z и получает результат в виде списка всех моделей самолетов, летающих по этому рейсу, а так же их бортовых номеров и летных характеристик (дальность полета).
При получении информации о номере экипажа и фамилии командира самолета с номером N сотрудник администрации аэропорта делает запрос по конкретному бортовому номеру самолета (с учетом его летных характеристик) и получает информацию : Фамилия имя отчество командира самолета, информацию об экипаже( номер экипажа, фамилии, имена и отчества пилотов и обслуживающего персонала). Дальность полета самолета используется для систематизации данных об экипажах самолетов, так как каждый экипаж, включая командира самолетов и пилота, обучен работать только на определенном типе самолетов.
Потенциальный пассажир делает запрос о наличии свободных мест на рейс в город X с временем отправления Y. Пассажир делает запрос и получает сведенья о наличии свободных мест на рейс Z в город X с временем отправления Y, а также борт номер каждого самолета, который соответствует запросу потенциального пассажира. Далее потенциальный пассажир (пли условии получения подходящей ему информации о свободных местах) имеет возможность бронировать место в самолете на определенное время при условии оплаты стоимости проезда.
2.4 DFD диаграмма 1 уровня
1. Добавим 2 процесса в нашу DFD диаграмму 2 уровня, разделив процесс «Выборка характеристик самолетов» на 2 процесса согласно поступающим запросам. Первый процесс называем «выборка моделей и дальности полетов» (модель, бортовой номер и дальность возможного перелета). Второй же процесс называем «Выборка характеристик экипажа» (характеристики самолетов(номер экипажа и фамилия командира самолета с номером N)) . Соединяем полученные процессы парой противоположно направленных потоков данных.
2. Создаем поток данных от внешней сущности «Администрация аэропорта» к процессу ««выборка моделей и дальности полетов», и изменяем его имя на «Характеристики самолетов рейса Z» в Edit Data Flow на вкладке Data Flow.
3. Создаем поток данных от процесса «выборка моделей и дальности полетов» к внешней сущности «Администрация аэропорта», и изменяем его имя на «Отчет», т.е. результат в виде списка всех моделей самолетов, летающих по этому рейсу, а так же их бортовых номеров и летных характеристик (дальность полета), номер экипажа и фамилия командира самолета с номером N.
4. Добавляем новое хранилище данных «Данные аэропорта» на нашу диаграмму, соединяем хранилище данных парами потоков данных с процессом выборка характеристик экипажа .
5. Изменяем цвет внешних сущностей(светло-синий), процессов(желтый) а так же хранилища данных(серый).
2.5 2 часть DFD диаграммы 0 уровня
1. Добавим процесс в нашу DFD диаграмму 1 уровня, процесс называем «Сведенья о билетах » (сведенья о наличии свободных мест на рейс Z направления Y)) .
2. Создаем поток данных от внешней сущности «потенциальный пассажир» к процессу «Сведенья о билетах», и изменяем его имя на «свободные места рейса Z направления Y» в Edit Data Flow на вкладке Data Flow.
3. Добавляем новое хранилище данных «Данные аэропорта» на нашу диаграмму, соединяем хранилище данных парой потоков данных с процессом.
4. Изменяем цвет внешних сущностей(светло-синий), процессов(желтый) а так же хранилища данных(серый).
2 Анализ области применения и планирование требований
Директору предприятия нужно увидеть график работ определенного подразделения на объектах с которыми работает фирма в течении месяца. Он дает запрос в виде его названия , также требуется задать месяц и год выполнения работ. Далее формируется отчет о объектах обслуживаемых данным подразделения и ответственных за выполнение работ.
На основе концептуальной модели создаем структуру приложения:
табл. 1 Условные обозначения
Обозначение |
Описание |
request |
Составление отчета |
fmFind |
Поиск соотв. полей |
3 Проектирование базы данных
Отношению Подразделения соответствует полная ФЗ №ПодразделенияСпециализация, Руководитель.
Отношению Объекты соответствует полная ФЗ№ ОбъектаАдрес обьекта.
Отношению Данные о графиках соответствует полная ФЗ№ Объекта
№ПодразделенияДата нач. работДата оконч. работ.
Диаграмма базы данных будет иметь вид:
4 Реализации таблиц
4.1 Создание таблиц
Для реализации таблиц запускаем database desktop где описываем содержимое наших таблиц:
После этого запускаем SQL explorer
в поле Path прописываем путь к созданным в database таблицам и сохраняем проект.
4.2 Реализация бизнес правил на уровне таблиц:
1.Поле Chief всегда должно заполнятся с целью повышения ответственности за качество работ.
2.Должно указываться начало и окончание работ для возможности отбора данных учитывая время проведения.
4.3 Формирование основных SQL запросов
Для получения графика работ определенного подразделения нам нужно чтобы поля sub>D.PROFIL были равны заданному имени; а также запись о работах где фигурирует нужное подразделение. Последним параметром формирования выборки есть дата проведения работ она должна соответствовать заданному месцу.
Вот как будет виглядеть основной SQL запрос
SELECT sub>D.CHIEF AS РУКОВОДИТЕЛЬ ,TARG.ADDRES AS ОБЬЕКТ,GRAFIC.START AS START, GRAFIC.FIN AS FINISH
FROM sub>D,GRAFIC,TARG
WHERE (sub>D.PROFIL="Каменьщики")
and (GRAFIC.Nsub>D=sub>D.NPODR)
AND(TARG.NOBJ=GRAFIC.NOB)
AND(GRAFIC.START BETWEEN "01.01.06"AND "1.02.06")
В программной реализации 4-ая и 6-ая строчки запроса будут изменятся во время работы программы.
5 Программная реализация
Для программной реализации было создано пять форм а именно:
1) Окно основной программы, где формируется и выводится запрос Рис(1);
2) Окно редактирования таблицы sub>D.db;
3) Окно редактирования таблицы TARG.db Рис(2);
4) Окно редактирования таблицы GRAFIC.db;
5) Окно просмотра отчета для печати Рис(3)
Рис(1)
Рис(2)
Рис(3)
Соответствующие модули обеспечивающие работу всех форм показаны в приложении.
Список использованной литературы.
1.Чекалов А.П.Базы данных от проектирования доразработки приложений СПб.: БХВ-Петербург, 2003. - 384 с.