Title :
A JML Compiler Based on AspectJ
Author :
Rebelo, Henrique ; Lima, Ricardo ; Cornelio, M. ; Soares, Sérgio
Author_Institution :
Comput. Syst. Dept., Pernambuco State .Univ., Recife
Abstract :
The Java modeling language (JML) is a behavioral interface specification language (BISL) designed for Java. It was developed with the aim of improving the functional software correctness of Java applications. The JML compiler (jmlc) generates bytecodes that use the Java reflection mechanism and data structures not supported by Java ME applications. In order to overcome this limitation, we propose the use of AspectJ to implement a new JML compiler, which generates an instrumented bytecode compliant with both Java SE and Java ME applications. The paper also includes a comparative study to demonstrate the quality of the final code generated by our compiler. Results indicate that the overhead in code size produced by our compiler is very small, which is essential for Java ME applications.
Keywords :
Java; formal specification; object-oriented programming; program compilers; specification languages; AspectJ; JML compiler; Java Modeling Language; Java reflection mechanism; behavioral interface specification language; bytecodes; data structures; functional software correctness; Application software; Contracts; Data structures; Instruments; Java; Program processors; Reflection; Runtime; Software testing; Specification languages; Aspect-Oriented Programming; AspectJ; Design by Contract; JML compiler; JML language;
Conference_Titel :
Software Testing, Verification, and Validation, 2008 1st International Conference on
Conference_Location :
Lillehammer
Print_ISBN :
978-0-7695-3127-4
DOI :
10.1109/ICST.2008.14