Automatic Extraction of Time-windowed ROS Computation Graphs from ROS Bag Files
Zhuojun Chen, Michel Albonico, Ivano Malavolta

TL;DR
This paper presents a method for automatically extracting time-windowed software architecture graphs from ROS bag files, aiding understanding of runtime reconfigurations in robotic systems.
Contribution
It introduces a novel approach for static analysis of ROS bag files to derive architectural information, supporting better reasoning about system reconfigurations.
Findings
Successfully applied to hundreds of ROS bag files from GitHub repositories.
Enables analysis of software architecture reconfigurations over time.
Supports improved discussion and reasoning about ROS-based system architectures.
Abstract
Robotic systems react to different environmental stimuli, potentially resulting in the dynamic reconfiguration of the software controlling such systems. One effect of such dynamism is the reconfiguration of the software architecture reconfiguration of the system at runtime. Such reconfigurations might severely impact the runtime properties of robotic systems, e.g., in terms of performance and energy efficiency. The ROS \emph{rosbag} package enables developers to record and store timestamped data related to the execution of robotic missions, implicitly containing relevant information about the architecture of the monitored system during its execution. In this study, we discuss about our approach for statically extracting (time-windowed) architectural information from ROS bag files. The proposed approach can support the robotics community in better discussing and reasoning the software…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Advanced Software Engineering Methodologies · Software Testing and Debugging Techniques
