Middle+
* Nėra centralizuotos pranešimų istorijos; * Vartotojai skundžiasi dėl dubliavimų ir vėlavimų; * Nėra vieningo SLA, metriko ir valdymo centro. Tikslas Sukurti naują Notification Platformą, kuri: * kaupia įvykius iš skirtingų šaltinių (CRM, Support, Security); * juos maršrutizuoja pagal tipą ir kanalą (el. paštas, SMS, Telegram, push); * užtikrina šablonų vienodumą, registravimą ir stebėseną; * palaiko SLA (p95 ≤ 3 sekundės pristatymui); * leidžia ateityje plėsti ir didinti kanalus. Kandidato užduotis 1. Apibrėžti sistemos funkcinius reikalavimus. 2. Aprašyti nefunkcinius reikalavimus (patikimumas, našumas, klaidų valdymas). 3. Parengti kontekstinį diagramą (C4 2 lygis). 4. Pridėti sekvencijos diagramos schemą. Pavyzdžiui, žinutės siuntimas iš...
sobes.tech AI
Atsakymas iš AI
Функциональные требования:
- Приём и агрегация событий из различных источников (CRM, Support, Security).
- Классификация и маршрутизация уведомлений по типу и каналу (email, SMS, Telegram, push).
- Управление шаблонами уведомлений с возможностью единообразного редактирования.
- Логирование всех событий и действий для аудита и отладки.
- Метрики и мониторинг (включая SLA, например p95 ≤ 3 сек на доставку).
- Поддержка масштабируемости и расширяемости (добавление новых каналов).
Нефункциональные требования:
- Надёжность: система должна быть устойчива к сбоям, с механизмами повторной отправки и резервирования.
- Производительность: обработка и доставка уведомлений в пределах SLA.
- Обработка ошибок: детальный лог ошибок, уведомления об ошибках, возможность отката.
- Безопасность: защита данных пользователей и каналов связи.
Контекстная диаграмма (C4 Level 2):
-
Внешние системы: CRM, Support, Security (источники событий).
-
Notification Platform:
- Event Aggregator
- Router (маршрутизация по каналам)
- Template Manager
- Delivery Services (Email, SMS, Telegram, Push)
- Logging & Monitoring
-
Пользователи и администраторы (через UI или API для управления и мониторинга).
Sequence-диаграмма (пример отправки сообщения):
- Источник события (например, CRM) отправляет событие в Notification Platform.
- Event Aggregator принимает событие.
- Router определяет канал и тип уведомления.
- Template Manager формирует сообщение по шаблону.
- Delivery Service отправляет уведомление через выбранный канал.
- Logging фиксирует событие и статус доставки.
- Monitoring обновляет метрики и SLA.
Такое решение позволит централизовать уведомления, улучшить качество доставки и упростить управление системой.