An Incremental OCL Compiler for Modeling Environments

In software engineering, reliability and development time are two of the most important aspects, therefore, modeling environments, which aide both, are widely used during software development. UML and OCL became industry standards, and are supported by many CASE tools. OCL code checking, which has to be performed by these tools, has a specialty, as not all of the information necessary for compilation is available from the code, the related model contains the types, navigations and attributes. The build time of OCL code fragments is increased if the development tool supports distributed modeling, because in this case, model element checking has to be performed in a model repository that cannot be held in memory. In this paper, we introduce a method that enables incremental OCL code building and therefore reduces the development time. Incremental builds require higher complexity than simple builds, thus balancing between the two methods is also considered.

[1]  Stuart Kent,et al.  Reflections on the Object Constraint Language , 1998, UML.

[2]  Kurt Wall,et al.  The Definitive Guide to GCC , 2004, Apress.

[3]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[4]  Jennifer Widom,et al.  Change detection in hierarchically structured information , 1996, SIGMOD '96.

[5]  Perdita Stevens,et al.  Using UML - software engineering with objects and components, Second Edition , 2006, Addison Wesley object technology series.

[6]  Simon Robinson,et al.  Professional C , 2001 .

[7]  Dániel Varró,et al.  Benchmarking for graph transformation , 2005, 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05).

[8]  Anneke Kleppe,et al.  The Object Constraint Language: Getting Your Models Ready for MDA , 2003 .

[9]  Massimo Felici,et al.  Software Engineering with Objects and Components , 2005 .

[10]  Terence Parr The Definitive ANTLR Reference: Building Domain-Specific Languages , 2007 .

[11]  Jean Bézivin,et al.  The Unified Modeling Language. «UML»’98: Beyond the Notation , 1998, Lecture Notes in Computer Science.

[12]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[13]  T. Levendovszky,et al.  Control Flow Support in Metamodel-Based Model Transformation Frameworks , 2005, EUROCON 2005 - The International Conference on "Computer as a Tool".

[14]  Hassan Charaf,et al.  Architecture of an In-Memory Transformation Engine , 2007 .