Formal specification of design pattern combination using BPSL

Abstract Pattern users are faced with difficulties in understanding when and how to use the increasing number of available design patterns due the inherent ambiguity in the existing means (textual and graphical) of describing them. Since patterns are seldom used in isolation but are usually combined to solve complex problems, the above-mentioned difficulties have even worsen. Hence, there is an appealing need to introduce formalism to accurately describe patterns and pattern combination to allow rigorous reasoning about them. The main problem of existing formal specification languages for design patterns is lack of completeness. This is mainly due either because they were not originally conceived to specify design patterns and have been adapted to do so, or they tend to focus on specifying either the structural or behavioral aspect of design patterns but not both of them. Moreover, only few of them venture in specifying design pattern combination. We propose a simple yet Balanced Pattern Specification Language that is aimed to achieve equilibrium by specifying the structural as well as behavioral aspects of design patterns. This is achieved by combining two subsets of logic one from First Order Logic and one from Temporal Logic of Actions. Moreover it can be used to formally specify pattern combination.

[1]  Martín Abadi,et al.  Composing specifications , 1989, TOPL.

[2]  Tommi Mikkonen,et al.  Formalizing design patterns , 1998, Proceedings of the 20th International Conference on Software Engineering.

[3]  Ralph-Johan Back,et al.  Distributed cooperation with action systems , 1988, TOPL.

[4]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[5]  Motoshi Saeki,et al.  Behavioral specification of GOF design patterns with LOTOS , 2000, Proceedings Seventh Asia-Pacific Software Engeering Conference. APSEC 2000.

[6]  Paulo S. C. Alencar,et al.  Ensuring structure and behavior correctness in design composition , 2000, Proceedings Seventh IEEE International Conference and Workshop on the Engineering of Computer-Based Systems (ECBS 2000).

[7]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.