Practical Analysis Framework for Component Systems with Dynamic Reconfigurations

  • Conference paper
  • First Online:
Formal Methods and Software Engineering (ICFEM 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9407))

Included in the following conference series:

Abstract

Dynamic reconfigurations that modify the architecture of component-based systems without incurring any system downtime need to preserve the architectural consistency. In this context, we propose a reconfiguration model based on Hoare logic using sequences and (unlike most of the related work on reconfigurations) the alternative and the repetitive constructs.Using primitive reconfiguration operations as building blocks, this model takes advantage of the predicate-based semantics of programming language constructs and weakest preconditions to treat dynamic reconfigurations in a manner that preserves configuration consistency. Then, after enriching the model with interpreted configurations and reconfigurations in a consistency compatible manner, a conformance relation is exploited to validate component systems’ implementations within the environment supporting the Fractal and FraSCAti frameworks. A practical contribution consists of promising experimental results obtained thanks to our implementations, notably on a cloud-based multi-tier hosting environment model managed as a component system.

This work has been partially funded by the Labex ACTION, ANR-11-LABX-0001-01.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now
Chapter
EUR 29.95
Price includes VAT (Germany)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
EUR 42.79
Price includes VAT (Germany)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
EUR 53.49
Price includes VAT (Germany)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free ship** worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    For any \((p,q)\in Parent\), we say that q has a sub-component p, i.e. p is a child of q. Shared components (sub-components of multiple enclosing composite components) can have more than one parent.

  2. 2.

    As in [6], the order in which guarded reconfigurations appear is semantically irrelevant.

  3. 3.

    The normal running of different components also changes the architecture, e.g., by modifying parameter values or stop** components.

  4. 4.

    Viewed as a relation.

  5. 5.

    cbsdr stands for Component-Based System Dynamic Reconfiguration.

  6. 6.

    http://fractal.ow2.org/tutorial/index.html.

  7. 7.

    http://www.oasis-opencsa.org/sca.

  8. 8.

    FTPL stands for TPL (Temporal Pattern Language) prefixed by ‘F’ to denote its relation to Fractal-like components and to first-order integrity constraints over them.

References

  1. de Lemos, R., et al.: Software engineering for self-adaptive systems: a second research roadmap. In: de Lemos, R., Giese, H., Müller, H.A., Shaw, M. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 7475, pp. 1–32. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  2. Kouchnarenko, O., Weber, J.-F.: Adapting component-based systems at runtime via policies with temporal patterns. In: Fiadeiro, J.L., Liu, Z., Xue, J. (eds.) FACS 2013. LNCS, vol. 8348, pp. 234–253. Springer, Heidelberg (2014)

    Google Scholar 

  3. Boyer, F., Gruber, O., Pous, D.: Robust reconfigurations of component assemblies. In: International Conference on Software Engineering, ICSE 2013, pp. 13–22. IEEE Press, Piscataway (2013)

    Google Scholar 

  4. Myllärniemi, V., Ylikangas, M., Raatikainen, M., Pääkkö, J., Männistö, T., Aaltonen, T.: Configurator-as-a-service: tool support for deriving software architectures at runtime. In: The WICSA/ECSA 2012 Companion Volume, pp. 151–158. ACM (2012)

    Google Scholar 

  5. Lanoix, A., Dormoy, J., Kouchnarenko, O.: Combining proof and model-checking to validate reconfigurable architectures. ENTCS 279, 43–57 (2011)

    Google Scholar 

  6. Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Commun. ACM 18, 453–457 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  7. Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The fractal component model and its support in java. Soft. Pract. Experience 36, 1257–1284 (2006)

    Article  Google Scholar 

  8. Seinturier, L., Merle, P., Rouvoy, R., Romero, D., Schiavoni, V., Stefani, J.B.: A component-based middleware platform for reconfigurable service-oriented architectures. Softw. Pract. Experience 42, 559–583 (2012)

    Article  Google Scholar 

  9. Dormoy, J., Kouchnarenko, O., Lanoix, A.: Using temporal logic for dynamic reconfigurations of components. In: Barbosa, L.S., Lumpe, M. (eds.) FACS 2010. LNCS, vol. 6921, pp. 200–217. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  10. Hamilton, A.G.: Logic for mathematicians. Cambridge University Press, England (1988)

    Google Scholar 

  11. Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12, 576–580 (1969)

    Article  MATH  Google Scholar 

  12. Kouchnarenko, O., Weber, J.F.: Practical Analysis Framework for Component Systems with Dynamic Reconfigurations (2015) Long version of the present paper – https://hal.archives-ouvertes.fr/hal-01135720

  13. Milner, R.: Communication and concurrency. Prentice-Hall, Inc., Upper Saddle River (1989)

    Google Scholar 

  14. Kouchnarenko, O., Weber, J.-F.: Decentralised evaluation of temporal patterns over component-based systems at runtime. In: Lanese, I., Madelaine, E. (eds.) FACS 2014. LNCS, vol. 8997, pp. 108–126. Springer, Heidelberg (2015)

    Google Scholar 

  15. Tretmans, J.: Test generation with inputs, outputs and repetitive quiescence. Softw. Concepts Tools 17, 103–120 (1996)

    MATH  Google Scholar 

  16. Chauvel, F., Barais, O., Plouzeau, N., Borne, I., Jézéquel, J.M.: Composition et expression qualitative de politiques d’adaptation pour les composants Fractal. In: Actes des Journées nationales du GDR GPL (2009)

    Google Scholar 

  17. Ma, X., Baresi, L., Ghezzi, C., Panzica La Manna, V., Lu, J.: Version-consistent dynamic reconfiguration of component-based distributed systems. In: The 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of software engineering, pp. 245–255. ACM (2011)

    Google Scholar 

  18. Kramer, J., Magee, J.: The evolving philosophers problem: dynamic change management. IEEE Trans. Software Eng. 16, 1293–1306 (1990)

    Article  Google Scholar 

  19. Vandewoude, Y., Ebraert, P., Berbers, Y., D’Hondt, T.: Tranquility: a low disruptive alternative to quiescence for ensuring safe dynamic updates. IEEE Trans. Software Eng. 33, 856–868 (2007)

    Article  Google Scholar 

  20. Le Metayer, D.: Describing software architecture styles using graph grammars. IEEE Trans. Software Eng. 24, 521–533 (1998)

    Article  Google Scholar 

  21. Kähkönen, K., Lampinen, J., Heljanko, K., Niemelä, I.: The LIME interface specification language and runtime monitoring tool. In: Bensalem, S., Peled, D.A. (eds.) RV 2009. LNCS, vol. 5779, pp. 93–100. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  22. Ghamarian, A.H., de Mol, M., Rensink, A., Zambon, E., Zimakova, M.: Modelling and analysis using GROOVE. Int. J. Softw. Tools Technol. Transfer 14, 15–40 (2012)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jean-François Weber .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Kouchnarenko, O., Weber, JF. (2015). Practical Analysis Framework for Component Systems with Dynamic Reconfigurations. In: Butler, M., Conchon, S., Zaïdi, F. (eds) Formal Methods and Software Engineering. ICFEM 2015. Lecture Notes in Computer Science(), vol 9407. Springer, Cham. https://doi.org/10.1007/978-3-319-25423-4_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-25423-4_18

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-25422-7

  • Online ISBN: 978-3-319-25423-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics

Navigation