Corpus ID: 237571696

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

  title={An Exploration of npm Package Co-Usage Examples from Stack Overflow: A Case Study},
  author={Syful Islam and Dong Wang and Raula Gaikovina Kula and Takashi Ishio and Kenichi Matsumoto},
  • Syful Islam, Dong Wang, +2 authors Kenichi Matsumoto
  • Published 18 September 2021
  • Computer Science
  • ArXiv
Third-party package usage has become a common practice in contemporary software development. Developers often face different challenges, including choosing the right libraries, installing errors, discrepancies, setting up the environment, and building failures during software development. The risks of maintaining a third-party package are well known, but it is unclear how information from Stack Overflow (SO) can be useful. This paper performed an empirical study to explore npm co-usage in SO… Expand

Figures and Tables from this paper


Recommending stack overflow posts for fixing runtime exceptions using failure scenario matching
A technique and prototype tool called MAESTRO that can automatically recommend an SO post that is most relevant to a given Java RE in a developer's code and returns the post with the closest match is presented. Expand
Broken promises: An empirical study into evolution problems in Java programs caused by library upgrades
  • Jens Dietrich, Kamil Jezek, Premek Brada
  • Computer Science
  • 2014 Software Evolution Week - IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE)
  • 2014
This paper has studied the extent of the problem on the qualitas corpus, a data set consisting of Java open-source programs widely used in empirical studies and found that the above mentioned issues do occur in practice, albeit not on a wide scale. Expand
Do developers update their library dependencies?
It is concluded that even though third-party reuse is common practice, updating a dependency is not as common for many developers. Expand
Improving reusability of software libraries through usage pattern mining
A novel approach to automatically identify third-party library usage patterns, i.e., collections of libraries that are commonly used together by developers, using a hierarchical clustering technique to group together software libraries based on external client usage. Expand
Dependency Versioning in the Wild
There is no evidence that projects switch to semantic versioning on a large scale, and it is found that many package managers support — and the respective community adapts — flexible versioning practices, but this does not always work. Expand
How do developers utilize source code from stack overflow?
The top 3 barriers that make it difficult for developers to reuse code from Stack Overflow are: too much code modification required to fit in their projects, incomprehensive code, and low code quality. Expand
Mining API usage scenarios from stack overflow
A framework to automatically mine API usage scenarios from Stack Overflow, supported by three novel algorithms is proposed and implemented and deployed in the proof-of-concept online tool, Opiner. Expand
PostFinder: Mining Stack Overflow posts to support software developers
PostFinder is introduced, an approach that analyzes the project under development to extract suitable context, and allows developers to retrieve messages from Stack Overflow being relevant to the API function calls that have already been invoked. Expand
Which Library Should I Use?: A Metric-Based Comparison of Software Libraries
  • Fernando López de la Mora, Sarah Nadi
  • Computer Science
  • 2018 IEEE/ACM 40th International Conference on Software Engineering: New Ideas and Emerging Technologies Results (ICSE-NIER)
  • 2018
This paper proposes creating library comparisons based on several metrics extracted from multiple sources such as software repositories, issue tracking systems, and Q&A websites to enable developers to make informed decisions by comparing metric data belonging to libraries from several domains. Expand
Semantic Versioning versus Breaking Changes: A Study of the Maven Repository
This study investigates semantic versioning, a versioning scheme which provides strict rules on major versus minor and patch releases, and analyzes seven years of library release history in Maven Central to find that around one third of all releases introduce at least one breaking change. Expand