Canica: An IDE for the Java Modeling Language

A.B. Perez, Y. Cheon, and A.Q. Gates (USA)


Integrated development environment, specification tool, programming tool, unit test, Java Modeling Language


Canica is an integrated development environment for the Java Modeling Language (JML), a formal behavioral interface specification language for Java. The JML distribution includes several support tools, such as a syntax checker, a compiler, and a document generator, and there are several third-party tools available for JML. However, most of these tools are command-line-based and work in isolation. Canica glues and streamlines these tools to provide a GUI-based, integrated environment for JML; for example, it automates unit testing including test data generation, test execution, and test result determination. In this paper, we describe the key features of Canica and explain its design and implementation. We also discuss the lessons that we learned from our development effort.

Important Links:

Go Back