A Reference Architecture for Deploying Component-Based Robot Software and Comparison with Existing Tools

This article discusses the problem of deploying component-based software for a robotic system, including both the initial deployment and re-deployment at run-time to account for changing requirements and conditions. We begin by evaluating a set of tools used for all or part of the deployment activity. The evaluated tools are the OMG DEPL specification, Chef, Ansible, Salt, Puppet, roslaunch and Orocos Deployer/ROCK. These tools were chosen to cover a range of capabilities and styles. The evaluation identifies a set of core roles found in the deployment activity, and based on this we propose a reference architecture for a set of tools that satisfy the deployment activity. This reference architecture provides a foundation for future work in developing and evaluating tools that can be used in deployment.

[1]  Alan Dearle,et al.  Software Deployment, Past, Present and Future , 2007, Future of Software Engineering (FOSE '07).

[2]  A. Dearie,et al.  Software Deployment, Past, Present and Future , 2007, ICSE 2007.

[3]  Herman Bruyninckx,et al.  A model-based approach to software deployment in robotics , 2013, 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[4]  Daniele Nardi,et al.  Uses of Contextual Knowledge in Mobile Robots , 2007, AI*IA.

[5]  Ying Wang,et al.  An Approach to Develop Architecture of ARINC653-Based Avionic Software , 2015 .

[6]  Jakob Axelsson,et al.  Experience of introducing reference architectures in the development of automotive electronic systems , 2005, ACM SIGSOFT Softw. Eng. Notes.

[7]  Richard N. Taylor,et al.  Software architecture: foundations, theory, and practice , 2009, 2010 ACM/IEEE 32nd International Conference on Software Engineering.