Software Ecosystem Call Graph for Dependency Management

by Hejderup, Joseph and van Deursen, Arie and Gousios, Georgios

You can get a pre-print version from here.
You can view the publisher's page here.


A popular form of software reuse is the use of open source software libraries hosted on centralized code repositories, such as Maven or npm. Developers only need to declare dependencies to external libraries, and automated tools make them available to the workspace of the project. Recent incidents, such as the Equifax data breach and the leftpad package removal, demonstrate the difficulty in assessing the severity, impact and spread of bugs in dependency networks. While dependency checkers are being adapted as a counter measure, they only provide indicative information. To remedy this situation, we propose a fine-grained dependency network that goes beyond packages and into call graphs. The result is a versioned ecosystem-level call graph. In this paper, we outline the process to construct the proposed graph and present a preliminary evaluation of a security issue from a core package to an affected client application.

Bibtex record

  author = {Hejderup, Joseph and van Deursen, Arie and Gousios, Georgios},
  title = {Software Ecosystem Call Graph for Dependency Management},
  booktitle = {Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results},
  series = {ICSE-NIER '18},
  year = {2018},
  isbn = {978-1-4503-5662-6},
  location = {Gothenburg, Sweden},
  pages = {101--104},
  numpages = {4},
  doi = {10.1145/3183399.3183417},
  acmid = {3183417},
  publisher = {ACM},
  address = {New York, NY, USA},
  url = {/pub/soft-ecosystem-cg-dep-mgmt.pdf}

The paper