Formal object-oriented development of a voting system test oracle
Innovations in Systems and Software Engineering
Design pattern-based extension of class hierarchies to support runtime invariant checks
FASE'13 Proceedings of the 16th international conference on Fundamental Approaches to Software Engineering
Hi-index | 0.00 |
In this paper, we describe a non-invasive approach for validation of class invariants in C ++ applications. Our approach is fully automated so that the user need only supply the class invariants for each class hierarchy to be checked and our validator constructs anInvariantVisitor, a variation of the Visitor Pattern, and an InvariantFacilitator. Instantiations of the InvariantVisitor and InvariantFacilitator classes encapsulate the invariants in C ++ statements and facilitate the validation of the invariants. We describe both our approach andour results of validating invariants in keystone, a well tested parser frontend for C ++ .