Formal Design of Structural and Dynamic Features of Publish/Subscribe Architectural Styles
This paper proposes a compositional formal approach to design correct publish/subscribe architecture styles. We provide a set of patterns and the corresponding composition rules to build architecture styles. The defined patterns and rules respect the principle of information propagation requiring that produced information have to reach all the subscribed consumers. We describe patterns as graphs and we use the Z notation to specify formally the semantic of each pattern and each rule. We prove consistency and correctness using the Z-Eves theorem prover. We show how to consider the interconnection topology between dispatchers as well as the subscription mechanism by simple refinements. We also show how to construct the Z specification of the designed architecture style based on applied rules. Moreover, we describe the dynamics of architecture via guarded graph-rewriting rules whose body describe the structural constraints and whose guards mainly describe the functional constraints of the system. We express these rules entirely with the Z notation also, obtaining a unified approach which handles both the static and the dynamic aspects.
Keywordssoftware architecture publish/subscribe style style composition formal specification architecture modeling dynamic architecture graph rewriting
Unable to display preview. Download preview PDF.
- 5.Garlan, D., Monroe, R.T., Wile, D.: Acme: architectural description of component-based systems. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of component-based systems, pp. 47–68. Cambridge University Press, Cambridge (2000)Google Scholar
- 6.Carneiro de Paula, V.C., Ribeiro-Justo, G.R., Cunha, P.R.F.: Specifying and verifying reconfigurable software architectures. In: PDSE 2000: Proceedings of the International Symposium on Software Engineering for Parallel and Distributed Systems, pp. 21–31 (2000)Google Scholar
- 10.Baresi, L., Ghezzi, C., Zanolin, L.: Modeling and validation of publish/subscribe architectures. In: Beydeda, S., Gruhn, V. (eds.) Testing Commercial off the shelf Components And Systems, pp. 273–292 (2005)Google Scholar
- 11.Fenkam, P., Gall, H., Jazayeri, M.: A systematic approach to the development of event based applications. In: SRDS 2003. The 22nd Symposium on Reliable Distributed Systems, Florence, Italy, October 2003, pp. 199–208 (2003)Google Scholar
- 12.Baldoni, R., Scipioni, S., Tucci-Piergiovanni, S.: Communication channel management for maintenance of strong overlay connectivity. In: ISCC 2006. Proceedings of the 11th IEEE Symposium on Computers and Communications, Washington, DC, USA, pp. 63–68. IEEE Computer Society Press, Los Alamitos (2006)Google Scholar
- 13.Parzyjegla, H., Muhl, G.G., Jaeger, M.A.: Reconfiguring publish/subscribe overlay topologies. In: ICDCSW 2006. Proceedings of the 26th IEEE International ConferenceWorkshops on Distributed Computing Systems, Washington, DC, USA, p. 29. IEEE Computer Society Press, Los Alamitos (2006)Google Scholar
- 16.Wermelinger, M.A.: Specification of software architecture reconfiguration. PhD thesis, Université Nova de Lisbon, Septembre (1999)Google Scholar
- 17.Chassot, C., Guennoun, K., Drira, K.: Architectural adaptability management for mobile cooperative systems. In: MUE 2007. International Conference on Multimedia and Ubiquitous Engineering, Seoul, Korea, pp. 1130–1135 (2007)Google Scholar