{"id":"https://openalex.org/W4403536220","doi":"https://doi.org/10.1145/3691620.3695527","title":"Test-Driven Development and LLM-based Code Generation","display_name":"Test-Driven Development and LLM-based Code Generation","publication_year":2024,"publication_date":"2024-10-18","ids":{"openalex":"https://openalex.org/W4403536220","doi":"https://doi.org/10.1145/3691620.3695527"},"language":"en","primary_location":{"id":"doi:10.1145/3691620.3695527","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3691620.3695527","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5054968221","display_name":"Noble Saji Mathews","orcid":"https://orcid.org/0000-0003-2266-8848"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Noble Saji Mathews","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"raw_orcid":"https://orcid.org/0000-0003-2266-8848","affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5029916309","display_name":"Meiyappan Nagappan","orcid":"https://orcid.org/0000-0003-4533-4728"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Meiyappan Nagappan","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"raw_orcid":"https://orcid.org/0000-0003-4533-4728","affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I151746483"],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":17,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"1583","last_page":"1594"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9969000220298767,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.994700014591217,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.648822546005249},{"id":"https://openalex.org/keywords/test","display_name":"Test (biology)","score":0.5491155385971069},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4812324047088623},{"id":"https://openalex.org/keywords/test-driven-development","display_name":"Test-driven development","score":0.46571066975593567},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.446493536233902},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.41496923565864563},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.34935519099235535},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.18882817029953003},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.16212299466133118},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.11069369316101074}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.648822546005249},{"id":"https://openalex.org/C2777267654","wikidata":"https://www.wikidata.org/wiki/Q3519023","display_name":"Test (biology)","level":2,"score":0.5491155385971069},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4812324047088623},{"id":"https://openalex.org/C4478048","wikidata":"https://www.wikidata.org/wiki/Q950250","display_name":"Test-driven development","level":4,"score":0.46571066975593567},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.446493536233902},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.41496923565864563},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.34935519099235535},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.18882817029953003},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.16212299466133118},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.11069369316101074},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3691620.3695527","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3691620.3695527","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.47999998927116394,"id":"https://metadata.un.org/sdg/9","display_name":"Industry, innovation and infrastructure"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":8,"referenced_works":["https://openalex.org/W2014309790","https://openalex.org/W2056514427","https://openalex.org/W4313563760","https://openalex.org/W4320854935","https://openalex.org/W4384304865","https://openalex.org/W4385569968","https://openalex.org/W4388213091","https://openalex.org/W4394745858"],"related_works":["https://openalex.org/W2156333502","https://openalex.org/W1148277684","https://openalex.org/W2163672025","https://openalex.org/W2362220343","https://openalex.org/W2048831961","https://openalex.org/W1606349578","https://openalex.org/W4399567378","https://openalex.org/W1907942343","https://openalex.org/W4224260610","https://openalex.org/W2167915094"],"abstract_inverted_index":{"Recent":[0],"Large":[1],"Language":[2],"Models":[3],"(LLMs)":[4],"have":[5],"demonstrated":[6],"significant":[7],"capabilities":[8],"in":[9,31,113,148],"generating":[10],"code":[11,27,65,80,120,128,165],"snippets":[12],"directly":[13],"from":[14],"problem":[15,58,117],"statements.":[16,59],"This":[17,84],"increasingly":[18],"automated":[19],"process":[20],"mirrors":[21],"traditional":[22],"human-led":[23],"software":[24],"development,":[25],"where":[26],"is":[28,156],"often":[29],"written":[30],"response":[32],"to":[33,46,63,74,115,145],"a":[34,157],"requirement.":[35],"Historically,":[36],"Test-Driven":[37],"Development":[38],"(TDD)":[39],"has":[40],"proven":[41],"its":[42],"merit,":[43],"requiring":[44],"developers":[45,73],"write":[47],"tests":[48,112],"before":[49],"the":[50,56,76,116,164,171],"functional":[51],"code,":[52],"ensuring":[53],"alignment":[54],"with":[55,111,125],"initial":[57],"Applying":[60],"TDD":[61,90,155],"principles":[62],"LLM-based":[64],"generation":[66,121,129],"offers":[67],"one":[68],"distinct":[69],"benefit:":[70],"it":[71],"enables":[72],"verify":[75],"correctness":[77],"of":[78],"generated":[79,166],"against":[81],"predefined":[82],"tests.":[83],"paper":[85],"investigates":[86],"if":[87],"and":[88,108,134],"how":[89],"can":[91],"be":[92],"incorporated":[93],"into":[94],"AI-assisted":[95],"code-generation":[96],"processes.":[97],"We":[98,123,152],"experimentally":[99],"evaluate":[100],"our":[101],"hypothesis":[102],"that":[103,140,154,163],"providing":[104],"LLMs":[105,168],"like":[106],"GPT-4":[107],"Llama":[109],"3":[110],"addition":[114],"statements":[118],"enhances":[119],"outcomes.":[122],"experimented":[124],"established":[126],"function-level":[127],"benchmarks":[130],"such":[131],"as":[132],"MBPP":[133],"HumanEval.":[135],"Our":[136],"results":[137],"consistently":[138],"demonstrate":[139],"including":[141],"test":[142],"cases":[143],"leads":[144],"higher":[146],"success":[147],"solving":[149],"programming":[150],"challenges.":[151],"assert":[153],"promising":[158],"paradigm":[159],"for":[160],"helping":[161],"ensure":[162],"by":[167],"effectively":[169],"captures":[170],"requirements.":[172]},"counts_by_year":[{"year":2026,"cited_by_count":7},{"year":2025,"cited_by_count":10}],"updated_date":"2026-07-22T07:51:19.307946","created_date":"2024-10-19T00:00:00"}
