BERT4Anno: An annotation misuse detection method for Java
Developers leverage Java annotations to implement functions such as creating objects and operating databases. However, mastering annotations is challenging, and misused annotations might cause an application to crash. Although state-of-the-art techniques attempt to solve this problem, they do not pr...
Gespeichert in:
| Veröffentlicht in: | Information and software technology Jg. 184; S. 107763 |
|---|---|
| Hauptverfasser: | , , , , , , , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
Elsevier B.V
01.08.2025
|
| Schlagworte: | |
| ISSN: | 0950-5849 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | Developers leverage Java annotations to implement functions such as creating objects and operating databases. However, mastering annotations is challenging, and misused annotations might cause an application to crash. Although state-of-the-art techniques attempt to solve this problem, they do not provide conclusions on Java annotation misuse types, nor do they leverage project-level information, which results in low efficiency in detecting annotation misuses.
To summarize Java annotation misuse types and provide a more efficient method for detecting misused annotations.
Firstly, to categorize Java annotation misuses, we conduct an empirical study and curate 321 annotation misuse questions from Stack Overflow. Secondly, to better detect these misuses, we propose a BERT-based method, BERT4Anno, which takes project structure and resource configuration into account—factors often neglected by state-of-the-art methods. In BERT4Anno, a novel Annotation Usage Project Representation (AUPR) technique is designed to leverage the information of the interconnections among source code, configuration and project structure. Moreover, an AUPR-based Named Entity Recognition (ANER) task by fine-tuning BERT is devised to learn annotation usage knowledge. With the knowledge, the fine-tuned model can detect misused annotations. Finally, to evaluate our proposed method, two datasets, mainly curated from GitHub and comprising 404 Java projects/files with annotation misuse instances, are used for the experiments.
The Java annotation misuses are categorized into 14 types based on how the curated questions violate the correct annotation usage knowledge. The comparison experiment demonstrates the superior performance of our method over state-of-the-art baselines in terms of precision, recall, and F1 score, while our visualization technique provides insightful interpretations of the mechanism underlying the model’s outperformance.
By leveraging the project-level information, our proposed method can predict the appropriate types and positions of annotations and subsequently identify the misused annotations, making the detection more efficient. |
|---|---|
| AbstractList | Developers leverage Java annotations to implement functions such as creating objects and operating databases. However, mastering annotations is challenging, and misused annotations might cause an application to crash. Although state-of-the-art techniques attempt to solve this problem, they do not provide conclusions on Java annotation misuse types, nor do they leverage project-level information, which results in low efficiency in detecting annotation misuses.
To summarize Java annotation misuse types and provide a more efficient method for detecting misused annotations.
Firstly, to categorize Java annotation misuses, we conduct an empirical study and curate 321 annotation misuse questions from Stack Overflow. Secondly, to better detect these misuses, we propose a BERT-based method, BERT4Anno, which takes project structure and resource configuration into account—factors often neglected by state-of-the-art methods. In BERT4Anno, a novel Annotation Usage Project Representation (AUPR) technique is designed to leverage the information of the interconnections among source code, configuration and project structure. Moreover, an AUPR-based Named Entity Recognition (ANER) task by fine-tuning BERT is devised to learn annotation usage knowledge. With the knowledge, the fine-tuned model can detect misused annotations. Finally, to evaluate our proposed method, two datasets, mainly curated from GitHub and comprising 404 Java projects/files with annotation misuse instances, are used for the experiments.
The Java annotation misuses are categorized into 14 types based on how the curated questions violate the correct annotation usage knowledge. The comparison experiment demonstrates the superior performance of our method over state-of-the-art baselines in terms of precision, recall, and F1 score, while our visualization technique provides insightful interpretations of the mechanism underlying the model’s outperformance.
By leveraging the project-level information, our proposed method can predict the appropriate types and positions of annotations and subsequently identify the misused annotations, making the detection more efficient. |
| ArticleNumber | 107763 |
| Author | Xiang, Nan Zhang, Kui Dong, Linxiao Yang, Jingbo Liao, Xingchuang Wu, Wenjun Jian, Ren Ji, Xin |
| Author_xml | – sequence: 1 givenname: Jingbo orcidid: 0009-0005-4270-9389 surname: Yang fullname: Yang, Jingbo email: yangjingbo@buaa.edu.cn organization: School of Computer Science and Engineering, Beihang University, China – sequence: 2 givenname: Xin surname: Ji fullname: Ji, Xin email: xin-ji@sgcc.com.cn organization: State Grid Nanjing Power Supply Company, China – sequence: 3 givenname: Wenjun surname: Wu fullname: Wu, Wenjun email: wwj09315@buaa.edu.cn organization: State Key Laboratory of Complex and Critical Software Environment, Beihang University, China – sequence: 4 givenname: Xingchuang surname: Liao fullname: Liao, Xingchuang email: liaoxingchuang@buaa.edu.cn organization: Institute of Artificial Intelligence, Beihang University, China – sequence: 5 givenname: Kui orcidid: 0000-0002-8784-2184 surname: Zhang fullname: Zhang, Kui email: zhangkui@buaa.edu.cn organization: State Key Laboratory of Complex and Critical Software Environment, Beihang University, China – sequence: 6 givenname: Linxiao surname: Dong fullname: Dong, Linxiao email: linxiao-dong@sgcc.com.cn organization: State Grid Nanjing Power Supply Company, China – sequence: 7 givenname: Nan surname: Xiang fullname: Xiang, Nan email: xiangn@js.sgcc.com.cn organization: State Grid Nanjing Power Supply Company, China – sequence: 8 givenname: Ren orcidid: 0000-0001-7924-9586 surname: Jian fullname: Jian, Ren email: renjian@buaa.edu.cn organization: School of Computer Science and Engineering, Beihang University, China |
| BookMark | eNp9j81KAzEUhbOoYKu-gYt5gan3Zibz40Kopf5REKSuw53JDabYRJKx4Ns7ZVy7OocD53C-hZj54FmIa4QlAlY3-6XzNgW7lCDVGNV1VczEHFoFuWrK9lwsUtoDYA0FzEV7v3nblSvvw2228hmNZqDBBZ8dXPpOnBkeuJ8CHj6CyWyI2Qsd6VKcWfpMfPWnF-L9YbNbP-Xb18fn9Wqb91LVQy5Ryl5ZLk3VtY0x2DUENUuyTccMLYLssEAl0WJjgVAq1VFNsqyQWqbiQpTTbh9DSpGt_oruQPFHI-gTst7rCVmfkPWEPNbuphqP346Oo069Y9-zcXEE0ia4_wd-AePmZEE |
| Cites_doi | 10.1109/TSE.2012.63 10.1007/s10664-012-9236-6 10.1109/TSE.2019.2948910 10.1109/TSE.2021.3069978 10.1109/TSE.2018.2827384 10.1162/089120104773633402 10.1109/TKDE.2013.39 10.1145/3643759 10.1109/MS.2018.2141031 10.1007/s10664-024-10460-w 10.1109/TSE.2019.2910516 10.1016/j.sysarc.2021.102200 10.1016/j.scico.2015.01.004 |
| ContentType | Journal Article |
| Copyright | 2025 |
| Copyright_xml | – notice: 2025 |
| DBID | AAYXX CITATION |
| DOI | 10.1016/j.infsof.2025.107763 |
| DatabaseName | CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Business |
| ExternalDocumentID | 10_1016_j_infsof_2025_107763 S0950584925001028 |
| GroupedDBID | --K --M -~X .DC .~1 0R~ 1B1 1~. 1~5 29I 4.4 457 4G. 5GY 5VS 7-5 71M 77K 8P~ 9JN AABNK AAEDT AAEDW AAIKJ AAKOC AALRI AAOAW AAQFI AAQXK AATTM AAXKI AAXUO AAYFN AAYOK AAYWO ABBOA ABDPE ABFNM ABFRF ABJNI ABMAC ABWVN ABXDB ACDAQ ACGFO ACGFS ACGOD ACNNM ACRLP ACRPL ACVFH ACZNC ADBBV ADCNI ADEZE ADJOM ADMUD ADNMO AEBSH AEFWE AEIPS AEKER AENEX AEUPX AFJKZ AFPUW AFTJW AFXIZ AGCQF AGHFR AGQPQ AGRNS AGUBO AGYEJ AHHHB AHZHX AIALX AIEXJ AIGII AIIUN AIKHN AITUG AKBMS AKRWK AKYEP ALMA_UNASSIGNED_HOLDINGS AMRAJ ANKPU AOUOD APXCP ASPBG AVWKF AXJTR AZFZN BKOJK BKOMP BLXMC BNPGV CS3 DU5 EBS EFJIC EJD EO8 EO9 EP2 EP3 FDB FEDTE FGOYB FIRID FNPLU FYGXN G-Q GBLVA GBOLZ HLZ HVGLF HZ~ IHE J1W KOM LG9 M41 MO0 MS~ N9A O-L O9- OAUVE OZT P-8 P-9 P2P PC. PQQKQ Q38 R2- RIG ROL RPZ SBC SDF SDG SDP SES SEW SPC SPCBC SSH SSV SSZ T5K TWZ UHS UNMZH WH7 WUQ ZY4 ~G- 77I 9DU AAYXX ACLOT CITATION EFKBS EFLBG ~HD |
| ID | FETCH-LOGICAL-c257t-2122c5fe4d6b98dd1b8a07e2af8bee09102b131521f18f0a1255ba7a2461a9ea3 |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001491126700001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 0950-5849 |
| IngestDate | Sat Nov 29 06:53:49 EST 2025 Sat Jun 21 16:53:54 EDT 2025 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Misuse detection BERT Stack overflow Java annotation |
| Language | English |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c257t-2122c5fe4d6b98dd1b8a07e2af8bee09102b131521f18f0a1255ba7a2461a9ea3 |
| ORCID | 0000-0002-8784-2184 0000-0001-7924-9586 0009-0005-4270-9389 |
| ParticipantIDs | crossref_primary_10_1016_j_infsof_2025_107763 elsevier_sciencedirect_doi_10_1016_j_infsof_2025_107763 |
| PublicationCentury | 2000 |
| PublicationDate | August 2025 2025-08-00 |
| PublicationDateYYYYMMDD | 2025-08-01 |
| PublicationDate_xml | – month: 08 year: 2025 text: August 2025 |
| PublicationDecade | 2020 |
| PublicationTitle | Information and software technology |
| PublicationYear | 2025 |
| Publisher | Elsevier B.V |
| Publisher_xml | – name: Elsevier B.V |
| References | Daoud, Faci, Benslimane, Maamar, Fazziki (bib0007) 2021 Yu, Bai, Seinturier, Monperrus (bib0002) 2021; 5 Lozano, Mens, Kellens (bib0023) 2015; 105 MUBench. [Online]. Available Shinn N., Cassano F., Berman E., Gopinath A. “Reflexion: language agents with verbal reinforcement learning.” 2023, DOI S. Amann, H.A. Nguyen, S. Nadi, T.N. Nguyen and M. Mezini. “A systematic evaluation of static API-misuse detectors.” IEEE Trans. Softw. Eng., vol. 45, pp. 1170–1188, DOI Robillard, Bodden, Kawrykow, Mezini, Ratchford (bib0027) 2012; 39 Zhang, Zhou (bib0041) 2014; 26 Parnin, Bird, Murphy-Hill (bib0015) 2013; 18 Wang, Ji, Shi, Wang, Ye, Cui, Yu (bib0035) 2019 Guerra, Gomes, Ferreira (bib0018) 2024; 29 Rocha, Valente (bib0003) 2011 Fan, Ma (bib0008) 2017 Taibi, Lenarduzzi (bib0011) 2018; 35 Kang, Lo (bib0028) 2021; 48 Darwin (bib0031) 2010 Nuryyev, Ajay, Nadi, Chang, Jiang, Sundaresan (bib0024) 2022 Sven, Nguyen, Nadi, Nguyen, Mezini (bib0029) 2019 Ren, Ye, Xing, Xia, Xu, Zhu, Sun (bib0014) 2021 CheckStyle. [Online]. Available . Mansur, Ajay, Sarah, Karim, Yee-Kang, Emily (bib0017) 2022 Liu P., Qiu X., and Huang X. “Recurrent Neural network for text classification with Multi-task learning.” 2016, DOI Noguera (bib0032) 2008; 5095 Wei, Wang, Schuurmans, Bosma (bib0046) 2022 Vaswani, Parmar, Uszkoreit, Jones, Gomez, Kaiser, Polosukhin (bib0040) 2017 Spring. [Online]. Available Sanchez, Lara (bib0030) 2016; 45 Java. [Online]. Available Train Ticket. [Online]. Available Kim, Tsantalis, Chen, Yang (bib0020) 2021 Li, Jiang, Benton, Xiong, Zhang (bib0013) 2021 Eugenio, Glass (bib0038) 2024; 30 Dyer, Rajan, Nguyen, Nguyen (bib0016) 2014 Yang, Ji, Wu, Ren, Zhang, Zhang, Wang, Dong (bib0034) 2024 Liu, Yan, Sha, Peng, Chen, Wang (bib0001) Mar 2022 Nuryyev. “Mining annotation usage rules of Enterprise Java Framework.” [Master thesis]. Department of Computing Science University of Alberta, 2021. Fowler (bib0021) 2010 Devlin J., Chang M.W., Lee K., Toutanova K. “Bert: pre-training of deep bidirectional transformers for language understanding.” 2018, DOI Jawahar, Sagot, Seddah (bib0045) 2019 MicroProfile. [Online]. Available Zhang, Pei, Liang, Tan (bib0009) 2024; 1 Smith, D.V.Bruggen, F. Tomassetti. “Java parser: visited analyse, transform and generate your Java code base.” 2017. Jha, Nadi (bib0019) 2020 SonarQube. [Online]. Available Allamanis (bib0033) 2022 Krüger, Späth, Ali, Bodden, Mezini (bib0022) 2019; 47 Chu, Chen, Chen, Yu (bib0047) 2024 BertViz. [Online]. Taibi (10.1016/j.infsof.2025.107763_bib0011) 2018; 35 Sven (10.1016/j.infsof.2025.107763_bib0029) 2019 Chu (10.1016/j.infsof.2025.107763_bib0047) 2024 Liu (10.1016/j.infsof.2025.107763_bib0001) 2022 Eugenio (10.1016/j.infsof.2025.107763_bib0038) 2024; 30 Ren (10.1016/j.infsof.2025.107763_bib0014) 2021 10.1016/j.infsof.2025.107763_bib0010 Yang (10.1016/j.infsof.2025.107763_bib0034) 2024 Vaswani (10.1016/j.infsof.2025.107763_bib0040) 2017 Daoud (10.1016/j.infsof.2025.107763_bib0007) 2021 10.1016/j.infsof.2025.107763_bib0006 10.1016/j.infsof.2025.107763_bib0004 10.1016/j.infsof.2025.107763_bib0026 10.1016/j.infsof.2025.107763_bib0048 10.1016/j.infsof.2025.107763_bib0005 Sanchez (10.1016/j.infsof.2025.107763_bib0030) 2016; 45 10.1016/j.infsof.2025.107763_bib0025 Parnin (10.1016/j.infsof.2025.107763_bib0015) 2013; 18 10.1016/j.infsof.2025.107763_bib0044 Allamanis (10.1016/j.infsof.2025.107763_bib0033) 2022 Rocha (10.1016/j.infsof.2025.107763_bib0003) 2011 Nuryyev (10.1016/j.infsof.2025.107763_bib0024) 2022 Kang (10.1016/j.infsof.2025.107763_bib0028) 2021; 48 Fan (10.1016/j.infsof.2025.107763_bib0008) 2017 Darwin (10.1016/j.infsof.2025.107763_bib0031) 2010 Kim (10.1016/j.infsof.2025.107763_bib0020) 2021 10.1016/j.infsof.2025.107763_bib0042 10.1016/j.infsof.2025.107763_bib0043 Zhang (10.1016/j.infsof.2025.107763_bib0009) 2024; 1 Krüger (10.1016/j.infsof.2025.107763_bib0022) 2019; 47 Jha (10.1016/j.infsof.2025.107763_bib0019) 2020 Zhang (10.1016/j.infsof.2025.107763_bib0041) 2014; 26 Robillard (10.1016/j.infsof.2025.107763_bib0027) 2012; 39 10.1016/j.infsof.2025.107763_bib0039 Yu (10.1016/j.infsof.2025.107763_bib0002) 2021; 5 Guerra (10.1016/j.infsof.2025.107763_bib0018) 2024; 29 10.1016/j.infsof.2025.107763_bib0037 Fowler (10.1016/j.infsof.2025.107763_bib0021) 2010 Wang (10.1016/j.infsof.2025.107763_bib0035) 2019 Lozano (10.1016/j.infsof.2025.107763_bib0023) 2015; 105 10.1016/j.infsof.2025.107763_bib0036 Wei (10.1016/j.infsof.2025.107763_bib0046) 2022 10.1016/j.infsof.2025.107763_bib0012 Noguera (10.1016/j.infsof.2025.107763_bib0032) 2008; 5095 Jawahar (10.1016/j.infsof.2025.107763_bib0045) 2019 Dyer (10.1016/j.infsof.2025.107763_bib0016) 2014 Li (10.1016/j.infsof.2025.107763_bib0013) 2021 Mansur (10.1016/j.infsof.2025.107763_bib0017) 2022 |
| References_xml | – year: 2010 ident: bib0021 article-title: Domain-Specific Languages – volume: 5 start-page: 969 year: 2021 end-page: 986 ident: bib0002 article-title: Characterizing the usage, evolutionand impact of Java annotations in practice publication-title: IEEE Trans. Softw. Eng. – start-page: 241 year: 2021 end-page: 252 ident: bib0013 article-title: A large-scale study on API misuses in the wild publication-title: 14th IEEE Conference on Software Testing, Verification – volume: 105 start-page: 73 year: 2015 end-page: 91 ident: bib0023 article-title: Usage contracts: offering immediate feedback on violations of structural source-code regularities publication-title: Sci. Comput. Program – volume: 26 start-page: 1819 year: 2014 end-page: 1837 ident: bib0041 article-title: A review on multi-label learning algorithms publication-title: IEEE Trans. Knowl. Data Eng. – reference: Smith, D.V.Bruggen, F. Tomassetti. “Java parser: visited analyse, transform and generate your Java code base.” 2017. – reference: Devlin J., Chang M.W., Lee K., Toutanova K. “Bert: pre-training of deep bidirectional transformers for language understanding.” 2018, DOI: – volume: 1 start-page: 722 year: 2024 end-page: 744 ident: bib0009 article-title: Understanding and detecting annotation-induced faults of static analyzers publication-title: Proc. ACM Softw. Eng. – volume: 29 start-page: 29 year: 2024 end-page: 62 ident: bib0018 article-title: How do annotations affect java code readability? publication-title: Empir. Softw. Eng. – start-page: 132 year: 2020 end-page: 142 ident: bib0019 article-title: Annotation practices in Android apps publication-title: IEEE 20th International Working Conference on Source Code Analysis and Manipulation – volume: 35 start-page: 56 year: 2018 end-page: 62 ident: bib0011 article-title: On the definition of microservice bad smells publication-title: IEEE Softw. – reference: BertViz. [Online]. – start-page: 3651 year: 2019 end-page: 3657 ident: bib0045 article-title: What does BERT learn about the structure of language? publication-title: ACL 57th Annual Meeting of the Association for Computational Linguistics – start-page: 426 year: 2011 end-page: 431 ident: bib0003 article-title: How annotations are used in Java: an empirical study publication-title: Proceedings of the 23rd International Conference on Software Engineering & Knowledge Engineering – year: 2021 ident: bib0007 article-title: A multi-model based mi- croservices identification approach publication-title: J. Syst. Architect. – reference: Nuryyev. “Mining annotation usage rules of Enterprise Java Framework.” [Master thesis]. Department of Computing Science University of Alberta, 2021. – volume: 45 start-page: 164 year: 2016 end-page: 190 ident: bib0030 article-title: Ann: a domain-specific language for the effective design and validation of java annotations publication-title: Comput. Lang. Syst. Struct. – reference: S. Amann, H.A. Nguyen, S. Nadi, T.N. Nguyen and M. Mezini. “A systematic evaluation of static API-misuse detectors.” IEEE Trans. Softw. Eng., vol. 45, pp. 1170–1188, DOI: – volume: 39 start-page: 613 year: 2012 end-page: 637 ident: bib0027 article-title: Automated api property inference techniques publication-title: IEEE Trans. Softw. Eng. – start-page: 22 year: 2021 end-page: 30 ident: bib0020 article-title: Studying test annotation maintenance in the wild publication-title: 43rd IEEE/ACM InternationalConference on Software Engineering – reference: SonarQube. [Online]. Available: – start-page: 779 year: 2014 end-page: 790 ident: bib0016 article-title: Mining billions of ast nodes to study actual and potential usage of javalanguage features publication-title: Proceedings of the 36th International Conferenceon Software Engineering – reference: Train Ticket. [Online]. Available: – year: 2017 ident: bib0040 article-title: Attention is all you need publication-title: Advances in Neural Information Processing Systems 30, Annual Conference on Neural Information Processing Systems – volume: 5095 start-page: 48 year: 2008 end-page: 62 ident: bib0032 article-title: Annotation framework validation using domain models publication-title: Springer – volume: 48 start-page: 2761 year: 2021 end-page: 2783 ident: bib0028 article-title: Active learning of discriminative subgraph patterns for API misuse detection publication-title: IEEE Trans. Softw. Eng. – start-page: 2022 year: 2019 end-page: 2032 ident: bib0035 article-title: Heterogeneous graph attention network publication-title: The World Wide Web Conference – volume: 30 start-page: 95 year: 2024 end-page: 101 ident: bib0038 article-title: The Kappa statistic: a second look publication-title: Comput. Linguist. – year: 2022 ident: bib0046 article-title: Chain-of-thought prompting elicits reasoning in large language models publication-title: 36th Conference on Neural Information Processing Systems – year: Mar 2022 ident: bib0001 article-title: DeepAnna: deep learning based Java annotation recommendation and misuse detection publication-title: Proceedings of the 29th IEEE International Conference on Software Analysis, Evolution and Reengineering – reference: Java. [Online]. Available: – start-page: 461 year: 2021 end-page: 472 ident: bib0014 article-title: API-misuse detection driven by fine-grained API-constraint knowledge graph publication-title: Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering – volume: 18 start-page: 1047 year: 2013 end-page: 1089 ident: bib0015 article-title: Adoption and use of javagenerics publication-title: Empir. Softw. Eng. – start-page: 540 year: 2010 end-page: 547 ident: bib0031 article-title: AnnaBot: a static verifier for Java annotation usage publication-title: Adv. Softw. Eng – start-page: 265 year: 2019 end-page: 275 ident: bib0029 article-title: Investigating next steps in static API-misuse detection publication-title: IEEE/ACM 16th International Conference on Mining Software Repositories – start-page: 553 year: 2022 end-page: 562 ident: bib0024 article-title: Mining annotation usage rules: a case study with MicroProfile publication-title: 2022 IEEE International Conference on Software Maintenance and Evolution (ICSME) – reference: . – year: 2017 ident: bib0008 article-title: Migrating monolithic mobile application to microservice architecture: an experiment report publication-title: IEEE 6th International Conference on AI Mobile Services – reference: Shinn N., Cassano F., Berman E., Gopinath A. “Reflexion: language agents with verbal reinforcement learning.” 2023, DOI: – start-page: 120 year: 2024 end-page: 131 ident: bib0034 article-title: Using graph neural network to analyse and detect annotation misuse in java code publication-title: International Conference on Intelligent Computing – start-page: 91 year: 2022 end-page: 100 ident: bib0017 article-title: A Human-in-the-loop approach to generate annotation usage rules publication-title: Proceedings of the 32nd Annual International Conference on Computer Science and Software Engineering – start-page: 1173 year: 2024 end-page: 1203 ident: bib0047 article-title: A survey of chain of thought reasoning: advances, frontiers and future publication-title: The 62nd Annual Meeting of the Association for Computational Linguistics – reference: Spring. [Online]. Available: – reference: Liu P., Qiu X., and Huang X. “Recurrent Neural network for text classification with Multi-task learning.” 2016, DOI: – reference: MicroProfile. [Online]. Available: – reference: CheckStyle. [Online]. Available: – reference: MUBench. [Online]. Available: – start-page: 483 year: 2022 end-page: 497 ident: bib0033 article-title: Graph Neural networks on program analysis publication-title: Graph Neural Networks: Foundations, Frontiers, and Applications – volume: 47 start-page: 2382 year: 2019 end-page: 2400 ident: bib0022 article-title: Crysl: an extensible approach to validating the correct usage of cryptographic apis publication-title: IEEE Trans. Softw. Eng. – volume: 39 start-page: 613 year: 2012 ident: 10.1016/j.infsof.2025.107763_bib0027 article-title: Automated api property inference techniques publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2012.63 – ident: 10.1016/j.infsof.2025.107763_bib0042 – start-page: 3651 year: 2019 ident: 10.1016/j.infsof.2025.107763_bib0045 article-title: What does BERT learn about the structure of language? – ident: 10.1016/j.infsof.2025.107763_bib0044 – start-page: 22 year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0020 article-title: Studying test annotation maintenance in the wild – year: 2022 ident: 10.1016/j.infsof.2025.107763_bib0001 article-title: DeepAnna: deep learning based Java annotation recommendation and misuse detection – start-page: 426 year: 2011 ident: 10.1016/j.infsof.2025.107763_bib0003 article-title: How annotations are used in Java: an empirical study – year: 2010 ident: 10.1016/j.infsof.2025.107763_bib0021 – start-page: 553 year: 2022 ident: 10.1016/j.infsof.2025.107763_bib0024 article-title: Mining annotation usage rules: a case study with MicroProfile – volume: 18 start-page: 1047 year: 2013 ident: 10.1016/j.infsof.2025.107763_bib0015 article-title: Adoption and use of javagenerics publication-title: Empir. Softw. Eng. doi: 10.1007/s10664-012-9236-6 – ident: 10.1016/j.infsof.2025.107763_bib0036 – start-page: 461 year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0014 article-title: API-misuse detection driven by fine-grained API-constraint knowledge graph – volume: 47 start-page: 2382 year: 2019 ident: 10.1016/j.infsof.2025.107763_bib0022 article-title: Crysl: an extensible approach to validating the correct usage of cryptographic apis publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2019.2948910 – volume: 48 start-page: 2761 year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0028 article-title: Active learning of discriminative subgraph patterns for API misuse detection publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2021.3069978 – ident: 10.1016/j.infsof.2025.107763_bib0010 doi: 10.1109/TSE.2018.2827384 – ident: 10.1016/j.infsof.2025.107763_bib0006 – start-page: 2022 year: 2019 ident: 10.1016/j.infsof.2025.107763_bib0035 article-title: Heterogeneous graph attention network – start-page: 241 year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0013 article-title: A large-scale study on API misuses in the wild – year: 2017 ident: 10.1016/j.infsof.2025.107763_bib0040 article-title: Attention is all you need – volume: 30 start-page: 95 year: 2024 ident: 10.1016/j.infsof.2025.107763_bib0038 article-title: The Kappa statistic: a second look publication-title: Comput. Linguist. doi: 10.1162/089120104773633402 – volume: 45 start-page: 164 year: 2016 ident: 10.1016/j.infsof.2025.107763_bib0030 article-title: Ann: a domain-specific language for the effective design and validation of java annotations publication-title: Comput. Lang. Syst. Struct. – ident: 10.1016/j.infsof.2025.107763_bib0048 – start-page: 132 year: 2020 ident: 10.1016/j.infsof.2025.107763_bib0019 article-title: Annotation practices in Android apps – ident: 10.1016/j.infsof.2025.107763_bib0025 – start-page: 779 year: 2014 ident: 10.1016/j.infsof.2025.107763_bib0016 article-title: Mining billions of ast nodes to study actual and potential usage of javalanguage features – ident: 10.1016/j.infsof.2025.107763_bib0004 – volume: 26 start-page: 1819 year: 2014 ident: 10.1016/j.infsof.2025.107763_bib0041 article-title: A review on multi-label learning algorithms publication-title: IEEE Trans. Knowl. Data Eng. doi: 10.1109/TKDE.2013.39 – start-page: 91 year: 2022 ident: 10.1016/j.infsof.2025.107763_bib0017 article-title: A Human-in-the-loop approach to generate annotation usage rules – ident: 10.1016/j.infsof.2025.107763_bib0043 – ident: 10.1016/j.infsof.2025.107763_bib0039 – start-page: 120 year: 2024 ident: 10.1016/j.infsof.2025.107763_bib0034 article-title: Using graph neural network to analyse and detect annotation misuse in java code – ident: 10.1016/j.infsof.2025.107763_bib0012 – year: 2022 ident: 10.1016/j.infsof.2025.107763_bib0046 article-title: Chain-of-thought prompting elicits reasoning in large language models – volume: 1 start-page: 722 year: 2024 ident: 10.1016/j.infsof.2025.107763_bib0009 article-title: Understanding and detecting annotation-induced faults of static analyzers publication-title: Proc. ACM Softw. Eng. doi: 10.1145/3643759 – volume: 35 start-page: 56 year: 2018 ident: 10.1016/j.infsof.2025.107763_bib0011 article-title: On the definition of microservice bad smells publication-title: IEEE Softw. doi: 10.1109/MS.2018.2141031 – ident: 10.1016/j.infsof.2025.107763_bib0037 – volume: 5095 start-page: 48 year: 2008 ident: 10.1016/j.infsof.2025.107763_bib0032 article-title: Annotation framework validation using domain models publication-title: Springer – volume: 29 start-page: 29 year: 2024 ident: 10.1016/j.infsof.2025.107763_bib0018 article-title: How do annotations affect java code readability? publication-title: Empir. Softw. Eng. doi: 10.1007/s10664-024-10460-w – start-page: 540 year: 2010 ident: 10.1016/j.infsof.2025.107763_bib0031 article-title: AnnaBot: a static verifier for Java annotation usage publication-title: Adv. Softw. Eng – start-page: 483 year: 2022 ident: 10.1016/j.infsof.2025.107763_bib0033 article-title: Graph Neural networks on program analysis – volume: 5 start-page: 969 year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0002 article-title: Characterizing the usage, evolutionand impact of Java annotations in practice publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/TSE.2019.2910516 – start-page: 1173 year: 2024 ident: 10.1016/j.infsof.2025.107763_bib0047 article-title: A survey of chain of thought reasoning: advances, frontiers and future – start-page: 265 year: 2019 ident: 10.1016/j.infsof.2025.107763_bib0029 article-title: Investigating next steps in static API-misuse detection – year: 2017 ident: 10.1016/j.infsof.2025.107763_bib0008 article-title: Migrating monolithic mobile application to microservice architecture: an experiment report – year: 2021 ident: 10.1016/j.infsof.2025.107763_bib0007 article-title: A multi-model based mi- croservices identification approach publication-title: J. Syst. Architect. doi: 10.1016/j.sysarc.2021.102200 – volume: 105 start-page: 73 year: 2015 ident: 10.1016/j.infsof.2025.107763_bib0023 article-title: Usage contracts: offering immediate feedback on violations of structural source-code regularities publication-title: Sci. Comput. Program doi: 10.1016/j.scico.2015.01.004 – ident: 10.1016/j.infsof.2025.107763_bib0026 – ident: 10.1016/j.infsof.2025.107763_bib0005 |
| SSID | ssj0017030 |
| Score | 2.432088 |
| Snippet | Developers leverage Java annotations to implement functions such as creating objects and operating databases. However, mastering annotations is challenging,... |
| SourceID | crossref elsevier |
| SourceType | Index Database Publisher |
| StartPage | 107763 |
| SubjectTerms | BERT Java annotation Misuse detection Stack overflow |
| Title | BERT4Anno: An annotation misuse detection method for Java |
| URI | https://dx.doi.org/10.1016/j.infsof.2025.107763 |
| Volume | 184 |
| WOSCitedRecordID | wos001491126700001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals 2021 issn: 0950-5849 databaseCode: AIEXJ dateStart: 19950101 customDbUrl: isFulltext: true dateEnd: 99991231 titleUrlDefault: https://www.sciencedirect.com omitProxy: false ssIdentifier: ssj0017030 providerName: Elsevier |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1BT9swFLZGQYjLxAYI2EA-cM2UukljcytTp9FDNW1F606RndjQHtyqTYCfz3uxk4KKECDtEkVW4jTvs14-v37vPULOMiNDwVkStJnKgqjLTaAUigCQW4jccNjNVc0mkuGQj8fil-93v6zaCSTW8vt7Mf-vUMMYgI2ps2-Au5kUBuAcQIcjwA7HVwF_0f89inrWznzMT8KplxQCpuUSE6UK7TqEu_7RldRwIG_lY6bq85SKWq68BH99hzKxYi0Y_8_HnAfwGVSzRpNT6QTGk2b1_S0rQZ-203KlA5rImb_sOrsppf-O-jAEixsRnI-NreXH-CBjGADFEU_9bfSs73ZhhCluOOCVvuFDYDCpHeDTqth_cGqcGSgclsXjG2STJbHgLbLZu-yPB81fSejSXMFF91Pq_MlK5Lf-rOf5ySPOMdolH_1mgfYcyJ_IB20_k-06V2GPiAbrc9qzdIU0dUjTBmnqkKaAKUWk98nVj_7o-8_A98IIMnCqRQAMg6EwMMq7SvA8bysuw0QzabjSGkkfU-0OkjHT5iaUwFtjJROJ5QKl0LJzQFp2ZvUhoRIYay7j2MRRFikgbFIwnRsWGR52hVJHJKgtkM5dyZO01gJOU2exFC2WOosdkaQ2U-ppm6NjKSD74p3H777zC9lZLcKvpFUsSn1CtrLbYrJcnPol8ABEnmcy |
| linkProvider | Elsevier |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=BERT4Anno%3A+An+annotation+misuse+detection+method+for+Java&rft.jtitle=Information+and+software+technology&rft.au=Yang%2C+Jingbo&rft.au=Ji%2C+Xin&rft.au=Wu%2C+Wenjun&rft.au=Liao%2C+Xingchuang&rft.date=2025-08-01&rft.pub=Elsevier+B.V&rft.issn=0950-5849&rft.volume=184&rft_id=info:doi/10.1016%2Fj.infsof.2025.107763&rft.externalDocID=S0950584925001028 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0950-5849&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0950-5849&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0950-5849&client=summon |