SCI-GA: Software Component Identification using Genetic Algorithm

Seyed Mohammad Hossein Hasheminejad, Saeed Jalili
2013 Journal of Object Technology  
Identifying software components is a crucial task in software development. There are a number of methods to identify components in the literature; however, the majority of these methods rely on clustering techniques with expert judgment. In contrast to the previous methods, which have used classical clustering techniques, this paper maps the components identification problem to an optimization problem. We propose a novel GA-based algorithm (Genetic Algorithm) as a powerful optimization search
more » ... gorithm, called SCI-GA (Software Component Identification using Genetic Algorithm), to identify components from analysis models. SCI-GA uses software cohesion, coupling, and complexity measurements to define its fitness function. For performance evaluation, we evaluated SCI-GA using three real-world cases. The results reveal that SCI-GA can identify correct suboptimal software components, and performs far better than alternative heuristics like k-means and FCA-Based methods.
doi:10.5381/jot.2013.12.2.a3 fatcat:m4shjaqfl5bbrmx7nrxigjiahe