Добавить akloyalty.md

This commit is contained in:
Дмитрий Торов 2025-08-26 14:16:07 +00:00
parent 8ecb70af56
commit b48f536bdc

245
akloyalty.md Normal file
View File

@ -0,0 +1,245 @@
Вот декомпозиция технического задания на разработку чат-бота для программы лояльности с оценкой трудозатрат (в **человеко-днях**, с округлением до 0.5 дня). Оценка учитывает проектирование, реализацию, интеграцию с API RS.Loyalty, тестирование и документирование.
---
### **Общие замечания:**
- Используется архитектура бэкенд + бот-движок (например, на Python + FastAPI + библиотеки для Telegram/VK/MAX).
- Интеграция с RS.Loyalty 5.9.0 через REST API.
- Требуется веб-интерфейс (Web App) для Telegram.
- Поддержка трёх платформ: Telegram, VK, MAX (аналогичные по архитектуре, но с разными SDK).
- Оценка дана **на одну команду из 23 разработчиков** (1 бэкенд, 1 фронтенд/бот-разработчик, 1 тестировщик).
---
## **Декомпозиция задач и оценка трудозатрат**
---
### **1. Проектирование и архитектура системы**
**Задачи:**
- Анализ API RS.Loyalty 5.9.0.
- Проектирование общей архитектуры бота (микросервис/монолит).
- Проектирование структуры данных, сценариев взаимодействия.
- Разработка протоколов обмена данными, обработка ошибок.
- Подготовка технической документации.
**Трудозатраты:**
✅ **5 дней**
---
### **2. Настройка окружения и CI/CD**
- Настройка сервера/облака (например, AWS, Yandex Cloud).
- Настройка Docker, CI/CD (GitHub Actions / GitLab CI).
- Логирование, мониторинг (например, Sentry, Grafana).
- Подключение к API RS.Loyalty (тестовые/продовые ключи).
**Трудозатраты:**
✅ **3 дня**
---
### **3. Реализация ядра бота (общая логика)**
- Создание бот-движка с поддержкой нескольких платформ.
- Унификация входящих/исходящих сообщений.
- Хранение сессий пользователей.
- Обработка команд, навигация по меню.
- Локализация (поддержка русского языка).
**Трудозатраты:**
✅ **6 дней**
---
### **4. Интеграция с RS.Loyalty API**
- Реализация модуля взаимодействия с API (авторизация, запросы, обработка ошибок).
- Реализация методов:
- Получение баланса бонусов.
- Регистрация пользователя.
- Привязка/активация карты.
- Выпуск виртуальной карты.
- Подтверждение согласий.
- Получение купонов/акций.
**Трудозатраты:**
✅ **7 дней**
---
### **5. Регистрация в программе лояльности**
#### 5.1. Валидация телефона и сбор данных
- Проверка формата телефона (по РФ).
- Сбор ФИО, даты рождения.
- Отправка данных в RS.Loyalty.
#### 5.2. Web App для Telegram
- Разработка веб-формы (React/Vue).
- Передача данных через безопасный канал (HTTPS).
- Валидация на стороне клиента и сервера.
- Обработка ошибок и повторных попыток.
#### 5.3. Реализация в VK/MAX
- Ввод через обычные сообщения (без Web App).
**Трудозатраты:**
**7 дней** (включая разработку Web App и интеграцию)
---
### **6. Привязка пластиковой карты**
- Ввод номера карты.
- Активация через API.
- Заполнение анкеты (если требуется).
- Обработка ошибок (неверный номер, уже активирована и т.п.).
**Трудозатраты:**
✅ **4 дня**
---
### **7. Выпуск виртуальной карты**
- Запрос на выпуск через API.
- Отображение виртуальной карты (номер, штрихкод).
- Сохранение в профиле пользователя.
**Трудозатраты:**
✅ **3 дня**
---
### **8. Получение юридических согласий**
- Отображение списка согласий (обработка ПДн, рассылки).
- Кнопки "Да"/"Нет".
- Отправка согласий в RS.Loyalty.
- Ссылка на юридические документы (открытие в браузере).
**Трудозатраты:**
✅ **2 дня**
---
### **9. Отображение штрихкода**
- Генерация штрихкода (Code128) на основе номера карты.
- Отображение в виде изображения.
- Поддержка скачивания/сохранения.
- Отображение в Web App и в сообщениях.
**Трудозатраты:**
✅ **3 дня**
---
### **10. Отображение баланса бонусов**
- Запрос к API.
- Форматирование и отображение (текущий баланс, срок действия).
- Обработка ошибок (нет подключения, нет карты).
**Трудозатраты:**
✅ **2 дня**
---
### **11. Маркетинговые рассылки**
#### 11.1. Отправка акций и предложений
- Получение данных из RS.Loyalty.
- Формирование сообщений (текст, изображения).
- Персонализация (по имени, сегменту).
#### 11.2. Купоны с штрихкодами
- Генерация штрихкода купона.
- Отправка в сообщении.
- Срок действия, условия.
#### 11.3. Уведомления
- Автоматические уведомления (например, о начислении бонусов).
- Поддержка push-уведомлений в мессенджерах.
**Трудозатраты:**
✅ **6 дней**
---
### **12. Обратная связь**
#### 12.1. Чат с контактным центром
- Пересылка сообщений оператору.
- Уведомление пользователя о статусе.
- Возможность прикрепления текста/фото.
#### 12.2. Контакты
- Кнопки: "Позвонить", "Перейти на сайт", "Соцсети".
- Открытие внешних ссылок.
**Трудозатраты:**
✅ **4 дня**
---
### **13. Поддержка трёх платформ (Telegram, VK, MAX)**
- Адаптация интерфейса под каждую платформу.
- Особенности Web App (только Telegram).
- Особенности API (кнопки, медиа, безопасность).
- Тестирование на всех платформах.
**Трудозатраты:**
**5 дней** (дополнительно к базовой реализации)
---
### **14. Тестирование**
- Модульное тестирование (backend, API-вызовы).
- Интеграционное тестирование (бот ↔ RS.Loyalty).
- Ручное тестирование сценариев на всех платформах.
- Тестирование безопасности (передача ПДн).
- Исправление багов.
**Трудозатраты:**
✅ **7 дней**
---
### **15. Документация и передача**
- Техническая документация (архитектура, API).
- Руководство для маркетологов (как управлять рассылками).
- Обучение поддержки.
- Передача проекта заказчику.
**Трудозатраты:**
✅ **3 дня**
---
## **Итого: Общая оценка трудозатрат**
| Этап | Трудозатраты (дни) |
|------|---------------------|
| Проектирование | 5 |
| Окружение и CI/CD | 3 |
| Ядро бота | 6 |
| Интеграция с RS.Loyalty | 7 |
| Регистрация (с Web App) | 7 |
| Привязка карты | 4 |
| Виртуальная карта | 3 |
| Юридические согласия | 2 |
| Штрихкод | 3 |
| Баланс бонусов | 2 |
| Маркетинговые рассылки | 6 |
| Обратная связь | 4 |
| Поддержка платформ | 5 |
| Тестирование | 7 |
| Документация | 3 |
| **ИТОГО** | **72 дня** |
---
## **Рекомендации:**
- **Срок реализации:** 33.5 месяца (при 23 разработчиках).
- **Команда:** 1 бэкенд-разработчик, 1 фронтенд-разработчик (Web App), 1 тестировщик, 1 DevOps/интегратор.
- **Риски:**
- Неочевидные ограничения API RS.Loyalty.
- Изменения в политике Telegram по Web App.
- Сложности с безопасностью передачи ПДн.
- **Оптимизация:** можно уменьшить сроки за счёт параллельной разработки модулей.
---
Если нужно — могу подготовить **Gantt-диаграмму**, **оценку по спринтам (Agile)** или **разбивку по ролям**.