Enhancing Trace Debugging with Algorithmic and Omniscient Debugging

نویسندگان

  • Juan González
  • Josep Silva
چکیده

During many years, Print Debugging has been the most used method for debugging. Nowadays, however, industrial languages come with a trace debugger that allows programmers to trace computations step by step. Almost all modern programming environments include debugging utilities that allows us to place breakpoints and to inspect the state of a computation in any given point. Nevertheless, this debugging method has been criticized for being completely manual and time-consuming. Other debugging techniques have appeared to solve some of the problems of Trace Debugging, but they suffer from other problems such as scalability. In this work we present a new hybrid debugging technique. It is based on a combination of Trace Debugging, Algorithmic Debugging and Omniscient Debugging to produce a synergy that exploits the best properties and strong points of each technique. We describe the architecture of our hybrid debugger and our implementation that has been integrated into Eclipse as a plugin.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Hybrid Debugging of Java Programs

Until today the most common technique to debug Java programs is trace debugging. In this work we present two different debugging approaches for Java: declarative debugging, which has its origins in the area of functional and logic programming, and omniscient debugging, which is basically an extension of trace debugging. To benefit from the advantages of both techniques we have integrated them i...

متن کامل

Entwicklung und Implementierung eines hybriden Debuggers für Java

Das Debugging ist ein komplexer und arbeitsintensiver Prozess in der Softwareentwicklung. Für das Debugging von Java-Programmen werden bis heute vor allem sogenannte Trace-Debugger verwendet. Diese unterstützen die Fehlersuche, indem sie es ermöglichen, ein untersuchtes Programm schrittweise auszuführen. Im Bereich der Forschung sind viele neue Methoden und Werkzeuge entwickelt worden, die im V...

متن کامل

Omniscient Debugging for Cognitive Agent Programs

For real-time programs reproducing a bug by rerunning the system is likely to fail, making fault localization a time-consuming process. Omniscient debugging is a technique that stores each run in such a way that it supports going backwards in time. However, the overhead of existing omniscient debugging implementations for languages like Java is so large that it cannot be effectively used in pra...

متن کامل

Time- and space-conscious omniscient debugging of parallel DEVS

Current Parallel DEVS simulation tools provide a wide set of debugging features. Omniscient debugging, or debugging backwards in time, is only rarely implemented, presumably due to its high resource consumption. Outside of DEVS simulation, omniscient debugging implementations are often lossy: some parts of the model or code are ignored, or they consider only a time window of most recent events....

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015