| Executing JML specifications of Java card applications: a case study |
| Full text |
Pdf
(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
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 10, Downloads (12 Months): 49, Citation Count: 0
|
|
|
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
|
Lilian Burdy , Yoonsik Cheon , David R. Cok , Michael D. Ernst , Joseph R. Kiniry , Gary T. Leavens , K. Rustan M. Leino , Erik Poll, An overview of JML tools and applications, International Journal on Software Tools for Technology Transfer (STTT), v.7 n.3, p.212-232, June 2005
[doi> 10.1007/s10009-004-0167-4]
|
| |
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
|
|
|