Selecting third-party libraries: The practitioners' perspective

05/26/2020
by   Enrique Larios-Vargas, et al.
0

The selection of third-party libraries is an essential element of virtually any software development project. However, deciding which libraries to choose is a challenging practical problem. Selecting the wrong library can severely impact a software project in terms of cost, time, and development effort, with the severity of the impact depending on the role of the library in the software architecture, among others. Despite the importance of following a careful library selection process, in practice, the selection of third-party libraries is still conducted in an ad-hoc manner, where dozens of factors play an influential role in the decision. In this paper, we study the factors that influence the selection process of libraries, as perceived by industry developers. To that aim, we perform a cross-sectional interview study with 16 developers from 11 different businesses and survey 115 developers that are involved in the selection of libraries. We systematically devised a comprehensive set of 26 technical, human, and economic factors that developers take into consideration when selecting a software library. Eight of these factors are new to the literature. We explain each of these factors and how they play a role in the decision. Finally, we discuss the implications of our work to library maintainers, potential library users, package manager developers, and empirical software engineering researchers.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/16/2023

Intertwining Communities: Exploring Libraries that Cross Software Ecosystems

Using libraries in applications has helped developers reduce the costs o...
research
03/30/2022

crypto_lib: Comparing and selecting cryptography libraries (long version of EICC 2022 publication)

Selecting a library out of numerous candidates can be a laborious and re...
research
11/02/2018

Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web

Web developers routinely rely on third-party Java-Script libraries such ...
research
10/31/2020

Mir: Automated Quantifiable Privilege Reduction Against Dynamic Library Compromise in JavaScript

Third-party libraries ease the development of large-scale software syste...
research
11/18/2018

R scripting libraries for comparative analysis of the correlation methods to identify factors affecting Mariana Trench formation

Mariana trench is the deepest place on the Earth. It crosses four tecton...
research
09/18/2021

An Exploration of npm Package Co-Usage Examples from Stack Overflow: A Case Study

Third-party package usage has become a common practice in contemporary s...
research
09/09/2020

How much does an interlibrary loan request cost? A review of the literature

Interlibrary loan (ILL) services are used to fill the gap between academ...

Please sign up or login with your details

Forgot password? Click here to reset