Пояснительная записка (1206285), страница 4
Текст из файла (страница 4)
Каждая диаграмма представлена в двух экземплярах: как логическая (на русском языке) и как физическая (с учетом языка программирования).
Рисунок 2.10 – Логическая диаграмма классов БД
Рисунок 2.11 – Физическая диаграмма классов БД
2.4 Модель реализации
Модель реализации представляет физическую структуру реализации в терминах подсистем реализации и элементов реализации (каталогов и файлов, включая файлы исходного кода, файлы данных и исполняемые файлы и т.д).
Модель реализации идентифицирует физические компоненты реализации с целью облегчения их восприятия и управления ними.
Модель реализации определяет основные блоки интеграции, вокруг которых организованы рабочие группы, а также блоки, которым можно по отдельности присваивать версии, отдельно развертывать и заменять.
Модель реализации представляется диаграммами компонентов и развертывания.
Таким образом, при разработке модели преследуются цели:
-
определение окончательного состава, структуры и кода классов;
-
распределение классов по компонентам и подсистемам;
-
определение топологии распределенной системы и распределение подсистем по узлам сети;
-
планирование итераций (версий) сборки системы;
-
сборка версий системы.
При разработке модели реализации рекомендуется построить диаграммы:
-
компонентов;
-
развертывания.
Диаграмма компонентов
Диаграмма компонентов описывает особенности физического представления системы.
Она позволяет определить архитектуру разрабатываемой системы, установив зависимости между программными компонентами, в роли которых может выступать исходный и исполняемый код.
Основными графическими элементами диаграммы компонентов являются компоненты, интерфейсы и зависимости между ними.
Диаграмма компонентов разрабатывается для следующих целей:
-
визуализации общей структуры исходного кода программной системы;
-
спецификации исполняемого варианта программной системы;
-
обеспечения многократного использования отдельных фрагментов программного кода;
-
представления концептуальной и физической схем баз данных.
В языке UML для компонентов определены следующие стереотипы:
«file» – любой файл, кроме таблицы:
-
«executable» – программа (исполняемый файл);
-
«library» – статическая или динамическая библиотека;
-
«source» – файл с исходным текстом программы;
-
«document» – остальные файлы (например, файл справки).
«table» – таблица базы данных.
На рисунке 2.12 показана диаграмма компонентов, в которой отражены основные элементы разрабатываемой информационной системы, а также основной исполняемый файл, файлы веб-форм приложения, служебные файлы с дополнительной информацией, а также биллинговая система и база данных с соответствующими интерфейсами
Рисунок 2.12 – Диаграмма компонентов
Диаграмма развертывания
Целью диаграммы развертывания является представление физического расположения системы, взаимодействия физического оборудования, на котором запускается та или иная составляющая программного обеспечения.
Основные цели, преследуемые при разработке диаграммы развертывания:
-
распределение компонентов системы по ее физическим узлам;
-
отображение физических связей между узлами системы на этапе исполнения;
-
выявление узких мест системы и реконфигурация ее топологии для достижения требуемой производительности.
Элементами диаграммы реализации являются узлы, компоненты и связи между ними.
Рисунок 2.13 Диаграмма развертывания
На рисунке 2.13 представлена диаграмма развертывания, которая отражает физические компоненты информационной системы, так же на ней показан способ ее установки.
-
Проектирование структуры базы данных
Прежде чем начать проектировать логическую и физическую модели данных проектируемой системы, представим структуру БД. В базу данных, разработанную для интернет-приложения автосервиса, входят 14 таблиц.
Таблица Address (таблица 3.1) содержит информацию о адресах доставки товара клиенту и, соответственно, связана с таблицей Users по полю UsersId.
Таблица 3.1 – Адрес (Address)
| Название | Код | Тип |
| Номер | Id | Числовой (int) |
| Страна | Country | Текстовый (string) |
| Регион | State | Текстовый (string) |
| Город | City | Текстовый (string) |
| Улица | Street | Текстовый (string) |
| Почтовый индекс | PostalCode | Числовой (int) |
| Телефон | Telefon | Текстовый (string) |
| Первый | IsPrimary | Логический (bool) |
| Номер пользователя | UserId | Числовой (int) |
Каждый товар имеет свою категорию. Таблица Category (таблица 3.2) включает в себя информацию о категориях товара. В процессе работы предприятия данные этой таблицы могут изменены и расширены администратором.
Таблица 3.2 – Категория (Category)
| Название | Код | Тип |
| Номер | Id | Числовой (int) |
| Наименование | Name | Текстовый (string) |
Каждая категория товара имеет свою подкатегорию. Таблица Subcategory (таблица 3.3) является справочником и хранит в себе информацию о подкатегориях товара. Также, как и таблица Category, она в процессе работы предприятия может быть изменена и расширена администратором. Связана с таблицей Category по полю CategoryId.
Таблица 3.3 – Подкатегория (Subcategory)
| Название | Код | Тип |
| Номер | Id | Числовой (int) |
| Наименование | Name | Текстовый (string) |
| Номер категории | CategoryId | Числовой (int) |
Таблица PhotoProduct (таблица 3.4) является хранилищем визуальной информации продукта, то есть его фото. Первичным ключом в данной таблицы является поле Номер (Id). Таблица PhotoProduct связанна с таблицей Product по внешнему ключу ProductId.
Таблица 3.4 – Изображения Продукта (PhotoProduct)
| Название | Код | Тип |
| Номер | Id | Числовой (int) |
| Изображение | Image | Текстовый (string) |
| Номер продукта | ProductId | Числовой (int) |
Таблица Membership (таблица 3.5) хранит в себе очень важную информацию пользователя- это его пароль. Пароль хранится в зашифрованном виде, также помимо пароля данная таблица хранит информацию о дате его создания и токене подтверждения. Первичным ключом в данной таблицы является поле Номер пользователя (UserId).
Таблица 3.5 – Членство (Membership)
| Название | Код | Тип |
| Номер пользователя | UserId | Числовой (int) |
| Дата создания | CreateDate | Дата/время (DateTime) |
| Пароль | Password | Текстовый (string) |
Окончание таблицы 3.5
| Название | Код | Тип |
| Токен подтверждения пароля | PasswordVerificationToken | PasswordVerificationToken |
Данная таблица (таблица 3.6) предназначена для хранения информации о заказах клиентов. Также таблица Order хранит информацию об адресе доставки и пользователе совершившем заказ. Связь таблицы осуществляется по ключевому полю AddressId с таблицей Address, а также по полю UserId с таблицей User. Первичным ключом в данной таблицы является поле Номер заказа (Id).
Таблица 3.6 – Заказ(Order)
| Название | Код | Тип |
| Номер | Id | Числовой (int) |
| Дата создания | DateCreated | Дата/время (DateTime) |
| Дата отправки | DateSend | Дата/время (DateTime) |
| Новый | IsNew | Логический (bool) |
| В процессе | IsProcess | Логический (bool) |
| Подтверждён | IsConfirm | Логический (bool) |
| Завершён | IsCompleted | Логический (bool) |
| Номер адрес | AddressId | Числовой (int) |
| Номер пользователя | UserId | Числовой (int) |
Таблица OrderProductт (таблица 3.7) является хранилищем информации о товарах присутствующих в заказе и о их количестве. Связь таблицы осуществляется по ключевому полю OrdersId с таблицей Order, а также по полю ProductId с таблицей Product.















