Solution Strategy

Technical Approach

Software Development
  • Modern Java is the preferred programming language for realization.

Embedded Software Development
  • Modern C++ is the preferred programming language for embedded functionalities. The source code is object-oriented.

  • A realtime operating system RTOS provides scheduling and concurrent processing.

  • The communication uses asynchronous message passing. Messages are immutable value objects.

  • Thread logic is realized as a finite state machine.

Documentation Approach

  • Follow the recommendations of arc42 approach for document structure and content.

  • Graphical modelization is done with C4 Model and UML.

  • Documents will be written in Asciidoc. Documentation language is English. Documentation is published as a static website.

  • API will be documented with Doxygen. Doxygen is the de facto standard tool for generating documentation from annotated C++ sources. It also supports other popular programming languages such as C.

Import and Export Format

An entity aggregate can be imported from and exported to a tab separated file. This approach is the preferred one. The Gleam module provides a mechanism to describe the mappings between Java classes and TSV columns.

Entities with complicated structure target a JSON format file.