Logo des Repositoriums
 

Automated Large-scale Multi-language Dynamic Program Analysis in the Wild

dc.contributor.authorVillazón, Alex
dc.contributor.authorSun, Haiyang
dc.contributor.authorRosà, Andrea
dc.contributor.authorRosales, Eduardo
dc.contributor.authorBonetta, Daniele
dc.contributor.authorDefilippis, Isabella
dc.contributor.authorOporto, Sergio
dc.contributor.authorBinder, Walter
dc.contributor.editorKoziolek, Anne
dc.contributor.editorSchaefer, Ina
dc.contributor.editorSeidl, Christoph
dc.date.accessioned2020-12-17T11:58:02Z
dc.date.available2020-12-17T11:58:02Z
dc.date.issued2021
dc.description.abstractOur paper published in the proceedings of the 33rd European Conference on Object-Oriented Programming (ECOOP 2019) proposes NAB, a novel framework to execute custom dynamic analysis on open-source software hosted in public repositories. The publication is complemented by an accepted artifact. Analyzing today’s large code repositories has become an important research area for understanding and improving different aspects of modern software systems. Despite the presence of a large body of work on mining code repositories through static analysis, studies applying dynamic analysis to open-source projects are scarce and of limited scale. Nonetheless, being able to apply dynamic analysis to the projects hosted in public code repositories is fundamental for large-scale studies on the runtime behavior of applications, which can greatly benefit the programming-language and software-engineering communities. NAB is fully automatic, language-agnostic, and scalable. We describe NAB’s key features and architecture. We also present three case studies on more than 56K Node.js, Java, and Scala projects, enabling us to 1) understand how developers use JavaScript Promises, 2) identify bad coding practices in JavaScript applications, and 3) locate task-parallel Java and Scala workloads suitable for inclusion in a domain-specific benchmark suite. A preliminary version of NAB is available at http://dag.inf.usi.ch/software/nab/en
dc.identifier.doi10.18420/SE2021_43
dc.identifier.isbn978-3-88579-704-3
dc.identifier.pissn1617-5468
dc.identifier.urihttps://dl.gi.de/handle/20.500.12116/34540
dc.language.isoen
dc.publisherGesellschaft für Informatik e.V.
dc.relation.ispartofSoftware Engineering 2021
dc.relation.ispartofseriesecture Notes in Informatics (LNI) - Proceedings, Volume P-310
dc.subjectDynamic program analysis
dc.subjectCode repositories
dc.subjectGitHub
dc.subjectNode.js
dc.subjectJava
dc.subjectScala
dc.subjectPromises
dc.subjectJIT-unfriendly code
dc.subjectTask granularity
dc.titleAutomated Large-scale Multi-language Dynamic Program Analysis in the Wilden
dc.typeText/ConferencePaper
gi.citation.endPage111
gi.citation.publisherPlaceBonn
gi.citation.startPage111
gi.conference.date22.-26. Februar 2021
gi.conference.locationBraunschweig/Virtuell

Dateien

Originalbündel
1 - 1 von 1
Vorschaubild nicht verfügbar
Name:
B1-42.pdf
Größe:
38.88 KB
Format:
Adobe Portable Document Format