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.
翻译:在设计新型网络应用时,开发者必须应对其依赖资源相关的各类约束:软件、硬件、网络、在线微服务,或上述实体的任意组合。这些实体共同构成了一个由物理或逻辑的相互依赖通信进程组成的复杂系统。此类系统确保其鲁棒性以提供良好服务质量至关重要。本文提出Chips语言,旨在促进由多种交织组件构成的模型设计。该语言支持以功能模块形式描述应用程序。Chips融合控制理论与通用编程语言的概念,生成基于组件的鲁棒模型。本文通过以可适应TeaStore应用的变体作为运行示例,系统阐述如何运用Chips进行复杂系统项目的设计、建模与分析。