Content area
Full text
1. Introduction
The increasing dependency of businesses on software driven systems has led to the need for delivery of quality software at lower costs. Every software undergoes its life cycle which is commonly referred as Software Development Life Cycle (SDLC). Defects or faults occur in the software during its development since this process is human-centric. These faults if detected early in the life cycle of the software will result in timely correction of faults at lower cost well before the software is released in the market. A number of papers discuss various methods of fault prediction, fault estimation, inspection which will help in early identification of defects. Defect prediction/correction will lead to reliable software. The focus of reliability evaluation of software is on modeling and analysis of techniques for fault prediction/detection and determination of the optimum time at which to stop testing and release the software. Quality of developed software has been of concern for the past several years. Quality is defined as conformance to requirements (Kan, 2002). A software product is of high quality if there are no defects in the product. If a software contains many functional defects, then the primary requirement of providing the desired functionality is not met. This quality definition is expressed in two ways: (1) number of defects and (2) reliability, which is defined in terms of probability of failure free operation in a specified time or number of failures per n hours of operation or mean time to failure. Several techniques for quality improvement such as CMMI, Total Quality Management, Six Sigma Methodology and Lean Production have been adapted for software. Software companies have initiated Six Sigma projects for improvement of software development processes for different life cycle phases in order to deliver products of high quality. Another important activity in software project management is software cost/effort estimation which involves estimating the cost/effort required in developing a software project. Underestimation and overestimation lead to losing contracts for companies or failure in software project management. The success of any software project depends on the accuracy of cost/effort estimation and hence effort estimation remains a challenge for software project managers. Software effort estimation is done by considering the number of defects that are detected and removed in all the phases...





