Back to research topics

Axini develops tools for model based testing (MBT) and model based software engineering (MBSE). Model based testing is a software testing approach in which test cases are automatically generated and executed from a model, a formal specification of the system under test. This approach allows for a high degree of test automation and more thorough testing.

The world of modeling languages is roughly divided into two parts. On the one hand we have the so-called reactive systems, the systems that communicate via interfaces with their environment. And on the other hand, we have more data-oriented systems, such as administrative systems. You also see this division in the Axini modeling languages. Our language for reactive systems has different features than our language for administrative systems. We see that the world converges more and more to systems that are both communication and data oriented. Technical embedded systems use more and more complex data and data-oriented systems communicate more and more 24x7 online. Therefore, we are interested in a modeling language that can address both the data and the communication part.

This assignment, should you accept it, involves the design and implementation of a proof-of-concept modeling language. This involves language engineering and programming skills. We have examples of languages and implementations available to use and test your languages against.

For this assignment we can also work together with companies specialized in language engineering, such as F1re and/or Swat Engineering.

Possible research questions

There are several puzzles and research questions that students can work on.

Modeling language design
Which properties does a new DSL need to address the requirements of reactive and data-oriented systems?
Language evolution
How to address future requirements of both systems in the DSL design?