Сценарії взаємодії

Схема взаємодії сервісів

Sequence діаграма взаємодії сервісів в системі
  • User - Кінцевий користувач системи.

  • HTTP Client - Клієнт, який робить HTTP запити (це може бути як частина іншого сервісу, так і окремий користувач).

  • API Gateway - Централізований сервіс, який функціонує як посередник між зовнішніми клієнтами та внутрішніми бекенд-сервісами. Він надає інтерфейс у вигляді REST API для взаємодії із системою. Окрім цього, API Gateway відповідає за обробку та маршрутизацію запитів до відповідних бекенд-сервісів.

  • Auth Service - Відповідає за процес верифікації ідентичності користувачів та надання їм доступу до ресурсів або послуг. Він займається реєстрацією нових користувачів, генерацією JWT токенів та їх подальшою валідацією.

  • Auth DB - База даних, яка зберігає облікові записи користувачів та пов'язану з ними інформацію.

  • Computer Vision Service - Аналізує отримане зображення та генерує відповідний йому опис.

  • Computer Vision DB - База даних, яка зберігає результати аналізу зображень.

Модель прецедентів

Модель прецедентів

Сценарії використання

Користувач без облікового запису

ID
DC_1.1

НАЗВА

Реєстрація користувача

УЧАСНИКИ

Користувач, API Gateway, Auth Service

ПЕРЕДУМОВИ

Користувач не має облікового запису в системі

РЕЗУЛЬТАТ

Створений обліковий запис користувача

DC_1.1
ID
DC_1.2

НАЗВА

Аналіз зображення

УЧАСНИКИ

Користувач, API Gateway, CV Service

ПЕРЕДУМОВИ

Користувач не вказав JWT у заголовках HTTP запиту Користувач використав меньше трьох спроб для аналізу

РЕЗУЛЬТАТ

Користувач отримує опис зображення

DC_1.2
ID
DC_1.3

НАЗВА

Вичерпання ліміту запитів

УЧАСНИКИ

Користувач, API Gateway

ПЕРЕДУМОВИ

Користувач не вказав JWT у заголовках HTTP запиту Користувач використав три спроби для аналізу

РЕЗУЛЬТАТ

Користувач отримує повідомлення про вичерпаний ліміт запитів

DC_1.3

Користувач із існуючим обліковим записом

ID
DC_2.1

НАЗВА

Генерація JWT

УЧАСНИКИ

Користувач, API Gateway, Auth Service

ПЕРЕДУМОВИ

Користувач має підтверджений обліковий запис в системі

РЕЗУЛЬТАТ

Користувач отримує сгенерований JWT

DC_2.1
ID
DC_2.2

НАЗВА

Оновлення JWT

УЧАСНИКИ

Користувач, API Gateway, Auth Service

ПЕРЕДУМОВИ

Користувач має дійсний Refresh Token

РЕЗУЛЬТАТ

Користувач отримує новий JWT

DC_2.2

Аутентифікований користувач

ID
DC_3.1

НАЗВА

Аналіз зображення

УЧАСНИКИ

Користувач, API Gateway, Auth Service, CV Service

ПЕРЕДУМОВИ

Користувач вказав дійсний JWT у заголовках HTTP запиту

РЕЗУЛЬТАТ

Користувач отримує опис зображення

Адміністратор

ID
DC_4.1

НАЗВА

Редагування запису у БД

УЧАСНИКИ

Адміністратор, СУБД

ПЕРЕДУМОВИ

Користувач має роль адміністратора в СУБД

РЕЗУЛЬТАТ

Оновлений запис в таблиці БД

DC_4.1

Last updated