Design Methodologies for Cyber-physical Systems

In this short two minute presentation, I introduce myself and my fundamental and academic research into design methodologies for cyber-physical systems. I sketch a high-level view of the problem and outline a direction based on model-based engineering in which my previous work into domain-specific languages and analysis non-functional behavior fits. For a more elaborate description of my research, please have a look at my research page.

Announcement of Appointment as Professor at UvA

The press release announcing my appointment as Professor at the University of Amsterdam is finally ready. Time to make them and ESI (TNO) proud!

The Chair of Design Methodologies for Cyber-Physical Systems focuses on two research areas. The first area considers design methodologies for cyber-physical systems in which abstraction, provided by models used for specification, analysis, simulation, or synthesis, play an essential role. While this area applies to cyber-physical systems in general, the second area focuses on design aspects of real-time systems. Together, these two areas capture much of my existing work in both academic (TU/e, CTU Prague, CISTER) and applied research (ESI) in different application domains and industries in which I have worked, e.g. avionics (Airbus), consumer electronics (Philips & NXP), and defense (Thales). They are also broad enough to sustain a long-term effort towards managing complexity of cyber-physical systems. For more information about the research, click the ‘Research‘ button in the menu at the top of the page.

My first mission will involve developing and teaching a course on Embedded Software and Systems, a course that is extremely relevant to our work at ESI. The course is primarily aimed at students following the Master in Software Engineering and teaches the fundamentals of embedded system development. This includes modelling systems using StateCharts, Petri Nets, Data-flow graphs, and Domain-Specific Languages, embedded hardware, functional and timing verification, and design-space exploration. I will also explain the industrial reality behind some of these aspects by drawing on my experience from projects at ESI.

During the course, the students will get practical experience with model-based engineering as they work in groups to program a LEGO Mindstorm Rover using Stateflow to autonomously follow a path, while avoiding obstacles. From this batch of students, I am hoping to find some promising ones that can help us make the next innovative steps in model-based engineering for complex cyber-physical systems for their thesis project.

Back from MODELS 2019

After six days in Munich I have now left the MODELS 2019 conference. It has been an intense couple of days with three days of workshops and tutorials, and three days of main conference. Both the technical and social aspects of the conference were exceptionally well-organized, so kudos to the men and women who worked hard to make that happen.

The four main highlights at the conference for me were:
1. Presenting our paper “Towards Continuous Evolution through Automatic Detection and Correction of Service Incompatibilities” at the MODCOMP workshop. Discussions with conference participants about Petri Net transformations have given inspiration for how to formally work with more complex service behaviors than we do in our work on service-oriented architectures today.

2. A tutorial on StateCharts that improved my understanding of a model-of-computation I will be teaching at the University of Amsterdam in the near future. Thanks to Simon van Mierlo, Hans Vangheluwe, and Axel Terfloth for organizing this tutorial and for sharing their excellent material.

3. Meeting and discussing with representatives from BMW, Daimler, MAN, Continental, TTTech, and other automotive companies and hear more about automotive trends towards centralization of computation, first through domain controllers and then further towards integration of domains in automotive “supercomputers”. It was also interesting to see that the automotive industry is showing interest in service-oriented architectures as a paradigm for their platforms. In fact, a paper entitled “Model-Based Resource Analysis and Synthesis of Service-Oriented Automotive Software Architectures” from BMW got the Best Paper Award on the Practice and Innovation track for work in this direction. This confirms our belief that our current applied research on service-oriented architectures in the defense domain can be generalized to other domains.

4. Meeting and talking to people from both Flanders Make and CETIC, which are the Flemish and Wallonian equivalents of ESI (TNO). It was interesting to talk to them and learn about how what we do is similar and different, both in terms of technical scope and business models.

I hope to return to the MODELS conference again next year to present more of our work and have another opportunity to discuss with and learn from top academics and industrialists in the area of model-based engineering.

New Position at TNO-ESI

Today, I started a new position as a Research Fellow at Embedded Systems Innovation by TNO (TNO-ESI) in Eindhoven. TNO-ESI is a leading Dutch research group for high-tech embedded systems design and engineering. It has a close cooperation with high-tech industry, as well as a strong association with fundamental research of academia, both national and international. This means I am now transitioning to applied science in an industrial setting and I look forward to the new challenges and opportunities that entails.

I want to thank the good people a CISTER for the time I have spent with the unit. I find it a very nice place to work with good researchers and a friendly atmosphere. I appreciate the intellectual freedom I had to pursue my ideas and interests, as well as the interesting collaborations and growth opportunities I got sucked into. I hope we will have the pleasure of working together again in the future.

Temporary Contract with CISTER

My contract with Czech Technical University in Prague has run its course. However, the good people at the CISTER/INESC TEC research unit at the Polytechnic Institute of Porto, my former employer, was quick to offer me a temporary contract until a new long-term plan is in place. At my new job, I will continue my research on real-time embedded systems, just like before, as well as preparing project proposals to fund future research. I thank CISTER for the opportunity and look forward work with them again!

Back in Prague

I am now back from my two month research visit at Airbus Group Innovations. During my stay, I primarily worked on two things:

  1. Performance analysis of memory accesses in two COTS multi-core platforms. My work extended existing analysis to include the configuration of the memory controller. In particular, the existing setup was improved to enable evaluation of rank-level parallelism within a memory controller, channel parallelism between memory controllers, and different mapping options of cores to memory channels.
  2. I familiarized myself with the certification process for the avionics domain by reading and discussing key standardization documents, e.g. DO-178C for software certification, DO-254 for hardware certification, and DO-297 for integrated modular avionics. I also read several position papers from the Certification Authorities Software Team, most importantly about partitioning guidelines and certification of dual-core platforms. Lastly, I read the ARINC 653 standard, which details the application interface commonly used in avionics systems.

Thanks to Jan Nowotsch and Stefan Schneele for making the visit possible and to my office mates for providing a fun environment to work and learn in.

Visiting Researcher at Airbus Group Innovations

Today, I start a two month stay as Visiting Researcher at Airbus Group Innovations in Ottobrunn, Germany. I will be working together with Jan Nowotsch on topics related to performance analysis of memory accesses in COTS multi-core platforms. During my stay, I look forward to meeting new people learning more about real-time systems in the avionics domain.

New position at Czech Technical University in Prague

Today I start a new position as a Postdoctoral Researcher in the Department of Control Engineering at the Faculty of Electrical Engineering at the Czech Technical University in Prague. More specifically, I am in the Industrial Informatics group, led by Prof. Zdenek Hanzalek. Although a new country and a new workplace implies quite a change for me, little will change for those that I collaborate with. I will still do research on real-time systems and I will continue to supervise my students in Eindhoven and Porto. However, my research direction will change slightly within the scope of real-time systems to align with the interests of my new group and to make the most of my stay here.

Back in Eindhoven

After six great months at the CISTER Research Unit in Porto, I am back at Eindhoven University of Technology. I really enjoyed the opportunity to work in another group and learn more about traditional real-time systems and their applications. It has been great to get to know new people in the real-time community, both professionally and as friends. A few papers have already been submitted as a result of this collaboration and there are more to come over the next few months. To all my friends and colleagues in Porto, thank you very much and I look forward to stay in touch with you.

Visiting Researcher at CISTER

For the next six months, I am a visiting resarcher at CISTER (Research Centre in Real-Time Computing Systems) based at the School of Engineering (ISEP) of the Polytechnic Institute of Porto (IPP), Portugal. This gives me a great opportunity to work with some of the great minds in the real-time community, broaden my knowledge by exploring new applications and research areas, as well as contribute with my experiences to the group. At this point, I am familiarizing myself with the work carried out in the group and the work plan will be defined during the coming month.

Update: After settling in at CISTER, I am now working on two projects. The first one relates to their work on bus contention analysis, which is a familiar topic with a different twist. The second project is related to implementation and evaluation of scheduling algorithms in the Linux kernel, which is a completely new topic. Of course, I am also still spending time managing the work of the memory team in Eindhoven. Some new, some old, but in the end I am learning many new things both technically and culturally, and I am meeting many extraordinary people.