Всем привет. Итак, вот тут в посте на собеседовании задавали несколько задачек, которые были разобраны на созвоне в прошлый четверг. Решила опубликовать ответ на первую задачу, завтра опубликую на вторую. Запись в пятницу.
Напомню: задачка: "Нарисуйте интеграцию трех систем: процесс подачи заявки на кредит. 1 система — Front (мобилки), 2 система — кредитная заявка, 3 система — скоринг кредитной заявки." Честно скажу, я немного поленилась и не писала activate и deactivate в plantuml.
Ниже размещаю код для plantuml:
@startuml
actor "Заёмщик" as A
entity "Front" as B
entity "Apigateway" as L
entity "Кредитная заявка" as D
database "БД" as E
queue "Топик 1" as kafka
queue "Топик 2" as kafka1
entity "Скоринговая система" as F
==Процесс подачи заявки==
A->B: подача кредитной заявки
B->L
L->D: подача кредитной заявки
D->E: сохранение данных заемщика
E-->D: данные сохранены
D-->L: Заявка принята
L-->B:
B-->A: заявка на кредит принята
== Процесс скоринга==
D->>kafka: данные на кредит
F->>kafka: Чтение данных на кредит
F-->>kafka1: данные скоринга
D->>kafka1: данные скоринга
D->E: сохранение данных скоринга
E-->D: Результат сохранения данных скоринга
== Процесс получения результатов скоринга==
A->L: запрос результатов
L->D: запрос результатов
D->E: Получение результатов скоринга
E-->D: Получение результатов скоринга
D-->L: Получение результатов скоринга
L-->B
B-->A: Получение результатов скоринга
@enduml
Всем кому полезно с вас огонек или сердечко. Вопросы и комментарии жду ниже!
Напомню: задачка: "Нарисуйте интеграцию трех систем: процесс подачи заявки на кредит. 1 система — Front (мобилки), 2 система — кредитная заявка, 3 система — скоринг кредитной заявки." Честно скажу, я немного поленилась и не писала activate и deactivate в plantuml.
Ниже размещаю код для plantuml:
@startuml
actor "Заёмщик" as A
entity "Front" as B
entity "Apigateway" as L
entity "Кредитная заявка" as D
database "БД" as E
queue "Топик 1" as kafka
queue "Топик 2" as kafka1
entity "Скоринговая система" as F
==Процесс подачи заявки==
A->B: подача кредитной заявки
B->L
L->D: подача кредитной заявки
D->E: сохранение данных заемщика
E-->D: данные сохранены
D-->L: Заявка принята
L-->B:
B-->A: заявка на кредит принята
== Процесс скоринга==
D->>kafka: данные на кредит
F->>kafka: Чтение данных на кредит
F-->>kafka1: данные скоринга
D->>kafka1: данные скоринга
D->E: сохранение данных скоринга
E-->D: Результат сохранения данных скоринга
== Процесс получения результатов скоринга==
A->L: запрос результатов
L->D: запрос результатов
D->E: Получение результатов скоринга
E-->D: Получение результатов скоринга
D-->L: Получение результатов скоринга
L-->B
B-->A: Получение результатов скоринга
@enduml
Всем кому полезно с вас огонек или сердечко. Вопросы и комментарии жду ниже!