projects/akloyalty.md

244 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Декомпозиция технического задания на разработку чат-бота для программы лояльности с оценкой трудозатрат (в **человеко-днях**, с округлением до 0.5 дня). Оценка учитывает проектирование, реализацию, интеграцию с API RS.Loyalty, тестирование и документирование.
---
### **Общие замечания:**
- Используется архитектура бэкенд + бот-движок (например, на Javascript + Nodejs + библиотеки для 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.
- Сложности с безопасностью передачи ПДн.
- **Оптимизация:** можно уменьшить сроки за счёт параллельной разработки модулей.
---