{"title":"从ROS手册代码引导MDE开发","authors":"N. Garcia","doi":"10.35708/rc1869-126256","DOIUrl":null,"url":null,"abstract":"Ten years after its rst release, the Robot Operating System \n(ROS) is arguably the most popular software framework used to pro-\ngram robots. It achieved such status despite its shortcomings compared \nto alternatives similarly centered on manual programming and, perhaps\nsurprisingly, to model-driven engineering (MDE) approaches. Based on\nour experience, we identied possible ways to leverage the accessibility of\nROS and its large software ecosystem, while providing quality assurance\nmeasures through selected MDE techniques. After describing our vision\non how to combine MDE and manually written code, we present the\nrst technical contribution in this pursuit: a family of three metamodels \nto respectively model ROS nodes, communication interfaces, and sys-\ntems. Such metamodels can be used, through the accompanying Eclipse-\nbased tooling made publicly available, to model ROS systems of arbitrary \ncomplexity and generate with correctness guarantees the software arti-\nfacts for their composition and deployment. Furthermore, they account \nfor specications on these aspects by the Object Management Group\n(OMG), in order to be amenable to hybrid systems coupling ROS and\nother frameworks. We also report on our experience with a large and\ncomplex corpus of ROS software including the shortcomings of standard\nROS tools and of previous eorts on ROS modeling.","PeriodicalId":292418,"journal":{"name":"International Journal of Robotic Computing","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Bootstrapping MDE Development from ROS Manual Code\",\"authors\":\"N. Garcia\",\"doi\":\"10.35708/rc1869-126256\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Ten years after its rst release, the Robot Operating System \\n(ROS) is arguably the most popular software framework used to pro-\\ngram robots. It achieved such status despite its shortcomings compared \\nto alternatives similarly centered on manual programming and, perhaps\\nsurprisingly, to model-driven engineering (MDE) approaches. Based on\\nour experience, we identied possible ways to leverage the accessibility of\\nROS and its large software ecosystem, while providing quality assurance\\nmeasures through selected MDE techniques. After describing our vision\\non how to combine MDE and manually written code, we present the\\nrst technical contribution in this pursuit: a family of three metamodels \\nto respectively model ROS nodes, communication interfaces, and sys-\\ntems. Such metamodels can be used, through the accompanying Eclipse-\\nbased tooling made publicly available, to model ROS systems of arbitrary \\ncomplexity and generate with correctness guarantees the software arti-\\nfacts for their composition and deployment. Furthermore, they account \\nfor specications on these aspects by the Object Management Group\\n(OMG), in order to be amenable to hybrid systems coupling ROS and\\nother frameworks. We also report on our experience with a large and\\ncomplex corpus of ROS software including the shortcomings of standard\\nROS tools and of previous eorts on ROS modeling.\",\"PeriodicalId\":292418,\"journal\":{\"name\":\"International Journal of Robotic Computing\",\"volume\":\"5 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2020-04-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Journal of Robotic Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.35708/rc1869-126256\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Robotic Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.35708/rc1869-126256","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Bootstrapping MDE Development from ROS Manual Code
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.