An Architecture-oriented Approach to System Integration in Collaborative Robotics Research Projects: An Experience Report
2015 (English)In: Journal of Software Engineering for Robotics, ISSN 2035-3928, E-ISSN 2035-3928, Vol. 6, no 1, 15-32 p.Article in journal (Refereed) Published
Effective system integration requires strict adherence to strong software engineering standards, a practice not much favoured in many collaborative research projects. We argue that component-based software engineering (CBSE) provides a way to overcome this problem because it provides flexibility for developers while requiring the adoption of only a modest number of software engineering practices. This focus on integration complements software re-use, the more usual motivation for adopting CBSE. We illustrate our argument by showing how a large-scale system architecture for an application in the domain of robot-enhanced therapy for children with autism spectrum disorder (ASD) has been implemented. We highlight the manner in which the integration process is facilitated by the architecture implementation of a set of placeholder components that comprise stubs for all functional primitives, as well as the complete implementation of all inter-component communications. We focus on the component-port-connector meta-model and show that the YARP robot platform is a well-matched middleware framework for the implementation of this model. To facilitate the validation of port-connector communication, we configure the initial placeholder implementation of the system architecture as a discrete event simulation and control the invocation of each component’s stub primitives probabilistically. This allows the system integrator to adjust the rate of inter-component communication while respecting its asynchronous and concurrent character. Also, individual ports and connectors can be periodically selected as the simulator cycles through each primitive in each sub-system component. This ability to control the rate of connector communication considerably eases the task of validating component-port-connector behaviour in a large system. Ultimately, over and above its well-accepted benefits for software re-use in robotics, CBSE strikes a good balance between software engineering best practice and the socio-technical problem of managing effective integration in collaborative robotics research projects.
Place, publisher, year, edition, pages
Dalmine, 2015. Vol. 6, no 1, 15-32 p.
best practice in robotics, model-driven engineering, component-based software engineering, discrete event simulation, YARP, component-port-connector model
Research subject Technology
IdentifiersURN: urn:nbn:se:his:diva-11922OAI: oai:DiVA.org:his-11922DiVA: diva2:902997
ProjectsEuropean Commission, Project 611391: DREAM — Development of Robot-enhanced Therapy for Children with Autism Spectrum Disorders
FunderEU, FP7, Seventh Framework Programme, 611391