The International Arab Journal of Information Technology (IAJIT)

..............................
..............................
..............................


Using Static and Dynamic Impact Analysis for Effort Estimation

Effort estimation undoubtedly happens in both software maintenance and software development phases. Researchers have been inventing many techniques to estimate change effort prior to implementing the actual change and one of the techniques is using impact analysis. A challenge of estimating a change effort during developing a software is the management of inconsistent states of software artifacts i.e., partially completed and to be developed artifacts. Our paper presents a novel model for estimating a change effort during the software development phase through integration between static and dynamic impact analysis. Three case studies of software development projects have been selected to evaluate the effectiveness of the model using the Mean Magnitude of Relative Error (MMRE) and Percentage of Prediction (PRED) metrics. The results indicated that the model has 22% MMRE relative error on average and the accuracy of our prediction was more than 75% across all case studies.


[1] Asl M. and Kama N., “A Change Impact Size Estimation Approach During the Software Development,” in Proceedings of 22nd Australian Software Engineering Conference, Melbourne, pp. 68-77, 2013.

[2] Attarzadeh I., Mehranzadeh A., and Barati A., “Proposing an Enhanced Artificial Neural Network Prediction Model to Improve the Accuracy in Software Effort Estimation,” in Proceedings of 4th International Conference on Computational Intelligence, Communication Systems and Networks, Phuket, pp. 167-172, 2012.

[3] Basha S. and Ponnurangam D., “Analysis of Empirical Software Effort Estimation Models,” Software Engineering, vol. 7, no. 3, 2010.

[4] Basri S., Kama N., Adli S., and Haneem F., “Using Static and Dynamic Impact Analysis for Effort Estimation,” IET Software, vol. 10, no. 4, pp. 89-95, 2016.

[5] Breech B., Tegtmeyer M., and Pollock L., “Integrating Influence Mechanisms into Impact Analysis for Increased Precision,” in Proceedings of 22nd IEEE International Conference on Software Maintenance, Philadelphia, pp. 55-65, 2006.

[6] Fasolino A. and Visaggio G., “Improving Software Comprehension Through An Automated Dependency Tracer,” in Proceedings 17th International Workshop on Program Comprehension, Pittsburgh, pp. 58-65, 1999.

[7] Garcia L., Augusto C., and Hirata C., “Integrating Functional Metrics, COCOMO II and Earned Value Analysis for Software Projects Using PMBoK,” in Proceedings of the ACM Symposium on Applied Computing, Fortaleza, pp. 820-825, 2008.

[8] Ghazarian A., “Traceability Patterns: An Approach to Requirement-Component Traceability in Agile Software Development,” in Proceedings of the 8th Conference on Applied Computer scince World Scientific and Engineering Academy and Society, Venice, pp. 236-241, 2008.

[9] Hassine J., Rilling J., Hewitt J., and Dssouli R., “Change Impact Analysis for Requirement Evolution Using use Case Maps,” in Proceedings of 8th International Workshop on Principles of Software Evolution, Lisbon, pp. 81-90, 2005.

[10] Huang S., Chiu N., and Chen L., “Integration of the Grey Relational Analysis with Genetic Algorithm for Software Effort Estimation,” European Journal of Operational Research, vol. 188, no. 3, pp. 898-909, 2008.

[11] Ibrahim S., Idris N., Munro M., and Deraman A., “Integrating Software Traceability for Change Impact Analysis,” The Arab International Journal of International Technology, vol. 2, no. 4, pp. 301-308, 2005.

[12] Jorgensen M., “Practical Guidelines for Expert- Judgment-Based Software Effort Estimation,” IEEE Software, vol. 22, no. 3, pp. 57-63, 2005.

[13] Jorgensen M. and Molokken-Ostvold K., “Reasons for Software Effort Estimation Error: Impact of Respondent Role, Information Collection Approach, and Data Analysis Method,” IEEE Transactions on Software Engineering, vol. 30, no. 12, pp. 993-1007, 2004.

[14] Kama N., “Change Impact Analysis for the Software Development Phase: State-of-the-Art,” International Journal of Software Engineering and Its Applications, vol. 7, no. 2, pp. 235-244, 2013.

[15] Kama N., “Integrated Change Impact Analysis Approach for the Software Development Phase,” International Journal of Software Engineering and its Applications, vol. 7, no. 2, pp. 293-304, 2013.

[16] Kama N., French T., and Reynolds M., “Impact Analysis using Class Interaction Prediction Approach,” in Proceedings of Conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the 9th SoMeT_10, Amsterdam, pp. 96-111, 2010.

[17] Kama N., French T., and Reynolds M., “Predicting Class Interactions from Requirement Interactions: Evaluating a New Filtration Approach,” in Proceedings of Software Engineering, Innsbruck, 2010.

[18] Kama N. and Ridzab F., “Requirement Level Impact Analysis with Impact Prediction Filter,” in Proceedings of International Conference on Software Technology and Engineering, Phuket, 2012.

[19] Law J. and Rothermel G., “Whole Program Path- Based Dynamic Impact Analysis,” in Proceedings of 25th International Conference on Software Engineering, Portland, pp. 308-3018, 2003.

[20] Li J., Ruhe G., Al-Emran A., and Richter M., “A Flexible Method for Software Effort Estimation by Analogy,” Empirical Software Engineering, vol. 12, no. 1, pp. 65-106, 2007.

[21] Nguyen V., Steece B., and Boehm B., “A Constrained Regression Technique For Cocomo Calibration,” in Proceedings of the 2nd ACM- IEEE International Symposium on Empirical Software Engineering and Measurement, Kaiserslautern, pp. 213-222, 2008.

[22] Nurmuliani N., Zowghi D., and Williams S., “Requirements Volatility and its Impact on Change Effort: Evidence-Based Research in Software Development Projects,” in Proceedings 170 The International Arab Journal of Information Technology, Vol. 16, No. 2, March 2019 of the 11th Australian Workshop on Requirements Engineering, Adelaide, 2006.

[23] Pfleeger S. and Bohner S., “A Framework for Software Maintenance Metrics,” in Proceedings of Conference on Software Maintenance, San Diego, pp. 320-327, 1990.

[24] Sharif B., Khan S., and Bhatti M., “Measuring the Impact of Changing Requirements on Software Project Cost: An Empirical Investigation,” International Journal of Computer Science Issues, vol. 9, no. 3, pp. 170- 174, 2012.

[25] Yang D., Wan Y., Tang Z., Wu S., He M., and Li M., “COCOMO-U: An Extension of COCOMO II for Cost Estimation with Uncertainty,” in Proceedings of Software Process Change, Shanghai, pp. 132-141, 2006.

[26] Yang Y., He M., Li M., Wang Q., and Boehm B., “Phase Distribution of Software Development Effort,” in Proceedings of the 2nd ACM-IEEE International Symposium on Empirical Software Engineering and Measurement, Kaiserslautern, pp. 61-69, 2008.

[27] Zheng Y., Wang B., Zheng Y., and Shi Li., “Estimation of Software Projects Effort based on Function Point,” in Proceedings of 4th International Conference on Computer Science and Education, Nanning, pp. 941-943, 2009.

[28] Zhou R. and Hansen E., “Breadth-First Heuristic Search,” Artificial Intelligence, vol. 170, no. 4-5, p. 385-408, 2006. Nazri Kama obtained his first degree at Universiti Teknologi Malaysia (UTM) in Management Information System in 2000, second degree in Real Time Software Engineering at the same university in 2002 and his PhD at The University of Western Australia (UWA) in Software Engineering in 2010. He has a considerable experience in a wide range on Software Engineering area. His major involvement is in software development. Sufyan Basri obtained his first degree at Universiti Teknologi Malaysia (UTM) in Electrical Engineering (Mechatronic) in 2001, master degree in Real Time Software Engineering in 2003 and PhD in Software Engineering in 2016 at the same university. His research interest includes Software Engineering, Change Management and Effort Estimation. He has more than 10 years of experiences for various software development projects and implementations. Saiful Adli Ismail obtained his first degree at Universiti Teknologi Malaysia (UTM) in Industrial Computing in 1997, second degree in Real Time Software Engineering at the same university in 2000 and currently continues his PhD at Universiti Teknologi Malaysia. Roslina Ibrahim is currently attached to Advanced Informatics School (AIS) at Universiti Teknologi Malaysia, Kuala Lumpur. She holds a PhD in information science from Universiti Kebangsaan Malaysia and master degree in computer science. Her research interests are user acceptance of information systems, design and developments of educational games and usability evaluation. She has 15 years experiences in teaching several IT related courses both for undergraduate and postgraduate students, including IT and multimedia, Web development, audio and video in multimedia, instructional multimedia design, IT Project Management, User Experience and Interaction Design and Research methodology.