Skip to main content

A Pairwise Approach for Model Merging

  • Conference paper
  • First Online:
Modelling and Implementation of Complex Systems

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 1))

Abstract

There are several software engineering activities that require merging a set of models to produce a single one. In practice, models are often merged in a pairwise way, without considering the order in which models are combined. In this case, the quality of the results is not always guaranteed as it depends on the order of merging. The approach presented in this paper aims to improve the results, by considering the order of merging. It involves an iterative process, which is repeated until merging all models. In each iteration, we first compare the set of input models to measure the similarity degree of each pair of them. Then we combine a subset of these pairs of models, such that the sum of their similarity degrees is maximal.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Similarly to [8], we represent a model as a set of elements, where each element contains a set of properties. For the example of Fig. 1, the elements are the UML classes, and the properties are the names and the attributes of these classes.

  2. 2.

    If n is impair, then m = (n − 1)/2.

  3. 3.

    These models are available at http://www.cs.toronto.edu/~mjulia/NwM.

References

  1. Sabetzadeh, M., Nejati, S., Easterbrook, S., Chechik, M.: A relationship-driven framework for model merging. In: Proceedings of the Workshop on Modeling in Software Engineering. 29th International Conference on Software Engineering, Minneapolis (2007)

    Google Scholar 

  2. Pohl, K., Böckle, G., Van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)

    Google Scholar 

  3. Rubin, J., Chechik, M.: Combining related products into product lines. In: FASE’12, pp. 285–300. Springer (2012)

    Google Scholar 

  4. Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and merging of statecharts specifications. In: ICSE 2007, pp. 54–64, IEEE (2007)

    Google Scholar 

  5. Kelter, U., Wehren, J., Niere, J.: A generic difference algorithm for UML models. Softw. Eng. 64, 105–116 (2005)

    Google Scholar 

  6. Xing, Z., Stroulia, E.: UMLDiff: an algorithm for object-oriented design differencing. In: ASE, pp. 54–65. ACM (2005)

    Google Scholar 

  7. Kpodjedo, S., Ricca, F., Galinier, P., Antoniol, G., Guéhéneuc, Y.-G.: MADMatch: Many-to-many Approximate Diagram Matching for Design Comparison. IEEE TSE (2013)

    Google Scholar 

  8. Rubin, J., Chechik, M.: N-way model merging. In: ESEC/FSE, pp. 301–311. ACM (2013)

    Google Scholar 

  9. Altmanninger, K., Seidl, M., Wimmer, M.: A survey on model versioning approaches. Int. J. Web Inf. Syst. 5, 271–304 (2009)

    Article  Google Scholar 

  10. Zhang, X., Haugen, O., Moller-Pedersen, B.: Model comparison to synthesize a model-driven software product line. In: SPLC, pp. 90–99. IEEE (2011)

    Google Scholar 

  11. Martinez, J., Ziadi, T., Bissyandé, T., Klein, J., Le Traon, Y.: Bottom-up adoption of software product lines—a generic and extensible approach. In: SPLC 2015, pp. 101–110. ACM (2015)

    Google Scholar 

  12. Stephan, M., Cordy, J.R.: A survey of model comparison approaches and applications. In: 1st International Conference on Model-Driven Engineering and Software Development, pp. 265–277. INSTICC Press (2013)

    Google Scholar 

  13. Kolovos, D.S., Di Ruscio, D., Pierantonio, A., Paige, R.F.: Different models for model matching: an analysis of approaches to support model differencing. In: Proceedings of the 2009 ICSE Workshop on Comparison and Versioning of Software Models, CVSM 2009, pp. 1–6. IEEE Computer Society, Washington, DC (2009)

    Google Scholar 

  14. Antoniol, G., Canfora, G., Casazza, G., De Lucia, A.: Maintaining traceability links during object-oriented software evolution. Softw.-Pract. Exp. 31, 331–355 (2001)

    Article  MATH  Google Scholar 

  15. Kuhn, H.W.: The Hungarian method for the assignment problem. Naval Res. Logistics Q. 2, 83–97 (1955)

    Article  MathSciNet  MATH  Google Scholar 

  16. Edmonds, J.: Maximum matching and a polyhedron with 0,1-vertices. J. Res. Nat. Bureau Stan. Sect. B 69, 125–130 (1965)

    Google Scholar 

  17. Gabow, H.N.: An efficient implementation of Edmonds’ algorithm for maximum matching on graphs. J. ACM (JACM) 23, 221–234 (1976)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohammed Boubakir .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Boubakir, M., Chaoui, A. (2016). A Pairwise Approach for Model Merging. In: Chikhi, S., Amine, A., Chaoui, A., Kholladi, M., Saidouni, D. (eds) Modelling and Implementation of Complex Systems. Lecture Notes in Networks and Systems, vol 1. Springer, Cham. https://doi.org/10.1007/978-3-319-33410-3_23

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-33410-3_23

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-33409-7

  • Online ISBN: 978-3-319-33410-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics