ACM Home Page
Please provide us with feedback. Feedback
Executing JML specifications of Java card applications: a case study
Full text PdfPdf (267 KB)
Source
Symposium on Applied Computing archive
Proceedings of the 2009 ACM symposium on Applied Computing table of contents
Honolulu, Hawaii
SESSION: Software engineering track table of contents
Pages 404-408  
Year of Publication: 2009
ISBN:978-1-60558-166-8
Authors
Néstor Cataño  University of Madeira, Funchal, Portugal
Tim Wahls  Dickinson College, Carlisle, PA
Sponsor
SIGAPP: ACM Special Interest Group on Applied Computing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 49,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1529282.1529373
What is a DOI?

ABSTRACT

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 specification and to the jmle tool itself, as well as insight into how executability can contribute to the use of formal methods in the software development process.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
S. Abdennadher, E. Krämer, M. Saft, and M. Schmauss. JACK: A Java constraint kit. In M. Hanus, editor, Electronic Notes in Theoretical Computer Science, volume 64. Elsevier, 2002.
 
2
F. Bouquet, F. Dadeau, B. Legeard, and M. Utting. Symbolic animation of JML specifications. In Proceedings of the International Conference on Formal Methods 2005 (FM'05), volume 3582 of Lecture Notes in Computer Science, pages 75--90. Springer-Verlag, July 2005.
 
3
E. Bretagne, A. E. Marouani, P. Girard, and J.-L. Lanet. PACAP purse and loyalty specification. Technical Report V. 0.4, Gemplus, 2000.
 
4
 
5
 
6
 
7
8
 
9
 
10
The ESC/Java 2 Tool. http://secure.ucd.ie/products/opensource/ESCJava2/.
 
11
 
12
 
13
The JACK Tool. http://www-sop.inria.fr/eve-rest/soft/Jack/jack.html.
 
14
 
15
Java Card Technology. http://java.sun.com/products/javacard/.
 
16
The Krakatoa Tool. http://krakatoa.lri.fr/.
 
17
B. Krause and T. Wahls. jmle: A tool for executing JML specifications via constraint programming. In L. Brim, editor, Formal Methods for Industrial Critical Systems (FMICS '06), volume 4346 of Lecture Notes in Computer Science, pages 293--296. Springer-Verlag, August 2006.
 
18
G. T. Leavens. The Java Modeling Language (JML) home page. http://www.jmlspecs.org.
 
19
J. Link. Unit Testing in Java. Morgan Kaufmann, 2003.
 
20
Microsoft Research. Executable specifications: Creating testable, enforceable designs, February 2001. http://research.microsoft.com/foundations/-ESpecTesting.doc.
 
21
C. Oriat. Jartege, A Tool for Random Generation of Unit Tests for Java Classes. Technical Report RR1069, 2004.
 
22
 
23

Collaborative Colleagues:
Néstor Cataño: colleagues
Tim Wahls: colleagues