The design of a large component-based software system typically involves the composition of different components. The lack of rigorous reasoning about the correctness of composition is an important barrier towards the promise of “plug and play”. In this paper, we describe a rigorous logic framework to reason about component compositions. We focus our analysis on design components, such as design patterns, which have been used by a large number of applications. We also propose methods to verify structural and behavioral composition correctness.
['Jing Dong']
A logical framework for design composition