A Survival Analysis-Based Prioritization of Code Checker Warning: A Case Study Using PMD

5Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Static code analysis tools (code checkers) scan source programs and issue warnings to potentially-problematic parts. Programmers can utilize a code checker whenever they change their source code to make sure that their code changes do not carry high risks of decreasing the code quality. Although code checkers would be helpful to detect risky code changes as early as possible, there is a practical problem which prevents an active utilization of such tools in the real: code checkers tend to produce a lot of false-positive warnings, i.e., such a tool outputs many warnings, but the majority of them are not attractive to the programmer. Toward an efficient utilization of code checkers, this paper proposes an application of the survival analysis method to prioritize code checker warnings. The proposed method estimates a warning’s lifetime with using the real trend of warnings through code changes; the brevity of warning means its importance because severe warnings are related to problematic parts which programmers would fix sooner. This paper conducts a large-scale case study of 6,927,432 warnings (259 types of warnings) appeared in 100 open source software projects. The results show that only 30 types of warnings are practically important for programmers in terms of the brevity, and the proposed method can drastically reduce the number of really needed warnings.

Cite

CITATION STYLE

APA

Aman, H., Amasaki, S., Yokogawa, T., & Kawahara, M. (2020). A Survival Analysis-Based Prioritization of Code Checker Warning: A Case Study Using PMD. In Studies in Computational Intelligence (Vol. 844, pp. 69–83). Springer Verlag. https://doi.org/10.1007/978-3-030-24405-7_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free