Leveraging binary instrumentation to support monitoring and debugging of large scale software system in the field

Status: Available/Completed
Type: USRA/4080/408*…
Professor: Jiang, Jack ZhenMing
Research Area: Software engineering
Year: 2015

Many large scale software systems ranging from e-commerce websites (e.g., eBay) to telecommunication infrastructures (e.g., AT&T) are required to be available and ready to service by millions of users all the time. It is essential to monitor the behavior of these systems in the field and troubleshoot problems whenever they arise.

Binary instrumentation is a program analysis technique, which can add additional monitoring points without modifying or restarting the system. This project aims to explore the feasibility of leveraging binary instrumentation to automatically monitor and debug the behavior of these field systems. The student(s) will first evaluate the pros and cons on various binary instrumentation libraries. Then he/she will implement a monitoring/debugging framework using the selected instrumentation library.

Required prerequisite background: Good programming skills (especially in Java);
Good analytical and communication skills.