Разработка туристического сайта «Орбита»
Содержание:
Введение
На данный момент, автоматизация документооборота стала не только средством оптимизации внутренних процессов предприятия, но и насущной необходимостью в условиях жесткой конкуренции. Автоматизация деятельности играет важную роль в развитии предприятия: дает новые возможности любой организации по ускорению работы, позволяет опередить конкурентов при принятии как оперативных, так и стратегических решений. Активное внедрение автоматизированного документооборота на предприятии приведет к улучшению и ускорению производственных процессов, и соответственно к росту экономических показателей в целом.
Одним из условий успешного функционирования предприятия оказывающего услуги в сфере обслуживания клиента, является организация четкого структурированного учета с конечными потребителями услуг. Важной составляющей частью организации этого учета является специализированное программное обеспечение для предприятий, позволяющее автоматизировать основные процессы работы данной отрасли, сделать адекватными и прозрачными процесс расчетов с клиентами и систему документооборота.
Тема представленной работы: «Разработка туристического сайта».
Целью работы является разработка информационного сервиса предоставления туров по России ООО «Орбита». Для достижения поставленной цели необходимо решить следующие задачи:
- Обосновать выбор технологии проектирования и средств разработки.
- Рассмотреть технологию разработки туристического сервиса.
- Выбрать программное обеспечение для создания туристического сервиса.
- Выполнить проектирование туристического сервиса.
- Реализовать web-приложение туристического сервиса.
Объектом работы является процесс обработки заявок в туристической фирме.
Предметом исследования данной работы являются информационные отношения, возникающие в процессе обработки заявок в туристической фирме.
Методы исследования включают в себя общенаучные методы познания, системный анализ, основы проектирования баз данных и программирования web-приложений.
Актуальность темы курсового проекта обусловлена постоянным ростом количества пользователей сети интернет, а, следовательно, и ростом количества таких сайтов, где пользователь получает желаемую услугу или продукт, не выходя из дома, а для персонала в свою очередь снижается трудоемкость и минимизируется вероятность ошибок в его действиях.
1 Техническое задание и выбор средств реализации
1.1 Анализ предметной области
Общество с ограниченной ответственностью «Орбита» работает на рынке туристических услуг с 2008 года. Основным видом деятельности является продажа прямых туров по России. Дополнительно компания является контрагентом других крупных туроператоров России и предоставляет услуги по подбору туров в другие страны.
Главным достоинством компании ООО «Орбита» является многолетний опыт и высокая квалификация ее сотрудников, отличное знание всего спектра предлагаемых услуг и продукции, ответственный подход к делу, постоянное развитие и улучшение бизнес-процессов.
ООО «Орбита» имеет линейную структуру управления.
Организационная структура представлена на рисунке 1.1.
Рисунок 1.1 – Организационная структура туристической фирмы ООО «Орбита»
Генеральный директор ООО «Орбита» занимается:
- Непосредственным контролем деятельности всех подчиненных отделов;
- Анализом финансовых показателей деятельности фирмы;
- Работой с корпоративными клиентами;
- Принятием решений о предоставлении премии сотрудникам туристической фирмы;
- Составлением учетной политики туристической фирмы.
- Принятием решений о предоставлении скидки постоянным клиентам.
Бухгалтерией туристической фирмы руководит главный бухгалтер, бухгалтерия занимается:
- Непосредственно ведением налогового учета;
- Учетом первичной документации, доходов и расходов туристической фирмы;
- Составлением промежуточной и годовой налоговой отчетности для генерального директора и налоговых органов.
Отдел кадров занимается наймом новых сотрудников для туристической фирмы. Отдел рекламы занимается изучением рынка спроса на туристские услуги и формированием рекламных предложений.
Отделом туризма, который является объектом автоматизации, руководит старший менеджер. Он занимается следующими обязанностями:
- Формированием туристических предложений на основе изучения справочной информации по туризму;
- Изучением собственных завершенных программ туров и туров сторонних туристических агентств, для определения туров, пользующихся наибольшим спросом у клиентов;
- Подбором индивидуальных, наиболее приемлемых для клиентов туров с учетом специальных требований клиентов;
- Заключением договоров на продвижение и реализацию турпродуктов;
- Изучением жалоб и претензий туристов к качеству туристского обслуживания;
- Подготовкой отчетов о проделанной работе и передачей отчетов генеральному директору.
Менеджеры по визам обеспечивают оформление виз, которые требуются для выбранного клиентом тура.
Менеджеры, которые, непосредственно, работают с клиентами туристической фирмы, занимаются:
- Консультированием клиентов по вопросам выбора туристического предложения, помощью при бронировании и подтверждении услуг туристической фирмы;
- Оформлением документов, заключением договоров на оказание туристических услуг;
- Предоставлением отчетов о проделанной работе старшему менеджеру.
1.2 Постановка задачи
В рамках представленной работы необходимо разработать web-приложение для туристической фирмы, которое позволит автоматизировать процесс обработки заявок в туристической фирме.
В качестве пользователей web-приложения выступают:
-
-
-
- Гость.
- Клиент.
- Администратор.
- Менеджер.
-
-
Ниже описан функционал пользователей:
1. Работа с пользователями (режим администратора) – редактирование перечня пользователей, выдача прав пользователям в личном кабинете администратора
2. Авторизация (режим администратора, менеджера, клиента) – вход в систему
3. Регистрация (режим гостя) – регистрация клиента на сайте туристической фирмы
4. Работа с турами (режим менеджера) - редактирование перечня туристических предложений в личном кабинете менеджера
5. Просмотр туров (режим гостя, клиента) – просмотр посетителями сайта туристических предложений фирмы
6. Бронирование тура (режим клиента) – выбор тура и создание заявки на бронирование туристического предложения
7. Просмотр своих заявок (режим клиента) – просмотр заявок авторизованного клиента, отслеживание статуса заявки в личном кабинете клиента
8. Работа с заявками (режим менеджера) – работа с перечнем заявок клиентов туристической фирмы в личном кабинете менеджера, смена статуса, подтверждение оплаты, создание новых заявок.
Дерево функций для каждой категории пользователя представлено на рисунках 1.2-1.5.
Рисунок 1.2 – Дерево функций для администратора
Рисунок 1.3 – Дерево функций для менеджера
Рисунок 1.4 – Дерево функций для клиента
Рисунок 1.5 – Дерево функций для гостя
В качестве входной информации используются следующие сведения о:
- Справочных данных туристической фирмы (города, страны, отели, туристические операторы, авиакомпании, категории номеров и питания в отелях),
- Данные о клиентах, которые они указывают при регистрации на сайте туристической фирмы, в том числе данные для авторизации в системе,
- Данные о сотрудниках туристической фирмы (менеджерах и администраторах), правах их доступа к данным системы, в том числе данные для авторизации в системе,
- Данные о туристических предложениях фирмы, которые формирует менеджер,
- Данные о заявках на бронирование туристического предложения от клиентов фирмы.
Выходными данными системы являются:
- Результаты поиска и сортировки данных о туристических предложениях в режиме гостя, клиента или менеджера, представленные в табличной форме,
- Результаты поиска и сортировки данных о заявках в режиме клиента или менеджера, представленные в табличной форме.
1.3 Выбор средств разработки
В области программирования для Сети, PHP — один из популярнейших скриптовых языков благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста», англ. Personal Home Page Tools — «Инструменты для создания персональных веб-страниц») — скриптовый язык, созданный для генерирования HTML-страниц на веб-сервере и работы с базами данных.
В настоящее время для организации хранилища данных веб-приложений наиболее часто используется СУБД MySQL.
MySQL является компактным и простым в эксплуатации сервером баз данных. MySQL поддерживает стандарты начального уровня ANSI SQL92 и ODBC. Приложения базы данных могут быть реализованы при помощи популярных языков высокого уровня, таких как C, Perl, PHP и другие. СУБД позволяет оперировать таблицами с суммарным объемом данных до 4 Гбайт.
Связка PHP и MySQL используется абсолютным большинством разработчиков динамических Web-приложений. Использование PHP и MySQL позволяет настраивать и изменять ваш ресурс в реальном времени.
2 Описание модулей серверной части программы и их взаимодействие
Предполагаемая организация архитектуры аппаратной платформы – клиент-серверная, представлена на рисунке 2.1.
Рисунок 2.1 - Диаграмма размещения
Web-приложение должно быть разработано на основе следующих программных компонентов:
1. Сервер базы данных с установленной MySQL версией не ниже 5.5;
2. Web-сервер со следующей конфигурацией ПО:
2.1 Операционная система – Windows 7/10;
2.2 Http-сервер Apache версии не ниже 2.4;
-
- Транслятор PHP версии не ниже 5.5.
Структура модулей (диаграмма компонентов) web-приложения представлена на рисунке 2.2.
Рисунок 2.2 - Диаграмма компонентов
Программа включает в себя следующие модули:
Модуль "option.php"– модуль отвечает за соединение с БД.
Модуль "reg.php"– модуль отвечает за регистрацию клиентов на сайте.
Модуль "auth.php"– модуль отвечает за авторизацию клиентов на сайте.
Модуль "index.php"– модуль отвечает за работу стартовой страницы с главным меню сайта.
Модуль "worker.php"– модуль отвечает за работу c пользователями системы в режиме администратора.
Модуль "client.php"– модуль отвечает за работу с клиентами в режиме менеджера.
Модуль "requestclt.php"– модуль отвечает за работу c заявками клиента, добавление, редактирование, удаление заявок (личный кабинет клиента).
Модуль "requestmng.php"– модуль отвечает за работу c заявками в режиме менеджера (личный кабинет менеджера), добавление, редактирование и удаление заявок.
Модуль "tourguest.php"– модуль отвечает за работу c туристическими предложениями в режиме гостя (только фильтр, сортировка и просмотр предложений).
Модуль "tourclt.php"– модуль отвечает за работу c туристическими предложениями в режиме клиента, выбор и бронирование тура (личный кабинет клиента).
Модуль "tourmng.php"– модуль отвечает за работу c туристическими предложениями в режиме менеджера (личный кабинет менеджера), добавление новых туристических предложений, редактирование, удаление.
2.3 Развертывание локального web-сервера и сервера базы данных
Для развертывания локального web-сервера и сервера базы данных MySQL устанавливаем программное средство openserver. Настройки openserver представлены на рисунке 2.3.
Рисунок 2.3 – настройки openserver
После того, как openserver настроен и запущен, запускаем phpmyadmin и создаем новую базу данных tour с кодировкой utf8_bin, рисунок 2.4
Рисунок 2.3 – Создание базы данных
Далее импортируем базу из файла tour.sql, рисунок 2.4
Рисунок 2.4 – Импорт базы данных
На рисунке 2.5 представлены таблицы базы данных tour.
Рисунок 2.5 – Таблицы базы данных tour
На рисунке 2.6 представлена схема базы данных tour.
Рисунок 2.6 – Схема базы данных tour
3 Описание структуры базы данных и ее функций
Описание структуры базы данных приведено в таблицах 3.1-3.11.
Таблица 3.1 - Сущность company (АвиаКомпания)
Атрибут |
Описание |
Тип данных |
Описание |
idcompany |
Номер авиакомпании |
integer |
Первичный ключ, автоинкремент |
company |
Наименование авиакомпании |
varchar(40) |
Таблица 3.2 - Сущность town (Город)
Атрибут |
Описание |
Тип данных |
Описание |
idtown |
Номер города |
integer |
Первичный ключ, автоинкремент |
idcountry |
Номер страны |
integer |
Внешний ключ, таблица «Страна» |
idtown |
Наименование города |
varchar(40) |
Таблица 3.3 - Сущность food (Питание)
Атрибут |
Описание |
Тип данных |
Описание |
idfood |
Номер типапитания |
integer |
Первичный ключ, автоинкремент |
food |
Тип питания |
varchar(40) |
Таблица 3.4 - Сущность hotel (Отель)
Атрибут |
Описание |
Тип данных |
Описание |
idhotel |
Номер отеля |
integer |
Первичный ключ, автоинкремент |
idtown |
Номер города |
integer |
Внешний ключ, таблица «Город» |
hotel |
Наименование отеля |
varchar(40) |
|
star |
Звездность отеля |
varchar(40) |
Таблица 3.5 - Сущность room (ТипНомера)
Атрибут |
Описание |
Тип данных |
Описание |
idroom |
Номер типа |
integer |
Первичный ключ, автоинкремент |
room |
Тип номера |
varchar(40) |
Таблица 3.6 - Сущность tour (Тур)
Атрибут |
Описание |
Тип данных |
Описание |
tour |
Номер туристического предложения |
integer |
Первичный ключ, автоинкремент |
idtownend |
Номер города назначения |
integer |
Внешний ключ, таблица «Город» |
idtownstart |
Номер города вылета |
integer |
Внешний ключ, таблица «Город» |
idhotel |
Номер отеля |
integer |
Внешний ключ, таблица «Отель» |
idfood |
Номер питания |
integer |
Внешний ключ, таблица «Питание» |
idroom |
Номер типа номера |
integer |
Внешний ключ, таблица «ТипНомера» |
idcompany |
Номер авиакомпании |
integer |
Внешний ключ, таблица «АвиаКомпания» |
idoperator |
Номер туроператора |
integer |
Внешний ключ, таблица «ТурОператор» |
datestart |
Дата вылета |
datetime |
|
price |
Цена |
integer |
|
member |
Участники |
varchar(40) |
|
dateend |
Дата назначения |
datetime |
Таблица 3.7 - Сущность operator (Туроператор)
Атрибут |
Описание |
Тип данных |
Описание |
idoperator |
Номер туристического оператора |
integer |
Первичный ключ, автоинкремент |
operator |
Наименование туроператора |
varchar(40) |
|
phone |
Телефон оператора |
varchar(40) |
|
info |
Реквизиты оператора |
varchar(40) |
Таблица 3.8 - Сущность request (Заявка)
Атрибут |
Описание |
Тип данных |
Описание |
idrequest |
Номер заявки |
integer |
Первичный ключ, автоинкремент |
idtour |
Номер тура |
integer |
Внешний ключ, таблица «Тур» |
idclient |
Номер клиента |
integer |
Внешний ключ, таблица «Клиент» |
idworker |
Номер сотурдника |
integer |
Внешний ключ, таблица «Сотрудник» |
date |
Дата заявки |
datetime |
|
day |
Длительность |
integer |
|
status |
Статус |
varchar(40) |
|
cost |
Стоимость |
integer |
|
paid |
Оплачено |
varchar(40) |
Таблица 3.9 - Сущность country (Страна)
Атрибут |
Описание |
Тип данных |
Описание |
idcountry |
Номер страны |
integer |
Первичный ключ, автоинкремент |
country |
Наименование страны |
varchar(40) |
Таблица 3.10 - Сущность client (Клиент)
Атрибут |
Описание |
Тип данных |
Описание |
idclient |
Номер клиента |
integer |
Первичный ключ, автоинкремент |
client |
ФИО клиента |
varchar(40) |
|
|
Электронная почта клиента |
varchar(40) |
|
phone |
Телефон клиента |
varchar(40) |
|
passport |
Паспорт клиента |
varchar(40) |
|
address |
Адрес клиента |
varchar(40) |
|
login |
Логин клиента |
varchar(40) |
|
parol |
Пароль клиента |
varchar(40) |
Таблица 3.11 - Сущность worker (Сотрудник)
Атрибут |
Описание |
Тип данных |
Описание |
idworker |
Номер сотрудника |
integer |
Первичный ключ, автоинкремент |
worker |
ФИО сотрудника |
varchar(40) |
|
permission |
Должность сотрудника и права его доступа (менеджер или администратор) |
varchar(40) |
|
phone |
Телефон сотрудника |
varchar(40) |
|
login |
Логин сотрудника |
varchar(40) |
|
parol |
Пароль сотрудника |
varchar(40) |
4 Описание структуры клиентской части
Для запуска web-приложения необходимо воспользоваться меню openserver. Предварительно папку tour c php-скриптами web-приложения необходимо поместить в папку openserver/domains.
index.php – главная и стартовая страница приложения (рисунок 4.1). С неё начинается работа с приложениями и возможен переход на все остальные страницы.
Рисунок 4.1 – Главная и стартовая страница приложения
Неавторизованному пользователю (гостю) на сайте доступна следующая информация: перечень туристических предложений (рисунок 4.2), регистрация в системе (рисунок 4.3) и авторизация (рисунок 4.3).
Рисунок 4.2 – Туры
На странице «Туры» собраны все туристические предложения фирмы. На странице доступна сортировка и фильтр данных.
Страница регистрации позволяет гостям зарегистрироваться на сайте в качестве клиента. При регистрации необходимо указать фамилию, имя, отчество, электронную почту, паспортные данные, телефон, логин и пароль.
Рисунок 4.3 – Страница регистрации
Переход на форму авторизации осуществляется с главной страницы веб-приложения. Форма авторизации представлена на рисунке 4.4.
Рисунок 4.4 – Форма авторизации веб-приложения
После авторизации в веб-приложении в режиме администратора (логин admin, пароль master), пользователь попадает в личный кабинет администратора, рисунок 4.5.
Рисунок 4.5 – Личный кабинет администратора
Страницы для просмотра и редактирования данных о пользователях веб-приложения представлены на рисунках 4.6, 4.7.
Рисунок 4.6 – Пользователи веб-приложения
Рисунок 4.7 – Добавление пользователя веб-приложения
После авторизации в веб-приложении в режиме клиента, пользователь попадает в личный кабинет клиента, рисунок 4.8.
Рисунок 4.8 – Личный кабинет клиента
Работа с туристическим предложениями в режиме клиента представлена на рисунке 4.9.
Рисунок 4.9 – Работа с туристическим предложениями
На странице доступны фильтр и сортировка данных. Выбранный тур можно забронировать (сформировать заявку для менеджера туристической компании), рисунок 4.10.
Рисунок 4.10 – Добавление заявки
Необходимо ввести длительность тура - количество дней, предназначенных для отдыха. Все свои заявки авторизованный клиент может посмотреть на странице заявок, рисунок 4.11.
Рисунок 4.12 – Работа с заявками
На странице доступны фильтр и сортировка данных, редактирование перечня заявок.
После авторизации в веб-приложении в режиме менеджера, пользователь попадает в личный кабинет менеджера, рисунок 4.13.
Рисунок 4.13 – Личный кабинет менеджера
Страницы для просмотра и редактирования данных о турах, представлены на рисунках 4.14-4.15.
Рисунок 4.14 – Туристические предложения в режиме менеджера
На странице доступны фильтр и сортировка данных, редактирование перечня туристических предложений.
Рисунок 4.15 – Добавление тура
Страницы для просмотра и редактирования данных о клиентах, представлены на рисунках 4.16-4.18.
Рисунок 4.16 – Перечень клиентов в режиме менеджера
На странице доступны фильтр и сортировка данных, редактирование перечня клиентов.
Рисунок 4.17 – Добавление клиента
Страницы для просмотра и редактирования данных о заявках, представлены на рисунках 4.18-4.20.
Рисунок 4.18 – Перечень заявок в режиме менеджера
На странице доступны фильтр и сортировка данных, редактирование перечня заявок.
Рисунок 4.19 – Добавление заявки
Рисунок 4.20 – Редактирование заявки
На основании вышеизложенного описания можно сделать вывод, что клиентская часть сайта разработаны в полной мере, в соответствии с требованиями и методами, указанными в технических требованиях к проектированию системы.
Заключение
Целью данного проекта является разработка информационного сервиса предоставления туров по России ООО «Орбита».
Проектирование системы произведены с использованием нотаций IDEF1x и UML-диаграмм. Проектирование велось с помощью CASE-средств ERWin, MS Visio. В качестве языка программирования для разработки web-приложения был выбран язык PHP, в качестве СУБД выбрана MySQL.
Внедрение эффективно скажется на: систематизации учета и хранения заказов в туристической фирме, оперативном доступ к личным данным клиентов, сокращении времени обработки заявок на бронирование и принятия решений о смене статуса заявки, повышении исполнительской дисциплины, сокращении непроизводственных затрат рабочего времени сотрудников и минимизации финансовых затрат на документооборот.
Целесообразность разработки данной информационной системы обуславливается широким спектром решаемой ею задач и возможностью получить существенную выгоду от применения данной системы.
Практическая значимость исследования заключается в том, что разработанное web-приложение вносит определенный вклад в развитии web-представительства туристической фирмы, и в дальнейшем данную технологию можно будет использовать для исследований в этой области.
Список использованных источников
- Елесина Н. В., Кузнецова Е. В. Организационные структуры управления предприятием // Актуальные проблемы науки. – 2014.
- Савин И. В. О технологиях RAID-контроллеров // Современные тенденции развития образования, науки и технологий. – 2018
- Золотин И. И. Защита информационных систем при помощи брандмауэра // им. НЭ Баумана © Издательство МГТУ им. НЭ Баумана, 2017.
- Бураева Л. А. Актуальные проблемы защиты вычислительных систем от потери информации // Новые задачи технических наук и пути их решения. Сборник статей международной научно-практической конференции. – 2016. – С. 33-35.
- Бикмаева Е. В., Баженов Р. И. Об оптимальном выборе системы защиты информации от несанкционированного доступа // APRIORI. Cерия: Естественные и технические науки. – 2014. – №. 6. – С. 5-5.
- Медведев Ю. С., Терехов В. В. Проектирование интерактивных web-приложений // Современные проблемы науки и образования. – 2015. – №. 1-1. – С. 43-43.
- Торро С. А. Сравнение Стратегий автоматизации // ББК 65.011 А43. – 2018. – С. 236.
- Илюшечкин В. М. Основы использования и проектирования баз данных. – Litres, 2018.
- Качаловский, А. А. Разработка сайта-информационного приложения по технологиям PHP-MySQL / А. А. Качаловский // 67-я научно-техническая конференция учащихся, студентов и магистрантов, 18-23 апреля, Минск : сборник научных работ : в 4 ч. Ч. 4 / Белорусский государственный технологический университет. - Минск : БГТУ, 2016. - С. 13-16.
- Крамаренко Т. А., Деменков И. А., Михеев А. М. Выбор клиент-серверной СУБД для реализации информационной системы // Современные информационные технологии. – 2016. – №. 24. – С. 11-15.
- Чевордаев И. А., Соколов Н. В., Голышков И. А. Изучение рынка комплектующих для персонального компьютера и подбор наиболее мощных частей на базе имеющихся предложений // Современные Информационные Технологии. – 2016. – С. 122-128.
- Сенник Ю. С., Гребенников Р. И. Жизненный цикл информационных систем // Системный анализ и прикладная информатика. – 2015. – №. 2.
- Берг Д., Ульянова Е., Добряк П. Модели жизненного цикла. – Litres, 2017.
- Таран В. Н., Дерябина В. А. Анализ рисков web-ориентированной информационной системы в зависимости от этапов жизненного цикла // Естественные и технические науки: опыт, проблемы, перспективы. – 2016. – №. 2. – С. 77-82.
- Королев О. Л., Лукьянова М. А. Безопасность веб-приложений // Проблемы информационной безопасности. – 2016. – С. 166.
- Чен П. П. Ш. Модель «сущность–связь» – шаг к единому представлению данных // Издательство" Открытые системы". – 2015.
- Колисниченко Д. Н. PHP и MySQL. Разработка Web-приложений. 6-е изд. – БХВ-Петербург, 2017.
- Автоматизация разграничений прав доступа к ресурсам информационной системы в ООО "Монарх" (Технико-экономическая характеристика предметной области и предприятия. Анализ деятельности)
- Организация бухгалтерского учета на предприятии (ОСНОВЫ И ПРИНЦИПЫ БУХГАЛТЕРСКОГО УЧЕТА)
- Системный подход к менеджменту (ТЕОРЕТИЧЕСКИЕ ОСНОВЫ СИСТЕМНОГО ПОДХОДА К МЕНЕДЖМЕНТУ)
- Аппарат государственной власти (ПОНЯТИЕ, СТРУКТУРА И ПРИНЦИПЫ СОВРЕМЕННОГО АППАРАТА)
- Программа пенсионной реформы и пути ее реализации (Эволюция пенсионного обеспечения в России)
- Эффективность менеджмента организации (Сущность, критерии и показатели эффективности менеджмента)
- Возникновение права (Обычай: понятие и признаки)
- Теория государства и права (Понятие правовой системы)
- Роль мотивации в поведении организации (О компании ОАО «Россельхозбанк»)
- Роль мотивации в поведении организации (Краткая характеристика организации на примере ОАО «Россельхозбанке»)
- Формы государственного устройства (Понятие формы государственного устройства)
- Автоматизация разграничений прав доступа к ресурсам информационной системы в ООО "Монарх"