🤖 AI Summary
To address the challenges of co-modeling multi-source heterogeneous resources (e.g., hardware, software, networks, and microservices) and ensuring robustness in complex web applications, this paper proposes Chips—a domain-specific language (DSL) that integrates control-theoretic principles with general-purpose programming paradigms. Chips enables modular, function-oriented construction of discrete adaptive systems and introduces the first formally verifiable, component-based modeling approach that jointly ensures system-level adaptability and quality-of-service guarantees. Evaluated on the Adaptable TeaStore benchmark, Chips demonstrates substantial improvements in model composability, runtime dynamic adaptability, and fault tolerance. Moreover, it enhances both modeling efficiency and the rigor of reliability analysis.
📝 Abstract
When designing new web applications, developers must cope with different kinds of constraints relative to the resources they rely on: software, hardware, network, online micro-services, or any combination of the mentioned entities. Together, these entities form a complex system of communicating interdependent processes, physical or logical. It is very desirable that such system ensures its robustness to provide a good quality of service. In this paper we introduce Chips, a language that aims at facilitating the design of models made of various entwined components. It allows the description of applications in the form of functional blocks. Chips mixes notions from control theory and general purpose programming languages to generate robust component-based models. This paper presents how to use Chips to systematically design, model and analyse a complex system project, using a variation of the Adaptable TeaStore application as running example.