Petra Kaufmann, Philip Langer, M. Seidl, M. Wimmer
{"title":"Towards end-user adaptable model versioning: The By-Example Operation Recorder","authors":"Petra Kaufmann, Philip Langer, M. Seidl, M. Wimmer","doi":"10.1109/CVSM.2009.5071723","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071723","url":null,"abstract":"For the realization of language-independent, effective, and user-friendly model versioning systems, generic and efficient conflict detection is essential for correct and complete identification of conflicts caused by parallel modifications on one artifact. Usually, the genericity of the conflict detection costs a high price: language-specific operations and refactorings often remain undetected. Consequently, conflicts are not found or conflicts are wrongly indicated. To improve the quality of conflict detection, language-specific features have to be added. This involves usually much programming effort. We present a descriptive approach to define language-specific operations and refactorings by macro recording which allows an easy integration in generic conflict detection components.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116887263","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
N. Aschenbrenner, J. Dreyer, Marcel Hahn, Ruben Jubeh, Christian Schneider, Albert Zündorf
{"title":"Building distributed web applications based on model versioning with CoObRa: An experience report","authors":"N. Aschenbrenner, J. Dreyer, Marcel Hahn, Ruben Jubeh, Christian Schneider, Albert Zündorf","doi":"10.1109/CVSM.2009.5071717","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071717","url":null,"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.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128712077","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Operation-based conflict detection and resolution","authors":"Maximilian Koegel, Jonas Helming, Stephan Seyboth","doi":"10.1109/CVSM.2009.5071721","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071721","url":null,"abstract":"Models are in wide-spread use in the software development lifecycle and model-driven development even promotes them from an abstraction of the system to the description the system is generated from. Therefore it is increasingly important to collaborate on models. These models can range from requirements models over UML models to project management models such as schedules. Tool support for collaboration on models is therefore crucial. Traditionally Software Configuration Management (SCM) systems such as RCS [9] or Subversion [10] have supported this task for textual artifacts such as source code on the granularity of files and textual lines. They do not work well for graph-like models with many links since the granularity needed to support them is on the level of model elements and their attributes. For the design of a novel SCM system addressing these requirements it is essential to define how conflicts on models are detected and how they can be resolved. In this paper we present an approach to conflict detection and resolution on models. We employ operation-based change tracking and therefore detect conflicts based on operations. For conflict resolution we propose an integration of SCM with techniques from Rational Management to effectively resolve conflicts.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"100 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122676399","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Similarity-driven software reuse","authors":"Daniel Bildhauer, T. Horn, J. Ebert","doi":"10.1109/CVSM.2009.5071719","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071719","url":null,"abstract":"The case-based approach to software reuse in the ReDSeeDS project is based on similarity of requirement specifications. This paper describes the approach for similarity computation and its application in the ReDSeeDS engine. Similarity is determined by a combined approach which uses methods from information retrieval as well as graph similarity measures.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117137074","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Operation-based versioning of metamodels with COPE","authors":"Markus Herrmannsdoerfer","doi":"10.1109/CVSM.2009.5071722","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071722","url":null,"abstract":"Model-based development promises to increase productivity by offering modeling languages tailored to a specific domain. Such modeling languages are typically defined by a metamodel. In response to changing requirements and technological progress, the domains and thus the metamodels are subject to change. Manually migrating existing models to a new version of their metamodel is tedious and error-prone. Hence, adequate tool support is required to support the maintenance of modeling languages. COPE provides adequate tool support by specifying the coupled evolution of metamodels and models. In this paper, we present the tool support to record the operations carried out on the metamodel directly through an editor. These operations can be enriched by instructions on how to migrate corresponding models. To further reduce migration effort, COPE provides high-level operations which have built-in meaning in terms of the migration of models.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"88 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121327794","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
D. Kolovos, Davide Di Ruscio, A. Pierantonio, R. Paige
{"title":"Different models for model matching: An analysis of approaches to support model differencing","authors":"D. Kolovos, Davide Di Ruscio, A. Pierantonio, R. Paige","doi":"10.1109/CVSM.2009.5071714","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071714","url":null,"abstract":"Calculating differences between models is an important and challenging task in Model Driven Engineering. Model differencing involves a number of steps starting with identifying matching model elements, calculating and representing their differences, and finally visualizing them in an appropriate way. In this paper, we provide an overview of the fundamental steps involved in the model differencing process and summarize the advantages and shortcomings of existing approaches for identifying matching model elements. To assist potential users in selecting one of the existing methods for the problem at stake, we investigate the trade-offs these methods impose in terms of accuracy and effort required to implement each one of them.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114987178","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Eduardo S. Ogasawara, Pablo Rangel, Leonardo Gresta Paulino Murta, C. Werner, M. Mattoso
{"title":"Comparison and versioning of scientific workflows","authors":"Eduardo S. Ogasawara, Pablo Rangel, Leonardo Gresta Paulino Murta, C. Werner, M. Mattoso","doi":"10.1109/CVSM.2009.5071718","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071718","url":null,"abstract":"Scientific Workflow Management Systems have become a widely used tool to orchestrate a sequence of programs, defined by scientific workflows, to build complex computer simulations. With the aid of these workflows, scientists develop their models for in-silico experiments. Although these workflows are very dynamic and need a large number of changes in their definition, very little effort has been done to support configuration management of these definitions. This work presents a configuration management model developed for scientific workflows, which includes both version control and diff/merge algorithms.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121036606","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"History-based merging of models","authors":"M. Schmidt, Sven Wenzel, Timo Kehrer, U. Kelter","doi":"10.1109/CVSM.2009.5071716","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071716","url":null,"abstract":"Model-driven development in collaborative teams requires services for merging models. Such services should have the same quality as one is used to for source code. The constraints which are relevant in model driven engineering imply that the merging of models must be implemented differently than merging of texts. Based on the analysis of these constraints, we present an approach for merging models that attains a high level of consistency of the merged models and minimizes the loss of effort due to conflict resolution.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122016215","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Model-versioning-in-the-large: Algebraic foundations and the tile notation","authors":"Z. Diskin, K. Czarnecki, M. Antkiewicz","doi":"10.1109/CVSM.2009.5071715","DOIUrl":"https://doi.org/10.1109/CVSM.2009.5071715","url":null,"abstract":"Model-versioning-in-the-large is concerned with complex scenarios involving multiple updates and multiple replicas of a model. The paper introduces tile systems as rephrasing of double categories in model versioning terms, and shows that the tile language enables a very general formalization of versioning concepts. The formalization makes the concepts amenable to algebraic analysis and provides a convenient notation for version system designers. It also allows one to formulate algebraic laws that a correct versioning system must or may want to satisfy.","PeriodicalId":413560,"journal":{"name":"2009 ICSE Workshop on Comparison and Versioning of Software Models","volume":"815 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134071712","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}