System Integration with ComMA

System Integration with ComMA

by Mathijs Schuts

A ten year collaboration with Philips

System integration is inherently complex and often unpredictable—particularly for software-intensive systems. Integration issues can lead to costly redesigns and project delays. These challenges are especially arising when third-party suppliers are involved. Source of these issues is commonly found in informal, ambiguous, and documentation-based interface descriptions.

To address this, TNO-ESI has developed an approach that enables the precise and formal definition of software interfaces using interface technology-agnostic design models. The models not only list the events on the interface but also describes the behavior. More specifically, the models define the allowed order of events. Also, timing and data aspects of an interface can be modeled. Formal modeling of interfaces helps prevent common mistakes and misunderstandings. Additionally, these interface design models act as a single source of truth throughout the development process.

The heart of the approach: ComMA

At the heart of this approach is Component Modeling & Analysis (ComMA)1. ComMA is an open-source tool designed to support interface modeling throughout the development process:

  • During the design phase (pre-integration), ComMA can detect common modeling errors. For example, it can verify that interactions do not result in race conditions.

  • A simulator can be generated to validate whether the design models accurately capture the intended behavior.

  • Pre-integration, a model-based tester can also be generated to ensure that both the component providing the interface and the one requiring it conform to the modeled behavior.

  • During system integration, a ComMA generated runtime monitor can check whether all component interactions comply with the interface specification.

  • For systems already deployed, the runtime monitor can process log files to verify all interactions to ensure compliance with the design models.

For a comprehensive overview of ComMA, we invite you to read our overview paper on ComMA2.

A ten year collaboration with Philips

This year marks the 10th anniversary of ComMA and our successful collaboration with Philips IGT. Our latest work focuses on online model-based testing. Online model-based testing is a form of exploratory, on-the-fly testing. Traditional scripted testing tends to find less new bugs over time. Thanks to its random exploration, online model-based testing can continue to reveal new bugs.

Using design models for testing

A key strength of our approach is the reuse interface models developed during the design phase, rather than creating separate test models. While this offers efficiency and consistency, it also introduces challenges that we had to overcome. To read  about these recent developments, their practical application, and the lessons we have learned, we invite you to read our paper on online model-based testing at Philips IGT with ComMA.3

Acknowledgements

The research is carried out as part of the “Model-Based Testing with ComMA” program under the responsibility of TNO-ESI in cooperation with Philips. Model-Based Testing with ComMA is funded by Holland High Tech | TKI HSTM via the PPP Innovation Scheme (PPP-I) for public-private partnerships.

1 https://eclipse.dev/comma/index.html

2 Kurtev, I., Hooman, J., Schuts, M., & van der Munnik, D. (2024). Model based component development and analysis with ComMA. Science of Computer Programming, 233.

3 Schuts, M., Hooman, J., Kurtev, I., Tlili, I., & Oerlemans, E. (2025). Online Model-Based Testing by Reusing Multiple Design Models in an Industrial Setting. The Journal of Object Technology, 24

Go to ComMA tool
Partner
Contact