Date of Original Version
Abstract or Description
The backbone of many software architectures and component integration frameworks is an architectural style that provides a domain-specific design vocabulary and a set of constraints on how that vocabulary is used. Given the increasing number and complexity of architectural styles, designing a sound and appropriate style becomes an important and intellectually challenging activity. Unfortunately, although there are numerous tools to help in the analysis of architectures for individual systems, relatively less work has been done on tools to help the style designer. In this paper we show how to map an architectural style, expressed formally in an architectural description language, into a relational model that can be automatically checked for properties such as whether a style is consistent, whether a style satisfies some predicate over the architectural structure, whether two styles are compatible for composition, and whether one style refines another.