The software cost estimation aims to predict the most realistic effort that is required to finish a software project and so it is critical to the success of a software project management. A Software Cost Estimation affects nearly all management activities, including project bidding, resource allocation and project planning. It is affected by a number of factors, such as implementation efficiency, as well as how much the various reviews and studies completed prior to the software development stage cost. Accurate cost estimation will help us to complete the project on time and within budget. Accurate estimation is important because it has led to extensive research into the methods of software cost estimation. Some important software cost estimation methods have been studied in this research work. In addition, we have set out own criteria, which has been used to compare all the different selected methods. We have also given a score for each evaluation criteria, so that we can compare the different methods numerically for cost estimation. Our observations have shown that it is best to use a number of different estimating techniques or cost models, and then compare the results before determining the reasons for any of the large variations. None of the methods are necessarily better or worse than the others. We found, in fact, that their strengths and weaknesses often complement each other. Therefore, the main conclusion is that there is no one single technique that is best for every situation, and the results of a number of different approaches need to be carefully considered to discover what is the most likely to produce estimates that are realistic.
KeywordsSoftware Cost EstimationCOCOMO ModelParametric ModelsPutnam Model
Boehm, B., Abts, C. and Chulani, S. (2000) Software Development Cost Estimation Approaches—A Survey. Annals of Software Engineering, 10, 177-205. https://doi.org/10.1023/A:1018991717352
Ramesh, M.R. and Reddy, C.S. (2016) Difficulties in Software Cost Estimation: A Survey. International Journal of Scientific Engineering and Technology, 5, 10-13.
Ramacharan, S. and Rao, K.V.G. (2016) Scheduling Based Cost Estimation Model: An Effective Empirical Approach for GSD Project. IEEE 13th International Conference on Wireless and Optical Communications Networks (WOCN), Chicago, 21-23 July 2016, 1-5. https://doi.org/10.1109/WOCN.2016.7759881
Marinho, M., Sampaio, S., Lima, T. and Moura, H. (2014) A Systematic Review of Uncertainties in Software Project Management. arXiv Preprint arXiv:1412.3690.
Al-Qudah, S., Meridji, K. and Al-Sarayreh, K.T. (2015) A Comprehensive Survey of Software Development Cost Estimation Studies. Proceedings of the International Conference on Intelligent Information Processing, Security and Advanced Communication, ACM, 53. https://doi.org/10.1145/2816839.2816913
Galorath, D.D. and Evans, M.W. (2006) Software Sizing, Estimation, and Risk Management: When Performance Is Measured Performance Improves. CRC Press. https://doi.org/10.1201/9781420013122
Wu, L. (1997) The Comparison of the Software Cost Estimating Methods. University of Calgary, Calgary, 2-12.
Thamarai, I. and Murugavalli, S. (2017) Competitive Advantage of Using Differential Evolution Algorithm for Software Effort Estimation. Communication and Power Engineering, 62.
Kaushik, A., Chauhan, A., Mittal, D. and Gupta, S. (2012) COCOMO Estimates Using Neural Networks. International Journal of Intelligent Systems and Applications, 4, 22. https://doi.org/10.5815/ijisa.2012.09.03
Sommerville, I. (2006) Software Engineering. 8th Edition.
Venkataraman, R.R. and Pinto, J.K. (2011) Cost and Value Management in Projects. John Wiley & Sons.
Benediktsson, O. and Dalcher, D. (2005) Estimating Size in Incremental Software Development Projects. IEE Proceedings-Software, 152, 253-259. https://doi.org/10.1049/ip-sen:20050019
Boehm, B.W. (2017) Software Cost Estimation Meets Software Diversity. Proceedings of the 39th International Conference on Software Engineering Companion, 495-496. https://doi.org/10.1109/ICSE-C.2017.159
Aljahdali, S. and Sheta, A.F. (2010) Software Effort Estimation by Tuning COOCMO Model Parameters using Differential Evolution. IEEE/ACS International Conference on Computer Systems and Applications, 1-6. https://doi.org/10.1109/AICCSA.2010.5586985
Guide, P.M.B.O.K. (2004) A Guide to the Project Management Body of Knowledge. Project Management Institute, Vol. 3.
William Dow, P.M.P. and Taylor, B. (2010) Project Management Communications Bible. Vol. 574, John Wiley & Sons.
Boehm, B. (1981) Software Engineering Economics. Prentice Hall.
Boehm, B., Clark, B., Horowitz, E., Westland, C., Madachy, R. and Selby, R. (1995) Cost Models for Future Software Life Cycle Processes: COCOMO 2.0. Annals of Software Engineering, 1, 57-94. https://doi.org/10.1007/BF02249046
Musilek, P., Pedrycz, W., Sun, N. and Succi, G. (2002) On the Sensitivity of COCOMO II Software Cost Estimation Model. Proceedings 8th IEEE Symposium on Software Metrics, 13-20. https://doi.org/10.1109/METRIC.2002.1011321
Chen, Z., Menzies, T., Port, D. and Boehm, B. (2005) Feature Subset Selection Can Improve Software Cost Estimation Accuracy. ACM SIGSOFT Software Engineering Notes, 30, 1-6. https://doi.org/10.1145/1083165.1083171
Rastogi, H., Dhankhar, S. and Kakkar, M. (2014) A Survey on Software Effort Estimation Techniques. 5th International Conference on Confluence the Next Generation Information Technology Summit, 826-830. https://doi.org/10.1109/CONFLUENCE.2014.6949367
Waghmode, R.M., Patil, L.V. and Joshi, S.D. (2013) A Collective Study of PCA and Neural Network based on COCOMO for Software Cost Estimation. International Journal of Computer Applications, 74.
Putnam, L.H. (1978) A General Empirical Solution to the Macro Software Sizing and Estimating Problem. IEEE Transactions on Software Engineering, 4, 345-361. https://doi.org/10.1109/TSE.1978.231521
Kemerer, C.F. (1987) An Empirical Validation of Software Cost Estimation Models. Communications of the ACM, 30, 416-429. https://doi.org/10.1145/22899.22906
Leung, H. and Fan, Z. (2002) Software Cost Estimation. Handbook of Software Engineering, Hong Kong Polytechnic University, 1-14. https://doi.org/10.1142/9789812389701_0014
Jeffery, D.R. and Basili, V.R. (1988) Validating the Tame Resource Data Model. Proceedings of the 10th International Conference on Software Engineering, 187-201. https://doi.org/10.1109/ICSE.1988.93700
http://en.wikipedia.org/wiki/Putnam_model
Albrecht, A.J. (1979) Measuring Application Development Productivity. Proceedings of the Joint SHARE/GUIDE/IBM Application Development Symposium, 83-92.
Albrecht, A.J. (1984) AD/M Productivity Measurement and Estimate Validation. IBM Corporate Information Systems, IBM Corp., Purchase.
Sharma, N., Bajpai, A. and Litoriya, M.R. (2012) A Comparison of Software Cost Estimation Methods: A Survey. The International Journal of Computer Science and Applications, 1.
Kumar, K.V., Ravi, V., Carr, M. and Kiran, N.R. (2008) Software Development Cost Estimation using Wavelet Neural Networks. Journal of Systems and Software, 81, 1853-1867.
Rioul, O. and Vetterli, M. (1991) Wavelets and Signal Processing. IEEE Signal Processing Magazine, 8, 14-38. https://doi.org/10.1109/79.91217
Moody, J. and Darken, C.J. (1989) Fast Learning in Networks of Locally-Tuned Processing Units. Neural Computation, 1, 281-294. https://doi.org/10.1162/neco.1989.1.2.281
Kasabov, N.K. and Song, Q. (2002) DENFIS: Dynamic Evolving Neural-Fuzzy Inference System and Its Application for Time-Series Prediction. IEEE Transactions on Fuzzy Systems, 10, 144-154. https://doi.org/10.1109/91.995117
Vapnik, V.N. and Vapnik, V. (1998) Statistical Learning Theory. Vol. 1, Wiley, New York.
Briand, L.C., El Emam, K., Surmann, D., Wieczorek, I. and Maxwell, K.D. (1999) An Assessment and Comparison of Common Software Cost Estimation Modeling Techniques. Proceedings of the 1999 International Conference on Software Engineering, 313-323.
Deeson, E. (1991) Collins Dictionary of Information Technology. HarperCollins.
Lo, B. and Gao, X. (1997) Assessing Software Cost Estimation Models: Criteria for Accuracy, Consistency and Regression. Australasian Journal of Information Systems, 5, 30-44. https://doi.org/10.3127/ajis.v5i1.348
Kamal, M.W., Ahmed, M.A. and El-Attar, M. (2011) Use Case-Based Effort Estimation Approaches: A Comparison Criteria. Software Engineering and Computer Systems, 735-754. https://doi.org/10.1007/978-3-642-22203-0_62
Mukhopadhyay, T., Vicinanza, S.S. and Prietula, M.J. (1992) Examining the Feasibility of a Case-Based Reasoning Model for Software Effort Estimation. MIS Quarterly, 16, 155-171. https://doi.org/10.2307/249573