2001/01/03 by David J. Murray, Murray, David J., Dale E. Parson +1
Computer Science · #Advanced Software Engineering Methodologies #Logic, programming, and type systems #Model-Driven Software Engineering Techniques #cs.PL #cs.SE
paper · pdf · doi:10.48550/arxiv.cs/0101002
In M. Ducasse (ed), proceedings of the Fourth International Workshop on Automated Debugging (AADEBUG 2000), August 2000, Munich. See cs.SE/0010035
arxiv created 2001/01/03 · arxiv updated 2009/11/30
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.