Разработка модуля информационной системы для отдела по контролю полетов и личного состава и справочной службы аэропорта

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

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

Курсовая работа

по предмету «Базы данных

и информационные системы»

на тему: «Разработка модуля информационной системы для отдела по контролю полетов и личного состава и справочной службы аэропорта »

Выполнил студент группы ИН-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 с.