From 9914f5a13ffa244d28d636c3b20dd790c02c6d29 Mon Sep 17 00:00:00 2001 From: Marc Gorzala Date: Thu, 23 Nov 2023 21:47:36 +0100 Subject: [PATCH] recommendation --- .../arc42/src/06_runtime_view.adoc | 50 ++++++++++++++++++- .../arc42/src/10_quality_scenarios.adoc | 2 +- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/src/main/jbake/content/documentation/arc42/src/06_runtime_view.adoc b/src/main/jbake/content/documentation/arc42/src/06_runtime_view.adoc index c17a332..74bb61b 100644 --- a/src/main/jbake/content/documentation/arc42/src/06_runtime_view.adoc +++ b/src/main/jbake/content/documentation/arc42/src/06_runtime_view.adoc @@ -3,7 +3,55 @@ === Process how Recommendations are being computed -TBD +When a user changes his profile, this is likey to invalidate all score he has in relation to other dancers. + +It starts with a change of the profile... +[plantuml, change-profile, svg] +.... +@startuml + +actor user +participant dancer +database S3 + +user -> dancer : change profile +dancer -> S3 : change profile + +@enduml +.... + +Now it is time for the recommendation to compute all new recommendations. This is implemented as a batch job, that runs once a night. + +[plantuml, compute-recommendations, svg] +.... +@startuml + +database S3 +participant recommendation + +loop for all profiles + recommendation -> S3 : import into local database +end + +recommendation -> recommendation: greedy compute all dancer pair within 200km +note left + and store is locally + while overwriting all + previously computed pairs +end note + +loop for each pair + recommendation -> recommendation: compute score + note left + store the score + locally + end note +end +@enduml +.... + +Now the recommendation service can return for each dancer, a list of all dancer within a distance of 200km together with the computed <>. + === Process of how we are sending emails diff --git a/src/main/jbake/content/documentation/arc42/src/10_quality_scenarios.adoc b/src/main/jbake/content/documentation/arc42/src/10_quality_scenarios.adoc index 703fbd7..bd284b5 100644 --- a/src/main/jbake/content/documentation/arc42/src/10_quality_scenarios.adoc +++ b/src/main/jbake/content/documentation/arc42/src/10_quality_scenarios.adoc @@ -3,7 +3,7 @@ === Quality Tree -[plantuml, cloud-architecture, svg] +[plantuml, quality-tree, svg] .... @startwbs * Quality