ENRE: A Tool Framework for Extensible eNtity Relation ExtractionDemos
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: \url{https://youtu.be/2qeNgYT62cE})
Thu 30 MayDisplayed time zone: Eastern Time (US & Canada) change
14:00 - 15:30 | |||
14:00 20mTalk | ENRE: A Tool Framework for Extensible eNtity Relation ExtractionDemos Demonstrations Wuxia Jin Xi'an Jiaotong University, Yuanfang Cai Drexel University, Rick Kazman University of Hawai‘i at Mānoa, Qinghua Zheng MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Di Cui Xi'an Jiaotong University, Ting Liu MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China | ||
14:20 20mTalk | Detection and Repair of Architectural Inconsistencies in JavaTechnical Track Technical Track Negar Ghorbani University of California, Irvine, Joshua Garcia University of California, Irvine, Sam Malek University of California, Irvine | ||
14:40 20mTalk | Can I Have a Stack Trace to Examine the Dependency Conflict Issue?Technical Track Technical Track Ying Wang Northeastern University, China, Ming Wen The Hong Kong University of Science and Technology, Rongxin Wu Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Zhenwei Liu Northeastern University, China, Shin Hwei Tan Southern University of Science and Technology, Zhiliang Zhu Northeastern University, China, Hai Yu Northeastern University, China, Shing-Chi Cheung Department of Computer Science and Engineering, The Hong Kong University of Science and Technology | ||
15:00 20mTalk | Investigating the Impact of Multiple Dependency Structures on Software DefectsTechnical Track Technical Track Di Cui Xi'an Jiaotong University, Ting Liu MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Yuanfang Cai Drexel University, Qinghua Zheng MOEKLINNS Lab, Department of Computer Science and Technology, Xi'an Jiaotong University, 710049, China, Qiong Feng Drexel University, Wuxia Jin Xi'an Jiaotong University, Jiaqi Guo Xi'an Jiaotong University, Yu Qu Xi'an Jiaotong University | ||
15:20 10mTalk | Discussion Period Papers |