Software variability is as relevant as ever as a driver of complexity in high-tech equipment

Earlier this week, TNO-ESI arranged a webinar with Jacob Krüger, Assistant Professor at Eindhoven University of Technology. In the presentation “Do We Still Need This? Managing Variability in Modern Software Systems” he presented his research on development and evolution of variant-rich software systems. The presentation explained how successful systems are often cloned to create new variants until managing the variability becomes too complex and expensive. It discussed the transition from cloning towards platform-based software architectures and compared the development costs for new features and new variants, respectively, for the two cases, based on empirical data from industry. These insights are valuable to inform decision-making about when adopting a platform-based approach is strategic. However, Jacob also made clear that moving to a platform-based approach introduces its own challenges, such as ensuring software comprehension and quality, analyzing variability, aligning software and hardware release schedules, and deprecation of variable features.

The webinar attracted an audience of approximately 40 people from TNO-ESI, ASML, Thales, Canon, Vanderlande, ThermoFisher, and Radboud University Nijmegen. This strongly suggests that variability is still a main concern both in systems and software engineering that affects all parts of system development, from early architecting to implementation, testing, and evolution. I was thrilled to see that there was a lively discussion with questions and remarks. In retrospect, I wish we would have reserved more time to keep the conversation going. If you would like to discuss your particular variability challenges or ideas with Jacob, feel free to contact him.

TNO-ESI looks forward to arranging more webinars with experts from our eco-system of academic and industry partners in the field of software and system engineering for high-tech equipment.

TNO-ESI and Academic Partners Deliver ASCI PhD Course on Design and Implementation of Real-time Systems

The Netherlands boasts a world-leading high-tech manufacturing industry renowned for constructing distributed real-time systems of continuously growing complexity. These systems must meet stringent timing requirements to ensure the delivery of mission-critical functionalities. To create interest in the high-tech equipment domain and prepare PhD students in Computer Science to address its performance challenges, TNO-ESI has co-created and delivered a one-week PhD course Design and Implementation of Real-time Systems together with academic partners from Eindhoven University of Technology, University of Twente, and University of Amsterdam. The course is given in the context of the Advanced School for Computing and Imaging (ASCI), a Dutch research school for high-quality research and education in computer systems and imaging systems. ASCI encompasses almost all Dutch universities with computer-science departments. The main goals of ESI involvement in this course were to make participants aware of TNO and its role in society and industry and position it as a possible future employer, and creating awareness of TNO-ESIs vision and work in the area of system performance engineering.

The course is focused on providing an overview of selected timing-sensitive applications and the current research landscape on real-time systems and explaining the rationale behind considering real-time requirements in system software design. Through a series of lectures and hands-on labs, the course covers selected topics from scheduling algorithms, priority assignments, resource sharing, resource reservation, together with their implementation in real-time operating systems. It further discusses emerging challenges and practices in an industrial context, based on empirical surveys and experience from TNO-ESIs applied research on telemetry-based system performance engineering for purposes of performance optimization, verification, and diagnostics.

This first instance of the course was given at the Carlton President Hotel in Maarsen, outside Utrecht between June 10 – 14. 15 PhD students from universities all over the Netherlands researching a broad range of topics in computer science participated in the course. TNO-ESI was in the spotlight during the last day of the course. In the morning, I introduced the high-tech equipment domain and its complexity drivers and explained how new model-based engineering methodologies where needed to address them. Next, my colleague Bram van der Sanden presented our view on the field of System Performance Engineering, along with its focus areas and best practices. This was followed by two concrete examples from our system performance research: Kostas Triantafyllidis presented his work on performance analysis and diagnosis with ASML, followed by a presentation by me about performance verification and conformance checking in microservice systems based on our work with Thales.

The course was well-received by the participants and the contents were rated 8.7/10 in the evaluation. We very much enjoyed the experience of creating and delivering this course together with our academic partners. Thank you Kuan-Hsun Chen (leader of the initiative), Mitra Nasri, and Geoffrey Nelissen for the excellent collaboration in organizing this course. Thanks to Kay Heider and Christian Hakert for leading the hands-on exercises. We are also thankful to invited speakers Bram van der Sanden and Kostas Triantafyllidis.

Faezeh Saadatmand Wins Best Paper Award at ICPS

Good news everyone! Our paper “Automated Derivation of Application Workload Models for Design Space Exploration of Industrial Distributed Cyber-Physical Systems” won the Best Paper Award at the 7th IEEE International Conference on Industrial Cyber-Physical Systems (ICPS). This is an impressive feat, especially considering that it is the first paper first-authored by Faezeh Saadatmand, PhD student at Leiden University. Congratulations Faezeh!

The paper tackles an urgent issue: the growing complexity of industrial cyber-physical systems, which is driving up development and maintenance costs. As these systems incorporate more functions, the number of hardware and software components increases rapidly, making it harder to analyze and optimize their performance. Model-based methodologies have been proposed as a means to manage complexity and increase productivity of engineers by using models as a base for specification, communication, analysis, and synthesis of artifacts like documentation, simulation models, and code. But who is going to make models of systems with tens of compute nodes and hundreds of software processes, especially when increased customization results in a unique configuration for each manufactured system? This research addresses this need by introducing an automatic method for deriving an application workload model. This model, based on trace analysis, captures computation and communication activities within an application in a timing-agnostic manner. The method was validated through a case study on an ASML Twinscan lithography machine, showing high accuracy in representing real application workloads.

This paper is a result from the Design Space Exploration 2.0 (DSE2.0) project, one of four academic projects co-funded by TNO-ESI and NWO as a part of the Mastering Complexity (MasCot) program.