Диаграмма последовательностей прецедента

advertisement
1 этап
Костышева Е.И.
ст. гр. ИСТ-107
1.1.
Постановка задач
Главной задачей данного курсового проекта является разработка
программной информационной системы праздничного агентства с
использованием современных программных средств.
Основное требование к системе – реализация на платформе .NET.
Для достижения поставленной
цели
необходимо
решить
следующие задачи:

изучить особенности конкретной предметной области;

провести анализ возможных подходов и методов решения с
обоснованием выбранного подхода;

разработать
модели
(структурную,
информационную,
данных) программной системы;

выбрать алгоритмы с учетом их точности и спецификой
предметной области;

разработать программное обеспечение;

проанализировать полученные результаты работы ПО.
1.2.
Описание предметной области
Праздничное агентство – компания по организации торжеств
различного вида.
Сегодня агентства такого рода представляют самые современные
тенденции праздничной индустрии. Творческий подход и богатый опыт
сотрудников позволяет воплощать разнообразнейшие идеи и проекты.
Дизайн, флористика, создание фигур и композиций из воздушных
шаров, эксклюзивная упаковка, организация и проведение праздников и
концертов, необычные подарки, небесные фонари и фейерверки,
великолепные торты, пироги и караваи, лимузины, разнообразные авто и
1
конные экипажи, фото и видеосъемка, полиграфические услуги и открытки
ручной работы – это далеко не полный перечень предоставляемых
агентствами услуг.
Оригинальное вручение подарка или разработка дизайна интерьеров
компании заказчика, встреча новорожденного или масштабное
корпоративное мероприятие — все это работа компаний.
Все данные о клиентах, услугах и совершенных сделках должно
храниться в определенной клиентской базе, за корректность работы которой
отвечает администратор.
Словарь предметной области.
Агентство — это
1) представительное учреждение, представительство, отделение более
крупного учреждения, предприятия, фирмы, ведающее их делами в
данном регионе и выполняющее определённый круг их поручений.
Например, фирма может иметь агентство, способствующее
распространению её продукции;
2) учреждение, выполняющее определенную государственную,
общественную, социальную функцию. Например, агентство по
защите прав потребителей, рекламные агентства, туристическое
агентство.
Администратор – ответственное лицо из агентства, отвечающее за
корректность хранимой в БД информации (обновление, добавление,
удаление)
Дизайн – это творческая деятельность, целью которой является
определение формальных качеств промышленных изделий. Эти качества
включают и внешние черты изделия, но главным образом те структурные и
функциональные взаимосвязи, которые превращают изделие в единое целое,
как с точки зрения потребителя, так и с точки зрения изготовителя. Дизайн
2
стремится охватить все аспекты окружающей человека среды, которая
обусловлена промышленным производством.
Заказчик — лицо (физическое или юридическое), заинтересованное в
выполнении исполнителем работ, оказании им услуг или приобретении у
продавца какого-либо продукта (в широком смысле). Иногда при этом
предполагается оформление заказа, но не обязательно.
Заявка – заблаговременное уведомление, составленное в устной или
письменной форме, информирующее организаторов, продавцов о намерении,
желании приобрести товары и услуги или участвовать в конкурсе, тендере,
аукционе.
Клиентская база – БД, в которой хранится вся информация о клиентах
и о совершенных сделках.
Для организации и правильного функционирования системы
праздничного агентства необходимо, чтобы система выполняла следующие
функции:
 поддержка (авторизация) различных типов пользователей
(администратор, менеджер, клиент);
 поддержка справочника менеджеров (администратор);
 поддержка справочника категорий рекламы (менеджер);
 поддержка справочника клиентов (менеджер);
 оформление заказа на проведение праздника (менеджер/система);
 просмотр оборота услуг за выбранный период (менеджер).
Особенностью системы является строгий учет, как сотрудников
агентства, так и клиентской базы. При этом имеется разграничение доступа:
изменение данных в системе доступно администратору. Менеджеры
работают с турами, клиентам разрешено только добавлять личные данные,
просматривать услуги и оформлять заказ на проведение праздника.
Разработанная диаграмма классов концептуального уровня с помощью
программного средства Enterprise Architect 7.0 представлена на рисунке 1.
3
class Class Model
Serv iceController
OrderController
UsersController
+
+
+
+
+
+
+
OborotController
Change() : void
ChangePassword() : void
Create() : void
Delete() : void
LogIn() : void
LogOff() : void
Register() : void
+
ViewList() : void
+
+
+
AddServive() : void
DeleteService() : void
ViewService() : void
-
id_service: int
Price: int
ServName: char
+
+
+
+
+
Add() : void
Change() : void
Create() : void
Delete() : void
ShowInfo() : void
Serv ice
Oborot
-
id_oborot: int
Number: char
1
1
1..*
Users
-
Order
1..*
Email: char
id_user: int
Password: int
UserName: char
Client
1
1
-
ClName: char
id_client: int
Passport: int
Phone: int
Userid: int
1
1..* -
Date: int
id_client: int
id_order: int
id_service: int
status: boolean
Рис. 1 Диаграмма классов концептуального уровня
Диаграммы прецедентов позволяют визуализировать поведение
системы, подсистемы или класса, чтобы пользователи могли понять, как их
использовать, а разработчики - реализовать соответствующий элемент.
Работа пользователей с системой осуществляется только после авторизации.
Пользователь системы, идентифицированный как Администратор,
имеет
возможность
регистрировать
новых
пользователей,
удалять
пользователей, редактировать информацию пользователей, просматривать о
них информацию.
Пользователь системы, идентифицированный как Менеджер, может
выполнять следующие действия: просматривать оборот услуг за период,
просмотреть список заказов.
Пользователь системы, идентифицированный как Клиент, имеет
следующие возможности: просматривать список услуг, делать новые заказы.
Диаграмма
прецедентов
программной
системы
«Праздничное
агентство» представлена на рисунке 2:
4
uc Use Case Model
Регистрация
Авторизация
«extend»
Добавить
пользователя
администратор
клиент
Сделать заказ
менеджер
Просмотреть список
услуг
«include»
Редактировать
информацию о
пользователе
Удалить
пользователя
«include»
«include»
Ввести личные
данные
Просмотреть список
заказов
Просмотреть оборот
услуг за период
Просмотреть
информацию о
пользователе
«include»
«include»
Поиск пользователя
Выбрать
необходимые услуги
«extend»
Редактировать
запись
«extend»
«extend»
Удалить запись
Посмотреть
дополнительную
информацию
Рис. 2 Диаграмма прецедентов
Описание диаграммы прецедентов
Описание прецедента: «Просмотреть список заказов».
Актеры: менеджер, клиент.
Предусловие: успешная заявка клиента.
Основной поток:
1. Пользователь открывает форму заказа.
2. Система заполняет таблицу заказов из базы данных.
Постусловие: после просмотра списка заказов, пользователь может
посмотреть более подробную информацию о заказе.
Описание прецедента: «Просмотреть оборот услуг за период».
Актеры: менеджер.
Предусловие: успешная авторизация менеджера.
Основной поток:
1. Менеджер открывает список заказов.
2. Менеджер вводит необходимый период.
3. Система выводит список найденных заказов.
5
Альтернативный поток:
1. Пользователь не задал период, система выдает сообщение об
ошибке.
2. По заданному периоду ничего не найдено, система выдает
сообщение об этом.
Постусловие: система закрывает форму и переходит на главную
страницу.
Описание прецедента: «Сделать заказ».
Актеры: клиент.
Предусловие: успешная авторизация пользователя.
Основной поток:
1. Пользователь вводит личные данные.
2. Выбирает необходимые услуги.
3. Подтверждает свой выбор.
Альтернативный поток:
1. Пользователь не заполнил все поля, система выдает сообщение об
ошибке.
2. Произошла ошибка добавления заказа в БД, система выдает
сообщение об этом.
Постусловие: система закрывает форму, выдает сообщение об
успешном оформлении заказа и переходит на главную страницу.
Описание прецедента: «Добавить пользователя».
Актеры: администратор, менеджер, клиент.
Предусловие: регистрация пользователя.
Основной поток:
1. В системе появляется новый пользователь.
2. Администратор просматривает информацию о нем.
3. Администратор выносит решение о его занесении в БД.
6
Постусловие: после просмотра информации о пользователе,
администратор заносит его в БД либо нет.
Диаграммы последовательностей используются для моделирования
динамических аспектов системы. Диаграмма последовательностей является
диаграммой взаимодействия, отражающей поток событий, происходящих
при реализации одного из вариантов использования
Рассмотрим диаграммы последовательностей, разработанные для
программной системы праздничного агентства.
Диаграмма последовательностей прецедента «Регистрация».
sd регистрация
Client
Add
ClientController
Client
Registration()
AddNewClient()
Client()
InsertClient()
Client()
message()
Рис. 3 Диаграмма последовательностей прецедента «Регистрация»
7
Диаграмма последовательностей прецедента «Просмотреть список
заказов».
sd просмотр
Meneger
List
OrderController
Order
GetOrdersList()
GetList()
GetOrders()
Orders()
List()
List()
Рис. 4 Диаграмма последовательностей прецедента «Просмотреть список
заказов».
8
Диаграмма последовательностей прецедента «Сделать заказ».
sd заказ
Client
Create
OrderController
Order
Service
MakeOrder()
OrderForm()
PastePersonInfo()
ChooseService()
GetService()
service()
service()
CreateOrder()
NewOrder(id_service)
AddOrder()
List()
List()
List:Service()
Рис. 5 Диаграмма последовательностей прецедента «Сделать заказ».
9
Download