Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

Heisessie: 1000156.011-000-DSC-0002-m-Uitwerking-Heisessie-Delta-Shell.docx

NGHS 2013

... stable, performance, memory use, transparent file formats, documented (API)

  • Improve API:
    • Drag & Drop
    • TreeView
    • TableView (

...

    • add/remove columns is a mess (see ITableView/TableView))

...

    • Remove IGuiView (remove dependencies on IGui from all view)
  • Improve/add provider logic for finding best fitting (i.a.w. most specific) type
    • View provider
    • Property provider
    • Context menu provider (still needs to be implemented)
    • Node presenter provider (actually "TreeView"/)
    • Importers/exporters (still needs to be implemented)
  • Improve property grid:
    • Support for dynamic property hiding (just like dynamic read only)
    • Support for property ordering (fix PropertySorter)
    • Make ExpandableArrayConvertor part of framework
  • Improve IView/IViewContext/ViewManager API:
    • View creation / resolving logic (double-click on item opens view for parent>parent>parent object but can also open view for this object),

...

    •  currently it is too implicit (CreateView changes view.Data to a different object and Delta Shell should check it)
  • Clean-up database and remove duplicate classes (Delta Shell)
  • Introduce support for file-based models at framework level:
    • Use per-model directory in project data folder
    • Rely on IFileBased for all file-based model items
    • Keep model data directory in-sync with Project
    • Eliminate custom "working" directories
  • Improve performance:
    • Minimize number of GetAllItemsRecursive calls
  • Context menu:
    • Possibility to hide "Import"/"Export" items
    • "Properties" items should always be the last item
  • Separate Delta Shell and Plugins (delete ALL direct dependencies between plugins) and use NuGet to manage / develop / deploy Delta Shell and plugins
  • Improve ProjectItemMapView viewcontext (using custom ProjectItemMapLayer that doesn't save datasource)

Delta Shell Next

... future release, open-source, flexibility, simplicity, research version Use providers for Importers/Exporters similar to views and nodepresenters (what about property classes?)

  • Review map editing functionality including topology, interaction, rendering

...

  • :
    • Eliminate need for custom map tools such as HydroNetworkEditorMapTool
    • Move common controls (such as Map Contents, Layer Properties Dialog, Attribute Editor) to SharpMap.UI
  • Fix working with units

...

  • :
    • System-wide

...

    • support for units

...

    • Units for properties, variables, etc.

...

    • Change current units for variables

...

    • Note: always save in the same unit system

...

    • . SI on-the-fly UI unit conversion

...

Clean-up database and remove duplicate classes (Delta Shell + SOBEK 3.1 plugins)

Introduce support for file-based models at framework level
Use per-model directory in project data folder
Rely on IFileBased for all file-based model items
Keep model data directory in-sync with Project

Minimize number of GetAllItemsRecursive calls

...

  • Improve model coupling:
    • Don't use output coverages (which are filled on an output time step basis and not on a simulation time step basis) for coupling: allow users to choose a time step to be used for coupling

...

    • and fix it in model wrappers / SOBEK .py coupling script

...

  • Enable coupling with online data

...

  • sources (both static and dynamic),

...

  • for example HYMOS, OpenDAP, KNMI, etc.

...

  • This coupling is relevant (and so should be suitable) when it comes to FM prototype, DelftDashboard/DeltaShell, BMI voor Matlab wrapping, Fews-modellen in DeltaShell, Scripting

...

  • .
    • Data structures for measurements
    • Automatic generation of model schematizations using existing data (online, local GIS files, etc.)

...

    • Web: Delta Shell as a webservice (share existing schematizations, allow selection using map, define boundary conditions, run model

...

    • )

...

...

Remove dependencies on IGui from all views

  • Separate data hierarchy/organisation from data-application. Hierarchy/organisation should be responsibility of IProjectItem (Parent, Children, etc...) - see

...

  • TreeNodePresenters

Separate Delta Shell and Plugins (delete ALL direct dependencies between plugins) and use NuGet to manage / develop / deploy Delta Shell and plugins

  • Extend DataItems to exchange values only when it is asked

...

  • . This is a minimal requirement for parallel (asynchroneous) model runs.
    • Keep

...

    • time info in mind

...

    • Note: Improves performance of all models (including coupled ones => profile RTC + FLOW

...

    • : implicitly will be solved by slit of

...

    • “data item set / exchange

...

    • value”)
  • Bubbling of CollectionChange and PropertyChange must happen automatically in ModelBase, derived models

...

  • and functions:
    • ModelBase OnInputCollectionChange and OnInputPropertyChange etc should work on ALL aggregated and composed items of the model
  • Model vs.

...

  • model run:
    • Functional requirement: scenario / version / run of model (light-weight) input + output (HARD TO IMPLEMENT FOR NOW

...

    • – LONG TERM)
  • Generalize import/export (wizard) logic:
    • "File column" to "Data property" matching and vice versa
    • Ability to specify a custom separator (in case of csv)

Suggestions by Pieter van Geer

  • Move UserControlValidationManager to framework
  • Move ShowModalWithTimeNavigator in MorphAnTestHelper to general TestHelper