Создание информационной системы для просмотра пользователями информации о музыкальных инструментах и скидках на их покупку. Разрабатываемое ПО должно предоставлять интерфейс для взаимодействия с базой данных с возможностью создавать каждому отдельному пользователю индивидуальный список сравнения. Также администратор магазина должен иметь возможность добавлять, удалять и редактировать информацию о музыкальных инструментах.
Предметной областью являются цифровые магазины музыкальных инструментов.
Гость (неавторизованный пользователь) имеет доступ к просмотру данных в системе, поиску информации о музыкальных инструментах и ее фильтрации по параметрам: цена, бренд, материал. Также такой пользователь может пройти регистрацию и стать зарегистрированным пользователем.
Зарегистрированный пользователь дополнительно имеет возможности просматривать свой список сравнения, добавлять музыкальные инструменты в этот список и удалять их оттуда.
Администратор, помимо возможностей зарегистрированного пользователя, может добавлять, удалять и изменять информацию о музыкальных инструментах.
На сегодняшний день существует несколько сайтов, позволяющих просматривать информацию о музыкальных инструментах и скидках на их покупку:
- Музторг
- Глинки.ру
- Music Store
- Musician's Friend
Сравним существующие решения по следующим критериям.
- Возможность добавления музыкальных инструментов в список сравнения.
- Возможность фильтрации списка музыкальных инструментов по различным параметрам.
- Доступность в РФ.
Решение | 1 | 2 | 3 |
---|---|---|---|
Музторг | - | + | + |
Глинки.ру | - | + | + |
Music Store | + | + | - |
Musician's Friend | - | + | - |
Разрабатываемое решение | + | + | + |
В музыкальных инструментах заинтересовано большое количество людей. Так как современные цифровые магазины предоставляют большой ассортимент музыкальных инструментов, возникает проблема сложности сравнения товаров и отслеживания акций и скидок. Перечисленные выше решения не соответствуют всем критериям, что затрудняет взаимодействие пользователей с ними. Большинство решений не поддерживает удобный список сравнения музыкальных инструментов. Также некоторые решения недоступны в РФ.
Гость может:
- Зайти на страницу со всеми музыкальными инструментами.
- Находясь на странице со всеми музыкальными инструментами, отфильтровать их (по цене, бренду или материалу, можно комбинировать параметры фильтрации)
- Находясь на странице со всеми музыкальными инструментами, зайти на страницу конкретного музыкального инструмента.
- Находясь на странице со всеми музыкальными инструментами, посмотреть информацию о скидках на музыкальные инструменты.
- Зайти на страницу регистрации, остаться на ней или перейти на страницу авторизации.
- Зайти на страницу авторизации, остаться на ней или перейти на страницу регистрации.
- Находясь на странице регистрации, зарегистрироваться.
- Находясь на странице авторизации, авторизоваться.
Пользователь может:
- Выполнять действия 1-4 для гостя.
- Находясь на странице со всеми музыкальными инструментами или на странице конкретного музыкального инструмента, добавить музыкальный инструмент в список сравнения.
- Зайти на страницу своего профиля.
- Находясь на странице своего профиля, зайти на страницу списка сравнения.
- Находясь на странице списка сравнения, удалить музыкальный инструмент из этого списка.
- Находясь на любой странице, выйти из аккаунта.
Администратор может:
- Выполнять все действия пользователя.
- Зайти на страницу админ-панели.
- Находясь на странице админ-панели, добавить новый музыкальный инструмент.
- Находясь на странице админ-панели, удалить существующий музыкальный инструмент.
- Находясь на странице админ-панели, изменить информацию о музыкальном инструменте.
- Находясь на странице админ-панели, изменить информацию о скидках. Доступны следующие типы скидок и акций.
- Процентная скидка (дата начала
$b$ , дата окончания$e$ , размер скидки$v$ ) - Cкидка на день рождения (дата начала
$b$ , дата окончания$e=b$ , размер скидки$v$ ). - При покупке
$n$ товаров$m$ таких же товаров предоставляется в подарок. - Скидка пользователям в определенную дату в зависимости от пола (дата начала
$b$ , дата окончания$e$ , размер скидки$v$ ).
- Добавление музыкального инструмента в список сравнения.
- Удаление музыкального инструмента из списка сравнения.
Тип приложения: Web SPA
Технологический стек:
- Backend: Golang
- Frontend: React Rudex
- База данных: PostgreSQL