Distilling Software Architectural Primitives from Architectural Styles
نویسندگان
چکیده
Architectural styles codify commonly used idioms in system structures, organizations, and interactions. Existing classifications of architectural styles provide empirical guidelines for style selection, but fail to systematically characterize styles or reveal their foundations. Moreover, the mapping between architectural styles and their implementations is generally poorly understood. This paper introduces an approach towards a systematic understanding of architectural styles based on a small set of recurring architectural primitives. Also proposed is an extensible composition framework for architectural styles based on these primitives, which is, in turn, used as the basis of style implementation. This framework, called Alfa, has been applied successfully to four different architectural styles to date. Lightweight compositional models of the styles have been created using the Alloy formal modeling notation, whereas implementation infrastructures for these styles have been developed in Java. While it would be premature to claim that Alfa is sufficiently expressive to represent any arbitrary architectural style, our experience to date suggests that we have converged on a set of primitives that effectively captures the characteristics of a large number of styles. As such, we feel that Alfa already presents a unique contribution and is worthy of careful further study.
منابع مشابه
Alfa: A framework for composing software architectures from architectural primitives
Architectural styles represent composition patterns and constraints at the software architectural level and are targeted at families of systems with shared characteristics. They enable architectural reuse and hence can bring economy to architecture-based software development. Existing research on architectural styles provides little guidance for the systematic design and construction of archite...
متن کاملConcise Composit ion of Architectural Styles From Architectural Primit ives
Architectural styles represent composition patterns and constraints at the software architectural level and are targeted at families of systems with shared characteristics. They enable architectural reuse and hence can bring economy to the design of software architecture. Existing approaches support systematic description of style-based software architectures. Our approach, Alfa, focuses on the...
متن کاملComposition Of Style-Based Software Architectures From Architectural Primitives
The codification of software architectural decisions made to address recurring software development challenges results in architectural styles. The Alfa framework provides a small set of architectural primitives for systematically specifying styles and style-based architectures for networkbased systems. In this paper, we formalize Alfa’s primitives in a compositional theory of styles and softwa...
متن کاملStyle-Based Software Architectural Compositions as Domain-Specific Models
Architectural styles represent composition patterns and constraints at the software architectural level and are targeted at families of systems with shared characteristics. While both style-specific and style-neutral modeling environments for software architectures exist, creation of such environments is expensive and frequently involves reinventing the wheel. This paper describes the rapid des...
متن کاملA Formal Approach for Incorporating Architectural Tactics into the Software Architecture
Software architects principally leverage successful architectural design practices systematized in terms of architectural styles and tactics. While architectural tactics focus on particular non-functional properties, styles are typical solutions that generally coverage several aspects. The problem is that we do not yet have a formal account of how styles and tactics interact in a way that is su...
متن کامل