Пояснительная записка (1206295), страница 6
Текст из файла (страница 6)
Таблица 2.21 – Managers – список менеджеров
| Название | Код | Тип | Примечание |
| Id | Id | Числовой (int) | Идентификатор менеджера |
| Фамилия | SurName | Текстовый (nvarchar(100)) | Фамилия менеджера |
| Имя | Name | Текстовый (nvarchar(100)) | Имя менеджера |
| Отчество | Patronimic | Текстовый (nvarchar(100)) | Отчество менеджера |
| Номер телефона | JobPhone | Числовой (nvarchar(max)) | Номер телефона менеджера |
| Дата_рождения | BirthDay | Дата (date) | Дата рождения менеджера |
| Имя_файла | NameFile | Текстовый (nvarchar(max)) | Имя файла с изображением |
| Путь | Path | Текстовый (nvarchar(max)) | Путь к файлу с изображением |
Таблица 2.22 – Clients – список клиентов
| Название | Код | Тип | Примечание |
| Id | Id | Числовой (int) | Идентификатор клиента |
| Фамилия | SurName | Текстовый (nvarchar(100)) | Фамилия клиента |
| Имя | Name | Текстовый (nvarchar(100)) | Имя клиента |
| Отчество | Patronimic | Текстовый (nvarchar(100)) | Отчество клиента |
| Пол | Gender | Логический (bit) | Пол клиента |
| Дата рождения | BirthDay | Дата (date) | Дата рождения клиента |
| Имя_файла | NameFile | Текстовый (nvarchar(max)) | Имя файла с изображением |
| Путь | Path | Текстовый | Путь к файлу |
Окончание таблицы 2.22
| Название | Код | Тип | Примечание |
| Город_ Id | City_ Id | Числовой (int) | Ссылка на город |
| Страна_ Id | Country_ Id | Числовой (smallint) | Ссылка на страну |
Таблица Users (таблица 2.23) содержит список зарегистрированных в системе пользователей.
Таблица 2.23 –Users – список пользователей
| Название | Код | Тип | Примечание |
| Id | Id | Числовой (int) | Идентификатор пользователя |
| Еmail | Еmail | Текстовый (nvarchar(max)) | Почта пользователя для входа в систему |
| Пароль | Password | Текстовый (nvarchar(max)) | Пароль для входа в систему |
| Дата создания | Patronimic | Дата (datetime) | Дата создания учетной записи |
| Номер телефона | Phone | Текстовый (nvarchar(max)) | Номер телефона пользователя |
| Роль_Id | Role_Id | Числовой (int) | Ссылка на роль |
Таблица Roles (таблица 2.24) включает в себя список ролей, присутствующих в системе.
Таблица 2.24 –Roles – список ролей
| Название | Код | Тип | Примечание |
| Id | Id | Числовой (int) | Идентификатор роли |
| Название | Name | Текстовый (nvarchar(max)) | Название роли |
| Описание | Description | Текстовый (nvarchar(max)) | Описание роли |
На основе разработанных таблиц была спроектирована логическая диаграмма классов БД (рисунок 2.8). На основе логической диаграммы классов БД разработана физическая диаграмма классов БД (рисунок 2.9).
Рисунок 2.8 – Логическая диаграмма классов БД
Рисунок 2.9 – Физическая диаграмма классов БД
2.2.3 Разработка поведенческой модели
Диаграмма последовательности представляет собой разновидность диаграммы взаимодействия. Она предназначена для отображения взаимодействия объектов системы во времени и обмена сообщениями между ними. Объекты на диаграмме последовательности в чаще всего представляю экземпляры класса или сущности, которые обладают поведением. В качестве объектов могут выступать пользователи, инициирующие взаимодействие, классы, обладающие поведением в системе или программные компоненты. Объекты располагаются с лева на права таким образом, чтобы крайним с лева был тот объект, который инициирует взаимодействие. Масштаб на оси времени не указывается, поскольку диаграмма отображает лишь временную упорядоченность взаимодействия типа «раньше-позже». На рисунке 2.10 показана диаграмма последовательности, отображающая процесс написания отзыва пользователем. Для написания отзыва необходимо войти в личный кабинет, после чего загрузится архив туров (это те туры, которые забронировал пользователь). Далее пользователь выбирает конкретный тур и нажимает кнопку «Написать отзыв». После заполнения всех полей, пользователь сохраняет эту информацию. Далее уже менеджер заходит в свой модуль и выбирает пункт меню «Отзывы». Видит, что появился новый отзыв, заходит на страницу «Отзывы» и если комментарий корректен, то изменяет его статус на «одобрено» и публикует. В противном случае перемещает данный комментарий в архив.
Рисунок 2.10 – Диаграмма последовательности «Написание отзыва»
На рисунке 2.11 диаграмма последовательности «Добавление менеджера». Администратор входит в свой модуль, выбирает пункт меню «Профили», после чего инициализируется страница профилей менеджеров. На этой странице администратор создает новую учетную запись, вводит личные данные, генерирует логин и пароль и сохраняет данную информацию. После чего выводится сообщение об удачном выполнении операции и в базе данных в таблице «Менеджеры» появляется новая запись. Если же такая учетная запись уже существует, то будет выведено сообщение о неудачном выполнении.
Рисунок 2.11 – Диаграмма последовательности «Добавление менеджера»
2.2.4 Разработка компонентной модели
С помощью компонентной модели необходимо получить работоспособную версию системы. На данном этапе уже определяется как логическая, так и физическая организация классов в виде компонентов и подсистем, а так же топология распределенной информационной системы, помимо написания программного кода.
При разработке модели реализации рекомендуется построить диаграмму компонентов и диаграмму развертывания. Диаграмма компонентов определяет состав программных компонентов, в роли которых может выступать исходный и исполняемый код, а также установить зависимости между ними. На рисунке 2.12 показана диаграмма компонентов, в которой отражены основные элементы. Архитектура приложения разделена на три логических уровня: уровень доступа к данным (DAL, ORM), уровень бизнес-логики (BLL) и уровень представления (MvcPL). При этом логические уровни не совпадают с физическими. Уровень представления отвечает за взаимодействие с пользователем и включает в себя компоненты интерфейса и механизм получения ввода от пользователя. Уровень бизнес-логики содержит набор компонентов, которые отвечают за обработку полученных от уровня представлений данных, реализует всю необходимую логику приложения, все вычисления и передает уровню представления результат обработки. Уровень доступа к данным хранит модели, описывающие используемые сущности, также здесь размещаются специфичные классы для работы с разными технологиями доступа к данным. Здесь также хранятся репозитории, через которые уровень бизнес-логики взаимодействует с базой данных. Уровень доступа к данным не зависит от других уровней, уровень бизнес-логики зависит от уровня доступа к данным, а уровень представления - от уровня бизнес-логики. Компоненты, как правило, должны быть слабосвязанными, поэтому необходимо использовать внедрение зависимостей (DependencyResolver) – механизм, который дает возможность заменить одни классы на другие.
Рисунок 2.12 – Диаграмма компонентов
Элементами диаграммы развертывания являются компоненты, узлы и связи между ними. Основные цели, преследуемые при разработке диаграммы развертывания:
-
отображение физических связей между узлами системы на этапе исполнения;
-
распределение компонентов системы по ее физическим узлам;
На рисунке 2.13 представлена диаграмма развертывания, которая отражает физические компоненты информационной системы.















