JML (poster session): notations and tools supporting detailed design in Java
OOPSLA '00 Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum)
jContractor: A Reflective Java Library to Support Design by Contract
Reflection '99 Proceedings of the Second International Conference on Meta-Level Architectures and Reflection
iContract - The Java(tm) Design by Contract(tm) Tool
TOOLS '98 Proceedings of the Technology of Object-Oriented Languages and Systems
Adding Contracts to Java with Handshake
Adding Contracts to Java with Handshake
Translating the Object Constraint Language into the Java Modelling Language
Proceedings of the 2004 ACM symposium on Applied computing
An overview of JML tools and applications
International Journal on Software Tools for Technology Transfer (STTT) - Special section on formal methods for industrial critical systems
A Benchmark for OCL Engine Accuracy, Determinateness, and Efficiency
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
OCL 2.0 - Implementing the Standard for Multiple Metamodels
Electronic Notes in Theoretical Computer Science (ENTCS)
Lessons learned from developing a dynamic OCL constraint enforcement tool for java
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
ITP/OCL: a rewriting-based validation tool for UML+OCL static class diagrams
AMAST'06 Proceedings of the 11th international conference on Algebraic Methodology and Software Technology
An extensible OCL virtual machine and code generator
Proceedings of the 12th Workshop on OCL and Textual Modelling
Automatic generation of test models and properties from UML models with OCL constraints
Proceedings of the 12th Workshop on OCL and Textual Modelling
A language-independent approach to black-box testing using Erlang as test specification language
Journal of Systems and Software
Hi-index | 0.00 |
The Object Constraint Language (OCL) carries a platform independent characteristic allowing it to be decoupled from implementation details, and therefore it is widely applied in model transformations used by model-driven development techniques. However, OCL can be found tremendously useful in the implementation phase aiding assertion code generation and allowing system verification. Yet, taking full advantage of OCL without destroying its platform independence is a difficult task. This paper proposes an approach for generating assertion code from OCL constraints by using a model transformation technique to abstract language specific details away from OCL high-level concepts, showing wide applicability of model transformation techniques. We take advantage of structural similarities of implementation languages to describe a rewriting framework, which is used to easily and flexibly reformulate OCL constraints into any target language, making them executable on any platform. A tool is implemented to demonstrate the effectiveness of this approach.