Robots are being applied in a vast range of fields, leading researchers and practitioners to write tasks more complex than in the past. The robot software complexity increases the difficulty of engineering the robot's software components with quality requirements. Researchers and practitioners have applied software engineering (SE) approaches and robotic domains to address this issue in the last two decades. This study aims to identify, classify and evaluate the current state-of-the-art Software Engineering for Robotic Systems (SERS). We systematically selected and analyzed 50 primary studies extracted from an automated search on Scopus digital library and manual search on the two editions of the RoSE workshop. We present three main contributions. Firstly, we provide an analysis from three following perspectives: demographics of publication, SE areas applied in robotics domains, and RSE findings. Secondly, we show a catalogue of research studies that apply software engineering techniques in the robotic domain, classified with the SWEBOK guide. We have identified 5 of 15 software engineering areas from the SWEBOK guide applied explicitly in robotic domains. The majority of the studies focused on the development phase (design, models and methods and construction). Testing and quality software areas have little coverage in SERS. Finally, we identify research opportunities and gaps in software engineering for robotic systems for future studies.
翻译:机器人软件的复杂性增加了机器人软件组件的工程难度,要求质量要求。 研究人员和从业人员在过去20年中应用了软件工程(SE)方法和机器人域来解决这个问题。本研究的目的是确定、分类和评价目前现代机器人系统最新软件工程(SERS),我们系统地挑选和分析了从Scopus数字图书馆自动搜索中提取的50个初级研究,并分析了在RoSE讲习班两版上人工搜索的50个基础研究。我们介绍了三个主要贡献。首先,我们从以下三个角度提供了分析:出版物的人口统计、机器人领域应用的SE领域以及RSE的调查结果。 其次,我们展示了在机器人领域应用软件工程技术的研究目录,与SWEBOK指南分类。我们从SWEBOK指南中明确应用于机器人领域的15个软件工程领域中确定了5个。我们主要研究重点是发展阶段(设计、模型和方法以及建造)。测试和质量软件领域在SERS系统中没有多少机会。