Добавил:
донатики - https://qiwi.com/n/1ZOMBIE1 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИБ-01б 251222.docx
Скачиваний:
11
Добавлен:
10.01.2023
Размер:
2.65 Mб
Скачать

2 Разработка программного обеспечения

2.1 Разработка базовых функций

Главной задачей является создание системы, способной реализовать следующий набор функций:

  • регистрация;

  • вход в личный кабинет;

  • добавление данных;

  • редактирование профиля;

  • удаление данных;

  • поиск данных;

  • фильтрация данных по определенному параметру.

Необходимая для пользователя информация будет хранится в базе данных в соответствии с рисунком 2.1.

Рисунок 2.1 - таблицы базы данных

Схема базы данных разрабатываемой системы выглядит в соответствии с рисунком 2.2 [2].

Рисунок 2.2 – схема базы данных

2.2 Описание архитектуры разрабатываемого продукта

Описание классов разрабатываемого приложения:

– PageAuto.cs – класс авторизации пользователя;

– PageMe.cs – класс вывода долгов пользователя;

– PageProducts.cs – класс вывода товаров на обмен;

– AddSubscriberWin.cs – класс добавления посещений;

– PageReg.cs – класс регистрации пользователя;

– PageUser.cs – класс для редактирования профиля;

– AddArr.cs – класс для добавления долгов;

– AddProd.cs – класс добавления товаров на обмен;

– WindowOk.cs – класс для отметки возврата товара.

2.3 Описание архитектуры разрабатываемого продукта

Состав объектов из класса «PageProducts.cs» с детальным описанием свойств и событий приведен в таблице 2.1.

Таблица 2.1 – Состав и свойства объектов

Наименование объекта

Назначение объекта

Свойства объекта

TextFil

Поле для ввода текста.

HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0" Width="200" Style="{StaticResource MyBlockCenter}" Text="Фильтр по категориям"

BtnAdd

Кнопка добавления.

Style="{StaticResource MyBtnBack}" VerticalAlignment="Bottom" Margin="10 0 5 3" Content="Взять в долг" x:Name="BtnMe" Click="BtnMe_Click"

DG_Products

Вывод данных доступных товаров.

Grid.Column="0" Grid.Row="2" IsReadOnly="True" Margin="5" Name="DG_Products" AutoGenerateColumns="False" VerticalScrollBarVisibility="Visible"

CBFil

Выпадающий список

HorizontalAlignment="Center" Margin="5" DisplayMemberPath="Name_Category_Base" SelectionChanged="CBFil_SelectionChanged" Style="{StaticResource ComboBoxL}"

TBSearch

Поле для ввода текста.

TextChanged="TBSearch_TextChanged" Margin="5"

BtnDel

Кнопка удаления товара.

Content="{x:Static props:Resources.TextDelet}" Height="26" Width="175" Margin="–10,0,15,0" Click="BtnDel_Click"

DG_Products_ME

Вывод товаров авторизованного пользователя.

Grid.Column="0" Grid.Row="2" IsReadOnly="True" Margin="5" Name="DG_Products" AutoGenerateColumns="False" VerticalScrollBarVisibility="Visible"

BtnMe

Кнопка добавления.

Style="{StaticResource MyBtnBack}" VerticalAlignment="Bottom" Margin="10 0 5 3" Content="Взять в долг" x:Name="BtnMe" Click="BtnMe_Click"

Словарь данных предоставлен в таблице 2.2.

Таблица 2.2 – Словарь данных

User (пользователи)

Ключ

Поле

Обязательное

Примечание

PK

ID_User

Да

Код пользователя

FIO

Да

ФИО

Login

Да

Логин

Password

Да

Пароль

Category (категории)

Ключ

Поле

Обязательное

Примечание

PK

ID_Category

Да

Код категории

Name_Category

Да

Название категории

Arrears (задолжности)

Ключ

Поле

Обязательное

Примечание

PK

ID_Arrears

Да

Код задолжности

FK

ID_Product

Да

Код товара Код пользователя (Внешний ключ из таблицы Product)

FK

ID_Lender

Да

Код пользователя кредитора Код пользователя (Внешний ключ из таблицы User)

FK

ID_Debtor

Да

Код пользователя должника Код пользователя (Внешний ключ из таблицы User)

Date_Start

Да

Дата взятия в долг

Date_Finish

Да

Дата возврата

Completed

Да

Возвращение

Product (товары)

Ключ

Поле

Обязательное

Примечание

РК

ID_Product

Да

Код товара

Name_Product

Да

Название товара

FK

ID_Category

Да

Код категории (Внешний ключ из таблицы Category)

FK

ID_User

Да

Код пользователя (Внешний ключ из таблицы User)

Схема взаимодействия разделов интерфейса системы представлено на рисунке 2.3 [3].

Рисунок 2.3 – схема взаимодействия разделов интерфейса