Compliance between Architecture and Design Models of Component-Based Systems - Herold, Sebastian (Electronic Communications of the EASST, 2011)
The design of software systems and the models describing it are usually constrained by the intended software architecture. The intended software architecture defines, for example, how components may be grouped or how they may interact. For the sake of maintenance, evolvability, and smooth operation of software systems, it is of great importance to check and guarantee the architectural compliance of the design and the implementation. Due to size and complexity of modern software systems such checks cannot be done manually but require adequate tool support. Unfortunately, current tool support is not flexible enough to cover easily different aspects of architectural compliance checking. This paper outlines an approach to architectural compliance checking in component-based systems based on logic formalisms. Furthermore, the paper describes a prototypical tool that realizes the approach, and its application in a case study.