Modeling Library Dependencies and Updates in Large Software Repository Universes
Raula Gaikovina Kula, Coen De Roover, Daniel M. German, Takashi Ishio,, Katsuro Inoue

TL;DR
This paper introduces a novel approach using the Software Universe Graph (SUG) to model and visualize library dependencies and updates in large software repositories, aiding developers in making informed update decisions.
Contribution
It presents the SUG model that captures dependency and update information from repositories, enabling comparison and visualization to facilitate library update decisions.
Findings
Constructed a SUG from 188,951 nodes and 6,374 artifacts.
Demonstrated the application of metrics and visualizations with real-world examples.
Found 79% overlap in dependencies between Maven and GitHub repositories.
Abstract
Popular (re)use of third-party open-source software (OSS) is evidence of the impact of hosting repositories like maven on software development today. Updating libraries is crucial, with recent studies highlighting the associated vulnerabilities with aging OSS libraries. The decision to migrate to a newer library can range from trivial (security threat) to complex (assessment of work required to accommodate the changes). By leveraging the `wisdom of the software repository crowd' we propose a simple and efficient approach to recommending `consented' library updates. Our Software Universe Graph (SUG) models library dependency and update information mined from super repositories to provide different metrics and visualizations that aid in the update decision. To evaluate, we first constructed a SUG from 188,951 nodes of 6,374 maven unique artifacts. Then, we demonstrate how our metrics and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Software Reliability and Analysis Research
