An evolutionary approach to identify logical components
•We propose a novel method based on GA (genetic algorithm) to obtain logical components.•We evaluate the effectiveness of the proposed method with three real-world cases. Identifying suitable components during the software design phase is an important way to obtain more maintainable software. Many m...
Gespeichert in:
Veröffentlicht in: | The Journal of systems and software 2014-10, Vol.96, p.24-50 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | •We propose a novel method based on GA (genetic algorithm) to obtain logical components.•We evaluate the effectiveness of the proposed method with three real-world cases.
Identifying suitable components during the software design phase is an important way to obtain more maintainable software. Many methods including Graph Partitioning, Clustering-based, CRUD-based, and FCA-based methods have been proposed to identify components at an early stage of software design. However, most of these methods use classical clustering techniques, which rely on expert judgment.
In this paper, we propose a novel method for component identification, called SBLCI (Search-Based Logical Component Identification), which is based on GA (genetic algorithm), and complies with an iterative scheme to obtain logical components.
SBLCI identifies logical components of a system from its analysis models using a customized GA, which considers cohesion and coupling metrics as its fitness function, and has four novel guided GA operators based on the cohesive component concept. In addition, SBLCI has an iterative scheme in which it initially identifies high-level components in the first iteration. Then, in the next iterations, it identifies low-level sub-components for each identified component in previous iterations.
We evaluated the effectiveness of SBLCI with three real-world cases. Results revealed that SBLCI is a better alternative for identifying logical components and sub-components in comparison with existing component identification methods. |
---|---|
ISSN: | 0164-1212 1873-1228 |
DOI: | 10.1016/j.jss.2014.05.033 |