Введение. Актуальность, цели и задачи курсовой работы

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

Автоматизация позволяет кардинально повысить производительность труда и снизить вероятность ошибок персонала за счет надежного и оперативного информационного обеспечения. Данная курсовая работа посвящена процессу создания такой системы.

В рамках данного исследования:

  • Объект исследования: процесс проектирования и разработки реляционных баз данных.
  • Предмет исследования: разработка и проектирование базы данных для автоматизации деятельности конкретного туристического агентства.

Цель работы — спроектировать и разработать функциональную реляционную базу данных, полностью отвечающую требованиям туристического агентства.

Для достижения этой цели были поставлены следующие задачи:

  1. Изучить теоретические основы проектирования баз данных.
  2. Провести системный анализ предметной области.
  3. Построить концептуальную и логическую модели данных.
  4. Выполнить нормализацию таблиц для обеспечения целостности данных.

Глава 1. Теоретические основы проектирования реляционных баз данных

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

Для решения задач туристического агентства подходят несколько распространенных СУБД, среди которых можно выделить:

  • Microsoft Access: оптимальное решение для небольших организаций, сочетающее в себе простоту разработки и достаточно широкие функциональные возможности.
  • MS SQL Server: мощная и масштабируемая СУБД, предназначенная для систем с высокой нагрузкой и большими объемами данных.

Ключевой методологией проектирования, выбранной для этой работы, является подход, основанный на модели «сущность-связь» (ER-моделирование). Этот метод позволяет наглядно представить структуру данных, выделив основные объекты (сущности) и логические взаимосвязи между ними. Полученная ER-диаграмма служит фундаментом для создания таблиц базы данных.

Неотъемлемым этапом проектирования является нормализация данных. Это формальный процесс организации полей и таблиц в реляционной базе данных для минимизации избыточности и устранения потенциальных аномалий при обработке данных (вставка, обновление, удаление). Корректно проведенная нормализация гарантирует целостность и логическую непротиворечивость хранимой информации.

Глава 2. Системный анализ предметной области туристического агентства

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

В ходе анализа были выделены ключевые информационные объекты (сущности), которыми оперирует менеджер:

  • Клиенты: физические лица, приобретающие туристические услуги.
  • Туры: готовые туристические продукты с определенными параметрами.
  • Отели: места проживания, связанные с конкретными турами.
  • Заказы: факт бронирования одного или нескольких туров для одного или нескольких клиентов.
  • Сотрудники: менеджеры агентства, оформляющие заказы.
  • Страны и Города: географические локации, к которым привязаны туры.

Для каждой сущности определены ее ключевые характеристики (атрибуты). Например:

  • Для сущности «Клиент» это ФИО, паспортные данные, контактный телефон.
  • Для сущности «Тур» это страна и город назначения, продолжительность в днях, стоимость и дата начала.

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

  1. Надежное хранение информации о клиентах, турах, отелях, заказах и сотрудниках.
  2. Обеспечение быстрого параметрического поиска туров (по стране, бюджету, датам).
  3. Ведение полной клиентской базы с историей заказов.
  4. Автоматическое формирование договоров и финансовых отчетов по продажам.

Глава 3. Разработка концептуальной (инфологической) модели данных

Результаты системного анализа служат основой для построения концептуальной модели данных. Эта модель, представленная в виде ER-диаграммы, является визуальным чертежом логической структуры будущей базы данных. Она отображает все выявленные сущности и связи между ними.

Ключевые сущности модели:

  • Клиент (КодКлиента, ФИО, Паспорт, Телефон)
  • Заказ (КодЗаказа, ДатаОформления, Сумма, КодСотрудника)
  • Сотрудник (КодСотрудника, ФИО, Должность)
  • Тур (КодТура, Название, Стоимость, КодОтеля)
  • Отель (КодОтеля, Название, Категория, КодГорода)
  • Страна (КодСтраны, Название)
  • Город (КодГорода, Название, КодСтраны)

Наибольшую важность в модели представляют связи между сущностями, которые отражают бизнес-логику агентства. Основные связи и их кардинальность (соотношение количества экземпляров):

  • Сотрудник и Заказ: один сотрудник может оформить много заказов (связь «один-ко-многим», 1:M).
  • Тур и Заказ: один и тот же тур может быть включен во многие заказы (1:M).
  • Заказ и Клиент: в одном заказе (например, семейная поездка) может участвовать много клиентов, и один клиент может делать много заказов (связь «многие-ко-многим», M:N).

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

Глава 4. Проектирование логической (даталогической) модели и нормализация

На этом этапе абстрактная ER-диаграмма преобразуется в строгую реляционную модель — конкретный набор взаимосвязанных таблиц, готовых к реализации в СУБД. Каждая сущность из концептуальной модели, как правило, становится таблицей, а ее атрибуты — полями этой таблицы.

Для каждой таблицы определяется первичный ключ (PK) — поле, уникально идентифицирующее каждую запись (например, `КодКлиента` в таблице «Клиенты»). Связи между таблицами реализуются с помощью внешних ключей (FK) — полей, которые ссылаются на первичный ключ в другой таблице.

Особое внимание уделяется связи «многие-ко-многим» между `Заказами` и `Клиентами`. Такие связи не могут быть реализованы напрямую. Для этого создается промежуточная, или ассоциативная, таблица, например, «СоставЗаказа», которая будет содержать два внешних ключа: `КодЗаказа` и `КодКлиента`. Каждая запись в этой таблице будет связывать одного конкретного клиента с одним конкретным заказом.

После определения структуры таблиц проводится их пошаговая нормализация до третьей нормальной формы (3НФ) для устранения аномалий данных:

  1. Первая нормальная форма (1НФ): Все поля таблицы должны быть атомарными, то есть не содержать в себе списков или наборов значений.
  2. Вторая нормальная форма (2НФ): Таблица должна быть в 1НФ, и все неключевые поля должны полностью зависеть от всего составного первичного ключа (если он есть). Этот шаг устраняет избыточность в таблицах со сложными ключами.
  3. Третья нормальная форма (3НФ): Таблица должна быть в 2НФ, и все неключевые поля должны зависеть только от первичного ключа, а не от других неключевых полей. Это исключает транзитивные зависимости.

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

Глава 5. Вопросы реализации и пользовательского интерфейса

После того как логическая структура базы данных полностью спроектирована и нормализована, можно переходить к ее физической реализации. В качестве СУБД для данного проекта выбран MS Access, так как он позволяет быстро создавать не только таблицы, но и пользовательские интерфейсы (формы и отчеты), что идеально подходит для курсовой работы и систем для малого бизнеса.

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

  • Поиск тура по критериям (SELECT):
    SELECT * FROM Туры WHERE Стоимость < 50000 AND КодСтраны = 5;
  • Добавление нового клиента (INSERT):
    INSERT INTO Клиенты (ФИО, Телефон) VALUES ('Иванов Иван Иванович', '+79211234567');
  • Обновление данных заказа (UPDATE):
    UPDATE Заказы SET Сумма = 125000 WHERE КодЗаказа = 101;

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

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

Заключение

В ходе выполнения данной курсовой работы был пройден полный цикл проектирования реляционной базы данных для автоматизации деятельности туристического агентства. Были успешно решены все поставленные задачи: проведен детальный анализ предметной области, на его основе разработаны концептуальная (ER-диаграмма) и логическая (структура таблиц) модели, а также выполнена нормализация таблиц до третьей нормальной формы для обеспечения целостности данных.

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

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

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

  • Разработку полноценного веб-интерфейса для онлайн-бронирования туров клиентами.
  • Интеграцию системы с API крупных туроператоров для автоматического обновления информации о турах.
  • Создание мобильного приложения для клиентов с доступом к истории их поездок и специальным предложениям.

Похожие записи