Техническое задание — Написание API на Python для магазина по продажам никотиновых продуктов.
ТЗ (От руки заказчика)
Нам нужен API, который будет работать с нашей базой данных PostgreSQL (магазина). С помощью API, мы будем предоставлять данные о наличие товара или изменения товара и так же создавать, изменять данные о заказах.
ТЗ (С помощью ChatGPT) *Подробно
Техническое задание для разработки API для магазина RAZKYMAR PL
1. Описание проекта Магазин RAZKYMAR PL планирует разработать API для интеграции с веб-сайтом, где клиенты смогут просматривать ассортимент и создавать заказы. Основные пользователи API:
- Владелец магазина.
- Администраторы.
- Сайт магазина.
- Клиенты
2. Функциональные требования
2.1 Управление товарами:
- Обновление данных существующих товаров.
2.2 Обработка заказов:
- Создание новых заказов.
- Проверка статуса заказов.
- Обновление статуса заказов (например, "оплачен", "отправлен").
- Отмена заказов.
2.3 Интеграции:
- Интеграции с внешними системами не предусмотрены.
2.4 Аналитика:
3. Технические требования
3.1 Технологический стек:
- Язык: Python.
- Фреймворк: на выбор разработчика.
3.2 База данных:
- Разработчик может решить, использовать ли базу данных. Если база данных используется, она должна быть совместима с Python (например, PostgreSQL, SQLite).
3.3 Формат данных:
- Использовать JSON для передачи данных между клиентом и сервером.
3.4 Аутентификация:
- Реализовать систему аутентификации через API-ключи.
4. Безопасность
- Дополнительные меры безопасности не требуются, кроме базовой работы с базой данных.
5. Развёртывание и масштабируемость
5.1 Среда исполнения:
- Возможность работы на VDS сервере или локальном компьютере.
5.2 Масштабируемость:
- API должно быть готово к масштабированию при росте нагрузки.
6. Логирование и мониторинг
- Логирование ошибок и запросов не требуется.
- Мониторинг производительности API не предусмотрен.
7. Нефункциональные требования
7.1 Нагрузка:
- API должно выдерживать до 10 запросов в секунду.
7.2 Производительность:
- Быстрый ответ на запросы (<200 мс при нормальной нагрузке).
7.3 Документация:
- Предоставить документацию для API. Формат документации обсуждается с разработчиком (например, Swagger или Markdown).
7.4 Сроки:
- Завершение разработки API в течение 1 месяца.
8. Поддержка и развитие
8.1 Поддержка:
- API должно быть легко поддерживаемым.
8.2 Возможность расширения:
- Предусмотреть возможность добавления новых функций в будущем.
Контактная информация:
- Для уточнений и вопросов владелец магазина готов предоставить дополнительные данные.
Контактная информация: @razkymar_glmanager