{"id":"https://openalex.org/W3115520614","doi":"https://doi.org/10.1145/3422392.3422399","title":"Recovering Architectural Variability from Source Code","display_name":"Recovering Architectural Variability from Source Code","publication_year":2020,"publication_date":"2020-10-21","ids":{"openalex":"https://openalex.org/W3115520614","doi":"https://doi.org/10.1145/3422392.3422399","mag":"3115520614"},"language":"en","primary_location":{"id":"doi:10.1145/3422392.3422399","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3422392.3422399","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the XXXIV Brazilian Symposium on Software Engineering","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/A5078593617","display_name":"Cresc\u00eancio Lima","orcid":"https://orcid.org/0000-0002-0286-2056"},"institutions":[{"id":"https://openalex.org/I130913789","display_name":"Instituto Federal da Bahia","ror":"https://ror.org/01tzdej37","country_code":"BR","type":"education","lineage":["https://openalex.org/I130913789"]}],"countries":["BR"],"is_corresponding":true,"raw_author_name":"Crescencio Lima","raw_affiliation_strings":["Federal Institute of Bahia, Vit\u00f3ria da Conquista, Brazil"],"affiliations":[{"raw_affiliation_string":"Federal Institute of Bahia, Vit\u00f3ria da Conquista, Brazil","institution_ids":["https://openalex.org/I130913789"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5060475953","display_name":"Ivan Machado","orcid":"https://orcid.org/0000-0001-9027-2293"},"institutions":[{"id":"https://openalex.org/I126158947","display_name":"Universidade Federal da Bahia","ror":"https://ror.org/03k3p7647","country_code":"BR","type":"education","lineage":["https://openalex.org/I126158947"]}],"countries":["BR"],"is_corresponding":false,"raw_author_name":"Ivan Machado","raw_affiliation_strings":["Federal University of Bahia, Salvador, Brazil"],"affiliations":[{"raw_affiliation_string":"Federal University of Bahia, Salvador, Brazil","institution_ids":["https://openalex.org/I126158947"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5034571717","display_name":"Matthias Galster","orcid":"https://orcid.org/0000-0003-3491-1833"},"institutions":[{"id":"https://openalex.org/I185492890","display_name":"University of Canterbury","ror":"https://ror.org/03y7q9t39","country_code":"NZ","type":"education","lineage":["https://openalex.org/I185492890"]}],"countries":["NZ"],"is_corresponding":false,"raw_author_name":"Matthias Galster","raw_affiliation_strings":["University of Canterbury, Christchurch, New Zealand"],"affiliations":[{"raw_affiliation_string":"University of Canterbury, Christchurch, New Zealand","institution_ids":["https://openalex.org/I185492890"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5073005990","display_name":"Christina Ch\u00e1vez","orcid":"https://orcid.org/0000-0001-5172-9641"},"institutions":[{"id":"https://openalex.org/I126158947","display_name":"Universidade Federal da Bahia","ror":"https://ror.org/03k3p7647","country_code":"BR","type":"education","lineage":["https://openalex.org/I126158947"]}],"countries":["BR"],"is_corresponding":false,"raw_author_name":"Christina von Flach G. Chavez","raw_affiliation_strings":["Federal University of Bahia, Salvador, Brazil"],"affiliations":[{"raw_affiliation_string":"Federal University of Bahia, Salvador, Brazil","institution_ids":["https://openalex.org/I126158947"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5078593617"],"corresponding_institution_ids":["https://openalex.org/I130913789"],"apc_list":null,"apc_paid":null,"fwci":0.2743,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.66143679,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"808","last_page":"817"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9998000264167786,"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"}},"topics":[{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9998000264167786,"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/T10260","display_name":"Software Engineering Research","score":0.9865000247955322,"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/T10679","display_name":"Service-Oriented Architecture and Web Services","score":0.9846000075340271,"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.6703931093215942},{"id":"https://openalex.org/keywords/software-product-line","display_name":"Software product line","score":0.6087278723716736},{"id":"https://openalex.org/keywords/reuse","display_name":"Reuse","score":0.5450811386108398},{"id":"https://openalex.org/keywords/documentation","display_name":"Documentation","score":0.5368704199790955},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.5315297245979309},{"id":"https://openalex.org/keywords/architecture","display_name":"Architecture","score":0.527228832244873},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5178945064544678},{"id":"https://openalex.org/keywords/product","display_name":"Product (mathematics)","score":0.4890666902065277},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.46714848279953003},{"id":"https://openalex.org/keywords/software-architecture","display_name":"Software architecture","score":0.43259188532829285},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.32515382766723633},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.1547335386276245},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.10831370949745178}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6703931093215942},{"id":"https://openalex.org/C2778177629","wikidata":"https://www.wikidata.org/wiki/Q2111823","display_name":"Software product line","level":4,"score":0.6087278723716736},{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.5450811386108398},{"id":"https://openalex.org/C56666940","wikidata":"https://www.wikidata.org/wiki/Q788790","display_name":"Documentation","level":2,"score":0.5368704199790955},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.5315297245979309},{"id":"https://openalex.org/C123657996","wikidata":"https://www.wikidata.org/wiki/Q12271","display_name":"Architecture","level":2,"score":0.527228832244873},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5178945064544678},{"id":"https://openalex.org/C90673727","wikidata":"https://www.wikidata.org/wiki/Q901718","display_name":"Product (mathematics)","level":2,"score":0.4890666902065277},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.46714848279953003},{"id":"https://openalex.org/C35869016","wikidata":"https://www.wikidata.org/wiki/Q846636","display_name":"Software architecture","level":3,"score":0.43259188532829285},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.32515382766723633},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.1547335386276245},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.10831370949745178},{"id":"https://openalex.org/C153349607","wikidata":"https://www.wikidata.org/wiki/Q36649","display_name":"Visual arts","level":1,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C142362112","wikidata":"https://www.wikidata.org/wiki/Q735","display_name":"Art","level":0,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"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/C548081761","wikidata":"https://www.wikidata.org/wiki/Q180388","display_name":"Waste management","level":1,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3422392.3422399","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3422392.3422399","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the XXXIV Brazilian Symposium on Software Engineering","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","score":0.5899999737739563,"id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":40,"referenced_works":["https://openalex.org/W63474583","https://openalex.org/W1487680106","https://openalex.org/W1494019345","https://openalex.org/W1496612258","https://openalex.org/W1505090407","https://openalex.org/W1554977156","https://openalex.org/W1581654673","https://openalex.org/W1958789525","https://openalex.org/W1974534895","https://openalex.org/W1977943086","https://openalex.org/W2031425482","https://openalex.org/W2076225782","https://openalex.org/W2087931117","https://openalex.org/W2090526358","https://openalex.org/W2096377722","https://openalex.org/W2100670918","https://openalex.org/W2111531102","https://openalex.org/W2122824813","https://openalex.org/W2137965151","https://openalex.org/W2143116837","https://openalex.org/W2143741513","https://openalex.org/W2153654970","https://openalex.org/W2167016137","https://openalex.org/W2168432988","https://openalex.org/W2261238734","https://openalex.org/W2341709165","https://openalex.org/W2343873501","https://openalex.org/W2406576890","https://openalex.org/W2495617574","https://openalex.org/W2501770979","https://openalex.org/W2513097779","https://openalex.org/W2561675875","https://openalex.org/W2582804910","https://openalex.org/W2751098166","https://openalex.org/W2772693278","https://openalex.org/W2890274422","https://openalex.org/W2891009963","https://openalex.org/W2954566619","https://openalex.org/W3112759701","https://openalex.org/W4250555356"],"related_works":["https://openalex.org/W2618286804","https://openalex.org/W2329643025","https://openalex.org/W2002770077","https://openalex.org/W3131163342","https://openalex.org/W2092256833","https://openalex.org/W2142369114","https://openalex.org/W2361728394","https://openalex.org/W2166271660","https://openalex.org/W2106175519","https://openalex.org/W44378391"],"abstract_inverted_index":{"Context:":[0],"Systematic":[1],"variability":[2,94,107,164,249],"management":[3],"helps":[4],"efficiently":[5],"manage":[6],"commonalities":[7],"and":[8,18,29,133,136,239],"differences":[9],"in":[10,14,27,62,172,186,204],"software":[11,15,37,56],"systems":[12],"(e.g.,":[13,75],"product":[16,34,38,41,51,83,113,117,131,157,174,190,207],"lines":[17],"families).":[19],"This":[20],"enables":[21],"the":[22,31,40,46,80,109,138,144,161,167,173,202,213,220,236,248],"reuse":[23],"of":[24,33,82,112,115,140,147,155,163,169,215,222],"development":[25,73],"artifacts":[26,74],"organizations":[28],"increases":[30],"quality":[32],"variants.":[35,53,191],"In":[36,54],"lines,":[39,84],"line":[42,52,175,208],"architecture":[43,48,71,81,170,182],"(PLA)":[44],"is":[45,151,230],"core":[47],"for":[49,129,235],"all":[50],"practice,":[55],"architectures":[57,203],"are":[58,90],"often":[59],"not":[60],"documented":[61],"detail.":[63],"Architecture":[64],"recovery":[65,87],"techniques":[66,88],"can":[67],"recover":[68,79,105,201],"a":[69,116,130,156,188],"system's":[70],"from":[72,95,108],"source":[76,110],"code).":[77],"To":[78,159],"we":[85],"need":[86],"that":[89,150,184,228,244],"able":[91,231],"to":[92,104,121,124,180,200,232,242],"identify":[93,243],"different":[96],"sources.":[97],"Goal:":[98],"We":[99,193,210],"present":[100,233],"SAVaR,":[101],"an":[102,195],"approach":[103],"architectural":[106,127,148],"code":[111],"variants":[114],"line.":[118,158],"SAVaR":[119,142,177,199,229],"aims":[120],"help":[122],"developers":[123],"(a)":[125],"create":[126],"documentation":[128],"line,":[132],"(b)":[134],"understand":[135],"improve":[137],"implementation":[139],"variability.":[141],"identifies":[143],"smallest":[145],"subset":[146],"information":[149],"common":[152],"across":[153],"products":[154],"limit":[160],"explosion":[162],"(and":[165],"hence":[166],"complexity":[168],"documentation)":[171],"architecture,":[176],"allows":[178],"architects":[179],"exclude":[181],"elements":[183],"appear":[185],"only":[187],"few":[189],"Method:":[192],"performed":[194],"exploratory":[196],"study":[197],"with":[198],"ten":[205],"academic":[206],"projects.":[209],"verified":[211],"how":[212],"elimination":[214],"exclusive":[216],"optional":[217],"modules":[218],"improves":[219],"results":[221,226],"SAVaR.":[223],"Results:":[224],"The":[225],"showed":[227],"improvements":[234],"recovered":[237],"PLAs":[238],"it":[240],"helped":[241],"some":[245],"projects":[246],"maintained":[247],"under":[250],"control.":[251]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1}],"updated_date":"2026-03-22T08:09:32.410652","created_date":"2025-10-10T00:00:00"}
