2021
DOI: 10.1007/s10664-020-09914-8
|View full text |Cite
|
Sign up to set email alerts
|

A comprehensive study of bloated dependencies in the Maven ecosystem

Abstract: Build automation tools and package managers have a profound influence on software development. They facilitate the reuse of third-party libraries, support a clear separation between the application’s code and its external dependencies, and automate several software development tasks. However, the wide adoption of these tools introduces new challenges related to dependency management. In this paper, we propose an original study of one such challenge: the emergence of bloated dependencies. Bloated dependencies a… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
26
1

Year Published

2021
2021
2023
2023

Publication Types

Select...
5
2

Relationship

0
7

Authors

Journals

citations
Cited by 64 publications
(27 citation statements)
references
References 39 publications
0
26
1
Order By: Relevance
“…While this DSL-first workflow has yielded impressive results, the DSL itself is also a single point of failure. A key challenge for designing any DSL is determining its scope: a good DSL should make it easy to construct programs for the domain, without bloating the language with redundant concepts [27][28][29]. For systems that seek to understand human natural language, extensive effort is often necessary to ensure that the DSL aligns reasonably to human instructions [30,31].…”
Section: Communication Using Natural and Computer Programsmentioning
confidence: 99%
“…While this DSL-first workflow has yielded impressive results, the DSL itself is also a single point of failure. A key challenge for designing any DSL is determining its scope: a good DSL should make it easy to construct programs for the domain, without bloating the language with redundant concepts [27][28][29]. For systems that seek to understand human natural language, extensive effort is often necessary to ensure that the DSL aligns reasonably to human instructions [30,31].…”
Section: Communication Using Natural and Computer Programsmentioning
confidence: 99%
“…Many other configuration options enable and fine-tune additional ProGuard features, (such as, field or method removal, obfuscation, method inlining, class merging). DepClean [1] identifies and removes bloated dependencies that are part of the dependency tree of the project under analysis, but whose code is not used (neither directly nor indirectly) by the application. Differently from Maven Shade and ProGuard, the focus of DepClean is not to produce a compact Java archive for use at runtime, but rather to simplify the dependency tree at development time.…”
Section: Debloating Toolsmentioning
confidence: 99%
“…The effect of software reuse on security is investigated by Gkortzis et al in [2], who show empirical evidence of the relation between the size of a code base and its likelihood to contain some vulnerabilities. Recently, Soto-Valero et al conducted a large-scale study to assess the prevalence of bloated dependencies in the Maven ecosystem [1]. In the same paper, they presented DepClean, one of the tools we used in our case study.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations