Work place: Institute of Information Technology, University of Dhaka, Dhaka, Bangladesh
E-mail: bsse0604@iit.du.ac.bd
Website:
Research Interests: Software Engineering, Computational Learning Theory, Data Mining, Data Structures and Algorithms
Biography
Pritom S. Akash is a graduate student in Institute of Information Technology, University of Dhaka, where he is pursuing a certificate in Master of Science in Software Engineering (MSSE). He also completed Bachelor of Science in Software Engineering (BSSE) from the same institute. His research interests include Machine Learning, Data Mining and Software Engineering.
By Tahmim Jeba Tarek Mahmud Pritom S. Akash Nadia Nahar
DOI: https://doi.org/10.5815/ijitcs.2020.05.02, Pub. Date: 8 Oct. 2020
Code smells are the indicators of the flaws in the design and development phases that decrease the maintainability and reusability of a system. A system with uneven distribution of responsibilities among the classes is generated by one of the most hazardous code smells called God Class. To address this threatening issue, an extract class refactoring technique is proposed that incorporates both cohesion and contextual aspects of a class. In this work, greater emphasis was provided on the code documentation to extract classes with higher contextual similarity. Firstly, the source code is analyzed to generate a set of cluster of extracted methods. Secondly, another set of clusters is generated by analyzing code documentation. Then, merging these two, a final cluster set is formed to extract the God Class. Finally, an automatic refactoring approach is also followed to build newly identified classes. Using two different metrics, a comparative result analysis is provided where it is shown that the cohesion among the classes is increased if the context is added in the refactoring process. Moreover, a manual inspection is conducted to ensure that the methods of the refactored classes are contextually organized. This recommendation of God Class extraction can significantly help the developers in minimizing the burden of refactoring on own their own and maintaining the software systems.
[...] Read more.Subscribe to receive issue release notifications and newsletters from MECS Press journals