Learn More
This paper presents a case study in formal specification and verification of a smart card application. The application is an electronic purse implementation, developed by the smart card producer Gemplus as a test case for formal methods for smart cards. It has been annotated (by the authors) with specifications using the Java Modeling Language (JML), a(More)
Executability provides an important mechanism for validating formal specifications and allows such specifications to serve as prototypes and test oracles. In this case study, we used the jmle tool to execute the JML specification of an electronic purse application written in the Java Card dialect of Java. This effort resulted in numerous improvements to the(More)
In this work, we present a translation from B machines to JML specifications. Our work allows developers to use different formal methods techniques and tools at different software development phases. A developer can use B's strong support for model verification during early stages of software development to produce a fully verified model of the application,(More)
This paper presents a case study in formal software development of a plugin for a Java Desktop project management application using JML. Our goals for the case study include determining how JML-based formal methods can be incorporated in traditional software engineering practices used in the software industry and how the use of JML for modeling software(More)