Realization of distributed system models using code generation extensions

2018 ◽  
Vol 49 (3) ◽  
pp. 478-497 ◽  
Author(s):  
Miran Hasanagić ◽  
Peter W. V. Tran‐Jørgensen ◽  
René S. Nilsson ◽  
Peter Gorm Larsen
2021 ◽  
Vol 40 (2) ◽  
pp. 65-69
Author(s):  
Richard Wai

Modern day cloud native applications have become broadly representative of distributed systems in the wild. However, unlike traditional distributed system models with conceptually static designs, cloud-native systems emphasize dynamic scaling and on-line iteration (CI/CD). Cloud-native systems tend to be architected around a networked collection of distinct programs ("microservices") that can be added, removed, and updated in real-time. Typically, distinct containerized programs constitute individual microservices that then communicate among the larger distributed application through heavy-weight protocols. Common communication stacks exchange JSON or XML objects over HTTP, via TCP/TLS, and incur significant overhead, particularly when using small size message sizes. Additionally, interpreted/JIT/VM-based languages such as Javascript (NodeJS/Deno), Java, and Python are dominant in modern microservice programs. These language technologies, along with the high-overhead messaging, can impose superlinear cost increases (hardware demands) on scale-out, particularly towards hyperscale and/or with latency-sensitive workloads.


Author(s):  
Yingxu Wang ◽  
Xinming Tan ◽  
Cyprian F. Ngolah

Real-Time Process Algebra (RTPA) is a denotational mathematics for the algebraic modeling and manipulations of software system architectures and behaviors by the Unified Data Models (UDMs) and Unified Process Models (UPMs). On the basis of the RTPA specification and refinement methodologies, automatic software code generation is enabled toward improving software development productivity. This paper examines designing and developing the RTPA-based software code generator (RTPA-CG) that transfers system models in RTPA architectures and behaviors into C++ or Java. A two-phrase strategy has been employed in the design of the code generator. The first phrase analyzes the lexical, syntactical, and type specifications of a software system modeled in RTPA, which results in a set of abstract syntax trees (ASTs). The second phrase translates the ASTs into C++ or Java based on predesigned mapping strategies and code generation rules. The toolkit of RTPA code generator encompasses an RTPA lexer, parser, type-checker, and a code builder. Experimental results show that system models in RTPA can be rigorously processed and corresponding C++/Java code can be automatically generated using the toolkit. The code generated is executable and effective under the support of an RTPA run-time library.


Author(s):  
Yingxu Wang ◽  
Xinming Tan ◽  
Cyprian F. Ngolah

Real-Time Process Algebra (RTPA) is a denotational mathematics for the algebraic modeling and manipulations of software system architectures and behaviors by the Unified Data Models (UDMs) and Unified Process Models (UPMs). On the basis of the RTPA specification and refinement methodologies, automatic software code generation is enabled toward improving software development productivity. This paper examines designing and developing the RTPA-based software code generator (RTPA-CG) that transfers system models in RTPA architectures and behaviors into C++ or Java. A two-phrase strategy has been employed in the design of the code generator. The first phrase analyzes the lexical, syntactical, and type specifications of a software system modeled in RTPA, which results in a set of abstract syntax trees (ASTs). The second phrase translates the ASTs into C++ or Java based on predesigned mapping strategies and code generation rules. The toolkit of RTPA code generator encompasses an RTPA lexer, parser, type-checker, and a code builder. Experimental results show that system models in RTPA can be rigorously processed and corresponding C++/Java code can be automatically generated using the toolkit. The code generated is executable and effective under the support of an RTPA run-time library.


1980 ◽  
Vol 102 (2) ◽  
pp. 94-100 ◽  
Author(s):  
D. L. Margolis

Bond graphs are used for finite mode representations of distributed system dynamics. As long as all inputs to the system are “efforts” in a causal sense, then no formulation problems exist. However, if some of the system inputs are causal “flows”, then differential causality will exist and extremely tedious, often impossible, algebraic loops must be solved to formulate system equations. A procedure is developed which avoids these algebraic problems by including additional modal compliance in the system model without its associated modal inertia. The result of this approach is a finite mode distributed system model, devoid of artificially induced high frequencies, extremely accurate in a chosen frequency range, and capable of interacting with other distributed system models. The procedure is demonstrated through example.


2014 ◽  
Vol 51 (6) ◽  
pp. 347-418
Author(s):  
Miquel Bertran ◽  
Francesc Babot ◽  
August Climent

Sign in / Sign up

Export Citation Format

Share Document