Scientific journal
Scientific Review. Technical science
ISSN 2500-0799
ПИ №ФС77-57440

FOOTBALL TICKET SALES SYSTEM DESCRIPTION USING A USECASE DIAGRAM

Zhuravlev A.A. 1 Aksenov K.A. 1
1 Ural Federal University named after B.N. Yeltsin
1696 KB
The purpose of a usecase diagram is to determine the finished aspect or behavior fragment of an entity without revealing the internal structure of that entity. Such an entity can be the original system or any other element of the model that has its own behavior, like a subsystem or class in a system model. In this article, the football ticket sales system is described as a system using a usecase diagram. It consists of three actors: the Client, the Organizer and the Administrator. A client is a user who purchases or rents tickets / subscriptions. The Organizer’s tasks include scheduling matches. The Administrator opens access to registered Clients /Organizers. The research material is WhiteStarUML software. In the article for the source system, the following results are obtained: a usecase diagram was built, which includes the Client, the Organizer and the Administrator, as well as the functions that each of these actors performs in this system; painted specifications of use cases for the functions of each of the actors; relevant conclusions were drawn on the work done.
football
ticket
sales
system
description
usecase diagram

Визуальное моделирование в UML можно представить как некоторый процесс поуровневого спуска от наиболее общей и абстрактной концептуальной модели исходной системы к логической, а затем и к физической модели соответствующей программной системы [1]. Для достижения этих целей вначале строится модель в форме диаграммы вариантов использования, которая описывает функциональное назначение системы или, другими словами, что система будет делать в процессе своего функционирования [2]. Диаграмма вариантов использования является исходным концептуальным представлением или концептуальной моделью системы в процессе ее проектирования и разработки [3].

В данной статье объектом исследования является система продажи билетов на футбол. Для данной системы необходимо выполнить следующее:

– построить диаграмму использования, которая включает Клиента, Организатора и Администратора, а также функции, которые каждый из этих акторов выполняет в данной системе;

– расписать спецификации вариантов использования для функций каждого из акторов.

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

В качестве материала исследования выступает программное обеспечение WhiteStarUML.

В статье используется эмпирический метод исследования, поскольку основной источников результатов – анализ данных.

Описание моделируемой системы

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

Система имеет три вида пользователей: Клиент, Организатор и Администратор. Клиент представляет собой пользователя, который приобретает или сдает билеты / абонементы. В задачи Организатора входит формирование расписания на матчи. Администратор открывает доступ зарегистрированным Клиентам / Организаторам.

Клиент имеет возможность выбирать тип места (VIP или обычное место) в зависимости от своих предпочтений. Кроме этого, он может узнавать расписание предстоящих матчей и наличие свободных билетов / абонементов. После изучения расписания и выбора места на матч Клиент приобретает билет / абонемент, и информация об успешной покупке билета / абонемента поступает в базу данных, которая хранится на сервере Администратора.

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

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

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

Разработка диаграммы использования

Диаграмма вариантов использования предназначена для моделирования представления системы с точки зрения вариантов использования и действующих лиц в их взаимодействии. Варианты использования понимаются как множество возможных последовательной действий (событий), приводящих к значимому для действующего лица результату [4].

С помощью WhiteStarUml в соответствии с техническим заданием разработана диаграмма использования, которая представлена на рис. 1–3 для каждого из акторов системы продажи билетов на футбол [5; 6].

gurav1.tif

Рис. 1. Диаграмма использования для Клиента

gurav2.tif

Рис. 2. Диаграмма использования для Организатора

gurav3.tif

Рис. 3. Диаграмма использования для Администратора

Представленная выше диаграмма содержит три вида акторов: Клиент, Организатор и Администратор.

Клиент системы может выполнить следующие функции:

1. Зарегистрироваться.

2. Авторизоваться.

3. Узнать расписание.

4. Купить билет / абонемент (включает проверку на наличие свободных мест и содержит расширение в виде выбора типа места (VIP или обычное место)).

5. Сдать билет / абонемент.

Функции организатора:

1. Зарегистрироваться.

2. Авторизоваться.

3. Сформировать расписание (включает функцию «Корректировать расписание»).

4. Сообщить о наличии (содержит расширение проверить наличие билетов / абонементов).

5. Получить отчет (по матчу / сезону).

Функции администратора:

1. Авторизоваться.

2. Открыть доступ.

3. Сформировать отчет (по матчу / сезону).

4. Обеспечивать взаимодействие между системой и банковским центром.

Разработанная диаграмма имеет следующие типы соединений:

1. Ассоциация, которая указывает, что субъект принимает участие в варианте использования.

2. Включение (include), использующееся для того, чтобы показать, как разбить вариант использования.

3. Расширение (extend), показывающее, что вариант использования расширяет базовую последовательность действий и вставляет собственную последовательность.

Виды кратности ассоциаций [7; 8]:

– 1 – чтобы указать, что только один экземпляр этой роли может участвовать в каждой связи.

– 1..* – чтобы указать, что в каждой связи может участвовать один или несколько экземпляров этой роли.

– 0..1 – чтобы указать, что участие не является обязательным.

– * – чтобы указать, что в связи участвует 0 или более экземпляров этой роли.

Спецификация вариантов использования

В разработанной диаграмме используются следующие компоненты:

Имя прецедента (= Зарегистрироваться);

ID прецедента = 1;

Краткое описание – регистрация пользователя (Клиента, Организатора) в системе продажи билетов на футбол;

Акторы – Клиент, Организатор;

Предусловия – наличие кнопки «Регистрация»;

Основной поток – нажатие на кнопку «Регистрация» в случае если пользователь не зарегистрирован, выбор статуса пользователя (Клиент или Организатор), ввод данных;

Постусловия – авторизация пользователя в системе продажи билетов на футбол.

Имя прецедента (= Авторизоваться);

ID прецедента = 2;

Краткое описание – авторизация пользователя (Клиента, Организатора, Администратора) в системе продажи билетов на футбол;

Акторы – Клиент, Организатор, Админ- истратор;

Предусловия – наличие кнопки «Войти в систему»;

Основной поток – нажатие на кнопку «Регистрация», выбор статуса пользователя (Клиент или Организатор), ввод данных, авторизация;

Постусловия – возможность пользоваться соответствующими функциями сервиса в зависимости от статуса пользователя (Клиент или Организатор).

Имя прецедента (= Узнать расписание);

ID прецедента = 3;

Краткое описание – Клиент узнает расписание интересующего матча;

Акторы – Клиент;

Предусловия – авторизованный Клиент, наличие расписания матчей;

Основной поток – Клиент узнает расписание интересующего матча;

Постусловия – Клиент может приступить к покупке билета / абонемента на интересующий его матч.

Имя прецедента (= Купить билет / абонемент);

ID прецедента = 4;

Краткое описание – Клиент покупает билет / абонемент;

Акторы – Клиент;

Предусловия – Клиент узнал расписание на матч / матчи, и билет / абонемент имеется в наличии;

Основной поток – Прецедент содержит следующие этапы:

– Клиент нажимает на кнопку «Купить билет / абонемент».

– Система проверяет наличие билетов / абонементов и отправляет пользователю соответствующее сообщение; в случае если билеты отсутствуют, Клиент не имеет возможности посетить выбранный матч.

– Клиент выбирает тип места (VIP или обычное место).

– Клиент оплачивает билет / абонемент.

– Клиент получает билет / абонемент.

Постусловия – Клиент получает возможность посетить матч / сезон.

Имя прецедента (= Сдать билет / абонемент);

ID прецедента = 5;

Краткое описание – Клиент сдает билет / абонемент;

Акторы – Клиент;

Предусловия – У Клиента есть купленный ранее билет;

Основной поток – Клиент сдает билет / абонемент в случае, если он больше не хочет идти на футбольный матч;

Постусловия – Другой Клиент получает возможность приобрести сданный билет.

Имя прецедента (= Сформировать рас- писание);

ID прецедента = 6;

Краткое описание – Организатор формирует расписание на матчи;

Акторы – Организатор;

Предусловия – Авторизованный Орга- низатор;

Основной поток – Организатор формирует расписание на матчи; в случае если матч терпит какие-то изменения в расписании, Организатор имеет возможность его скорректировать;

Постусловия – Клиенты имеют возможность узнать расписание на интересующие их матчи.

Имя прецедента (= Сообщить о на- личии);

ID прецедента = 7;

Краткое описание – Организатор сообщает о наличии / отсутствии свободных билетов / абонементов;

Акторы – Организатор;

Предусловия – авторизованный Орга- низатор;

Основной поток – Организатор сообщает о наличии / отсутствии свободных билетов / абонементов;

Постусловия – Клиент узнает информацию о наличии / отсутствии свободных билетов / абонементов.

Имя прецедента (= Получить отчет);

ID прецедента = 8;

Краткое описание – Организатор получает отчетность по матчам (количество проданных билетов и пр.);

Акторы – Организатор;

Предусловия – Администратор сформировал отчет по матчу / сезону, который хранится в базе данных;

Основной поток – Организатор получает отчетность по матчу / сезону;

Постусловия – Организатор может сделать выводы по проделанной организаторской работе.

Имя прецедента (= Открыть доступ);

ID прецедента = 9;

Краткое описание – открытие доступа администратором зарегистрированным пользователям;

Акторы – Администратор;

Предусловия – Администратор авторизовался в системе;

Основной поток – открытие доступа администратором зарегистрированным пользователям;

Постусловия – получившие доступ пользователи получают возможность использовать соответствующие функции сервиса в зависимости от статуса пользователя (Клиент или Организатор).

Имя прецедента (= Обеспечить интеграцию с банком);

ID прецедента = 10;

Краткое описание – Администратор обеспечивает взаимодействие с банковским центром, который позволяет провести оплату за билет / абонемент;

Акторы – Администратор;

Предусловия – Администратор авторизовался в системе;

Основной поток – обеспечение интеграции с банком для возможности оплаты за билет / абонемент;

Постусловия – Клиент имеет возможность произвести оплату.

Имя прецедента (= Сформировать отчет);

ID прецедента = 11;

Краткое описание – формирование отчета по матчу / сезону, который будет храниться в базе данных;

Акторы – Администратор;

Предусловия – матч / сезон проведен;

Основной поток – Администратор формирует отчет по прошедшему матчу / сезону, который хранится в базе данных;

Постусловия – Организатор имеет возможность получить отчетность по матчу / сезону.

Заключение

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

Для данной системы выполнено следующее:

– построена диаграмма использования, которая включает Клиента, Организатора и Администратора, а также функции, которые каждый из этих акторов выполняет в данной системе;

– расписаны спецификации вариантов использования для функций каждого из акторов.