研究生: |
邱南星 Nan-Hsing Chiu |
---|---|
論文名稱: |
類比式軟體成本預估模式正確性改善之研究 A Study of Accuracy Improvement on Analogy-Based Software Cost Estimation Model |
指導教授: |
黃世禎
Sun-Jen Huang |
口試委員: |
朱治平
Chih-Ping Chu 李允中 Jonathan Lee 林我聰 Woo-Tsong Lin 李漢銘 Hahn-Ming Lee 徐俊傑 Chiun-Chieh Hsu 李國光 Gwo-Guang Lee |
學位類別: |
博士 Doctor |
系所名稱: |
管理學院 - 資訊管理系 Department of Information Management |
論文出版年: | 2006 |
畢業學年度: | 95 |
語文別: | 英文 |
論文頁數: | 96 |
中文關鍵詞: | 軟體成本預估 、類比式預估 、相似度度量 、基因演算法 、軟體專案管理 、軟體度量與分析 |
外文關鍵詞: | Software Cost Estimation, Analogy-Based Estimation, Similarity Measure, Genetic Algorithm, Software Project Management, Measurement and Analysis |
相關次數: | 點閱:1075 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
對於軟體產業與學術界而言,能夠可靠與正確地預估軟體開發或維護成本,一直是一個嚴峻的挑戰。類比式模式(Analogy-based Model)是一種廣泛使用的軟體成本預估(Software Cost Estimation)方法,專案相似度的度量(Similarity Measure)在類比式軟體成本預估模式中,扮演著相當重要的角色。然而,文獻中很少的軟體成本預估模式,探討到如何決定在類比相似度度量中每個軟體成本因子(Cost Driver)適宜的權重,並且論述如何基於相似度度量之距離差,來調整相似歷史專案之成本以推導出成本預估值。
本篇論文的主要目標在類比式軟體成本預估模式正確性改善之研究。本研究提出了加權式類比軟體成本預估調整模式(Weighted Analogy-based Software Cost Estimation Adjustment Model),採用基因演算法(Genetic Algorithm)來決定類比式成本預估模式中相似度度量之成本因子適宜的權重,並基於相似度度量所計算出的距離差,來推導出預估專案軟體開發成本的預估值,並分別採用兩個歷史軟體專案資料集來驗證本研究所提出之模式在軟體成本預估值正確性提昇的能力。
實驗結果呈現出採用基因演算法在類比式軟體成本預估模式來決定相似度度量之成本因子適宜的權重,或者是利用基因演算法來決定軟體預估成本的修正量,皆是提昇軟體成本預估模式正確性的可行方式。本研究所提出之加權式類比軟體成本預估調整模式的正確性優於統計廻歸、類神經網路或決策樹之軟體成本預估模式,並且也比文獻中所提出之加權或調整式類比軟體成本預估模式有較高之軟體成本預估模式正確性的改善率。
A reliable and accurate estimate of software development or maintenance cost has always been a challenge for both the software industrial and academic communities. Analogy-based method is a widely adopted problem solving technique that has been evaluated and confirmed in software effort or cost estimation domains. Similarity measures between pairs of cost drivers play a central role in analogy-based software cost estimation model. However, hardly any research work in the literatures has addressed the issue on how to determine the suitable weights of software cost drivers in the similarity measures of analogy-based software cost estimation model. And similarity, little theoretical or experimental works have been reported on the method of deriving a cost estimate from the adjustment of the reused cost based on the similarity distance.
This dissertation aims to improve the estimation accuracy for the analogy-based software cost estimation model. A “weighted analogy-based software cost estimation adjustment model” is proposed in this dissertation. The proposed model utilizes the genetic algorithm (GA) method to determine the appropriate weights of cost drivers in the similarity measures of analogy-based software cost estimation model. In addition, the GA is also used to adjust the reused cost based on the similarity distances between pairs of projects. The approach of using two well-known software historical project datasets for verifying the proposed model is also illustrated in this dissertation.
The experimental results show that applying GA to determine suitably weighted similarity measures of software cost drivers or applying a suitable linear model to adjust the reused cost is a feasible approach to improving the accuracy of analogy-based software cost estimation model. The proposed model is superior to regressions, neural nets or decision trees-based software cost estimation models. It also provides higher improvement rate on the accuracy of software cost estimates than those weighted or adjusted analogy-based software cost estimation model in the previous works.
1. A. Abran and P.N. Robillard, “Function Points Analysis: An Empirical Study of Its Measurement Processes,” IEEE Transactions on Software Engineering, Vol. 22, No. 12, pp. 895-910, 1996.
2. A.J. Albrecht and J.R. Gaffney, “Software Measurement, Source Lines of Code, and Development Effort Prediction: A Software Science Validation,” IEEE Transactions on Software Eng., Vol. 9, No. 6, pp. 639-648, 1983.
3. L. Angelis and I. Stamelo, “A Simulation Tool for Efficient Analogy Based Cost Estimation,” Empirical Software Engineering, Vol. 5, pp. 35-68, 2000.
4. M. Auer, A. Trendowicz, B. Graser, E. Haunschmid and S. Biffl, “Optimal Project Feature Weights in Analogy-Based Cost Estimation: Improvement and Limitations,” IEEE Transactions on Software Engineering, Vol. 32, No.2, pp. 83-92, 2006.
5. D. Azar and D. Precup, “Combining And Adapting Software Quality Predictive Models by Genetic Algorithms,” Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE’02), 2002.
6. G.R. Beddoe and S. Petrovic, “Selecting and Weighting Features using A Genetic Algorithm in A Case-Based Reasoning Approach to Personnel Rostering,” European Journal of Operational Research, Vol. 175, pp. 649-671, 2006.
7. H.R. Berenji and Y. Wang, “Case-Based Reasoning for Fault Diagnosis and Prognosis,” IEEE International Conference on Fuzzy Systems, Sheraton Vancouver Wall Centre Hotel, Vancouver, BC, Canada, pp. 1316-1321, 2006.
8. I. Bichindaritz, “Case-Based Reasoning in the Health Sciences,” Artificial Intelligence in Medicine, Vol. 36, Issue 2, pp. 121-125, 2006.
9. L.C. Briand, K.E. Emam, D. Surmann, I. Wieczorek and K.D. Maxwell, “An Assessment and Comparison of Common Software Cost Estimation Modeling Techniques,” Proceedings of the International Conference on Software Engineering, pp. 313-322, 1999.
10. C.J. Burgess and M. Lefley, “Can Genetic Programming Improve Software Effort Estimation? A Comparative Evaluation,” Information and Software Technology, Vol. 43, pp. 863-873, 2001.
11. C.B. Chen, C.T. Lin, C.H. Wang and C.W. Chang, “Model for Measuring Quality of Software in DVRS using the Gap Concept and Fuzzy Schemes with GA,” Information and Software Technology, Vol. 48, pp. 187-203, 2006.
12. C.C. Chiu and N.H. Chiu, “An Adapted Covering Algorithm Approach for Modeling Airplanes Landing Gravities,” Expert Systems with Applications, Vol. 26, No. 3, pp. 443-450, 2004.
13. C. Chiu, N.H. Chiu and Hsu, C. I., "Intelligent Aircraft Maintenance Support System Using Genetic Algorithms and Case-Based Reasoning," The International Journal of Advanced Manufacturing Technology, Vol. 24, No. 5-6, pp. 440-446, 2004.
14. C. Chiu and P.L. Hsu, “A Constraint-Based Genetic Algorithm Approach for Mining Classification Rules,” IEEE Transactions on Systems, Man, and Cybernetics, Vol. 35, No. 2, pp. 205-220, 2005.
15. C. Chiu, K.H. Hsu , P.L. Hsu, C.I. Hsu, P.C. Lee, W.K. Chiou, T.H. Liu, Y.C. Chuang and C.J. Hwang, “Mining Three-Dimensional Anthropometric Body Surface Scanning Data for Hypertension Detection,” IEEE Transactions on Information Technology in Biomedicine, in press, 2006.
16. Y.S. Dai, M. Xie, K.L. Poh and B. Yang, “Optimal Testing-Resource Allocation with Genetic Algorithm for Modular Software Systems,” The Journal of Systems and Software, Vol. 66, pp.47-55, 2003.
17. J.J. Dolado, “A Validation of the Component-Based Method for Software Size Estimation,” IEEE Transactions on Software Engineering, Vol. 26, Issue 10, pp. 1006-1021, 2000.
18. J.J. Dolado, “On The problem of The Software Cost Function,” Information and Software Technology, Vol. 43, pp. 61-72, 2001.
19. D. Doval, S. Mancoridis and B.S. Mitchell, “Automatic Clustering of Software Systems using a Genetic Algorithm,” Proceedings of Software Technology and Engineering Practice, pp. 73-81, 1999.
20. K.E. Emam, S. Benlarbi, N. Goel and S. Rai, “Comparing Case-Based Reasoning Classifiers for Predicting High Risk Software Components,” The Journal of Systems and Software, Vol. 55, pp. 301-320, 2001.
21. U.M. Fayyad, G.P. Shapiro, P. Smyth and R. Uthurusamy, “Advances in Knowledge Discovery and Data Mining,” the MIT Press, 1996.
22. T. Foss, E. Stensrud, B. Kitchenham and I. Myrtveit, “A Simulation Study of the Model Evaluation Criterion MMRE,” IEEE Transactions on Software Engineering, Vol. 29, No. 11, 2003.
23. D. Goldberg, “Genetic Algorithms in Search Optimization and Machine Learning,” Addison-Wesley Publishing, 1989.
24. R.H. Gong, M. Zulkernine and P. Abolmaesumi, “A Software Implementation of a Genetic Algorithm Based Approach to Network Intrusion Detection,” Proceedings of the Sixth International Conference on Software Engineering, pp. 246-253, 2005.
25. G. Granelli, M. Montagna, F. Zanellini, P. Bresesti and R. Vailati, “A Genetic Algorithm-Based Procedure to Optimize System Topology Against Parallel Flows,” IEEE Transactions on Power Systems, Vol. 21, Issue 1, pp. 333-340, 2006.
26. A. Heiat, “Comparison of Artificial Neural Network and Regression Models for Estimating Software Development Effort,” Information and Software Technology, Vol. 44, pp. 911-922, 2002.
27. S.J. Ho, L.S. Shu and S.Y. Ho, “Optimizing Fuzzy Neural Networks for Tuning PID Controllers Using An Orthogonal Simulated Annealing Algorithm OSA,” IEEE Transactions on Fuzzy Systems, Vol. 14, Issue 3, pp. 421-434, 2006.
28. J. Holland, “Adaptation in Natural and Artificial Systems,” University of Michigan Press, Ann Arbor, Mich., U.S.A., 1975.
29. S.J. Huang, C.Y. Lin and N.H. Chiu, “Fuzzy Decision Tree Approach for Embedding Risk Assessment Information into Software Cost Estimation Model,” Journal of Information Science and Engineering, Vol. 22, pp.297-313, 2006.
30. S. Impedovo, M.G. Lucchese and G. Pirlo, “Optimal Zoning Design by Genetic Algorithms,” IEEE Transactions on Systems, Man and Cybernetics, Vol. 36, Issue 5, pp. 833-846, 2006.
31. S.J. Huang and N.H. Chiu, “Optimization of Analogy Weights by Genetic Algorithm for Software Effort Estimation,” Information and Software Technology, Vol. 48, pp. 1034-1045, 2006.
32. International Software Benchmarking Standards Group Data Disk, Release 8, February 2003, http://www.isbsg.org.
33. R. Jeffery, M. Ruhe and I. Wieczorek, “A Comparative Study of Two Software Development Cost Modeling Techniques using Multi-Organizational and Company-Specific Data,” Information and Software Technology, Vol. 42, pp. 1009-1016, 2000.
34. R. Jeffery, M. Ruhe and I. Wieczorek, “Using Public Domain Metrics to Estimate Software Development Effort,” Seventh IEEE International Software Metrics Symposium, pp. 16-27, 2001.
35. M. Jorgenson, “A Review of Studies on Expert Estimation of Software Development Effort,” Journal of Systems and Software, Vol. 70, pp. 37-60, 2004.
36. M. Jorgenson and D.I.K. Sjoberg, “The Impact of Customer Expectation on Software Development Effort Estimates,” International Journal of Project Management, Vol. 22, pp. 317-325, 2004.
37. M. Jorgenson, U. Indahl and D. Sjoberg, “Software Effort Estimation by Analogy and Regression Toward the Mean,” The Journal of Systems and Software, Vol. 68, pp. 253-262, 2003.
38. Y.K. Juan, S.G. Shih and Y.H. Perng, “Decision Support for Housing Customization: A Hybrid Approach using Case-Based Reasoning and Genetic Algorithm,” Expert Systems with Applications, Vol. 31, pp. 83-93, 2006.
39. J. Kaczmarek and M. Kucharski, “Size and Effort Estimation for Applications Written in Java,” Information and Software Technology, Vol. 46, pp. 589-601, 2004.
40. M. Kaya and R. Alhajj, “Utilizing Genetic Algorithms to Optimize Membership Functions for Fuzzy Weighted Association Rules Mining,” Applied Intelligence, Vol. 24, No. 1, pp. 7-15, 2006.
41. T.M. Khoshgoftaar, N. Seliya and N. Sundaresh, “An Empirical Study of Predicting Software Faults with Case-Based Reasoning,” Software Quality Journal, Vol. 14, No. 2, pp. 85-111, 2006.
42. J.L. Kolodner, “Case-Based Reasoning,” Morgan Kaufmann, 1993.
43. W.B. Langdon, “Genetic Programming and Data Structures: Genetic Programming+Data Structures=Automatic Programming!,” Kluwer Academic Publishers, 1998.
44. J.K. Lee and N. Lee, “Least Modification Principle for Case-Based Reasoning: A Software Project Planning Experience,” Expert Systems With Applications, Vol. 30, Issue 2, pp. 190-202, 2006.
45. R.M. Lewis, V. Torczon and M.W. Trosset, “Direct Search Methods: Then and Now,” Journal of Computational and Applied Mathematics, Vol. 124, pp. 191-207, 2000.
46. T.W. Liao, C.R. Zhang and C.R. Mount, “A Cased-Based Reasoning System for Identifying Failure Mechanisms,” Engineering Applications of Artificial Intelligence, Vol. 13, No. 2, pp. 199-213. 2000.
47. S.G. MacDonell and M.J. Shepperd, “Combining Techniques to Optimize Effort Predictions in Software Project Management,” The Journal of Systems and Software, Vol. 66, pp. 91-98, 2003.
48. C. Mair and M. Shepperd, “The Consistency of Empirical Comparisons of Regression and Analogy-Based Software Project Cost Prediction,” International Symposium on Empirical Software Engineering, pp.509-518, 2005.
49. J.E. Matson, B.E. Barrett and J.M. Mellichamp, “Software Development Cost Estimation Using Function Points,” IEEE Transactions on Software Engineering, Vol. 20, No. 4, pp. 275-287, 1994.
50. E. Mendes, N. Mosley and S. Counsell, “The Application of Case-Based Reasoning to Early Web Project Cost Estimation,” Proceedings of the 26th Annual International Computer Software and Applications Conference, 2002.
51. E. Mendes, N. Mosley and S. Counsell, “A Replicated Assessment of the Use of Adaptation Rules to Improve Web Cost Estimation,” Proceedings of the IEEE International Symposium on Empirical Software Engineering, pp. 100-109, 2003.
52. E. Mendes, I. Watson, C. Triggs, N. Mosley and S. Counsell, “A Comparison of Development Effort Estimation Techniques for Web Hypermedia Application,” Proceedings of the Eighth IEEE Symposium on Software Metrics, pp. 131-140, 2002.
53. E. Mendes, I. Watson, C. Triggs, N. Mosley and S. Counsell, “A Comparative Study of Cost Estimation Models for Web Hypermedia Applications,” Empirical Software Engineering, Vol. 8, pp. 163-196, 2003.
54. S. Montani and C. Anglano, “Case-Based Reasoning for Autonomous Service Failure Diagnosis and Remediation in Software Systems,” Lecture Notes in Computer Science, pp. 489-503, 2006.
55. T. Mukhopadhyay, S.S. Vicinanza and M.J. Prietula, “Examining the Feasibility of a Case-Based Reasoning Model for Software Effort Estimation,” MIS Quarterly, Vol. 16, pp. 155-171, 1992.
56. B. Ombuki, B.J. Ross and F. Hanshar, “Multi-Objective Genetic Algorithms for Vehicle Routing Problem with Time Windows,” Applied Intelligence, Vol. 24, No. 1, pp. 17-30, 2006
57. S.K. Pal and S.C.K. Shiu, “Foundations of Soft Case-Based Reasoning,” John Wiley & Sons Inc. Publishers, 2004.
58. C.S. Park and I. Han, “A Case-Based Reasoning with the Feature Weights Derived by Analytic Hierarchy Process for Bankruptcy Prediction,” Expert Systems with Applications, 2002.
59. J.H. Parka, C.K. Shinb, K.H. Imc and S.C. Parkd, “A Local Weighting Method to The Integration of Neural Network and Case-Based reasoning,” Proceedings of the IEEE Signal Processing Society Workshop on Neural Networks, pp. 33-42, 2001.
60. S. Ramat and G. Magenes, “Latency Detection in Motor Responses: A Model-Based Approach With Genetic Algorithm Optimization,” IEEE Transactions on Biomedical Engineering, Vol. 53, Issue 10, pp. 2015-2023, 2006.
61. I.J.R. Rosado and J.A.D. Navarro, “New Multiobjective Tabu Search Algorithm for Fuzzy Optimal Planning of Power Distribution Systems,” IEEE Transactions on Power Systems, Vol. 21, Issue 1, pp. 224-233, 2006.
62. M. Shepperd and C. Schofield, “Estimating Software Project Effort Using Analogies,” IEEE Transactions on Software Engineering, Vol. 23, No. 12, pp. 736-743, November 1997.
63. M. Shepperd and M. Cartwright, “A Replication of the Use of Regression Towards the Mean (R2M) as an Adjustment to Effort Estimation Models,” 11th IEEE International Software Metrics Symposium (METRICS 2005), pp. 38-38, 2005.
64. K.S. Shik and I. Han, “Case-Based Reasoning Supported by Genetic Algorithms for Corporate Bond Rating,” Expert Systems with Applications, Vol. 16, pp. 85-95, 1999.
65. K.K. Shukla, “Neuro-Genetic Prediction of Software Development Effort,” Information and Software Technology, Vol. 42, pp. 701–713, 2000.
66. I. Stamelos, L. Angelis, M. Morisio, E. Sakellaris and G.L. Bleris, “Estimating the Development Cost of Custom Software,” Information & Management, Vol. 40, pp. 729-741, 2003.
67. S. Vicinanza, M.J. Prietula and T. Mukhopadhyay, “Case-Based Reasoning in Software Estimation,” In: Proceedings 11th International Conference on Information Systems, Copenhagen, Denmark, pp. 149-158, 1990.
68. R.A. Vivanco and N.J. Pizzi, “Identifying Effective Software Metrics Using Genetic Algorithms,” IEEE Canadian Conference on Electrical and Computer Engineering, Vol. 2, pp. 1305-1308, 2003.
69. F. Walkerden and R. Jeffery, “An Empirical Study of Analogy-Based Software Effort Estimation,” Empirical Software Engineering, Vol. 4, pp. 135-158, 1999.
70. L. Yang, B.F. Jones and S.H. Yang, “Genetic Algorithm Based Software Integration with Minimum Software Risk,” Information and Software Technology, Vol. 48, pp. 133-141, 2006.