2 research outputs found
Automated Debugging In Java Using OCL And JDI
Correctness constraints provide a foundation for automated debugging within
object-oriented systems. This paper discusses a new approach to incorporating
correctness constraints into Java development environments. Our approach uses
the Object Constraint Language ("OCL") as a specification language and the Java
Debug Interface ("JDI") as a verification API. OCL provides a standard language
for expressing object-oriented constraints that can integrate with Unified
Modeling Language ("UML") software models. JDI provides a standard Java API
capable of supporting type-safe and side effect free runtime constraint
evaluation. The resulting correctness constraint mechanism: (1) entails no
programming language modifications; (2) requires neither access nor changes to
existing source code; and (3) works with standard off-the-shelf Java virtual
machines ("VMs"). A prototype correctness constraint auditor is presented to
demonstrate the utility of this mechanism for purposes of automated debugging.Comment: In M. Ducasse (ed), proceedings of the Fourth International Workshop
on Automated Debugging (AADEBUG 2000), August 2000, Munich. See cs.SE/001003
Extension Language Automation of Embedded System Debugging
Embedded systems contain several layers of target processing abstraction.
These layers include electronic circuit, binary machine code, mnemonic assembly
code, and high-level procedural and object-oriented abstractions. Physical and
temporal constraints and artifacts within physically embedded systems make it
impossible for software engineers to operate at a single layer of processor
abstraction. The Luxdbg embedded system debugger exposes these layers to
debugger users, and it adds an additional layer, the extension language layer,
that allows users to extend both the debugger and its target processor
capabilities. Tcl is Luxdbg's extension language. Luxdbg users can apply Tcl to
automate interactive debugging steps, to redirect and to interconnect target
processor input-output facilities, to schedule multiple processor execution, to
log and to react to target processing exceptions, and to automate target system
testing. Inclusion of an extension language like Tcl in a debugger promises
additional advantages for distributed debugging, where debuggers can pass
extension language expressions across computer networks.Comment: In M. Ducasse (ed), proceedings of the Fourth International Workshop
on Automated Debugging (AADebug 2000), August 2000, Munich. cs.SE/001003