arrow
返回

Dependency Smells in JavaScript Projects

delete2022-10-01
delete22
delete
OA
AI
A
Abbas Javan Jafari *
D
Diego Elias Costa
R
Rabe Abdalkareem
E
Emad Shihab
N
Nikolaos Tsantalis
DOI:10.1109/TSE.2021.3106247delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Dependency management in modern software development poses many challenges for developers who wish to stay up to date with the latest features and fixes whilst ensuring backwards compatibility. Project maintainers have opted for varied, and sometimes conflicting, approaches for maintaining their dependencies. Opting for unsuitable approaches can introduce bugs and vulnerabilities into the project, introduce breaking changes, cause extraneous installations, and reduce dependency understandability, making it harder for others to contribute effectively. In this paper, we empirically examine evidence of recurring dependency management issues (dependency smells). We look at the commit data for a dataset of 1,146 active JavaScript repositories to catalog, quantify and understand dependency smells. Through a series of surveys with practitioners, we identify and quantify seven dependency smells with varying degrees of popularity and investigate why they are introduced throughout project history. Our findings indicate that dependency smells are prevalent in JavaScript projects with two or more distinct smells appearing in 80 percent of the projects, but they generally infect a minority of a project's dependencies. Our observations show that the number of dependency smells tend to increase over time. Practitioners agree that dependency smells bring about many problems including security threats, bugs, dependency breakage, runtime errors, and other maintenance issues. These smells are generally introduced as developers react to dependency misbehaviour and the shortcomings of the npm ecosystem.
Keyword:
Ecosystems
Guidelines
Semantics
Runtime
Tools
Computer science
Computer bugs
Dependency smells
software ecosystems
dependency management
npm

期刊

IEEE Transactions on Software Engineering 封面图
IEEE Transactions on Software Engineering
IF:
5.6
论文数:
2.9K
被引数:
1.1W

机构

C
concordia university - canada
学者数:
8.0K
论文数: 8.9K
被引数: 4
C
carleton university
学者数:
7.5K
论文数: 8.3K
被引数: 5
引用论文

引用论文

Programmed sample delivery on a pressurized paper
err2014-10-24
err0
errOAAI
errJoong Ho Shin; Juhwan Park; Seung Hoon Kim; Je-Kyun Park
err分享
err收藏
Livestock-Water Productivity in the Nile Basin: Solutions for Emerging Challenges
err2011-01-01
err0
PREAI
errTilahun Amede; Katrien Descheemaeker; Everisto Mapedza; Don Peden; Paulo van Breugel; Seleshi B. Awulachew; Amare Haileslassie
err分享
err收藏
err分享
err收藏
err分享
err收藏
Cross-facial and functional microvascular muscle transplantation for longstanding facial paralysis
err2002-10-01
err0
PREAI
errHarry J Buncke; Gregory M Buncke; Gabriel M Kind; Rudolf F Buntic; Darrell Brooks; Brien T Chin
err分享
err收藏
Efficacy and Safety of Amlodipine Camsylate(Amodipin(TM)) for Treatment of Essential Hypertension
err2005-01-01
err0
errOAAI
errEak Kyun Shin; Wook Sung Chung; Hong Seok Seo; Ju Young Yang; Jung Bae Park; Jae Joong Kim; Young Keun On
err分享
err收藏
err分享
err收藏
err分享
err收藏
学者 查看更多内容