Курсовая аэропорт. Разработка базы данных гражданских авиалиний
Скачать 0.93 Mb.
|
4 РАЗРАБОТКА БАЗЫ ДАННЫХ ГРАЖДАНСКИХ АВИАЛИНИЙ4.1 Разработка базы данных приложенияПроектирование базы данных — это итерационный процесс, который имеет свое начало, но не имеет конца и состоит из бесконечного ряда уточнений. Его следует рассматривать прежде всего, как процесс познания. Как только проектировщик приходит к пониманию работы предприятия и смысла обрабатываемых данных, а также выражает это понимание средствами выбранной модели данных, приобретенные знания могут показать, что требуется уточнение и в других частях проекта. Особо важную роль в общем процессе успешного создания системы играет концептуальное и логическое проектирование базы данных. Если на этих этапах не удастся получить полное представление о деятельности предприятия, то задача определения всех необходимых пользовательских представлений или обеспечения защиты базы данных становится чрезмерно сложной или даже неосуществимой. К тому же может оказаться затруднительным определение способов физической реализации или достижения приемлемой производительности системы. С другой стороны, способность адаптироваться к изменениям является одним из признаков удачного проекта базы данных. Поэтому вполне имеет смысл затратить время и энергию, необходимые для подготовки наилучшего возможного проекта. 4.1.1 Концептуальное проектирование базы данных.Концептуальное проектирование базы данных - это процесс создания модели используемой на предприятии информации, не зависящей от любых физических аспектов ее представления. Первый этап процесса проектирования базы данных, он заключается в создании концептуальной модели данных для анализируемой части предприятия. Эта модель данных создается на основе информации, записанной в спецификациях требований пользователей. Концептуальное проектирование базы данных абсолютно не зависит от таких подробностей ее реализации, как тип выбранной целевой СУБД, набор создаваемых прикладных программ, используемые языки программирования, тип выбранной вычислительной платформы, а также от любых других особенностей физической реализации. При разработке концептуальная модель данных постоянно подвергается тестированию и проверке на соответствие требованиям пользователей. Созданная концептуальная модель данных предприятия является источником информации для этапа логического проектирования базы данных. Целью проектирования базы данных для аэропорта является создание информационной системы для систематизации и дальнейшей комфортной работы в сфере. Пользователями данной распределённой базы данных будут являться сотрудники аэропорта, так как в приложении нет регистрации. В базе данных должна быть отражена информация о самом аэропорте, самолётах и ответственных за них пилотов, также о доступных рейсах и купленных билетах. В ходе изучения предметной областью выделены следующие сущности, представляющие информационное значение для задачи: аэропорт; самолёт; человек (в данном случае были объеденины сущнисти сотрудника и клиента); рейс; билет на рейс. 4.1.2 Логическое проектирование базы данных.Логическое проектирование базы данных – это процесс создания модели используемой на предприятии информации на основе выбранной модели организации данных, но без учета типа целевой СУБД и других физических аспектов реализации, на основе конкретной модели данных, например, реляционной модели данных. Исходя из построенной ранее концептуальной модели данных, необходимо заполнить сущности атрибутами и указать типы связей между сущностями. Логическое представление базы данных приведено на рисунке 4.2. Рисунок 4.2 – Логическая модель базы данных 4.1.3 Физическое проектирование базы данныхФизическое проектирование является третьим и последним этапом создания проекта базы данных, при выполнении которого проектировщик принимает решения о способах реализации разрабатываемой базы данных. Во время предыдущего этапа проектирования была определена логическая структура базы данных (которая описывает отношения и ограничения в рассматриваемой прикладной области). Хотя эта структура не зависит от конкретной целевой СУБД, она создается с учетом выбранной модели хранения данных, например, реляционной. На этом этапе необходимо указать типы данных каждому атрибуту. Физическое представление таблиц базы данных приведено на рисунке 4.3. Рисунок 4.3 – Физическая модель базы данных В физическом проектировании базы данных, особое внимание уделяется глоссарию – некому словарю с пояснениями всех атрибутов отношений в базе данных, для удобства работы с ними. Данный глоссарий предоставлен по отдельности для каждой таблицы, с описанием того, какую информацию содержит отношение. Отношение «travel_class» - отношение, что описывает вид покупаемого клиентом билета. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; name – название вида билета. Отношение «flight_type» - отношение, которое также носит чисто описательный характе, а именно – тип самого рейса. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; name – название типа рейса. Отношение «airport» - отношение, что хранит информацию об аэропортах. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; name – название аэропорта; address – адрес здания. Отношение «people» - отношение, хранящее в себе информацию, как о пассажирах, так же и о персонале (только главный пилот). Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; last_name – фамилия человека; first_name – имя человека; father_name – отчество человека; is_crew – флаг, что показывает принадлежность человека к персоналу; phone_num – номер телефона; address – домашний адрес; age – возраст; license_number – номер лицензии. Отношение «aircraft» - отношение, что хранит информацию о самолётах. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; pilot_id – внешний ключ к таблице «people»; model – название модели самолёта; serial_num – сериальный номер самолёта; seats_amount – количество мест. Отношение «flights» - отношение, хранящее информацию о рейсах. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; type – внешний ключ к таблице «flight_type»; number – номер рейса; departure_time – время отправления рейса; arrival_time – время прибытия рейса; departure_point_id – внешний ключ к таблице «airport», мето отправления; arrival_point_id - внешний ключ к таблице «airport», место прибытия; plane_id - внешний ключ к таблице «aircraft». Отношение «passengers» - отношение, что хранит информацию о пассажирах и купленных ими билетах. Данная таблица состоит из: id – уникальный идентификатор, первичный ключ; person_id – внешний ключ к таблице «people»; flight_id – внешний ключ к таблице «flights»; seat – место в самолёте; ticket_price – цена билета. |