Creating new component

Follow these step to create a new component that participates in simulation in the platform.

  1. Make sure you understand the basic concepts of the platform (see Basic concepts at Manual for developer)
  2. Outputs: Decide what information the component should generate as result messages
  3. Inputs: Resolve what information the component needs as the input to generate the result messages
    • This information comes from other components
    • This is optional, because not all components need input
  4. Topics: Specify the topics the component uses to communicate
    • This is based on "outputs" and "inputs"
    • Re-use existing topics if and only if appropriate
    • Specify new topics as needed
  5. Messages: Determine which data is communicated with "topics"
  6. Choose whether to manage the execution by the platform or externally
  7. Develop the component
  8. Create a component manifest file using the instructions on page Creating a component manifest file.
  9. For platform managed component, build and publish a Docker image for the component. See page Building Docker image for a component for instructions on how to accomplish that.
  10. Update the documentation
    • Document the communication and the workflow of the component. See the page for Static time series resource for an example.
    • Document any new message types that are used by the component. See the page for Epoch message for an example.
    • Document the topics used by the component and them to the list topics, for example to Topics (energy).
    • Document a new Start message block for the component. See Dummy Component block for an example.
    • For externally managed component, provide full installation instructions for the component.