Home Learn more about OCL Rational Rose OCL-AddIn product description Downloads Buy our products Support information Sitemap Contact Privacy policy  

This page shows you what we do to achieve a high level of quality for our software so that you can be confident that our software simply works for you instead of annoying you with bugs. The core of our software, our OCL parser and semantic checker is written in C++. This assures fast processing and the capability to integrate the parser in almost every software environment.

Unit testing

Central to our development process are unit tests with CppUnit. As of version 1.5.3 of our OCL parser (corresponding to version 1.7.3 of Oclarity for Rational Rose) our test suite contains 105 tests with 859 distinct checks.

Static code checking

We use PC-Lint for static code checking. Here is the list of suppressions that we use.

Run time checking

We execute our unit test suite regularly with a runtime checker that detects memory allocation problems, pointer problems and much more.

Testing the modeling tool adapter

Our unit tests use a mocked model repository. But of course Oclarity uses the actual model repository of Rational Rose. To test the binding to Rational Roses internal repository, we have created a dedicated test AddIn. This AddIn reads all required information from an XML-file and then checks all expressions. The information that is retrieved from the XML-file is
  • The path to the Rational Rose model file that is to be used for the tests. This file is loaded automatically when the tests are executed.
  • A symbolic name that identifies each OCL expression.
  • Some technical information (like the number of nodes in the syntax tree) that is used to verify the correct parsing and checking of the expression.
  • The actual OCL expression.
We use various such files, mostly derived from the official OCL specification and from the OCL book (both editions).
Page last modified: 2009-12-01 22:08:11