Library Selection

Comparing & Selecting Software Libraries

With the abundance of software libraries available, finding the right one to use can be a time-consuming task. In this research direction, we mine various software repositories to extract information that can be used to compare libraries across various aspects (e.g., their documentation, popularity etc.).

Given the popularity of data-driven applications, data scientists have become more involved in contributing to various software components. We also explore what selection factors data scientists consider when choosing a software library for their work.

Related Resources

Related Publications


  1. MSR
    Evaluating Software Documentation Quality
    Henry Tang, and Sarah Nadi
    In Proceedings of the 20th ACM International Conference on Mining Software Repositories (MSR), 2023


  1. EMSE
    Selecting Third-party Libraries: The Data Scientist’s Perspective
    Sarah Nadi, and Nourhan Sakr
    Empirical Software Engineering Journal (EMSE), 2022


    LibComp: An IntelliJ Plugin for Comparing Java Libraries
    Rehab El-Hajj, and Sarah Nadi
    In Proceedings of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE ’20), 2020


    An Empirical Study of Metric-based Comparisons of Software Libraries
    Fernando Lopez Mora, and Sarah Nadi
    In Proc. of the 14th International Conference on Predictive Models and Data Analytics in Software Engineering (PROMISE ’18), 2018
  2. ICSE
    Which library should I use? A metric-based comparison of software libraries
    Fernando Lopez Mora, and Sarah Nadi
    In Proceedings of the 40th International Conference on Software Engineering New Ideas and Emerging Results Track (ICSE NIER ’18), 2018