Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

XCoS: Explainable Code Search Based on Query Scoping and Knowledge Graph

Published: 29 September 2023 Publication History

Abstract

When searching code, developers may express additional constraints (e.g., functional constraints and nonfunctional constraints) on the implementations of desired functionalities in the queries. Existing code search tools treat the queries as a whole and ignore the different implications of different parts of the queries. Moreover, these tools usually return a ranked list of candidate code snippets without any explanations. Therefore, the developers often find it hard to choose the desired results and build confidence on them. In this article, we conduct a developer survey to better understand and address these issues and induct some insights from the survey results. Based on the insights, we propose XCoS, an explainable code search approach based on query scoping and knowledge graph. XCoS extracts a background knowledge graph from general knowledge bases like Wikidata and Wikipedia. Given a code search query, XCoS identifies different parts (i.e., functionalities, functional constraints, nonfunctional constraints) from it and use the expressions of functionalities and functional constraints to search the codebase. It then links both the query and the candidate code snippets to the concepts in the background knowledge graph and generates explanations based on the association paths between these two parts of concepts together with relevant descriptions. XCoS uses an interactive user interface that allows the user to better understand the associations between candidate code snippets and the query from different aspects and choose the desired results. Our evaluation shows that the quality of the extracted background knowledge and the concept linkings in codebase is generally high. Furthermore, the generated explanations are considered complete, concise, and readable, and the approach can help developers find the desired code snippets more accurately and confidently.

References

[1]
Internet Archive. 2021. Stack Overflow Data Dump Version from March 4, 2021. Retrieved September 4, 2021 from https://archive.org/download/stackexchange/.
[2]
Wikimedia. 2021. Wikidata Data Dump Version from November 24, 2021. Retrieved November 24, 2021 from https://dumps.wikimedia.org/wikidatawiki/entities/.
[3]
Wikimedia. 2021. Wikipedia Data Dump Version from December 20, 2021. Retrieved December 20, 2021 from https://dumps.wikimedia.org/enwiki/.
[4]
Elastic Stack. 2022. Elasticsearch. Retrieved March 5, 2022 from https://www.elastic.co/elasticsearch/.
[5]
GitHub. 2022. Javalang. Retrieved March 5, 2022 from https://github.com/c2nes/javalang.
[6]
GitHub. 2022. Neuralcoref. Retrieved March 5, 2022 from https://github.com/huggingface/neuralcoref.
[7]
Replication Package. 2022. Replication Package. Retrieved March 5, 2022 from https://xcos-replicationpackage.github.io/.
[8]
Searchcode. 2022. Searchcode. Retrieved March 5, 2022 from https://searchcode.com/.
[9]
SpaCy. 2022. SpaCy. Retrieved March 5, 2022 from https://spacy.io/.
[10]
GitHub. Spiral. Retrieved March 5, 2022 from https://github.com/casics/spiral.
[11]
Stack Overflow. 2022. Stack Overflow Question 13269606. Retrieved March 5, 2022 from https://stackoverflow.com/questions/13269606.
[12]
Wikidata. 2022. Wikidata. Retrieved March 5, 2022 from https://www.wikidata.org/.
[13]
Wikipedia. 2022. Wikipedia. Retrieved March 5, 2022 from https://en.wikipedia.org/.
[14]
Wikipedia2Vec. 2022. Wikipedia2Vec. Retrieved March 5, 2022 from https://wikipedia2vec.github.io/wikipedia2vec/.
[15]
Sushil Krishna Bajracharya, Trung Chi Ngo, Erik Linstead, Yimeng Dou, Paul Rigor, Pierre Baldi, and Cristina Videira Lopes. 2006. Sourcerer: A search engine for open source code supporting structure-based search. In Companion to the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’06). ACM, New York, NY, 681–682.
[16]
Lauren R. Biggers, Cecylia Bocovich, Riley Capshaw, Brian P. Eddy, Letha H. Etzkorn, and Nicholas A. Kraft. 2014. Configuring latent Dirichlet allocation based feature location. Empirical Software Engineering 19, 3 (2014), 465–500.
[17]
Fabiano Dalpiaz, Davide Dell’Anna, Fatma Basak Aydemir, and Sercan Çevikol. 2019. Requirements classification with interpretable machine learning and dependency parsing. In Proceedings of the 2019 IEEE 27th International Requirements Engineering Conference (RE’19). IEEE, Los Alamitos, CA, 142–152.
[18]
Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2019. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies(NAACL-HLT’19)—Volume 1 (Long and Short Papers). 4171–4186.
[19]
Bogdan Dit, Meghan Revelle, Malcom Gethers, and Denys Poshyvanyk. 2013. Feature location in source code: A taxonomy and survey. Journal of Software: Evolution and Process 25, 1 (2013), 53–95.
[20]
Bogdan Dit, Meghan Revelle, and Denys Poshyvanyk. 2013. Integrating information retrieval, execution and link analysis algorithms to improve feature location in software. Empirical Software Engineering 18, 2 (2013), 277–309.
[21]
Brian P. Eddy, Nicholas A. Kraft, and Jeff Gray. 2018. Impact of structural weighting on a latent Dirichlet allocation-based feature location technique. Journal of Software: Evolution and Process 30, 1 (2018), e1892.
[22]
Zhangyin Feng, Daya Guo, Duyu Tang, Nan Duan, Xiaocheng Feng, Ming Gong, Linjun Shou, et al. 2020. CodeBERT: A pre-trained model for programming and natural languages. In Findings of the Association for Computational Linguistics: EMNLP 2020, Trevor Cohn, Yulan He, and Yang Liu (Eds.). Association for Computational Linguistics, 1536–1547.
[23]
Michael Fu and Chakkrit Tantithamthavorn. 2022. LineVul: A transformer-based line-level vulnerability prediction. In Proceedings of 19th IEEE/ACM International Conference on Mining Software Repositories (MSR’22). ACM, New York, NY, 608–620.
[24]
Rosalva E. Gallardo-Valencia and Susan Elliott Sim. 2009. Internet-scale code search. In Proceedings of the 2009 ICSE Workshop on Search-Driven Development-Users, Infrastructure, Tools and Evaluation. 49–52.
[25]
Xiaodong Gu, Hongyu Zhang, and Sunghun Kim. 2018. Deep code search. In Proceedings of the 40th International Conference on Software Engineering (ICSE’18). ACM, New York, NY, 933–944.
[26]
Daya Guo, Shuo Ren, Shuai Lu, Zhangyin Feng, Duyu Tang, Shujie Liu, Long Zhou, et al. 2021. GraphCodeBERT: Pre-training code representations with data flow. In Proceedings of the 9th International Conference on Learning Representations (ICLR’21). https://openreview.net/forum?id=jLoC4ez43PZ.
[27]
Samir Gupta, Sana Malik, Lori L. Pollock, and K. Vijay-Shanker. 2013. Part-of-speech tagging of program identifiers for improved text-based software engineering tools. In Proceedings of the IEEE 21st International Conference on Program Comprehension (ICPC’13). IEEE, Los Alamitos, CA, 3–12.
[28]
Sonia Haiduc, Gabriele Bavota, Andrian Marcus, Rocco Oliveto, Andrea De Lucia, and Tim Menzies. 2013. Automatic query reformulations for text retrieval in software engineering. In Proceedings of the 35th International Conference on Software Engineering (ICSE’13). IEEE, Los Alamitos, CA, 842–851.
[29]
Emily Hill, Lori L. Pollock, and K. Vijay-Shanker. 2011. Improving source code search with natural language phrasal representations of method signatures. In Proceedings of the 26th IEEE/ACM International Conference on Automated Software Engineering (ASE’11). IEEE, Los Alamitos, CA, 524–527.
[30]
Hamel Husain, Ho-Hsiang Wu, Tiferet Gazit, Miltiadis Allamanis, and Marc Brockschmidt. 2019. CodeSearchNet challenge: Evaluating the state of semantic code search. arXiv preprint arXiv:1909.09436 (2019).
[31]
Ishrar Hussain, Leila Kosseim, and Olga Ormandjieva. 2008. Using linguistic knowledge to classify non-functional requirements in SRS documents. In Natural Language and Information Systems. Lecture Notes in Computer Science, Vol. 5039. Springer, 287–298.
[32]
Jirayus Jiarpakdee, Chakkrit Tantithamthavorn, and John C. Grundy. 2021. Practitioners’ perceptions of the goals and visual explanations of defect prediction models. In Proceedings of the 18th IEEE/ACM International Conference on Mining Software Repositories (MSR’21). IEEE, Los Alamitos, CA, 432–443.
[33]
Huzefa H. Kagdi, Malcom Gethers, and Denys Poshyvanyk. 2013. Integrating conceptual and logical couplings for change impact analysis in software. Empirical Software Engineering 18, 5 (2013), 933–969.
[34]
Dongsun Kim, Yida Tao, Sunghun Kim, and Andreas Zeller. 2013. Where should we fix this bug? A two-phase recommendation model. IEEE Transactions on Software Engineering 39, 11 (2013), 1597–1610.
[35]
Keshav Kolluru, Vaibhav Adlakha, Samarth Aggarwal, Mausam, and Soumen Chakrabarti. 2020. OpenIE6: Iterative grid labeling and coordination analysis for open information extraction. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP’20). 3748–3761.
[36]
Phong Le and Ivan Titov. 2018. Improving entity linking by modeling latent relations between mentions. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (ACL’18)—Volume 1: Long Papers. 1595–1604.
[37]
Bixin Li, Xiaobing Sun, and Hareton Leung. 2012. Combining concept lattice with call graph for impact analysis. Advances in Engineering Software 53 (2012), 1–13.
[38]
Xiaonan Li, Yeyun Gong, Yelong Shen, Xipeng Qiu, Hang Zhang, Bolun Yao, Weizhen Qi, Daxin Jiang, Weizhu Chen, and Nan Duan. 2022. CodeRetriever: Unimodal and bimodal contrastive learning. arXiv preprint arXiv:2201.10866 (2022).
[39]
Xuan Li, Zerui Wang, Qianxiang Wang, Shoumeng Yan, Tao Xie, and Hong Mei. 2016. Relationship-aware code search for JavaScript frameworks. In Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE’16). ACM, New York, NY, 690–701.
[40]
Rensis Likert. 1932. A technique for the measurement of attitudes. Archives of Psychology 22, 140 (1932), 55.
[41]
Bin Lin, Fiorella Zampetti, Gabriele Bavota, Massimiliano Di Penta, and Michele Lanza. 2019. Pattern-based mining of opinions in Q&A websites. In Proceedings of the 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE’19). IEEE, Los Alamitos, CA, 548–559.
[42]
Bin Lin, Fiorella Zampetti, Gabriele Bavota, Massimiliano Di Penta, and Michele Lanza. 2019. Pattern-based mining of opinions in Q&A websites. In Proceedings of the 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE’19). IEEE, Los Alamitos, CA, 548–559.
[43]
Charles X. Ling and Chenghui Li. 1998. Data mining for direct marketing: Problems and solutions. In Proceedings of the 4th International Conference on Knowledge Discovery and Data Mining (KDD’98). 73–79. http://www.aaai.org/Library/KDD/1998/kdd98-011.php.
[44]
Jason Liu, Seohyun Kim, Vijayaraghavan Murali, Swarat Chaudhuri, and Satish Chandra. 2019. Neural query expansion for code search. In Proceedings of the 3rd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages (MAPL@PLDI’19). ACM, New York, NY, 29–37.
[45]
Mingwei Liu, Xin Peng, Andrian Marcus, Shuangshuang Xing, Christoph Treude, and Chengyuan Zhao. 2022. API-related developer information needs in Stack Overflow. IEEE Transactions on Software Engineering 48, 11 (2022), 4485–4500.
[46]
Mingwei Liu, Xin Peng, Andrian Marcus, Zhenchang Xing, Wenkai Xie, Shuangshuang Xing, and Yang Liu. 2019. Generating query-specific class API summaries. In Proceedings of the 27th ACM Joint Meeting on European Software Engineering Conference and the Symposium on the Foundations of Software Engineering (ESEC/SIGSOFT FSE’19).120–130.
[47]
Shangqing Liu, Xiaofei Xie, Lei Ma, Jing Kai Siow, and Yang Liu. 2021. GraphSearchNet: Enhancing GNNs via capturing global dependency for semantic code search. CoRR abs/2111.02671 (2021).
[48]
Wenjian Liu, Xin Peng, Zhenchang Xing, Junyi Li, Bing Xie, and Wenyun Zhao. 2018. Supporting exploratory code search with differencing and visualization. In Proceedings of the 25th International Conference on Software Analysis, Evolution, and Reengineering (SANER’18). IEEE, Los Alamitos, CA, 300–310.
[49]
Jinting Lu, Ying Wei, Xiaobing Sun, Bin Li, Wanzhi Wen, and Cheng Zhou. 2018. Interactive query reformulation for source-code search with word relations. IEEE Access 6 (2018), 75660–75668.
[50]
Meili Lu, Xiaobing Sun, Shaowei Wang, David Lo, and Yucong Duan. 2015. Query expansion via WordNet for effective code search. In Proceedings of the 22nd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER’15). IEEE, Los Alamitos, CA, 545–549.
[51]
Stacy K. Lukins, Nicholas A. Kraft, and Letha H. Etzkorn. 2008. Source code retrieval for bug localization using latent Dirichlet allocation. In Proceedings of the 15th Working Conference on Reverse Engineering (WCRE’08). IEEE, Los Alamitos, CA, 155–164.
[52]
Fei Lv, Hongyu Zhang, Jian-Guang Lou, Shaowei Wang, Dongmei Zhang, and Jianjun Zhao. 2015. CodeHow: Effective code search based on API understanding and extended Boolean model (E). In Proceedings of the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE’15). IEEE, Los Alamitos, CA, 260–270.
[53]
Mary L. McHugh. 2012. Interrater reliability: The kappa statistic. Biochemia Medica 22, 3 (2012), 276–282.
[54]
Collin McMillan, Mark Grechanik, Denys Poshyvanyk, Qing Xie, and Chen Fu. 2011. Portfolio: Finding relevant functions and their usage. In Proceedings of the 33rd International Conference on Software Engineering (ICSE’11). ACM, New York, NY, 111–120.
[55]
Chris Mills, Gabriele Bavota, Sonia Haiduc, Rocco Oliveto, Andrian Marcus, and Andrea De Lucia. 2017. Predicting query quality for applications of text retrieval to software engineering tasks. ACM Transactions on Software Engineering and Methodology 26, 1 (2017), Article 3, 45 pages.
[56]
Laura Moreno, Jairo Aponte, Giriprasad Sridhara, Andrian Marcus, Lori Pollock, and Vijay Shanker. 2013. Automatic generation of natural language summaries for Java classes. In Proceedings of the 21st IEEE International Conference on Program Comprehension (ICPC’13). IEEE, Los Alamitos, CA, 23–32.
[57]
Liming Nie, He Jiang, Zhilei Ren, Zeyi Sun, and Xiaochen Li. 2016. Query expansion based on crowd knowledge for code search. IEEE Transactions on Services Computing 9, 5 (2016), 771–783.
[58]
Rahul Pandita, Kunal Taneja, Laurie A. Williams, and Teresa Tung. 2016. ICON: Inferring temporal constraints from natural language API descriptions. In Proceedings of the 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME’16). IEEE, Los Alamitos, CA, 378–388.
[59]
Chanathip Pornprasit and Chakkrit Tantithamthavorn. 2021. JITLine: A simpler, better, faster, finer-grained just-in-time defect prediction. In Proceedings of the 18th IEEE/ACM International Conference on Mining Software Repositories (MSR’21). IEEE, Los Alamitos, CA, 369–379.
[60]
Chanathip Pornprasit and Chakkrit Tantithamthavorn. 2022. DeepLineDP: Towards a deep learning approach for line-level defect prediction. IEEE Transactions on Software Engineering 49, 1 (2022), 84–98.
[61]
Chanathip Pornprasit, Chakkrit Tantithamthavorn, Jirayus Jiarpakdee, Michael Fu, and Patanamon Thongtanunam. 2021. PyExplainer: Explaining the predictions of just-in-time defect models. In Proceedings of the 36th IEEE/ACM International Conference on Automated Software Engineering (ASE’21). IEEE, Los Alamitos, CA, 407–418.
[62]
Mohammad Masudur Rahman, Chanchal K. Roy, and David Lo. 2019. Automatic query reformulation for code search using crowdsourced knowledge. Empirical Software Engineering 24, 4 (2019), 1869–1924.
[63]
Dilini Rajapaksha, Chakkrit Tantithamthavorn, Jirayus Jiarpakdee, Christoph Bergmeir, John Grundy, and Wray L. Buntine. 2022. SQAPlanner: Generating data-informed software quality improvement plans. IEEE Transactions on Software Engineering 48, 8 (2022), 2814–2835.
[64]
Nils Reimers and Iryna Gurevych. 2019. Sentence-BERT: Sentence embeddings using Siamese BERT-networks. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP’19). 3980–3990.
[65]
Meghan Revelle, Malcom Gethers, and Denys Poshyvanyk. 2011. Using structural and textual information to capture feature coupling in object-oriented software. Empirical Software Engineering 16, 6 (2011), 773–811.
[66]
Knut Magne Risvik, Tomasz Mikolajewski, and Peter Boros. 2003. Query segmentation for web search. In Proceedings of the 12th International World Wide Web Conference—Posters (WWW’03). http://www2003.org/cdrom/papers/poster/p052/xhtml/querysegmentation.html.
[67]
Stephen E. Robertson and Steve Walker. 1994. Some simple effective approximations to the 2-Poisson model for probabilistic weighted retrieval. In Proceedings of the 17th Annual International ACM-SIGIR Conference on Research and Development in Information Retrieval. ACM, New York, NY, 232–241.
[68]
Amanda Ross and Victor L. Willson. 2017. One-sample T-test. In Basic and Advanced Statistical Tests. Springer, 9–12.
[69]
Saksham Sachdev, Hongyu Li, Sifei Luan, Seohyun Kim, Koushik Sen, and Satish Chandra. 2018. Retrieval on source code: A neural code search. In Proceedings of 2nd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages (MAPL@PLDI’18). ACM, New York, NY, 31–41.
[70]
Gerard Salton and Chris Buckley. 1988. Term-weighting approaches in automatic text retrieval. Information Processing & Management 24, 5 (1988), 513–523.
[71]
Janice Singer, Timothy C. Lethbridge, Norman G. Vinson, and Nicolas Anquetil. 1997. An examination of software engineering work practices. In Proceedings of the 1997 Conference of the Centre for Advanced Studies on Collaborative Research. 21.
[72]
Ravindra Singh and Naurang Singh Mangat. 2013. Elements of Survey Sampling. Vol. 15. Springer Science & Business Media.
[73]
Giriprasad Sridhara, Emily Hill, Divya Muppaneni, Lori Pollock, and K. Vijay-Shanker. 2010. Towards automatically generating summary comments for Java methods. In Proceedings of the 25th IEEE/ACM International Conference on Automated Software Engineering (ASE’10). 43–52.
[74]
Chakkrit Tantithamthavorn, Jirayus Jiarpakdee, and John Grundy. 2021. Actionable analytics: Stop telling me what it is; Please tell me what to do. IEEE Software 38, 4 (2021), 115–120.
[75]
Chakkrit Kla Tantithamthavorn and Jirayus Jiarpakdee. 2021. Explainable AI for software engineering. In Proceedings of the 36th IEEE/ACM International Conference on Automated Software Engineering (ASE’21). IEEE, Los Alamitos, CA, 1–2.
[76]
Christoph Treude, Ohad Barzilay, and Margaret-Anne D. Storey. 2011. How do programmers ask and answer questions on the web? In Proceedings of the 33rd International Conference on Software Engineering (ICSE’11). ACM, New York, NY, 804–807.
[77]
Christoph Treude, Martin P. Robillard, and Barthélémy Dagenais. 2014. Extracting development tasks to navigate software documentation. IEEE Transactions on Software Engineering 41, 6 (2014), 565–581.
[78]
Yao Wan, Jingdong Shu, Yulei Sui, Guandong Xu, Zhou Zhao, Jian Wu, and Philip S. Yu. 2019. Multi-modal attention network learning for semantic source code retrieval. In Proceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering (ASE’19). IEEE, Los Alamitos, CA, 13–25.
[79]
Chong Wang, Xin Peng, Mingwei Liu, Zhenchang Xing, Xuefang Bai, Bing Xie, and Tuo Wang. 2019. A learning-based approach for automatic construction of domain glossary from source code and documentation. In Proceedings of the ACM Joint Meeting on the European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/SIGSOFT FSE’19). ACM, New York, NY, 97–108.
[80]
Jinshui Wang, Xin Peng, Zhenchang Xing, and Wenyun Zhao. 2013. Improving feature location practice with multi-faceted interactive exploration. In Proceedings of the 35th International Conference on Software Engineering (ICSE’13). IEEE, Los Alamitos, CA, 762–771.
[81]
Shaowei Wang and David Lo. 2014. Version history, similar report, and structure: Putting them together for improved bug localization. In Proceedings of the 22nd International Conference on Program Comprehension (ICPC’14). ACM, New York, NY, 53–63.
[82]
Supatsara Wattanakriengkrai, Patanamon Thongtanunam, Chakkrit Tantithamthavorn, Hideaki Hata, and Kenichi Matsumoto. 2022. Predicting defective lines using a model-agnostic technique. IEEE Transactions on Software Engineering 48, 5 (2022), 1480–1496.
[83]
Bernard L. Welch. 1947. The generalization of Student’s problem when several different population variances are involved. Biometrika 34, 1-2 (1947), 28–35.
[84]
Xin Ye, Razvan C. Bunescu, and Chang Liu. 2016. Mapping bug reports to relevant files: A ranking model, a fine-grained benchmark, and feature evaluation. IEEE Transactions on Software Engineering 42, 4 (2016), 379–402.

Cited By

View all
  • (2025)FSECAM: A contextual thematic approach for linking feature to multi-level software architectural componentsJournal of Systems and Software10.1016/j.jss.2024.112245219(112245)Online publication date: Jan-2025
  • (2024)A Survey of Source Code Search: A 3-Dimensional PerspectiveACM Transactions on Software Engineering and Methodology10.1145/365634133:6(1-51)Online publication date: 28-Jun-2024
  • (2023)KG4CraSolver: Recommending Crash Solutions via Knowledge GraphProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616317(1242-1254)Online publication date: 30-Nov-2023
  • Show More Cited By

Index Terms

  1. XCoS: Explainable Code Search Based on Query Scoping and Knowledge Graph

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Software Engineering and Methodology
    ACM Transactions on Software Engineering and Methodology  Volume 32, Issue 6
    November 2023
    949 pages
    ISSN:1049-331X
    EISSN:1557-7392
    DOI:10.1145/3625557
    • Editor:
    • Mauro Pezzè
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 29 September 2023
    Online AM: 22 April 2023
    Accepted: 20 March 2023
    Revised: 13 February 2023
    Received: 20 May 2022
    Published in TOSEM Volume 32, Issue 6

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Code search
    2. explainability
    3. knowledge
    4. concept

    Qualifiers

    • Research-article

    Funding Sources

    • National Natural Science Foundation of China

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)330
    • Downloads (Last 6 weeks)47
    Reflects downloads up to 06 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2025)FSECAM: A contextual thematic approach for linking feature to multi-level software architectural componentsJournal of Systems and Software10.1016/j.jss.2024.112245219(112245)Online publication date: Jan-2025
    • (2024)A Survey of Source Code Search: A 3-Dimensional PerspectiveACM Transactions on Software Engineering and Methodology10.1145/365634133:6(1-51)Online publication date: 28-Jun-2024
    • (2023)KG4CraSolver: Recommending Crash Solutions via Knowledge GraphProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616317(1242-1254)Online publication date: 30-Nov-2023
    • (2023)Recommending Analogical APIs via Knowledge Graph EmbeddingProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616305(1496-1508)Online publication date: 30-Nov-2023
    • (2023)Knowledge Graph based Explainable Question Retrieval for Programming Tasks2023 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME58846.2023.00023(123-135)Online publication date: 1-Oct-2023
    • (2023)CodeGen4Libs: A Two-Stage Approach for Library-Oriented Code GenerationProceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE56229.2023.00159(434-445)Online publication date: 11-Nov-2023
    • (2023)Generating Variable Explanations via Zero-Shot Prompt LearningProceedings of the 38th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE56229.2023.00130(748-760)Online publication date: 11-Nov-2023

    View Options

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Full Text

    View this article in Full Text.

    Full Text

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media