Return
Automatically checking an implementation against its formal specification
DOI:10.1109/32.825766.png)
Abstract
En 中文
We propose checking the execution of an abstract data type's imperative implementation against its algebraic specification. An explicit mapping from implementation states to abstract values is added to the imperative code. The form of specification allows mechanical checking of desirable properties such as consistency and completeness, particularly when operations are added incrementally to the data type. During unit testing, the specification serves as a test oracle. Any variance between computed and specified values is automatically detected. When the module is made part of some application, the checking can be removed, or may remain in place for further validating the implementation. The specification, executed by rewriting, can be thought of as itself an implementation with maximum design diversity, and the validation as a form of multiversion-programming comparison.
Keywords:
self-checking code
object-oriented software testing
formal specification
rewriting
AI Summary
Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.
Journal
IF:
5.6
Papers:
2.8K
Citations:
1.1W
Organization
No organization information available
Cited Papers
Dynamic Transurethral Sonography and 3‐Dimensional Reconstruction of the Rhabdosphincter and Urethra

