Open Access Open Access  Restricted Access Subscription or Fee Access

A Fuzzy Approach for Evaluating the Complexity of Applying Refactoring in Software Development Process

Abeer H. El Bakly, Nagy Ramadan Darwish


This paper focuses on proposing a fuzzy approach for evaluating the complexity related to apply refactoring in software development process. Refactoring is one of the most important practices in eXtreme Programming (XP) methodology. Refactoring is defined as "a change made to the internal structure of software to make it easier to understand and cheaper to modify without changing its observable behavior". In addition, it is used for enhancing the maintainability; improving reusability and understandability of the software. The one of evaluation refactoring is complexity metrics. This evaluation depends on comparing the values of related metrics before and after applying the refactoring. The evaluation of complexity metrics has different degrees which start from simple to complex, so this research proposes using fuzzy logic on the metrics to evaluate the effect of refactoring based on complexity measures.


Agile Methods, Fuzzy Logic, Fuzzy Model Refactoring, Refactoring Metrics, Software Development, Extreme Programming, Complexity Metrics.

Full Text:



J.Hunt, “Agile Software Construction”, Springer-Verlag, London,2006

A.S.Koch, “Agile Software Development Evaluating the Methods for Your Organization”, British Library Cataloguing, Artech House, Boston, London,2005.

A.Nanthaamornphong,”The Effectiveness of Test-Driven Development and Refactoring Techniques in Computational Science and Engineering”, “Doctor of Philosophy thesis”, University of Alabama, 2014.

A.H.Mohamed, N.R.Darwish,“ A Proposed Fuzzy based Framework for Calculating Success Metrics of Agile Software Projects”, International Journal of Computer Applications, Volume 137 , No.8, 2016.

A.T.Raslan, N.R.Darwish, H. A. Hefny,“Towards a Fuzzy based Framework for Effort Estimation in Agile Software Development”, International Journal of Computer Science and Information Security, 13(1), 37, 2015.

T. Ustyugova, D. Noskievićová N, 2013 “Fuzzy logic model for evaluation of lean and agile manufacturing integration”, proceedings of 22nd International Conference on Metallurgy and Materials , Brno, Czech Republic,EU.

Z. Avdagica, D.Boskovic, A.Delic, 2008 “Code Evaluation Using Fuzzy Logic”, 9th WSEAS International Conference on FUZZY SYSTEMS, Sofia, Bulgaria.

K.Usha, N.Poonguzhali , E.Kavitha, 2009,” A Quantitative Model for Improving the Effectiveness of the Software Development Process using Refactoring”, International Journal of Recent Trends in Engineering, Vol 2, No. 2

A.Singhal, H.Banati, “Fuzzy Logic Approach for Threat Prioritization in Agile Security Framework using DREAD model”, 2013

K.Usha ,N.'Poonguzhali ,E.Kavitha, 2009, “A Quantitative Approach for Evaluating the Effectiveness of Refactoring in Software Development Process”, International Conference on Methods and Models in Computer Science, India

R.G.Hussain, A. Javed ,” Qualitative Approach For Estimating the Influence Of Refactoring And Scrum In Software Development”, International Journal of Engineering Research and General Science Volume 3, Issue 2, March April, 2015

D.N.Gade,” THE EVALUATION OF SOFTWARE QUALITY”, “Masterthesis”, University of Nebraska, Lincoln, Nebraska,2013.

V.Sharma, & V.H.Verma, 2010,”Optimized fuzzy logic based framework for effort estimation in software development”, arXiv preprint arXiv:1004.3270.

A. Hamdy, 2012 “Fuzzy Logic for Enhancing the Sensitivity of COCOMO Cost Model”, Journal of Emerging Trends in Computing and Information Sciences, Volume 3, Issue 9, 1292-1297. /, last accessed 22-11-2016. , last accessed 22-11-2016. , last accessed 22-11-2016

L.A.Zadeh, “Fuzzy sets as a basis for a theory of possibility. Fuzzy sets and systems”, 1(1), pp. 3-28, 1978.


  • There are currently no refbacks.

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 License.