Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ApplicationOptions.tex =================================================================== diff -u --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ApplicationOptions.tex (revision 0) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ApplicationOptions.tex (revision 6509) @@ -0,0 +1,47 @@ +\chapter{Application options}\label{sec:ApplicationOptions} + +These are requirements for adapting the User Interface of \ProgramName. +\begin{itemize} + \item Multi-language. + \item Multi-core calculation. + \item Changing units. + \item Real-time validation. + \item Calculation log. + \item Undo-Redo. +\end{itemize} + +\section{Multi-language}\label{sec:USMultiLanguage} +It should be possible to change the display language of the User Interface. +Two options are possible. +\begin{itemize} + \item Dutch. + \item English. +\end{itemize} + +\section{Multi-core calculation}\label{sec:} +It should be possible to use multiple processor cores during the calculations to decrease the total calculation time. + +\section{Changing units}\label{sec:USUnits} +It should be possible to change the units that are used in the User Interface. +Below a list of quantities and their units. +\begin{itemize} + \item Fraction (÷, \%, ‰, ppm). + \item Length (m, cm, mm, km, inch, ft). + \item Tiny length (mm, µm). + \item Angle (deg, rad, grad, tan, cot). + \item Weight (Kn/m3, N/m3, MN/m3, lb/in3, lb/ft3). + \item Pressure per length (Kn/m3, N/m3, kN/cm3, lb/in3, lb/ft3, kip/inch3, MPa/m). + \item Pressure (Kn/m2, N/m2, Pa, KPa, MPa, kN/cm2, psi). + \item Permeability (m/s, m/min, m/h, m/d, cm/s, mm/s). +\end{itemize} + +\section{Real-time validation}\label{sec:USRealTimeValidation} +The input data should be validated during the use of the application (real-time/on the fly) given the (calculation) settings. +The validation results are shown in a validation overview. + +\section{Calculation log}\label{sec:USCalculationLog} +After the calculaton a log of the errors and warning that are generated during the calculation will be shown. + +\section{Undo-Redo}\label{sec:USUndoRedo} +It should be possible to undo and redo changes of the data in the User Interface. + Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/CreateProject.tex =================================================================== diff -u --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/CreateProject.tex (revision 0) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/CreateProject.tex (revision 6509) @@ -0,0 +1,25 @@ +\chapter{Create Project}\label{sec:USOpenProject} + +The user can create a project by defining different sources, see \autoref{sec:USDataFormat} and \autoref{sec:USDataCombi} + +\section{Create Design project}\label{sec:USCreateDesignProject} +When the data sources are correctly defined the user should be able to create a Design project. +If the creation fails a log should display the problems encountered. +This project can be used to perform a calculation of safety factors in different locations. \newline +It is also possible to make a calculation where the user defines a required safety factor +and when this value is not met with the initial calculation, then a new surfaceline is determined, +which will result in a safety factor that complies to the required value. + +\section{Create Calamity project}\label{sec:USCreateCalamityProject} +When the data sources are correctly defined the user should be able to create a Calamity project. +If the creation fails a log should display the problems encountered. +This project can be used to perform a calculation of safety factors during a certain amount of time. +A time series of waterlevels has to be provided for this calculation. + +\section{DAMLive configuration}\label{sec:USDAMLiveConfiguration} +When the data sources are correctly defined and a separate configuration file for the sensor data is provided, +the user should be able to create a DamLive configuration. +If the creation fails a log should display the problems encountered. +This configuration can be used in DamLive, which will be part of an operational system, assessing in real-time the condition of the dikes in the specified locations. An example of such an operational system is FEWS. + + Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM UI - Functional Design.tex =================================================================== diff -u -r3579 -r6509 --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM UI - Functional Design.tex (.../DAM UI - Functional Design.tex) (revision 3579) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM UI - Functional Design.tex (.../DAM UI - Functional Design.tex) (revision 6509) @@ -15,19 +15,19 @@ \title{\ProgramName} \subtitle{Functional Design} -\projectnumber{1210702-000} -\client{Deltares - Geo engineering DKS} -\reference{1210702-000-GEO-0003} +\projectnumber{11211482-003} +\client{Deltares - GFS} +\reference{-} \classification{-} -\author{Irene van der Zwan, John Bokma} +\author{Irene van der Zwan, John Bokma, Bernard van der Kolk, Tom The} \partner{-} \contact{john.bokma@deltares.nl} \documentid{-} \organisationi{Deltares} \publisheri{Deltares - DSC} -\date{April 2022} -\version{0.2} +\date{June 2025} +\version{0.3} \keywords{Dike, safety assessment, design, software, macro stability, piping} @@ -36,35 +36,29 @@ \textbf{\footnotesize{Samenvatting}} \newline Dit document bevat het functioneel ontwerp voor \ProgramName, een software module die een gebruiker in staat stelt om voor een dijktraject berekeningen uit te voeren voor verschillende faalmechanismen, waaronder macrostabiliteit en piping.} -\versioni{0.1} -\datei{sep 2019} -\authori{Irene van der Zwan} -\revieweri{Kin Sun Lam \newline Andr\'e Grijze} -\approvali{Leo voogt} +\versioni{0.3} +\datei{June 2025} +\authori{Bernard van der Kolk \newline Tom The} +\revieweri{Virginie Trompille} +\approvali{Joël van den Berg} -\versionii{0.2} -\dateii{April 2022} -\authorii{Irene van der Zwan \newline John Bokma} -\reviewerii{Kin Sun Lam \newline Dennis Tang} -\approvalii{Goaitske de Vries} - \status{draft} \disclaimer{This is a draft report, intended for discussion purposes only. No part of this report may be relied upon by either principals or third parties.} \deltarestitle \include{DAM_UI_FO} +\include{CreateProject} \include{OpenProject} \include{DataFormat} \include{DataCombination} -% ToDo MWDAM-1717 DAMLiveConfiguration.tex is not present in the repository. -%\include{DAMLiveConfiguration} \include{DataDisplay} \include{DataEdit} \include{CalcSettings} +\include{Calculation} \include{ResultsDisplay} \include{DataExport} -\include{DSoilmodel} +\include{ApplicationOptions} \include{Literature} Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/OpenProject.tex =================================================================== diff -u -r2248 -r6509 --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/OpenProject.tex (.../OpenProject.tex) (revision 2248) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/OpenProject.tex (.../OpenProject.tex) (revision 6509) @@ -1,14 +1,12 @@ -\chapter{Open Project}\label{sec:USOpenProject} +\chapter{Save and Open Project}\label{sec:USSavingOpeningProject} -To be able to open a project, the user must be able to build a project, to save it and to open it. -\section{Building a project}\label{sec:BuildingProject} -The user can define a project by defining different sources, see \autoref{sec:USDataFormat} and \autoref{sec:USDataCombi} - -\section{Saving a project} \label{sec:SavingProject} +\section{Saving a project} The project can be saved at a location defined by the user. -\section{Opening a project}\label{sec:OpeningProject} -The user must be able to open an excisting project. When calculations were made, also the calculation results must be shown. -When a project is calculated in a previous version of DAM (i.e. DAM 18.1 instead of 19.1), the calculations must not be shown because the calculations can be outdated due to newer versions of used kernels. +\section{Opening a project} +The user must be able to open an existing project. When calculations were made, also the calculation results must be shown. +When a project is created in a previous version of DAM (i.e. DAM 18.1 or 19.1), the project cannot be opened and an error message is shown. +Recreate the project again with the original source data. +See \autoref{sec:USCreateDesignProject} or \autoref{sec:USCreateCalamityProject}. Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/Calculation.tex =================================================================== diff -u --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/Calculation.tex (revision 0) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/Calculation.tex (revision 6509) @@ -0,0 +1,18 @@ +\chapter{Calculation}\label{sec:USCalculation} + +There a different calculations possible, depending on the type of the project. + +\section{Perform Design calculation - No adaption}\label{sec:USCalculationDesignNoAdaption} +It should be possible to make a calculation in a Design project based on the input parameters. +The most important outcome of the calculation are the safety factors. + +\section{Perform Design calculation - With adaption}\label{sec:USCalculationDesignWithAdaption} +It should be possible to make calculations in a Design project with adaption of the geometry of the dike, +if the calculated safety factor is lower than the required safety factor. +The adaptation must have the options to increase the crest, change the angle of the slope, +create a berm or a combination of these options according to given settings. + +\section{Perform Calamity calculation}\label{sec:USCalculationCalamity} +It should be possible to make a calculation in a Calamity project. +After importing a time series of water levels the safety factors will be calculated for all locations and for all time steps. + Fisheye: Tag 6509 refers to a dead (removed) revision in file `DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DSoilmodel.tex'. Fisheye: No comparison available. Pass `N' to diff? Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ResultsDisplay.tex =================================================================== diff -u -r3587 -r6509 --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ResultsDisplay.tex (.../ResultsDisplay.tex) (revision 3587) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/ResultsDisplay.tex (.../ResultsDisplay.tex) (revision 6509) @@ -2,6 +2,8 @@ The user must be able to view the results of the calculations within \ProgramName. +\section{Display results in a table}\label{sec:USDisplayResultsTable} + The overall results at main level must be presented in a table so these can be exported and/or copy pasted in an excel sheet. Unless stated otherwise, all results are read only. @@ -11,7 +13,7 @@ An optional graphic presentation of the results must be offered when applicable (e.g. the picture of the final slip circle for a bishop stability calculation). It must also be possible to open/recalculate the individual result in the original program from within \ProgramName when applicable. -\section{Stabilty results} +\subsection{Stabilty results} The results presented in the table for the stability calculations must be (at least but not limited to): \begin{itemize} \item name of the location @@ -33,7 +35,7 @@ In the technical design (\citep{DAMUI_TechnicalDesign}), a full list of all required results is presented. -\section{Piping results} +\subsection{Piping results} The results per individual calculation presented using a table for the piping calculations must be (at least but not limited to): \begin{itemize} \item name of the location @@ -95,3 +97,17 @@ are written to an external file per location, scenario, profile. Note that the name of the file must be added to the individual results per calculation as part of the damx project file. The data in this file will be used to display the adapted surfaceline graphically when this is available. For this purpose, the file should be read upon selection of the result. + +\section{Display results in a graph view}\label{sec:USDisplayResultsGraphic} +Based on the results of the calculation it should be possible to display the following views per calculated (design and/or subsoil) scenario per location. +\begin{itemize} + \item The adapted surfaceline when a design calculation has been performed with adaption. + \item The resulting slipcircle when a stability calculation has been performed. +\end{itemize} + +\section{Open individual D-Stability projects}\label{sec:USOpenDStability} +When a stability calculation has been performed it should be possible to open the stability calculation +in D-Stability for each calculated (design and/or subsoil) scenario per location. +D-Stability should be installed on the same system and is not part of \ProgramName. + + Index: DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM_UI_FO.tex =================================================================== diff -u -r6508 -r6509 --- DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM_UI_FO.tex (.../DAM_UI_FO.tex) (revision 6508) +++ DamClients/DamUI/trunk/doc/DAM UI - Functional Design/DAM_UI_FO.tex (.../DAM_UI_FO.tex) (revision 6509) @@ -48,6 +48,25 @@ \label{sec:Revision01} First concept of the document. +\subsection{Revision 0.3} +\label{sec:Revision03} +Added more functional requirements. +\begin{itemize} + \item Create Design project. + \item Create Calamity project + \item Perform Design calculation - No adaption. + \item Perform Design calculation - With adaptionPerform Design calculation - With adaption. + \item Display results in graphic view. + \item Open individual D-Stability projects. + \item Multi-language. + \item Multi-core calculation. + \item Changing units. + \item Real-time validation. + \item Calculation log. + \item Undo-Redo. +\end{itemize} + + \chapter{Non-functional requirements} \chapter{Functional requirements} @@ -67,79 +86,89 @@ \section{User story Create Design project} As a geotechnical engineer I want to create a Design project in which I can import project information and perform calculations with certain settings and for given situations. I can either just calculate the safety factors of the current situation or design (adapt geometry) to a required safety factor. -%The design of this functionality is described in \autoref{sec:DesignConfiguration}. +The design of this functionality is described in \autoref{sec:USCreateDesignProject}. \section{User story Create Calamity project} As a geotechnical engineer I want to create a Calamity project in which I can import project information and perform calculations based on a time serie of water levels and evaluate the results. -%The design of this functionality is described in \autoref{sec:CalamityConfiguration}. +The design of this functionality is described in \autoref{sec:USCreateCalamityProject}. -% ToDo MWDAM-1717 DAMLiveConfiguration.tex is not present in the repository. \section{User story DAMLive configuration} As a geotechnical engineer I want to make a DAMLive configuration, so that I can make calculations with DAM engine, using sensors for the input of piezometric lines. -%The design of this functionality is described in \autoref{sec:DAMLiveConfiguration}. +The design of this functionality is described in \autoref{sec:USDAMLiveConfiguration}. -\section{User story Open project} -As a geotechnical engineer I want to open existing projects to see what data is used and which calculations are made with what result. +\section{User story Save and Open project} +As a geotechnical engineer I want to save the current state of a project and open existing projects to see what data is used and which calculations are made with what result. +The design of this functionality is described in \autoref{sec:USSavingOpeningProject}. \section{User story Data display} -As a geotechnical engineer I want to see the data per location in tables, cross section and map view, so I can check the data before calculation. The design of this functionality is described in \autoref{sec:USDataDisplay}. +As a geotechnical engineer I want to see the data per location in tables, cross section and map view, +so I can check the data before calculation. +The design of this functionality is described in \autoref{sec:USDataDisplay}. \section{User story Data editing} -As a geotechnical engineer I want to edit the data per location, so I can adapt the data before calculation. The design of this functionality is described in \autoref{sec:USDataEdit}. +As a geotechnical engineer I want to edit the data per location, so I can adapt the data before calculation. +The design of this functionality is described in \autoref{sec:USDataEdit}. \section{User story Calculation settings} As a geotechnical engineer I want to see and be able to adapt the calculation settings, so I can decide what calculations are made. The design of this functionality is described in \autoref{sec:USCalcSettings}. \section{User story Perform Design calculation - No adaption} -As a geotechnical engineer I want to be able to make a calculation based on the input parameters. The most important outcome of the calculation are the safety factors. -%The design of this functionality is described in \autoref{sec:CalculationDesignNoAdaption}. +As a geotechnical engineer I want to be able to make a calculation in a Design project based on the input parameters. +The most important outcome of the calculation are the safety factors. +The design of this functionality is described in \autoref{sec:USCalculationDesignNoAdaption}. \section{User story Perform Design calculation - With adaption} -As a geotechnical engineer I want to be able to make calculations with adaption of the geometry of the dike +As a geotechnical engineer I want to be able to make calculations in a Design project +with adaption of the geometry of the dike if the calculated safety factor is lower than the required safety factor. The adaptation must have the options to increase the crest, change the angle of the slope, create a berm or a combination of these options according to given settings. -%The design of this functionality is described in \autoref{sec:CalculationDesignWithAdaption}. +The design of this functionality is described in \autoref{sec:USCalculationDesignWithAdaption}. +\section{User story Perform Calamity calculation} +As a geotechnical engineer I want to be able to make a calculation in a Calamity project. +After importing a time series of water levels the safety factors will be calculated for all locations and for all time steps. +The design of this functionality is described in \autoref{sec:USCalculationCalamity}. + \section{User story Display results in table form} As a geotechnical engineer I want to see the results of the calculations, so I can evaluate the calculations. -The design of this functionality is described in \autoref{sec:USDisplayResults}. +The design of this functionality is described in \autoref{sec:USDisplayResultsTable}. \section{User story Display results in graphic view} As a geotechnical engineer I want to see the results of the calculations in a graphic view, so I can evaluate the calculations. This includes the adapted surfaceline and the resulting slipcircle. -%The design of this functionality is described in \autoref{sec:USDisplayResultsGraphic}. +The design of this functionality is described in \autoref{sec:USDisplayResultsGraphic}. \section{User story Export data} As a geotechnical engineer I want to export data as tables (CSV-format) and/or shapes, so I can use the data for other purposes. The design of this functionality is described in \autoref{sec:USDataExport}. \section{User story Open individual D-Stability projects} As a geotechnical engineer I want to be able to open each individual stability calculation in D-Stability. -%The design of this functionality is described in \autoref{sec:OpenDStability}. +The design of this functionality is described in \autoref{sec:USOpenDStability}. -\section{User story multi-language} +\section{User story Multi-language} As a geotechnical engineer I want to be able to set the language of the User Interface to Dutch or English. -%The design of this functionality is described in \autoref{sec:MultiLanguage}. +The design of this functionality is described in \autoref{sec:USMultiLanguage}. -\section{User story multi-core calculation} +\section{User story Multi-core calculation} As a geotechnical engineer I want to be use multiple processor cores during the calculations to decrease the total calculation time. -%The design of this functionality is described in \autoref{sec:MultiCore}. +The design of this functionality is described in \autoref{sec:USMultiCore}. \section{User story Changing units} As a geotechnical engineer I want to be be able to change the units that are used in the User Interface. -%The design of this functionality is described in \autoref{sec:Units}. +The design of this functionality is described in \autoref{sec:USUnits}. \section{User story Real-time validation} As a geotechnical engineer I want the input data to be validated during the use of the application (real-time/on the fly) given the (calculation) settings. The validation results are shown in a validation overview. -%The design of this functionality is described in \autoref{sec:RealTimeValidation}. +The design of this functionality is described in \autoref{sec:USRealTimeValidation}. \section{User story Calculation log} As a geotechnical engineer I want to see a log of the errors and warning that are generated during a calculation. -%The design of this functionality is described in \autoref{sec:CalculationLog}. +The design of this functionality is described in \autoref{sec:USCalculationLog}. \section{User story Undo-Redo} As a geotechnical engineer I want to be able to undo and redo my changes of the data in the User Interface. -%The design of this functionality is described in \autoref{sec:UndoRedo}. +The design of this functionality is described in \autoref{sec:USUndoRedo}.