User Tools

Site Tools


Communication-Object Metamodel

Communication Objects define data structures that are communicated through services between components. The definition of communication objects requires primitive data types such as Int, Double, String, etc. and complex data types (i.e. composed data types). The figure below shows a simple metamodel of communication objects. A fully fledged communication objects modeling language that conforms to this metamodel is the SmartSoft communication object DSL.

Typically, communication middlewares such as e.g. CORBA or DDS provide an Interface Definition Language (IDL) that allows specification of communication structures. RobMoSys requires a middleware-independent language. The SmartSoft communication object DSL provides a fully fledged Xtext-based language that is compliant to the metamodel in the figure above and that can be used already now for the definition of services.

At some point the communication object needs to be serialized (i.e. marshalled) into a middleware-specific representation. The following references provide details for how this can be achieved for a CORBA-based and a message-based middlewares:

  • Christian Schlegel. “Navigation and Execution for Mobile Robots in Dynamic Environments: An Integrated Approach”. Dissertation. University of Ulm, 2004.PDF
  • Christian Schlegel and Alex Lotz, “ACE/SmartSoft - Technical Details and Internals”, in Technical Report 2010/01, Hochschule Ulm, Germany, ISSN 1868-3452, 2010. PDF
  • Dennis Stampfer, Alex Lotz, Matthias Lutz, and Christian Schlegel. “The SmartMDSD Toolchain: An Integrated MDSD Workflow and Integrated Development Environment (IDE) for Robotics Software”. In Journal of Software Engineering for Robotics, Special Issue on Domain-Specific Languages and Models for Robotic Systems, Vol 7, No 1 (2016). Link

See next:

modeling:metamodels:commobject · Last modified: 2019/05/20 10:49