Skip to content
This repository was archived by the owner on Apr 23, 2021. It is now read-only.
This repository was archived by the owner on Apr 23, 2021. It is now read-only.

Refactoring: CUDS class #421

@dpinte

Description

@dpinte

After having spent some time reviewing the code and the existing example applications, I think some changes must be made to the object model .

The CUDS class defined in simphony.cuds.cuds which inherits from api.CUDS should be renamed.

Having two classes with the same name but a different behaviour makes it highly confusing for users. If you're not convinced by that, take a minute to try to explain the object model to somebody new to the project.

In terms of definitions: on the object side, The CUDS class is defined in the Simulation inputs as the "Model information". On the metadata side (see simphony_metadata.yaml), the CUDS is defined as "CUDS Container, a knowledge-based container of semantic concepts used to agglomerate relevant data and information."

Suggestion:

  • rename the CUDS class as ModelInformation, Model or `Experiment, .... This class allows the end user to describe his model with a list of datasets, boundary conditions, etc.
  • remove the api.CUDS base class because at the moment, it is not providing anything that is used.
  • remove the CUDS definition in simphony_metadata.yml as it is unused.

Recommandation: keep the CUDS naming as qualifier for the expression the domain model fo the RoMM

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions