Abstract
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.
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Spivey, J.M.: The Z notation: a reference manual. Prentice-Hall, Inc., Upper Saddle River (1989)
Luckham, D.C., Kenney, J.L., Augustin, L.M., Vera, J., Bryan, D., Mann, W.: Specification and analysis of system architecture using Rapide. IEEE Transactions on Software Engineering 21(4), 336–355 (1995)
Oquendo, F.: π-Method: A Model-Driven Formal Method for Architecture-Centric Software Engineering. ACM SIGSOFT Software Engineering Notes 31(3), 1–13 (2006)
Allen, R., Garlan, D.: A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)
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)
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)
Le Métayer, D.: Describing software architecture styles using graph grammars. IEEE Transactions On Software Engineering 24(7), 521–533 (1998)
Carzaniga, A., Rosenblum, D.S., Wolf, A.L.: Design and evaluation of a wide-area event notification service. ACM Transactions on Computer Systems 19(3), 332–383 (2001)
Cugola, G., Di Nitto, E., Fuggetta, A.: The JEDI event-based infrastructure and its application to the development of the OPSS WFMS. IEEE Transactions on Software Engineering 27(9), 827–850 (2001)
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)
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)
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)
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)
Cugola, G., Frey, D., Murphy, A.L., Picco, G.P.: Minimizing the reconfiguration overhead in content-based publish-subscribe. In: SAC 2004, pp. 1134–1140. ACM Press, New York (2004)
Eugster, P.T., Felber, P.A., Guerraoui, R., Kermarrec, A.-M.: The many faces of publish/subscribe. ACM Comput. Surv. 35(2), 114–131 (2003)
Wermelinger, M.A.: Specification of software architecture reconfiguration. PhD thesis, Université Nova de Lisbon, Septembre (1999)
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)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Loulou, I., Hadj Kacem, A., Jmaiel, M., Drira, K. (2007). Formal Design of Structural and Dynamic Features of Publish/Subscribe Architectural Styles. In: Oquendo, F. (eds) Software Architecture. ECSA 2007. Lecture Notes in Computer Science, vol 4758. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75132-8_5
Download citation
DOI: https://doi.org/10.1007/978-3-540-75132-8_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75131-1
Online ISBN: 978-3-540-75132-8
eBook Packages: Computer ScienceComputer Science (R0)