A Commutative Model Composition Operator to Support Software Adaptation

  • Sébastien Mosser
  • Mireille Blay-Fornarino
  • Laurence Duchien
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7349)


The adaptive software paradigm supports the definition of software systems that are continuously adapted at run-time. An adaptation activates multiple features in the system, according to the current execution context (e.g., CPU consumption, available bandwidth). However, the underlying approaches used to implement adaptation are ordered, e.g. the order in which a set of features are turned on or off matters. Assuming feature definition as etched in stone, the identification of the right sequence is a difficult and time–consuming problem. We propose here a composition operator that intrinsically supports the commutativity of adaptations. Using this operator, one can minimize the number of ordered compositions in a system. It relies on an action–based approach, as this representation can support preexisting composition operators as well as our contribution in an uniform way. This approach is validated on the Service–Oriented Architecture domain, and is implemented using first–order logic.


Business Process Composition Operator Parallel Composition Adaptation Engine Inconsistency Detection 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling Step-Wise Refinement. IEEE Transactions on Software Engineering 30, 2004 (2004)Google Scholar
  2. 2.
    Batory, D.S.: Using Modern Mathematics as an FOSD Modeling Language. In: Smaragdakis, Y., Siek, J.G. (eds.) GPCE, pp. 35–44. ACM (2008)Google Scholar
  3. 3.
    Blanc, X., Mougenot, A., Mounier, I., Mens, T.: Incremental Detection of Model Inconsistencies Based on Model Operations. In: van Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 32–46. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting Model Inconsistency through Operation-Based Model Construction. In: Schäfer, W., Dwyer, M.B., Gruhn, V. (eds.) ICSE, pp. 511–520. ACM (2008)Google Scholar
  5. 5.
    Etien, A., Muller, A., Legrand, T., Blanc, X.: Combining Independent Model Transformations. In: Shin, S.Y., Ossowski, S., Schumacher, M., Palakal, M.J., Hung, C.C. (eds.) SAC, pp. 2237–2243. ACM (2010)Google Scholar
  6. 6.
    Fleurey, F., Morin, B., Solberg, A.: A Model-driven Approach to Develop Adaptive Firmwares. In: Giese, H., Cheng, B.H.C. (eds.) SEAMS, pp. 168–177. ACM (2011)Google Scholar
  7. 7.
    Heckel, R., Küster, J.M., Taentzer, G.: Confluence of Typed Attributed Graph Transformation Systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  8. 8.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) - Feasibility Study. Tech. rep., The Software Engineering Institute (1990),
  9. 9.
    Kastner, C., Apel, S., Batory, D.: A Case Study Implementing Features Using AspectJ. In: Proceedings of the 11th Int. Software Product Line Conference, pp. 223–232. IEEE Computer Society, Washington, DC (2007)Google Scholar
  10. 10.
    Katz, S., Mezini, M., Kienzle, J. (eds.): Transactions on Aspect-Oriented Software Development VII - A Common Case Study for Aspect-Oriented Modeling. LNCS, vol. 6210. Springer, Heidelberg (2010)zbMATHGoogle Scholar
  11. 11.
    Katz, S., Ossher, H., France, R., Jézéquel, J.-M. (eds.): Transactions on Aspect-Oriented Software Development VI, Special Issue on Aspects and Model-Driven Engineering. LNCS, vol. 5560. Springer, Heidelberg (2009)zbMATHGoogle Scholar
  12. 12.
    Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Lee, S.H. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  13. 13.
    Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis Management Systems: A Case Study for Aspect-Oriented Modeling. In: T. Aspect-Oriented Soft. Dev. [10], pp. 1–22Google Scholar
  14. 14.
    Kim, C.H.P., Kästner, C., Batory, D.: On the Modularity of Feature Interactions. In: Procs of the 7th Int. Conf. on Generative Programming and Component Engineering, pp. 23–34. ACM, New York (2008)Google Scholar
  15. 15.
    Kniesel, G.: Type-Safe Delegation for Run-Time Component Adaptation. In: Guerraoui, R. (ed.) ECOOP 1999. LNCS, vol. 1628, pp. 351–366. Springer, Heidelberg (1999), doi:10.1007/3-540-48743-3_16CrossRefGoogle Scholar
  16. 16.
    Liu, J., Batory, D.: Automatic Remodularization and Optimized Synthesis of Product-Families. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol. 3286, pp. 379–395. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  17. 17.
    Liu, J., Batory, D.S., Nedunuri, S.: Modeling Interactions in Feature Oriented Software Designs. In: Reiff-Marganiec, S., Ryan, M. (eds.) FIW, pp. 178–197. IOS Press (2005)Google Scholar
  18. 18.
    McAllester, D.: Variational Attribute Grammars for Computer Aided Design (Release 3.0). Tech. rep. MIT (1994)Google Scholar
  19. 19.
    McKinley, P.K., Sadjadi, S.M., Kasten, E.P., Cheng, B.H.C.: Composing Adaptive Software. Computer 37, 56–64 (2004)CrossRefGoogle Scholar
  20. 20.
    Morin, B., Barais, O., Jezequel, J.M., Fleurey, F., Solberg, A.: Models@ Run.time to Support Dynamic Adaptation. Computer 42(10), 44–51 (2009)CrossRefGoogle Scholar
  21. 21.
    Mosser, S., Blay-Fornarino, M., France, R.: Workflow Design Using Fragment Composition – Crisis Management System Design through ADORE. In: T. Aspect-Oriented Software Development [10], pp. 200–233Google Scholar
  22. 22.
    Mosser, S., Hermosillo, G., Le Meur, A.F., Seinturier, L., Duchien, L.: Undoing Event-Driven Adaptation of Business Processes. In: 8th International Conference on Services Computing (SCC 2011), pp. 1–8. IEEE, Washington DC (2011)Google Scholar
  23. 23.
    Mussbacher, G., Whittle, J., Amyot, D.: Semantic-Based Interaction Detection in Aspect-Oriented Scenarios. In: RE, pp. 203–212. IEEE Computer Society (2009)Google Scholar
  24. 24.
    Oreizy, P., Medvidovic, N., Taylor, R.N.: Runtime Software Adaptation: Framework, Approaches, and Styles. In: Companion of the 30th Int. Conf. on Software Engineering, ICSE Companion 2008, pp. 899–910. ACM, New York (2008)CrossRefGoogle Scholar
  25. 25.
    Parra, C., Cleve, A., Blanc, X., Duchien, L.: Feature-Based Composition of Software Architectures. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 230–245. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  26. 26.
    White, J., Gray, J., Schmidt, D.C.: Constraint-Based Model Weaving. In: T. Aspect-Oriented Software Development VI [11], pp. 153–190Google Scholar
  27. 27.
    Whittle, J., Jayaraman, P.K., Elkhodary, A.M., Moreira, A., Araújo, J.: MATA: A Unified Approach for Composing UML Aspect Models Based on Graph Transformation. In: T. Aspect-Oriented Software Development VI [11], pp. 191–237Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Sébastien Mosser
    • 1
  • Mireille Blay-Fornarino
    • 2
  • Laurence Duchien
    • 3
  1. 1.SINTEF IKTOsloNorway
  2. 2.I3S – UMR CNRS 7271 (formerly 6070)University NiceSophia-AntipolisFrance
  3. 3.INRIA Lille–Nord Europe, LIFL – UMR CNRS 8022University of Lille 1France

Personalised recommendations