Интернет-магазин одежды в Telegram.
- Ярослав Голубев
- Павел Чувикин
- Даниил Климов
- Арсений Бутенко Лидер, капитан, наш проводник в мир моды!!
- Полина Голубева
- Мочалова Юлия
- Никита Чернов Русский хакер, живущий в Майами. Лицо проекта)
Продажа предметов одежды через мессенджер Telegram.
Цель проекта: обеспечить создание бота для магазина одежды внутри мессенджера Telegram.
Бизнес-цели:
- Краткосрочная: разработать основной функционал бота и открыть доступ к боту на широкую аудиторию до 31.06.2024;
- Долгосрочная: привлечь первых 500 уникальных пользователей в бота и достичь первых 50 покупок до 31.07.2024.
Демографический:
- Пол: сервис будет нацелен как на мужчин, так и на женщин, предоставляя им возможность выбора одежды в соответствии с их предпочтениями и потребностями.
- Возраст: основной акцент будет сделан на молодежь (18-30 лет), так как они чаще проявляют интерес к модным трендам и онлайн-покупкам. Однако, предложения также будут доступны для взрослых (31-50 лет) и пожилых (51+ лет) пользователей.
Географический:
- Городское население и регион: поскольку бот будет работать через платформу Telegram, для использования необходимо интернет-подключение и доступ к этой платформе. На данном этапе реализация функций бота будет работать только если пользователь укажет город Иваново.
Социально-экономический:
- Уровень дохода: бот будет предлагать различные ценовые категории, чтобы удовлетворить потребности пользователей с разным уровнем дохода.
- Образование и род деятельности: разнообразие предложений поможет удовлетворить запросы студентов, офисных работников, фрилансеров и других категорий пользователей с разным образованием и видами деятельности.
Поведенческий:
- Метод покупки: пользователи смогут оформить онлайн-покупку прямо через бота.
- Брендовая преданность: бот будет предоставлять информацию о различных брендах и помогать пользователям найти товары именно тех марок, которым они предпочитают.
Психографический:
- Лайфстайл: бот будет предлагать одежду и аксессуары, соответствующие разным стилям жизни, включая активный отдых, офисные занятия и культурные мероприятия.
- Ценности и интересы: пользователи смогут выбирать товары, отвечающие их ценностям, таким как качество, а также учитывать их интересы, такие как спорт, искусство или путешествия.
- Отслеживание заказа: Диаграмма | Экранные формы
- Оплата заказа: Диаграмма | Экранные формы
- Оформление заказа: Диаграмма | Экранные формы
- Просмотр каталога товаров: Диаграмма | Экранные формы
Просмотр каталога товаров
- Акторы: Покупатель
- Описание: покупатель может просмотреть список доступных товаров в каталоге.
- Функциональные требования:
- Отображение списка товаров с изображениями, описаниями и ценами;
- Фильтрация и сортировка товаров по категориям.
- Нефункциональные требования:
- Быстрая загрузка каталога;
- Удобный интерфейс.
Заказ товара
- Акторы: Покупатель
- Описание: покупатель может выбрать товар и оформить заказ
- Функциональные требования:
- Возможность добавления товара в корзину;
- Указание количества и размера (если применимо);
- Проверка наличия товара на складе.
- Нефункциональные требования:
- Интуитивно понятный процесс оформления заказа.
Оплата товара
- Акторы: Покупатель, Платежная система
- Описание: покупатель может оплатить заказ через интегрированную платежную систему
- Функциональные требования:
- Поддержка различных методов оплаты (карта, электронные кошельки);
- Обработка транзакций и уведомление о статусе оплаты.
- Нефункциональные требования:
- Безопасность и защита данных;
- Быстрая обработка платежей.
Отслеживание заказа
- Акторы: Покупатель
- Описание: покупатель может отслеживать статус своего заказа.
- Функциональные требования:
- Информация о статусе заказа (обрабатывается, отправлен, доставлен);
- Уведомления о изменениях статуса.
- Нефункциональные требования:
- Актуальность данных.
Product (Товар)
- Атрибуты: id, name, description, price, category, imageUrl
- Методы: viewDetails(), checkAvailability(), applyDiscount()
Order (Заказ)
- Атрибуты: id, customerId, managerId
- Методы: calculateTotal(), updateStatus(), confirmPayment()
OrderItem (Позиция заказа)
- Атрибуты: orderId, productId, amount
- Методы: addItem(), removeItem(), clear()
User (Пользователь)
- Атрибуты: id, nickname, firstname, lastname, phoneNumber, deliveryAddress, role
- Методы: register(), login(), updateProfile()
Warehouse (Склад)
- Атрибуты: id, address
- Методы: changeAddress(), close(), open()
WarehouseItem (Товар на складе)
- Атрибуты: productId, warehouseId, amount
- Методы: addProduct(), removeProduct(), changeAmount()
Cart (Товар в корзине)
- Атрибуты: userId, productId, amount
- Методы: addProduct(), removeProduct(), clear()
OrderStatusHistory (История статусов заказа)
- Атрибуты: orderId, datetime, status
Пользователь запускает Telegram бота. Под набором текста ему доступны всплывающие подсказки: «Каталог», «Корзина», «Заказы», «Новости», «Настройки», «Помощь». Выбирая вкладку «Каталог», в присланном сообщении для пользователя становятся доступны ячейки с одеждой: «Верхняя одежда», «Костюмы», «Купальники», «Брюки/шорты/юбки», «Рубашки/топы», «Платья», «Комбинезоны». Выбирая нужную для пользователя ячейку, ему присылается новое сообщение с фирмами производителя, которые так же находятся в ячейках. Далее, при выборе нужной фирмы, пользователю присылается фотография выбранной одежды с указанием размера в соответствующих ячейках, которую должен выбрать пользователь. После окончательного выбора информация о заказе попадает в главную выкладку «Корзина».
Переходя во вкладку «Корзина», пользователю показывается в сообщении информация о заказе и появляется кнопка «Оплатить». Нажав на нее, пользователь указывает номер карты и адрес доставки. Нажав всплывающую кнопку «Закончить оплату», пользователь подтверждает номер карты и адрес доставки.
-
Доступность
Процент времени, когда магазин SuperFashion доступен для использования и работоспособен. Система должна быть доступна для использования не менее чем на 95% времени в течение рабочих дней.
-
Целостность
Уровень защиты от потери информации и сохранение корректности данных в системе. истема должна на 95% защищать от неточности и потери данных. После резервного копирования данных система должна проверить их целостность и засвидетельствовать об отличиях, если они есть.
-
Совместимость
Готовность системы к обмену данными с другими программными системами и интеграции с внешними устройствами. Бот должен корректно работать с платежной системой через Telegram.
-
Производительность
Скорость реакции системы на запросы и действия пользователей. Время загрузки бота и обработки каждого запроса не должно превышать 3 секунды при скорости интернет-соединения 30 Мбит/с.
-
Устойчивость
Способность системы восстанавливаться после сбоев и сохранять работоспособность. При возникновении ошибок при оформлении заказа, система SuperFashion должна сохранить все данные о заказе пользователя.
-
Требования к защите
Системные меры, направленные на предотвращение вреда для пользователей и их данных. Все данные, передаваемые при обработке платежей, должны быть зашифрованы с использованием алгоритма шифрования SHA256 для предотвращения несанкционированного доступа.
-
Эффективность
Способность системы использовать ресурсы (процессор, диск, память, пропускная способность соединения) эффективно. Время обработки одного запроса покупателя на стороне сервера не должно превышать 500мс.
-
Возможность модификации
Уровень простоты внесения изменений в дизайн и код магазина. 100% используемых библиотек и интеграций должны быть поддерживаемыми и обновляемыми, чтобы обеспечить совместимость с последними версиями и исправлениями безопасности.
-
Масштабируемость
Способность магазина обслуживать большее количество пользователей и данных без ухудшения производительности. Бот должен поддерживать не менее 100 одновременных пользователей без снижения производительности. При увеличении числа пользователей до 1000, бот должен сохранять время отклика менее 3 секунд.
-
Проверяемость
Легкость проверки программных компонентов на соответствие функциональным требованиям. Каждый модуль и основные функциональные блоки бота должны иметь не менее 85% покрытие unit-тестами.