Software engineering economics (original) (raw)

Software Cost Estimation Techniques Using Soft Computing

The software cost estimation is the process of predicting the most realistic amount of effort required to develop or maintain software based on incomplete, uncertain and noisy input. Effort estimates may be used as input to project plans, iteration plans, budgets, and investment analyses, pricing processes and bidding rounds. For example, estimation of value estimation and danger examination is a real issue in programming undertaking administration. As programming advancement has turned into a fundamental speculation for some associations, precise programming expense estimation models are expected to adequately foresee, screen, control and evaluate programming improvement. Programming expense estimation is a testing and cumbersome errand. Then again, the approach utilized for the estimation of programming exertion by relationship is not ready to handle the unmitigated information in an unequivocal and exact way. The nature of an expense estimation model is less ascribed to the introductory assessment, but instead the pace at which the appraisals merges to the genuine expense of the task. COCOMO is a well known algorithmic model for expense estimation whose expense variables can be customized to the individual improvement environment, which is imperative for the precision of the expense gauges. More than one strategy for expense estimation ought to be carried out so that there is some correlation accessible for the evaluations. This is particularly imperative for extraordinary undertakings. Cost estimation must be done more diligently throughout the project life cycle so that in the future there are fewer surprises and unforeseen delays in the release of a product. In this paper, we present a soft computing framework to tackle this challenging problem. Estimating the work-effort and the schedule required to develop and/or maintain a software system is one of the most critical activities in managing software projects.

A Novel Fuzzy based Approach for Effort Estimation in Software Development

Accurate and credible software effort estimation is always a challenge for academic research and software industry. In the beginning, estimation was carried out using only human expertise or algorithmic models, but more recently, interest has turned to a range of Soft Computing techniques. New paradigms such as Fuzzy Logic enable a choice for software effort estimation. Constructive Cost Model (COCOMO) is considered to be the most widely used model for effort estimation. Effort drivers have immense influence on COCOMO and this paper investigates the role of cost drivers (effort features) in improving the precision of effort estimation using Fuzzy Logic. Fuzzy logic-based estimation models are more appropriate when indistinct and incorrect information is to be used. This paper aims at estimating effort in an efficient way using a Fuzzy technique. For this purpose, the COCOMO81 dataset and the Fuzzy Inference System (FIS) of MATLAB are used for implementation. At the end, the outcomes are compared against traditional methods using parameters like Mean Magnitude of Relative Error (MMRE) and Pred (25).

Optimized Fuzzy Logic Based Framework for Effort Estimation in Software Development

Computing Research Repository, 2010

Software effort estimation at early stages of project development holds great significance for the industry to meet the competitive demands of today's world. Accuracy, reliability and precision in the estimates of effort are quite desirable. The inherent imprecision present in the inputs of the algorithmic models like Constructive Cost Model (COCOMO) yields imprecision in the output, resulting in erroneous effort estimation. Fuzzy logic based cost estimation models are inherently suitable to address the vagueness and imprecision in the inputs, to make reliable and accurate estimates of effort. In this paper, we present an optimized fuzzy logic based framework for software development effort prediction. The said framework tolerates imprecision, incorporates experts knowledge, explains prediction rationale through rules, offers transparency in the prediction system, and could adapt to changing environments with the availability of new data. The traditional cost estimation model COCOMO is extended in the proposed study by incorporating the concept of fuzziness into the measurements of size, mode of development for projects and the cost drivers contributing to the overall development effort.

RELATIVE ANALYSIS OF SOFTWARE COST AND EFFORT ESTIMATION TECHNIQUES

IASET, 2013

Software effort estimation is a very critical task in the software engineering and to control quality and efficiency a suitable estimation technique is crucial. This paper gives a comparative analysis of various available software effort estimation techniques. These techniques can be widely categorised under algorithmic model, non-algorithmic model, parametric model, and machine learning models. The use of a model that accurately calculates the cost and effort of developing a software product can be a key to the success of whole development project. This paper presents a detailed analysis of several existing methods for software cost estimation. No single technique is best for all situations, and thus a careful comparison of the results of several approaches is most likely to produce realistic estimate.

A Novel Algorithmic Cost Estimation Model Based on Soft Computing Technique

Journal of Computer Science, 2010

Problem statement: Software development effort estimation is the process of predicting the most realistic use of effort required for developing software based on some parameters. It has always characterized one of the biggest challenges in Computer Science for the last decades. Because time and cost estimate at the early stages of the software development are the most difficult to obtain and they are often the least accurate. Traditional algorithmic techniques such as regression models, Software Life Cycle Management (SLIM), COCOMO II model and function points, require an estimation process in a long term. But, nowadays that is not acceptable for software developers and companies. Newer soft computing techniques to effort estimation based on non-algorithmic techniques such as Fuzzy Logic (FL) may offer an alternative for solving the problem. This work aims to propose a new fuzzy logic realistic model to achieve more accuracy in software effort estimation. The main objective of this research was to investigate the role of fuzzy logic technique in improving the effort estimation accuracy by characterizing inputs parameters using two-side Gaussian function which gave superior transition from one interval to another. Approach: The methodology adopted in this study was use of fuzzy logic approach rather than classical intervals in the COCOMO II. Using advantages of fuzzy logic such as fuzzy sets, inputs parameters can be specified by distribution of its possible values and these fuzzy sets were represented by membership functions. In this study to get a smoother transition in the membership function for input parameters, its associated linguistic values were represented by twoside Gaussian Membership Functions (2-D GMF) and rules. Results: After analyzing the results attained by means of applying COCOMO II and proposed model based on fuzzy logic to the NASA dataset and created an artificial dataset, it had been found that proposed model was performing better than ordinal COCOMO II and the achieved results were closer to the actual effort. The relative error for proposed model using two-side Gaussian membership functions is lower than that of the error obtained using ordinal COCOMO II. Conclusion: Based on the achieved results, it was concluded that, using soft computation approaches such as fuzzy logic and their advantages, good predication; adaption; understandability and the accuracy of software effort estimation can be improved and the estimation can be very close to the actual effort. This novelty model will lead researchers to focus on benefits of non-algorithmic models to overcome the estimation problems.

Comparative Analysis of COCOMO81 using Various Fuzzy Membership Functions

International Journal of Computer Applications, 2012

Software Estimation has always been one of the prompting challenges for the software engineers. Software cost estimation techniques helps in forecasting the amount of effort required to develop software. Constructive Cost Model (COCOMO) is considered to be the most widely used model for effort estimation. Cost drivers have great influence on the COCOMO and this paper investigates the role of cost drivers in improving the precision of effort estimation using different membership functions. Fuzzy logic-based estimation models are more suitable when formless and inaccurate information is to be used. The proposed fuzzy COCOMO model consists of a collection of linear submodels joined together smoothly using fuzzy membership functions. This paper focus on the comparative analysis of COCOMO81 using various fuzzy membership functions. The present work is based on COCOMO81 dataset and the experimental part of the study illustrates the approach and compares it with the standard version of the COCOMO81. It has been found that Fuzzy based COCOMO model gives better performance when compared to the COCOMO81, demonstrating a smoother transition in its intervals, and the achieved results were closer to the actual effort.

Can neural networks be easily interpreted in software cost estimation?

2002 IEEE World Congress on Computational Intelligence. 2002 IEEE International Conference on Fuzzy Systems. FUZZ-IEEE'02. Proceedings (Cat. No.02CH37291), 2002

... community. Although, neural networks have shown their strengths in solving complexproblems, their shortcoming of being ' black boxes' models has prevented them from being accepted as a common practice for cost estimation. In ...