Автор работы: Пользователь скрыл имя, 19 Мая 2013 в 16:24, курсовая работа
В современном мире все большую и большую популярность приобретают кинотеатры. Если раньше наличие более чем одного кинотеатра в районе было редкостью, то сейчас только в Москве насчитывается более 120ти залов и с каждым годом их становится все больше. В связи с ростом количества кинотеатров, а также большим темпом жизни современных людей, возникает необходимость создания средства, облегчающего выполнение следующих задач:
- выбор билетов (выбор кинотеатра, фильма, времени сеанса и желаемых мест в зрительном зале);
- доставка билетов по указанному адресу.
Введение 3
1 Аналитическая часть. 4
1.1 Модель предметной области. 4
1.2 Требования к создаваемой системе 5
2 Конструкторская часть 7
2.1 Алгоритм работы участников разрабатываемой системы 7
2.1.1 Алгоритмы работы продавца 7
2.1.2 Алгоритмы работы сети кинотеатров 8
2.1.3 Алгоритмы работы службы доставки. 9
2.2 Структура участника распределённой системы обработки информации. 10
2.3 Структура баз данных 12
2.3.1 Структура базы данных продавца. 12
2.3.2 Структура базы данных сети кинотеатров. 13
2.3.3 Структура базы службы доставки. 15
3 Технологическая часть 16
3.1 Структура программного обеспечения. 16
3.1.1 Структура программного обеспечения продавца 16
3.1.2 Структура программного обеспечения сети кинотеатров. 17
3.1.3 Структура программного обеспечения службы доставки. 19
3.2 Протоколы распределённой системы обработки информации 19
3.3 Протокол взаимодействия между продавцами и сетями кинотеатров 20
3.3.1 Протокол взаимодействия между сетями кинотеатров и службами доставки 28
Заключение 30
Список литературы 32
ОГЛАВЛЕНИЕ
Введение 3
1 Аналитическая часть. 4
1.1 Модель предметной области. 4
1.2 Требования к создаваемой системе 5
2 Конструкторская часть 7
2.1 Алгоритм работы участников разрабатываемой системы 7
2.1.1 Алгоритмы работы продавца 7
2.1.2 Алгоритмы работы сети кинотеатров 8
2.1.3 Алгоритмы работы службы доставки. 9
2.2 Структура участника распределённой системы обработки информации. 10
2.3 Структура баз данных 12
2.3.1 Структура базы данных продавца. 12
2.3.2 Структура базы данных сети кинотеатров. 13
2.3.3 Структура базы службы доставки. 15
3 Технологическая часть 16
3.1 Структура программного обеспечения. 16
3.1.1 Структура программного обеспечения продавца 16
3.1.2 Структура программного обеспечения сети кинотеатров. 17
3.1.3 Структура программного обеспечения службы доставки. 19
3.2 Протоколы распределённой системы обработки информации 19
3.3 Протокол взаимодействия между продавцами и сетями кинотеатров 20
3.3.1 Протокол взаимодействия между сетями кинотеатров и службами доставки 28
Заключение 30
Список литературы 32
В современном мире все большую и большую популярность приобретают кинотеатры. Если раньше наличие более чем одного кинотеатра в районе было редкостью, то сейчас только в Москве насчитывается более 120ти залов и с каждым годом их становится все больше. В связи с ростом количества кинотеатров, а также большим темпом жизни современных людей, возникает необходимость создания средства, облегчающего выполнение следующих задач:
-
выбор билетов (выбор
- доставка билетов по указанному адресу.
Необходимость создания распределённой системы обработки информации продиктовано следующими причинами:
- значительным количеством участников рынка
-
необходимостью
Любой участник рынка кинопроката может быть соотнесён к одной из следующих ролей:
-продавец;
-сеть кинотеатров;
-служба доставки.
Основными участниками рынка кинопроката являются сети кинотеатров, владеющие данными о сеансах (демонстрация любого фильма, производимая в определённом месте, в определённое время) и о билетах на эти сеансы.
Сети кинотеатров взаимодействуют со службами доставки билетов. Службы доставки обязаны доставлять билеты по адресам, поступающих от сетей кинотеатров, за что с сетей кинотеатров взимаются комиссионные от проданных билетов.
Продавцы взаимодействуют с сетями кинотеатров. Сети кинотеатров обязуются:
- предоставлять информацию о сеансах и билетах
-
предоставлять возможность
Продавец в свою очередь обязуется оплачивать в полном объёме цену билетов, заявленную сетями кинотеатров
На рисунке 1 представлена схема взаимодействия участников рынка кинопроката. Сеть кинотеатров взаимодействует с одной или более службами доставки билетов. С одной службой доставки билетов могут взаимодействовать одна или более сетей кинотеатров. Продавец может взаимодействовать с одной или более сетями кинотеатров. Сеть кинотеатров взаимодействует с одним или более продавцами.
Рисунок 1. Схема взаимодействия участников рынка кинопроката
В рамках данной курсовой работы необходимо написать программное обеспечение участников рынка кинопроката, выполняющих следующие роли:
-продавца;
-сети кинотеатров;
-службы доставки.
В процессе разработки программного обеспечения участника, выполняющего роль продавца, должно быть реализовано:
- регистрация продавца у сетей кинотеатров;
-
получение данных о
- получение данных о фильмах, демонстрируемых в кинотеатрах сетей с которыми сотрудничает продавец;
-
получение списка сеансов от
всех сетей кинотеатров, с
- получение информации о билетах на любой сеанс из полученного списка;
- заказ билетов;
- возможность получить информацию о состоянии исполнения заказа.
В процессе разработки программного обеспечения участника, выполняющего роль сети кинотеатров, должно быть реализовано:
- регистрация сети кинотеатров у служб доставки;
- предоставление информации о театрах, находящихся в ведении данной сети продавцам;
- предоставление информации о фильмах, демонстрируемых в кинотеатрах данной сети;
- предоставление информации о сеансах в соответствии с запросом продавцов;
-
предоставление возможности
- предоставление информации о состоянии исполнения принятого заказа.
В процессе разработки программного обеспечения участника, выполняющего роль службы доставки, должно быть реализовано:
- приём заказов на имя и адрес заказчика
- средства, необходимые для исполнения заказов
Как видно из рисунка 2, продавец сначала должен зарегистрироваться у сети кинотеатров для установления финансовых отношений. После успешной регистрации продавец должен отправить сети кинотеатров два запроса – списка театров и списка фильмов, демонстрируемых в данной сети кинотеатров.
Рисунок 2. Алгоритм регистрации продавца
После получения данных о кинотеатрах и фильмах оператор может производить поиск сеансов и осуществлять заказ, как показано на рисунке 3.
Рисунок 3. Алгоритм работы продавца
Сеть
кинотеатров предоставляет
Рисунок 4. Алгоритм работы сети кинотеатров
При выполнении запроса продавца о состоянии заказа, сеть кинотеатров отправляет запрос службе доставки, принявший данный заказ к исполнению для получения информации об его состоянии и покупателе, этот заказ сделавшим.
Служба доставки принимает заказ от сети кинотеатров и отвечает о приёме на его выполнение, сохраняя необходимые данные. По запросу сети кинотеатров возвращает информацию о заказе по его идентификатору. Оператор программного обеспечения службы доставки меняет состояние заказов в зависимости от текущего статуса конкретного заказа.
Обобщённая
структура участника
- обмена сообщениями;
- фильтрации;
- протокола участника РСОИ
- бизнес логики участника РСОИ
- пользовательского интерфейса.
Рисунок 5. Структура участника распределённой системы обработки информации
Подсистема обмена сообщениями принимает входящие и отправляет исходящие сообщения. Исходящие сообщения данный модуль преобразует в представление для передачи по сети. Входящие сообщения подсистема преобразует из представления, полученного по сети. Подсистема фильтрации проверяет сообщения на соответствия определённым условиям и принимает решения по ним об их обработке. Подсистема протокола участника РСОИ реализует протокол взаимодействия между данной и удалёнными системами. Подсистема бизнес логики реализует логику обработки заявок. Подсистема пользовательского интерфейса реализует взаимодействие между подсистемой бизнес логики участника РСОИ и пользовательским интерфейсом программного обеспечения.
На рисунке 6 можно увидеть схему базы данных продавца. Были выделены следующие сущности:
- сети кинотеатров («theatre_chains»);
- заявки («requests»);
- фильмы («films»);
- кинотеатры («theatres»);
- билеты («tickets»).
Рисунок 6. Схема базы данных продавца
Сущность «сети кинотеатров» содержит информацию о всех сетях кинотеатров, с которыми сотрудничает продавец. Одному экземпляру сущности «сеть кинотеатров» соответствует много экземпляров сущности «кинотеатр», представляющие информацию о каждом кинотеатре. Информацию о заявках содержит экземпляр сущности «заявки», множество экземпляров которой соответствуют сущности «кинотеатр». Одному экземпляру сущности «заявка» соответствует много сущностей «билет», представляющую информацию о билете. Сущность «фильмы» представляет информацию об одном фильме и используется в разрабатываемом программном обеспечении для организации словаря.
На рисунке 7 можно увидеть схему базы данных сети кинотеатров. Были выделены следующие сущности:
- службы доставки («delivery_firms»);
- продавцы («sellers»);
- кинотеатры («theatres»);
- спрашиваемые билеты («asked_tickets»);
- заявки («requests»);
- залы («halls»);
- билеты («tickets»);
- сеансы («shows»);
- фильмы («films»);
Рисунок 7. Схема базы данных сети кинотеатров
Экземпляр сущность «служба доставки» содержит информацию об одной из служб доставки, с которыми сотрудничает сеть кинотеатров. Экземпляр сущности «продавец» содержит информацию об одном из продавцов, с которыми сотрудничает сеть кинотеатров. Экземпляр сущности «кинотеатр» представляет информацию об одном из кинотеатров, входящих в сеть. Экземпляр сущности «зал» представляет информацию об одном из залов, находящихся в одном кинотеатре. Сущность «сеансы» содержит информацию об одном из сеансов, проходящих в зале кинотеатра в определённое время. Сущность «фильм» представляет информацию об одном фильме, демонстрируемом в сети кинотеатров. Сущность «заявка» содержит информацию об одной заявке, поступившей от продавца сети кинотеатров. Сущность «спрашиваемый билет» представляет информацию об одном из билетов, указанных в заявке. Сущность «билет» представляет собой информацию об одном билете на один сеанс.
На рисунке 8 можно увидеть схему базы данных сети кинотеатров. Были выделены следующие сущности:
- заказ («orders»);
- сеть кинотеатров («theatre_chains»);
- билет («tickets»);
Рисунок 8. Схема база данных службы доставки
Сущность «сеть кинотеатров» представляет информацию об одной из сетей кинотеатров, с которыми сотрудничает служба доставки. Сущность «заказ» содержит информацию об одном из заказов, поступивших от сетей кинотеатров. Сущность «билет» представляет информацию об одном из билетов, указанных в заказе, поступившем от сети кинотеатров.
При создании программного обеспечения в рамках данного курсового проекта была учтена обобщённая структура участника распределённой системы обработки информации.
На рисунке 9 показана диаграмма классов программного обеспечения продавца.
Рисунок 9. Диаграмма классов программного обеспечения продавца
Класс «Exchanger» принимает входящие заявки, получает из них необходимые для работы данные и передает классу «Filter» для дальнейшей обработки. Исходящие заявки данный класс переводит в формат XML для передачи их по протоколу SMTP адресатам. Класс «Filter» проверяет сообщения на соответствия определённым условиям и принимает решения по ним об их обработке. В случае соответствия – передаёт их классу «Protocol». Класс «Protocol» реализует действия в рамках протокола обмена сообщениями между продавцом и сетями кинотеатров. Класс «BusinessLogic» выполняет обработку сообщений с учётом управляющих воздействий пользователя. Класс «UIHandler» выполняет управление пользовательским интерфейсом программного обеспечения и принимает управляющие воздействия от пользователя, передавая их классу «BusinessLogic». Класс «TCSEngineClient» реализует механизм SOAP-RPC для взаимодейтсвия с сетями кинотеатров по протолу SOAP. Класс BaseRequest представляет базовый абстрактный класс для всех сообщений, обрабатываемых данным программным обеспечением.
На рисунке 10 показана диаграмма классов программного обеспечения сети кинотеатров.
Рисунок 10. Диаграмма классов программного обеспечения сети кинотеатров
Информация о работе РСОИ продаж билетов с доставкой, состоящая из фирм, владеющих сетями кинотеатров