Home /Research /Extracting conditional component dependence for distributed robotic systems
OTHER

Extracting conditional component dependence for distributed robotic systems

Rahul Purandare, Javier A Darsie, Sebastian Elbaum, Matthew B. Dwyer

Year
2012
Citations
12

Abstract

Modern robotics systems rely on distributed event-based frameworks to facilitate the assembly of software out of collections of reusable components. These frameworks express component dependencies in data that encode event publish-subscribe relations. This loosely coupled architecture makes it difficult for developers to understand the dependencies and to predict the impacts of a change to a component as the components grow in number and complexity. Moreover, this encoding of dependencies renders traditional techniques for analyzing component dependencies inapplicable, because the dependencies are bound by communication channels rather than data. In this work, we present a program analysis technique that automatically extracts a model of component dependencies from distributed system source code. This model identifies not only the temporal dependencies among components, but also the conditions under which those dependencies are realized. We have implemented the analysis and applied it to systems developed in ROS. The resulting models are succinct and precise, which suggests that programmers will find them comprehensible, and they can be used to document important global dependencies in a system, to compare different versions to identify the impacts of component changes, and to help locate errors.

Keywords

Component (thermodynamics)Computer scienceENCODEDistributed computingEvent (particle physics)Component-based software engineeringTheoretical computer scienceCode (set theory)Software systemData mining

Related papers

Browse all OTHER papers