Abstract:Composite components are components that have internal structures. Supported by almost all architecture description languages, composite components can organize architectural models in a hierarchical structure. However, most analysis and verification tools for SA model do not support composite components, neither do most component frameworks. Therefore, it is necessary to flatten the hierarchical SA model so that SA can play a more important role in practice. The most challenging issue in the flattening is how to assure the consistency between architectural models with and without composite components. In this paper, a formal definition of the consistency of an SA model is presented. Based on that, principles and guidelines for consistency assurance in flattening a hierarchical SA model are provided. Their feasibility is exemplified by a componentized email client.