Lightweight mechanism to reason on String values

Our paper Lightweight String Reasoning in Model Finding by Fabian Büttner and myself has been accepted for publication in the Journal of Systems and Software Modeling (SoSyM).

The full paper (preprint version) is freely available here. The abstract is the following:

Models play a key role in assuring software quality in the model-driven
approach. Precise models usually require the definition of well-formedness rules
to specify constraints that cannot be expressed graphically. The Object Constraint
Language (OCL) is a de-facto standard to define such rules. Techniques that check
the satisfiability of such models and find corresponding instances of them are important in various activities, such as model-based testing and validation. Several
tools for these activities have been developed, but to our knowledge, none of them
supports OCL string operations on scale that is sufficient for, e.g., model-based
testing. As, in contrast, many industrial models do contain such operations, there
is evidently a gap. We present a lightweight solver that is specifically tailored to
generate large solutions for tractable string constraints in model finding, and that
is suitable for directly express the main operations of the OCL datatype String.
It is based on constraint logic programming (CLP) and constraint handling rules
(CHR), and can be seamlessly combined with other constraint solvers in CLP. We
have integrated our solver into the EMFtoCSP model finder, and we show that
our implementation efficiently solves several common string constraints on a large

A better introduction is also available in this previous post describing the conference version of the same paper.

If you liked this post, you should subscribe to the blog feed , mailing list , or facebook page and follow my thoughts on twitter about software development or web design and social media . Check also my book on model-driven engineering .

Be sociable, share!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Powered by WordPress
More in OCL, quality, verification
OCL Workshop 2012 – Proceedings available

Towards an IDE for OCL

A model-driven approach for the extraction of network access-control policies