PRACTICAL SOURCE CODE WEAVING FOR DISTRIBUTED WORKFLOW ABSTRACTIONS - Pantelimon, Silviu-George; Ciobanu, Radu-Ioan; Dobre, Ciprian (Scientific Bulletin. Series C, Electrical Engineering and Computer Science, 2025)
Aspect-oriented programming (AOP) is a modern software development paradigm that helps automate programming and increase software quality. A frequently used technique in AOP is called aspect weaving, which allows developers to reduce boilerplate code (lines of code repeated in multiple places with little to no variation), making it easier to add new features to existing source code. However, most frameworks that support AOP in various programming languages, with few exceptions, have not taken full advantage of this technique, especially when working on multiple projects with a shared code base (e.g., distributed systems like microservices). This paper proposes a novel approach that uses source code weaving to create complex workflows within a distributed application. By incorporating the workflow specifications directly into the code, our method aims to provide a unified abstraction for the distributed system, to simplify code and enable a better visibility of the distributed processes.