Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2491411.2491446acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

N-way model merging

Published: 18 August 2013 Publication History

Abstract

Model merging is widely recognized as an essential step in a variety of software development activities. During the process of combining a set of related products into a product line or consolidating model views of multiple stakeholders, we need to merge multiple input models into one; yet, most of the existing approaches are applicable to merging only two models. In this paper, we define the n-way merge problem. We show that it can be reduced to the known and widely studied NP-hard problem of weighted set packing. Yet, the approximation solutions for that problem do not scale for real-sized software models. We thus evaluate alternative approaches of merging models that incrementally process input models in small subsets and propose our own algorithm that considerably improves precision over such approaches without sacrificing performance.

References

[1]
S. Apel, J. Liebig, B. Brandl, C. Lengauer, and C. Kästner. Semistructured Merge: Rethinking Merge in Revision Control Systems. In Proc. of ESEC/FSE’11, pages 190–200, 2011.
[2]
E. M. Arkin and R. Hassin. On Local Search for Weighted k-Set Packing. Mathematics of Operations Research, 23(3):640–648, 1998.
[3]
P. Berman. A d/2 Approximation for Maximum Weight Independent Set in d-Claw Free Graphs. In Proc. of SWAT’00, volume 1851 of LNCS, pages 214–219, 2000.
[4]
G. Brunet, M. Chechik, S. Easterbrook, S. Nejati, N. Niu, and M. Sabetzadeh. A Manifesto for Model Merging. In Proc. of GaMMa’06, pages 5–12, 2006.
[5]
B. Chandra and M. M. Halldórsson. Greedy Local Improvement and Weighted Set Packing Approximation. J. Algorithms, 39(2):223–240, 2001.
[6]
A. Duley, C. Spandikow, and M. Kim. A Program Differencing Algorithm for Verilog HDL. In Proc. of ASE’10, pages 477–486, 2010.
[7]
S. Duszynski, J. Knodel, and M. Becker. Analyzing the Source Code of Multiple Software Variants for Reuse Potential. In Proc. of WCRE’11, pages 303–307, 2011.
[8]
J. Edmonds and R. M. Karp. Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems. J. ACM, 19(2):248–264, 1972.
[9]
B. Fluri, M. Wuersch, M. Pinzger, and H. Gall. Change Distilling: Tree Differencing for Fine-Grained Source Code Change Extraction. IEEE TSE, 33:725–743, 2007.
[10]
P. Frenzel, R. Koschke, A. P. J. Breu, and K. Angstmann. Extending the Reflexion Method for Consolidating Software Variants into Product Lines. In Proc. of WCRE’07, pages 160–169, 2007.
[11]
D. Jackson and D. A. Ladd. Semantic Diff: A Tool for Summarizing the Effects of Modifications. In Proc. of ICSM’94, pages 243–252, 1994.
[12]
C. Kästner and S. Apel. Integrating Compositional and Annotative Approaches for Product Line Engineering. In Proc. of GPCE Wrksp. on Modul., Comp. and Gen. Tech. for PLE (McGPLE), pages 35–40, 2008.
[13]
U. Kelter, J. Wehren, and J. Niere. A Generic Difference Algorithm for UML Models. In Software Engineering, volume 64 of LNI, pages 105–116. GI, 2005.
[14]
S. Kpodjedo, F. Ricca, P. Galinier, G. Antoniol, and Y.-G. Gueheneuc. MADMatch: Many-to-many Approximate Diagram Matching for Design Comparison. IEEE TSE, 2013.
[15]
H. W. Kuhn. The Hungarian Method for the Assignment Problem. Naval Research Logistics Quarterly, 2:83–97, 1955.
[16]
S. Nejati, M. Sabetzadeh, M. Chechik, S. Easterbrook, and P. Zave. Matching and Merging of Statecharts Specifications. In Proc. of ICSE’07, pages 54–64, 2007.
[17]
Y. T. Rad and R. Jabbari. Use of Global Consistency Checking for Exploring and Refining Relationships between Distributed Models: A Case Study. Master’s thesis, Blekinge Institute of Technology, School of Computing, January 2012.
[18]
J. Rubin and M. Chechik. Combining Related Products into Product Lines. In Proc. of FASE’12, pages 285–300, 2012.
[19]
J. Rubin and M. Chechik. Quality of Merge-Refactorings for Product Lines. In Proc. of FASE’13, pages 83–98, 2013.
[20]
M. Sabetzadeh and S. Easterbrook. View Merging in the Presence of Incompleteness and Inconsistency. Requirements Engineering J., 11:174–193, June 2006.
[21]
Z. Xing and E. Stroulia. UMLDiff: an Algorithm for Object-Oriented Design Differencing. In Proc. of ASE’05, pages 54–65, 2005.

Cited By

View all
  • (2024)Efficient construction of family-based behavioral models from adaptively learned modelsSoftware and Systems Modeling10.1007/s10270-024-01199-5Online publication date: 7-Aug-2024
  • (2024)Accelerating similarity-based model matching using dual hashingSoftware and Systems Modeling10.1007/s10270-024-01173-1Online publication date: 29-Apr-2024
  • (2023)Generative AI for Reengineering Variants into Software Product LinesProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B10.1145/3579028.3609016(57-66)Online publication date: 28-Aug-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ESEC/FSE 2013: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
August 2013
738 pages
ISBN:9781450322379
DOI:10.1145/2491411
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 August 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Model merging
  2. combining multiple models
  3. weighted set packing

Qualifiers

  • Research-article

Conference

ESEC/FSE'13
Sponsor:

Acceptance Rates

Overall Acceptance Rate 112 of 543 submissions, 21%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)50
  • Downloads (Last 6 weeks)8
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Efficient construction of family-based behavioral models from adaptively learned modelsSoftware and Systems Modeling10.1007/s10270-024-01199-5Online publication date: 7-Aug-2024
  • (2024)Accelerating similarity-based model matching using dual hashingSoftware and Systems Modeling10.1007/s10270-024-01173-1Online publication date: 29-Apr-2024
  • (2023)Generative AI for Reengineering Variants into Software Product LinesProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B10.1145/3579028.3609016(57-66)Online publication date: 28-Aug-2023
  • (2023)Spectrum-based feature localization for families of systemsJournal of Systems and Software10.1016/j.jss.2022.111532195:COnline publication date: 1-Jan-2023
  • (2023)SimIMA: a virtual Simulink intelligent modeling assistantSoftware and Systems Modeling10.1007/s10270-023-01093-623:1(29-56)Online publication date: 13-Mar-2023
  • (2022)Towards automatically extracting UML class diagrams from natural language specificationsProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings10.1145/3550356.3561592(396-403)Online publication date: 23-Oct-2022
  • (2022)Accelerating similarity-based model matching using on-the-fly similarity preserving hashingProceedings of the 25th International Conference on Model Driven Engineering Languages and Systems10.1145/3550355.3552406(244-254)Online publication date: 23-Oct-2022
  • (2022)A Rule-Based Language for Configurable N-way Model Matching2022 12th International Conference on Computer and Knowledge Engineering (ICCKE)10.1109/ICCKE57176.2022.9960014(129-135)Online publication date: 17-Nov-2022
  • (2022)Towards a Formalism for Specifying N-way Model Merging Rules2022 27th International Computer Conference, Computer Society of Iran (CSICC)10.1109/CSICC55295.2022.9780481(1-7)Online publication date: 23-Feb-2022
  • (2022)Merging cloned Alloy models with colorful refactoringsScience of Computer Programming10.1016/j.scico.2022.102829220(102829)Online publication date: Aug-2022
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media