diff --git a/30_Thesis/sections/10_foundations.tex b/30_Thesis/sections/10_foundations.tex index 5ff91bf..f66d67b 100644 --- a/30_Thesis/sections/10_foundations.tex +++ b/30_Thesis/sections/10_foundations.tex @@ -234,6 +234,27 @@ For a group recommender system additional definitions are needed. The attitude o \todo[inline]{go more into detail about preference aggregation} + +\section{Base Recommender System} +\label{sec:Foundations:BaseSystem} + +\citeauthor{raabKollaborativeProduktkonfigurationEchtzeit2019}'s \cite{raabKollaborativeProduktkonfigurationEchtzeit2019} extends CAS Merlin Configurator in his thesis to allow simultaneous configuration. The extended architecture is shown in \autoref{fig:DesignImplementation:CollaborativeConfiguratorMerlin}. +He only makes changes to M.Customer which is renamed to M.Collab-Customer and introduces a new component M.Collab. + +\begin{figure} + \centering + \includegraphics[width=0.6\textwidth]{./figures/50_design_and_implementation/MerlinCollaborativeConfigurator.pdf} + \caption{Architecture of Collaborative Configurator Merlin \cite[Fig. 4.3]{raabKollaborativeProduktkonfigurationEchtzeit2019}} + \label{fig:DesignImplementation:CollaborativeConfiguratorMerlin} +\end{figure} + +\begin{description} + \item[M.Core] provides the base of the configurator. It checks the configuration against all rules in the database, provides possible alternatives if a change invalidates other parts of a configuration. The system relies on a CSP solver for valida tion and suggestion of alternatives. + \item[M.Model] is the editor to create products and rules. These rules can then be uploaded to M.Core. + \item[M.Collab] is a node.js server application that communicates with M.Core via REST-API and with M.Collab-Customer via WebSocket. It sits in between M.Collab-Customer and M.Core and handles all processing regarding collaborative configuration. + \item[M.Collab-Customer] a modified version of M.Customer that does all communication via WebSocket and does communicate with M.Collab instead of M.Core. M.Customer is the customer facing component. It allows a customer to configure a product or solution. +\end{description} + \FloatBarrier diff --git a/30_Thesis/sections/50_design_and_implementation.tex b/30_Thesis/sections/50_design_and_implementation.tex index 59ec127..f6afe68 100644 --- a/30_Thesis/sections/50_design_and_implementation.tex +++ b/30_Thesis/sections/50_design_and_implementation.tex @@ -3,28 +3,6 @@ This thesis is looking at a recommendation system for a configurator. Developing a configurator and a recommendation system for this thesis is infeasible. Therefore, the decision was made to use an existing configurator. In this thesis \emph{CAS Configurator Merlin} \cite{IndustrySpecificProduct2020} is extended. As this configurator does not allow group configuration a modified version is used that already has been extended by \citeauthor{raabKollaborativeProduktkonfigurationEchtzeit2019} \cite{raabKollaborativeProduktkonfigurationEchtzeit2019}. -\section{Base System} -\label{subsec:DesignImplementation:BaseSystem} - -\todo[inline]{move this section to foundations} - -\citeauthor{raabKollaborativeProduktkonfigurationEchtzeit2019}'s \cite{raabKollaborativeProduktkonfigurationEchtzeit2019} extends CAS Merlin Configurator in his thesis to allow simultaneous configuration. The extended architecture is shown in \autoref{fig:DesignImplementation:CollaborativeConfiguratorMerlin}. -He only makes changes to M.Customer which is renamed to M.Collab-Customer and introduces a new component M.Collab. - -\begin{figure} - \centering - \includegraphics[width=0.6\textwidth]{./figures/50_design_and_implementation/MerlinCollaborativeConfigurator.pdf} - \caption{Architecture of Collaborative Configurator Merlin \cite[Fig. 4.3]{raabKollaborativeProduktkonfigurationEchtzeit2019}} - \label{fig:DesignImplementation:CollaborativeConfiguratorMerlin} -\end{figure} - -\begin{description} - \item[M.Core] provides the base of the configurator. It checks the configuration against all rules in the database, provides possible alternatives if a change invalidates other parts of a configuration. The system relies on a CSP solver for valida tion and suggestion of alternatives. - \item[M.Model] is the editor to create products and rules. These rules can then be uploaded to M.Core. - \item[M.Collab] is a node.js server application that communicates with M.Core via REST-API and with M.Collab-Customer via WebSocket. It sits in between M.Collab-Customer and M.Core and handles all processing regarding collaborative configuration. - \item[M.Collab-Customer] a modified version of M.Customer that does all communication via WebSocket and does communicate with M.Collab instead of M.Core. M.Customer is the customer facing component. It allows a customer to configure a product or solution. -\end{description} - \FloatBarrier \section{Extended Configurator}