skip to main content
10.1145/3243127.3243128acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
research-article

Applying graph kernels to model-driven engineering problems

Published:03 September 2018Publication History

ABSTRACT

Machine Learning (ML) can be used to analyze and classify large collections of graph-based information, e.g. images, location information, the structure of molecules and proteins, ... Graph kernels is one of the ML techniques typically used for such tasks.

In a software engineering context, models of a system such as structural or architectural diagrams can be viewed as labeled graphs. Thus, in this paper we propose to employ graph kernels for clustering software modeling artifacts. Among other benefits, this would improve the efficiency and usability of a variety of software modeling activities, e.g., design space exploration, testing or verification and validation.

References

  1. {n. d.}. EMF Compare. https://www.eclipse.org/emf/compare/.Google ScholarGoogle Scholar
  2. {n. d.}. EMF Diff/Merge. https://www.eclipse.org/diffmerge/.Google ScholarGoogle Scholar
  3. {n. d.}. igraph - The network analysis package. http://igraph.org/.Google ScholarGoogle Scholar
  4. Charu C. Aggarwal and Haixun Wang. 2010. A Survey of Clustering Algorithms for Graph Data. Springer, Boston, MA, 275–301. 978-1-4419-6045-0{_}9Google ScholarGoogle Scholar
  5. Wesley K. G. Assunção, Silvia R. Vergilio, and Roberto E. Lopez-Herrejon. 2017. Discovering Software Architectures with Search-Based Merge of UML Model Variants. In ICSR 2017: Mastering Scale and Complexity in Software Reuse. Springer, Cham, 95–111.Google ScholarGoogle Scholar
  6. Onder Babur and Loek Cleophas. 2017. Using n-grams for the Automated Clustering of Structural Models. In SOFSEM 2017: Theory and Practice of Computer Science. Springer, 510–524.Google ScholarGoogle ScholarCross RefCross Ref
  7. Francesco Basciani, Juri Di Rocco, Davide Di Ruscio, Ludovico Iovino, and Alfonso Pierantonio. 2016. Automated Clustering of Metamodel Repositories. In CAiSE 2016: Advanced Information Systems Engineering. Springer, Cham, 342–358.Google ScholarGoogle Scholar
  8. Marco Brambilla, Jordi Cabot, and Manuel Wimmer. 2012. Model-Driven Software Engineering in Practice. Vol. 1. Morgan & Claypool Publishers. 1–182 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. Cabot, R. Clarisó, and D. Riera. 2014. On the verification of UML/OCL class diagrams using constraint programming. Journal of Systems and Software 93 (7 2014), 1–23. http://www.sciencedirect.com/science/article/pii/S0164121214000739Google ScholarGoogle Scholar
  10. Karim O. Elish and Mahmoud O. Elish. 2008. Predicting defect-prone software modules using support vector machines. Journal of Systems and Software 81, 5 (5 2008), 649–660. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Adel Ferdjoukh, Florian Galinier, Eric Bourreau, Annie Chateau, and ClÃľmentine Nebut. 2017. Measuring Differences to Compare sets of Models and Improve Diversity in MDE. In ICSEA, International Conference on Software Engineering Advances. http://adel-ferdjoukh.ovh/wp-content/uploads/pdf/icsea17-distances-v9.pdfGoogle ScholarGoogle Scholar
  12. Swarnendu Ghosh, Nibaran Das, Teresa Gonçalves, Paulo Quaresma, and Mahantapas Kundu. 2018. The journey of graph kernels through two decades. Computer Science Review 27 (2 2018), 88–111. Applying Graph Kernels to Model-Driven Engineering Problems MASES ’18, September 3, 2018, Montpellier, FranceGoogle ScholarGoogle Scholar
  13. Carlos A. González and Jordi Cabot. 2014. Formal verification of static software models in MDE: A systematic review. Information and Software Technology 56, 8 (8 2014), 821–838. http://www.sciencedirect.com/science/article/pii/ S0950584914000627Google ScholarGoogle Scholar
  14. Aditya Grover and Jure Leskovec. 2016. node2vec: Scalable Feature Learning for Networks. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. http://arxiv.org/abs/1607.00653 Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Timo Kehrer, Udo Kelter, and Gabriele Taentzer. 2013. Consistency-preserving edit scripts in model versioning. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE, 191–201. 1109/ASE.2013.6693079 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dimitrios S. Kolovos, Davide Di Ruscio, Alfonso Pierantonio, and Richard F. Paige. 2009. Different models for model matching: An analysis of approaches to support model differencing. In 2009 ICSE Workshop on Comparison and Versioning of Software Models. IEEE, 1–6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Yuehua Lin, Jing Zhang, and Jeff Gray. 2005. A Testing Framework for Model Transformations. In Model-Driven Software Development. Springer-Verlag, Berlin/Heidelberg, 219–236.Google ScholarGoogle Scholar
  18. Meiyappan Nagappan, Thomas Zimmermann, and Christian Bird. 2013. Diversity in software engineering research. In Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering. ACM Press, New York, New York, USA, 466. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Tim Nelson, Salman Saghafi, Daniel J. Dougherty, Kathi Fisler, and Shriram Krishnamurthi. 2013. Aluminum: Principled scenario exploration through minimality. In 2013 35th International Conference on Software Engineering (ICSE). IEEE, 232–241. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. David Notkin, Betty H.C. Cheng, Klaus Pohl, MichaÅĆ IEEE Computer Society., Institute of Electrical, Zinovy Electronics Engineers., Andrzej Wa¸sowski, and Derek Rayside. 2013. Example-driven modeling: model = abstractions + examples. In Proceedings of the 2013 International Conference on Software Engineering. IEEE Press, 1273–1276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. https://dl.acm.org/citation.cfm?id=2486982Google ScholarGoogle Scholar
  22. Kaspar Riesen and Horst Bunke. 2009. Graph classification based on vector space embedding. International Journal of Pattern Recognition and Artificial Intelligence 23, 06 (9 2009), 1053–1081.Google ScholarGoogle ScholarCross RefCross Ref
  23. Satu Elisa Schaeffer. 2007. Graph clustering. Computer Science Review 1, 1 (8 2007), 27–64.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. OszkÃąr Semeráth and DÃąniel Varró. 2018. Iterative Generation of Diverse Models for Testing Specifications of DSL Tools. In FASE 2018: Fundamental Approaches to Software Engineering. Springer, Cham, 227–245. 1007/978-3-319-89363-1{_}13Google ScholarGoogle Scholar
  25. Nino Shervashidze, Pascal Schweitzer, Erik Jan van Leeuwen, Kurt Mehlhorn, and Karsten M. Borgwardt. 2001. Weisfeiler-Lehman Graph Kernels. The Journal of Machine Learning Research 12 (2001), 2539–2561. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. https://dl.acm.org/citation. cfm?id=2078187Google ScholarGoogle Scholar
  27. August Shi, Alex Gyori, Milos Gligoric, Andrey Zaytsev, and Darko Marinov. 2014. Balancing trade-offs in test-suite reduction. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014. ACM Press, New York, New York, USA, 246–256. 2635868.2635921 Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Matthew Stepahn and James R. Cordy. 2013. A Survey of Model Comparison Approaches and Applications. In Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development. SciTePress - Science and and Technology Publications, 265–277.Google ScholarGoogle Scholar
  29. Mahito Sugiyama, M Elisabetta Ghisu, Felipe Llinares-López, and Karsten Borgwardt. 2018. graphkernels: R and Python packages for graph comparison. Bioinformatics 34, 3 (2 2018), 530–532.Google ScholarGoogle Scholar
  30. S.V.N. Vishwanathan, Nicol N. Schraudolph, Risi Kondor, and Karsten M. Borgwardt. 2010. Graph Kernels. Journal of Machine Learning Research 11, Apr (2010), 1201–1242. http://www.jmlr.org/papers/v11/vishwanathan10a.html Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Applying graph kernels to model-driven engineering problems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader