当前位置: X-MOL 学术Softw. Syst. Model. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Bootstrapping MDE development from ROS manual code: Part 2—Model generation and leveraging models at runtime
Software and Systems Modeling ( IF 2.0 ) Pub Date : 2021-04-19 , DOI: 10.1007/s10270-021-00873-2
Nadia Hammoudeh García , Harshavardhan Deshpande , André Santos , Björn Kahl , Mirko Bordignon

Model-driven engineering (MDE) addresses central aspects of robotics software development. MDE could enable domain experts to leverage the expressiveness of models, while implementation details on different hardware platforms would be handled by automatic code generation. Today, despite strong MDE efforts in the robotics research community, most evidence points to manual code development being the norm. A possible reason for MDE not being accepted by robot software developers could be the wide range of applications and target platforms, which make all-encompassing MDE IDEs hard to develop and maintain. Therefore, we chose to leverage a large corpus of open-source software widely adopted by the robotics community to extract common structures and gain insight on how and where MDE can support the developers to work more efficiently. We pursue modeling as a complement, rather than imposing MDE as separate solution. Our previous work introduced metamodels to describe components, their interactions, and their resulting composition. In this paper, we present two methods based on metamodels for automated generation of models from manually written artifacts: (1) through static code analysis and (2) by monitoring the execution of a running system. For both methods, we present tools that leverage the potentials of our contributions, with a special focus on their application at runtime to observe and diagnose a real system during its execution. A comprehensive example is provided as a walk-through for robotics software practitioners.



中文翻译:

从ROS手册代码引导MDE开发:第2部分-运行时生成模型和利用模型

模型驱动工程(MDE)解决了机器人软件开发的主要方面。MDE可以使领域专家利用模型的表现力,而不同硬件平台上的实现细节将通过自动代码生成来处理。如今,尽管MDE在机器人研究界做出了巨大努力,但大多数证据表明手动代码开发已成为一种规范。机器人软件开发人员不接受MDE的可能原因可能是广泛的应用程序和目标平台,这使得难以开发和维护的所有MDE IDE均如此。因此,我们选择利用机器人社区广泛采用的大型开源软件库来提取通用结构,并深入了解MDE如何以及在何处可以支持开发人员更有效地工作。我们追求建模作为补充,而不是将MDE作为单独的解决方案。我们之前的工作引入了元模型来描述组件,组件之间的相互作用以及生成的组件。在本文中,我们提出了两种基于元模型的方法,可以从人工编写的工件中自动生成模型:(1)通过静态代码分析,以及(2)通过监视正在运行的系统的执行情况。对于这两种方法,我们都提供了可以发挥自己潜能的工具,其中特别关注它们在运行时的应用程序,以便在执行过程中观察和诊断实际系统。提供了一个完整的示例,作为机器人软件从业人员的演练。及其组成。在本文中,我们提出了两种基于元模型的方法,可以从人工编写的工件中自动生成模型:(1)通过静态代码分析,以及(2)通过监视正在运行的系统的执行情况。对于这两种方法,我们都提供了可以发挥自己潜能的工具,其中特别关注它们在运行时的应用程序,以便在执行过程中观察和诊断实际系统。提供了一个完整的示例,作为机器人软件从业人员的演练。及其组成。在本文中,我们提出了两种基于元模型的方法,可以从人工编写的工件中自动生成模型:(1)通过静态代码分析,以及(2)通过监视正在运行的系统的执行情况。对于这两种方法,我们都提供了可以发挥自己潜能的工具,其中特别关注它们在运行时的应用程序,以便在执行过程中观察和诊断实际系统。提供了一个完整的示例,作为机器人软件从业人员的演练。我们提供的工具可以发挥我们的潜能,尤其着眼于运行时的应用程序,以在执行过程中观察和诊断实际系统。提供了一个完整的示例,作为机器人软件从业人员的演练。我们提供的工具可以发挥我们的潜能,尤其着眼于运行时的应用程序,以在执行过程中观察和诊断实际系统。提供了一个完整的示例,作为机器人软件从业人员的演练。

更新日期:2021-04-19
down
wechat
bug