{"id":"https://openalex.org/W3001783472","doi":"https://doi.org/10.1007/s10664-020-09807-w","title":"Ammonia: an approach for deriving project-specific bug patterns","display_name":"Ammonia: an approach for deriving project-specific bug patterns","publication_year":2020,"publication_date":"2020-03-07","ids":{"openalex":"https://openalex.org/W3001783472","doi":"https://doi.org/10.1007/s10664-020-09807-w","mag":"3001783472"},"language":"en","primary_location":{"id":"doi:10.1007/s10664-020-09807-w","is_oa":true,"landing_page_url":"https://doi.org/10.1007/s10664-020-09807-w","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10664-020-09807-w.pdf","source":{"id":"https://openalex.org/S109852484","display_name":"Empirical Software Engineering","issn_l":"1382-3256","issn":["1382-3256","1573-7616"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Empirical Software Engineering","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://link.springer.com/content/pdf/10.1007/s10664-020-09807-w.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Yoshiki Higo","orcid":"https://orcid.org/0000-0002-8278-8975"},"institutions":[{"id":"https://openalex.org/I98285908","display_name":"The University of Osaka","ror":"https://ror.org/035t8zc32","country_code":"JP","type":"education","lineage":["https://openalex.org/I98285908"]}],"countries":["JP"],"is_corresponding":true,"raw_author_name":"Yoshiki Higo","raw_affiliation_strings":["Graduate School of Information Science and Technology, Osaka University, 1\u20135, Yamadaoka, Suita, Osaka, 565\u20130871, Japan"],"raw_orcid":"https://orcid.org/0000-0002-8278-8975","affiliations":[{"raw_affiliation_string":"Graduate School of Information Science and Technology, Osaka University, 1\u20135, Yamadaoka, Suita, Osaka, 565\u20130871, Japan","institution_ids":["https://openalex.org/I98285908"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Shinpei Hayashi","orcid":null},"institutions":[{"id":"https://openalex.org/I114531698","display_name":"Tokyo Institute of Technology","ror":"https://ror.org/0112mx960","country_code":"JP","type":"education","lineage":["https://openalex.org/I114531698"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Shinpei Hayashi","raw_affiliation_strings":["School of Computing, Tokyo Institute of Technology, Ookayama 2\u201312\u20131\u2013W8\u201371, Ookayama, Meguro-ku, Tokyo, 152\u20138550, Japan"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"School of Computing, Tokyo Institute of Technology, Ookayama 2\u201312\u20131\u2013W8\u201371, Ookayama, Meguro-ku, Tokyo, 152\u20138550, Japan","institution_ids":["https://openalex.org/I114531698"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Hideaki Hata","orcid":null},"institutions":[{"id":"https://openalex.org/I75917431","display_name":"Nara Institute of Science and Technology","ror":"https://ror.org/05bhada84","country_code":"JP","type":"education","lineage":["https://openalex.org/I75917431"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Hideaki Hata","raw_affiliation_strings":["Graduate School of Science and Technology, Nara Institute of Science and Technology, 8916\u20135 Takayama-cho, Ikoma, Nara, 630\u20130192, Japan"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Graduate School of Science and Technology, Nara Institute of Science and Technology, 8916\u20135 Takayama-cho, Ikoma, Nara, 630\u20130192, Japan","institution_ids":["https://openalex.org/I75917431"]}]},{"author_position":"last","author":{"id":null,"display_name":"Meiyappan Nagappan","orcid":null},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Meiyappan Nagappan","raw_affiliation_strings":["Cheriton School of Computer Science, University of Waterloo, 200, University Avenue West Waterloo, Ontario, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Cheriton School of Computer Science, University of Waterloo, 200, University Avenue West Waterloo, Ontario, Canada","institution_ids":["https://openalex.org/I151746483"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I98285908"],"apc_list":{"value":2890,"currency":"USD","value_usd":2890},"apc_paid":{"value":2890,"currency":"USD","value_usd":2890},"fwci":1.1188,"has_fulltext":true,"cited_by_count":12,"citation_normalized_percentile":{"value":0.84337407,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":"25","issue":"3","first_page":"1951","last_page":"1979"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9553999900817871,"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.9553999900817871,"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.007600000128149986,"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/T10430","display_name":"Software Engineering Techniques and Practices","score":0.006000000052154064,"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/java","display_name":"Java","score":0.6761999726295471},{"id":"https://openalex.org/keywords/software-bug","display_name":"Software bug","score":0.6381000280380249},{"id":"https://openalex.org/keywords/software-regression","display_name":"Software regression","score":0.462799996137619},{"id":"https://openalex.org/keywords/security-bug","display_name":"Security bug","score":0.45879998803138733},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.4277999997138977},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.4140999913215637},{"id":"https://openalex.org/keywords/limiting","display_name":"Limiting","score":0.4023999869823456},{"id":"https://openalex.org/keywords/pointer","display_name":"Pointer (user interface)","score":0.39730000495910645},{"id":"https://openalex.org/keywords/software-maintenance","display_name":"Software maintenance","score":0.3944000005722046}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7049999833106995},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.6761999726295471},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.6381000280380249},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.5476999878883362},{"id":"https://openalex.org/C191727507","wikidata":"https://www.wikidata.org/wiki/Q24346","display_name":"Software regression","level":5,"score":0.462799996137619},{"id":"https://openalex.org/C131275738","wikidata":"https://www.wikidata.org/wiki/Q7445023","display_name":"Security bug","level":5,"score":0.45879998803138733},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.4277999997138977},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.42309999465942383},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.4140999913215637},{"id":"https://openalex.org/C188198153","wikidata":"https://www.wikidata.org/wiki/Q1613840","display_name":"Limiting","level":2,"score":0.4023999869823456},{"id":"https://openalex.org/C150202949","wikidata":"https://www.wikidata.org/wiki/Q107602","display_name":"Pointer (user interface)","level":2,"score":0.39730000495910645},{"id":"https://openalex.org/C101317890","wikidata":"https://www.wikidata.org/wiki/Q940053","display_name":"Software maintenance","level":4,"score":0.3944000005722046},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.3903999924659729},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.3756999969482422},{"id":"https://openalex.org/C150292731","wikidata":"https://www.wikidata.org/wiki/Q1342704","display_name":"Code review","level":5,"score":0.3747999966144562},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.3619000017642975},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.3546000123023987},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.34540000557899475},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.34369999170303345},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.33469998836517334},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.3034000098705292},{"id":"https://openalex.org/C180152950","wikidata":"https://www.wikidata.org/wiki/Q2904257","display_name":"Software development process","level":4,"score":0.298799991607666},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.296999990940094},{"id":"https://openalex.org/C117447612","wikidata":"https://www.wikidata.org/wiki/Q1412670","display_name":"Software quality","level":4,"score":0.27970001101493835},{"id":"https://openalex.org/C146054899","wikidata":"https://www.wikidata.org/wiki/Q181156","display_name":"Software design pattern","level":3,"score":0.2703000009059906},{"id":"https://openalex.org/C203763787","wikidata":"https://www.wikidata.org/wiki/Q371029","display_name":"Null (SQL)","level":2,"score":0.2653999924659729}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1007/s10664-020-09807-w","is_oa":true,"landing_page_url":"https://doi.org/10.1007/s10664-020-09807-w","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10664-020-09807-w.pdf","source":{"id":"https://openalex.org/S109852484","display_name":"Empirical Software Engineering","issn_l":"1382-3256","issn":["1382-3256","1573-7616"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Empirical Software Engineering","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2001.09630","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2001.09630","pdf_url":"https://arxiv.org/pdf/2001.09630","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"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":"text"}],"best_oa_location":{"id":"doi:10.1007/s10664-020-09807-w","is_oa":true,"landing_page_url":"https://doi.org/10.1007/s10664-020-09807-w","pdf_url":"https://link.springer.com/content/pdf/10.1007/s10664-020-09807-w.pdf","source":{"id":"https://openalex.org/S109852484","display_name":"Empirical Software Engineering","issn_l":"1382-3256","issn":["1382-3256","1573-7616"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319900","host_organization_name":"Springer Science+Business Media","host_organization_lineage":["https://openalex.org/P4310319900","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Springer Science+Business Media","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Empirical Software Engineering","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G4068081917","display_name":"Search-Based and Interactive Environment for Semi-Automated Refactoring","funder_award_id":"18K11238","funder_id":"https://openalex.org/F4320334764","funder_display_name":"Japan Society for the Promotion of Science"}],"funders":[{"id":"https://openalex.org/F4320334764","display_name":"Japan Society for the Promotion of Science","ror":"https://ror.org/00hhkn466"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3001783472.pdf","grobid_xml":"https://content.openalex.org/works/W3001783472.grobid-xml"},"referenced_works_count":47,"referenced_works":["https://openalex.org/W90447038","https://openalex.org/W841012168","https://openalex.org/W1475493299","https://openalex.org/W1976019354","https://openalex.org/W1981075560","https://openalex.org/W1999157933","https://openalex.org/W2025791343","https://openalex.org/W2029853454","https://openalex.org/W2048954027","https://openalex.org/W2049386694","https://openalex.org/W2054520963","https://openalex.org/W2060333670","https://openalex.org/W2074937108","https://openalex.org/W2083504918","https://openalex.org/W2083882002","https://openalex.org/W2104040631","https://openalex.org/W2104301886","https://openalex.org/W2108395261","https://openalex.org/W2111421634","https://openalex.org/W2122734351","https://openalex.org/W2124666592","https://openalex.org/W2133561941","https://openalex.org/W2136172891","https://openalex.org/W2136279823","https://openalex.org/W2141558501","https://openalex.org/W2143051121","https://openalex.org/W2145302217","https://openalex.org/W2145373440","https://openalex.org/W2148256390","https://openalex.org/W2151666086","https://openalex.org/W2153150125","https://openalex.org/W2168660188","https://openalex.org/W2171293873","https://openalex.org/W2343875716","https://openalex.org/W2373227884","https://openalex.org/W2375939852","https://openalex.org/W2548949553","https://openalex.org/W2946413635","https://openalex.org/W2964210007","https://openalex.org/W3147925222","https://openalex.org/W4233410239","https://openalex.org/W4237506321","https://openalex.org/W4244452926","https://openalex.org/W4254666025","https://openalex.org/W4255398023","https://openalex.org/W4256028358","https://openalex.org/W4291213652"],"related_works":[],"abstract_inverted_index":{"Abstract":[0],"Finding":[1],"and":[2,9,13,80,161,184,193,228],"fixing":[3],"buggy":[4],"code":[5,38],"is":[6,17,114],"an":[7,109],"important":[8],"cost-intensive":[10],"maintenance":[11],"task,":[12],"static":[14],"analysis":[15],"(SA)":[16],"one":[18,148,151],"of":[19,94,124,180,221,241],"the":[20,51,58,121,136,156,163,178,242],"methods":[21],"developers":[22,30,47],"use":[23],"to":[24,49,71,91,130,146,186],"perform":[25],"it.":[26],"SA":[27,61,167],"tools":[28,62,168],"warn":[29],"about":[31],"potential":[32],"bugs":[33,227],"by":[34,140],"scanning":[35],"their":[36],"source":[37],"for":[39,64,82],"commonly":[40],"occurring":[41],"bug":[42,66,133,137,172,207,235],"patterns,":[43],"thus":[44],"giving":[45],"those":[46,210,222,234],"opportunities":[48],"fix":[50],"warnings":[52,164],"(potential":[53],"bugs)":[54],"before":[55],"they":[56,154],"release":[57],"software.":[59],"Typically,":[60],"scan":[63],"general":[65,171],"patterns":[67,138,208,224],"that":[68,169,199,219],"are":[69],"common":[70],"any":[72],"software":[73],"project":[74,83,157,205],"(such":[75],"as":[76,96,127,158],"null":[77],"pointer":[78],"dereference),":[79],"not":[81,144],"specific":[84,152,206],"patterns.":[85,134,173,236],"However,":[86],"past":[87],"research":[88],"has":[89],"pointed":[90],"this":[92,105],"lack":[93],"customizability":[95],"a":[97,125,128,159,238],"severe":[98],"limiting":[99],"issue":[100],"in":[101,104],"SA.":[102],"Accordingly,":[103],"paper,":[106],"we":[107,175,217],"propose":[108],"approach":[110,185],"called":[111],",":[112,190,191,192],"which":[113],"based":[115,232],"on":[116,177,233],"statically":[117],"analyzing":[118],"changes":[119],"across":[120,209],"development":[122],"history":[123],"project,":[126],"means":[129],"identify":[131,170],"project-specific":[132],"Furthermore,":[135],"identified":[139],"our":[141,181,200],"tool":[142,183,201],"do":[143],"relate":[145],"just":[147],"developer":[149],"or":[150],"commit,":[153],"reflect":[155],"whole":[160],"compliment":[162],"from":[165],"other":[166],"Herein,":[174],"report":[176],"application":[179],"implemented":[182],"four":[187,211],"Java":[188],"projects:":[189],".":[194],"The":[195],"results":[196],"obtained":[197],"show":[198],"could":[202],"detect":[203],"19":[204],"projects.":[212],"Next,":[213],"through":[214],"manual":[215],"analysis,":[216],"determined":[218],"six":[220],"change":[223],"were":[225,245],"actual":[226],"submitted":[229],"pull":[230,243],"requests":[231,244],"As":[237],"result,":[239],"five":[240],"merged.":[246]},"counts_by_year":[{"year":2026,"cited_by_count":3},{"year":2025,"cited_by_count":3},{"year":2024,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":1}],"updated_date":"2026-07-23T08:03:31.855105","created_date":"2020-01-30T00:00:00"}
