Index: doc/trunk/DAM - Architecture Overall/pictures/DamSVNClientLayout.png =================================================================== diff -u -r57 -r59 Binary files differ Index: doc/trunk/DAM - Architecture Overall/DAM - Architecture Overall.tex =================================================================== diff -u -r57 -r59 --- doc/trunk/DAM - Architecture Overall/DAM - Architecture Overall.tex (.../DAM - Architecture Overall.tex) (revision 57) +++ doc/trunk/DAM - Architecture Overall/DAM - Architecture Overall.tex (.../DAM - Architecture Overall.tex) (revision 59) @@ -92,15 +92,19 @@ \begin{table}[H] %\caption{xxx} %\label{xxx} -\begin{tabular}{|p{40mm}|p{\textwidth-40mm-24pt}|} \hline +\begin{tabular}{|p{60mm}|p{80mm}|} \hline \textbf{Title} & \textbf{Content} \\ \hline \ProgramNamePlusSpace - Architecture Overall \newline \citep{DAM_ArchitectureOverall} & Description of overall architecture of \ProgramNamePlusSpace and its components. \\ \hline \ProgramNamePlusSpace Kernel - Technical Design \newline \citep{DAMKernel_TechnicalDesign} & Description of the implementation of the technical design of \ProgramName. \\ \hline +\ProgramNamePlusSpace Kernel - Technical documentation \newline \citep{DAMKernel_TechnicalDocumentation} & Description of the arguments and usage of different software components, generated from in-line comment with Doxygen. \\ \hline \ProgramNamePlusSpace Kernel - Test Plan \newline \citep{DAMKernel_TestPlan} & Description of the different regression and acceptation tests, including target values. \\ \hline \ProgramNamePlusSpace Kernel - Test Report \newline \citep{DAMKernel_TestReport} & Description of the test results (benchmarks and test scripts). \\ \hline \ProgramNamePlusSpace UI - Functional Design \newline \citep{DAMUI_FunctionalDesign} & Description of the requirements and functional design. \\ \hline -\ProgramNamePlusSpace UI - User Manual \newline \citep{DAMUI_Manual} & Description of the different functionalites available in the \textit{User Interface} and background information. \\ \hline +\ProgramNamePlusSpace UI - Technical Design \newline \citep{DAMUI_TechnicalDesign} & Description of the requirements and functional design. \\ \hline \ProgramNamePlusSpace UI - Technical documentation \newline \citep{DAMUI_TechnicalDocumentation} & Description of the arguments and usage of different software components, generated from in-line comment with Doxygen. \\ \hline +\ProgramNamePlusSpace UI - Test Plan \newline \citep{DAMUI_TestPlan} & Description of the different regression and acceptation tests, including target values. \\ \hline +\ProgramNamePlusSpace UI - Test Report \newline \citep{DAMUI_TestReport} & Description of the test results (benchmarks and test scripts). \\ \hline +\ProgramNamePlusSpace UI - User Manual \newline \citep{DAMUI_Manual} & Description of the different functionalites available in the \textit{User Interface} and background information. \\ \hline \end{tabular} \caption{\small \ProgramNamePlusSpace system documents.} \label{tbl-Documents} @@ -110,9 +114,9 @@ %------------------------------------------------------------------------------ \chapter{\ProgramNamePlusSpace and its components} \label{chapter2} -\ProgramNamePlusSpace contains several components. Please see Figure ~\ref{fig-DamComponents} for an overview of the components. +\ProgramNamePlusSpace contains several components. Please see \autoref{fig-DamComponents} for an overview of the components. -\begin{figure}[!h] +\begin{figure}[H] \begin{center} \includegraphics[width=15cm]{pictures/DamComponents.pdf} \end{center} @@ -122,9 +126,9 @@ \end{figure} \section{\ProgramNamePlusSpace clients} \label{sec:2.1} -\ProgramNamePlusSpace clients are the modules that mostly interact with the user or sometimes with another system. These can be full graphical user interfaces (like DAM UI as shown in Figure ~\ref{fig-DamUIMainForm} and DamLive Showcase ), commandline parameter tools (like KernelCompariosnRunner.exe) or a module that can be used by other systems (like DAMLive, that is to be used as a module in a FEWS system). +\ProgramNamePlusSpace clients are the modules that mostly interact with the user or sometimes with another system. These can be full graphical user interfaces (like DAM UI as shown in \autoref{fig-DamUIMainForm} and DamLive Showcase ), commandline parameter tools (like KernelCompariosnRunner.exe) or a module that can be used by other systems (like DAMLive, that is to be used as a module in a FEWS system). -\begin{figure}[!h] +\begin{figure}[H] \begin{center} \includegraphics[width=15cm]{pictures/DamUIMainForm.png} \end{center} @@ -139,7 +143,7 @@ \section{\ProgramNamePlusSpace kernel} \label{sec:2.2} The \ProgramNamePlusSpace kernel is the engine for the \ProgramNamePlusSpace computation. It contains several submodules, depending on which computation has to be made. -As can be seen in Figure ~\ref{fig-DamComponents} the submodules are +As can be seen in \autoref{fig-DamComponents} the submodules are \begin{itemize} \item Assessment regional dikes \item Design primary dikes @@ -154,7 +158,9 @@ %------------------------------------------------------------------------------ \chapter{Architectural Choices} \label{chapter3} -\section{Moduel dependencies} \label{sec:3.1} +\section{Module dependencies} \label{sec:3.1} +As can be seen in \autoref{fig-DamComponents} the arrows pointing between the main parts of the system are only 1 way. This means that e.g. the \ProgramNamePlusSpace clients may address the \ProgramNamePlusSpace kernel, but the \ProgramNamePlusSpace kernel may not address the \ProgramNamePlusSpace clients. + \section{External libraries and components} \label{sec:3.2} \ProgramNamePlusSpace uses third-party libraries and components. Only open sources and free components, that are free to redistribute are allowed to be used. @@ -169,23 +175,23 @@ \section{\ProgramNamePlusSpace UI (DSL)} \label{sec:3.3} This client uses the full Delta Shell Light (DSL) library \begin{itemize} - \item DSL-Core - \item DSL-Probabilistic - \item DSL-Geographic - \item DSL-Geo - \item DSL-GeoIO - \item DSL-FormsStandard - \item DSL-FormsMaps - \item DSL-FormsGeo + \item DSL-Core: standard library with general common functionality + \item DSL-Probabilistic: probabilistic functionality + \item DSL-Geographic: GIS functionality + \item DSL-Geo: geotechnics functionality + \item DSL-GeoIO: geotechnics import and database functionality + \item DSL-FormsStandard: standard UI functionality + \item DSL-FormsMaps: extend FormsStandard with GIS functionality + \item DSL-FormsGeo: extend FormsStandard with geotechnical functionality \end{itemize} Other libraries that are used are \begin{itemize} - \item Dot Spatial - \item Commandline Parser - \item Lumenworks - \item SQLite - \item Firebird + \item Dot Spatial: GIS library + \item Commandline Parser: library for parsing commandline options + \item Lumenworks: CSV import library + \item SQLite: SQLite database access library + \item Firebird: Firebird database access library \end{itemize} \section{\ProgramNamePlusSpace kernel} \label{sec:3.4} @@ -198,20 +204,23 @@ Other libraries that are used are \begin{itemize} - \item Math.Net + \item Math.Net: mathematical library \end{itemize} %------------------------------------------------------------------------------ \chapter{Version control} \label{chapter4} -For the version control system, Subversion with the Tortoise client will be used. The layout of the SVN repository will reflect the components of \ProgramNamePlusSpace as shown in Figure ~\ref{fig-DamComponents}. +For the version control system, Subversion with the Tortoise client will be used. The layout of the SVN repository will reflect the components of \ProgramNamePlusSpace as shown in \autoref{fig-DamComponents}. -In figure ~\ref{fig-SVNMainLayout} the main layout is shown. +The failure mechanisms are not part of the \ProgramNamePlusSpace repository and will be stored in their own repositories -The failure mechanisms are not part of the \ProgramNamePlusSpace repository and will be stored in their own repositories +\section{\ProgramNamePlusSpace repository main layout} \label{sec:14.1} -\begin{figure}[!h] +In \autoref{fig-SVNMainLayout} the main layout is shown. + + +\begin{figure}[H] \begin{flushleft} \includegraphics{pictures/DamSVNMainLayout.png} \end{flushleft} @@ -220,10 +229,23 @@ \label{fig-SVNMainLayout} \end{figure} +The 3 main parts are +\begin{itemize} + \item dam clients - the client applications that use the \ProgramNamePlusSpace kernel. + \item dam kernel - the computational kernel of \ProgramNamePlusSpace. + \item doc - general documentation for \ProgramNamePlusSpace (like this document). +\end{itemize} +Each of these parts has its own trunk/branches/tags layout. -Each \ProgramNamePlusSpace client has its own entry in the clients map. In figure ~\ref{fig-SVNClientLayout} the layout of the \ProgramNamePlusSpace clients map is shown. +The map "'dam tools"' is for storing independent tools that are not part of \ProgramNamePlusSpace itself, but support the work processes of \ProgramNamePlusSpace (e.g. Dam Edit Design). -\begin{figure}[!h] +The map "`project data"' is for archiving \ProgramNamePlusSpace project data. + +\section{\ProgramNamePlusSpace repository clients layout} \label{sec:4.2} + +Each \ProgramNamePlusSpace client has its own entry in the clients map. In \autoref{fig-SVNClientLayout} the layout of the \ProgramNamePlusSpace clients map is shown. + +\begin{figure}[H] \begin{flushleft} \includegraphics{pictures/DamSVNClientLayout.png} \end{flushleft} @@ -232,9 +254,27 @@ \label{fig-SVNClientLayout} \end{figure} -Each part of the repository has its own trunk/branches/tags layout. -So the full layout of the \ProgramNamePlusSpace repository will be as shown in figure ~\ref{fig-SVNLayout}. -\begin{figure}[!h] +The map "`dam clients"' has a trunk/branches/tags layout. + +The currently known applications are +\begin{itemize} + \item Dam UI - the current \ProgramNamePlusSpace desktop application. + \item DamLive - the current runner for the Fews operational system. + \item DamLiveShowcase - a demo application to show DamLive with live sensors. + \item KernelComparisonRunner - a commandline utility for comparing the results of different macrostability kernels. +\end{itemize} + +The following items are shared projects for the applications +\begin{itemize} + \item Deltares.Dam.Data + \item Deltares.Dam.Forms. +\end{itemize} + + +\section{\ProgramNamePlusSpace repository full layout} \label{sec:4.3} + +The full layout of the \ProgramNamePlusSpace repository will be as shown in \autoref{fig-SVNLayout}. +\begin{figure}[H] \begin{flushleft} \includegraphics{pictures/DamSVNLayout.png} \end{flushleft} Index: doc/trunk/DAM - Architecture Overall/pictures/DamSVNLayout.png =================================================================== diff -u -r57 -r59 Binary files differ Index: doc/trunk/DAM - Architecture Overall/DAM - Architecture Overall.pdf =================================================================== diff -u -r57 -r59 Binary files differ Index: doc/trunk/DAM_references/dam_references.bib =================================================================== diff -u -r55 -r59 --- doc/trunk/DAM_references/dam_references.bib (.../dam_references.bib) (revision 55) +++ doc/trunk/DAM_references/dam_references.bib (.../dam_references.bib) (revision 59) @@ -104,4 +104,37 @@ timestamp = {2016.04.12}, } +@TechReport{DAMUI_TestPlan, + author = {Trompille, V.}, + title = {DAM UI - Test Plan}, + institution = {Deltares}, + year = {2017}, + date = {2017-01-31}, + month = {December}, + owner = {trp}, + timestamp = {2016.04.12}, +} + +@TechReport{DAMUI_TestReport, + author = {Trompille, V.}, + title = {DAM UI - Test Report}, + institution = {Deltares}, + year = {2017}, + date = {2017-01-31}, + month = {May}, + owner = {trp}, + timestamp = {2016.04.12}, +} + +@TechReport{DAMUI_TechnicalDesign, + author = {The, T.}, + title = {DAM UI - Technical Design}, + institution = {Deltares}, + year = {2017}, + date = {2017-01-31}, + month = {May}, + owner = {trp}, + timestamp = {2016.04.12}, +} + @Comment{jabref-meta: databaseType:biblatex;}