Formal Modeling of a Generic Middleware to Ensure Invariant Properties

  • Xavier Renault
  • Jérôme Hugues
  • Fabrice Kordon
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5051)


The complexity of middleware leads to complex Application Programming Interfaces (APIs) and semantics, supported by configurable components in the middleware. Those components are selected to provide the desired semantics. Yet, incorrect configuration can lead to faulty middleware executions, detected late in the development cycle.

We use formals methods to tackle this problem. They allow us to find appropriate composition of middleware components and the use of their APIs, and to detect valid or faulty sequences. To provide reusable results, we modeled a canonical middleware architecture using Z.

We propose a validation scenario to verify middleware’s invariants. We define invariants to exhibit inconsistent usage of these APIs. The specification has been checked with the Z/EVES [13] theorem prover.


Server Side Reference Info Incoming Request Object Request Broker Request Queue 
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.
    Basin, D., Rittinger, F., Viganò, L.: A Formal Analysis of the CORBA Security Service. In: Bert, D., P. Bowen, J., C. Henson, M., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 330–349. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. 2.
    Bolognesi, T., Brinksma, E.: Introduction to the ISO specification language LOTOS. Comput. Netw. ISDN Syst. 14(1), 25–59 (1987)CrossRefGoogle Scholar
  3. 3.
    Freitas, L.: Posix 1003.21 standard – real time distributed systems communication (in Z/Eves). Technical report, University of York (2006)Google Scholar
  4. 4.
    Object Management Group. Corba component model 4.0 specification. Specification Version 4.0, Object Management Group (April 2006)Google Scholar
  5. 5.
    Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 26(1), 53–56 (1983)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Hugues, J., Thierry-Mieg, Y., Kordon, F., Pautet, L., Baarir, S., Vergnaud, T.: On the Formal Verification of Middleware Behavioral Properties. In: Proceedings of the 9th International Workshop on Formal Methods for Industrial Critical Systems (FMICS 2004), Linz, Austria (September 2004)Google Scholar
  7. 7.
    Kreuz, D.: Formal specification of corba services using object-z. In: ICFEM 1998: Proceedings of the Second IEEE International Conference on Formal Engineering Methods, Washington, DC, USA, p. 180. IEEE Computer Society Press, Los Alamitos (1998)CrossRefGoogle Scholar
  8. 8.
    Milnes, B., Pelton, G., Doorenbos, R., Laird, M., Rosenbloom, P., Newell, A.: A specification of the soar cognitive architecture in z. Technical report, Pittsburgh, PA, USA (1992)Google Scholar
  9. 9.
    OMG. OCL 2.0 Specification - Version 2.0 ptc/2005-06-06. OMG (June 2005)Google Scholar
  10. 10.
    Raman, K., Zhang, Y., Panahi, M., Colmenares, J., Klefstad, R., Harmon, T.: Rtzen: Highly predictable, real-time java middleware for distributed and embedded systems (2005)Google Scholar
  11. 11.
    Rosa, N., Cunha, P.: A formal framework for middleware behavioural specification. SIGSOFT Softw. Eng. Notes 32(2), 1–7 (2007)CrossRefGoogle Scholar
  12. 12.
    Schmidt, D.C., Levine, D.L., Mungee, S.: The design of the TAO real-time object request broker. Computer Communications 21(4), 294–324 (1998)CrossRefGoogle Scholar
  13. 13.
    Spivey, J.M.: The Z notation: a reference manual. Prentice-Hall, Inc., Upper Saddle River (1989)zbMATHGoogle Scholar
  14. 14.
    Valk, R.: Basic definitions, ch. 4. In: Girault, C., Valk, R. (eds.) Petri nets and system engineering, 1st edn., pp. 41–51. Springer, Heidelberg (2003)Google Scholar
  15. 15.
    Vergnaud, T., Hugues, J., Pautet, L., Kordon, F.: PolyORB: a schizophrenic middleware to build versatile reliable distributed applications. In: Llamosí, A., Strohmeier, A. (eds.) Ada-Europe 2004. LNCS, vol. 3063, pp. 106–119. Springer, Heidelberg (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Xavier Renault
    • 1
  • Jérôme Hugues
    • 2
  • Fabrice Kordon
    • 1
  1. 1.Laboratoire d’Informatique de Paris 6/MoVeUniversité Pierre & Marie CurieParis CEDEX 05France
  2. 2.GET-Télécom ParisLTCI-UMR 5141 CNRSParis CEDEX 13France

Personalised recommendations