Computer Science and Engineering, Department of


First Advisor

Sebastian Elbaum

Second Advisor

Carrick Detweiler

Date of this Version

Fall 10-2017


Sharma, Nishant. Rate based Impact Analysis. MS Thesis. University of Nebraska-Lincoln, 2017.


A THESIS Presented to the Faculty of The Graduate College at the University of Nebraska In Partial Fulfillment of Requirements For the Degree of Master of Science, Major: Computer Science, Under the Supervision of Sebastian Elbaum and Carrick Detweiler. Lincoln, Nebraska: December 2017

Copyright (c) 2017 Nishant Sharma


Impact Analysis (IA) identifies control and data dependencies to determine the system components that could be affected by a change. Changes to robotic systems as they are updated often alter the flow of control and sensor data. Changes to the rates at which data is published from sensors, controllers, and other parts of the system are particularly subtle and difficult to detect. These rate changes, even if minor (e.g. lowering the frame rate of a camera), can propagate throughout the system and have broad impacts. However, for robotic systems, these changes in flow rate cannot be precisely tracked by just looking at the control or data dependencies. Thus, existing impact analysis techniques report imprecise impact sets and do not help us understand how the rate changes can impact the system.

In this work, we developed rate based impact analysis techniques that take into account the rate relations between components along with their control and data dependencies. We developed both static and dynamic techniques that perform rate based impact analysis. The static technique uses code patterns to define rate dependencies among system components. It is then used to limit the propagation of a rate change only to the rate-dependent components. Apart from detecting rate dependencies, the dynamic technique also extracts a mathematical model to define the rate relationships among system components. It is then used to report how a rate change will affect other components. We performed multiple studies on Robot Operating System (ROS) based systems where our static technique showed a reduction in impact set by 59%. However, our dynamic technique utilizes a richer representation of rate dependencies and reduces the impact sets by 78%. We also illustrated through case studies, how the dynamic technique helps to characterize the impact of a rate change.

Advisers: Sebastian Elbaum and Carrick Detweiler

Included in

Robotics Commons