Integration of Java Generics Into The jmle Tool Within The Eclipse IDE - PowerPoint PPT Presentation

oshin
integration of java generics into the jmle tool within the eclipse ide n.
Skip this Video
Loading SlideShow in 5 Seconds..
Integration of Java Generics Into The jmle Tool Within The Eclipse IDE PowerPoint Presentation
Download Presentation
Integration of Java Generics Into The jmle Tool Within The Eclipse IDE

play fullscreen
1 / 12
Download Presentation
Integration of Java Generics Into The jmle Tool Within The Eclipse IDE
569 Views
Download Presentation

Integration of Java Generics Into The jmle Tool Within The Eclipse IDE

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Integration of Java Generics Into The jmle Tool Within The Eclipse IDE Adrian Kostrubiak, 10/7/08

  2. Overview • JML and jmle Review • Article Review • JML: notations and tools supporting detailed design in Java • An overview of JML tools and applications • JACK: A Java Constraint Kit • jmle: A tool for executing JML specifications via constraint programming • Executing JML Specifications of Java Card Applications: A Case Study. • Technology Exposé

  3. JML Review • Exists in annotations before code modules • Behavioral interface specification language • Formally specify module behavior • Java Modeling Language • Design by Contract (DbC) • Java style syntax

  4. JML Example Code /*@ assignable \nothing; ensures \result == j + k; */ int sumOfTwo(int j, int k) { return(j+k); } // can only be called with ints > 0 /*@ assignable myVal; requires j > 0; ensures myVal == \old(myVal) - j; */ void subtract(int j) { myVal = myVal - j; }

  5. jmle Review • jmle • Takes code with JML embedded (comments) • Creates a Java constraint program • Executed with the Java Constraint Kit • jmle in Eclipse • Program itself not run • Runs constraint program • Eases checking and understanding of constraints

  6. Moving Forward With jmle • Currently little generic support in JML and none in jmle • Implementing generics into jmle • Implementing enum types into jmle • Push jmle from mere academic pursuit into actual industry

  7. Article Review • G. T. Leavens, K. R. M. Leino, E. Poll, C. Ruby, and B. Jacobs. JML: notations and tools supporting detailed design in Java. In OOPSLA 2000 Companion, Minneapolis, Minnesota, pages 105–106. ACM, Oct. 2000.

  8. Article Review • L. Burdy, Y. Cheon, D. Cok, M. Ernst, J. Kiniry, G. T. Leavens, K. Rustan, M. Leino, and E. Poll. An overview of JML tools and applications. International Journal on Software Tools for Technology Transfer, 7(3):212-232, June 2005.

  9. Article Review • S. Abdennadher, E. Krämer, M. Saft and M. Schmauss. JACK: A Java Constraint Kit. In Electronic Notes For Theoretical Computer Science, volume 64, pages 1-17. September 2002.

  10. Article Review • 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.

  11. Article Review • N. Cantaño, T. Wahls. Executing JML Specifications of Java Card Applications: A Case Study.

  12. Technology Exposé • And now, jmle in action!