1 / 12

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

Integration of Java Generics Into The jmle Tool Within The Eclipse IDE. Adrian Kostrubiak, 10/7/08. 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

oshin
Télécharger la présentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

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!

More Related