The static analysis plays an important role in many software engineering activities. However, the existence of infeasible paths, which causes lower program test coverage and several false positives in the results of the static analysis, has become one of the biggest challenges for the static analysis. In this paper, based on unsatisfiable path constraint patterns, we present a new approach to detect interprocedural infeasible paths. In our approach, we first discover nine unsatisfiable path constraint patterns by mining the common path constraint features of a large number of infeasible paths. Then, we detect the interprocedural infeasible paths; a detected path is deemed to be an interprocedural infeasible path if its simplified constraint conditions match one of the nine unsatisfiable path constraint patterns. To illustrate and verify the approach, an experimental study is performed on five open source C projects. The results show that compared with the existing approach, our approach requires less time on average and detects more interprocedural infeasible paths among the given paths. INDEX TERMS Static analysis, infeasible path, constraint pattern, interprocedural analysis.
Abstract. Code defect detection technology plays an increasingly important role in software testing, but the problem of large number of alarms and high false positive rate is common, thus, the efficiency and difficulty of manual confirmation has seriously hindered the development of this technology. This paper proposes a generation method of dominant alarm, which can effectively reduce the number of the human confirmations and improve validation efficiency. Firstly, by analyzing the feature function of the alarms, the alarms with the same data source can be classified as a collection called 'Equivalent class collection'. Then, the dominant alarm in the equivalent class collection is determined by examining the contextual relationship of the codes where the alarm exits in the collection. Finally, the confirmation of the alarms in the collection can be accomplished by confirming the dominant alarm only. The experiment results show that this method can effectively improve the human conformation efficiency of 20%-30%.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.