It has been almost a year since Mohammed (Madiou) Diallo submitted his bachelor thesis “Towards the Scalability of Detecting and Correcting Incompatible Service Interfaces“, which he carried out in the context of the DYNAMICS project, an applied research project between ESI (TNO) and Thales. After the thesis was finished, we discussed publishing the work as a paper and one year later, a slightly restructured and simplified version of the story has been accepted at the International Workshop on Petri Nets and Software Engineering (PNSE), a workshop co-located with the Petri Net conference.
The accepted paper is entitled “Synthetic Portnet Generation with Controllable Complexity for Testing and Benchmarking” and presents a heuristic-driven method for synthetic generation of random portnets, a kind of Petri Nets suitable for modelling software interfaces in component-based systems. The method considers three user-specified complexity parameters: the expected number input and output places, and the prevalence of non-determinism in the skeleton of the generated net. An implementation of this method is available as an open-source Python tool. Experiments demonstrate the relations between the three complexity parameters and investigate the boundaries of the proposed method. This work was helpful for the DYNAMICS project, as it allowed us to synthetically generate a large number of interfaces of varying complexity that we could use to evaluate the scalability of existing academic tools for adapter generation.
Last week, the open sourcing of ComMA (Component Modelling and Analysis) in the context of the Eclipse Foundation, saw another milestone. The first version Eclipse CommaSuite is now online in the form of Release 0.1.0. ComMA is a set of DSLs used to (partially) specify the behavior of components and their interfaces, including time and data constraints. On the basis of these specifications, a number of artifacts can be automatically generated, including run-time monitors that validate compliance with the specification can be generated, visualizations, timing statistics, documentation, test cases, and adapters. Many of these features will be included in later releases of ComMA, and some of them have yet to emerge from research projects as mature features.
ComMA was originally developed by ESI and Philips, but more recently in collaboration with a growing number of other companies. For example, the DYNAMICS project in which ESI works together with Thales, we are currently investigating how adapters can be semi-automatically generated to bridge differences between components implementing different versions of interfaces. This work has been previously mentioned in an article in Bits & Chips, as well as in a paper. Currently, three master students from my Embedded Software and Systems course at UvA are also doing their graduation projects in the context of evolution of ComMA interfaces, looking into aspects of data dependencies, interface dependencies, and static impact analysis. We look forward to seeing the results of their work this summer.
You can read more about ComMA in this news article TNO published this week.
Update: The news article is now also published in Bits & Chips
ESI (TNO) was featured in the latest episode (Season 4 Episode 1) of Nederland Maakt Het, a program on RTL Z about Dutch organizations that develop of apply innovative technologies. In the segment, Wouter Leibbrandt, the Research and Operations director at ESI, explains that the Netherlands has a powerful high-tech industry, which is important to its competitiveness and earning power. To stay at the top and continue to develop excellent products in light of increasing system complexity, it is important to invest in research and development of new design methodologies. Big high-tech companies do this in an open innovation environment to address the challenges they face together. ESI is the applied research organization and knowledge partner that brings the industry and academic parties together into an eco-system to facilitate this.
In my role as part-time professor at UvA, I explain my view on open innovation and how universities contribute and get value from the eco-system. In the Embedded Software and Systems course at the University of Amsterdam, which is an academic partner of ESI since 2021, I discuss the increasing system complexity with my students and teach model-based engineering methodologies to help them address this challenge. I also supervise students that want to contribute to solving the complexity problem by doing their thesis project in with ESI or in industry. Lastly, Hein Otto Folkerts, the (former) head of Research at ASML, provides the industry view and explains the value of open innovation to ASML, one of the big high-tech companies in the Eindhoven region.
For those of you that missed the episode, it is available for online viewing on RTL XL. The segment about ESI starts at 14m30s and last for about 4 minutes. ESI also has a version of this segment in its own house style that is used for promotional purposes. This version is available here: