{"id":"https://openalex.org/W3177786601","doi":"https://doi.org/10.1145/3464971.3468416","title":"Source code patches from dynamic analysis","display_name":"Source code patches from dynamic analysis","publication_year":2021,"publication_date":"2021-07-08","ids":{"openalex":"https://openalex.org/W3177786601","doi":"https://doi.org/10.1145/3464971.3468416","mag":"3177786601"},"language":"en","primary_location":{"id":"doi:10.1145/3464971.3468416","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3464971.3468416","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3464971.3468416","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 23rd ACM International Workshop on Formal Techniques for Java-like Programs","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3464971.3468416","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5057706543","display_name":"Indigo Orton","orcid":"https://orcid.org/0000-0002-9581-3148"},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Indigo Orton","raw_affiliation_strings":["University of Cambridge, UK"],"raw_orcid":"https://orcid.org/0000-0002-9581-3148","affiliations":[{"raw_affiliation_string":"University of Cambridge, UK","institution_ids":["https://openalex.org/I241749"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5004222850","display_name":"Alan Mycroft","orcid":"https://orcid.org/0000-0001-7013-8572"},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Alan Mycroft","raw_affiliation_strings":["University of Cambridge, UK"],"raw_orcid":"https://orcid.org/0000-0001-7013-8572","affiliations":[{"raw_affiliation_string":"University of Cambridge, UK","institution_ids":["https://openalex.org/I241749"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5057706543"],"corresponding_institution_ids":["https://openalex.org/I241749"],"apc_list":null,"apc_paid":null,"fwci":0.8542,"has_fulltext":true,"cited_by_count":3,"citation_normalized_percentile":{"value":0.79009353,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"8"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9995999932289124,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9995999932289124,"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"}},{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9994000196456909,"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/T12127","display_name":"Software System Performance and Reliability","score":0.9966999888420105,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.8731861114501953},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.792095422744751},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.7085921764373779},{"id":"https://openalex.org/keywords/static-program-analysis","display_name":"Static program analysis","score":0.6994885802268982},{"id":"https://openalex.org/keywords/call-graph","display_name":"Call graph","score":0.6733865737915039},{"id":"https://openalex.org/keywords/concurrency","display_name":"Concurrency","score":0.669214129447937},{"id":"https://openalex.org/keywords/control-flow-graph","display_name":"Control flow graph","score":0.6667746305465698},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.6638700366020203},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6392877101898193},{"id":"https://openalex.org/keywords/data-flow-analysis","display_name":"Data-flow analysis","score":0.6350922584533691},{"id":"https://openalex.org/keywords/trace","display_name":"TRACE (psycholinguistics)","score":0.5453363060951233},{"id":"https://openalex.org/keywords/kpi-driven-code-analysis","display_name":"KPI-driven code analysis","score":0.5305814146995544},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.5175523161888123},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.5130926370620728},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.5094667077064514},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4655260443687439},{"id":"https://openalex.org/keywords/control-flow-analysis","display_name":"Control flow analysis","score":0.44788992404937744},{"id":"https://openalex.org/keywords/dynamic-program-analysis","display_name":"Dynamic program analysis","score":0.4248017966747284},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4202902913093567},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.397270530462265},{"id":"https://openalex.org/keywords/data-flow-diagram","display_name":"Data flow diagram","score":0.3814007043838501},{"id":"https://openalex.org/keywords/procedural-programming","display_name":"Procedural programming","score":0.20523956418037415},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.19545727968215942},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.1495494544506073},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.1193661093711853},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.11854979395866394}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8731861114501953},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.792095422744751},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.7085921764373779},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.6994885802268982},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.6733865737915039},{"id":"https://openalex.org/C193702766","wikidata":"https://www.wikidata.org/wiki/Q1414548","display_name":"Concurrency","level":2,"score":0.669214129447937},{"id":"https://openalex.org/C27458966","wikidata":"https://www.wikidata.org/wiki/Q1187693","display_name":"Control flow graph","level":2,"score":0.6667746305465698},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6638700366020203},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6392877101898193},{"id":"https://openalex.org/C88468194","wikidata":"https://www.wikidata.org/wiki/Q1172416","display_name":"Data-flow analysis","level":3,"score":0.6350922584533691},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.5453363060951233},{"id":"https://openalex.org/C121957198","wikidata":"https://www.wikidata.org/wiki/Q14365593","display_name":"KPI-driven code analysis","level":5,"score":0.5305814146995544},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.5175523161888123},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.5130926370620728},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.5094667077064514},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4655260443687439},{"id":"https://openalex.org/C176359209","wikidata":"https://www.wikidata.org/wiki/Q2348963","display_name":"Control flow analysis","level":5,"score":0.44788992404937744},{"id":"https://openalex.org/C140006998","wikidata":"https://www.wikidata.org/wiki/Q2499307","display_name":"Dynamic program analysis","level":3,"score":0.4248017966747284},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4202902913093567},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.397270530462265},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.3814007043838501},{"id":"https://openalex.org/C120558287","wikidata":"https://www.wikidata.org/wiki/Q1418502","display_name":"Procedural programming","level":4,"score":0.20523956418037415},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.19545727968215942},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.1495494544506073},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.1193661093711853},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.11854979395866394},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"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":3,"locations":[{"id":"doi:10.1145/3464971.3468416","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3464971.3468416","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3464971.3468416","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 23rd ACM International Workshop on Formal Techniques for Java-like Programs","raw_type":"proceedings-article"},{"id":"pmh:oai:www.repository.cam.ac.uk:1810/325243","is_oa":true,"landing_page_url":"https://www.repository.cam.ac.uk/handle/1810/325243","pdf_url":"https://www.repository.cam.ac.uk/handle/1810/325243","source":{"id":"https://openalex.org/S4306401777","display_name":"Apollo (University of Cambridge)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I241749","host_organization_name":"University of Cambridge","host_organization_lineage":["https://openalex.org/I241749"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Conference Object"},{"id":"doi:10.17863/cam.72699","is_oa":true,"landing_page_url":"https://doi.org/10.17863/cam.72699","pdf_url":null,"source":{"id":"https://openalex.org/S7407050737","display_name":"Apollo","issn_l":null,"issn":[],"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"article"}],"best_oa_location":{"id":"doi:10.1145/3464971.3468416","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3464971.3468416","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3464971.3468416","source":null,"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 23rd ACM International Workshop on Formal Techniques for Java-like Programs","raw_type":"proceedings-article"},"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320320273","display_name":"University of Cambridge","ror":"https://ror.org/013meh722"},{"id":"https://openalex.org/F4320321848","display_name":"Cambridge Trust","ror":"https://ror.org/05sprqy15"},{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3177786601.pdf","grobid_xml":"https://content.openalex.org/works/W3177786601.grobid-xml"},"referenced_works_count":14,"referenced_works":["https://openalex.org/W1521580745","https://openalex.org/W2010452422","https://openalex.org/W2017274604","https://openalex.org/W2094437360","https://openalex.org/W2127637733","https://openalex.org/W2134626271","https://openalex.org/W2153185479","https://openalex.org/W2166841005","https://openalex.org/W2338897789","https://openalex.org/W3010662877","https://openalex.org/W3016643650","https://openalex.org/W3180358516","https://openalex.org/W4206611727","https://openalex.org/W4246166885"],"related_works":["https://openalex.org/W2150418816","https://openalex.org/W2380745217","https://openalex.org/W3002464080","https://openalex.org/W2080046362","https://openalex.org/W2162436812","https://openalex.org/W2166895275","https://openalex.org/W2117042503","https://openalex.org/W2388522952","https://openalex.org/W2138385884","https://openalex.org/W3177786601"],"abstract_inverted_index":{"Dynamic":[0],"analysis":[1],"can":[2],"identify":[3],"improvements":[4,16,25,43],"to":[5,27,69,79],"programs":[6],"that":[7],"cannot":[8],"feasibly":[9],"be":[10],"identified":[11,44],"by":[12,45],"static":[13,53,73],"analysis;":[14],"concurrency":[15],"are":[17],"a":[18,35,51],"motivating":[19],"example.":[20],"However,":[21],"mapping":[22],"these":[23],"dynamic-analysis-based":[24],"back":[26],"patch-like":[28],"source-code":[29,40],"changes":[30],"is":[31,90],"non-trivial.":[32],"We":[33,75],"describe":[34],"system,":[36],"Scopda,":[37],"for":[38,42,85],"generating":[39],"patches":[41,84],"execution-trace-based":[46],"dynamic":[47],"analysis.":[48],"Scopda":[49],"uses":[50],"graph-based":[52],"program":[54,57],"representation":[55],"(abstract":[56],"graph,":[58],"APG),":[59],"containing":[60],"inter-procedural":[61],"control":[62],"flow":[63,67],"and":[64,71],"local":[65],"data":[66],"information,":[68],"analyse":[70],"transform":[72],"source-code.":[74],"demonstrate":[76],"Scopda's":[77],"ability":[78],"generate":[80],"sensible":[81],"source":[82],"code":[83],"Java":[86],"programs,":[87],"though":[88],"it":[89],"fundamentally":[91],"language":[92],"agnostic.":[93]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
