{"id":"https://openalex.org/W2011018890","doi":"https://doi.org/10.1109/somet.2013.6645656","title":"Removing Code Duplication with Roles","display_name":"Removing Code Duplication with Roles","publication_year":2013,"publication_date":"2013-09-01","ids":{"openalex":"https://openalex.org/W2011018890","doi":"https://doi.org/10.1109/somet.2013.6645656","mag":"2011018890"},"language":"en","primary_location":{"id":"doi:10.1109/somet.2013.6645656","is_oa":false,"landing_page_url":"https://doi.org/10.1109/somet.2013.6645656","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2013 IEEE 12th International Conference on Intelligent Software Methodologies, Tools and Techniques (SoMeT)","raw_type":"proceedings-article"},"type":"article","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/A5075286116","display_name":"Fernando S\u00e9rgio Barbosa","orcid":"https://orcid.org/0000-0003-3683-5803"},"institutions":[{"id":"https://openalex.org/I144926016","display_name":"Polytechnic Institute of Castelo Branco","ror":"https://ror.org/004s18446","country_code":"PT","type":"education","lineage":["https://openalex.org/I144926016"]}],"countries":["PT"],"is_corresponding":true,"raw_author_name":"Fernando Sergio Barbosa","raw_affiliation_strings":["Escola Superior de Tecnologia, Instituto Polit\u00e9cnico de Castelo Branco, Castelo Branco, Portugal","Escola Super. de Tecnol., Inst. Politec. de Castelo Branco, Castelo Branco, Portugal"],"affiliations":[{"raw_affiliation_string":"Escola Superior de Tecnologia, Instituto Polit\u00e9cnico de Castelo Branco, Castelo Branco, Portugal","institution_ids":["https://openalex.org/I144926016"]},{"raw_affiliation_string":"Escola Super. de Tecnol., Inst. Politec. de Castelo Branco, Castelo Branco, Portugal","institution_ids":["https://openalex.org/I144926016"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5062945583","display_name":"Ademar Aguiar","orcid":"https://orcid.org/0000-0002-4046-4729"},"institutions":[{"id":"https://openalex.org/I4210166615","display_name":"INESC TEC","ror":"https://ror.org/05fa8ka61","country_code":"PT","type":"nonprofit","lineage":["https://openalex.org/I4210125590","https://openalex.org/I4210166615"]},{"id":"https://openalex.org/I182534213","display_name":"Universidade do Porto","ror":"https://ror.org/043pwc612","country_code":"PT","type":"education","lineage":["https://openalex.org/I182534213"]}],"countries":["PT"],"is_corresponding":false,"raw_author_name":"Ademar Aguiar","raw_affiliation_strings":["INESC TEC and Departamento de Inform\u00e1tica da Faculdade de Engenharia, Universidade do Porto, Porto, Portugal","Dept. de Inf., Univ. do Porto, Porto, Portugal"],"affiliations":[{"raw_affiliation_string":"INESC TEC and Departamento de Inform\u00e1tica da Faculdade de Engenharia, Universidade do Porto, Porto, Portugal","institution_ids":["https://openalex.org/I4210166615","https://openalex.org/I182534213"]},{"raw_affiliation_string":"Dept. de Inf., Univ. do Porto, Porto, Portugal","institution_ids":["https://openalex.org/I182534213"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5075286116"],"corresponding_institution_ids":["https://openalex.org/I144926016"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.16345207,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":"2072","issue":null,"first_page":"37","last_page":"42"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"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.9998999834060669,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9991000294685364,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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.9984999895095825,"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/code-refactoring","display_name":"Code refactoring","score":0.7283315062522888},{"id":"https://openalex.org/keywords/clone","display_name":"clone (Java method)","score":0.7222713232040405},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7038993835449219},{"id":"https://openalex.org/keywords/sketch","display_name":"Sketch","score":0.6948618292808533},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.6501794457435608},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6318356990814209},{"id":"https://openalex.org/keywords/cloning","display_name":"Cloning (programming)","score":0.42647695541381836},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.13849440217018127},{"id":"https://openalex.org/keywords/biology","display_name":"Biology","score":0.1312660574913025},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.11075782775878906},{"id":"https://openalex.org/keywords/genetics","display_name":"Genetics","score":0.0827476978302002},{"id":"https://openalex.org/keywords/gene","display_name":"Gene","score":0.06206578016281128}],"concepts":[{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.7283315062522888},{"id":"https://openalex.org/C81089528","wikidata":"https://www.wikidata.org/wiki/Q5134986","display_name":"clone (Java method)","level":3,"score":0.7222713232040405},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7038993835449219},{"id":"https://openalex.org/C2779231336","wikidata":"https://www.wikidata.org/wiki/Q7534724","display_name":"Sketch","level":2,"score":0.6948618292808533},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.6501794457435608},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6318356990814209},{"id":"https://openalex.org/C121050878","wikidata":"https://www.wikidata.org/wiki/Q5135020","display_name":"Cloning (programming)","level":2,"score":0.42647695541381836},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.13849440217018127},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.1312660574913025},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.11075782775878906},{"id":"https://openalex.org/C54355233","wikidata":"https://www.wikidata.org/wiki/Q7162","display_name":"Genetics","level":1,"score":0.0827476978302002},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.06206578016281128},{"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":2,"locations":[{"id":"doi:10.1109/somet.2013.6645656","is_oa":false,"landing_page_url":"https://doi.org/10.1109/somet.2013.6645656","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2013 IEEE 12th International Conference on Intelligent Software Methodologies, Tools and Techniques (SoMeT)","raw_type":"proceedings-article"},{"id":"pmh:oai:repositorio.ipcb.pt:10400.11/2121","is_oa":false,"landing_page_url":"http://hdl.handle.net/10400.11/2121","pdf_url":null,"source":{"id":"https://openalex.org/S4306402433","display_name":"Portuguese National Funding Agency for Science, Research and Technology (RCAAP Project by FCT)","issn_l":null,"issn":null,"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":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"conference object"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":33,"referenced_works":["https://openalex.org/W86882898","https://openalex.org/W121288867","https://openalex.org/W125217267","https://openalex.org/W153104621","https://openalex.org/W1610570299","https://openalex.org/W1649645444","https://openalex.org/W1674221164","https://openalex.org/W1698439592","https://openalex.org/W1796076224","https://openalex.org/W2038429440","https://openalex.org/W2052138859","https://openalex.org/W2057745114","https://openalex.org/W2061180491","https://openalex.org/W2071935327","https://openalex.org/W2072325005","https://openalex.org/W2109943392","https://openalex.org/W2111898165","https://openalex.org/W2115680394","https://openalex.org/W2118182762","https://openalex.org/W2135406884","https://openalex.org/W2138756793","https://openalex.org/W2140249393","https://openalex.org/W2146483864","https://openalex.org/W2153887189","https://openalex.org/W2157532207","https://openalex.org/W2171200144","https://openalex.org/W2298313545","https://openalex.org/W4241674441","https://openalex.org/W4249960825","https://openalex.org/W4285719527","https://openalex.org/W6605096956","https://openalex.org/W6636323515","https://openalex.org/W6664671221"],"related_works":["https://openalex.org/W4313549863","https://openalex.org/W4231266416","https://openalex.org/W2395465245","https://openalex.org/W2072205733","https://openalex.org/W116591315","https://openalex.org/W1564657277","https://openalex.org/W2799887323","https://openalex.org/W1987653914","https://openalex.org/W2325518922","https://openalex.org/W2410849822"],"abstract_inverted_index":{"The":[0],"existence":[1],"of":[2,44,56,68],"replicated":[3,18],"code":[4,19,77],"in":[5,47,82,98],"a":[6,65,83,95],"system":[7,10],"makes":[8],"that":[9,32,92],"harder":[11],"to":[12,24,42,58,75,105],"maintain":[13],"and":[14,79],"evolve.":[15],"To":[16],"remove":[17,59,76,106],"the":[20,48,54,87],"usual":[21],"way":[22],"is":[23],"use":[25,55],"refactorings.":[26],"However":[27],"there":[28],"are":[29,40],"always":[30],"clones":[31,61,78,109],"cannot":[33],"be":[34],"removed":[35],"by":[36],"refactorings":[37,74,111],"alone.":[38],"Some":[39],"due":[41],"lack":[43],"composition":[45],"mechanisms":[46],"underlying":[49],"programming":[50],"language.":[51],"We":[52,70],"propose":[53],"roles":[57,63,93],"such":[60],"since":[62],"provide":[64],"finer":[66],"degree":[67],"composition.":[69],"sketch":[71],"four":[72],"role":[73],"apply":[80],"them":[81],"case":[84],"study":[85],"using":[86],"JHotDraw":[88],"framework.":[89],"Results":[90],"show":[91],"have":[94],"positive":[96],"impact":[97],"clone":[99],"reduction":[100],"as":[101],"they":[102],"were":[103],"able":[104],"almost":[107],"all":[108],"traditional":[110],"could":[112],"not.":[113]},"counts_by_year":[{"year":2021,"cited_by_count":1},{"year":2017,"cited_by_count":1}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
