Özet:
In software development industry high defect rates increase the cost of development and maintenance, which ends in customer dissatisfaction. Testing is among the most critical and costly phases in software development. The companies make costly investments in testing; still they cannot reach an adequate level of test coverage. Due to this software engineers are in search for intelligent models, which would predict defects at pre-testing point. In this research we focus on building a learning-based defect prediction model based on pre-release defects, static code attributes and call graphs. In our research the motivation is to increase the information content of static code attributes through a better understanding of the architectural structure of the code. Our proposed framework for defect prediction model is a call graph based ranking methodology. We search through whether module interaction and structure play an important role in defect proneness of a given code. In our proposed framework module interaction is taken into consideration and call graphs are used to trace the code module by module. PageRank algorithm is utilized in constructing our call graph-based ranking algorithm. We adjust the values produced from call graph-based ranking algorithms with static code attributes. The resulting framework can be applied to any defect prediction model based on static code attributes. This framework will help software developers increase the quality of their products by catching defects with lower test costs.