A-3: An Architectural Style for Coordinating Distributed Components
Luciano Baresi, Sam Guinea · 2011
Distributed systems comprise a significant number of entities that must be properly coordinated to reach a goal. These systems present high turnover of elements, and demand for solutions that keep their coordination as decentralized as possible to avoid bottlenecks. The paper discusses why it is important to address these characteristics from a system's conception and proposes A-3, an innovative architectural solution that adopts the concept of group as an abstraction for organizing an application into semi-independent slices, providing a single and coherent view of these aggregates, and coordinating the interactions inside and among groups. The paper presents the A-3 model and defines it as an innovative architectural style, describes a Java-based framework that supports A-3 and provides users with the proper means to exploit the style, and exemplifies all the main concepts on a simple scenario where autonomous robotic vacuum cleaners are coordinated to properly clean a museum.