. The architecture of a piece of software refers to its structure as given by its components and their interconnections. An architectural style is a set of commonalities among the structures of a number of software systems. We are concerned with architectures that are characterized by directed graphs. The graphs we are interested in contain edges that are "typed" or "colored", which means that there are a finite number of different kinds of edges. The nodes in the graphs represent entities such as procedures, modules and subsystems. The edges in the graphs represent relations among these entities, such as "calls", "accesses", "imports", "includes", and "uses". This paper shows how binary relational algebra, as defined by Tarski and refined by Schmidt and others, can be used to formalize this type of architectural style. We show how this algebraic approach can be used to give constraints among the relations in an architecture. For example, we can use a relational inequality to formalize..
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.