Toward Validated Composition in Component-Based Adaptive Middleware

  • Annie Ressouche
  • Jean-Yves Tigli
  • Oscar Carrillo
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6708)


Nowadays, adaptive middleware plays an important role in the design of applications in ubiquitous and ambient computing. Currently most of these systems manage the adaptation at the middleware intermediary layer. Dynamic adaptive middleware are then decomposed into two levels : a first one to simplify the development of distributed systems using devices, a second one to perform dynamic adaptations within the first level. In this paper we consider component-based middleware and a corresponding compositional adaptation. Indeed, the composition often involves conflicts between concurrent adaptations. Thus we study how to maintain consistency of the application in spite of changes of critical components and conflicts that may appear when we compose some component assemblies. Relying on formal methods, we provide a well defined representation of component behaviors. In such a setting, model checking techniques are applied to ensure that concurrent access does not violate expected and acceptable behaviors of critical components.


component-based middleware adaptive middleware validation formal methods synchronous modelling 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    In: ARM 2010: Proceedings of the 9th International Workshop on Adaptive and Reflective Middleware. ACM, New York (2010)Google Scholar
  2. 2.
    Caporuscio, M., Inverardi, P., Pelliccione, P.: Compositional verification of middleware-based software architecture descriptions. In: ICSE 2004: Proceedings of the 26th International Conference on Software Engineering, pp. 221–230. IEEE, Washington, DC, USA (2004)Google Scholar
  3. 3.
    Cimatti, A., Clarke, E., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002), CrossRefGoogle Scholar
  4. 4.
    Classen, A., Heymans, P., Schobbens, P.-Y., Legay, A., Raskin, J.-F.: Model checking lots of systems: efficient verification of temporal properties in software product lines. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010, vol. 1, pp. 335–344. ACM, New York (2010), CrossRefGoogle Scholar
  5. 5.
    Delaval, G., Rutten, É.: Reactive model-based control of reconfiguration in the fractal component-based model. In: 13th International Symposium on Component Based Software Engineering (CBSE 2010), Prague, Czech Republic (June 2010),
  6. 6.
    Fisler, K., Krishnamurthi, S.: Modular verification of collaboration-based software designs. In: Proceedings of the 8th European Software Engineering Conference held Jointly with 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering, Vienna, Austria. ESEC/FSE-9, pp. 152–163. ACM, New York (2001),, doi:10.1145/503209.503231Google Scholar
  7. 7.
    Grace, P.: Dynamic adaptation. In: Miranda, H., Garbinato, B., Rodrigues, L. (eds.) Middleware for Network Eccentric and Mobile Applications, pp. 285–304. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  8. 8.
    Halbwachs, N., Lagnier, F., Raymond, P.: Synchronous observers and the verification of reactive systems. In: Nivat, M., Rattray, C., Rus, T., Scollo, G. (eds.) Third Int. Conf. on Algebraic Methodology and Software Technology, AMAST 1993. Springer, Heidelberg (1993)Google Scholar
  9. 9.
    Halbwachs, N., Raymond, P.: Validation of synchronous reactive systems: From formal verification to automatic testing. In: Thiagarajan, P.S., Yap, R.H.C. (eds.) ASIAN 1999. LNCS, vol. 1742, p. 1. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  10. 10.
    Issarny, V., Caporuscio, M., Georgantas, N.: A perspective on the future of middleware-based software engineering. In: 2007 Future of Software Engineering, pp. 244–258. IEEE Computer Society Press, Los Alamitos (2007), Google Scholar
  11. 11.
    Hugues, J., Pautet, L., Kordon, F.: Refining middleware functions for verification purpose. In: Proceedings of the Monterey Workshop 2003 (MONTEREY 2003), Chicago, IL, USA, pp. 79–87 (September 2003)Google Scholar
  12. 12.
    Clarke Jr., E.M., Grumberg, O., Long, D.E.: Model checking and abstraction. ACM Transactions om Programming Languages and Systems 16(5), 1512–1542 (1994)CrossRefGoogle Scholar
  13. 13.
    Clarke Jr., E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (2000)Google Scholar
  14. 14.
    McKinley, P.K., Sadjadi, S.M., Kasten, E.P., Cheng, B.H.C.: Composing adaptive software. IEEE Computer 37(7), 56–64 (2004),, doi:10.1109/MC.2004.48CrossRefGoogle Scholar
  15. 15.
    Mealy, G.: A method to synthesizing sequential circuits. Bell Systems Technical Journal, 1045–1079 (1955)Google Scholar
  16. 16.
    Lagnier, F., Halbwachs, C.R.N.: Programming and verifying critical systems by means of the synchronous data-flow programming language lustre. IEEE Transactions on Software Engineering (1992); Special Issue on the Specification and Analysis of Real-Time SystemsGoogle Scholar
  17. 17.
    Ressouche, A., Tigli, J.-Y., Oscar, C.: Composition and Formal Validation in Reactive Adaptive Middleware. Research report, PULSAR - INRIA Sophia Antipolis - INRIA - Laboratoire d’Informatique, Signaux, et Systèmes de Sophia-Antipolis (I3S) / Equipe RAINBOW - Université de Nice Sophia-Antipolis - CNRS: UMR6070, 02 (2011), Available from:
  18. 18.
    Satyanarayanan, M.: Fundamental challenges in mobile computing. In: Proceedings of the Fifteenth Annual ACM Symposium on Principles of Distributed Computing, PODC 1996, pp. 1–7. ACM, New York (1996), CrossRefGoogle Scholar
  19. 19.
    Tigli, J.-Y., Lavirotte, S., Rey, G., Hourdin, V., Cheung, D., Callegari, E., Riveill, M.: Wcomp middleware for ubiquitous computing: Aspects and composite event-based web services. In: Annals of Telecommunication, vol. 6, Springer, Paris (2009) ; ISSN 0003-4347 (Print) 1958-9395 (Online)Google Scholar
  20. 20.
    Venkatasubramanian, N., Talcott, C., Agha, G.A.: A formal model for reasoning about adaptive qos-enabled middleware. ACM Trans. Softw. Eng. Methodol. 13(1), 86–147 (2004), CrossRefMATHGoogle Scholar
  21. 21.
    Weiser, M.: The computer for the twenty-first century. Scientific American Ubicomp Paper 265, 94–104 (1991)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Annie Ressouche
    • 1
  • Jean-Yves Tigli
    • 2
  • Oscar Carrillo
    • 1
  1. 1.INRIA Sophia AntipolisSophia Antipolis, CedexFrance
  2. 2.I3S LaboratoryNice Sophia University, CNRS, Polytech’SophiaSophia Antipolis, CedexFrance

Personalised recommendations