The Journey from Offline to Online Conformance Checking for Microservice Applications

Ricardo Andrade has successfully defended his master thesis “Real-Time Conformance Checking for Microservice Applications“. This thesis was done in the context of the ArchViews project together with Thales. The academic supervisor was ESI colleague and TU/e professor Johan Lukkien and the daily supervision at ESI was done by myself and Ben Pronk.

The thesis addresses the shift from monolithic architectures to microservice architectures in order to manage the complexities and dependencies that emerge as systems grow and incorporate new features. A significant gap identified in the management of microservice applications is the lack of effective conformance checking techniques that can verify whether the execution of microservices aligns with their specification. To address this, the thesis proposes an innovative solution by developing an online conformance checker specifically designed for microservice applications. The project begins with the creation of an offline conformance checker that evaluates conformance using execution traces and sequence diagrams. The work then progresses to an online conformance checker, significantly improving performance and delivering conformance results within approximately 30 seconds per trace. This rapid response time meets the requirement for swift identification and correction of non-conforming sequences, thereby offering a practical and effective tool for managing microservice applications.

Ricardo presented his work very well using beautifully prepared slides. He confidently answered questions from the audience and the examination committee and left the session with a good grade. Ricardo is now moving on from his studies to start his career at CGI. We wish him the best of luck in his future career.

Jesse Liauw-A-Fong Defends Master’s Thesis on Local Anomaly Detection in Smart Public Transport Vehicles

Yesterday, Jesse Liauw-A-Fong, a student of the Master of Software Engineering program at UvA, defended his thesis Local Anomaly Detection in Smart Public Transport Vehicles. This research was conducted externally at a company called Ximedes. Jessie’s research is addressing the problem of detecting anomalies, such as a loss of cloud connection, in Smart Public Transport Vehicles (SPTV), such as buses, trams, and metros, comprising many complex heterogeneous systems. It emphasizes the importance of local, context-aware anomaly detection due to the dynamic nature of SPTVs and explores the generalization of anomaly detection, particularly addressing performance, normal region, and quality challenges. The research proposes a unified data collection framework comparing agent-based and agent-less methods, advocating for an agent-based approach for its adaptability and integration ease. It also quantitatively evaluates three local anomaly detection algorithms on real data from a specific bus line. We thank Jessie for his contributions to our research and wish him the best of luck in his future career.

Master Thesis Shines Light on Hardware Dimensioning for Cyber-Physical Systems

On Wednesday, Marijn Vollaard defended his master thesis “Hardware Dimensioning for Microservice-based Cyber-Physical Systems: A Profiling and Performance Prediction Method” at the University of Amsterdam. This research has been supervised by Ben Pronk and myself as a part of a project with TNO-ESI.

The thesis addresses the problem of determining the number of homogeneous compute nodes needed for a particular variant of a cyber-physical system to meet its timing requirements. This is important in early discussions with customers and bidding processes, since it affects the size and cost of the resulting system. To this end, the thesis proposes a structured hardware dimensioning methodology comprising a profiling method and a performance prediction method. The four novel contributions of the thesis are: 1) A component-based profiling method, 2) a performance prediction method, 3) a structured hardware dimensioning methodology, and 4) validation of the approach, using a case study that represents a prototype of a CPS. Experimental evaluations on the case study show that the predicted performance differs from measurements on the application by at most 20%, which is satisfactory for hardware dimensioning decisions for new product variants.

The defense went well and Marijn confidently presented his story and convincingly answered the questions of the audience. The examination committee, impressed by his work, awarded his thesis a well-deserved grade of 8. As we bid farewell to Marijn, embarking on his next career adventure, we also extend our heartfelt congratulations. He certainly has much to be proud of. We wish him all the best on his travels and in his future pursuits.

Master’s Student Marijn Vollaard Shines with Study on Hardware Dimensioning for Microservice Applications in Cyber-Physical Systems

Our master’s student, Marijn Vollaard, has achieved a significant milestone by completing and presenting his literature study titled “Hardware Dimensioning for Microservice Applications in Cyber-Physical Systems: Current Directions and Challenges” The study addresses the challenge of dimensioning the number of compute nodes required to meet the performance demands of microservice-based applications in cyber-physical systems. It thoroughly reviews an extensive body of literature on application and system profiling, performance prediction, and design-space exploration to establish the current state of knowledge in this field. The survey culminates in a discussion about how the surveyed literature applies to microservice applications, the cyber-physical systems context, and the problem of hardware dimensioning. Overall, this is a nice piece of work with a lot of references presented in a systematic way. Congratulations to Marijn for his great effort!”

Master Thesis Tackles Architectural Anti-patterns in Microservice Applications

Today, we are delighted to announce the successful defense of the outstanding master’s thesis titled “Architectural Anti-Pattern Identification and Mitigation in Microservice Applications Based on Telemetry” by our master student, Amund Lunke Rohne from the University of Amsterdam. This master’s project was a collaborative effort involving TNO-ESI and Thales.

The thesis addresses the problem that microservices offer benefits like scalability and separation of concerns, but also introduce many complex service dependencies. The decomposition of microservice applications can impact system performance and maintainability and can lead to architectural anti-patterns over time. While simple anti-patterns can be detected using analysis of service dependencies, there is a lack of formal mathematical definitions which prevents more complex anti-patterns from being automatically detected by tools. The thesis introduces a novel model called Granular Hardware Utilization-Based Service Dependency Graph (GHUBS), a fine-grained model that captures the interactions dependencies between services at the level of individual requests. The GHUBS model can be manually specified in early design phases to validate a microservice decomposition, or automatically created using telemetry data from a running application. Mathematical formalizations are introduced for four common architectural anti-patterns and methods for automatically detecting them using the GHUBS model is presented. A method for recommending how to mitigate the identified anti-patterns based on the service dependencies in the GHUBS model, as well as resource utilization metrics for the services, is also presented. The approach is implemented in a tool called Televisor and validated through case studies on open-source microservice benchmarking applications, revealing instances of these anti-patterns.

We thank Amund for his work and a fruitful collaboration, and wish him the best of luck in his future career.

Scaling the Future: Master Thesis Defense on Scalability in Simulation Environments for Distributed Cyber-Physical Systems

Today, we celebrate that Herman Kelder successfully defended his master thesis “Scalability in System-Level Simulation Environments for Distributed Cyber-Physical Systems“. This work was carried out in the context of the DSE2.0 project, where we address the complex scientific challenges involved in performing design-space exploration (DSE) for complex distributed cyber-physical systems (dCPS), such as lithography machines. Three key challenges in this context are: 1) automatically modelling the application and platform based on data from the running system, 2) scalable search and pruning algorithms that help navigate large design spaces efficiently, and 3) scalable simulation environments that allow many design points to be efficiently evaluated concurrently.

Herman’s thesis addresses the last of these three challenges. To facilitate scalable and efficient DSE for dCPS, an evaluation environment is proposed, implemented, and evaluated. The research considers key design considerations for developing a distributed evaluation workflow that can dynamically be adapted to enable efficient and scalable exploration of the vast design space of complex, distributed cyber-physical systems. Evaluation of the proposed environment employs a set of system models, representing design points within a DSE process, to assess the solution and its behavior, performance, capability, and applicability in addressing the scalability challenge in the context of DSE for dCPS. During the evaluation, the performance and behavior are investigated in three areas: (i) Simulation Campaign, (ii) Task Management Configuration, and (iii) Parallel Discrete-Event Simulation (PDES). Throughout the evaluation, it is demonstrated that the proposed environment is capable of providing scalable and efficient evaluation of design points in the context of DSE for dCPS. Furthermore, the proposed solution enables designers and researchers to tailor it to their environment through dynamic complex workflows and interactions, workload-level and task-level parallelism, and simulator and compute environment agnosticism.

Herman executed his project meticulously and delivered excellent research results, both in terms of concepts and implementation. Thank you very much for your contributions Herman and we hope to work with you again at some point.

Advancing Design Space Exploration: Literature Review Explores Network Delay Models for Distributed Cyber-Physical Systems

Another literature review has been completed in the context of the DSE2.0 research project. William Ford completed his review entitled “Network Delay Model Creation and Validation for Design Space Exploration of Distributed Cyber-Physical Systems“.

Design-space exploration (DSE) in early phases of design of a distributed cyber-physical system (dCPS) requires models. In the DSE2.0 project, we are particularly interested in models that capture the timing behavior of hardware and software, allowing temporal system performance to be evaluated for different design points. One important part of the system to model is the network that connects the subsystems of the CPS. This study reviews previous work in the fields of analytical network modeling, network simulation, and network model validation. In addition, a recommended plan is presented to create and validate such a network model for the DSE2.0 project, based on this previous work. Two main directions are recommended at different levels of abstraction. For the lower level of abstraction, we will make a model using the existing INET framework that models each network element explicitly. At a higher level of abstraction, we will use a latency-rate server to capture the behavior of the network using only two parameters, latency and rate.

Having delivered his literature review. William has started his master project to pursue this research along these directions. The team looks forward to working with him.

Literature Review on Scalable System-level Simulation

Herman Kelder has joined the DSE2.0 research project as a master student. DSE2.0 is a project that aims to propose a methodology for design-space exploration of complex distributed cyber-physical systems, like lithography machines manufactured by ASML. One of the great challenges is to improve the scalability to handle the complexity of such systems, a challenge that needs to be addressed both in terms of how the system (performance) is modelled and evaluated (simulated) for a particular design point, as well as how design points to evaluate is being chosen. Hermans thesis will focus on how to improve the scalability of system-level simulation to allow more design points to be evaluated faster.

One of Herman’s first assignments was to put together a literature review on this topic. The literature review, entitled “Exploring Scalability in System-Level Simulation Environments for Distributed Cyber-Physical Systems“, investigates state-of-the-art scalability techniques for system-level simulation environments, i.e. Simulation Campaigns, Parallel Discrete Event Simulations (PDES), and Hardware Accelerators. The goal is to address the challenge of scalable Design Space Exploration (DSE) for dCPS, discussing such approaches’ characteristics, applications, advantages, and limitations. The conclusion recommends starting with simulation campaigns as those provide increased throughput, adapt to the number of tasks and resources, and are already implemented by many state-of-the-art simulators. Nevertheless, further research has to be conducted to define, implement, and test a sophisticated general workflow addressing the diverse sub-challenges of scaling system-level simulation environments for the exploration of industrial-size distributed Cyber-Physical Systems.

We look forward to working with Herman and seeing how his research develops along these directions.

Paper Accepted at PNSE 2022

I am happy to announce that the paper “Partial Specifications of Component-based Systems using Petri Nets” has been accepted for publication at the International Workshop on Petri Nets and Software Engineering (PNSE) 2022. This paper was first-authored by Bart-Jan Hilbrands, a (former) student in the Master of Software Engineering program at the University of Amsterdam, who did his master thesis project under the supervision of myself and my ESI colleague Debjyoti Bera. The master thesis project was conducted in the context of the DYNAMICS project, a bi-lateral research project between ESI and Thales, which looked into specification, verification, and adaptation of software interfaces.  This publication is a good example of how a good master thesis can be turned into a publication.

The paper addresses the problem of verifying correctness properties, such as absence of deadlocks, livelocks, and buffer overflows, in software components with multiple inter-dependent interfaces. An approach based on partial specification of dependencies between interfaces, expressed as a set of functional constraints, is proposed in the paper. The papers presents and formalizes three commonly occurring functional constraints and provides algorithms for encoding them into a Petri net representation of the interfaces, enabling interface verification through reachability analysis. The approach has been implemented and demonstrated using ComMA.

Master Thesis on Formal Verification of Software Interfaces Defended

Today, Bart-Jan Hilbrands, a master student from UvA supervised by myself and my ESI colleague Debjyoti Bera, successfully defended his master thesis “Verification of Inter-Dependent Interfaces in Component-Based Architectures”. The thesis considers formal verification of ComMA components with multiple interfaces with inter-dependent behavior, caused by three different types of functional constraints. The four main contributions of the thesis are: 1) A formalization of each type of interface constraint, defining how they should restrict behavior, 2)  a set of assumptions, describing properties that help ComMA users avoid creating specifications with termination issues, 3) methods for encoding the behavior of these constraints into existing Petri net representations of interfaces, and 4) methods for validating whether a set of given constraints is encoded correctly into a given Petri net. The theory is supported by a prototype implementation ComMA.

Bart presented his thesis well and expertly answered questions from the committee. We thank Bart for his excellent work and wish him good luck is his future career. First off, he will continue working with me and Deb to publish his work as a paper.