Literate programming
Simplification by Cooperating Decision Procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
PVS: A Prototype Verification System
CADE-11 Proceedings of the 11th International Conference on Automated Deduction: Automated Deduction
A rewriting approach to satisfiability procedures
Information and Computation - RTA 2001
Simplify: a theorem prover for program checking
Journal of the ACM (JACM)
An overview of JML tools and applications
International Journal on Software Tools for Technology Transfer (STTT) - Special section on formal methods for industrial critical systems
DSD-Crasher: A hybrid analysis tool for bug finding
ACM Transactions on Software Engineering and Methodology (TOSEM)
Bounded Verification of Voting Software
VSTTE '08 Proceedings of the 2nd international conference on Verified Software: Theories, Tools, Experiments
Towards formal specification and verification of a role-based authorization engine using JML
Proceedings of the 2010 ICSE Workshop on Software Engineering for Secure Systems
Test data generation for programs with quantified first-order logic specifications
ICTSS'10 Proceedings of the 22nd IFIP WG 6.1 international conference on Testing software and systems
Satisfiability solving and model generation for quantified first-order logic formulas
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Midlet navigation graphs in JML
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Automatic detection of feature interactions using the Java modeling language: an experience report
Proceedings of the 15th International Software Product Line Conference, Volume 2
Reducing the barriers to writing verified specifications
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Hi-index | 0.00 |
Usability is a key concern in the development of verification tools. In this paper, we present an usability extension for the verification tool ESC/Java2. This enhancement is not achieved through extensions to the underlying logic or calculi of ESC/Java2, but instead we focus on its human interface facets. User awareness of the soundness and completeness of the tool is vitally important in the verification process, and lack of information about such is one of the most requested features from ESC/Java2 users, and a primary complaint from ESC/Java2 critics. Areas of unsoundness and incompleteness of ESC/Java2 exist at three levels: the level of the underlying logic; the level of translation of program constructs into verification conditions; and at the level of the theorem prover. The user must be made aware of these issues for each particular part of the source code analysed in order to have confidence in the verification process. Our extension to ESC/Java2 provides clear warnings to the user when unsound or incomplete reasoning may be taking place.