This proposal has been approved and the Eclipse SmartMDSD™ project has been created.
Visit the project page for the latest information and development.

Eclipse SmartMDSD

Monday, May 14, 2018 - 02:17 by Dennis Stampfer
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project
Proposal State
Created
Background

Eclipse SmartMDSD and its main development asset, the SmartMDSD Toolchain, started in 2009 by the Service Robotics Research Center at Ulm University of Applied Sciences. The initial contributors who will kickstart and actively maintain SmartMDSD are still actively maintaining the project.

The SmartMDSD Toolchain started in 2009 using the Itemis Open-Architecture Ware (OAW) and Papyrus UML, then between 2013 and 2016 used Xtext, Xtend and Papyrus UML. It has currently moved towards using the latest Eclipse Modeling technologies based on latest Xtext, Xtend and Sirius plugins. This major rework enabled additional internal flexibility and conformance to the European Union's Horizon 2020 research and innovation programme “RobMoSys” (https://robmosys.eu/) and BWMi SeRoNet project. The initial version that will be included in the SmartMDSD Eclipse project is the fourth generation of the tooling.

Since 2008, several research projects on German national level and the european level have contributed to the background of this eclipse project: ZAFH Servicerobotik (Germany, state of Baden Württemberg), FIONA (european level), iserveU (German national level) etc.

The underlying structures for robotics software development that become accessible through the tooling provided by SmartMDSD date back to 1998. They have been constantly refined and enhanced and are now being formalized on the european level via the European Union's Horizon 2020 research and innovation programme “RobMoSys” (https://robmosys.eu/) with the support of the Eclipse Foundation as a consortium partner.

A lot of robotics software components exist and are being used. The initial code-base of SmartMDSD builds upon the third generation of the SmartMDSD Toolchain. It is very mature as it is being used in operational environments (technology readiness level 6). Its development artifacts (software components and systems) are shipped worldwide within products of FESTO Didactic and REC.

Scope

Eclipse SmartMDSD will focus on model-driven tooling for service-oriented and component-based robotics software development (hence the project name). The main outcome in this project is the SmartMDSD Toolchain, an IDE for robotics software development.

  • SmartMDSD will mainly support the “SmartSoft Framework”, a service-oriented component-based framework for software development in service robotics. It also outreaches and supports ROS and OPC UA

  • SmartMDSD is conformant to the RobMoSys and SeRoNet approaches

  • Other infrastructure (e.g. meta-models, examples, etc.) will be hosted here as well.

  • Apart from examples, the project will not host robotics software components for composition. Due to the robotics ecosystem organization and separation of roles, these (open or closed-source) software components originate from vendor-specific repositories. The project focuses on (open) tooling for (open) structures to enable composition.

Description

Tooling developed in this project is the “SmartMDSD Toolchain”, an Eclipse-based Integrated Development Environment (IDE). The model-driven SmartMDSD Toolchain provides support and guidance to apply structures and best-practices the composition of software building blocks to robotics systems. This project will maintain the eclipse-based tooling and necessary infrastructure (e.g. meta-models, code-generators).

Underlying methodology

The SmartMDSD Toolchain supports users in applying the necessary structures to enable composition in an robotics ecosystem. The tooling enables domain experts to model robotics domain structures, enables component suppliers to provide software components and enables system builders to flexibly combine and re-combine (“compose”) them to new applications according to their needs.

Main target is the SmartSoft Framework

SmartMDSD covers the complete workflow from domain structures and interface definitions, to component development, to system composition. SmartMDSD will mainly support the “SmartSoft Framework”, a service-oriented component-based framework for software development in service robotics. However, it also outreaches to make use of the ROS framework and OPC UA.

SmartMDSD conforms to the structures proposed by the European Union's Horizon 2020 research and innovation programme “RobMoSys” (https://robmosys.eu/) and BMWi/PAiCE “SeRoNet” (https://www.seronet-projekt.de).

For more information, see the following resources:

Why Here?

Eclipse SmartMDSD is contributing to an composition-oriented approach for robotics software development to create an ecosystem in which robotics developers can exchange building blocks. A key enabler for this vision are technical structures that need to be open (e.g. open meta-models). These structures must be maintained by an active community. An eclipse project supports in kickstarting this open community and in providing a frame for further evolvement.

The members of the proposed project have a strong background in software engineering and robotics. Both the robotics and the eclipse community can benefit from fostering a close link via this eclipse project:

  • Model-driven engineering demonstrated to be a key driver to manage system complexity. Robotics can benefit from knowledge in tooling and model-driven engineering which is both well established in the eclipse community.
  • Through the proposed project, the Eclipse community can extend its scope to the robotics domain. The main outcome of “SmartMDSD” will be the “SmartMDSD Toolchain”, a matured robotics software development IDE that is well known in the service robotics domain.
  • The very same arguments hold true for choosing “Eclipse Modeling Project” as the parent project: SmartMDSD heavily applies tools from the Eclipse Modeling Project.
Future Work

The functionality is stable and mature as the project is under development since 2009. We will focus on the enhanced usability in the first year. We will further work on getting current experimental features stable: support for using ROS nodes and OPC UA devices in order to link to these communities. We further plan to connect closer to industry 4.0 / asset administration shell.

 

Project Scheduling

An initial contribution is to be expected very soon after the infrastructure is available.

We expect that the incubation phase can be kept short as the project has a history since 2009, is in active use by a broad user basis, and the development (at time of writing) supported by two publicly funded projects (RobMoSys and SeRoNet, see Background and Interested Parties), and two private companies.

Project Leads
Committers
Christian Schegel (This committer does not have an Eclipse Account)
Interested Parties

RobMoSys (“Composable Models and Software for Robotics Systems”, https://robmosys.eu), a project funded in the European Union's Horizon 2020 research and innovation programme. RobMoSys is working towards an EU digital platform for industrial robotics. RobMoSys brings to the robotics software community a model-driven support, specifically targeting the autonomous nature of robotics systems and their validation. RobMoSys adopts a composition-oriented approach that manages, maintains and assures system-level properties, while preserving modularity and independence of existing robotics frameworks and code bases.

SeRoNet (“Service Robotics Network”, https://www.seronet-projekt.de) is a German national project funded by the Federal Ministry for Economic Affairs and Energy (Bundesministerium für Wirtschaft und Energie, BMWi). SeRoNet is creating an IT platform for robotics users, component suppliers, and system integrators. SeRoNet aims at reducing the overall costs to service robotics software development.

The members of the proposed eclipse project are active in the euRobotics aisbl Topic Group on “Software Engineering, System Integration, System Engineering”. They thus maintain a link to the service robotics community.

Further, the project is actively supported by two private companies.

Initial Contribution

The initial contribution will be the code of the SmartMDSD Toolchain IDE that is being developed since 2009. It is fully functional in modeling the complete composition workflow and code-generation to build real robotics systems. See section “Background” for more detailed information.

The code/repository to be moved to eclipse is: https://github.com/Servicerobotics-Ulm/SmartMDSD-Toolchain

Source Repository Type