DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390819
N. Ayewah, W. Pugh
{"title":"A report on a survey and study of static analysis users","authors":"N. Ayewah, W. Pugh","doi":"10.1145/1390817.1390819","DOIUrl":"https://doi.org/10.1145/1390817.1390819","url":null,"abstract":"As static analysis tools mature and attract more users, vendors and researchers have an increased interest in understanding how users interact with them, and how they impact the software development process. The FindBugs project has conducted a number of studies including online surveys, interviews and a preliminary controlled user study to better understand the practices, experiences and needs of its users. Through these studies we have learned that many users are interested in even low priority warnings, and some organizations are building custom solutions to more seamlessly and automatically integrate FindBugs into their software processes. We've also observed that developers can make decisions about the accuracy and severity of warnings fairly quickly and independent reviewers will generally reach the same conclusions about warnings.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115071825","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390825
E. Weyuker, T. Ostrand
{"title":"Comparing methods to identify defect reports in a change management database","authors":"E. Weyuker, T. Ostrand","doi":"10.1145/1390817.1390825","DOIUrl":"https://doi.org/10.1145/1390817.1390825","url":null,"abstract":"A key problem when doing automated fault analysis and fault prediction from information in a software change management database is how to determine which change reports represent software faults. In some change management systems, there is no simple way to distinguish fault reports from changes made to add new functionality or perform routine maintenance. This paper describes a comparison of two methods for classifying change reports for a large software system, and concludes that, for that particular system, the stage of development when the report was initialized is a more accurate indicator of its fault status than the presence of certain keywords in the report's natural language description.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124450372","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390828
Yasuhiro Hayase, Yii Yong Lee, Katsuro Inoue
{"title":"A criterion for filtering code clone related bugs","authors":"Yasuhiro Hayase, Yii Yong Lee, Katsuro Inoue","doi":"10.1145/1390817.1390828","DOIUrl":"https://doi.org/10.1145/1390817.1390828","url":null,"abstract":"Software reviews are time-consuming task especially for large software systems. To reduce the efforts required, Li et al. developed CP-Miner, a code clone detection tool that detects identifier naming inconsistencies between code clones as bug candidates. However, reviewers using CP-Miner still have to assess many inconsistencies, since the tool also reports many false-positive candidates. To reduce the false-positive candidates, we propose a criterion for filtering the candidates. In our experiments, filtering with the proposed criterion removed 30% of the false-positive candidates and no true-positive candidates. This result shows that the proposed criterion helps the review task by effectively reducing the number of bug candidates.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130709361","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390829
S. Wagner
{"title":"Defect classification and defect types revisited","authors":"S. Wagner","doi":"10.1145/1390817.1390829","DOIUrl":"https://doi.org/10.1145/1390817.1390829","url":null,"abstract":"There have been various attempts to establish common defect classification systems in standards, academia and industry. The resulted classifications are partly similar but also contain variations and none of which is accepted as a basic tool in software projects. This position paper summarises the work on defect classifications so far, proposes a set of challenges and the direction to a solution.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"133 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114693298","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390824
Burak Turhan, A. Bener, T. Menzies
{"title":"Nearest neighbor sampling for cross company defect predictors: abstract only","authors":"Burak Turhan, A. Bener, T. Menzies","doi":"10.1145/1390817.1390824","DOIUrl":"https://doi.org/10.1145/1390817.1390824","url":null,"abstract":"Several research in defect prediction focus on building models with available local data (i.e. within company predictors). To employ these models, a company should have a data repository, where project metrics and defect information from past projects are stored. However, few companies apply this practice. In a recent work, we have shown that cross company data can be used for building predictors with the cost of increased false alarms. Thus, we argued that the practical application of cross-company predictors is limited to mission critical projects and companies should starve for local data. In this paper, we show that nearest neighbor (NN) sampling of cross-company data removes the increased false alarm rates. We conclude that cross company defect predictors can be practical tools with NN sampling, yet local predictors are still the best and companies should keep starving for local data.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131451915","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390820
Yoshiki Higo, K. Murao, S. Kusumoto, Katsuro Inoue
{"title":"Predicting fault-prone modules based on metrics transitions","authors":"Yoshiki Higo, K. Murao, S. Kusumoto, Katsuro Inoue","doi":"10.1145/1390817.1390820","DOIUrl":"https://doi.org/10.1145/1390817.1390820","url":null,"abstract":"This paper describe a method for identifying fault-prone modules. The method utilizes metrics transitions rather than raw metrics values. Metrics transitions are measured from the source code of consecutive versions, which is archived in software repositories. Metrics transitions should be an good indicator of software quality because they reflect how the software system has evolved. This paper exhibits a case study, which is a comparison between metrics transitions and CK metrics suite. In the case study, the metrics transitions could precisely identify fault-prone modules.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131865999","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390826
Chadd C. Williams, Jaime Spacco
{"title":"SZZ revisited: verifying when changes induce fixes","authors":"Chadd C. Williams, Jaime Spacco","doi":"10.1145/1390817.1390826","DOIUrl":"https://doi.org/10.1145/1390817.1390826","url":null,"abstract":"Automatically identifying commits that induce fixes is an important task, as it enables researchers to quickly and efficiently validate many types of software engineering analyses, such as software metrics or models for predicting faulty components. Previous work on SZZ, an algorithm designed by Sliwerski et al and improved upon by Kim et al, provides a process for automatically identifying the fix-inducing predecessor lines to lines that are changed in a bug-fixing commit. However, as of yet no one has verified that the fix-inducing lines identified by SZZ are in fact responsible for introducing the fixed bug. Also, the SZZ algorithm relies on annotation graphs, which are imprecise in the face of large blocks of modified code, for back-tracking through previous revisions to the fix-inducing change.\u0000 In this work we outline several improvements to the SZZ algorithm: First, we replace annotation graphs with line-number maps that track unique source lines as they change over the lifetime of the software; and second, we use DiffJ, a Java syntax-aware diff tool, to ignore comments and formatting changes in the source. Finally, we begin verifying how often a fix-inducing change identified by SZZ is the true source of a bug.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132175235","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390821
Timea Illes-Seifert, B. Paech
{"title":"Exploring the relationship of history characteristics and defect count: an empirical study","authors":"Timea Illes-Seifert, B. Paech","doi":"10.1145/1390817.1390821","DOIUrl":"https://doi.org/10.1145/1390817.1390821","url":null,"abstract":"During the lifetime of a project, a huge amount of information is generated, e.g. in versioning systems or bug data bases. When analysed appropriately, the knowledge about the previous project characteristics allows estimating the project's future evolution. For example, it is very valuable to know particular history characteristics of a file indicating its fault proneness because it helps testers to focus their testing effort on these specific files. In this paper, we present the results of an empirical study, exploring the relationship between history characteristics of software entities and their defects. For this purpose, we analyze 9 open source java projects. The results show that there are some history characteristics that highly correlate with defects in software, e.g. the number of changes and the number of distinct authors performing changes to a file. The number of co-changed files does not correlate with the defect count.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123459174","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390830
Norihiro Yoshida, T. Ishio, M. Matsushita, Katsuro Inoue
{"title":"Retrieving similar code fragments based on identifier similarity for defect detection","authors":"Norihiro Yoshida, T. Ishio, M. Matsushita, Katsuro Inoue","doi":"10.1145/1390817.1390830","DOIUrl":"https://doi.org/10.1145/1390817.1390830","url":null,"abstract":"Similar source code fragments, known as code clones, may involve similar defects caused by the same mistake. However, code clone detection tools cannot detect certain code fragments (e.g. modified after copy-and-pasted). To support developers who would like to detect such defects, we propose a method to retrieve similar code fragments in source code based on the similarity of identifiers between a query and a target code fragment. We present two case studies of similar defects in open source systems.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"136 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123387459","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
DEFECTS '08Pub Date : 2008-07-20DOI: 10.1145/1390817.1390822
Yue Jiang, B. Cukic, T. Menzies
{"title":"Can data transformation help in the detection of fault-prone modules?","authors":"Yue Jiang, B. Cukic, T. Menzies","doi":"10.1145/1390817.1390822","DOIUrl":"https://doi.org/10.1145/1390817.1390822","url":null,"abstract":"Data preprocessing (transformation) plays an important role in data mining and machine learning. In this study, we investigate the effect of four different preprocessing methods to fault-proneness prediction using nine datasets from NASA Metrics Data Programs (MDP) and ten classification algorithms. Our experiments indicate that log transformation rarely improves classification performance, but discretization affects the performance of many different algorithms. The impact of different transformations differs. Random forest algorithm, for example, performs better with original and log transformed data set. Boosting and NaiveBayes perform significantly better with discretized data. We conclude that no general benefit can be expected from data transformations. Instead, selected transformation techniques are recommended to boost the performance of specific classification algorithms.","PeriodicalId":193694,"journal":{"name":"DEFECTS '08","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-07-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129330545","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}