{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,26]],"date-time":"2026-02-26T15:27:27Z","timestamp":1772119647297,"version":"3.50.1"},"reference-count":116,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2021,8,18]],"date-time":"2021-08-18T00:00:00Z","timestamp":1629244800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,8,18]],"date-time":"2021-08-18T00:00:00Z","timestamp":1629244800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2021,11]]},"DOI":"10.1007\/s10664-021-10000-w","type":"journal-article","created":{"date-parts":[[2021,8,18]],"date-time":"2021-08-18T07:04:38Z","timestamp":1629270278000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":15,"title":["FACER: An API usage-based code-example recommender for opportunistic reuse"],"prefix":"10.1007","volume":"26","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-7491-8258","authenticated-orcid":false,"given":"Shamsa","family":"Abid","sequence":"first","affiliation":[]},{"given":"Shafay","family":"Shamail","sequence":"additional","affiliation":[]},{"given":"Hamid Abdul","family":"Basit","sequence":"additional","affiliation":[]},{"given":"Sarah","family":"Nadi","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2021,8,18]]},"reference":[{"key":"10000_CR1","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1016\/j.infsof.2017.04.005","volume":"88","author":"R Abdalkareem","year":"2017","unstructured":"Abdalkareem R, Shihab E, Rilling J (2017) On code reuse from stackoverflow: an exploratory study on android apps. Inf Softw Technol 88:148\u2013158","journal-title":"Inf Softw Technol"},{"key":"10000_CR2","doi-asserted-by":"crossref","unstructured":"Abid S (2019) Recommending related functions from api usage-based function clone structures. In: Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp 1193\u20131195","DOI":"10.1145\/3338906.3342486"},{"key":"10000_CR3","doi-asserted-by":"crossref","unstructured":"Abid S, Javed S, Naseem M, Shahid S, Basit HA, Higo Y (2017) Codeease: harnessing method clone structures for reuse. In: 2017 IEEE 11th international workshop on Software clones (IWSC). IEEE, pp 1\u20137","DOI":"10.1109\/IWSC.2017.7880505"},{"key":"10000_CR4","unstructured":"Abstract Syntax Trees (2020) https:\/\/www.eclipse.org\/jdt\/core\/r2.0\/dom [Online; accessed 28-Sep-2020]"},{"key":"10000_CR5","unstructured":"Android SDK Classes (2020) https:\/\/developer.android.com\/reference\/classes. [Online; accessed 28-Sep-2020]"},{"key":"10000_CR6","unstructured":"Android Studio SDK (2020) https:\/\/developer.android.com\/studio. [Online; accessed 28-Sep-2020]"},{"key":"10000_CR7","doi-asserted-by":"crossref","unstructured":"Apel S, Batory D, K\u00e4stner C, Saake G (2013) Software product lines. In: Feature-oriented software product lines. Springer, pp 3\u201315","DOI":"10.1007\/978-3-642-37521-7_1"},{"issue":"7","key":"10000_CR8","doi-asserted-by":"publisher","first-page":"512","DOI":"10.1002\/smr.1791","volume":"28","author":"M Asaduzzaman","year":"2016","unstructured":"Asaduzzaman M, Roy CK, Schneider KA, Hou D (2016) A simple, efficient, context-sensitive approach for code completion. J Softw Evol Process 28 (7):512\u2013541","journal-title":"J Softw Evol Process"},{"key":"10000_CR9","doi-asserted-by":"crossref","unstructured":"Bajracharya SK, Ossher J, Lopes CV (2010) Leveraging usage similarity for effective retrieval of examples in code repositories. In: Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering. ACM, pp 157\u2013166","DOI":"10.1145\/1882291.1882316"},{"key":"10000_CR10","doi-asserted-by":"crossref","unstructured":"Baker BS (1993) A theory of parameterized pattern matching: algorithms and applications. In: Proceedings of the twenty-fifth annual ACM symposium on Theory of computing, pp 71\u201380","DOI":"10.1145\/167088.167115"},{"key":"10000_CR11","doi-asserted-by":"crossref","unstructured":"Bavota G, De Lucia A, Marcus A, Oliveto R (2014) Recommending refactoring operations in large software systems. In: Recommendation systems in software engineering. Springer, pp 387\u2013419","DOI":"10.1007\/978-3-642-45135-5_15"},{"key":"10000_CR12","unstructured":"Bielik P, Raychev V, Vechev M (2015) Programming with\u201d big code\u201d: Lessons, techniques and applications. In: LIPIcs-Leibniz International Proceedings in Informatics, vol 32. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik"},{"key":"10000_CR13","doi-asserted-by":"crossref","unstructured":"Brandt J, Guo PJ, Lewenstein J, Dontcheva M, Klemmer SR (2009) Two studies of opportunistic programming: interleaving web foraging, learning, and writing code. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, pp 1589\u20131598","DOI":"10.1145\/1518701.1518944"},{"key":"10000_CR14","unstructured":"binaryDist (2020) https:\/\/github.com\/NikNakk\/binaryDist\/"},{"key":"10000_CR15","doi-asserted-by":"crossref","unstructured":"Brandt J, Guo PJ, Lewenstein J, Klemmer SR (2008) Opportunistic programming: How rapid ideation and prototyping occur in practice. In: Proceedings of the 4th international workshop on End-user software engineering, pp 1\u20135","DOI":"10.1145\/1370847.1370848"},{"key":"10000_CR16","doi-asserted-by":"crossref","unstructured":"Bruch M, Monperrus M, Mezini M (2009) Learning from examples to improve code completion systems. In: Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. ACM, pp 213\u2013222","DOI":"10.1145\/1595696.1595728"},{"key":"10000_CR17","doi-asserted-by":"crossref","unstructured":"Cambronero J, Li H, Kim S, Sen K, Chandra S (2019) When deep learning met code search. In: Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp 964\u2013974","DOI":"10.1145\/3338906.3340458"},{"key":"10000_CR18","doi-asserted-by":"crossref","unstructured":"Chatterjee S, Juvekar S, Sen K (2009) Sniff: A search engine for java using free-form queries. Fund Approach Softw Eng:385\u2013400","DOI":"10.1007\/978-3-642-00593-0_26"},{"key":"10000_CR19","doi-asserted-by":"crossref","unstructured":"Chen L, Ye W, Zhang S (2019) Capturing source code semantics via tree-based convolution over api-enhanced ast. In: Proceedings of the 16th ACM International Conference on Computing Frontiers, pp 174\u2013182","DOI":"10.1145\/3310273.3321560"},{"key":"10000_CR20","doi-asserted-by":"crossref","unstructured":"Chen X, Zou Q, Fan B, Zheng Z, Luo X (2018) Recommending software features for mobile applications based on user interface comparison. Requir Eng:1\u201315","DOI":"10.1007\/s00766-018-0303-4"},{"key":"10000_CR21","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1177\/001316446002000104","volume":"20","author":"J Cohen","year":"1960","unstructured":"Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Measur 20:37\u201346","journal-title":"Educ Psychol Measur"},{"issue":"4","key":"10000_CR22","doi-asserted-by":"publisher","first-page":"364","DOI":"10.1093\/comjnl\/20.4.364","volume":"20","author":"D Defays","year":"1977","unstructured":"Defays D (1977) An efficient algorithm for a complete link method. Comput J 20(4):364\u2013366","journal-title":"Comput J"},{"key":"10000_CR23","doi-asserted-by":"crossref","unstructured":"Dumitru H, Gibiec M, Hariri N, Cleland-Huang J, Mobasher B, Castro-Herrera C, Mirakhorli M (2011) On-demand feature recommendations derived from mining public product descriptions. In: Proceedings of the 33rd International Conference on Software Engineering. ACM, pp 181\u2013190","DOI":"10.1145\/1985793.1985819"},{"key":"10000_CR24","unstructured":"Eclipse code recommender (2018) http:\/\/www.eclipse.org\/recommenders. [Online; accessed 16-May-2018]"},{"key":"10000_CR25","unstructured":"Eclipse Java development tools (2020) https:\/\/www.eclipse.org\/jdt\/. [Online; accessed 28-Sep-2020]"},{"key":"10000_CR26","unstructured":"FACER Artifacts (2020) https:\/\/github.com\/shamsa-abid\/FACER_Artifacts"},{"key":"10000_CR27","unstructured":"Fiverr - freelance services marketplace for businesses (2021) https:\/\/www.fiverr.com\/. [Online; accessed 3-Feb-2021]"},{"key":"10000_CR28","unstructured":"FPClose (2019) https:\/\/www.philippe-fournier-viger.com\/spmf\/FPClose.php. [Online; accessed 1-Feb-2019]"},{"key":"10000_CR29","unstructured":"GitHub (2020) https:\/\/github.com\/. [Online; accessed 28-August-2020]"},{"issue":"10","key":"10000_CR30","doi-asserted-by":"publisher","first-page":"1347","DOI":"10.1109\/TKDE.2005.166","volume":"17","author":"G\u00f6sta Grahne","year":"2005","unstructured":"Grahne G\u00f6sta, Zhu Jianfei (2005) Fast algorithms for frequent itemset mining using fp-trees. IEEE transactions on knowledge and data engineering 17 (10):1347\u20131362","journal-title":"IEEE transactions on knowledge and data engineering"},{"key":"10000_CR31","doi-asserted-by":"crossref","unstructured":"Gu X, Zhang H, Kim S (2018) Deep code search. In: 2018 IEEE\/ACM 40Th international conference on software engineering (ICSE). IEEE, pp 933\u2013944","DOI":"10.1145\/3180155.3180167"},{"key":"10000_CR32","doi-asserted-by":"crossref","unstructured":"Gu X, Zhang H, Zhang D, Kim S (2016) Deep api learning. In: Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, pp 631\u2013642","DOI":"10.1145\/2950290.2950334"},{"key":"10000_CR33","unstructured":"Han J, Kamber M, Pei J (2012) 9 - classification: Advanced methods, 3rd edn. Han J, Kamber M, Pei J (eds), Morgan Kaufmann, Boston. ISBN 978-0-12-381479-1. http:\/\/www.sciencedirect.com\/science\/article\/pii\/B9780123814791000095"},{"key":"10000_CR34","unstructured":"Han J, Pei Jx, Kamber M (2011) Data mining: concepts and techniques. Elsevier"},{"issue":"3","key":"10000_CR35","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1109\/MPRV.2008.54","volume":"7","author":"B Hartmann","year":"2008","unstructured":"Hartmann B, Doorley S, Klemmer SR (2008) Hacking, Mashing, gluing: Understanding opportunistic design. IEEE Pervasive Comput 7(3):46\u201354","journal-title":"IEEE Pervasive Comput"},{"issue":"4","key":"10000_CR36","first-page":"22","volume":"28","author":"J He","year":"2019","unstructured":"He J, Zhang J, Li X, Ren Z, Lo D, Wu X, Luo Z (2019) Recommending new features from mobile app descriptions. ACM Trans Softw Eng Methodol (TOSEM) 28(4):22","journal-title":"ACM Trans Softw Eng Methodol (TOSEM)"},{"key":"10000_CR37","unstructured":"Heirarchical clustering (2019) https:\/\/rdrr.io\/r\/stats\/hclust.html, December 2019"},{"key":"10000_CR38","doi-asserted-by":"crossref","unstructured":"Hill R, Rideout J (2004) Automatic method completion. In: Proceedings of the 19th IEEE international conference on Automated software engineering. IEEE Computer Society, pp 228\u2013235","DOI":"10.1109\/ASE.2004.1342740"},{"key":"10000_CR39","doi-asserted-by":"crossref","unstructured":"Holmes R, Murphy GC (2005a) Using structural context to recommend source code examples. In: 2005. ICSE 2005. Proceedings. 27th international conference on Software engineering. IEEE, pp 117\u2013125","DOI":"10.1145\/1062455.1062491"},{"key":"10000_CR40","doi-asserted-by":"crossref","unstructured":"Holmes R, Walker RJ, Murphy GC (2005b) Strathcona example recommendation tool. In: ACM SIGSOFT Software engineering notes, vol 30. ACM, pp 237\u2013240","DOI":"10.1145\/1095430.1081744"},{"key":"10000_CR41","doi-asserted-by":"crossref","unstructured":"Holmes R, Walker RJ, Murphy GC (2006) Approximate structural context matching: An approach to recommend relevant examples. IEEE Trans Softw Eng 32(12)","DOI":"10.1109\/TSE.2006.117"},{"key":"10000_CR42","doi-asserted-by":"crossref","unstructured":"Hong Y, Lian Y, Yang S, Tian L, Zhao X (2016) Recommending features of mobile applications for developer. In: International conference on advanced data mining and applications. Springer, pp 361\u2013373","DOI":"10.1007\/978-3-319-49586-6_24"},{"issue":"6","key":"10000_CR43","doi-asserted-by":"publisher","first-page":"7291","DOI":"10.1016\/j.eswa.2010.12.021","volume":"38","author":"S-K Hsu","year":"2011","unstructured":"Hsu S-K, Lin S-J (2011) Macs: Mining api code snippets for code reuse. Expert Syst Appl 38(6):7291\u20137301","journal-title":"Expert Syst Appl"},{"key":"10000_CR44","doi-asserted-by":"crossref","unstructured":"Ichii M, Hayase Y, Yokomori R, Yamamoto T, Inoue K (2009) Software component recommendation using collaborative filtering. In: 2009 ICSE Workshop on search-driven development-users, infrastructure, tools and evaluation. IEEE, pp 17\u201320","DOI":"10.1109\/SUITE.2009.5070014"},{"issue":"3","key":"10000_CR45","doi-asserted-by":"publisher","first-page":"213","DOI":"10.1109\/TSE.2005.38","volume":"31","author":"K Inoue","year":"2005","unstructured":"Inoue K, Yokomori R, Yamamoto T, Matsushita M, Kusumoto S (2005) Ranking significance of software components based on use relations. IEEE Trans Softw Eng 31(3):213\u2013225","journal-title":"IEEE Trans Softw Eng"},{"key":"10000_CR46","doi-asserted-by":"crossref","unstructured":"Ishihara T, Hotta K, Higo Y, Igaki H, Kusumoto S (2012) Inter-project functional clone detection toward building libraries-an empirical study on 13,000 projects. In: 2012 19th working conference on Reverse engineering (WCRE). IEEE, pp 387\u2013391","DOI":"10.1109\/WCRE.2012.48"},{"key":"10000_CR47","doi-asserted-by":"crossref","unstructured":"Ishihara T, Hotta K, Higo Y, Kusumoto S (2013) Reusing reused code. In: 2013 20th working conference on Reverse engineering (WCRE). IEEE, pp 457\u2013461","DOI":"10.1109\/WCRE.2013.6671322"},{"key":"10000_CR48","first-page":"547","volume":"37","author":"P Jaccard","year":"1901","unstructured":"Jaccard P (1901) \u00c9Tude comparative de la distribution florale dans une portion des alpes et des jura. Bull Soc Vaudoise Sci Nat 37:547\u2013579","journal-title":"Bull Soc Vaudoise Sci Nat"},{"issue":"6","key":"10000_CR49","doi-asserted-by":"publisher","first-page":"42","DOI":"10.1109\/MS.2008.155","volume":"25","author":"S Jansen","year":"2008","unstructured":"Jansen S, Brinkkemper S, Hunink I, Demir C (2008) Pragmatic and opportunistic reuse in innovative start-up companies. IEEE Softw 25 (6):42\u201349","journal-title":"IEEE Softw"},{"key":"10000_CR50","unstructured":"Java Class Libraries (2020) https:\/\/docs.oracle.com\/javase\/8\/docs\/api\/allclasses-frame.html. [Online; accessed 28-Sep-2020]"},{"key":"10000_CR51","unstructured":"Java Development Kit (2020) https:\/\/www.oracle.com\/java\/technologies\/javase-downloads.html. [Online; accessed 28-Sep-2020]"},{"key":"10000_CR52","unstructured":"Jiang H, Nie L, Sun Z, Ren Z, Kong W, Zhang T, Luo X (2016) Rosf: Leveraging information retrieval and supervised learning for recommending code snippets. IEEE Transactions on Services Computing"},{"issue":"7","key":"10000_CR53","doi-asserted-by":"publisher","first-page":"654","DOI":"10.1109\/TSE.2002.1019480","volume":"28","author":"T Kamiya","year":"2002","unstructured":"Kamiya T, Kusumoto S, Inoue K (2002) Ccfinder: a multilinguistic token-based code clone detection system for large scale source code. IEEE Trans Softw Eng 28(7):654\u2013670","journal-title":"IEEE Trans Softw Eng"},{"key":"10000_CR54","doi-asserted-by":"publisher","first-page":"58720","DOI":"10.1109\/ACCESS.2019.2913043","volume":"7","author":"J Kanwal","year":"2019","unstructured":"Kanwal J, Maqbool O, Basit HA, Sindhu MA (2019) Evolutionary perspective of structural clones in software. IEEE Access 7:58720\u201358739","journal-title":"IEEE Access"},{"key":"10000_CR55","doi-asserted-by":"crossref","unstructured":"Keivanloo I, Rilling J, Zou Y (2014) Spotting working code examples. In: Proceedings of the 36th International Conference on Software Engineering. ACM, pp 664\u2013675","DOI":"10.1145\/2568225.2568292"},{"issue":"2","key":"10000_CR56","doi-asserted-by":"publisher","first-page":"300","DOI":"10.1007\/s10618-008-0118-x","volume":"18","author":"E Linstead","year":"2009","unstructured":"Linstead E, Bajracharya S, Ngo T, Rigor P, Lopes C, Baldi P (2009) Sourcerer: mining and searching internet-scale software repositories. Data Min Knowl Disc 18(2):300\u2013336","journal-title":"Data Min Knowl Disc"},{"key":"10000_CR57","unstructured":"Lucene (2017) https:\/\/lucene.apache.org. [Online; accessed 28-August-2017]"},{"key":"10000_CR58","unstructured":"Lucene Core (2020). https:\/\/lucene.apache.org\/core\/ (2020). [Online; accessed 29-Sep-2020]"},{"key":"10000_CR59","unstructured":"Lucene Document (2020). https:\/\/lucene.apache.org\/core\/7_2_0\/core\/org\/apache\/lucene\/document\/Document.html . [Online; accessed 29-Sep-2020]"},{"issue":"OOPSLA","key":"10000_CR60","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3360578","volume":"3","author":"S Luan","year":"2019","unstructured":"Luan S, Di Y, Barnaby C, Sen K, Chandra S (2019) Aroma: Code recommendation via structural code search. Proc ACM Programm Lang 3(OOPSLA):1\u201328","journal-title":"Proc ACM Programm Lang"},{"key":"10000_CR61","doi-asserted-by":"crossref","unstructured":"Luan S, Di Y, Sen K, Chandra S (2018) Aroma: Code recommendation via structural code search. arXiv:1812.01158","DOI":"10.1145\/3360578"},{"key":"10000_CR62","doi-asserted-by":"crossref","unstructured":"Lv C, Jiang W, Liu Y, Hu S (2014) Apisynth: a new graph-based api recommender system. In: ICSE Companion, pp 596\u2013597","DOI":"10.1145\/2591062.2591133"},{"key":"10000_CR63","doi-asserted-by":"crossref","unstructured":"Lv F, Zhang H, Lou J-g, Wang S, Zhang D, Zhao J (2015) Codehow: Effective code search based on api understanding and extended boolean model (e). In: 2015 30Th IEEE\/ACM international conference on automated software engineering (ASE). IEEE, pp 260\u2013270","DOI":"10.1109\/ASE.2015.42"},{"key":"10000_CR64","doi-asserted-by":"crossref","unstructured":"Mandelin D, Xu L, Bod\u00edk B, Kimelman D (2005) Jungloid mining: helping to navigate the api jungle. In: ACM SIGPLAN Notices, vol 40. ACM, pp 48\u201361","DOI":"10.1145\/1064978.1065018"},{"key":"10000_CR65","unstructured":"Market-basket analysis (2019) https:\/\/www.kdnuggets.com\/2016\/10\/association-rule-learning-concise-technical-overview.html, December 2019"},{"issue":"3","key":"10000_CR66","doi-asserted-by":"publisher","first-page":"1346","DOI":"10.1007\/s10664-015-9388-2","volume":"21","author":"S McIlroy","year":"2016","unstructured":"McIlroy S, Ali N, Hassan AE (2016) Fresh apps: an empirical study of frequently-updated mobile apps in the google play store. Empir Softw Eng 21(3):1346\u20131370","journal-title":"Empir Softw Eng"},{"key":"10000_CR67","doi-asserted-by":"crossref","unstructured":"McMillan C, Grechanik M, Poshyvanyk D, Xie Q, Fu C (2011) Portfolio: finding relevant functions and their usage. In: Proceedings of the 33rd International Conference on Software Engineering. ACM, pp 111\u2013120","DOI":"10.1145\/1985793.1985809"},{"key":"10000_CR68","doi-asserted-by":"crossref","unstructured":"McMillan C, Hariri N, Poshyvanyk D, Cleland-Huang J, Mobasher B (2012) Recommending source code for use in rapid software prototypes. In: Proceedings of the 34th International Conference on Software Engineering. IEEE Press, pp 848\u2013858","DOI":"10.1109\/ICSE.2012.6227134"},{"issue":"3-4","key":"10000_CR69","doi-asserted-by":"publisher","first-page":"253","DOI":"10.1007\/s10462-005-9012-8","volume":"24","author":"F Mccarey","year":"2005","unstructured":"Mccarey F, Cinn\u00e9ide M, Kushmerick N (2005) Rascal: A recommender agent for agile reuse. Artif Intell Rev 24(3-4):253\u2013276","journal-title":"Artif Intell Rev"},{"key":"10000_CR70","doi-asserted-by":"crossref","unstructured":"Mens K, Lozano A (2014) Source code-based recommendation systems. In: Recommendation systems in software engineering. Springer, pp 93\u2013130","DOI":"10.1007\/978-3-642-45135-5_5"},{"key":"10000_CR71","doi-asserted-by":"crossref","unstructured":"Mishne A, Shoham S, Yahav E (2012) Typestate-based semantic code search over partial programs. In: Acm sigplan notices, vol 47. ACM, pp 997\u20131016","DOI":"10.1145\/2398857.2384689"},{"issue":"2","key":"10000_CR72","doi-asserted-by":"publisher","first-page":"78","DOI":"10.1109\/MS.2013.142","volume":"31","author":"IJ Mojica","year":"2013","unstructured":"Mojica IJ, Adams B, Nagappan M, Dienst S, Berger T, Hassan AE (2013) A large-scale empirical study on software reuse in mobile apps. IEEE Softw 31(2):78\u201386","journal-title":"IEEE Softw"},{"key":"10000_CR73","doi-asserted-by":"crossref","unstructured":"Moreno L, Bavota G, Di Penta M, Oliveto R, Marcus A (2015) How can i use this method?. In: 2015 IEEE\/ACM 37th IEEE international conference on Software engineering (ICSE), vol 1. IEEE, pp 880\u2013890","DOI":"10.1109\/ICSE.2015.98"},{"key":"10000_CR74","doi-asserted-by":"crossref","unstructured":"Nguyen P, Di Rocco J, Ruscio D, Ochoa L, Degueule T, Di Penta M (2019) Focus: A recommender system for mining api function calls and usage patterns. In: 41St ACM\/IEEE international conference on software engineering (ICSE)","DOI":"10.1109\/ICSE.2019.00109"},{"key":"10000_CR75","doi-asserted-by":"crossref","unstructured":"Nguyen AT, Nguyen TT, Nguyen HA, Tamrawi A, Nguyen HV, Al-Kofahi J, Nguyen TN (2012) Graph-based pattern-oriented, context-sensitive source code completion. In: Proceedings of the 34th International Conference on Software Engineering. IEEE Press, pp 69\u201379","DOI":"10.1109\/ICSE.2012.6227205"},{"key":"10000_CR76","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1016\/j.jss.2016.07.026","volume":"129","author":"H Niu","year":"2017","unstructured":"Niu H, Keivanloo I, Zou Y (2017) Api usage pattern recommendation for software development. J Syst Softw 129:127\u2013139","journal-title":"J Syst Softw"},{"key":"10000_CR77","doi-asserted-by":"crossref","unstructured":"Ohtani A, Higo Y, Ishihara T, Kusumoto S (2015) On the level of code suggestion for reuse. In: 2015 IEEE 9th international workshop on Software clones (IWSC). IEEE, pp 26\u201332","DOI":"10.1109\/IWSC.2015.7069886"},{"key":"10000_CR78","unstructured":"parallelDist (2020) https:\/\/cran.r-project.org\/web\/packages\/parallelDist\/index.html. [Online; accessed 14-Sept-2020]"},{"key":"10000_CR79","doi-asserted-by":"crossref","unstructured":"Pascarella L, Geiger F-X, Palomba F, Di Nucci D, Malavolta I, Bacchelli A (2018) Self-reported activities of android developers. In: 2018 IEEE\/ACM 5Th international conference on mobile software engineering and systems (MOBILESoft). IEEE, pp 144\u2013155","DOI":"10.1145\/3197231.3197251"},{"key":"10000_CR80","doi-asserted-by":"crossref","unstructured":"Rahman MM, Roy CK, Lo D (2016) Rack: Automatic api recommendation using crowdsourced knowledge. In: Software analysis, evolution, and reengineering (SANER), 2016 IEEE 23rd international conference on, vol 1. IEEE, pp 349\u2013359","DOI":"10.1109\/SANER.2016.80"},{"key":"10000_CR81","doi-asserted-by":"crossref","unstructured":"Raychev V, Vechev M, Yahav E (2014) Code completion with statistical language models. In: ACM SIGPLAN Notices, vol 49. ACM, pp 419\u2013428","DOI":"10.1145\/2666356.2594321"},{"key":"10000_CR82","doi-asserted-by":"crossref","unstructured":"Richard Landis J, Koch GG (1977) The measurement of observer agreement for categorical data. Biometrics, pp 159\u2013174","DOI":"10.2307\/2529310"},{"key":"10000_CR83","doi-asserted-by":"publisher","unstructured":"Sachdev S, Li H, Luan S, Kim S, Sen K, Chandra S (2018) Retrieval on source code: A neural code search. In: Proceedings of the 2Nd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages, MAPL 2018. ACM, New York, pp 31\u201341. ISBN 978-1-4503-5834-7. https:\/\/doi.org\/10.1145\/3211346.3211353","DOI":"10.1145\/3211346.3211353"},{"key":"10000_CR84","doi-asserted-by":"crossref","unstructured":"Sadowski C, Stolee KT, Elbaum S (2015) How developers search for code: a case study. In: Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering. ACM, pp 191\u2013201","DOI":"10.1145\/2786805.2786855"},{"key":"10000_CR85","doi-asserted-by":"publisher","unstructured":"Sammut C, Webb GI (eds.) (2010) TF\u2013IDF, Springer, Boston. ISBN 978-0-387-30164-8. https:\/\/doi.org\/10.1007\/978-0-387-30164-8_832","DOI":"10.1007\/978-0-387-30164-8_832"},{"key":"10000_CR86","unstructured":"Score boosting (2020) https:\/\/lucene.apache.org\/core\/3_5_0\/scoring.html#Score [Online; accessed 27-Sep-2020]"},{"key":"10000_CR87","doi-asserted-by":"crossref","unstructured":"Shimada R, Hayase Y, Ichii M, Matsushita M, Inoue K (2009) A-score: Automatic software component recommendation using coding context. In: 2009 31St international conference on software engineering-companion volume. IEEE, pp 439\u2013440","DOI":"10.1109\/ICSE-COMPANION.2009.5071051"},{"key":"10000_CR88","unstructured":"Sparse matrix clustering (2019) https:\/\/stackoverflow.com\/questions\/30944701\/clustering-a-large-very-sparse-binary-matrix-in-r\/30945176?noredirect=1#comment106303086_30945176"},{"key":"10000_CR89","unstructured":"Stack Overflow developer survey (2020) Most loved, dreaded, and wanted platforms. https:\/\/insights.stackoverflow.com\/survey\/2020#technology-most-loved-dreaded-and-wanted-platforms. [Online; accessed 16-September-2020]"},{"key":"10000_CR90","unstructured":"Stack Overflow Question. (2020) https:\/\/stackoverflow.com\/questions\/25490928\/androidselect-image-from-gallery-then-crop-that-and-show-in-an-imageview. [Online; accessed 16-Sep-2020]"},{"key":"10000_CR91","first-page":"109","volume":"109","author":"E Stephen","year":"1995","unstructured":"Stephen E et al (1995) Robertson, Steve Walker, Susan Jones, Micheline M Hancock-Beaulieu, Mike Gatford Okapi at trec-3. Nist Special Publ Sp 109:109","journal-title":"Nist Special Publ Sp"},{"key":"10000_CR92","doi-asserted-by":"crossref","unstructured":"Subramanian S, Inozemtseva L, Holmes R (2014) Live api documentation. In: Proceedings of the 36th International Conference on Software Engineering. ACM, pp 643\u2013652","DOI":"10.1145\/2568225.2568313"},{"key":"10000_CR93","doi-asserted-by":"crossref","unstructured":"Svajlenko J, Keivanloo I, Roy CK (2013) Scaling classical clone detection tools for ultra-large datasets An exploratory study. In: 2013 7Th international workshop on software clones (IWSC). IEEE, pp 16\u201322","DOI":"10.1109\/IWSC.2013.6613037"},{"key":"10000_CR94","doi-asserted-by":"crossref","unstructured":"Takuya W, Masuhara H (2011) A spontaneous code recommendation tool based on associative search. In: Proceedings of the 3rd International Workshop on Search-Driven Development: Users, Infrastructure, Tools, and Evaluation. ACM, pp 17\u201320","DOI":"10.1145\/1985429.1985434"},{"key":"10000_CR95","doi-asserted-by":"crossref","unstructured":"Thummalapenta S, Xie T (2007) Parseweb: a programmer assistant for reusing open source code on the web. In: Proceedings of the twenty-second IEEE\/ACM international conference on Automated software engineering. ACM, pp 204\u2013213","DOI":"10.1145\/1321631.1321663"},{"key":"10000_CR96","doi-asserted-by":"crossref","unstructured":"Thung F, Lo D, Lawall J (2013) Automated library recommendation. In: 2013 20Th working conference on reverse engineering (WCRE). IEEE, pp 182\u2013191","DOI":"10.1109\/WCRE.2013.6671293"},{"key":"10000_CR97","doi-asserted-by":"crossref","unstructured":"Thung F, Oentaryo RJ, Lo D, Tian Y (2017) Webapirec: Recommending web apis to software projects via personalized ranking. arXiv:1705.00561","DOI":"10.1109\/TETCI.2017.2699222"},{"key":"10000_CR98","unstructured":"Tsunoda M, Kakimoto T, Ohsugi N, Monden A, Matsumoto K-I (2005) Javawock: A java class recommender system based on collaborative filtering. In: SEKE, pp 491\u2013497"},{"key":"10000_CR99","doi-asserted-by":"crossref","unstructured":"Umarji M, Sim S, Lopes C (2008) Archetypal internet-scale source code searching. Open source development, communities and quality, pp 257\u2013263","DOI":"10.1007\/978-0-387-09684-1_21"},{"issue":"4","key":"10000_CR100","doi-asserted-by":"publisher","first-page":"231","DOI":"10.1561\/2500000028","volume":"3","author":"M Vechev","year":"2016","unstructured":"Vechev M, Yahav E, et al. (2016) Programming with \u201dbig code\u201d. Found Trends\u00ae; Programm Lang 3(4):231\u2013284","journal-title":"Found Trends\u00ae; Programm Lang"},{"key":"10000_CR101","doi-asserted-by":"crossref","unstructured":"Venkatasubramanyam RD, Gupta S, Singh HK (2013) Prioritizing code clone detection results for clone management. In: 2013 7Th international workshop on software clones (IWSC). IEEE, pp 30\u201336","DOI":"10.1109\/IWSC.2013.6613039"},{"key":"10000_CR102","doi-asserted-by":"crossref","unstructured":"Wan Y, Shu J, Sui Y, Xu G, Zhao Z, Wu J, Yu PS (2019) Multi-modal attention network learning for semantic source code retrieval. arXiv:1909.13516","DOI":"10.1109\/ASE.2019.00012"},{"key":"10000_CR103","doi-asserted-by":"crossref","unstructured":"Wang J, Dang Y, Zhang H, Chen K, Xie T, Zhang D (2013) Mining succinct and high-coverage api usage patterns from source code. In: Proceedings of the 10th Working Conference on Mining Software Repositories. IEEE Press, pp 319\u2013328","DOI":"10.1109\/MSR.2013.6624045"},{"key":"10000_CR104","unstructured":"Wang L, Lu F, Wang L, Li G, Xie B, Yang F (2011) Apiexample: An effective web search based usage example recommendation system for java apis. In: Proceedings of the 2011 26th IEEE\/ACM International Conference on Automated Software Engineering. IEEE Computer Society, pp 592\u2013595"},{"key":"10000_CR105","doi-asserted-by":"crossref","unstructured":"Wilcoxon test (2020) https:\/\/www.rdocumentation.org\/packages\/stats\/versions\/3.6.2\/topics\/wilcox.test. [Online; accessed 18-Oct-2020]","DOI":"10.22237\/jmasm\/1556669880"},{"issue":"6","key":"10000_CR106","doi-asserted-by":"publisher","first-page":"3149","DOI":"10.1007\/s10664-017-9514-4","volume":"22","author":"X Xia","year":"2017","unstructured":"Xia X, Bao L, Lo D, Kochhar PS, Hassan AE, Xing Z (2017) What do developers search for on the web? Empir Softw Eng 22(6):3149\u20133185","journal-title":"Empir Softw Eng"},{"key":"10000_CR107","doi-asserted-by":"crossref","unstructured":"Xie T, Pei J (2006) Mapo: Mining api usages from open source repositories. In: Proceedings of the 2006 international workshop on Mining software repositories. ACM, pp 54\u201357","DOI":"10.1145\/1137983.1137997"},{"key":"10000_CR108","doi-asserted-by":"crossref","unstructured":"Yan S, Yu H, Chen Y, Shen B, Jiang L (2020) Are the code snippets what we are searching for? a benchmark and an empirical study on code search with natural-language queries. In: 2020 IEEE 27Th international conference on software analysis, evolution and reengineering (SANER). IEEE, pp 344\u2013354","DOI":"10.1109\/SANER48275.2020.9054840"},{"key":"10000_CR109","doi-asserted-by":"crossref","unstructured":"Yang P, Fang H, Lin J (2017) Anserini: Enabling the use of lucene for information retrieval research. In: Proceedings of the 40th International ACM SIGIR Conference on Research and Development in Information Retrieval, pp 1253\u20131256","DOI":"10.1145\/3077136.3080721"},{"key":"10000_CR110","doi-asserted-by":"crossref","unstructured":"Yao Z, Peddamail JR, Sun H (2019) Coacor: Code annotation for code retrieval with reinforcement learning. In: The world wide web conference, pp 2203\u20132214","DOI":"10.1145\/3308558.3313632"},{"key":"10000_CR111","doi-asserted-by":"crossref","unstructured":"Ye Y, Fischer G (2002) Supporting reuse by delivering task-relevant and personalized information. In: Proceedings of the 24th international conference on Software engineering. ACM, pp 513\u2013523","DOI":"10.1145\/581339.581402"},{"key":"10000_CR112","doi-asserted-by":"crossref","unstructured":"Yu Y, Wang H, Yin G, Bo L (2013) Mining and recommending software features across multiple web repositories. In: Proceedings of the 5th Asia-Pacific Symposium on Internetware. ACM, pp 9","DOI":"10.1145\/2532443.2532453"},{"key":"10000_CR113","doi-asserted-by":"crossref","unstructured":"Yun U, Leggett JJ (2005) Wlpminer: weighted frequent pattern mining with length-decreasing support constraints. In: Pacific-asia conference on knowledge discovery and data mining. Springer, pp 555\u2013567","DOI":"10.1007\/11430919_65"},{"key":"10000_CR114","doi-asserted-by":"publisher","first-page":"6205","DOI":"10.1109\/ACCESS.2017.2777845","volume":"6","author":"J Zhang","year":"2018","unstructured":"Zhang J, He J, Ren Z, Chen X (2018) Recommending apis for api related questions in stack overflow. IEEE Access 6:6205\u20136219","journal-title":"IEEE Access"},{"key":"10000_CR115","doi-asserted-by":"crossref","unstructured":"Zhao J, Liu Y (2017) Detecting and ranking api usage pattern in large source code repository: A lfm based approach. In: International cross-domain conference for machine learning and knowledge extraction. Springer, pp 41\u201356","DOI":"10.1007\/978-3-319-66808-6_4"},{"key":"10000_CR116","doi-asserted-by":"crossref","unstructured":"Zhou S, Shen B, Zhong H (2019) Lancer: Your code tell me what you need. In: 2019 34Th IEEE\/ACM international conference on automated software engineering (ASE). IEEE, pp 1202\u20131205","DOI":"10.1109\/ASE.2019.00137"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-10000-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-021-10000-w\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-021-10000-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,10,28]],"date-time":"2021-10-28T00:14:15Z","timestamp":1635380055000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-021-10000-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,8,18]]},"references-count":116,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2021,11]]}},"alternative-id":["10000"],"URL":"https:\/\/doi.org\/10.1007\/s10664-021-10000-w","relation":{"has-preprint":[{"id-type":"doi","id":"10.21203\/rs.3.rs-260432\/v1","asserted-by":"object"}]},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,8,18]]},"assertion":[{"value":"9 June 2021","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"18 August 2021","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"110"}}