There exists much research to do in the field of software defect prediction. This work can be broken up into two main branches:
\be
\item Further research into locality.
\item Develop a classifier to identify defective instances directly, and not to classify defective and non-defective instances equally.
\ee

The Burak filter showed much promise in the field of relevancy filtering. I propose an extension of this filter, or even an extension of a standard nearest neighbor filter, that is class sensitive. By this, I mean a filter which finds the $k$ nearest neighbors of each class. This could help with software defect prediction because when visualizing some of the datasets, there were no distinctive clusters between defective and non-defective modules. By including the nearest neighbors of each class, I hope to rectify the condition seen in the results of \tion{burak-results} and \tion{clustering-results} where there were zero defective instances included in the training dataset. This addition to the Burak filter can also be applied to the clustering examples shown in \tion{clustering-results}. 

The second extension to software defect prediction proposed is a classifier geared towards identifying just defective modules. All the classifiers seen in this thesis are targeted towards creating a model that correctly represents the structure of every class represented in the dataset. By creating a model that just represents defective modules, I hope to more accurately target the defective modules.

Another possibility for software defect prediction is to create a new way to represent the modules. Because of the performance of various classifiers and the Burak filter on data not relating to software defect prediction, I have state that the defective modules in software defect prediction have no discernible internal structure. By finding a new way of modeling the modules, I hope to better represent the structure of defective software modules.
