Runtime debugging using reverse-engineered UML

3Citations
Citations of this article
14Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Finding runtime faults in object-oriented code can be very difficult even with the aid of modern runtime debuggers. Failures may manifest themselves due to decisions in the code mat were executed much earlier in the program. Tracing execution paths and values backward from a failure to the faulty code can be a daunting task. We propose a fault finding approach that uses unit tests to exercise source code in order to trace object-method execution paths. This is similar to reverse-engineering techniques used to create Sequence Diagrams from code. It is often too complex to debug a program using a large set of reverse-engineered Sequence Diagrams each obtained from an individual execution. Therefore, our approach partitions and aggregates individual execution paths into into fault and non-fault revealing categories. By examining the differences between fault and non-fault paths, we are left with a simplified graph. The graph can then be transformed into a useful Sequence Diagram that may reveal the location of the faulty code. © Springer-Verlag Berlin Heidelberg 2007.

Cite

CITATION STYLE

APA

Pilskalns, O., Wallace, S., & Has, F. (2007). Runtime debugging using reverse-engineered UML. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4735 LNCS, pp. 605–619). Springer Verlag. https://doi.org/10.1007/978-3-540-75209-7_41

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free