scholarly journals Applying MDE to ROS Systems: A Comparative Analysis

2021 ◽  
Vol 31 (1) ◽  
pp. 111-144
Author(s):  
Mickael Trezzy ◽  
◽  
Ileana Ober ◽  
Iulian Ober ◽  
Raquel Oliveira ◽  
...  

The Robot Operating System (ROS) is one of the most used software framework to develop robot applications. Although it is possible to reuse packages and code from other ROS projects, ROS applications remain low level and reasoning at a higher level of abstraction is not possible. Using Model-Driven Engineering (MDE) in the context of ROS applications would allow to increase the accessibility of ROS, leverage the reusability of packages and supply validation of the software earlier in the design, using formal methods. For instance, formal verification methods would improve the overall dependability of robotic systems. Our view is that we should increase the abstraction of the systems through models using MDE methodology in order to enable the use of formal methods on ROS applications. In this paper we do a first step toward this and propose a comparative study of existing modeling alternatives aiming to help roboticists to smoothly adopt MDE. This study compares the use of modeling in ROS systems in three different ways: by means of direct UML modeling, a ROS UML profile and a ROS Domain-Specific Language. That allows us to pick the solution that better fits our needs.

IEEE Access ◽  
2020 ◽  
Vol 8 ◽  
pp. 141872-141894
Author(s):  
Cristian Gonzalez Garcia ◽  
Daniel Meana-Llorian ◽  
Vicente Garcia-Diaz ◽  
Andres Camilo Jimenez ◽  
John Petearson Anzola

2020 ◽  
Vol 2 (1) ◽  
pp. 1-23
Author(s):  
Nadia Hammoudeh Garcia

Ten years after its rst release, the Robot Operating System (ROS) is arguably the most popular software framework used to pro- gram robots. It achieved such status despite its shortcomings compared to alternatives similarly centered on manual programming and, perhaps surprisingly, to model-driven engineering (MDE) approaches. Based on our experience, we identied possible ways to leverage the accessibility of ROS and its large software ecosystem, while providing quality assurance measures through selected MDE techniques. After describing our vision on how to combine MDE and manually written code, we present the rst technical contribution in this pursuit: a family of three metamodels to respectively model ROS nodes, communication interfaces, and sys- tems. Such metamodels can be used, through the accompanying Eclipse- based tooling made publicly available, to model ROS systems of arbitrary complexity and generate with correctness guarantees the software arti- facts for their composition and deployment. Furthermore, they account for specications on these aspects by the Object Management Group (OMG), in order to be amenable to hybrid systems coupling ROS and other frameworks. We also report on our experience with a large and complex corpus of ROS software including the shortcomings of standard ROS tools and of previous eorts on ROS modeling.


Author(s):  
Martin Monperrus ◽  
Jean-Marc Jézéquel ◽  
Joël Champeau ◽  
Brigitte Hoeltzener

Model-Driven Engineering (MDE) is an approach to software development that uses models as primary artifacts, from which code, documentation and tests are derived. One way of assessing quality assurance in a given domain is to define domain metrics. We show that some of these metrics are supported by models. As text documents, models can be considered from a syntactic point of view i.e., thought of as graphs. We can readily apply graph-based metrics to them, such as the number of nodes, the number of edges or the fan-in/fan-out distributions. However, these metrics cannot leverage the semantic structuring enforced by each specific metamodel to give domain specific information. Contrary to graph-based metrics, more specific metrics do exist for given domains (such as LOC for programs), but they lack genericity. Our contribution is to propose one metric, called s, that is generic over metamodels and allows the easy specification of an open-ended wide range of model metrics.


Author(s):  
Edward Nu�ez-Valdez ◽  
Oscar Sanjuan-Martinez ◽  
Cristina Pelayo G-Bustelo ◽  
Juan Manuel Cueva-Lovelle ◽  
Guillermo Infante-Hernandez

2013 ◽  
Vol 14 (1) ◽  
pp. 429-459 ◽  
Author(s):  
Juan de Lara ◽  
Esther Guerra ◽  
Jesús Sánchez Cuadrado

Author(s):  
Marília Freire ◽  
Uirá Kulesza ◽  
Eduardo Aranha ◽  
Gustavo Nery ◽  
Daniel Costa ◽  
...  

The research about the formalization and conduction of controlled experiments in software engineering has reported important insights and guidelines for their organization. However, the computational support to formalize and execute controlled experiments still requires deeper investigation. In this context, this paper presents an empirical study that evaluates a domain-specific language (DSL) proposed to formalize controlled experiments in software engineering. The language is part of a model-driven approach that allows the generation of executable workflows for the experiment participants, according to the statistical design of the experiment. Our study involves the modeling of 16 software engineering experiments to analyze the completeness and expressiveness of the investigated DSL when specifying different controlled experiments. The results highlight several limitations of the DSL that affect the formalization and execution of experiments. These outcomes were used to extend and improve the evaluated DSL. Finally, the improved version of the language was used to model the same experiments in order to illustrate the benefits of the proposed improvements.


2021 ◽  
Vol 9 (2) ◽  
pp. 1-17
Author(s):  
Djamila Baroudi ◽  
Safia Nait-Bahloul

Dwyer et al. proposed qualitative specification patterns that enable the practitioners of model checking tools to write formal specifications mainly used for automatic model checking. Although this involves formalisms that are not always easy to handle by engineers, to facilitate the integration of formal methods based on these definition patterns in the industrial field, several formal techniques and languages have been proposed. This paper studies a domain specific language named CDL which help non-experts writing formal specifications effortlessly. In CDL, a property is transformed into an observer automaton to perform a reachability analysis. The existing CDL patterns allow non-experts to reason about occurrence and order of events, but not enough about their timing. Furthermore, the semantics of patterns and transformations are not ideally formalized and are still complex. This work serves to extend the existing CDL system by patterns related to time. The contribution is illustrated in an industrial embedded system.


Sign in / Sign up

Export Citation Format

Share Document