Syracuse University
An All-in-One Debugging Approach: Java Debugging, Execution Visualization and Verification
Abstract
dc:description.abstract<p>We devise a widely applicable debugging approach to deal with the prevailing issue that bugs cannot be precisely reproduced in nondeterministic complex concurrent programs. A distinct efficient record-and-playback mechanism is designed to record all the internal states of execution including intermediate results by injecting our own bytecode, which does not affect the source code, and, through a two-step data processing mechanism, these data will be aggregated, structured and parallel processed for the purpose of replay in high fidelity while keeping the overhead at a satisfactory level. Docker and Git are employed to create a clean environment such that the execution will be undertaken repeatedly with a maximum precision of reproducing bugs. In our development, several other forefront technologies, such as MongoDB, Spark and Node.js are utilized and smoothly integrated for easy implementation. Altogether, we develop a system for Java Debugging Execution Visualization and Verification (JDevv), a debugging tool for Java although our debugging approach can apply to other languages as well. JDevv also offers an aggregated and interactive visualization for the ease of users’ code verification.</p>
Degree
thesis:*- Name thesis:degree_name
- Doctor of Philosophy (PhD)
- Level thesis:degree_level
- Dissertation
- Discipline thesis:degree_discipline
- Electrical Engineering and Computer Science
- Year
- 2016
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Wang, Beinan
- Contributors dc:contributor
-
- C.Y. Roger Chen
Subjects
dc:subject × 5Identifiers
dc:identifier.*- Repository record dc:identifier
- https://surface.syr.edu/etd/598
- OAI identifier oai:identifier
- oai:surface.syr.edu:etd-1598