курсавая работа. Курсовая работа по дисциплине авиабилетов. 1. Анализ предметной области и постановка задачи
Скачать 1.2 Mb.
|
ВВЕДЕНИЕ 1.Анализ предметной области и постановка задачи……………………………….…………….4 1.1 Продажа авиабилетов……………………………………………………………………………………….4 2. Сравнительный анализ существующих информационных систем продажи авиабилетов……………………………………………………………………………………………………………….5 3.Выбор средств разработки…………………………………………………………….…….…………………7 3.1. Архитектура информационной системы продажи авиабилетов…………..……..….9 4. Разработка информационной модели продажи авиабилетов…………………….….…9 4.1. Разработка базы данных информационной системы продажи авиабилетов……14 4.2. Разработка интерфейса клиентской части информационной системы…………..16 5.Тестирование…………………………………………………………………………………………………..……..18 5.1. Выбор режима тестирования….…..........................................………………………….……………………..19 ЗАКЛЮЧЕНИЕ ВВЕДЕНИЕ Целью данной курсовой работы является разработка многопользовательской системы бронирования авиабилетов. Для этого необходимо решить следующие задачи: Исиледовать придмтеную область; Построить концептуальную модель; Построить опрелделенную модедь организации данных; Реализовать базу данных посредством MY SQL sever 2005; Реализовать соответствующее WEB-приложение; Произвести развертывание и тестирование системы. Объектом исследования является деятельность авиа-агентства. Агентство дает возможность заказывать билеты на авиарейсы различных авиакомпаний. Каждый рейс имеет пункт отправления и пункт назначения. Рейс имеет дату, время вылета, дату и время прибытия. Каждый рейс выполняется самолетом определенной модели, в салоне есть места первого и второго класса. В зависимости от класса, билет имеет разную цену. Для каждой модели самолета есть определенное число мест каждого класса. Каждая модель самолета производится авиакомпанией-производителем. Ставятся задачи разработки многопользовательской системы, предназначенной для поиска и заказа билетов на авиарейсы. У каждого пользователя должна быть возможность найти нужные рейсы, получить информацию о времени вылета и прибытия, авиакомпании, обслуживающей данный рейс, а также заказать определенное количество билетов на указанный рейс. Так же система должна предоставлять администратору системы WEB-интерфейс для её сопровождения. 1. Анализ предметной области и постановка задачи 1.1 Продажа авиабилетов Целью данной выпускной квалификационной работы является создание программного средства, осуществляющего поиск и продажу авиабилетов. Авиакомпания занимается авиаперевозками пассажиров. Также она устанавливает маршруты полетов. Рейсы осуществляются по установленным маршрутам согласно расписанию. На каждый рейс существует определенное количество билетов. Продажа билета пользователю осуществляется при отправке запроса на бронирование, при условии, что данный билет до сих пор есть в наличии. Приобретя билет, пользователь предоставляет информацию о себе и становится пассажиром. Совершеннолетние пассажиры обязаны иметь занесенные в БД паспортные данные. Несовершеннолетние обязаны иметь занесенные в БД данные из свидетельства о рождении. Администраторы системы могут ограничивать или расширять доступ пользователей и сотрудников к предоставляемой информации. Система создаётся для обслуживания следующих групп пользователей: пользователи, приобретающие билеты на рейсы и осуществляющие их поиск; администраторы, осуществляющие контроль за пользователями и функциональностью системы; Абсолютно каждая авиакомпания использует определенную систему дистрибуции. Наиболее развитые используют GDS (глобальные дистрибьюторские системы, которые формируются из основных международных компьютерных систем резервирования). В итоге сервисы продаж авиабилетов при поиске информации пользуются ресурсами глобальных дистрибьюторских систем. Однако доступ к GDS является не бесплатным, поэтому в роли дистрибутивной системы для разрабатываемого продукта будет выступать БД, созданная в MS SQL Server 2012[1]. В БД должна храниться информация: о маршрутах; о рейсах о пользователях о бтлетах об авиакомпаниях о сотрудниках о поссажирах Это приложение предназначено для продажи авиабилетов и упрощения доступа к нужной информации. Наличие данной разработки улучшает организационную работу авиаперевозчика за счёт отсутствия бумажной документации, поиск и систематизация которой занимали бы очень большое количество времени. Это приложение предназначено для продажи авиабилетов и упрощения доступа к нужной информации. Наличие данной разработки улучшает организационную работу авиаперевозчика за счёт отсутствия бумажной документации, поиск и систематизация которой занимали бы очень большое количество времени. Amadeus – самая популярная система продаж авиабилетов в мире. Является ведущим поставщиком программных средств в области систематизации и дистрибуции информации, а также в области электронных платежей Однако такие показатели играют не только положительную роль для системы, потому как запрос на рейсы осуществляется на протяжении 40 секунд, что несопоставимо с поиском того же рейса через интернет-сервисы. Также минусом данной системы является интерфейс, недружелюбный для необученного пользователя. Отсутствие русского языка тоже является недостатком, однако это несильно влияет на ее популярность в пределах нашей страны, не мешая удерживать ведущую позицию. Подключение к системе Amadeus может осуществляться несколькими способами[3]: подключение через выделенные линии связи (стационарное); телефонная версия Dial-Up; подключение через интернет; подключение с помощью мобильного телефона. Однако такие показатели играют не только положительную роль для системы, потому как запрос на рейсы осуществляется на протяжении 40 секунд, что несопоставимо с поиском того же рейса через интернет-сервисы. Также минусом данной системы является интерфейс, недружелюбный для необученного пользователя. Отсутствие русского языка тоже является недостатком, однако это несильно влияет на ее популярность в пределах нашей страны, не мешая удерживать ведущую позицию. Подключение к системе Amadeus может осуществляться несколькими способами[3]: подключение через выделенные линии связи (стационарное); телефонная версия Dial-Up; подключение через интернет; подключение с помощью мобильного телефона. Система Galileo не поддерживает русский язык, как и Amadeus, но существует программа автоматизации деятельности туристических агенств Galileo Office, созданная специально для российского рынка услуг Ryanair.com – сайт авиакомпании Ryanair, которая является крупнейшим европейским бюджетным перевозчиком. В отличие от большинства других сайтов, осуществляющих продажу авиабилетов, не использует ни одну из GDS. Вся информация о рейсах, ценах и билетах предоставляется непосредственно самой авиакомпанией в виде БД, а диалог с потенциальным покупателем ведется при помощи сайта, оперирующего к данной БД. 13 Nemo.travel – информационная система, позволяющая бронировать авиа и ЖД билеты, а также гостиничные номера. Представляет собой мощную платформу, настроенную н использование GDS и оснащенную множеством таких средств как: автоматизация процессов. Представляет собой набор плагинов, осуществляющих оптимизацию трудовых затрат на обработку заказов; микшер результатов Информационная система поддерживает не только русский, но и английский и украинский языки. Архитектура Nemo представляет собой множество модулей, что позволяет потенциальным покупателям системы подключать только нужные функции, избегая лишних денежных затрат на неиспользуемый функционал. Несмотря на то, что разработчики рассматриваемой системы сотрудничают с самыми популярными GDS, оплачивать доступ к данным глобальным дистрибутивным системам необходимо отдельно, что вкупе с затратами на саму Nemo делает приобретение невыгодным для турагенств и совершенно невыгодным для рядового пользователя
3.Выбор средств разработки Для разработки информационной системы были выбраны язык программирования С#, MS Visual Studio 2015, язык программирования базы данных и запросов к ней SQL и система управления базами данных Microsoft SQL Server 2012. Язык C# является объектно-ориентированным языком программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft .NET и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270. Компилятор с C# входит в стандартную установку самой .NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств, вроде Visual Studio. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Переняв многое от своих предшественников — языков C++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++)[7]. Среда разработки Microsoft Visual Studio 2015 — это набор инструментов и средств, предназначенных для помощи разработчикам программ любого уровня квалификации в решении сложных задач и создания новаторских решений. Роль Visual Studio заключается в том, чтобы улучшить процесс разработки и упростить разработку высокоэффективных программ. В Visual Studio содержатся инструменты для всех этапов разработки программного обеспечения (разработка, тестирование, развертывание, интеграция и 21 управления). Visual Studio разрабатывается таким образом, чтобы обеспечить высокую надежность и совместимость. Visual Studio обладает удачным сочетанием безопасности, масштабируемости и взаимодействия. SQL (англ. Structured Query Language — «язык структурированных запросов») – универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL основывается на исчислении кортежей. Язык SQL ориентирован на операции с данными, представленными в виде логически взаимосвязанных совокупностей таблиц-отношений. Важнейшая особенность его структур – ориентация на конечный результат обработки данных, а не на процедуру этой обработки. Язык SQL сам определяет, где находятся данные, индексы и даже какие наиболее эффективные последовательности операций следует использовать для получения результата, а потому указывать эти детали в запросе к базе данных не требуется. Основные особенности SQL: независимость от конкретной СУБД – несмотря на наличие диалектов и различий в синтаксисе, в большинстве своём тексты SQL-запросов, содержащие DDL и DML, могут быть достаточно легко перенесены из одной СУБД в другую. Существуют системы, разработчики которых изначально ориентировались на применение по меньшей мере нескольких СУБД (например: система электронного документооборота Documentum может работать как с Oracle, так и с Microsoft SQL Server и IBM DB2). Естественно, что при применении некоторых специфичных для реализации возможностей такой переносимости добиться уже очень трудно; наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка. Табличная структура реляционной БД хорошо понятна, а потому язык SQL прост для изучения. SQL (англ. Structured Query Language — «язык структурированных запросов») – универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL основывается на исчислении кортежей. Язык SQL ориентирован на операции с данными, представленными в виде логически взаимосвязанных совокупностей таблиц-отношений. Важнейшая особенность его структур – ориентация на конечный результат обработки данных, а не на процедуру этой обработки. Язык SQL сам определяет, где находятся данные, индексы и даже какие наиболее эффективные последовательности операций следует использовать для получения результата, а потому указывать эти детали в запросе к базе данных не требуется. Основные особенности SQL: независимость от конкретной СУБД – несмотря на наличие диалектов и различий в синтаксисе, в большинстве своём тексты SQL-запросов, содержащие DDL и DML, могут быть достаточно легко перенесены из одной СУБД в другую. Существуют системы, разработчики которых изначально ориентировались на применение по меньшей мере нескольких СУБД (например: система электронного документооборота Documentum может работать как с Oracle, так и с Microsoft SQL Server и IBM DB2). Естественно, что при применении некоторых специфичных для реализации возможностей такой переносимости добиться уже очень трудно; наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка. Табличная структура реляционной БД хорошо понятна, а потому язык SQL прост для изучения. 3.1. Архитектура информационной системы продажи авиабилетов Архитектурой информационной системы называется концепция, определяющая структуру и взаимосвязь компонентов в данной системе. Компоненты информационной системы по выполняемым функциям можно разделить на три слоя: слой представления, слой бизнес-логики и слой доступа к данным. Разрабатываемой информационной системе продажи авиабилетов соответствует клиент-серверная архитектура. Такой подход обеспечивает многопользовательский режим доступа к информации, а также гарантирует целостность данных. Пользователь использует спроектированный графический интерфейс клиентской части системы, которая в свою очередь отправляет запросы серверному ПО. 4. Разработка информационной модели продажи авиабилетов 4.1. Разработка базы данных информационной системы продажи авиабилетов Процесс создания информационной модели начинается с определения концептуальных требований будущих пользователей БД. Концептуальная модель отображает предметную область в виде взаимосвязанных объектов без указания способов их физического хранения. Концептуальная модель представляет интегрированные концептуальные требования всех пользователей к базе данных данной предметной области. Возможно, что отраженные в концептуальной модели взаимосвязи между объектами окажутся впоследствии нереализуемыми средствами выбранной СУБД. Это потребует изменения концептуальной модели. Версия концептуальной модели, которая может быть реализована конкретной СУБД, называется логической моделью. Логическая модель отражает логические связи между атрибутами объектов вне зависимости от их содержания и среды хранения и может быть реляционной, иерархической или сетевой. Таким образом, логическая модель отображает логические связи между информационными данными в данной концептуальной модели. Различным пользователям в информационной модели соответствуют различные подмножества ее логической модели, которые называются внешними моделями пользователей. Таким образом, внешняя модель пользователя представляет собой отображение концептуальных требований этого пользователя в логической модели и соответствует тем представлениям, которые пользователь получает о предметной области на основе логической модели. Следовательно, насколько хорошо спроектирована внешняя модель, настолько полно и точно информационная модель отображает предметную область и настолько полно и точно работает автоматизированная система управления этой предметной областью. Логическая модель отображается в физическую память, которая может быть построена на электронных, магнитных, оптических, биологических или других принципах. Внутренняя модель предметной области определяет размещение данных, методы доступа и технику индексирования в данной логической модели и иначе называется физической моделью. Физическая модель данных оперирует категориями, касающимися организации внешней памяти и структур хранения, используемых в данной операционной среде. В настоящий момент в качестве физических моделей используются различные методы размещения данных, основанные на файловых структурах: это организация файлов прямого и последовательного доступа, индексных файлов и инвертированных файлов, файлов, использующих различные методы хеширования, взаимосвязанных файлов. Кроме того, современные СУБД широко используют страничную организацию данных. Физические модели данных, основанные на страничной организации, являются наиболее перспективными. Логическая и физическая модели базы данных информационной системы продажи авиабилетов представлены на рисунках. Описание сущностей Сущность «Пассажиры» Сущность «Несовершеннолетний» Сущность «Совершеннолетний» Сущность «Пользователи» Сущность «Билеты» Сущность «Рейсы» Сущность «Маршруты» Сущность «Авиакомпании» 3.2. Разработка интерфейса клиентской части информационной системы На основе диаграмм вариантов использования были разработаны следующие экранные формы: форма авторизации для входа в систему; форма регистрации для занесения данных нового пользователя в базу данных; форма поиска информации по рейсам и билетам; форма для осуществления бронирования билета; форма администрирования информационной системы, доступная пользователям группы «Администратор»; форма «Личный кабинет», доступная пользователям группы «Обычный пользователь». Форма авторизации в систему Форма регистрации нового пользователя Форма поиска информации в системе Форма осуществления бронирования билета 3.3. Разработка программных средств для пользовательского приложения информационной системы Диаграммы классов являются центральным звеном методологии объектно-ориентированных анализа и проектирования. Диаграмма классов показывает классы и их отношения, тем самым представляя логический аспект проекта. Описание разрабатываемых классов
Диаграмма деятельности для прецедента «Продажа авиабилета» 4. Тестирование 4.1. Выбор режима тестирования На данный момент существует несколько видов тестирования: функциональное, нефункциональное и тестирование, связанное изменениями. При функциональном тестировании имитируется реальное использование системы с целью проверки работоспособности ее компонентов. Все тесты основываются на заявленных заранее функциях, описанных в функциональных спецификациях и прецедентах. Такое тестирование позволяет наглядным образом выявлять ошибки системы, однако у него также существуют недостатки – вероятность избыточного тестирования и возможность упущения логических ошибок. В ходе нефункционального тестирования определяются характеристики программного обеспечения в различных измерениях. Существует несколько видов такого тестирования: нагрузочное тестирование; стрессовое тестирование; тестирование стабильности или надежности; объемное тестирование; тестирование установки; тестирование удобства пользования; тестирование на отказ и восстановление; конфигурационное тестирование. Для проверки работоспособности разработанной системы было выбрано функциональное тестирование, потому что именно оно позволяет проверить реализацию заявленных возможностей наглядным образом. 4.2. Тестирование программных средств Для функционального тестирования приложения были смоделированы различные ситуации, которые могли возникнуть во время работы приложения.
Заключение В данной работе выполнены анализ требований, проектирование и реализация программных средств, которые дают пользователю возможность реализовать все функции программы. В результате выполнения работы было разработано приложение, автоматизирующее процесс продаж билетов клиентам. Приложение предоставляет пользователю следующие основные функции: авторизация пользователя; регистрация пользователя; поиск билетов для бронирования; бронирование билета; редактирование БД продаж авиабилетов, доступное пользователям группы «Администратор»; распределение прав доступа пользователей, доступное пользователям группы «Администратор»; личный кабинет пользователя, содержащий статистику по совершенным покупкам Список использованных источников 1. Электронный билет (воздушный транспорт) [Электронный ресурс] – Режим доступа:http://ru.wikipedia.org/wiki/Электронный_билет_(воздушный_транс порт) (Дата обращения: 05.06.2016). 2. Системы бронирования авиабилетов [Электронный ресурс] – Режим доступа: http://www.flyworld.ru/stati/sistemy-bronirovaniya-aviabiletov/ (Дата обращения: 05.06.2016). 3. Amadeus [Электронный ресурс] – Режим доступа: http://support.nemo.travel/ru/Amadeus (Дата обращения: 05.06.2016). 4. Travelport (Galileo) [Электронный ресурс] – Режим доступа: http://support.nemo.travel/ru/Travelport_(Galileo) (Дата обращения: 05.06.2016). 5. Авиабилеты.IT системыбронирования [Электронный ресурс] – Режим доступа: https://habrahabr.ru/company/buruki/blog/192384/ (Дата обращения: 05.06.2016). 6. Возможности Немо [Электронный ресурс] – Режим доступа: https://nemo.travel/bazovye-vozmozhnosti-nemo.html (Дата обращения: 05.06.2016). 7. Либерти, Дж. Создание .NET приложений Программирование на C#. – СПб.: Орейли, 2006. 8. Троелсен Э. C# и платформа .NET. Библиотека программиста. – СПб.: Питер, 2007. 9. Клайн К. SQL справочник. 2-е издание. – М.: «КУДИЦ-ОБРАЗ», 2006. 10. Р. Фрост, Д. Дей, К. Ван Слайк; пер. с англ. А.Ю. Кухаренко. Проектирование и разработка баз данных. Визуальный подход – М.: НТ Пресс, 2007. 11. Лекция 3. Архитектура ИС [Электронный ресурс] – Режим доступа: http://it-claim.ru/Education/Course/ISDevelopment/Lecture_3.pdf (Дата обращения: 06.06.2016). |