Enabling the runtime assertion checking of concurrent contracts for the Java modeling language
Though there exists ample support for Design by Contract (DbC) for sequential programs, applying DbC to concurrent programs presents several challenges. In previous work, we extended the Java Modeling Language (JML) with constructs to specify concurrent contracts for Java programs. We present a runtime assertion checker (RAC) for the expanded JML capable of verifying assertions for concurrent Java programs. We systematically evaluate the validity of system testing results obtained via runtime assertion checking using actual concurrent and functional faults on a highly concurrent industrial system from the telecommunications domain.
|Keywords||concurrency, design by contract, java, jml, object-oriented programming|
|Conference||33rd International Conference on Software Engineering, ICSE 2011|
Araujo, W. (Wladimir), Briand, L.C. (Lionel C.), & Labiche, Y. (2011). Enabling the runtime assertion checking of concurrent contracts for the Java modeling language. Presented at the 33rd International Conference on Software Engineering, ICSE 2011. doi:10.1145/1985793.1985903