-
Notifications
You must be signed in to change notification settings - Fork 30
Tool chain design specification
There will be one top-level Eclipse project that defines the openETCS tool, using the following artifacts:
org.openetcs.releng.product - the name of the top-level project
openetcs.target - a target definition containing all required components
openetcs.product - a product definition for building the tool
Components will follow the following convention:
- The component name as a unique identifier (e.g. DataDictionary, without a space and uppercase)
- The package name below open.openetcs (same as above, but all lowercase)
- The Namespace URI in the Ecore model (e.g. http://openetcs.org/schema/)
The other projects are organized and named like typical Eclipse/EMF projects. For instance, for the DataDictionary Component, there would be the following projects:
org.openetcs.datadictionary.feature
org.openetcs.datadictionary.model
org.openetcs.datadictionary.edit
org.openetcs.datadictionary.editor
org.openetcs.datadictionary.test
Each component has its own wiki page, if the component is a pre-existing tool, at least a link to its documentation should be provided.
For each Component, there is a page containing:
-
Short description of the component
-
Link to the data model (if any).
-
Links to all Cross-Cutting-Concerns (if any)
-
List of all use cases that this Component helps to realize.
-
Additional requirements and constraints that are not captured elsewhere.
If a Component requires a data model that does not exist yet, the data model link directs to the design document for the data model.
Here an example from the DataDictionary component https://github.com/openETCS/dataDictionary/wiki/Data-Dictionary-Design-Specification.