{"id":"https://openalex.org/W2181981891","doi":null,"title":"Inferring Upgrade Transformations for Legacy Applications","display_name":"Inferring Upgrade Transformations for Legacy Applications","publication_year":2008,"publication_date":"2008-01-01","ids":{"openalex":"https://openalex.org/W2181981891","mag":"2181981891"},"language":"en","primary_location":{"id":"mag:2181981891","doi":null,"is_oa":false,"landing_page_url":"http://www.cs.utexas.edu/~tansey/rosemari.pdf","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null},"volume":null,"type":"article","indexed_in":[],"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/A5006383763","display_name":"Wesley Tansey","orcid":"https://orcid.org/0000-0002-5294-4228","observed_orcids":["https://orcid.org/0000-0002-5294-4228"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Wesley Tansey","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0002-5294-4228","affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5013168771","display_name":"Eli Tilevich","orcid":"https://orcid.org/0000-0003-2415-6926","observed_orcids":["https://orcid.org/0000-0003-2415-6926"]},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Eli Tilevich","raw_affiliation_strings":[],"raw_orcid":"https://orcid.org/0000-0003-2415-6926","affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.19759268,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994999766349792,"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.9994999766349792,"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.00019999999494757503,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":9.999999747378752e-05,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/legacy-application-modernization","display_name":"legacy application modernization","score":0.7070000171661377},{"id":"https://openalex.org/keywords/refactoring","display_name":"refactoring","score":0.5329999923706055},{"id":"https://openalex.org/keywords/vendor-lock-in","display_name":"vendor lock-in","score":0.9929999709129333},{"id":"https://openalex.org/keywords/junit","display_name":"JUnit","score":0.5699999928474426},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.8880000114440918}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.847504198551178},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.8027634024620056},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.7694416046142578},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7571303844451904},{"id":"https://openalex.org/C2778361913","wikidata":"https://www.wikidata.org/wiki/Q7248437","display_name":"Program transformation","level":2,"score":0.6513251662254333},{"id":"https://openalex.org/C105446022","wikidata":"https://www.wikidata.org/wiki/Q445962","display_name":"Legacy system","level":3,"score":0.5671796202659607},{"id":"https://openalex.org/C148027188","wikidata":"https://www.wikidata.org/wiki/Q907375","display_name":"Unit testing","level":3,"score":0.5331821441650391},{"id":"https://openalex.org/C174839445","wikidata":"https://www.wikidata.org/wiki/Q1134386","display_name":"Lock (firearm)","level":2,"score":0.5061106085777283},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.49369558691978455},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4666196405887604},{"id":"https://openalex.org/C2777338717","wikidata":"https://www.wikidata.org/wiki/Q1762621","display_name":"Vendor","level":2,"score":0.46087104082107544},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4455472230911255},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.44283437728881836},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.41369158029556274},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.346458375453949},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.1891126036643982},{"id":"https://openalex.org/C162853370","wikidata":"https://www.wikidata.org/wiki/Q39809","display_name":"Marketing","level":1,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0},{"id":"https://openalex.org/C144133560","wikidata":"https://www.wikidata.org/wiki/Q4830453","display_name":"Business","level":0,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"mag:2181981891","doi":null,"is_oa":false,"landing_page_url":"http://www.cs.utexas.edu/~tansey/rosemari.pdf","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":38,"referenced_works":["https://openalex.org/W39524137","https://openalex.org/W182762056","https://openalex.org/W206129901","https://openalex.org/W1487083903","https://openalex.org/W1502767928","https://openalex.org/W1560783834","https://openalex.org/W1565935466","https://openalex.org/W1570533264","https://openalex.org/W1577562415","https://openalex.org/W1598587145","https://openalex.org/W1689913591","https://openalex.org/W1972022507","https://openalex.org/W2024797550","https://openalex.org/W2028650877","https://openalex.org/W2050064302","https://openalex.org/W2052007825","https://openalex.org/W2052113184","https://openalex.org/W2067776455","https://openalex.org/W2072025944","https://openalex.org/W2088992040","https://openalex.org/W2100165879","https://openalex.org/W2100310705","https://openalex.org/W2112533109","https://openalex.org/W2112847033","https://openalex.org/W2118581948","https://openalex.org/W2119493660","https://openalex.org/W2128466029","https://openalex.org/W2141730150","https://openalex.org/W2150244020","https://openalex.org/W2150654203","https://openalex.org/W2151333541","https://openalex.org/W2153150125","https://openalex.org/W2155531930","https://openalex.org/W2157210578","https://openalex.org/W2157836986","https://openalex.org/W2157886310","https://openalex.org/W2166478491","https://openalex.org/W3137069269"],"related_works":["https://openalex.org/W7098025444","https://openalex.org/W4233906964","https://openalex.org/W2118678158","https://openalex.org/W2408718385","https://openalex.org/W2996799733","https://openalex.org/W2003383679","https://openalex.org/W2053685903","https://openalex.org/W2023940407","https://openalex.org/W88923034","https://openalex.org/W1997007544"],"abstract_inverted_index":{"Since":[0],"annotations":[1,46,51],"were":[2],"added":[3],"to":[4,12,29,35,41,148],"the":[5,55,126,139,150,154],"Java":[6,17,146],"language,":[7],"many":[8],"frameworks":[9],"have":[10],"moved":[11],"using":[13],"annotated":[14],"Plain":[15],"Old":[16],"Objects":[18],"(POJOs)":[19],"in":[20,33,54],"their":[21],"newest":[22],"releases.":[23],"Legacy":[24],"applications":[25,147],"are":[26,52],"thus":[27],"forced":[28],"undergo":[30],"extensive":[31],"restructuring":[32],"order":[34],"migrate":[36],"from":[37,93],"old":[38],"framework":[39,60],"versions":[40,43,95],"new":[42],"based":[44],"on":[45,122],"(Version":[47],"Lock-in).":[48,69],"Additionally,":[49],"because":[50],"embedded":[53],"application":[56],"code,":[57],"changing":[58],"between":[59],"vendors":[61],"may":[62],"also":[63],"entail":[64],"largescale":[65],"manual":[66],"changes":[67],"(Vendor":[68],"This":[70],"paper":[71],"presents":[72],"a":[73,86,97],"novel":[74],"refactoring":[75],"approach":[76,84,130],"that":[77,103],"effectively":[78],"solves":[79],"these":[80],"two":[81,94],"problems.":[82],"Our":[83],"infers":[85],"concise":[87],"set":[88],"of":[89,96,128,138,143,153],"semantics-preserving":[90],"transformation":[91],"rules":[92],"single":[98],"class.":[99],"Unlike":[100],"prior":[101],"approaches":[102],"detect":[104],"only":[105],"simple":[106],"structural":[107],"refactorings,":[108],"our":[109,129],"algorithm":[110],"can":[111],"infer":[112],"general":[113],"composite":[114],"refactorings":[115],"and":[116],"is":[117],"more":[118,134],"than":[119,135],"97%":[120],"accurate":[121],"average.":[123],"We":[124],"demonstrate":[125],"effectiveness":[127],"by":[131],"automatically":[132],"upgrading":[133],"80K":[136],"lines":[137],"unit":[140],"testing":[141,157],"code":[142],"four":[144],"open-source":[145],"use":[149],"latest":[151],"version":[152],"popular":[155],"JUnit":[156],"framework.":[158]},"counts_by_year":[],"updated_date":"2025-11-06T04:12:42.849631","created_date":"2016-06-24T00:00:00"}
