Viewpoint Co-evolution through Coarse-Grained Changes and Coupled Transformations

  • Manuel Wimmer
  • Nathalie Moreno
  • Antonio Vallecillo
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7304)


Multi-viewpoint modeling is an effective technique to deal with the ever-growing complexity of large-scale systems. The evolution ofmulti-viewpoint system specifications is currently accomplished in terms of fine-grained atomic changes. Apart from being a very low-level and cumbersome strategy, it is also quite unnatural to system modelers, who think of model evolution in terms of coarse-grained high-level changes. In order to bridge this gap, we propose an approach to formally express and manipulate viewpoint changes in a high-level fashion, by structuring atomic changes into coarse-grained composite ones. These can also be used to formally define reconciling operations to adapt dependent views, using coupled transformations. We introduce a modeling language based on graph transformations and Maude for expressing both, the coarse-grained changes and the coupled transformations that propagate them to reestablish global consistency. We demonstrate the applicability of the approach by its application in the context of RM-ODP.


Modeling Language Evolution Pattern Graph Transformation Atomic Change Detection Rule 
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.
    Biermann, E., Ehrig, K., Köhler, C., Kuhns, G., Taentzer, G., Weiss, E.: Graphical Definition of In-Place Transformations in the Eclipse Modeling Framework. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 425–439. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  2. 2.
    Boger, M., Sturm, T., Fragemann, P.: Refactoring Browser for UML. In: Aksit, M., Awasthi, P., Unland, R. (eds.) NODe 2002. LNCS, vol. 2591, pp. 366–377. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. 3.
    Cicchetti, A., Ruscio, D.D.: Decoupling Web Application Concerns through Weaving Operations. Science of Computer Programming 70(1), 62–86 (2008)MathSciNetzbMATHCrossRefGoogle Scholar
  4. 4.
    Cicchetti, A., Ruscio, D.D., Pierantonio, A.: A metamodel independent approach to difference representation. Journal of Object Technology 6(9), 165–185 (2007)CrossRefGoogle Scholar
  5. 5.
    Cicchetti, A., Di Ruscio, D., Pierantonio, A.: Managing Dependent Changes in Coupled Evolution. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 35–51. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  6. 6.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)zbMATHGoogle Scholar
  7. 7.
    Diskin, Z., Xiong, Y., Czarnecki, K.: Specifying Overlaps of Heterogeneous Models for Global Consistency Checking. In: Dingel, J., Solberg, A. (eds.) MoDELS 2010. LNCS, vol. 6627, pp. 165–179. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Diskin, Z., Xiong, Y., Czarnecki, K.: From State- to Delta-Based Bidirectional Model Transformations: the Asymmetric Case. JOT 10(6), 1–25 (2011)Google Scholar
  9. 9.
    Diskin, Z., Xiong, Y., Czarnecki, K., Ehrig, H., Hermann, F., Orejas, F.: From State- to Delta-Based Bidirectional Model Transformations: The Symmetric Case. In: Whittle, J., Clark, T., Kühne, T. (eds.) MoDELS 2011. LNCS, vol. 6981, pp. 304–318. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  10. 10.
    Eramo, R., Pierantonio, A., Romero, J.R., Vallecillo, A.: Change management in multi-viewpoint systems using ASP. In: WODPEC 2008. IEEE (2008)Google Scholar
  11. 11.
    Finkelstein, A., Gabbay, D.M., Hunter, A., Kramer, J., Nuseibeh, B.: Inconsistency Handling in Multi-perspective Specifications. In: Sommerville, I., Paul, M. (eds.) ESEC 1993. LNCS, vol. 717, pp. 84–99. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  12. 12.
    Foster, J.N., Pilkiewicz, A., Pierce, B.C.: Quotient lenses. In: ICFP 2008, pp. 383–396. ACM (2008)Google Scholar
  13. 13.
    Grundy, J., Hosking, J., Mugridge, W.B.: Inconsistency Management for Multiple-view Software Development Environments. IEEE Trans. Softw. Eng. 24(11), 960–981 (1998)CrossRefGoogle Scholar
  14. 14.
    Herrmannsdoerfer, M., Benz, S., Jüergens, E.: COPE - Automating Coupled Evolution of Metamodels and Models. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol. 5653, pp. 52–76. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  15. 15.
    Hofmann, M., Pierce, B.C., Wagner, D.: Symmetric lenses. In: POPL 2011, pp. 371–384. ACM (2011)Google Scholar
  16. 16.
    ISO/IEC: Information technology – Open distributed processing – Use of UML for ODP system specifications (2009), iSO/IEC19793, ITU-T X.906Google Scholar
  17. 17.
    ISO/IEC: RM-ODP. Reference Model for Open Distributed Processing (2010), iSO/IEC 10746-1 to 10746-4, ITU-T Recs. X.901 to X.904Google Scholar
  18. 18.
    ISO/IEC 42010: Systems and software engineering – Architectural description (2008)Google Scholar
  19. 19.
    Ivkovic, I., Kontogiannis, K.: Tracing Evolution Changes of Software Artifacts through Model Synchronization. In: ICSM 2004, pp. 252–261 (2004)Google Scholar
  20. 20.
    Johann, S., Egyed, A.: Instant and Incremental Transformation of Models. In: ASE 2004, pp. 362–365. IEEE (2004)Google Scholar
  21. 21.
    Kolovos, D.S., Paige, R.F., Polack, F., Rose, L.M.: Update Transformations in the Small with the Epsilon Wizard Language. JOT 6(9), 53–69 (2007)CrossRefGoogle Scholar
  22. 22.
    Lämmel, R.: Coupled Software Transformations (Extended Abstract). In: First International Workshop on Software Evolution Transformations (2004)Google Scholar
  23. 23.
    Markovic, S., Baar, T.: Refactoring OCL annotated UML class diagrams. SoSym 7(1), 25–47 (2008)Google Scholar
  24. 24.
    Mens, T.: On the Use of Graph Transformations for Model Refactoring. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 219–257. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  25. 25.
    Meyers, B., Wimmer, M., Cicchetti, A., Sprinkle, J.: A generic in-place transformation-based approach to structured model co-evolution. In: MPM 2010 (2010)Google Scholar
  26. 26.
    Moreno, N., Romero, J.R., Vallecillo, A.: An Overview of Model-Driven Web Engineering and the MDA. In: Web Engineering: Modelling and Implementing Web Applications, pp. 353–382. Springer (2007)Google Scholar
  27. 27.
    OMG: Unified Modeling Language (UML) 2.3. Object Management Group, Inc. (2010)Google Scholar
  28. 28.
    Porres, I.: Rule-based Update Transformations and their Application to Model Refactorings. SoSym 4(4), 368–385 (2005)CrossRefGoogle Scholar
  29. 29.
    Ráth, I., Varró, G., Varró, D.: Change-Driven Model Transformations. In: Schürr, A., Selic, B. (eds.) MoDELS 2009. LNCS, vol. 5795, pp. 342–356. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  30. 30.
    Rivera, J.E., Vallecillo, A.: Representing and Operating with Model Differences. In: Paige, R.F., Meyer, B. (eds.) TOOLS EUROPE 2008. LNBIP, vol. 11, pp. 141–160. Springer, Heidelberg (2008)Google Scholar
  31. 31.
    Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Model Migration with Epsilon Flock. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 184–198. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  32. 32.
    Ruiz-Gonzalez, D., Koch, N., Kroiss, C., Romero, J.R., Vallecillo, A.: Viewpoint synchronization of UWE models. In: MDWE 2009, pp. 46–60 (2009)Google Scholar
  33. 33.
    Song, H., Huang, G., Chauvel, F., Zhang, W., Sun, Y., Shao, W., Mei, H.: Instant and Incremental QVT Transformation for Runtime Models. In: Whittle, J., Clark, T., Kühne, T. (eds.) MoDELS 2011. LNCS, vol. 6981, pp. 273–288. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  34. 34.
    Sprinkle, J., Karsai, G.: A domain-specific visual language for domain model evolution. J. Vis. Lang. Comput. 15(3-4), 291–307 (2004)CrossRefGoogle Scholar
  35. 35.
    Sunyé, G., Pollet, D., Le Traon, Y., Jézéquel, J.-M.: Refactoring UML Models. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 134–148. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  36. 36.
    Vermolen, S., Wachsmuth, G., Visser, E.: Reconstructing complex metamodel evolution. In: SLE 2011. Springer (2012)Google Scholar
  37. 37.
    Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic Model Synchronization from Model Transformations. In: ASE 2007, pp. 164–173. ACM (2007)Google Scholar
  38. 38.
    Zhang, J., Lin, Y., Gray, J.: Generic and Domain-Specific Model Refactoring using a Model Transformation Engine. In: Model-driven Software Development—Research and Practice in Software Engineering, pp. 199–217. Springer (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Manuel Wimmer
    • 1
  • Nathalie Moreno
    • 1
  • Antonio Vallecillo
    • 1
  1. 1.Universidad de MálagaSpain

Personalised recommendations