{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,2,21]],"date-time":"2025-02-21T12:42:59Z","timestamp":1740141779853,"version":"3.37.3"},"reference-count":35,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2021,4,14]],"date-time":"2021-04-14T00:00:00Z","timestamp":1618358400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2021,4,14]],"date-time":"2021-04-14T00:00:00Z","timestamp":1618358400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"name":"Hungarian Ministry of Human Capacities","award":["\u00daNKP-18-4-BME-332"],"award-info":[{"award-number":["\u00daNKP-18-4-BME-332"]}]},{"DOI":"10.13039\/501100003825","name":"Magyar Tudom\u00e1nyos Akad\u00e9mia","doi-asserted-by":"publisher","award":["BO_447_17"],"award-info":[{"award-number":["BO_447_17"]}],"id":[{"id":"10.13039\/501100003825","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Hungarian Ministry For Innovation and Technology","award":["\u00daNKP-19-4-BME-313"],"award-info":[{"award-number":["\u00daNKP-19-4-BME-313"]}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Softw Syst Model"],"published-print":{"date-parts":[[2021,10]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Studying large-scale collaborative systems engineering projects across teams with differing intellectual property clearances, or healthcare solutions where sensitive patient data needs to be partially shared, or similar multi-user information systems over databases, all boils down to a common mathematical framework. Updateable views (lenses) and more generally bidirectional transformations are abstractions to study the challenge of exchanging information between participants with different read access privileges. The view provided to each participant must be different due to access control or other limitations, yet also consistent in a certain sense, to enable collaboration towards common goals. A collaboration system must apply bidirectional synchronization to ensure that after a participant modifies their view, the views of other participants are updated so that they are consistent again. While bidirectional transformations (synchronizations) have been extensively studied, there are new challenges that are unique to the multidirectional case. If complex consistency constraints have to be maintained, synchronizations that work fine in isolation may not compose well. We demonstrate and characterize a failure mode of the emergent behaviour, where a consistency restoration mechanism undoes the work of other participants. On the other end of the spectrum, we study the case where synchronizations work especially well together: we characterize very well-behaved multidirectional transformations, a non-trivial generalization from the bidirectional case. For the former challenge, we introduce a novel concept of controllability, while for the latter one, we propose a novel formal notion of faithful decomposition. Additionally, the paper proposes several novel properties of multidirectional transformations.<\/jats:p>","DOI":"10.1007\/s10270-021-00879-w","type":"journal-article","created":{"date-parts":[[2021,4,14]],"date-time":"2021-04-14T07:03:41Z","timestamp":1618383821000},"page":"1735-1774","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Controllable and decomposable multidirectional synchronizations"],"prefix":"10.1007","volume":"20","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-2556-2582","authenticated-orcid":false,"given":"G\u00e1bor","family":"Bergmann","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,4,14]]},"reference":[{"key":"879_CR1","unstructured":"Whac-a-mole, colloquial usage. https:\/\/en.wikipedia.org\/wiki\/Whac-A-Mole#Colloquial_usage. Retrieved: 26 Feb 2020"},{"key":"879_CR2","unstructured":"Apache: Subversion (2018). https:\/\/subversion.apache.org\/. Retrieved 8 Apr 2020"},{"key":"879_CR3","unstructured":"Bergmann, G.: Non-difunctional \/ non-leak-free span of lenses v0.1 in Bx Examples Repository. http:\/\/bx-community.wikidot.com\/examples:spannondifuncleakfree. Retrieved: 21 Feb 2020"},{"key":"879_CR4","unstructured":"Bergmann, G.: Non-minimally interfering span of lenses v0.1 in Bx Examples Repository. http:\/\/bx-community.wikidot.com\/examples:spannonminint. Retrieved: 21 Feb 2020"},{"key":"879_CR5","unstructured":"Bergmann, G.: Water tank example v0.1 in Bx Examples Repository. http:\/\/bx-community.wikidot.com\/examples:watertank. Retrieved: 3 Mar 2020"},{"key":"879_CR6","doi-asserted-by":"publisher","unstructured":"Bohannon, A., Foster, J.N., Pierce, B.C., Pilkiewicz, A., Schmitt, A.: Boomerang: Resourceful lenses for string data. In: Proceedings of the 35th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL \u201908, pp. 407\u2013419. ACM, New York, NY, USA (2008). https:\/\/doi.org\/10.1145\/1328438.1328487","DOI":"10.1145\/1328438.1328487"},{"key":"879_CR7","doi-asserted-by":"publisher","unstructured":"Bohannon, A., Pierce, B.C., Vaughan, J.A.: Relational lenses: A language for updatable views. In: Proceedings of the Twenty-fifth ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems, PODS \u201906, pp. 338\u2013347. ACM, New York, NY, USA (2006). https:\/\/doi.org\/10.1145\/1142351.1142399","DOI":"10.1145\/1142351.1142399"},{"issue":"12","key":"879_CR8","doi-asserted-by":"publisher","first-page":"1","DOI":"10.4230\/DagRep.8.12.1","volume":"8","author":"A Cleve","year":"2019","unstructured":"Cleve, A., Kindler, E., Stevens, P., Zaytsev, V.: Multidirectional Transformations and Synchronisations (Dagstuhl Seminar 18491). Dagstuhl Rep. 8(12), 1\u201348 (2019). https:\/\/doi.org\/10.4230\/DagRep.8.12.1","journal-title":"Dagstuhl Rep."},{"key":"879_CR9","doi-asserted-by":"publisher","DOI":"10.1007\/s10270-017-0631-8","author":"C Debreceni","year":"2017","unstructured":"Debreceni, C., Bergmann, G., R\u00e1th, I., Varr\u00f3, D.: Enforcing fine-grained access control for secure collaborative modelling using bidirectional transformations. Softw. Syst. Model. (2017). https:\/\/doi.org\/10.1007\/s10270-017-0631-8","journal-title":"Softw. Syst. Model."},{"key":"879_CR10","doi-asserted-by":"publisher","unstructured":"Diskin, Z.: Algebraic models for bidirectional model synchronization. In: MoDELS, pp. 21\u201336 (2008). https:\/\/doi.org\/10.1007\/978-3-540-87875-9_2","DOI":"10.1007\/978-3-540-87875-9_2"},{"key":"879_CR11","doi-asserted-by":"publisher","unstructured":"Diskin, Z., K\u00f6nig, H., Lawford, M.: Multiple model synchronization with multiary delta lenses. In: Fundamental Approaches to Software Engineering, 21st International Conference, FASE 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings., pp. 21\u201337 (2018). https:\/\/doi.org\/10.1007\/978-3-319-89363-1_2","DOI":"10.1007\/978-3-319-89363-1_2"},{"issue":"6","key":"879_CR12","doi-asserted-by":"publisher","first-page":"1","DOI":"10.5381\/jot.2011.10.1.a6","volume":"10","author":"Z Diskin","year":"2011","unstructured":"Diskin, Z., Xiong, Y., Czarnecki, K.: From state- to delta-based bidirectional model transformations: the asymmetric case. J. Object Technol. 10(6), 1\u201325 (2011). https:\/\/doi.org\/10.5381\/jot.2011.10.1.a6","journal-title":"J. Object Technol."},{"key":"879_CR13","doi-asserted-by":"publisher","unstructured":"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\u00fchne, T. (eds.) Model Driven Engineering Languages and Systems, pp. 304\u2013318. Springer Berlin Heidelberg, Berlin, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-24485-8_22","DOI":"10.1007\/978-3-642-24485-8_22"},{"key":"879_CR14","doi-asserted-by":"publisher","unstructured":"Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer (2006). https:\/\/doi.org\/10.1007\/3-540-31188-2","DOI":"10.1007\/3-540-31188-2"},{"key":"879_CR15","doi-asserted-by":"publisher","unstructured":"Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bi-directional tree transformations: A linguistic approach to the view update problem. In: Proceedings of the 32Nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL \u201905, pp. 233\u2013246. ACM, New York, NY, USA (2005). https:\/\/doi.org\/10.1145\/1040305.1040325","DOI":"10.1145\/1040305.1040325"},{"key":"879_CR16","doi-asserted-by":"publisher","unstructured":"Foster, J.N., Pierce, B.C., Zdancewic, S.: Updatable security views. In: 2009 22nd IEEE Computer Security Foundations Symposium, pp. 60\u201374 (2009). https:\/\/doi.org\/10.1109\/CSF.2009.25","DOI":"10.1109\/CSF.2009.25"},{"key":"879_CR17","doi-asserted-by":"publisher","unstructured":"Foster, S., Zeyda, F., Woodcock, J.: Unifying heterogeneous state-spaces with lenses. In: Sampaio, A., Wang, F. (eds.) Theoretical Aspects of Computing \u2013 ICTAC 2016, pp. 295\u2013314. Springer International Publishing, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-46750-4_17","DOI":"10.1007\/978-3-319-46750-4_17"},{"key":"879_CR18","doi-asserted-by":"publisher","unstructured":"He, X., Hu, Z.: Putback-based bidirectional model transformations. In: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC\/FSE 2018, p. 434\u2013444. Association for Computing Machinery, New York, NY, USA (2018). https:\/\/doi.org\/10.1145\/3236024.3236070","DOI":"10.1145\/3236024.3236070"},{"key":"879_CR19","volume-title":"Introduction to Switching Theory and Logical Design","author":"FJ Hill","year":"1981","unstructured":"Hill, F.J., Peterson, G.R.: Introduction to Switching Theory and Logical Design, 3rd edn. Wiley, USA (1981)","edition":"3"},{"issue":"2","key":"879_CR20","doi-asserted-by":"publisher","first-page":"179","DOI":"10.1073\/pnas.18.2.179","volume":"18","author":"EV Huntington","year":"1932","unstructured":"Huntington, E.V.: A new set of independent postulates for the algebra of logic with special reference to whitehead and russell\u2019s principia mathematica. Proc. National Academy Sci. 18(2), 179\u2013180 (1932). https:\/\/doi.org\/10.1073\/pnas.18.2.179","journal-title":"Proc. National Academy Sci."},{"key":"879_CR21","doi-asserted-by":"publisher","unstructured":"Huntington, E.V.: Boolean algebra. A correction to: \u201cnew sets of independent postulates for the algebra of logic, with special reference to whitehead and russell\u2019s principia mathematica\u201d. Transactions of the American Mathematical Society 35(2), 557\u2013558 (1933). https:\/\/doi.org\/10.1090\/S0002-9947-1933-1501702-9","DOI":"10.1090\/S0002-9947-1933-1501702-9"},{"key":"879_CR22","unstructured":"Inc, N.M.: Teamwork cloud. https:\/\/www.nomagic.com\/products\/teamwork-cloud"},{"key":"879_CR23","doi-asserted-by":"publisher","unstructured":"Johnson, M., Rosebrugh, R.: Cospans and symmetric lenses. In: Conference Companion of the 2Nd International Conference on Art, Science, and Engineering of Programming, Programming\u201918 Companion, pp. 21\u201329. ACM, New York, NY, USA (2018). https:\/\/doi.org\/10.1145\/3191697.3191717","DOI":"10.1145\/3191697.3191717"},{"key":"879_CR24","unstructured":"Johnson, M., Rosebrugh, R.D.: Multicategories of multiary lenses. In: Proceedings of the 8th International Workshop on Bidirectional Transformations co-located with the Philadelphia Logic Week, Bx@PLW 2019, Philadelphia, PA, USA, June 4, 2019, pp. 30\u201344 (2019). http:\/\/ceur-ws.org\/Vol-2355\/paper3.pdf"},{"key":"879_CR25","doi-asserted-by":"publisher","unstructured":"Klare, H., Syma, T., Burger, E., Reussner, R.: A categorization of interoperability issues in networks of transformations. Journal of Object Technology 18(3), 4:1\u201320 (2019). https:\/\/doi.org\/10.5381\/jot.2019.18.3.a4. The 12th International Conference on Model Transformations","DOI":"10.5381\/jot.2019.18.3.a4"},{"issue":"2","key":"879_CR26","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1016\/S0164-1212(01)00036-X","volume":"58","author":"B Nuseibeh","year":"2001","unstructured":"Nuseibeh, B., Easterbrook, S., Russo, A.: Making inconsistency respectable in software development. J. Syst. Softw. 58(2), 171\u2013180 (2001). https:\/\/doi.org\/10.1016\/S0164-1212(01)00036-X","journal-title":"J. Syst. Softw."},{"key":"879_CR27","unstructured":"Object Management Group: MOF Query\/View\/Transformation (QVT) (2008). https:\/\/www.omg.org\/spec\/QVT"},{"key":"879_CR28","unstructured":"Rocco, J.D., Ruscio, D.D., Heinz, M., Iovino, L., L\u00e4mmel, R., Pierantonio, A.: Consistency recovery in interactive modeling. In: Proceedings of MODELS 2017 Satellite Event, CEUR Workshop Proceedings, vol. 2019. CEUR (2017)"},{"key":"879_CR29","doi-asserted-by":"publisher","first-page":"151","DOI":"10.1007\/3-540-59071-4_45","volume-title":"Graph-Theoretic Concepts in Computer Science","author":"A Sch\u00fcrr","year":"1995","unstructured":"Sch\u00fcrr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) Graph-Theoretic Concepts in Computer Science, pp. 151\u2013163. Springer, Berlin Heidelberg (1995)"},{"key":"879_CR30","doi-asserted-by":"publisher","unstructured":"Stevens, P.: Bidirectional model transformations in QVT: semantic issues and open questions. In: Model Driven Engineering Languages and Systems, 10th International Conference, MoDELS 2007, Nashville, USA, September 30 - October 5, 2007, Proceedings, pp. 1\u201315 (2007). https:\/\/doi.org\/10.1007\/978-3-540-75209-7_1","DOI":"10.1007\/978-3-540-75209-7_1"},{"key":"879_CR31","unstructured":"Stevens, P.: Observations relating to the equivalences induced on model sets by bidirectional transformations. ECEASST 49, 714 (2012)"},{"issue":"1","key":"879_CR32","doi-asserted-by":"publisher","first-page":"39","DOI":"10.1007\/s10270-019-00736-x","volume":"19","author":"P Stevens","year":"2020","unstructured":"Stevens, P.: Maintaining consistency in networks of models: bidirectional transformations in the large. Softw. Systs. Model. 19(1), 39\u201365 (2020). https:\/\/doi.org\/10.1007\/s10270-019-00736-x","journal-title":"Softw. Systs. Model."},{"key":"879_CR33","unstructured":"Systems Engineering Research Center: Research roadmaps 2019-2020 (2020). https:\/\/sercuarc.org\/wp-content\/uploads\/2020\/06\/ROADMAPS_2.5.pdf"},{"key":"879_CR34","unstructured":"The Eclipse Foundation: CDO. http:\/\/www.eclipse.org\/cdo"},{"key":"879_CR35","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1007\/s10270-010-0187-3","volume":"12","author":"Y Xiong","year":"2013","unstructured":"Xiong, Y., Song, H., Hu, Z., Takeichi, M.: Synchronizing concurrent model updates based on bidirectional transformation. Softw. Systs. Model. 12, 89\u2013104 (2013). https:\/\/doi.org\/10.1007\/s10270-010-0187-3","journal-title":"Softw. Systs. Model."}],"container-title":["Software and Systems Modeling"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-021-00879-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10270-021-00879-w\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-021-00879-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,10,15]],"date-time":"2021-10-15T07:00:52Z","timestamp":1634281252000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10270-021-00879-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,4,14]]},"references-count":35,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2021,10]]}},"alternative-id":["879"],"URL":"https:\/\/doi.org\/10.1007\/s10270-021-00879-w","relation":{},"ISSN":["1619-1366","1619-1374"],"issn-type":[{"type":"print","value":"1619-1366"},{"type":"electronic","value":"1619-1374"}],"subject":[],"published":{"date-parts":[[2021,4,14]]},"assertion":[{"value":"25 August 2020","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"22 February 2021","order":2,"name":"revised","label":"Revised","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"23 February 2021","order":3,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"14 April 2021","order":4,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"Not applicable.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Competing interests"}},{"value":"Not applicable.","order":3,"name":"Ethics","group":{"name":"EthicsHeading","label":"Code availability"}}]}}