Download: PDF, technical report UWCS-07-01 (PDF) (extended version), talk slides.
“Dynamic constraint detection for polymorphic behavior” by Nadya Kuzmina and Ruben Gamboa.
In Proceedings of the 5th International Workshop on Dynamic Analysis (WODA 2007).
The general technique for dynamically detecting likely invariants, as implemented by Daikon, lacks specific object-oriented support for polymorphism. Daikon examines only the declared type of a variable which prohibits it from examination of the runtime variables in the presence of polymorphism. The approach presented in this paper extends the technique to consider the runtime type of a polymorphic variable, which may have different declared and runtime types. The runtime behavior of a polymorphic variable is captured by polymorphic constraints which have the form of an implication with the name of the runtime class in the antecedent. We demonstrate the improved accuracy of the dynamically detected specification on the Money example from the JUnit testing framework tutorial. Polymorphic constraints are shown to reveal the specification of the runtime behavior of the example.
Download:
PDF, technical
report UWCS-07-01 (PDF) (extended version), talk
slides.
@inproceedings{KuzminaG2007,
author = {Nadya Kuzmina and Ruben Gamboa},
title = {Extending Dynamic Constraint Detection with Polymorphic Analysis},
booktitle = {ICSEW '07: Proceedings of the 29th International Conference on Software Engineering Workshops},
year = {2007},
isbn = {0-7695-2830-9},
pages = {138},
doi = {http://dx.doi.org/10.1109/ICSEW.2007.103},
publisher = {IEEE Computer Society},
address = {Washington, DC, USA}
}