\documentclass[11pt,twoside]{article}\makeatletter

\IfFileExists{xcolor.sty}%
  {\RequirePackage{xcolor}}%
  {\RequirePackage{color}}
\usepackage{colortbl}
\usepackage{wrapfig}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \usepackage{xunicode}
  \catcode`⃥=\active \def⃥{\textbackslash}
  \catcode`❴=\active \def❴{\{}
  \catcode`❵=\active \def❵{\}}
  \def\textJapanese{\fontspec{Noto Sans CJK JP}}
  \def\textChinese{\fontspec{Noto Sans CJK SC}}
  \def\textKorean{\fontspec{Noto Sans CJK KR}}
  \setmonofont{DejaVu Sans Mono}
  
\else
  \IfFileExists{utf8x.def}%
   {\usepackage[utf8x]{inputenc}
      \PrerenderUnicode{–}
    }%
   {\usepackage[utf8]{inputenc}}
  \usepackage[english]{babel}
  \usepackage[T1]{fontenc}
  \usepackage{float}
  \usepackage[]{ucs}
  \uc@dclc{8421}{default}{\textbackslash }
  \uc@dclc{10100}{default}{\{}
  \uc@dclc{10101}{default}{\}}
  \uc@dclc{8491}{default}{\AA{}}
  \uc@dclc{8239}{default}{\,}
  \uc@dclc{20154}{default}{ }
  \uc@dclc{10148}{default}{>}
  \def\textschwa{\rotatebox{-90}{e}}
  \def\textJapanese{}
  \def\textChinese{}
  \IfFileExists{tipa.sty}{\usepackage{tipa}}{}
\fi
\def\exampleFont{\ttfamily\small}
\DeclareTextSymbol{\textpi}{OML}{25}
\usepackage{relsize}
\RequirePackage{array}
\def\@testpach{\@chclass
 \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else
  \ifnum \@lastchclass=7 5 \else
   \ifnum \@lastchclass=8 \tw@ \else
    \ifnum \@lastchclass=9 \thr@@
   \else \z@
   \ifnum \@lastchclass = 10 \else
   \edef\@nextchar{\expandafter\string\@nextchar}%
   \@chnum
   \if \@nextchar c\z@ \else
    \if \@nextchar l\@ne \else
     \if \@nextchar r\tw@ \else
   \z@ \@chclass
   \if\@nextchar |\@ne \else
    \if \@nextchar !6 \else
     \if \@nextchar @7 \else
      \if \@nextchar (8 \else
       \if \@nextchar )9 \else
  10
  \@chnum
  \if \@nextchar m\thr@@\else
   \if \@nextchar p4 \else
    \if \@nextchar b5 \else
   \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi
   \fi \fi  \fi  \fi  \fi  \fi  \fi \fi \fi \fi \fi \fi}
\gdef\arraybackslash{\let\\=\@arraycr}
\def\@textsubscript#1{{\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\def\abbr{}
\def\corr{}
\def\expan{}
\def\gap{}
\def\orig{}
\def\reg{}
\def\ref{}
\def\sic{}
\def\persName{}\def\name{}
\def\placeName{}
\def\orgName{}
\def\textcal#1{{\fontspec{Lucida Calligraphy}#1}}
\def\textgothic#1{{\fontspec{Lucida Blackletter}#1}}
\def\textlarge#1{{\large #1}}
\def\textoverbar#1{\ensuremath{\overline{#1}}}
\def\textquoted#1{‘#1’}
\def\textsmall#1{{\small #1}}
\def\textsubscript#1{\@textsubscript{\selectfont#1}}
\def\textxi{\ensuremath{\xi}}
\def\titlem{\itshape}
\newenvironment{biblfree}{}{\ifvmode\par\fi }
\newenvironment{bibl}{}{}
\newenvironment{byline}{\vskip6pt\itshape\fontsize{16pt}{18pt}\selectfont}{\par }
\newenvironment{citbibl}{}{\ifvmode\par\fi }
\newenvironment{docAuthor}{\ifvmode\vskip4pt\fontsize{16pt}{18pt}\selectfont\fi\itshape}{\ifvmode\par\fi }
\newenvironment{docDate}{}{\ifvmode\par\fi }
\newenvironment{docImprint}{\vskip 6pt}{\ifvmode\par\fi }
\newenvironment{docTitle}{\vskip6pt\bfseries\fontsize{22pt}{25pt}\selectfont}{\par }
\newenvironment{msHead}{\vskip 6pt}{\par}
\newenvironment{msItem}{\vskip 6pt}{\par}
\newenvironment{rubric}{}{}
\newenvironment{titlePart}{}{\par }

\newcolumntype{L}[1]{){\raggedright\arraybackslash}p{#1}}
\newcolumntype{C}[1]{){\centering\arraybackslash}p{#1}}
\newcolumntype{R}[1]{){\raggedleft\arraybackslash}p{#1}}
\newcolumntype{P}[1]{){\arraybackslash}p{#1}}
\newcolumntype{B}[1]{){\arraybackslash}b{#1}}
\newcolumntype{M}[1]{){\arraybackslash}m{#1}}
\definecolor{label}{gray}{0.75}
\def\unusedattribute#1{\sout{\textcolor{label}{#1}}}
\DeclareRobustCommand*{\xref}{\hyper@normalise\xref@}
\def\xref@#1#2{\hyper@linkurl{#2}{#1}}
\begingroup
\catcode`\_=\active
\gdef_#1{\ensuremath{\sb{\mathrm{#1}}}}
\endgroup
\mathcode`\_=\string"8000
\catcode`\_=12\relax

\usepackage[a4paper,twoside,lmargin=1in,rmargin=1in,tmargin=1in,bmargin=1in,marginparwidth=0.75in]{geometry}
\usepackage{framed}

\definecolor{shadecolor}{gray}{0.95}
\usepackage{longtable}
\usepackage[normalem]{ulem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage{marginnote}

\renewcommand{\@cite}[1]{#1}


\renewcommand*{\marginfont}{\itshape\footnotesize}

\def\Gin@extensions{.pdf,.png,.jpg,.mps,.tif}

  \pagestyle{fancy}

\usepackage[pdftitle={Analysis of Data Mining Based Software Defect Prediction Techniques},
 pdfauthor={}]{hyperref}
\hyperbaseurl{}

	 \paperwidth210mm
	 \paperheight297mm
              
\def\@pnumwidth{1.55em}
\def\@tocrmarg {2.55em}
\def\@dotsep{4.5}
\setcounter{tocdepth}{3}
\clubpenalty=8000
\emergencystretch 3em
\hbadness=4000
\hyphenpenalty=400
\pretolerance=750
\tolerance=2000
\vbadness=4000
\widowpenalty=10000

\renewcommand\section{\@startsection {section}{1}{\z@}%
     {-1.75ex \@plus -0.5ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large\bfseries}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
     {-1.75ex\@plus -0.5ex \@minus- .2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\Large}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
     {-1.5ex\@plus -0.35ex \@minus -.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\large}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
     {-1ex \@plus-0.35ex \@minus -0.2ex}%
     {0.5ex \@plus .2ex}%
     {\reset@font\normalsize}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
     {1.5ex \@plus1ex \@minus .2ex}%
     {-1em}%
     {\reset@font\normalsize\bfseries}}


\def\l@section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
 \@tempdima 1.5em \begingroup
 \parindent \z@ \rightskip \@pnumwidth 
 \parfillskip -\@pnumwidth 
 \bfseries \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
 \endgroup}
\def\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}
\def\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
\def\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}
\def\l@subparagraph{\@dottedtocline{5}{10em}{5em}}
\@ifundefined{c@section}{\newcounter{section}}{}
\@ifundefined{c@chapter}{\newcounter{chapter}}{}
\newif\if@mainmatter 
\@mainmattertrue
\def\chaptername{Chapter}
\def\frontmatter{%
  \pagenumbering{roman}
  \def\thechapter{\@roman\c@chapter}
  \def\theHchapter{\roman{chapter}}
  \def\thesection{\@roman\c@section}
  \def\theHsection{\roman{section}}
  \def\@chapapp{}%
}
\def\mainmatter{%
  \cleardoublepage
  \def\thechapter{\@arabic\c@chapter}
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \pagenumbering{arabic}
  \setcounter{secnumdepth}{6}
  \def\@chapapp{\chaptername}%
  \def\theHchapter{\arabic{chapter}}
  \def\thesection{\@arabic\c@section}
  \def\theHsection{\arabic{section}}
}
\def\backmatter{%
  \cleardoublepage
  \setcounter{chapter}{0}
  \setcounter{section}{0}
  \setcounter{secnumdepth}{2}
  \def\@chapapp{\appendixname}%
  \def\thechapter{\@Alph\c@chapter}
  \def\theHchapter{\Alph{chapter}}
  \appendix
}
\newenvironment{bibitemlist}[1]{%
   \list{\@biblabel{\@arabic\c@enumiv}}%
       {\settowidth\labelwidth{\@biblabel{#1}}%
        \leftmargin\labelwidth
        \advance\leftmargin\labelsep
        \@openbib@code
        \usecounter{enumiv}%
        \let\p@enumiv\@empty
        \renewcommand\theenumiv{\@arabic\c@enumiv}%
	}%
  \sloppy
  \clubpenalty4000
  \@clubpenalty \clubpenalty
  \widowpenalty4000%
  \sfcode`\.\@m}%
  {\def\@noitemerr
    {\@latex@warning{Empty `bibitemlist' environment}}%
    \endlist}

\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}}
\parskip0pt
\parindent1em
\def\Panel#1#2#3#4{\multicolumn{#3}{){\columncolor{#2}}#4}{#1}}
\newenvironment{reflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemsep}{0pt}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\itshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{sansreflist}{%
  \begin{raggedright}\begin{list}{}
  {%
   \setlength{\topsep}{0pt}%
   \setlength{\rightmargin}{0.25in}%
   \setlength{\itemindent}{0pt}%
   \setlength{\parskip}{0pt}%
   \setlength{\itemsep}{0pt}%
   \setlength{\parsep}{2pt}%
   \def\makelabel##1{\upshape ##1}}%
  }
  {\end{list}\end{raggedright}}
\newenvironment{specHead}[2]%
 {\vspace{20pt}\hrule\vspace{10pt}%
  \phantomsection\label{#1}\markright{#2}%

  \pdfbookmark[2]{#2}{#1}%
  \hspace{-0.75in}{\bfseries\fontsize{16pt}{18pt}\selectfont#2}%
  }{}
      \def\TheFullDate{2011-09 2011-08-23 (revised: 2011 September 23 August 2011)}
\def\TheID{\makeatother }
\def\TheDate{2011-09 2011-08-23}
\title{Analysis of Data Mining Based Software Defect Prediction Techniques}
\author{}\makeatletter 
\makeatletter
\newcommand*{\cleartoleftpage}{%
  \clearpage
    \if@twoside
    \ifodd\c@page
      \hbox{}\newpage
      \if@twocolumn
        \hbox{}\newpage
      \fi
    \fi
  \fi
}
\makeatother
\makeatletter
\thispagestyle{empty}
\markright{\@title}\markboth{\@title}{\@author}
\renewcommand\small{\@setfontsize\small{9pt}{11pt}\abovedisplayskip 8.5\p@ plus3\p@ minus4\p@
\belowdisplayskip \abovedisplayskip
\abovedisplayshortskip \z@ plus2\p@
\belowdisplayshortskip 4\p@ plus2\p@ minus2\p@
\def\@listi{\leftmargin\leftmargini
               \topsep 2\p@ plus1\p@ minus1\p@
               \parsep 2\p@ plus\p@ minus\p@
               \itemsep 1pt}
}
\makeatother
\fvset{frame=single,numberblanklines=false,xleftmargin=5mm,xrightmargin=5mm}
\fancyhf{} 
\setlength{\headheight}{14pt}
\fancyhead[LE]{\bfseries\leftmark} 
\fancyhead[RO]{\bfseries\rightmark} 
\fancyfoot[RO]{}
\fancyfoot[CO]{\thepage}
\fancyfoot[LO]{\TheID}
\fancyfoot[LE]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[RE]{\TheID}
\hypersetup{citebordercolor=0.75 0.75 0.75,linkbordercolor=0.75 0.75 0.75,urlbordercolor=0.75 0.75 0.75,bookmarksnumbered=true}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrulewidth}{0pt}}

\date{}
\usepackage{authblk}

\providecommand{\keywords}[1]
{
\footnotesize
  \textbf{\textit{Index terms---}} #1
}

\usepackage{graphicx,xcolor}
\definecolor{GJBlue}{HTML}{273B81}
\definecolor{GJLightBlue}{HTML}{0A9DD9}
\definecolor{GJMediumGrey}{HTML}{6D6E70}
\definecolor{GJLightGrey}{HTML}{929497} 

\renewenvironment{abstract}{%
   \setlength{\parindent}{0pt}\raggedright
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
   \textcolor{GJBlue}{\large\bfseries\abstractname\space}
}{%   
   \vskip8pt
   \textcolor{GJMediumGrey}{\rule{\textwidth}{2pt}}
   \vskip16pt
}

\usepackage[absolute,overlay]{textpos}

\makeatother 
      \usepackage{lineno}
      \linenumbers
      
\begin{document}

             \author[1]{Naheed  Azeem}

             \author[2]{Shazia  Usmani}

             \affil[1]{  Federal Urdu University of Arts, Science and Technology}

\renewcommand\Authands{ and }

\date{\small \em Received: 15 July 2011 Accepted: 10 August 2011 Published: 23 August 2011}

\maketitle


\begin{abstract}
        


Software bug repository is the main resource for fault prone modules. Different data mining algorithms are used to extract fault prone modules from these repositories. Software development team tries to increase the software quality by decreasing the number of defects as much as possible. In this paper different data mining techniques are discussed for identifying fault prone modules as well as compare the data mining algorithms to find out the best algorithm for defect prediction.

\end{abstract}


\keywords{Defect prediction, Data Mining, algorithms}

\begin{textblock*}{18cm}(1cm,1cm) % {block width} (coords) 
\textcolor{GJBlue}{\LARGE Global Journals \LaTeX\ JournalKaleidoscope\texttrademark}
\end{textblock*}

\begin{textblock*}{18cm}(1.4cm,1.5cm) % {block width} (coords) 
\textcolor{GJBlue}{\footnotesize \\ Artificial Intelligence formulated this projection for compatibility purposes from the original article published at Global Journals. However, this technology is currently in beta. \emph{Therefore, kindly ignore odd layouts, missed formulae, text, tables, or figures.}}
\end{textblock*}


\let\tabcellsep& 	 	 		 
\section[{INTRODUCTION}]{INTRODUCTION}\par
oftware life cycle is a human activity, so it is impossible to produce the software without defects. To deliver a defect free software it is imperative to predict and fix the defects as many as possible before the product delivers to the customer.\par
Software repositories have lots of information that is useful in assessing software quality. Data mining techniques and machine learning algorithms can be applied on these repositories to extract the useful information.\par
The aim of this research is to explore the different issues and problems in the area of defect prediction as well as provide the solutions to improve the product quality via defect prediction mechanism.\par
In this survey four type of research issues, formulated as questions, need to be addressed to understand the problems of defect prediction mechanism based on data mining techniques. 
\section[{Research questions:}]{Research questions:}\par
-How can we resolve the problem of ceiling effects as well as imbalanced and highly skewed datasets? -What software repositories and datasets should be mined for defect prediction? -How can we get better results in identifying defects from large features and high level software modules? -How machine learning algorithms and data mining techniques can be proved more effective in defect extraction from repository? -Is there any good data mining technique that performs the best in all situations?\par
The remainder of this paper begins with a background and description. (Section 2), followed by Issues and problems regarding data mining in defect prediction and its solution( section 3) , future work and open issues are discussed in section 5and finally summarizes the paper (section 4). 
\section[{II. BACKGROUND AND DESCRIPTIONS}]{II. BACKGROUND AND DESCRIPTIONS}\par
A software defect is an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or causes it to behave in unintended ways  {\ref [24]}. Software defects are expensive in terms of quality and cost. Moreover, the cost of capturing and correcting defects is one of the most expensive software development activities. It will not be possible to eliminate all defects but it is possible to minimize the number of defects and their severe impact on the projects. To do this a defect management process needs to be implemented that focuses on improving software quality via decreasing the defect density. A little investment in defect management process can yield significant returns. a) Software Defect Prediction Software defect prediction is the process of locating defective modules in software. To produce high quality software, the final product should have as few defects as possible. Early detection of software defects could lead to reduced development costs and rework effort and more reliable software. So, the study of the defect prediction is important to achieve software quality.\par
The most discussed problem is software defect prediction in the field of software quality and software reliability. As Boehm observed finding and fixing a problem after delivery is 100 times more expensive than fixing it during requirement and design phase.  
\section[{ISSUES AND PROBLEMS}]{ISSUES AND PROBLEMS}\par
Software prediction model only works well when enough amount of data is available in software repository within the organization to initially feed the model. Extraction of defects from software bug repository accurately is not done without a good data mining model. There is a need of good data mining model to predict the software defects from a bug repository. a) Highly skewed and imbalanced datasets -Existing prediction models based on un sampling as well as training dataset does not contain any information about number of fault per module and distribution of fault among modules \hyperref[b2]{[3]}. -Data mining algorithms lack of business knowledge and hit a performance ceiling effect when cannot extract the additional information that related to software metrics with fault occurrence \hyperref[b16]{[16]}. -Fit datasets are usually imbalanced that cause the degradation of defect prediction models \hyperref[b22]{[22]}. -Highly skewed dataset is considered as the main cause of unsatisfactory prediction result. However the results of more balanced dataset are also unsatisfactory \hyperref[b23]{[23]}.\par
b) Early life cycle and multiple dataset -Early life cycle data cannot be useful in identifying fault prone modules \hyperref[b8]{[9,}\hyperref[b20]{20]}. -No change in defect predictions results when different software repositories are mined \hyperref[b10]{[11]}. -Single classifier is technically unfit to make use of all the features. However the problems of combing different classifier still remain unresolved \hyperref[b14]{[14]}.\par
c) Large number of features and high level software modules -Most of the machine leading algorithms are not capable of extracting defects from the database that store continuous features \hyperref[b6]{[7]}. -Supervised learning are useful for defect prediction at same logical levels but it is not suitable for high level software modules \hyperref[b7]{[8]}. -Existing classifier based defect prediction model are insufficient accurate for practical use and use of a large number of features \hyperref[b13]{[13]}. 
\section[{d) Accurate defect prediction model}]{d) Accurate defect prediction model}\par
-There is a need of accurate defect prediction model for large-scale software system which is more robust to noise \hyperref[b1]{[2]}. -Traditional decision tree are used in classification of defective and non-defective modules. However traditional decision trees induction method contain several disadvantages \hyperref[b3]{[4]}. -There is a need of good data mining model to predict the software defects from a bug repository \hyperref[b4]{[5]}. -Data transformation can improve the performance of software quality models \hyperref[b21]{[21]}.  
\section[{IV. APPROACHES AND METHODOLOGIES}]{IV. APPROACHES AND METHODOLOGIES}\par
a) Sampling effect on imbalanced datasets An oversampling method is proposed that using the number of fault per modules and distribution of fault among modules. Two prediction models Naïve Bayes and Logistic regression are applied to two dataset from NASA MDP project .Sampling and over sampling method are used. The result of T test and the nonparametric method of Wilcoxon test showed that oversampling method significant influence on the prediction of both LR and NB model \hyperref[b2]{[3]}.\par
Author in \hyperref[b16]{[16]} proposed a human-in-the-loop CBR tool that ad business knowledge to the data mining algorithm. CBR build better prediction model that detect the lower bound on the number of instances. Using three sub sampling techniques (over, under and micro sampling) to find the lower bound the number of training instances. Naive Bayes and j48 methods are used in case of over and under sampling and Naive Bayes is used in case of micro sampling.\par
Another technique used Sampling method to improve the performance of defect prediction models when data sets are imbalanced \hyperref[b22]{[22]}.Four sampling methods (random over sampling, synthetic minority over sampling, random under sampling and one-sided selection) applied to four fault-proneness models(linear discriminant analysis, logistic regression analysis, neural network and classification tree) by using two module sets of industry legacy software. A method SimBoost is used to handle the software defect prediction problem when high skewed datasets are used, with a fuzzy based classification. A novel method SimBoost is applied on the NASA project dataset to reduced the effects of skewed dataset but the prediction on more balanced dataset are still not accurate. So, fuzzy classification was used to accurate the prediction result \hyperref[b23]{[23]}. 
\section[{b) Effect of early life cycle and multiple dataset}]{b) Effect of early life cycle and multiple dataset}\par
Most of the researchers raise the issue that relying on single data source can limit the accuracy of defect prediction models. However, a combination of different data sources is better to utilize in order to built more accurate fault prediction models.\par
Both papers \hyperref[b8]{[9,}\hyperref[b20]{20]} analyzed that early lifecycle data can be highly useful in defect prediction. In \hyperref[b8]{[9]} a hybrid Defect prediction models consisting of K-means clustering and C 4.5 are built. Requirement metrics and code metrics and the combination of both requirement and code metrics are applied on these models. Compare the result of models on three NASA projects i.e. CM1, JM1 and PC1. Result shows requirement metric plays an important role in identifying defects. While in the paper \hyperref[b20]{[20]} author built a Defect prediction models using requirement metrics and code metrics and the combination of both requirement and code metrics. Compare the result of models on three NASA projects. Result shows requirement metric plays an important role in identifying defects.\par
Author \hyperref[b10]{[11]} claimed that Defect prediction results improve significantly with different data sources. Three repositories static analysis, version control and release management are used for defect prediction. Learning algorithm ID3, J48 and SVM are used to assess the accuracy of different data sources.\par
A method is proposed to build a software quality model using multiple learners induced on multiple training datasets to take advantage of their respective biases.\par
Seventeen classifier models were used on seven NASA datasets. Multiple classifiers were combined by majority voting of experts. Four classification scenarios were used to evaluate the result \hyperref[b14]{[14]}. 
\section[{c) Large number of features and high level software modules}]{c) Large number of features and high level software modules}\par
The paper \hyperref[b6]{[7]} proposed a new data mining model to predict the software bug estimation more accurately. This technique used an entropy based splitting criteria and minimum description stopping criteria (decide when to stop discretization).The binary discretization was always select the best cut point and was applied recursively.\par
Author investigated that a novel Multi-instance learning technique is much better in identifying defects for high level software modules. Four multi-instance learning algorithm i.e. Statistical learner, Set Kernel, Citation KNN (k Nearest Neighbor ) and MI EM-DD (Expectation-Maximization version of Diverse Density ) are investigated against three supervised learners Naïve Bayes, Multi-layer Perceptron and logistic Regression \hyperref[b7]{[8]}.\par
A feature selection algorithm is proposed in \hyperref[b13]{[13]} that decrease the number of features used by a machine learning classifier for fault prediction. Perform a feature selection process using gain ratio to reduce the set of features in an iterative form. These reduced features are then used to train the two classification model i.e. Naïve Bayes and SVM. Finally the performance of two classifier are assessed in terms of overall prediction accuracy, buggy precision, recall, Fmeasure, and ROC area under curve (AUC). 
\section[{d) Need of accurate defect prediction model}]{d) Need of accurate defect prediction model}\par
The paper \hyperref[b1]{[2]} present a software defect prediction model based on random forest which is more robust to outliers and noise than other classifiers and beneficial for large-scale software system. They applied Random forest on five different data set of NASA project using two machine learning tools WEKA and See5. Finally they compare the accuracy of random forest with other statistical methods such as logistic regression and discriminant analysis.\par
Earlier studies have addressed the use of evolutionary decision tree in classification of defective and non-defective modules. But in \hyperref[b3]{[4]} author used Evolutionary decision tree in a multi population genetic algorithm. SAEDT is applied on promise dataset using software metrics. The result shows better generalization and higher accuracy.\par
In \hyperref[b4]{[5]} a two step data mining model is proposed to predict software bug estimation. In first step, a weighted similarity model is used to match the summary and description of new bug from the previous bug in the bug repository. In the second step calculate the duration of all the bugs and the average is calculated.\par
The authors \hyperref[b21]{[21]} criticized that data transformation can improve defect prediction model. They proved it with four data transformation methods applied on ten software quality models on nine dataset from MDP. The performances of models are compared through different test i.e. the Friedman test, the Nemenyi test and the Wilcoxon test. 
\section[{e) Need of a Consistent data mining technique}]{e) Need of a Consistent data mining technique}\par
This paper focused on using and comparing the performance of different machine learning algorithms to build a prediction models based on source code measures and history data. Confusion matrix may be inappropriate for evaluation criteria. Nine different machine learning algorithms are used to build prediction models for a java legacy system to identify the fault prone modules. Compare the performance of each model using confusion matrix and cost sensitive criteria \hyperref[b0]{[1]}. 
\section[{September}]{September}\par
In \hyperref[b5]{[6]}, author Evaluate the performance of five data mining algorithm named J48, CART, Random Forest, BFTree and Naïve Bayesian classifier (NBC). The performances of algorithms are evaluated using WEKA tool on software metric dataset KC2 from NASA database. Cross validation test are applied to verify the results. Result shows that performance of algorithm is depends on various factors like problem domain , nature of dataset etc.\par
Another comparison is done in \hyperref[b9]{[10]}. This paper compares the three most used data mining techniques. The performance of J48 is better than ONER and ONER is better than Naïve Bayes. Two datasets having 1212 modules and 101 modules was used to evaluate the performance of three machine learning algorithms i.e. J48 , ONER and Naïve Bayes with the help of WEKA tool.10 fold cross validation was applied to confirm the result.\par
Performances of five classifier prediction model based only on the size of modules measured in LOC are evaluated. Data sets from NASA MDP are used to evaluate the performance of trial defect prediction model based only on the size of modules measured in LOC. Compare the performance of five classifier including Naive Bayes, Logistic Regression, CART decision tree learner, bagging and random forest.When model is evaluated using AUC it shows surprising well results while evaluated using proposed performance measure, the result becomes worst \hyperref[b15]{[15]}.\par
Researchers \hyperref[b17]{[17]} evaluate the performance of different fault prediction techniques on different real time software data sets. But no particular technique that prove consistently accurate. Seven different learning methods are applied on Real time data sets from NASA MDP repository to predict the fault prone modules. Also different methods are trained to combine with statistical method PCA. Assess the performance of machine learning algorithm.\par
MCLP method to build a better prediction model and assess the performance by comparing with other classification algorithm was reported in \hyperref[b7]{[8]}. Different method are used for generating prediction model include C4.5, Decision Tree, Support Vector Machine (SVM), Neural Network(NN) and Multiple Criteria Linear Programming (MCLP) and applied to data set taken from NASA MDP. Assess the performance of the prediction models based on accuracy, probability of detection (PD), and probability of false alarm (PF).\par
While in \hyperref[b19]{[19]}, author proposed an ideal a software defect management system based on data mining techniques and data mining models. Proposed methodology of this paper based on three data mining techniques classification, clustering and association rule with two specific data mining models Bayesian Network and Probabilistic Relational Model.\par
V. 
\section[{CONCLUSIONS}]{CONCLUSIONS}\par
Defects can assess in directing the software quality assurance measures as well as improve software management process if developers find and fix them early in the software life cycle.\par
Effective Defect prediction is based on good data mining model. In this we surveyed different data mining algorithms used for defect prediction. We also discuss the performance and effectiveness of data mining algorithms. This survey also has showed that all the issues for selecting a data mining technique for defect prediction and their provided solutions have been discussed.\par
Our most important finding is that there is no single data mining technique that is more powerful or suitable for all type of projects. In order to select a better data mining algorithm, domain expert must consider the various factors like problem domain, type of data sets, nature of project, uncertainty in data set etc. Multiple classifiers were combined by majority voting of experts to get more accurate result.\par
Our findings indicate that early life cycle data can be highly effective in defect prediction. However, a combination of different data sources can utilize to get better prediction results.\par
Another finding of this paper is Sampling method are useful to improve performance when dataset are highly skewed. Data transformation cannot improve the performance of defect prediction. Integration of discretization method with classification algorithm improves the defect prediction accuracy by transforming the continuous features into discrete features. However different techniques are applied in identifying defects for large features and high level software modules. and find out whether the cost sensitive learning algorithms can be used to build better defect prediction models. 
\section[{VI. FUTURE WORK AND OPEN ISSUES}]{VI. FUTURE WORK AND OPEN ISSUES}\begin{figure}[htbp]
\noindent\textbf{}\includegraphics[]{image-2.png}
\caption{\label{fig_0}}\end{figure}
   			\footnote{© 2011 Global Journals Inc. (US) Global Journal of Computer Science and Technology Volume XI Issue XVI Version I 3} 			\footnote{© 2011 Global Journals Inc. (US) Global Journal of Computer Science and Technology Volume XI Issue XVI Version I 4} 			\footnote{© 2011 Global Journals Inc. (US) Global Journal of Computer Science and Technology Volume XI Issue XVI Version I 5} 			\footnote{September} 			\footnote{© 2011 Global Journals Inc. (US) Global Journal of Computer Science and Technology Volume XI Issue XVI Version I 6 2011 September This page is intentionally left blank} 		 		\backmatter  			  				\begin{bibitemlist}{1}
\bibitem[ Euromicro Conference on Software Engineering and Advanced Applications]{b11}\label{b11} 	 		\textit{},  	 	 		\textit{Euromicro Conference on Software Engineering and Advanced Applications}  		p. .  	 
\bibitem[Sandhu et al. ()]{b8}\label{b8} 	 		‘A Model for Early Prediction of Faults in Software Systems’.  		 			P S Sandhu 		,  		 			R Goel 		,  		 			A S Brar 		,  		 			J Kaur 		,  		 			S Anand 		.  	 	 		\textit{The 2nd International Conference on Computer and Automation Engineering (ICCAE)},  				2010. p. .  	 
\bibitem[Li and Reformat ()]{b23}\label{b23} 	 		‘A practical method for the software fault-prediction’.  		 			Z Li 		,  		 			M Reformat 		.  		 \url{24.en.wikipedia.org/wiki/Software\textunderscore bug25.www.cs.umd.edu/projects/SoftEng/ESEG/papers/82.78.pdf}  	 	 		\textit{IEEE International Conference on Information Reuse and Integration},  				2007. IRI 2007. p. .  	 
\bibitem[Singh and Verma ()]{b6}\label{b6} 	 		‘An Investigation of the Effect of Discretization on Defect Prediction Using Static Measures’.  		 			P Singh 		,  		 			S Verma 		.  	 	 		\textit{IEEE International Conference on Advances in Computing, Control, and Telecommunication Technologies},  				2009. p. .  	 
\bibitem[Jiang et al. ()]{b21}\label{b21} 	 		‘Can data transformation help in the detection of fault-prone modules?’.  		 			Y Jiang 		,  		 			B Cukic 		,  		 			Menzies 		.  	 	 		\textit{Proceedings of the 2008 workshop on Defects in large software systems},  				 (the 2008 workshop on Defects in large software systemsSeattle, Washington)  		July 20-20, 2008. p. .  	 
\bibitem[Singh ()]{b9}\label{b9} 	 		‘Comparing the effectiveness of machine learning algorithms for defect prediction’.  		 			P Singh 		.  	 	 		\textit{International Journal of Information Technology and Knowledge Management}  		2009. p. .  	 
\bibitem[Arisholm et al.]{b0}\label{b0} 	 		‘Data Mining Techniques for Building Fault-proneness Models in Telecom Java Software’.  		 			E Arisholm 		,  		 			L C Briand 		,  		 			M Fuglerud 		.  	 	 		\textit{Proceedings of The 18th IEEE International Symposium on Software Reliability},  				 (The 18th IEEE International Symposium on Software Reliability)  		p. .  	 
\bibitem[Challagulla et al. ()]{b17}\label{b17} 	 		‘Empirical Assessment of Machine Learning based Software Defect Prediction Techniques’.  		 			V U B Challagulla 		,  		 			F B Bastani 		,  		 			I Yen 		,  		 			R A Paul 		.  	 	 		\textit{Proceedings of the 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems},  				 (the 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems)  		2005. p. .  	 
\bibitem[Jiang et al. ()]{b20}\label{b20} 	 		‘Fault Prediction using Early Lifecycle Data’.  		 			Y Jiang 		,  		 			B Cukic 		,  		 			T Menzies 		.  	 	 		\textit{Proceedings of The 18th IEEE International Symposium on Software Reliability},  				 (The 18th IEEE International Symposium on Software Reliability)  		2007. p. .  	 
\bibitem[Menzies et al. ()]{b16}\label{b16} 	 		‘Implications of ceiling effects in defect predictors’.  		 			T Menzies 		,  		 			B Turhan 		,  		 			A Bener 		,  		 			G Gay 		,  		 			B Cukic 		,  		 			Y Jiang 		.  	 	 		\textit{Proceedings of the 4th international workshop on Predictor models in software engineering},  				 (the 4th international workshop on Predictor models in software engineeringLeipzig,Germany)  		2008. p. .  	 
\bibitem[Metrics for Module Defects Identification International Journal of Computer and Information Science ()]{b3}\label{b3} 	 		‘Metrics for Module Defects Identification’.  	 	 		\textit{International Journal of Computer and Information Science}  		2008. p. .  	 
\bibitem[Gayatri et al. ()]{b5}\label{b5} 	 		‘Performance Analysis of Data Mining Algorithms for Software Quality Prediction’.  		 			N Gayatri 		,  		 			S Nickolas 		,  		 			A V Reddy 		,  		 			R Chitra 		.  	 	 		\textit{International Conference on Advances in Recent Technologies in Communication and Computing},  				2009. p. .  	 
\bibitem[Huang and Zhu]{b7}\label{b7} 	 		‘Predicting Defect-Prone Software Modules at Different Logical Levels’.  		 			P Huang 		,  		 			J Zhu 		.  	 	 		\textit{International Conference on Research Challenges in Computer Science, 2009. ICRCCS '09},  				p. .  	 
\bibitem[Zhao et al. ()]{b18}\label{b18} 	 		‘Predicting Software Defects using Multiple Criteria Linear Programming’.  		 			X Zhao 		,  		 			Y Liu 		,  		 			S Yong 		.  	 	 		\textit{Proceedings of the International Symposium on Intelligent Information Systems and Applications (IISA'09)},  				 (the International Symposium on Intelligent Information Systems and Applications (IISA'09))  		2009. p. .  	 
\bibitem[Nagwani and Verma]{b4}\label{b4} 	 		‘Predictive Data Mining Model for Software Bug Estimation Using Average Weighted Similarity’.  		 			N K Nagwani 		,  		 			S Verma 		.  	 	 		\textit{2010 IEEE 2nd International Advance Computing Conference},  				p. .  	 
\bibitem[Shivaji et al.]{b13}\label{b13} 	 		‘Reducing Features to Improve Bug Prediction’.  		 			S Shivaji 		,  		 			E J Whitehead 		,  		 			R Akella 		,  		 			S Kim 		.  	 	 		\textit{24th IEEE/ACM International Conference on Automated Software Engineering, ASE'09},  				p. .  	 
\bibitem[Chen et al. ()]{b19}\label{b19} 	 		‘Research on software defect prediction based on data mining’.  		 			Y Chen 		,  		 			X Shen 		,  		 			P Du 		,  		 			B Ge 		.  	 	 		\textit{The 2nd International Conference on Computer and Automation Engineering (ICCAE)},  				2010. p. .  	 
\bibitem[Mende and Koschke ()]{b15}\label{b15} 	 		‘Revisiting the Evaluation of Defect Prediction Models’.  		 			T Mende 		,  		 			R Koschke 		.  	 	 		\textit{Proceedings of the 5th International Conference on Predictor Models in Software Engineering},  				 (the 5th International Conference on Predictor Models in Software Engineering)  		2009.  	 
\bibitem[Guo et al. ()]{b1}\label{b1} 	 		‘Robust prediction of fault-proneness by random forests’.  		 			L Guo 		,  		 			Y Ma 		,  		 			B Cukic 		,  		 			H Singh 		.  	 	 		\textit{Proceedings of the 15th International Symposium on Software Reliability Engineering},  				 (the 15th International Symposium on Software Reliability Engineering)  		2004. p. .  	 
\bibitem[Khoshgoftaar et al. ()]{b14}\label{b14} 	 		\textit{Software quality analysis by combining multiple projects and learners},  		 			T M Khoshgoftaar 		,  		 			P Rebours 		,  		 			N Seliya 		.  		2009. Springer. 17 p. .  	 
\bibitem[Shafi et al. ()]{b12}\label{b12} 	 		‘Software quality prediction techniques: A comparative analysis’.  		 			S Shafi 		,  		 			S M Hassan 		,  		 			A Arshaq 		,  		 			M J Khan 		,  		 			S Shamail 		.  	 	 		\textit{4th International Conference on Emerging Technologies},  				2008. ICET 2008. p. .  	 
\bibitem[Kamei et al. ()]{b22}\label{b22} 	 		‘The effect of over and under sampling on fault-prone module detection’.  		 			Y Kamei 		,  		 			A Monden 		,  		 			S Matsumoto 		,  		 			T Kakimoto 		,  		 			K Matsumoto 		.  	 	 		\textit{First International Symposium on Empirical Software Engineering and Measurement},  				2007.ESEM 2007. p. .  	 
\bibitem[Li and Leung]{b2}\label{b2} 	 		‘Using the Number of Faults to Improve Fault-Proneness Prediction of the Probability Models’.  		 			L Li 		,  		 			H Leung 		.  	 	 		\textit{Proceedings of the 2009 WRI World Congress on Computer Science and Information Engineering},  				 (the 2009 WRI World Congress on Computer Science and Information Engineering)  		07 p. .  	 
\bibitem[Ramler et al. ()]{b10}\label{b10} 	 		\textit{What Software Repositories Should Be Mined for Defect Predictors?},  		 			R Ramler 		,  		 			S Larndorfer 		,  		 			T Natschläger 		.  		2009. p. 35.  	 
\end{bibitemlist}
 			 		 	 
\end{document}
