Profiling call changes via motif mining
Components’ interactions in software systems evolve over time increasing in complexity and size. Developers might have hard time to master such complexity during their maintenance activities incrementing the risk to make mistakes. Understanding changes of such interactions helps developer plan their re-factoring activities. In this study, we propose a method to study the occurrence of motifs in call graphs and their role in the evolution of a system. In our settings, motifs are patterns of class calls that can arise for many reasons as, for example, after implementing design patterns. By mining motifs of the call graph obtained from each system’s release, we were able to profile the evolution of 68 releases of five open source systems and show that 1) systems have common motifs that occur non-randomly and persistently over their releases, 2) motifs can be used to describe the evolution of calls, compare systems and eventually reveal releases that underwent major changes, 3) there are no specific motif types that include design patterns in all systems under study, but each system has motifs that likely include them, motifs that do not include them at all, and motifs that include a design pattern and occur only once in every release. Some of the findings resemble the ones for biological / physical systems and, as such, path the way to study the evolution of call graphs as dynamical systems (i.e., as system regulated by analytic functions).
Mon 28 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:00 - 12:30 | Modularity and DependencyTechnical Papers at E3 room Chair(s): Moritz Beller Delft University of Technology | ||
11:00 17mFull-paper | An Empirical Evaluation of OSGi Dependencies Best Practices in the Eclipse IDE Technical Papers A: Lina Ochoa , A: Thomas Degueule CWI, Netherlands, A: Jurgen Vinju Centrum Wiskunde & Informatica / Technische Universiteit Eindhoven / SWAT.engineering BV | ||
11:17 17mFull-paper | On the impact of security vulnerabilities in the npm package dependency network Technical Papers Link to publication DOI | ||
11:34 17mFull-paper | Feature Location using Crowd-based Screencasts Technical Papers Pre-print | ||
11:51 17mFull-paper | Profiling call changes via motif mining Technical Papers Pre-print | ||
12:08 7mShort-paper | Toward Predicting Architectural Significance of Implementation Issues Technical Papers A: Arman Shahbazian University of Southern California, A: Daye Nam University of Southern California, USA, A: Nenad Medvidović University of Southern California Pre-print | ||
12:15 15mOther | Discussion phase Technical Papers |