MSR 2023
Dates to be announced Melbourne, Australia
co-located with ICSE 2023
Tue 16 May 2023 12:02 - 12:14 at Meeting Room 110 - Software Libraries & Ecosystems Chair(s): Mehdi Keshani

In this paper, we apply techniques from phylogenetics for uncovering evolutionary dependencies among software versions. Phylogenetics is a part of computational molecular biology that addresses the in ference of evolution among organisms based on differences/similarities in DNA sequences and morphology. We apply a tree differencing technique to abstract syntax trees to calculate a distance matrix, which is then used by a distance-based phylogenetic algorithm to infer an evolution network. This allows us to identify merging and branching among versions without manually looking into the details of the source code. Experiments on ancient/old versions of the Emacs editor and the open source 3D printer firmware show that we not only can reproduce the evolution of the software but also can identify code import/merging across different lineages. We also discuss how the techniques are used to identify the feature models among software variations. To the best of our knowledge, this paper is the first to report on a reticulate phylogenetic analysis of the software and may offer a useful method for gaining information on the evolution of the software.

Tue 16 May

Displayed time zone: Hobart change

11:50 - 12:35
Software Libraries & EcosystemsTechnical Papers / Industry Track / Data and Tool Showcase Track at Meeting Room 110
Chair(s): Mehdi Keshani Delft University of Technology
11:50
12m
Talk
A Large Scale Analysis of Semantic Versioning in NPM
Technical Papers
Donald Pinckney Northeastern University, Federico Cassano Northeastern University, Arjun Guha Northeastern University and Roblox Research, Jonathan Bell Northeastern University
Pre-print
12:02
12m
Talk
Phylogenetic Analysis of Reticulate Software Evolution
Technical Papers
Akira Mori National Institute of Advanced Industrial Science and Technology, Japan, Masatomo Hashimoto Chiba Institute of Technology, Japan
12:14
6m
Talk
PyMigBench: A Benchmark for Python Library Migration
Data and Tool Showcase Track
Mohayeminul Islam University of Alberta, Ajay Jha North Dakota State University, Sarah Nadi University of Alberta, Ildar Akhmetov University of Alberta
Pre-print
12:20
6m
Talk
Determining Open Source Project Boundaries
Industry Track
12:26
6m
Talk
Intertwining Communities: Exploring Libraries that Cross Software Ecosystems
Technical Papers
Kanchanok Kannee Nara Institute of Science and Technology, Raula Gaikovina Kula Nara Institute of Science and Technology, Supatsara Wattanakriengkrai Nara Institute of Science and Technology, Kenichi Matsumoto Nara Institute of Science and Technology
Pre-print