Skip to main content

An Aspect-Oriented and Model-Driven Approach for Managing Dynamic Variability

  • Conference paper
Model Driven Engineering Languages and Systems (MODELS 2008)

Abstract

Constructing and executing distributed systems that can adapt to their operating context in order to sustain provided services and the service qualities are complex tasks. Managing adaptation of multiple, interacting services is particularly difficult since these services tend to be distributed across the system, interdependent and sometimes tangled with other services. Furthermore, the exponential growth of the number of potential system configurations derived from the variabilities of each service need to be handled. Current practices of writing low-level reconfiguration scripts as part of the system code to handle run time adaptation are both error prone and time consuming and make adaptive systems difficult to validate and evolve. In this paper, we propose to combine model driven and aspect oriented techniques to better cope with the complexities of adaptive systems construction and execution, and to handle the problem of exponential growth of the number of possible configurations. Combining these techniques allows us to use high level domain abstractions, simplify the representation of variants and limit the problem pertaining to the combinatorial explosion of possible configurations. In our approach we also use models at runtime to generate the adaptation logic by comparing the current configuration of the system to a composed model representing the configuration we want to reach.

This work was partially funded by the DiVA project (EU FP7 STREP).

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 149.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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.

Similar content being viewed by others

References

  1. Bencomo, N., Blair, G., Flores, C., Sawyer, P.: Reflective Component-based Technologies to Support Dynamic Variability. In: VaMoS 2008: 2nd Int. Workshop on Variability Modeling of Software-intensive Systems, Essen, Germany (January 2008)

    Google Scholar 

  2. Bencomo, N., Grace, P., Flores, C., Hughes, D., Blair, G.: Genie: Supporting the model driven development of reflective, component-based adaptive systems. In: ICSE 2008 - Formal Research Demonstrations Track (2008)

    Google Scholar 

  3. Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The FRACTAL Component Model and its Support in Java. Software Practice and Experience, Special Issue on Experiences with Auto-adaptive and Reconfigurable Systems 36(11-12), 1257–1284 (2006)

    Google Scholar 

  4. Chauvel, F., Barais, O., Jézéquel, J.M., Borne, I.: A Model-Driven Process for Self-Adaptive Software. In: ERTS 2008: 4th European Congress on Embedded Real Time Software, Toulouse, France (2008)

    Google Scholar 

  5. Coulson, G., Blair, G., Grace, P., Joolia, A., Lee, K., Ueyama, J.: A Component Model for Building Systems Software. In: SEA 2004: IASTED Software Engineering and Applications, Cambridge MA, USA (November 2004)

    Google Scholar 

  6. David, P.C., Ledoux, T.: Safe Dynamic Reconfigurations of Fractal Architectures with FScript. In: Proceeding of Fractal CBSE Workshop, ECOOP 2006, Nantes, France (2006)

    Google Scholar 

  7. Floch, J., Hallsteinsen, S., Stav, E., Eliassen, F., Lund, K., Gjorven, E.: Using architecture models for runtime adaptability. Software IEEE 23(2), 62–70 (2006)

    Article  Google Scholar 

  8. Flores-Cortés, C.A., Blair, G., Grace, P.: An Adaptive Middleware to Overcome Service Discovery Heterogeneity in Mobile Ad-hoc Environments. IEEE Dist. Systems Online (2007)

    Google Scholar 

  9. France, R., Fleurey, F., Reddy, R., Baudry, B., Ghosh, S.: Providing Support for Model Composition in Metamodels. In: EDOC 2007: 11th Int. Enterprise Computing Conf. (2007)

    Google Scholar 

  10. Goedicke, M., Köllmann, C., Zdun, U.: Designing runtime variation points in product line architectures: three cases. Science of Computer Programming Special Issue: Software variability management 53(3), 353–380 (2004)

    Google Scholar 

  11. Hallsteinsen, S., Hinchey, M., Park, S., Schmid, K.: Dynamic Software Product Lines. IEEE Computer 41(4) (April 2008)

    Google Scholar 

  12. Hallsteinsen, S., Stav, E., Solberg, A., Floch, J.: Using product line techniques to build adaptive systems. In: SPLC 2006: 10th Int. Software Product Line Conf., Washington, DC, USA, pp. 141–150. IEEE Computer Society, Los Alamitos (2006)

    Chapter  Google Scholar 

  13. Jayaraman, P.K., Whittle, J., Elkhodary, A.M., Gomaa, H.: Model Composition in Product Lines and Feature Interaction Detection Using Critical Pair Analysis. In: MoDELS 2007: 10th Int. Conf. on Model Driven Engineering Languages and Systems, Nashville, USA (October 2007)

    Google Scholar 

  14. Lahire, P., Morin, B., Vanwormhoudt, G., Gaignard, A., Barais, O., Jézéquel, J.M.: Introducing Variability into Aspect-Oriented Modeling Approaches. In: MoDELS 2007: 10th Int. Conf. on Model Driven Engineering Languages and Systems, Nashville, USA (October 2007)

    Google Scholar 

  15. Morin, B., Barais, O., Jézéquel, J.M.: Weaving Aspect Configurations for Managing System Variability. In: VaMoS 2008: 2nd Int. Workshop on Variability Modelling of Software-intensive Systems, Essen, Germany (January 2008)

    Google Scholar 

  16. Morin, B., Vanwormhoudt, G., Lahire, P., Gaignard, A., Barais, O., Jézéquel, J.M.: Managing Variability Complexity in Aspect-Oriented Modeling. In: Czarnecki, K., et al. (eds.) MoDELS 2008. LNCS, vol. 5301, pp. 797–812. Springer, Heidelberg (2008)

    Google Scholar 

  17. Muller, P.A., Fleurey, F., Jézéquel, J.M.: Weaving Executability into Object-Oriented Meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  18. Oreizy, P., Medvidovic, N., Taylor, R.N.: Architecture-Based Runtime Software Evolution. In: ICSE 1998: 20th Int. Conf. on Software Engineering, Washington, DC, USA (1998)

    Google Scholar 

  19. Posnak, E., Lavender, G.: An adaptive framework for developing multimedia. Communications ACM 40(10), 43–47 (1997)

    Article  Google Scholar 

  20. Svahnbergel, M., van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques. Software: Practice and Experience 35(8), 705–754 (2005)

    Article  Google Scholar 

  21. Tamai, T.: Abstraction orientated property of software and its relation to patentability. Information & Software Technology 40(5-6), 253–257 (1998)

    Article  Google Scholar 

  22. Wolfinger, R., Reiter, S., Dhungana, D., Grunbacher, P., Prahofer, H.: Supporting runtime system adaptation through product line engineering and plug-in techniques. In: ICCBSS 2008: 7th Int. Conf. on Composition-Based Software Systems, pp. 21–30 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Krzysztof Czarnecki Ileana Ober Jean-Michel Bruel Axel Uhl Markus Völter

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Morin, B. et al. (2008). An Aspect-Oriented and Model-Driven Approach for Managing Dynamic Variability. In: Czarnecki, K., Ober, I., Bruel, JM., Uhl, A., Völter, M. (eds) Model Driven Engineering Languages and Systems. MODELS 2008. Lecture Notes in Computer Science, vol 5301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87875-9_54

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87875-9_54

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87874-2

  • Online ISBN: 978-3-540-87875-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics