1. A computer implemented method, in a data processing system, for detecting fraud, the computer implemented method comprising: a plurality of steps performed by a processor in the data processing system, the plurality of steps comprising: receiving a set of historical data stored in a customer behavior database; identifying a plurality of control points in the set of historical data using a data analysis module, further comprising: performing a statistical analysis on the set of historical data for identifying a plurality of outliers, wherein the plurality of outliers are identified by the statistical analysis as a set of significantly different data points in a distribution of the set of historical data; and performing data mining techniques on the plurality of outliers to distinguish between a first set of outliers and a second set of outliers, wherein the first set of outliers are classified by the data mining techniques as non-fraudulent outliers and the second set of outliers are classified by the data mining techniques as fraudulent outliers, and wherein the first set of outliers are identified as the plurality of control points; building at least one data model based on the plurality of control points, further comprising: generating a fence that passes through the plurality of control points to define a boundary between data points, wherein the fence comprises line segments connecting the plurality of control points to form a continuous line for the boundary, and wherein data points inside or on the boundary of the fence represent acceptable behavior and data points outside the boundary of the fence represent fraudulent behavior; receiving a set of updated data, wherein the set of updated data includes a plurality of current data stored in the customer behavior database; identifying one or more new control points based on the set of updated data using the data analysis module, further comprising: performing a statistical analysis on the set of updated data for identifying an additional plurality of outliers, wherein the additional plurality of outliers are identified by the statistical analysis as an additional set of significantly different data points in a distribution of the set of updated data; and performing data mining techniques on the additional plurality of outliers to distinguish between a third set of outliers and a fourth set of outliers, wherein the third set of outliers are classified by the data mining techniques as non-fraudulent outliers and the fourth set of outliers are classified by the data mining techniques as fraudulent outliers, and wherein the third set of outliers are identified as the one or more new control points; adjusting the at least one data model to form an adjusted fence, within the at least one data model, based on the one or more new control points, wherein the at least one data model is refined for a plurality of iterations, further comprising: generating the adjusted fence that passes through the plurality of control points and the one or more new control points to define a new boundary between data points, wherein the adjusted fence comprises line segments connecting the plurality of control points and the one or more new control points to form a new continuous line for the new boundary, and wherein data points inside or on the new boundary of the adjusted fence represent acceptable behavior and data points outside the new boundary of the adjusted fence represent fraudulent behavior; and verifying a transaction based on the adjusted fence.