Concepedia

TLDR

The paper aims to establish a foundational framework for software architecture by introducing a three‑component model—elements, form, and rationale—and discussing its application to architectures and styles. The authors develop an intuition for software architecture using established disciplines, then define a model comprising elements (processing, data, connecting), form (properties and relationships among elements), and rationale (basis from system constraints), and illustrate it with an extended example. The study concludes that the proposed model offers benefits, summarizes its contributions, and positions it relative to existing research.

Abstract

The purpose of this paper is to build the foundation for software architecture. We first develop an intuition for software architecture by appealing to several well-established architectural disciplines. On the basis of this intuition, we present a model of software architecture that consists of three components: elements, form, and rationale. Elements are either processing, data, or connecting elements. Form is defined in terms of the properties of, and the relationships among, the elements --- that is, the constraints on the elements. The rationale provides the underlying basis for the architecture in terms of the system constraints, which most often derive from the system requirements. We discuss the components of the model in the context of both architectures and architectural styles and present an extended example to illustrate some important architecture and style considerations. We conclude by presenting some of the benefits of our approach to software architecture, summarizing our contributions, and relating our approach to other current work.

References

YearCitations

Page 1