@ngeiger

Building Distributed Web Applications based on Model Versioning with CoObRA: an Experience Report

, , , , , and . Proc. 2009 Intl. Workshop on Comparison and Versioning of Software Models, page 19-24. ACM, (May 2009)

Abstract

Originally, model versioning has been developed to enable teams of developers to work on common model data, concurrently. We have the idea to use the same techniques to facilitate the collaboration of collaboration applications. Multi threaded applications share a common main memory. Thus, all threads have access to the full data structures and each thread may query and update the data structures, concurrently, in order to fulfill its tasks. In distributed applications, each distributed process has access only to its own share of the data model. In order to query and update remote data structure parts, the process has to send an appropriate request to the process, that owns that data. Transferring complex data structures, e.g. as query result, from one process to the other requires tedious data serialization and deserialization mechanisms. To overcome these problems, this paper proposes to replicate model data for each process and to use model versioning techniques to synchronize the different model data replicas. We have built a web based workflow editor and a web based version of a Ludo game to validate this idea. This paper reports about our experiences with the data replication approach and our experiences in using it for web applications.

Links and resources

Tags

community

  • @naschenbrenner
  • @ngeiger
  • @butonic
  • @dblp
  • @zuendorf
  • @hahn
@ngeiger's tags highlighted