add sequence diagram showing communication for generating recommendations

This commit is contained in:
hannes.kuchelmeister
2020-03-27 14:49:50 +01:00
parent 6dd9879f7e
commit af62f14fa4
3 changed files with 52 additions and 1 deletions

View File

@@ -49,6 +49,18 @@ Another viable solution is adding the recommendation functionality into M.Core.
\label{fig:DesignImplementation:UserInterface} \label{fig:DesignImplementation:UserInterface}
\end{figure} \end{figure}
When a recommendation is supposed to be generated M.Collab sends a REST request to M.Recommend (see \autoref{fig:DesignImplementation:SequenceDiagramRecommendation}). This request contains preferences and the current configuration. M.Recommend generates a recommendation based on the received data. The recommended finished configuration is now send via broadcast over WebSocket to all M.Customer clients.
\begin{figure}
\centering
\includegraphics[width=1\textwidth]{./figures/50_design_and_implementation/sequence_diagram_generating_recommendation.pdf}
\caption{A sequence diagram showing the recommendation process.}
\label{fig:DesignImplementation:SequenceDiagramRecommendation}
\end{figure}
\subsection{Scoring Functions} \subsection{Scoring Functions}
\section{Software Quality} \section{Software Quality}

View File

@@ -0,0 +1,36 @@
@startuml
skinparam monochrome true
skinparam SequenceBoxBackgroundColor #ffffff
skinparam ParticipantPadding 5
skinparam shadowing false
hide footbox
title generating a recommendation
box "Client B"
participant "M.Customer B"
end box
box "Client A"
participant "M.Customer A"
end box
box "Server"
participant M.Collab
participant M.Recommend
end box
activate "M.Customer A"
activate "M.Customer B"
activate M.Collab
M.Collab -> M.Recommend : get_recommendation(configuration, preferences)
activate M.Recommend
M.Collab <-- M.Recommend : return recommendedFeatures
deactivate M.Recommend
par
M.Collab --> "M.Customer A" : broadcast (recommendedFeatures)
M.Collab --> "M.Customer B" : broadcast (recommendedFeatures)
end
@enduml