Skip to main navigation Skip to search Skip to main content

ENRE: A tool framework for extensible entity relation extraction

  • Xi'an Jiaotong University
  • Drexel University

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

34 Scopus citations

Abstract

Understanding the dependencies among code entities is fundamental to many software analysis tools and techniques. However, with the emergence of new programming languages and paradigms, the increasingly common practice of writing systems in multiple languages, and the increasing popularity of dynamic languages, no existing framework can reliably extract this information. That is, no tools exist to accurately extract dependencies from systems written in multiple and dynamic languages. To address this problem, we have designed and implemented the Extensible eNtity Relation Extraction (ENRE) framework. ENRE supports the extraction of entities and their dependencies from systems written in multiple languages, enables the customization of dependencies of interest to the user, and makes implicit dependencies explicit. To demonstrate feasibility of this framework, we developed two ENRE instances for analyzing Python and Golang programs. Our experiments on 12 Python and Golang projects demonstrated the effectiveness and flexibility of ENRE. By comparing with a commercial static analysis tool, we show that we can extract dependencies from Golang programs which are not supported by existing tools and we can reveal implicit dependencies in Python. (Demo Video: https://youtu.be/BfXp5bb1yqc).

Original languageEnglish
Title of host publicationProceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering
Subtitle of host publicationCompanion, ICSE-Companion 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages67-70
Number of pages4
ISBN (Electronic)9781728117645
DOIs
StatePublished - May 2019
Event41st IEEE/ACM International Conference on Software Engineering: Companion, ICSE-Companion 2019 - Montreal, Canada
Duration: 25 May 201931 May 2019

Publication series

NameProceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion, ICSE-Companion 2019

Conference

Conference41st IEEE/ACM International Conference on Software Engineering: Companion, ICSE-Companion 2019
Country/TerritoryCanada
CityMontreal
Period25/05/1931/05/19

Keywords

  • Entity relation extraction
  • Golang
  • Implicit dependency
  • Python

Fingerprint

Dive into the research topics of 'ENRE: A tool framework for extensible entity relation extraction'. Together they form a unique fingerprint.

Cite this