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.


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)MathSciNetMATHCrossRefGoogle 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)MATHGoogle 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