Коммерческое предложение
Название проекта:
Разработка сервиса уведомлений
1
Цель проекта:
Разработать сервис, который позволит пользователям Личного Кабинета гибко управлять уведомлениями и повысить уровень сервиса для клиентов.
2
Задачи проекта:
  • Разработать интеграционную шину данных
  • Интегрироваться с сервисом Notify.Events
  • Разработать Back-End модуль сервиса уведомлений
  • Разработать табличный компонент уведомлений
3
4
Что будем делать:
1. Соберем требования и ожидания со всех стейкхолдеров, сформируем user stories, сделаем декомпозицию крупных функциональных блоков.

Для того чтобы приложение помогало решать задачи пользователей, мы уделяем особое внимание общению с пользователями и другими ключевыми стейкхолдерами. Чтобы закончить приложение в короткие сроки, особое внимание мы уделяем проектному управлению и планированию. Это позволяет заранее формировать бэклог задач, правильно его приоритезировать и быть прозрачными перед всеми участниками проекта.



2. Разработаем интеграционную шину.

С точки зрения архитектуры и целостности потока данных, наиболее предпочтительным вариантом, будет являться реализация сервиса, как интеграционной шины. Система-источник изменений (1C), отправляет данные о событии на брокер сообщений, которые обогащаются необходимыми метаданными и отправляются получателям – сервисам, на которые подписан пользователь


3. Разработаем Back-end модуль сервиса уведомлений.

Данный модуль будет включать в себя анализ модели данных и приведения потока данных к единому формату. Мы также включили в оценку, интеграцию с личным кабинетом, для выгрузки информации по отслеживаемым товарам пользователей.


4. Разработаем табличный компонент управление уведомлениями.

Данный компонент будет реализован на Angular и будет включать таблицу, в которой пользователь сможет настраивать сервисы, на которые хочет получать уведомления.


5. Сформируем проектную документацию

Во время разработки, мы активно ведем проектную документацию, в которой отражаем всю информацию о проекте, схемы взаимодействия систем, указание по конфигурированию параметров системы, набор скриптов и другой информации, которая поможет ознакомится с проектом любому стейкхолдеру в компании.
Бизнес-результат:
Вы получите готовый инструмент работы с уведомлениями. Благодаря использованию сервиса Notify.Events сокращаются трудозатраты на разработку и поддержка интеграций с разными цифровыми каналами (соц.сети, мессенджеры). Сервис позволит повысить вовлеченность пользователей и качество оказываемого сервиса. За счёт уведомлений о новом ассортименте товара, увеличится количество заказов и выручка.
5
Технологии:
Что касается Python

  • В своей работе мы используем два фреймворка - Django и FastAPI.
  • Django используем для простых проектов и МВП, там где что-то с более-менее сложной бизнес логикой используем FastAPI.
  • Для гарантии качества решения используем как Code Review так и инструменты Quality Gates (black, flake8, isort, detect-secrets, bandit, mypy)
  • Приложения разрабатываем Cloud Ready в соответствии со стандартом 12 factor (https://12factor.net/)
  • Вся инфраструктурная часть наших проектов разрабатывается сразу по IaC, клиент получает не только кодовую базу, но и пайплайны сборки и деплоя (Gitlab-CI), а также терраформ, helm и ansible плейбуки, где это применимо.

Также мы можем помочь обучить девопсов заказчика использованию вышеуказанных инструментов, если они это не умеют.

  • Сборка и деплой - gitlab-ci, helm
  • Среда исполнения - Kubernetes
  • Шина/брокер - kafka или RabbitMQ
  • База данных PostgreSQL (если нужна аналитическая, то ClickHouse, нереляционная MongoDB)
6
Команда проекта:
Вариант 1:
Project manager (middle) - 120 часов
Python developer (middle) - 160 часов
Python developer (senior) - 80 часов
Angular developer (middle) - 80 часов
Angular developer (senior) - 20 часов
Analyst (middle) - 120 часов

Время работы команды:
Часы - 580
Недели - 6
Спринты - 3
Месяцы - 1,5
7
Команда проекта:
Вариант 2:
Project manager (middle) - 200 часов
Python developer (middle) - 260 часов
Python developer (senior) - 140 часов
Angular developer (middle) - 80 часов
Angular developer (senior) - 20 часов
Analyst (middle) - 200 часов

Время работы команды:
Часы - 900
Недели - 9
Спринты - 5
Месяцы - 2,5
8
Как ведется работа:
9
Дорожная карта
Упрощает понимание стратегии развития благодаря визуализации работы команды, цены, планируемых часов и занятости
Управление проектом
Планирование, оценка, распределение задач по спринтам, согласования в Zoom, стендапы и общение в Telegram
Таск трекер — Monday
В качестве трекера задач используем Monday, в режиме реального времени следим за спринтами и выполненными задачами
Документация — Notion
Всё для понимания проекта: описание, глоссарий, раздел для разработчиков, описания инфраструктуры, нужных интеграций, UX и другого
Артефакты по результатам работы
над проектом:
  • Кодовая база;
  • Проектная документация;
  • Эксплуатационная документация, если требуется;
  • Скрипты разворачивания продукта в зависимости от требований (Kubernetes/docker/VM на базе gitlab-ci или jenkins);
  • Результаты нагрузочного тестирования и скрипты его поведения.
10
Стоимость проекта:
Вариант 1:
2 749 500₽

Вариант 2:
3 697 500₽
11
Свяжитесь с нами
Телефон: +7 915 4211789
Email: glukhov.a@sparklingtide.com
Коммерческий директор
Артем Глухов