Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelSequenceAssessment.pdf =================================================================== diff -u Binary files differ Index: dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex =================================================================== diff -u -r115 -r146 --- dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 115) +++ dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 146) @@ -79,7 +79,9 @@ \section{DAM components} \label{sec:DamComponents} -\ProgramNamePlusSpace is part of the whole DAM system that contains several components. Please see \autoref{fig-DamComponents} for an overview of the components of DAM. In \citep{DAM_ArchitectureOverall} a description of the overall architecture of the DAM system can be found. +\ProgramNamePlusSpace is part of the whole DAM system that contains several components. +Please see \autoref{fig-DamComponents} for an overview of the components of DAM. +In \citep{DAM_ArchitectureOverall} a description of the overall architecture of the DAM system can be found. \begin{figure}[H] \begin{center} @@ -98,7 +100,9 @@ These can be seen in see \autoref{fig-DAMKernelComponents} All of the submodules inside the Main Modules are completely independent. -All of the submodules inside the Supporting Modules are also independent. But all these submodules can be used by each of the main modules. +All of the submodules inside the Supporting Modules are also independent. +But all these submodules can be used by each of the main modules. +The arrows show the allowed dependencies. \begin{figure}[H] \begin{center} @@ -114,8 +118,10 @@ \section{Design principles} \label{sec:DesignPrinciples} \begin{itemize} - \item No circular references between objects. When it is really unavoidable, then do it through a generic interface (e.g.\ IParentObject) - \item The calculation will support parallellization. So do not use global variables and avoid using statics. + \item No circular references between objects. + When it is really unavoidable, then do it through a generic interface (e.g.\ IParentObject) + \item The calculation will support parallellization. + So do not use global variables and avoid using statics. \item Failure mechanisms will be connected through wrapper classes, which will share a common IFailureMechanism interface \item Surfaceline adapter classes will share a common ISurfacelineAdapter interface \item The \ProgramNamePlusSpace must provide progress information of the calculation, so clients of the kernel can show a progressbar @@ -178,7 +184,7 @@ \includegraphics[width=12cm]{pictures/DAMKernelDataModelLocation.pdf} \end{center} - \caption{\small \ProgramNamePlusSpace kerenl Location object.} + \caption{\small \ProgramNamePlusSpace kernel Location object.} \label{fig-DAMKernelDataModelLocation} \end{figure} @@ -287,21 +293,56 @@ Adapts the surfaceline by adding a shoulder or enlarging the shouldeer on the inside of the dike. \paragraph*{Surfaceline Adapter NWO} Adapts the surfaceline by adding a NWO on a specifi place in the surfaceline. -\subsection{Failure mechanism Calculation Runner} +\subsection{Calculation Runner} +\paragraph*{Failure mechanism Calculation Runner} This submodule calculates a specific failure mechanism by calling the IFailureMechanism interface of the wrapper implementation. -\subsection{Design Calculation Runner} +\paragraph*{Design Calculation Runner} This submodule performs a design calculation for a specific failure mechanism by calling the IFailureMechanism interface and several surfaceline adapters through their ISurfacelineAdaptert interface. -\subsection{Operational Calculation Runner} +\paragraph*{Operational Calculation Runner} This submodule can perform a calculation based on sensor readings (as time-series). The load on the systems (the waternet) will be based on those sensor readings. This can be used in operational systems like DamLive. -\subsection{Probabilistic Calculation Runner} +\paragraph*{Probabilistic Calculation Runner} This submodule performs a probabilistic calculation for a specific location and failure mechanism. The outcome is a failure probability for that location and failure mechanism. -\subsection{Geometry creator} +\subsection{General submodules} +\paragraph*{Geometry creator} This submodule combines a surfaceline with a subsoil scenario. The output is a gemetry that can be used by the failure mechanisms to perform a calculation. -\subsection{Waternet creator} +\paragraph*{Waternet creator} This submodule determines the waternet that will be used by the failure mechanisms. At first only the DAM implementation will be used as a waternet creator. Later on new implementations can be made. E.g.\ specific for each failure mechanism, or an implementation based on a numerical model like DgFlow. \subsection{Scripting engine} To enable advanced users to experiment with how the \ProgramNamePlusSpace works a Python scripting engine is implemented as a submodule. The scripting engine has acces to the data model and the submodules through well defined interfaces. +\section{\ProgramNamePlusSpace sequence diagrams} \label{sec:DamKernelSequenceDiagrams} +In this section the sequence diagrams, showing the use of the submodules are shown. + +\subsection{Assessment} +\begin{figure}[H] + \begin{center} + \includegraphics[width=15cm]{pictures/DAMKernelSequenceAssessment.pdf} + \end{center} + + \caption{\small \ProgramNamePlusSpace Assessment sequence diagram.} + \label{fig-DAMKernelSequenceAssessment} +\end{figure} + +\subsection{Assessment Regional} +\begin{figure}[H] + \begin{center} + \includegraphics[width=15cm]{pictures/DAMKernelSequenceAssessmentRegional.pdf} + \end{center} + + \caption{\small \ProgramNamePlusSpace Regional assessment sequence diagram.} + \label{fig-DAMKernelSequenceAssessmentRegional} +\end{figure} + +\subsection{Design} +\begin{figure}[H] + \begin{center} + \includegraphics[width=15cm]{pictures/DAMKernelSequenceDesign.pdf} + \end{center} + + \caption{\small \ProgramNamePlusSpace Design sequence diagram.} + \label{fig-DAMKernelSequenceDesign} +\end{figure} + %------------------------------------------------------------------------------ \chapter{Literature} \label{chapterLiterature} Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelSequenceDesign.pdf =================================================================== diff -u Binary files differ Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelSequenceAssessmentRegional.pdf =================================================================== diff -u Binary files differ Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Design.uxf =================================================================== diff -u --- dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Design.uxf (revision 0) +++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Design.uxf (revision 146) @@ -0,0 +1,326 @@ + + + 10 + + UMLGeneric + + 90 + 160 + 20 + 170 + + +bg=yellow + + + + UMLGeneric + + 210 + 40 + 140 + 50 + + :Failure Mechanism +Calculator +bg=orange + + + + UMLGeneric + + 30 + 40 + 140 + 30 + + :Assessment Dikes +bg=orange + + + + UMLGeneric + + 370 + 40 + 140 + 50 + + :Geometry Creator +bg=orange + + + + UMLGeneric + + 530 + 40 + 140 + 50 + + :Waternet Creator +bg=orange + + + + UMLGeneric + + 690 + 40 + 140 + 50 + + :Failure Mechanism +Wrappers +bg=orange + + + + UMLGeneric + + 260 + 160 + 20 + 600 + + +bg=yellow + + + + Relation + + 260 + 80 + 30 + 100 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 100 + 210 + 180 + 30 + + lt=<<<- + 160.0;10.0;10.0;10.0 + + + Relation + + 100 + 260 + 180 + 30 + + lt=<<<- + 10.0;10.0;160.0;10.0 + + + UMLGeneric + + 420 + 160 + 20 + 130 + + +bg=yellow + + + + UMLGeneric + + 580 + 290 + 20 + 130 + + +bg=yellow + + + + UMLGeneric + + 740 + 430 + 20 + 130 + + +bg=yellow + + + + Relation + + 270 + 190 + 170 + 30 + + lt=<<<- + 150.0;10.0;10.0;10.0 + + + Relation + + 270 + 250 + 170 + 30 + + lt=<<<- + 10.0;10.0;150.0;10.0 + + + Relation + + 270 + 320 + 330 + 30 + + lt=<<<- + 310.0;10.0;10.0;10.0 + + + Relation + + 270 + 380 + 330 + 30 + + lt=<<<- + 10.0;10.0;310.0;10.0 + + + Relation + + 270 + 460 + 490 + 30 + + lt=<<<- + 470.0;10.0;10.0;10.0 + + + Relation + + 270 + 530 + 490 + 30 + + lt=<<<- + 10.0;10.0;470.0;10.0 + + + Relation + + 420 + 80 + 30 + 100 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 580 + 80 + 30 + 230 + + lt=. + 10.0;10.0;10.0;210.0 + + + Relation + + 90 + 60 + 30 + 120 + + lt=. + 10.0;10.0;10.0;100.0 + + + Relation + + 740 + 80 + 30 + 370 + + lt=. + 10.0;10.0;10.0;350.0 + + + UMLGeneric + + 850 + 40 + 140 + 50 + + :Surfaceline Adapters +bg=orange + + + + UMLGeneric + + 910 + 560 + 20 + 130 + + +bg=yellow + + + + Relation + + 910 + 80 + 30 + 500 + + lt=. + 10.0;10.0;10.0;480.0 + + + Relation + + 270 + 590 + 660 + 30 + + lt=<<<- + 640.0;10.0;10.0;10.0 + + + Relation + + 270 + 640 + 660 + 30 + + lt=<<<- + 10.0;10.0;640.0;10.0 + + Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf =================================================================== diff -u -r115 -r146 --- dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf (.../DAM kernel Components.uxf) (revision 115) +++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf (.../DAM kernel Components.uxf) (revision 146) @@ -4,28 +4,28 @@ UMLGeneric - 472 - 976 + 808 + 1232 232 64 symbol=component Surfaceline Adapter Height -group=9 +group=12 UMLGeneric - 152 + 144 448 208 64 symbol=component -Primary design calculation +Design calculation group=5 @@ -39,20 +39,20 @@ symbol=component -Primary assessment calculation +Assessment calculation group=4 UMLDeployment - 448 - 928 - 552 - 528 + 472 + 920 + 520 + 208 - Common modules -group=9 + Calculation Runners +group=10 @@ -63,7 +63,7 @@ 232 352 - Assessment Primary Dikes + Assessment Dikes group=4 @@ -112,52 +112,52 @@ UMLGeneric - 472 - 1056 + 808 + 1312 232 64 symbol=component Surfaceline Adapter Slope -group=9 +group=12 UMLGeneric - 720 - 1056 + 808 + 1472 232 64 symbol=component Surfaceline Adapter Shoulder -group=9 +group=12 UMLGeneric - 472 - 1136 + 488 + 960 232 64 symbol=component Failure mechanism Calculation Runner -group=9 +group=10 UMLDeployment 144 - 928 + 1184 280 - 528 + 368 Failure mechanism wrappers group=1 @@ -178,20 +178,20 @@ UMLDeployment - 136 + 128 408 248 352 - Design Primary Dikes + Design Dikes group=5 UMLGeneric 168 - 968 + 1224 232 64 @@ -205,7 +205,7 @@ UMLGeneric 168 - 1048 + 1304 232 64 @@ -219,7 +219,7 @@ UMLGeneric 168 - 1128 + 1384 232 64 @@ -232,59 +232,58 @@ UMLGeneric - 720 - 976 + 808 + 1392 232 64 symbol=component Surfaceline Adapter NWO (NEW) -group=9 +group=12 UMLGeneric - 720 - 1136 + 168 + 920 232 64 symbol=component Scripting engine -(NEW) -group=9 +(NEW) UMLGeneric - 720 - 1296 + 496 + 1224 232 64 symbol=component Geometry creator -group=9 +group=11 UMLGeneric - 720 - 1216 + 496 + 1304 232 64 symbol=component Waternet creator -group=9 +group=11 @@ -295,7 +294,7 @@ 232 352 - NWO Calculation Primary Dikes + NWO Calculation Dikes (NEW) group=6 @@ -310,7 +309,7 @@ symbol=component -Primary NWO calculation +NWO calculation group=6 @@ -330,8 +329,8 @@ 120 880 - 928 - 632 + 976 + 704 Supporting modules @@ -350,15 +349,15 @@ UMLGeneric - 472 - 1216 + 736 + 960 232 64 symbol=component Design Calculation Runner -group=9 +group=10 @@ -371,7 +370,7 @@ symbol=component -Primary operation calculation +Operational calculation group=8 @@ -383,36 +382,93 @@ 232 352 - Operational Primary Dikes + Operational Dikes group=8 UMLGeneric - 472 - 1296 + 488 + 1040 232 64 symbol=component Operation Calculation Runner -group=9 +group=10 UMLGeneric - 472 - 1376 + 736 + 1040 232 64 symbol=component Probabilistic Calculation Runner -group=9 +group=10 + + UMLDeployment + + 480 + 1184 + 280 + 368 + + General modules +group=11 + + + + UMLDeployment + + 784 + 1184 + 288 + 368 + + Surfaceline adapters +group=12 + + + + Relation + + 928 + 1120 + 24 + 80 + + lt=[=]-[<] + 10.0;10.0;10.0;80.0 + + + Relation + + 616 + 1120 + 24 + 80 + + lt=[=]-[<] + 10.0;10.0;10.0;80.0 + + + Relation + + 264 + 1040 + 224 + 160 + + lt=[=]-[<] + 260.0;10.0;10.0;180.0 + Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelComponents.pdf =================================================================== diff -u -r115 -r146 Binary files differ Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment.uxf =================================================================== diff -u --- dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment.uxf (revision 0) +++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment.uxf (revision 146) @@ -0,0 +1,269 @@ + + + 10 + + UMLGeneric + + 90 + 160 + 20 + 170 + + +bg=yellow + + + + UMLGeneric + + 210 + 40 + 140 + 50 + + :Failure Mechanism +Calculator +bg=orange + + + + UMLGeneric + + 30 + 40 + 140 + 30 + + :Assessment Dikes +bg=orange + + + + UMLGeneric + + 370 + 40 + 140 + 50 + + :Geometry Creator +bg=orange + + + + UMLGeneric + + 530 + 40 + 140 + 50 + + :Waternet Creator +bg=orange + + + + UMLGeneric + + 690 + 40 + 140 + 50 + + :Failure Mechanism +Wrappers +bg=orange + + + + UMLGeneric + + 260 + 160 + 20 + 450 + + +bg=yellow + + + + Relation + + 260 + 80 + 30 + 100 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 100 + 210 + 180 + 30 + + lt=<<<- + 160.0;10.0;10.0;10.0 + + + Relation + + 100 + 260 + 180 + 30 + + lt=<<<- + 10.0;10.0;160.0;10.0 + + + UMLGeneric + + 420 + 160 + 20 + 130 + + +bg=yellow + + + + UMLGeneric + + 580 + 290 + 20 + 130 + + +bg=yellow + + + + UMLGeneric + + 740 + 430 + 20 + 130 + + +bg=yellow + + + + Relation + + 270 + 190 + 170 + 30 + + lt=<<<- + 150.0;10.0;10.0;10.0 + + + Relation + + 270 + 250 + 170 + 30 + + lt=<<<- + 10.0;10.0;150.0;10.0 + + + Relation + + 270 + 320 + 330 + 30 + + lt=<<<- + 310.0;10.0;10.0;10.0 + + + Relation + + 270 + 380 + 330 + 30 + + lt=<<<- + 10.0;10.0;310.0;10.0 + + + Relation + + 270 + 460 + 490 + 30 + + lt=<<<- + 470.0;10.0;10.0;10.0 + + + Relation + + 270 + 530 + 490 + 30 + + lt=<<<- + 10.0;10.0;470.0;10.0 + + + Relation + + 420 + 80 + 30 + 100 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 580 + 80 + 30 + 230 + + lt=. + 10.0;10.0;10.0;210.0 + + + Relation + + 90 + 60 + 30 + 120 + + lt=. + 10.0;10.0;10.0;100.0 + + + Relation + + 740 + 80 + 30 + 370 + + lt=. + 10.0;10.0;10.0;350.0 + + Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf =================================================================== diff -u --- dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf (revision 0) +++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf (revision 146) @@ -0,0 +1,384 @@ + + + 8 + + UMLGeneric + + 216 + 240 + 16 + 136 + + +bg=yellow + + + + UMLGeneric + + 312 + 144 + 112 + 40 + + :Failure Mechanism +Calculator +bg=orange + + + + UMLGeneric + + 168 + 144 + 112 + 24 + + :Assessment Dikes +bg=orange + + + + UMLGeneric + + 440 + 144 + 112 + 40 + + :Sceanrio Selector +bg=orange + + + + UMLGeneric + + 568 + 144 + 112 + 40 + + :Geometry Creator +bg=orange + + + + UMLGeneric + + 696 + 144 + 112 + 40 + + :Waternet Creator +bg=orange + + + + UMLGeneric + + 352 + 240 + 16 + 552 + + +bg=yellow + + + + Relation + + 352 + 176 + 24 + 80 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 224 + 280 + 144 + 24 + + lt=<<<- + 160.0;10.0;10.0;10.0 + + + Relation + + 224 + 320 + 144 + 24 + + lt=<<<- + 10.0;10.0;160.0;10.0 + + + UMLGeneric + + 480 + 240 + 16 + 104 + + +bg=yellow + + + + UMLGeneric + + 608 + 344 + 16 + 104 + + +bg=yellow + + + + UMLGeneric + + 736 + 456 + 16 + 104 + + +bg=yellow + + + + Relation + + 360 + 264 + 136 + 24 + + lt=<<<- + 150.0;10.0;10.0;10.0 + + + Relation + + 360 + 312 + 136 + 24 + + lt=<<<- + 10.0;10.0;150.0;10.0 + + + Relation + + 360 + 368 + 264 + 24 + + lt=<<<- + 310.0;10.0;10.0;10.0 + + + Relation + + 360 + 416 + 264 + 24 + + lt=<<<- + 10.0;10.0;310.0;10.0 + + + Relation + + 360 + 480 + 392 + 24 + + lt=<<<- + 470.0;10.0;10.0;10.0 + + + Relation + + 360 + 536 + 392 + 24 + + lt=<<<- + 10.0;10.0;470.0;10.0 + + + Relation + + 480 + 176 + 24 + 80 + + lt=. + 10.0;10.0;10.0;80.0 + + + Relation + + 608 + 176 + 24 + 184 + + lt=. + 10.0;10.0;10.0;210.0 + + + Relation + + 216 + 160 + 24 + 96 + + lt=. + 10.0;10.0;10.0;100.0 + + + Relation + + 736 + 176 + 24 + 296 + + lt=. + 10.0;10.0;10.0;350.0 + + + UMLGeneric + + 824 + 144 + 112 + 40 + + :Failure Mechanism +Wrappers +bg=orange + + + + UMLGeneric + + 952 + 144 + 112 + 40 + + :Schematization +Factor Calculator +bg=orange + + + + UMLGeneric + + 872 + 568 + 16 + 104 + + +bg=yellow + + + + UMLGeneric + + 992 + 680 + 16 + 104 + + +bg=yellow + + + + Relation + + 872 + 176 + 24 + 408 + + lt=. + 10.0;10.0;10.0;490.0 + + + Relation + + 992 + 176 + 24 + 520 + + lt=. + 10.0;10.0;10.0;630.0 + + + Relation + + 360 + 584 + 528 + 24 + + lt=<<<- + 640.0;10.0;10.0;10.0 + + + Relation + + 360 + 696 + 648 + 24 + + lt=<<<- + 790.0;10.0;10.0;10.0 + + + Relation + + 360 + 632 + 528 + 24 + + lt=<<<- + 10.0;10.0;640.0;10.0 + + + Relation + + 360 + 752 + 648 + 24 + + lt=<<<- + 10.0;10.0;790.0;10.0 + +