The paper presents a novel algebraic framework for specification and design of model synchronization tools. The basic premise is that synchronization procedures, and hence algebraic operations modeling them, are diagrammatic: they take a configuration (diagram) of models and mappings as their input and produce a diagram as the output. Many important synchronization scenarios are based on diagram operations of square shape. Composition of such operations amounts to their tiling, and complex synchronizers can thus be assembled by tiling together simple synchronization blocks. This gives rise to a visually suggestive yet precise notation for specifying synchronization procedures and reasoning about them.


Class Diagram Graph Mapping Model Synchronization Synchronization Procedure Diagram Operation 
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.
    Bernstein, P.: Applying model management to classical metadata problems. In: Proc. CIDR 2003, pp. 209–220 (2003)Google Scholar
  2. 2.
    Foster, J.N., Greenwald, M., Moore, J., Pierce, B., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM Trans. Program. Lang. Syst. 29(3) (2007)Google Scholar
  3. 3.
    Foster, J.N., Greenwald, M., Kirkegaard, C., Pierce, B., Schmitt, A.: Exploiting schemas in data synchronization. J. Comput. Syst. Sci. 73(4), 669–689 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: ASE, pp. 164–173 (2007)Google Scholar
  5. 5.
    Matsuda, K., Hu, Z., Nakano, K., Hamana, M., Takeichi, M.: Bidirectionalization transformation based on automatic derivation of view complement functions. In: ICFP, pp. 47–58 (2007)Google Scholar
  6. 6.
    Stevens, P.: Bidirectional model transformations in QVT: Semantic issues and open questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  7. 7.
    Czarnecki, K., Foster, J., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.: Bidirectional transformations: A cross-discipline perspective. [66], 260–283Google Scholar
  8. 8.
    Xing, Z., Stroulia, E.: Umldiff: an algorithm for object-oriented design differencing. In: Redmiles, D., Ellman, T., Zisman, A. (eds.) ASE, pp. 54–65. ACM, New York (2005)CrossRefGoogle Scholar
  9. 9.
    Lin, Y., Gray, J., Jouault, F.: DSMDiff: A Differentiation Tool for Domain-Specific Models. European J. of Information Systems 16, 349–361 (2007)CrossRefGoogle Scholar
  10. 10.
    Treude, C., Berlik, S., Wenzel, S., Kelter, U.: Difference computation of large models. In: ESEC/SIFSOFT FSE, pp. 295–304 (2007)Google Scholar
  11. 11.
    Diskin, Z., Xiong, Y., Czarnecki, K.: From state- to delta-based bidirectional model transformations. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 61–76. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  12. 12.
    Balzer, R.: Tolerating inconsistency. In: ICSE, pp. 158–165 (1991)Google Scholar
  13. 13.
    Melnik, S., Rahm, E., Bernstein, P.: Developing metadata-intensive applications with Rondo. J. Web Semantics 1, 47–74 (2003)CrossRefGoogle Scholar
  14. 14.
    Dyreson, C.E.: A bibliography on uncertainty management in information systems. In: Uncertainty Management in Information Systems, pp. 415–458 (1996)Google Scholar
  15. 15.
    Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual, 2nd edn. Addison-Wesley, Reading (2004)Google Scholar
  16. 16.
    Diskin, Z., Wolter, U.: A diagrammatic logic for object-oriented visual modeling. Electron. Notes Theor. Comput. Sci. 203(6), 19–41 (2008)CrossRefzbMATHGoogle Scholar
  17. 17.
    Melnik, S., Garcia-Molina, H., Rahm, E.: Similarity flooding: A versatile graph matching algorithm and its application to schema matching. In: ICDE, pp. 117–128. IEEE Computer Society, Los Alamitos (2002)Google Scholar
  18. 18.
    Falleri, J.R., Huchard, M., Lafourcade, M., Nebut, C.: Metamodel matching for automatic model transformation generation. [67], 326–340Google Scholar
  19. 19.
    Saito, Y., Shapiro, M.: Optimistic replication. ACM Comput. Surv. 37(1), 42–81 (2005)CrossRefzbMATHGoogle Scholar
  20. 20.
    Mens, T.: A state-of-the-art survey on software merging. IEEE Trans. Software Eng. 28(5), 449–462 (2002)CrossRefGoogle Scholar
  21. 21.
    Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 2–17. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  22. 22.
    Ohst, D., Welle, M., Kelter, U.: Differences between versions of uml diagrams. In: ESEC / SIGSOFT FSE, pp. 227–236. ACM, New York (2003)Google Scholar
  23. 23.
    Gadducci, F., Montanari, U.: The tile model. In: Proof, Language, and Interaction, pp. 133–166 (2000)Google Scholar
  24. 24.
    Sabetzadeh, M., Easterbrook, S.: An algebraic framework for merging incomplete and inconsistent views. In: 13th Int. Conference on Requirement Engineering (2005)Google Scholar
  25. 25.
    Kelly, G., Street, R.: Review of the elements of 2-categories. In: Category Seminar, Sydney 1972/73. Lecture Notes in Math., vol. 420, pp. 75–103 (1974)Google Scholar
  26. 26.
    Johnson, M., Rosebrugh, R.: Fibrations and universal view updatability. Theor. Comput. Sci. 388(1-3), 109–129 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Goguen, J.A., Meseguer, J.: Order-sorted algebra i: Equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theor. Comput. Sci. 105(2), 217–273 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  28. 28.
    Diskin, Z.: Algebraic models for bidirectional model synchronization. In: [67], pp. 21–36. Springer, Heidelberg (2008)Google Scholar
  29. 29.
    Liefke, H., Davidson, S.: View maintenance for hierarchical semistructured data. In: Kambayashi, Y., Mohania, M., Tjoa, A.M. (eds.) DaWaK 2000. LNCS, vol. 1874, pp. 114–125. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  30. 30.
    Dayal, U., Bernstein, P.: On the correct translation of update operations on relational views. TODS 7(3), 381–416 (1982)MathSciNetCrossRefzbMATHGoogle Scholar
  31. 31.
    Leinster, T.: Higher Operads, Higher Categories. Cambridge University Press, Cambridge (2004)CrossRefzbMATHGoogle Scholar
  32. 32.
    Antkiewicz, M., Czarnecki, K.: Design space of heterogeneous synchronization. In: [68], pp. 3–46Google Scholar
  33. 33.
    Diskin, Z., Czarnecki, K., Antkiewicz, M.: Model-versioning-in-the-large: Algebraic foundations and the tile notation. In: ICSE 2009 Workshop on Comparison and Versioning of Software Models, pp. 7–12. ACM, New York (2009), doi: 10.1109/CVSM.2009.5071715, ISBN: 978-1-4244-3714-6CrossRefGoogle Scholar
  34. 34.
    Diskin, Z., Xiong, Y., Czarnecki, K.: Specifying overlaps of heterogeneous models for global consistency checking. In: First International Workshop on Model-Driven Interoperability, MDI 2010, pp. 42–51. ACM, New York (2010), doi: 10.1145/1866272.1866279, ISBN: 978-1-4503-0292-0Google Scholar
  35. 35.
    Bancilhon, F., Spyratos, N.: Update semantics of relational views. TODS 6(4), 557–575 (1981)CrossRefzbMATHGoogle Scholar
  36. 36.
    Gottlob, G., Paolini, P., Zicari, R.: Properties and update semantics of consistent views. ACM TODS 13(4), 486–524 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  37. 37.
    Meertens, L.: Designing constraint maintainers for user interaction (1998),
  38. 38.
    Bohannon, A., Foster, J.N., Pierce, B., Pilkiewicz, A., Schmitt, A.: Boomerang: resourceful lenses for string data. In: POPL, pp. 407–419 (2008)Google Scholar
  39. 39.
    Bohannon, A., Pierce, B., Vaughan, J.: Relational lenses: a language for updatable views. In: PODS (2006)Google Scholar
  40. 40.
    Hofmann, M., Pierce, B., Wagner, D.: Symmetric lenses. In: POPL (2011)Google Scholar
  41. 41.
    Stevens, P.: A landscape of bidirectional model transformations. [68], 408–424Google Scholar
  42. 42.
    Xiong, Y., Song, H., Hu, Z., Takeichi, M.: Supporting parallel updates with bidirectional model transformations. [66], 213–228Google Scholar
  43. 43.
    Oliveira, J.N.: Transforming data by calculation. [68], 134–195Google Scholar
  44. 44.
    Bernstein, P., Halevy, A., Pottinger, R.: A vision for management of complex models. SIGMOD Record 29(4), 55–63 (2000)CrossRefGoogle Scholar
  45. 45.
    Bernstein, P., Melnik, S.: Model management 2.0: manipulating richer mappings. In: Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data, SIGMOD 2007, pp. 1–12. ACM Press, New York (2007)Google Scholar
  46. 46.
    Brunet, G., Chechik, M., Easterbrook, S., Nejati, S., Niu, N., Sabetzadeh, M.: A manifesto for model merging. In: GaMMa (2006)Google Scholar
  47. 47.
    Alagic, S., Bernstein, P.: A model theory for generic schema management. In: Ghelli, G., Grahne, G. (eds.) DBPL 2001. LNCS, vol. 2397, p. 228. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  48. 48.
    Diskin, Z.: Mathematics of generic specifications for model management. In: Rivero, L., Doorn, J., Ferraggine, V. (eds.) Encyclopedia of Database Technologies and Applications, pp. 351–366. Idea Group, USA (2005)CrossRefGoogle Scholar
  49. 49.
    Melnik, S., Bernstein, P., Halevy, A., Rahm, E.: Supporting executable mappings in model management. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data, SIGMOD 2005, pp. 167–178. ACM Press, New York (2005)Google Scholar
  50. 50.
    Bruni, R., Meseguer, J., Montanari, U.: Symmetric monoidal and cartesian double categories as a semantic framework for tile logic. Mathematical Structures in Computer Science 12(1), 53–90 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  51. 51.
    Diskin, Z.: Towards algebraic graph-based model theory for computer science. Bulletin of Symbolic Logic 3, 144–145 (1997)Google Scholar
  52. 52.
    Diskin, Z.: Databases as diagram algebras: Specifying queries and views via the graph-based logic of skethes. Technical Report 9602, Frame Inform Systems, Riga, Latvia (1996),
  53. 53.
    Lammel, R.: Coupled software transformation. In: Workshop on Software Evolution and TRanformation (2004)Google Scholar
  54. 54.
    Freyd, P., Scedrov, A.: Categories, Allegories. Elsevier Science Publishers, Amsterdam (1990)zbMATHGoogle Scholar
  55. 55.
    Foster, J., Greenwald, M., Moore, J., Pierce, B., Schmitt, A.: Combinators for bi-directional tree transformations: a linguistic approach to the view update problem. In: POPL, pp. 233–246 (2005)Google Scholar
  56. 56.
    Berdaguer, P., Cunha, A., Pacheco, H., Visser, J.: Coupled schema transformation and data conversion for xml and sql. In: Hanus, M. (ed.) PADL 2007. LNCS, vol. 4354, pp. 290–304. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  57. 57.
    Schürr, A., Klar, F.: 15 years of triple graph grammars. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 411–425. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  58. 58.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of algebraic graph tranformations. Springer, Heidelberg (2006)zbMATHGoogle Scholar
  59. 59.
    Cadish, B., Diskin, Z.: Heterogenious view integration via sketches and equations. In: Michalewicz, M., Raś, Z.W. (eds.) ISMIS 1996. LNCS (LNAI), vol. 1079, pp. 603–612. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  60. 60.
    Diskin, Z., Kadish, B.: Variable set semantics for keyed generalized sketches: Formal semantics for object identity and abstract syntax for conceptual modeling. Data & Knowledge Engineering 47, 1–59 (2003)CrossRefGoogle Scholar
  61. 61.
    Diskin, Z., Easterbrook, S., Dingel, J.: Engineering associations: from models to code and back through semantics. In: Paige, R., Meyer, B. (eds.) TOOLS Europe 2008, LNBIP, vol. 11. Springer, Heidelberg (2008)Google Scholar
  62. 62.
    Cicchetti, A., Ruscio, D.D., Pierantonio, A.: A metamodel independent approach to difference representation. JOT 6 (2007)Google Scholar
  63. 63.
    Abi-Antoun, M., Aldrich, J., Nahas, N.H., Schmerl, B.R., Garlan, D.: Differencing and merging of architectural views. Autom. Softw. Eng. 15(1), 35–74 (2008)CrossRefGoogle Scholar
  64. 64.
    Ehrig, H., Große-Rhode, M., Wolter, U.: Application of category theory to the area of algebaric specifications in computer science. Applied Categorical Structures 6, 1–35 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  65. 65.
    Liang, H., Diskin, Z., Dingel, J., Posse, E.: A general approach for scenario integration. [67], 204–218Google Scholar
  66. 66.
    Paige, R.F. (ed.): ICMT 2009. LNCS, vol. 5563. Springer, Heidelberg (2009)Google Scholar
  67. 67.
    Czarnecki, K., Ober, I., Bruel, J., Uhl, A., Völter, M. (eds.): MODELS 2008. LNCS, vol. 5301. Springer, Heidelberg (2008)Google Scholar
  68. 68.
    Lämmel, R., Visser, J., Saraiva, J. (eds.): GTTSE 2007. LNCS, vol. 5235. Springer, Heidelberg (2008)Google Scholar
  69. 69.
    Barr, M., Wells, C.: Category theory for computing science. Prentice Hall, Englewood Cliffs (1995)zbMATHGoogle Scholar
  70. 70.
    Adamek, J., Herrlich, H., Strecker, G.: Abstarct and concrete categories. The joy of cats. TAC Reprints, No.17 (2007)Google Scholar
  71. 71.
    Bruni, R., Gadducci, F.: Some algebraic laws for spans. Electr. Notes Theor. Comput. Sci. 44(3) (2001)Google Scholar
  72. 72.
    Diskin, Z.: Model transformation as view computation: an algebraic approach. Technical Report CSRG-573, the University of Toronto (2008)Google Scholar
  73. 73.
    Manes, E.: Algebraic Theories. Graduate Text in Mathematics. Springer, Heidelberg (1976)CrossRefzbMATHGoogle Scholar
  74. 74.
    Jacobs, B.: Categorical logic and type theory. Elsevier Science Publishers, Amsterdam (1999)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Zinovy Diskin
    • 1
  1. 1.Generative Software Development Lab.University of WaterlooCanada

Personalised recommendations