Master Thesis Project Leads to Conference Publication on Microservice Architecture Anti-Patterns at SEAA 2024

I am delighted to announce that our paper, “Graph-based Anti-Pattern Detection in Microservice Applications,” has been accepted for publication at the 50th Euromicro Conference Series on Software Engineering and Advanced Applications (SEAA). This paper stems from Amund Lunke Røhne’s master thesis project, which he conducted as an internship with TNO-ESI under the supervision of myself and Ben Pronk. This achievement showcases how exceptional work by master students can lead to publications in established conferences.

Our paper addresses a significant challenge in the evolution of microservice applications: as the microservice architecture evolves, architectural anti-patterns may emerge. These anti-patterns are challenging to detect and manage due to their informal natural language definitions and the lack of automated tools. To tackle this, we propose an automated methodology for detecting architectural anti-patterns related to microservice dependencies. A key component of this methodology is the novel Granular Hardware Utilization-Based Service Dependency Graph (GHUBS) model, which is automatically inferred from telemetry data. We have formalized three commonly known anti-patterns and developed algorithms to detect them within the GHUBS model. This methodology is supported by an open-source tool that automatically identifies and visualizes these anti-patterns. We validated our approach using both synthetic data and a case study of a popular microservice benchmarking suite, demonstrating successful detection of the formalized anti-patterns.

Congratulations to Amund on the acceptance of your paper! Your work has made both TNO-ESI and the Software Engineering program at the University of Amsterdam very proud!

Merrick Oost-Rosengren Successfully Defends Thesis on Early Component Verification using Colored Petri Nets

Just before the summer holidays, another master student has finished his project. This time, it is Merrick Oost-Rosengren who successfully defended his thesis “Formal Verification of Components through Mirroring of Coloured Petri Nets“. Parts of this work was done as an internship with TNO-ESI in collaboration with Thales.

This research addresses a challenge in distributed component-based systems, where different components are developed by different teams, perhaps even different organizations, over time. The problem is that when components are ultimately integrated, their interactions may cause deadlocks, livelock, or unbounded memory behavior. Fixing such problems late in the development process is very costly. An alternative approach is to model components, or component interfaces, early in the design process and use model checking to verify the behavior of the component and its interactions. However, we may not know which components it will interact with yet. Perhaps they have not yet been developed?

The thesis addresses this challenge by proposing a methodology and corresponding tool chain, where components as modelled as Colored Petri Nets from which a verification model, a mirror of the component that captures relevant possible behaviors of interacting components, is automatically generated. As a part of the methodology, the thesis proposes a new class of Colored Petri Nets called Mirrorable Open Colored Petri Nets. This class combines features of existing Colored Petri Nets and Open Petri Nets, and also adds extra semantics to allow the component to be mirrored. It also describes methods for mirroring such a net and fusing the mirror with the original component, such that the components and its interactions can be verified using reachability analysis.

We congratulate Merrick on his successful defense and wish him a lovely summer!

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.