{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,1]],"date-time":"2026-08-01T16:44:34Z","timestamp":1785602674910,"version":"3.56.0"},"reference-count":31,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2015,12,2]],"date-time":"2015-12-02T00:00:00Z","timestamp":1449014400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"German Federal Ministry of Education and Research","award":["01IS12054 and EC SPRIDE"],"award-info":[{"award-number":["01IS12054 and EC SPRIDE"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Softw. Eng. Methodol."],"published-print":{"date-parts":[[2015,12,2]]},"abstract":"<jats:p>\n            Code completion is an integral part of modern\n            <jats:italic>Integrated Development Environments<\/jats:italic>\n            (IDEs). Developers often use it to explore\n            <jats:italic>Application Programming Interfaces<\/jats:italic>\n            (APIs). It is also useful to reduce the required amount of typing and to help avoid typos. Traditional code completion systems propose all type-correct methods to the developer. Such a list is often very long with many irrelevant items. More intelligent code completion systems have been proposed in prior work to reduce the list of proposed methods to relevant items.\n          <\/jats:p>\n          <jats:p>\n            This work extends one of these existing approaches, the\n            <jats:italic>Best Matching Neighbor<\/jats:italic>\n            (BMN) algorithm. We introduce Bayesian networks as an alternative underlying model, use additional context information for more precise recommendations, and apply clustering techniques to improve model sizes. We compare our new approach,\n            <jats:italic>Pattern-based Bayesian Networks<\/jats:italic>\n            (PBN), to the existing BMN algorithm. We extend previously used evaluation methodologies and, in addition to prediction quality, we also evaluate model size and inference speed.\n          <\/jats:p>\n          <jats:p>Our results show that the additional context information we collect improves prediction quality, especially for queries that do not contain method calls. We also show that PBN can obtain comparable prediction quality to BMN, while model size and inference speed scale better with large input sizes.<\/jats:p>","DOI":"10.1145\/2744200","type":"journal-article","created":{"date-parts":[[2015,12,4]],"date-time":"2015-12-04T13:43:07Z","timestamp":1449236587000},"page":"1-31","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":68,"title":["Intelligent Code Completion with Bayesian Networks"],"prefix":"10.1145","volume":"25","author":[{"given":"Sebastian","family":"Proksch","sequence":"first","affiliation":[{"name":"Technische Universit\u00e4t Darmstadt, Darmstadt, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Johannes","family":"Lerch","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t Darmstadt, Darmstadt, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Mira","family":"Mezini","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t Darmstadt, Darmstadt, Germany"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2015,12,2]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454247.1454267"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1595696.1595728"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/1188835.1188847"},{"key":"e_1_2_1_4_1","volume-title":"Proceedings of the International Conference on Software Engineering (ICSE'12)","author":"Raymond P."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1526709.1526711"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.3115\/981863.981904"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/TIT.1967.1053964"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462192"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2012.14"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.5555\/2337223.2337322"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1081706.1081755"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/1081706.1081754"},{"key":"e_1_2_1_13_1","unstructured":"Robert Cecil Martin. 2003. Agile Software Development: Principles Patterns and Practices. Prentice Hall PTR Upper Saddle River NJ.   Robert Cecil Martin. 2003. Agile Software Development: Principles Patterns and Practices. Prentice Hall PTR Upper Saddle River NJ."},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/347090.347123"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/337180.337200"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.5555\/1883978.1883982"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491411.2491415"},{"key":"e_1_2_1_18_1","volume-title":"Proceedings of the International Conference on Software Engineering (ICSE'12)","author":"Nguyen Anh Tuan"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1595696.1595767"},{"key":"e_1_2_1_20_1","doi-asserted-by":"crossref","unstructured":"Jakob Nielsen. 1994. Usability Engineering. Elsevier Amsterdam.  Jakob Nielsen. 1994. Usability Engineering. Elsevier Amsterdam.","DOI":"10.1016\/B978-0-08-052029-2.50007-3"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/2593822.2593827"},{"key":"e_1_2_1_22_1","volume-title":"Proceedings of the Workshop on Empirical Methods in Artificial Intelligence (IJCAI'01)","author":"Rish Irina","year":"2001"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2012.63"},{"key":"e_1_2_1_24_1","volume-title":"Proceedings of the DARPA Broadcast News Workshop. Morgan Kaufmann Publishers, 189--192","author":"Michael Schultz J.","year":"1999"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/53990.54007"},{"key":"e_1_2_1_26_1","volume-title":"Topics in Advanced Language Implementation","author":"Shivers Olin"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/115865.115884"},{"key":"e_1_2_1_28_1","volume-title":"Proceedings of the Workshop on Artificial Intelligence for Web Search (AAAI'00)","author":"Strehl Alexander","year":"2000"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1109\/INFCOM.2011.5935224"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/2337223.2337321"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2008.54"}],"container-title":["ACM Transactions on Software Engineering and Methodology"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2744200","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2744200","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T05:07:16Z","timestamp":1750223236000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2744200"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,12,2]]},"references-count":31,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2015,12,2]]}},"alternative-id":["10.1145\/2744200"],"URL":"https:\/\/doi.org\/10.1145\/2744200","relation":{},"ISSN":["1049-331X","1557-7392"],"issn-type":[{"value":"1049-331X","type":"print"},{"value":"1557-7392","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,12,2]]},"assertion":[{"value":"2014-02-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-03-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-12-02","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}