Skip to main content

Component Reassembling and State Transfer in MaDcAr-Based Self-adaptive Software

  • Conference paper
Objects, Components, Models and Patterns (TOOLS EUROPE 2008)

Abstract

In this paper, we introduce MaDcAr, a model of engines for dynamic and automatic (re)assembling of component-based software. In MaDcAr, an application description consists of the definition of some valid configurations and the state transfer rules to apply during adaptations. This description is uncoupled from any implementation and can therefore be reused with other components. Given an application description, a MaDcAr engine builds a constraint solving problem that makes it possible to choose an appropriate configuration and the components to assemble. This choice takes into account the cost of the target configuration with respect to the available resources. To ensure the application consistency, the engine relies on the state transfer rules to initialize the component attributes of the target assembly using the component attributes of the source assembly.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. OSGi Alliance, http://www.osgi.org/

  2. Bruneton, E., Coupaye, T., Stefani, J.: Recursive and dynamic software composition with sharing. In: Proceedings of the 7th ECOOP International Workshop on Component-Oriented Programming (WCOP 2002), Malaga, Spain (June 2002)

    Google Scholar 

  3. Bures, T., Hnetynka, P., Plasil, F.: Sofa 2.0: Balancing advanced features in a hierarchical component model. In: Proceedings of the 4th International Conference on Software Engineering Research, Management and Applications (SERA 2006), Washington, DC, USA, pp. 40–48. IEEE Computer Society (2006)

    Google Scholar 

  4. Beugnard, A., Jezequel, J.-M., Plouzeau, N., Watkins, D.: Making components contract aware. Computer 32(7), 38–45 (1999)

    Article  Google Scholar 

  5. Bézivin, J., Jouault, F., Rosenthal, P., Valduriez, P.: Modeling in the large and modeling in the small. In: Model Driven Architecture, European MDA Workshops: Foundations and Applications, MDAFA 2003 and MDAFA 2004, pp. 33–46 (2004)

    Google Scholar 

  6. Chang, H., Collet, P.: Compositional Patterns of Non-Functional Properties for Contract Negotiation. Journal of Software (JSW) 2(2), 12 (2007)

    Google Scholar 

  7. Coutaz, J., Crowley, J.L., Dobson, S., Garlan, D.: Context is key. Commununication of the ACM 48(3), 49–53 (2005)

    Article  Google Scholar 

  8. Conan, D., Rouvoy, R., Seinturier, L.: Scalable processing of context information with cosmos. In: Indulska, J., Raymond, K. (eds.) DAIS 2007. LNCS, vol. 4531, pp. 210–224. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  9. David, P.-C., Ledoux, T.: Towards a framework for self-adaptive component-based applications. In: Stefani, J.-B., Demeure, I., Hagimont, D. (eds.) DAIS 2003. LNCS, vol. 2893, pp. 1–14. Springer, Heidelberg (2003)

    Google Scholar 

  10. David, P.-C., Ledoux, T.: WildCAT: a generic framework for context-aware applications. In: Proceeding of th 3rd International Workshop on Middleware for Pervasive and Ad-Hoc Computing (MPAC 2005), Grenoble, France (November 2005)

    Google Scholar 

  11. Dey, A., Salber, D., Abowd, G.: A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. Special issue on context-aware computing in the Human-Computer Interaction Journal 16(2–4), 97–166 (2001)

    Google Scholar 

  12. Grondin, G., Bouraqadi, N., Vercouter, L.: MaDcAr: an Abstract Model for Dynamic and Automatic (Re-)Assembling of Component-Based Applications. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 360–367. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  13. Grondin, G., Bouraqadi, N., Vercouter, L.: Assemblage automatique et adaptation d’applications à base de composants. In: Proceedings of the French-speaking Conference on Object Languages and Models (LMO 2008), pp. 21–37, Montréal, Canada, RNTI, Cépaduès Editions (2008)

    Google Scholar 

  14. Gygax, A.: Studying the effect of size and complexity of components on the performance of CASA. Intership report, Department of Informatics, University of Zurich (2004)

    Google Scholar 

  15. Inverardi, P., Tivoli, M.: Correct and automatic assembly of COTS components: an architectural approach. In: Proceedings of the 5th ICSE Workshop on Component-Based Software Engineering (CBSE5): Benchmarks for Predictable Assembly (2002)

    Google Scholar 

  16. Ketfi, A., Belkhatir, N., Cunin, P.-Y.: Adapting applications on the fly. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering, Washington (ASE 2002), DC, USA, p. 313. IEEE Computer Society (2002)

    Google Scholar 

  17. Kramer, J., Magee, J.: The evolving philosophers problem: Dynamic change management. IEEE Transaction on Software Engineering 16(11), 1293–1306 (1990)

    Article  Google Scholar 

  18. Kumar, V.: Algorithms for constraint satisfaction problems: A survey. AI Magazine 13(1), 32–44 (1992)

    Google Scholar 

  19. Meyer, B.: Applying “design by contract”. Computer 25(10), 40–51 (1992)

    Article  Google Scholar 

  20. Mukhija, A., Glinz, M.: Runtime adaptation of applications through dynamic recomposition of components. In: Beigl, M., Lukowicz, P. (eds.) ARCS 2005. LNCS, vol. 3432, pp. 124–138. Springer, Heidelberg (2005)

    Google Scholar 

  21. Plasil, F., Balek, D., Janecek, R.: SOFA/DCUP: Architecture for component trading and dynamic update. In: Proceedings of the 4th IEEE International Conference on Configurable Distributed Systems (ICCDS 1998), pp. 35–42 (May 1998)

    Google Scholar 

  22. Popovici, A., Gross, T., Alonso, G.: Dynamic weaving for aspect-oriented programming. In: Proceedings of the 1st international conference on Aspect-oriented software development (AOSD 2002), pp. 141–147. ACM Press, New York (2002)

    Chapter  Google Scholar 

  23. Segal, M.E., Frieder, O.: On-the-fly program modification: Systems for dynamic updating. IEEE Software 10(2), 53–65 (1993)

    Article  Google Scholar 

  24. Sora, I., Matthijs, F., Berbers, Y., Verbaeten, P.: Automatic composition of systems from components with anonymous dependencies specified by semantic-unaware properties. Technology of Object-Oriented Languages, Systems & Architectures 732, 154–179 (2003)

    Google Scholar 

  25. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)

    Google Scholar 

  26. Vandewoude, Y., Berbers, Y.: Meta model driven state transfer in component oriented systems. In: Proceedings of The Second International Workshop On Unanticipated Software Evolution, Warshau, Poland, pp. 3–8 (April 2003)

    Google Scholar 

  27. Wifibot, http://www.wifibot.com

Download references

Author information

Authors and Affiliations

Authors

Editor information

Richard F. Paige Bertrand Meyer

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Grondin, G., Bouraqadi, N., Vercouter, L. (2008). Component Reassembling and State Transfer in MaDcAr-Based Self-adaptive Software. In: Paige, R.F., Meyer, B. (eds) Objects, Components, Models and Patterns. TOOLS EUROPE 2008. Lecture Notes in Business Information Processing, vol 11. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69824-1_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-69824-1_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-69823-4

  • Online ISBN: 978-3-540-69824-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics