Skip to content
@xjtu-enre

xjtu-enre

ENRE

IMPORTANT LICENSING UPDATE At April 23, 2023, ENRE updated its license model to a duel license model:

  • Any open-source usages that use or distribute open source applications under the LGPL can use the LGPL-licensed ENRE;
  • Commercial redistributions should contact us to obtain a commertial license first.

WHAT IS ENRE?

🙋‍♀️ ENRE , developed by the SE team in Xi'an Jiaotong University, 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.

Features

  • 📡 Supports multiple programming languages
  • 🔗 Robust and flexible
  • 🧰 Support possible dependencies in weak typing languages

Supports

⌛️ By doing static analysis, ENRE supports the following entities and dependency types.

Language Maximum Version #Entity Type #Dependency Type Tool link
Java 14 11 18 🔗
C++ 17 13 14 🔗
Python 3.x 9 10 🔗
JS/TS 2022/4.7 17 12 🔗
Golang / 8 10 🔗
Cite us
  • Wuxia Jin et al., "Evaluating the Impact of Possible Dependencies on Architecture-level Maintainability," in IEEE Transactions on Software Engineering, doi: 10.1109/TSE.2022.3171288.

    @ARTICLE{
        9765666,  
        author={Jin, Wuxia and Zhong, Dinghong and Cai, Yuanfang and Kazman, Rick and Liu, Ting},  
        journal={IEEE Transactions on Software Engineering},   
        title={Evaluating the Impact of Possible Dependencies on Architecture-level Maintainability},   
        year={2022},  
        volume={},  
        number={},  
        pages={1-1},  
        doi={10.1109/TSE.2022.3171288}
    }
    

-Wuxia Jin, et al., "Where to Start: Studying Type Annotation Practices in Python," 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE), 2021, pp. 529-541, doi: 10.1109/ASE51524.2021.9678947.

```
@INPROCEEDINGS{
    9678947,  
    author={Jin, Wuxia and Zhong, Dinghong and Ding, Zifan and Fan, Ming and Liu, Ting},  
    booktitle={2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)},   
    title={Where to Start: Studying Type Annotation Practices in Python},   
    year={2021},  
    volume={},  
    number={},  
    pages={529-541},  
    doi={10.1109/ASE51524.2021.9678947}
}
```
  • Wuxia Jin et al. “Exploring the Architectural Impact of Possible Dependencies in Python Software.” 2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE) (2020): 758-770.

    @INPROCEEDINGS{
        9286085,  
        author={Jin, Wuxia and Cai, Yuanfang and Kazman, Rick and Zhang, Gang and Zheng, Qinghua and Liu, Ting},  
        booktitle={2020 35th IEEE/ACM International Conference on Automated Software Engineering (ASE)},   
        title={Exploring the Architectural Impact of Possible Dependencies in Python Software},   
        year={2020},  
        volume={},  
        number={},  
        pages={758-770},  
        doi={}
    }
    
  • Wuxia Jin et al., "ENRE: A Tool Framework for Extensible eNtity Relation Extraction," 2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), 2019, pp. 67-70, doi: 10.1109/ICSE-Companion.2019.00040.

    @INPROCEEDINGS{
        8802634,  
        author={Jin, Wuxia and Cai, Yuanfang and Kazman, Rick and Zheng, Qinghua and Cui, Di and Liu, Ting},  
        booktitle={2019 IEEE/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)},   
        title={ENRE: A Tool Framework for Extensible eNtity Relation Extraction},   
        year={2019},  
        volume={},  
        number={},  
        pages={67-70},  
        doi={10.1109/ICSE-Companion.2019.00040}
    }
    
  • Wuxia Jin et al., Service Candidate Identification from Monolithic Systems based on Execution Traces. TSE 2019.

    @ARTICLE{
        8686152,  
        author={Jin, Wuxia and Liu, Ting and Cai, Yuanfang and Kazman, Rick and Mo, Ran and Zheng, Qinghua},
        journal={IEEE Transactions on Software Engineering},   
        title={Service Candidate Identification from Monolithic Systems Based on Execution Traces},
        year={2021},  
        volume={47},  
        number={5},  
        pages={987-1007},  
        doi={10.1109/TSE.2019.2910531}
    }
    

Popular repositories Loading

  1. ENRE-cpp ENRE-cpp Public

    ENtity Relationship Extractor for C/C++ based on @eclipse/CDT. (Under development)

    Java 14 3

  2. ENRE-java ENRE-java Public

    Entities and dependencies extractor for Java projects based on @Eclipse JDT/parser

    Java 13 8

  3. ENRE-py ENRE-py Public

    Entities and dependencies extractor for Python based on Python Language Services of The Standard Library

    Python 13 2

  4. ENRE-ts ENRE-ts Public

    ENtity Relationship Extractor for ECMAScript and TypeScript based on @babel/parser. (Under development)

    TypeScript 9 5

  5. ICSE2024_PyAnalyzer ICSE2024_PyAnalyzer Public

    Python 4 1

  6. ENRE-x ENRE-x Public

    JavaScript 3 1

Repositories

Showing 10 of 23 repositories
  • Arkbel Public Forked from babel/babel

    ENRE's customized Babel for parsing ArkTS code

    TypeScript 1 MIT 6,063 4 0 Updated Dec 23, 2024
  • Python 0 0 0 0 Updated Nov 28, 2024
  • ENRE-ts Public

    ENtity Relationship Extractor for ECMAScript and TypeScript based on @babel/parser. (Under development)

    TypeScript 9 LGPL-2.1 5 2 0 Updated Sep 11, 2024
  • ENRE-rs Public

    ENtity Relationship Extractor for Rust based on @rust-analyzer. (Under development)

    LLVM 0 LGPL-2.1 0 0 0 Updated Sep 9, 2024
  • ENRE-cpp Public

    ENtity Relationship Extractor for C/C++ based on @eclipse/CDT. (Under development)

    Java 14 LGPL-2.1 3 10 1 Updated Aug 20, 2024
  • ENRE-java-increment Public Forked from xjtu-enre/ENRE-java

    Entities and dependencies extractor for Java projects based on @eclipse JDT/parser including incremental analysis

    Java 0 LGPL-2.1 8 0 0 Updated Mar 5, 2024
  • ENRE-java Public

    Entities and dependencies extractor for Java projects based on @eclipse JDT/parser

    Java 13 LGPL-2.1 8 15 0 Updated Mar 5, 2024
  • Python 4 1 0 0 Updated Jan 28, 2024
  • Java 1 MIT 0 0 0 Updated Jan 16, 2024
  • ENRE-workflow Public

    Workflow guidance towards a better ENRE.

    0 MIT 0 0 0 Updated Dec 11, 2023

People

This organization has no public members. You must be a member to see who’s a part of this organization.