Formal Analysis of Publish-Subscribe Systems by Probabilistic Timed Automata

  • Fei He
  • Luciano Baresi
  • Carlo Ghezzi
  • Paola Spoletini
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4574)


The publish-subscribe architectural style has recently emerged as a promising approach to tackle the dynamism of modern distributed applications. The correctness of these applications does not only depend on the behavior of each component in isolation, but the interactions among components and the delivery infrastructure play key roles. This paper presents the first results on considering the validation of these applications in a probabilistic setting. We use probabilistic model checking techniques on stochastic models to tackle the uncertainty that is embedded in these systems. The communication infrastructure (i.e., the transmission channels and the publish-subscribe middleware) are modeled directly by means of probabilistic timed automata. Application components are modeled by using statechart diagrams and then translated into probabilistic timed automata. The main elements of the approach are described through an example.


Model Check Transmission Channel Application Component Symbolic Model Check Discrete Probability Distribution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    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)CrossRefGoogle Scholar
  2. 2.
    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)CrossRefGoogle Scholar
  3. 3.
    Cugola, G., Picco, G.P.: Reds: a reconfigurable dispatching system. In: SEM ’06. Proceedings of the 6th international workshop on Software engineering and middleware, pp. 9–16. ACM Press, New York, NY, USA (2006)CrossRefGoogle Scholar
  4. 4.
    Zanolin, L., Ghezzi, C., Baresi, L.: An approach to model and validate publish/subscribe architectures. In: Proceedings of the SAVCBS’03 Workshop, Helsinki, Finland (2003)Google Scholar
  5. 5.
    Baresi, L., Ghezzi, C., Mottola, L.: Towards fine-grained automated verification of publish-subscribe architectures. In: Najm, E., Pradat-Peyre, J.F., Donzeau-Gouge, V.V. (eds.) FORTE 2006. LNCS, vol. 4229, pp. 131–135. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Baresi, L., Ghezzi, C., Mottola, L.: On accurate automatic verification of publish-subscribe architectures. In: Proceedings of the 29th International Conference on Software Engineering (ICSE07), Minneapolis (MN, USA) (To appear, 2007)Google Scholar
  7. 7.
    Garlan, D., Khersonsky, S.: Model checking implicit-invocation systems. In: Proc. of the 10th Int’l Workshop on Software Specification and Design, pp. 23–30 (2000)Google Scholar
  8. 8.
    Garlan, D., Khersonsky, S., Kim, J.S.: Model checking publish-subscribe systems. In: Proc. of the 10th Int’l SPIN Workshop on Model Checking of Software (2003)Google Scholar
  9. 9.
    Bradbury, J.S., Dingel, J.: Evaluating and improving the automatic analysis of implicit invocation systems. In: FSE (2003)Google Scholar
  10. 10.
    Zhang, H., Bradbury, J.S., Cordy, J.R., Dingel, J.: A transformational framework for testing and model checking implicit invocation systems. In: Proc. Int. Work. on Distr. Event-Based Systems (DEBS’04) (2004)Google Scholar
  11. 11.
    Caporuscio, M., Inverardi, P., Pelliccione, P.: Compositional verification of middleware-based software architecture descriptions. In: ICSE ’04. Proceedings of the 26th International Conference on Software Engineering, pp. 221–230. IEEE Computer Society Press, Los Alamitos (2004)Google Scholar
  12. 12.
    Alur, R., Courcoubetis, C., Dill, D.: Model-checking for real-time systems. In: Proceedings of Fifth Annual IEEE Symposium on Logic in Computer Science, pp. 414–425 (1990)Google Scholar
  13. 13.
    Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Kwiatkowska, M., Norman, G., Segala, R., Sproston, J.: Automatic verification of real-time systems with discrete probability distributions. Theoretical Computer Science 282, 101–150 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Kwiatkowska, M., Norman, G., Sproston, J., Wang, F.: Symbolic model checking for probabilistic timed automata. In: Lakhnech, Y., Yovine, S. (eds.) FORMATS 2004 and FTRTFT 2004. LNCS, vol. 3253, pp. 293–308. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. 16.
    Kwiatkowska, M., Norman, G., Parker, D., Sproston, J.: Performance analysis of probabilistic timed automata using digital clocks. Formal Methods in System Design 29, 33–78 (2006)CrossRefzbMATHGoogle Scholar
  17. 17.
    Kwiatkowska, M., Norman, G., Parker, D.: Probabilistic symbolic model checking with PRISM: A hybrid approach. International Journal on Software Tools for Technology Transfer (STTT) 6(2), 128–142 (2004)CrossRefzbMATHGoogle Scholar
  18. 18.
    Kwiatkowska, M., Norman, G., Parker, D.: Quantitative analysis with the probabilistic model checker PRISM. Electronic Notes in Theoretical Computer Science 153(2), 5–31 (2005)CrossRefGoogle Scholar
  19. 19.
    Hinton, A., Kwiatkowska, M., Norman, G., Parker, D.: PRISM: A tool for automatic verification of probabilistic systems. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006 and ETAPS 2006. LNCS, vol. 3920, pp. 441–444. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  20. 20.
    Alur, R., Henzinger, T.A.: Reactive modules. Formal Methods in System Design: An International Journal 15(1), 7–48 (1999)CrossRefGoogle Scholar
  21. 21.
    Hansson, H., Jonsson, B.: A logic for reasoning about time and reliability. Formal Aspects of Computing 6(5), 512–535 (1994)CrossRefzbMATHGoogle Scholar
  22. 22.
    Bianco, A., de Alfaro, L.: Model checking of probabilistic and nondeterministic systems. In: Thiagarajan, P.S. (ed.) Foundations of Software Technology and Theoretical Computer Science. LNCS, vol. 1026, pp. 499–513. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  23. 23.
    Aziz, A., Sanwal, K., Singhal, V., Brayton, R.K.: Verifying continuous time markov chains. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 269–276. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  24. 24.
    Baier, C., Katoen, J.P., Hermanns, H.: Approximate symbolic model checking of continuous-time markov chains. In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 146–161. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  25. 25.
    Kwiatkowska, M., Norman, G., Pacheco, A.: Model checking expected time and expected reward formulae with random time bounds. In: Proc. 2nd Euro-Japanese Workshop on Stochastic Risk Modelling for Finance, Insurance, Production and Reliability (2002)Google Scholar
  26. 26.

Copyright information

© IFIP International Federation for Information Processing 2007

Authors and Affiliations

  • Fei He
    • 1
  • Luciano Baresi
    • 2
  • Carlo Ghezzi
    • 2
  • Paola Spoletini
    • 2
  1. 1.Department of Computer Science & Technology, Tsinghua University, Beijing, 100084China
  2. 2.Dipartimento di Elettronica e Informazione, Politecnico di Milano, Milano, 20133Italy

Personalised recommendations