PERFORMANCE ANALYSIS OF RELIABILITY, QUALITY AND METRIC ANALYSIS FAULT PREDICTION ASSESSMENT FOR SOFTWARE TESTING

: In present situation, computer and internet are plays a significant role among people. Generally, enormous amount of software’s are developed by industries for satisfying the needs of customer and user which also helps to enhance their facilities. In the development of network filed, errors, faults, failures, system complexity, compromising software reliability and quality are considered as major issues. So, the software testing is necessary to maintain customer’s reliability and to ensure the quality of the product. Software testing helps to improve and find defects that are made during the development phases. The Software Fault Prediction (SFP) is the one of the essential and main research topic in the area of software engineering. According to software modules, software fault prediction handles the limited test resources in an efficient manner by effective prediction of fault proneness. Some resource and research methods are implemented with classification methods for separating the software modules into faulty and non-faulty. Based on features or metrics collected from each software modules, the results are provided by mining of software development repositories. Our research work is carried out to provide better software reliability, quality and fault prediction through software testing.


INTRODUCTION:
The software system mainly is enclosed with some features such as functionality, reliability, availability, quality, safety and maintainability. In software development projects, software reliability and quality takes vital importance than other features. The software reliability, quality and fault prediction are mainly prepared by the stakeholders, developers, end users. The main objective of software engineering practices is to ensure high quality software. Software quality assurance (SQA) is used to monitor the software engineering processes and methods which aid to provide effective quality. The reliability of software system is a critical issue in software analysis. In the area of software testing, software reliability testing ensure the testing a software ability to perform within a specified environmental conditions for particular amount of time. Software reliability testing is aids to identify many problems in the software design and functionality. Fault prediction techniques are used to categorize the dependability actions of operational system in industrial sectors. Fault prediction technique discovers the system failure modes, failure causes and occurrence prevention which help to enhance the system dependability in future. The feature of fault detection process helps to minimize the rate as testing time progresses. The detection of software faults definitely enhances the reliability and quality in costefficient way. This paper is organized as follows: Section II discusses reviews on software fault, reliability and quality prediction techniques, Section III describes the existing software quality, reliability assessment techniques and fault prediction techniques, Section IV identifies the possible comparison between them, Section V explains the limitations and Section VI concludes the paper, key areas of research is given as to perform the prediction for software faults to provide better reliability and quality.

LITERATURE SURVEY
Software reliability prediction is implemented in [1], with two features such as Software Metrics and Fuzzy Logic. The main objective of this work is to evaluate, investigate and discuss the some methods for software reliability prediction. According to reliability of relevant metrics or Fuzzy Logic, few reliability prediction models are developed. The metric based technique and Fuzzy Logic are designed to achieve not only software reliability but also helps to provide software quality. With the help of fuzzy logic, suitable software metric is selected whereas reliability also predicted. The fuzzy logic is utilized to symbolize the ambiguity, apprehension and defect in the information. Fuzzy logic technique develops reliability prediction with minimum maintenance cost. It also finds out the absence of failure data, while early product development stages. In the measurement of software reliability, prediction time plays significant issue. The Reliability Assessment and Improvement (RELAI) technique is developed in [2], for enhancing delivered reliability. In RELAI, an adaptive sampling approach is implemented to provide continuous assessment of reliability with the help of testing and fault removal. Adaptive sampling approach removes the saturation with the removal of high occurrence failures while considering low occurrence. In RELAI, uncertainty is a major attribute which aids to ensure improved reliability and inaccurate share prediction also finished through profile error. However, In RELAI, the reliability is not considered and development in relation between uncertainties associated with operational profile also remained unsolved. Based on two contributions, metamorphic testing is extended into user-oriented approach is used in [3], to attain software verification, validation, and quality assessment. In the first contribution, oracle and lack of specification problem is solved through validation, software verification and quality assessment. Metamorphic testing and useroriented testing approach are established by this approach. Metamorphic testing is developed to identify the number of metamorphic relations and their corresponding quality metrics are made in detail. In this approach, user-oriented approach discovers the different types of failures which aid to improve the software quality. But, metamorphic testing is failed to identify the failures automatically.

SOFTWARE FAULT PREDICTION TECHNIQUES
The main goal of software engineering is performed to make effective design with better development in software quality. Since, it becomes significant task in the software field while developing the methods for different types of software qualities. While handling software projects, ensuring of quality assurance at each level starting from specification to coding and integration is considered to be critical concern. Hence, software testing method is mainly used for software quality assessment to discover and remove the software faults.
Software testing is carried out to find out the failures and to provide prediction from detection. Software testing has different practical challenges to improve reliability prediction and their assessment. Software metrics are used in fault prediction for enhancing software quality by predicting fault location. The software fault detection directly improves the reliability and quality of software in an efficient manner.

Improving of software reliability by RELAI testing
An integrated technique as Reliability Assessment and Improvement (RELAI) testing is planned to enhance the final delivered reliability and to achieve at the same time, accurate assessment of reliability during testing and fault removal within the same testing session. RELAI testing is implemented as a conventional operational profile based testing which helps to address the low-occurrence failures problem and inaccurate profile issues.
RELAI combines test selection method for reliability improvement and reliability assessment. RELAI is employed with adaptive sampling approach to discover test execution results which assume test cases to the most reliability impacting input regions. For providing better results, the saturation of the conventional operational testing is removed by adaptive strategy. RELAI illustrates the selection toward the low-occurrence ones when highoccurrence failures are discarded.
During testing, second sampling strategy is performed for achieving the interval estimate of attained reliability. By operational testing, Reliability assessment is carried out while assuming the code being frozen (i.e., no bugs are removed during testing). RELAI avoids this assumption to solve the problem of reliability improvement and assessment in the same testing stage by removing defects. RELAI evaluates the error on reliability estimate which is caused by tester specified highest acceptable error on the profile estimate.
The RELAI testing is developed to achieve better solution to avoid high-occurrence trouble with minimum epistemic uncertainty results caused by inaccurate profile issues. RELAI offers exact reliability delivering evaluation than other method and also estimate impact of error in profile on approximate reliability accuracy. The result from RELAI is used for developing several testing policies such as improving the reliability and minimizing the testing effort to achieve reliability goal on the basis of maximum tolerable profile error.

Metamorphic Testing for Software Quality Assessment
Metamorphic Testing (MT) approach is the sufficient method which creates a unified framework with software verification, validation and quality assessment. The software verification, validation and quality assessment are ensured by addressing of oracle problem and lack of specification problems. MT efficiently carried out the search engines, while identifying users' perspectives by Metamorphic Relations (MRs) without referring to the target algorithms or system specifications.
By comparing different operational profiles, the major search engines are successfully investigated through this approach. Detecting of operational profiles includes significant impact on quality of search which different from different query languages, different query words and different domains being searched by using search engine. Metamorphic Testing (MT) approach provides hint for developers to detect strength and weakness of their systems. The select suitable search engine is selected by Metamorphic Testing (MT)..
MT approach is used to reduce the oracle and lack of specification problems while authenticating, evaluating huge complex software systems. MT system provides efficiently access the search engine quality developers like Google, Bing, Chinese Bing, and Baidu.

Two-Stage Data Preprocessing Approach
For performing fault detection, two stage data preprocessing approach is introduced with feature selection and instance reduction. In the Ranking and Clustering based Feature Selection, feature ranking and threshold based clustering in sequence is executed successfully. Initially, feature selection is carried out with relevance analysis in the feature ranking. The relevant analysis helps to discard the irrelevant features. Since, Threshold-based clustering handles only the relevant features successfully. The Threshold-based clustering method is performed to evaluate the redundancy control. Through this redundancy control, redundant features also removed from software datasets.
In instance reduction stage, a random undersampling technique is introduced to maintain balance between faulty and non-faulty instances. The performance of fault prediction is enhanced while balancing of instances. With the application of random under-sampling technique Non-fault-prone (NFP) instances are reduced. Through Random Sampling, Two-stage data pre-processing approach is used to enhance the quality of software datasets. The classification for software faults is improved by performing feature selection and instance sampling through Two-stage data pre-processing approach is described in figure 3.1.

PERFORMANCE ANALYSIS OF SOFTWARE RELIABILITY, QUALITY AND METRIC NALYSIS FAULT PREDICTION ASSESSMENT TECHNIQUES
In order to compare the software reliability, quality and fault prediction using different techniques, number of test cases is taken to perform the experiment. Various parameters are used for software fault prediction.

Software Reliability Prediction Rate
Software Reliability Prediction Rate is defined as the rate at which a measurement about how well it provides the reliable services with the user expectations. It is defined as prediction of failure rate of the components and overall system reliability. Software Reliability Prediction Rate is measured in terms of percentage (%). When many software failures occurred, the system is said to be less reliable. When the Software Reliability Prediction Rate is high, then the method is said to be efficient.

Metric Analysis Fault Prediction Accuracy
The Fault Prediction Accuracy is measured as the rate of the number of faults is correctly predicted from software testing by using different fault prediction techniques. The Fault Prediction Accuracy is measured in terms of percentage (%). When the Fault Prediction Accuracy is higher, then the method is said to be efficient.  Preprocessing Approach increases the Fault Prediction Accuracy than the methods as RELAI testing, Metamorphic Testing. As the number of test cases increases the Fault Prediction Accuracy gets increased accordingly. Hence, the performance of Fault Prediction Accuracy is improved up to 23% by the Two-Stage Data Preprocessing Approach when compared with RELAI testing and improves 36% when compared with Metamorphic Testing.

DISCUSSION ON LIMITATION OF RELIABILITY, QUALITY AND METRIC ANALYSIS FOR FAULT PREDICTION ASSESSMENT TECHNIQUES
Fuzzy Logic Technique was used to enhance the software reliability successfully. However, it leads to increase the maintenance cost of the system. The predictions of faults in the absence of field failure data before testing phase were remained unaddressed. Reliability Assessment and Improvement (RELAI) testing technique address the number of unobserved failure region becomes a set of correct input points that are still presented. Metamorphic Testing (MT) approach was difficult to identify fault automatically.
Though Metamorphic Testing (MT) approach improves the quality of search engine system, but it failed to consider the response time. In the open source framework, Integrated Metrics was not easy to provide quality. Investigating the inter-relations between feature selection and instance reduction methods were remained unsolved. Slice-based cohesion metrics was not suitable to analyze object-oriented system. Slice-based cohesion metrics approach was not effectively identifies the actual software attributes and lack of data.

5.1
Future Direction The future direction of the fault prediction assessment analysis is to achieve fast prediction in software failures by using different prediction methods with better fault detection rate. In future work, we introduce effective methods for detecting failures automatically through the selection of metrics with improved software quality. Another, future development in software analysis is executed to propose a new searching algorithm for provide good reliability prediction assessment.

6.
CONCLUSION In this paper, survival study is carried out for achieving effective reliability with enhanced software quality level and fault prediction. The efficiency of software fault prediction techniques are tested with the metrics such as Software Reliability Prediction Rate, Software Failure Detection Time and Fault Prediction Accuracy. The experiments are conducted on existing methods as RELAI testing, Metamorphic Testing and Two-Stage Data Preprocessing Approach which achieve comparative results to attain software reliability, better quality and fault prediction through software testing. With the simulations conducted for RELAI testing and Two-Stage Data Preprocessing Approach, it is observed that improves the Software Reliability Prediction Rate and Fault Prediction Accuracy respectively. The Metamorphic Testing reduces the Software Failure Detection Time as compared to stateof-the-art works. Finally, further research work is performed with effective reliability and quality assessment with improved fault prediction by software testing.