{"id":"https://openalex.org/W3134260883","doi":"https://doi.org/10.1145/3439961.3439985","title":"Towards Practical Reuse of Custom Static Analysis Rules for Defect Localization","display_name":"Towards Practical Reuse of Custom Static Analysis Rules for Defect Localization","publication_year":2020,"publication_date":"2020-12-01","ids":{"openalex":"https://openalex.org/W3134260883","doi":"https://doi.org/10.1145/3439961.3439985","mag":"3134260883"},"language":"en","primary_location":{"id":"doi:10.1145/3439961.3439985","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3439961.3439985","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"19th Brazilian Symposium on Software Quality","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/A5077340439","display_name":"Diogo Mendon\u00e7a","orcid":"https://orcid.org/0000-0003-4357-2888"},"institutions":[{"id":"https://openalex.org/I4210136482","display_name":"Federal Center for Technological Education of Minas Gerais","ror":"https://ror.org/04ch49185","country_code":"BR","type":"education","lineage":["https://openalex.org/I4210136482"]}],"countries":["BR"],"is_corresponding":false,"raw_author_name":"Diogo Silveira Mendon\u00e7a","raw_affiliation_strings":["Federal Center for Technological Education of Rio de Janeiro (CEFET/RJ), Brazil"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Federal Center for Technological Education of Rio de Janeiro (CEFET/RJ), Brazil","institution_ids":["https://openalex.org/I4210136482"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5062526200","display_name":"Marcos Kalinowski","orcid":"https://orcid.org/0000-0003-1445-3425"},"institutions":[{"id":"https://openalex.org/I2699952","display_name":"Pontif\u00edcia Universidade Cat\u00f3lica do Rio de Janeiro","ror":"https://ror.org/01dg47b60","country_code":"BR","type":"education","lineage":["https://openalex.org/I2699952"]}],"countries":["BR"],"is_corresponding":false,"raw_author_name":"Marcos Kalinowski","raw_affiliation_strings":["Pontifical Catholic University of Rio de Janeiro (PUC-Rio), Brazil"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Pontifical Catholic University of Rio de Janeiro (PUC-Rio), Brazil","institution_ids":["https://openalex.org/I2699952"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.2272,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.53329047,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"10"},"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9995999932289124,"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.9993000030517578,"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/reuse","display_name":"Reuse","score":0.8471429347991943},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7506272196769714},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.7225631475448608},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.5669232606887817},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5379140973091125},{"id":"https://openalex.org/keywords/scope","display_name":"Scope (computer science)","score":0.5349921584129333},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.5297033786773682},{"id":"https://openalex.org/keywords/static-program-analysis","display_name":"Static program analysis","score":0.4485609531402588},{"id":"https://openalex.org/keywords/code-reuse","display_name":"Code reuse","score":0.4329180121421814},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.37492549419403076},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.3645011782646179},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.332031786441803},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.2936694920063019},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.17156770825386047}],"concepts":[{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.8471429347991943},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7506272196769714},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.7225631475448608},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.5669232606887817},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5379140973091125},{"id":"https://openalex.org/C2778012447","wikidata":"https://www.wikidata.org/wiki/Q1034415","display_name":"Scope (computer science)","level":2,"score":0.5349921584129333},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.5297033786773682},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.4485609531402588},{"id":"https://openalex.org/C2778583558","wikidata":"https://www.wikidata.org/wiki/Q771245","display_name":"Code reuse","level":3,"score":0.4329180121421814},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.37492549419403076},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.3645011782646179},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.332031786441803},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.2936694920063019},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.17156770825386047},{"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/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"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/3439961.3439985","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3439961.3439985","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"19th Brazilian Symposium on Software Quality","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":11,"referenced_works":["https://openalex.org/W814172419","https://openalex.org/W1984041362","https://openalex.org/W1989657183","https://openalex.org/W2008626182","https://openalex.org/W2057923199","https://openalex.org/W2514084604","https://openalex.org/W2561266335","https://openalex.org/W2884106799","https://openalex.org/W2894604095","https://openalex.org/W3006067503","https://openalex.org/W4251075610"],"related_works":["https://openalex.org/W4388483122","https://openalex.org/W4387126921","https://openalex.org/W3030592833","https://openalex.org/W2354385412","https://openalex.org/W2182697532","https://openalex.org/W2032897247","https://openalex.org/W4297908618","https://openalex.org/W2985048382","https://openalex.org/W4240545424","https://openalex.org/W2765641823"],"abstract_inverted_index":{"[Context]":[0],"Several":[1],"static":[2,31,63,79,102,223,264],"analysis":[3,32,64,80,103,224,265],"tools":[4],"allow":[5],"the":[6,45,50,75,120,134,138,182,188,234,244],"development":[7],"of":[8,47,77,112,119,166,172,243],"custom":[9,62,78,101,214,263],"rules":[10,33,65,81,104,113,139,151,167,190,225,245,266],"for":[11,181,196],"locating":[12],"application-specific":[13],"defects.":[14],"Although":[15],"this":[16,70],"feature":[17],"is":[18,24,89],"powerful":[19],"and":[20,37,53,123,142,236,257],"commonly":[21],"available,":[22],"it":[23],"not":[25],"well":[26],"explored":[27],"in":[28,96,130,143,152,229,233],"practice.":[29],"Custom":[30],"can":[34,226],"check":[35],"design":[36],"policies":[38],"that":[39,55,99,208,220],"are":[40,66,239],"shared":[41,254],"between":[42],"applications,":[43],"allowing":[44],"reuse":[46,76,165,262],"rules.":[48,215],"However,":[49,187,241],"benefits,":[51],"scope,":[52],"concerns":[54],"software":[56],"engineers":[57],"should":[58],"have":[59,209],"on":[60,212,259],"reusing":[61,213,221],"unknown.":[67],"[Goal]":[68],"In":[69],"preliminary":[71],"study,":[72],"we":[73,205],"investigate":[74],"produced":[82,114],"by":[83,115,177],"applying":[84],"Pattern-Driven":[85],"Maintenance":[86],"(PDM).":[87],"PDM":[88,121],"a":[90,110,116,178],"method":[91,122],"to":[92,126,161,193,249,261],"locate":[93],"defect":[94,197],"patterns":[95],"web":[97],"applications":[98,129],"produces":[100],"as":[105,199],"output.":[106],"[Method]":[107],"We":[108,147,217,253],"selected":[109],"set":[111],"previous":[117],"usage":[118],"applied":[124],"them":[125],"other":[127,144],"three":[128],"two":[131],"contexts,":[132],"within":[133],"same":[135],"company":[136],"where":[137],"were":[140],"produced,":[141],"companies.":[145],"[Results]":[146],"successfully":[148],"reused":[149,189],"some":[150],"both":[153],"scenarios":[154],"with":[155],"minor":[156],"adjustments,":[157],"finding":[158],"new":[159],"defects":[160],"be":[162,227,247],"fixed.":[163],"The":[164],"could":[168],"discard":[169],"from":[170,202],"58-90%":[171],"source":[173],"code":[174],"locations":[175],"found":[176],"naive":[179],"search":[180],"defects,":[183],"reducing":[184],"verification":[185],"effort.":[186],"need":[191],"adjustments":[192],"improve":[194],"precision":[195,200],"localization,":[198],"ranged":[201],"40-75%.":[203],"Finally,":[204],"identified":[206],"factors":[207],"an":[210],"impact":[211],"[Conclusions]":[216],"put":[218],"forward":[219],"customized":[222],"beneficial,":[228],"particular":[230],"when":[231],"similarities":[232],"architecture":[235],"programming":[237],"style":[238],"observed.":[240],"adjustment":[242],"might":[246],"needed":[248],"enable":[250],"effective":[251],"reuse.":[252],"our":[255],"insights":[256],"methodology":[258],"how":[260],"properly.":[267]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2022,"cited_by_count":1}],"updated_date":"2026-07-30T17:31:21.811387","created_date":"2025-10-10T00:00:00"}
