摘要
在面向对象软件设计与实现过程中,类职责分配是其中最重要且复杂的步骤之一,它在很大程度上影响软件质量。为了实现类职责自动分配的目标,从软件内聚与耦合度量的角度出发,建立了类职责分配问题多目标优化模型。在基于快速非支配排序多目标遗传算法基础上,引入凝聚的层次聚类技术,保证群体多样性,避免陷入未成熟收敛。在实验中,通过对类职责自动分配并与一个已有的设计优良的软件系统进行对比,验证了此算法的正确性。另外,通过与单目标遗传算法、SPEA2算法对比表明,本算法在解决类职责分配问题上运行效果最好。
In the process of object-oriented software design and implementation, responsibility assignment problem (CRA) is one of the most important and complicated procedures, which affects the quality of software to a large extent. In order to achieve the goal of CRA automatically, we propose a CRA multi-objective optimization model which is built from the perspective of cohesion and coupling metrics. On the basis of fast non-dominated sorting genetic algorithm, we introduce the agg|omerate hierarchical clustering technology to ensure population diversity and to avoid premature convergence. Experiments on automatical class responsibility assignment verify the correctness of the algorithm, whose results are also compared with an existing well-designed software system. In addition, compared with the single objective genetic algorithm and the SPEA2 algorithm, the proposed algorithm has the best CRA operation effect.
出处
《计算机工程与科学》
CSCD
北大核心
2016年第7期1398-1404,共7页
Computer Engineering & Science
关键词
类职责分配
多目标遗传算法
快速非支配排序
凝聚层次聚类
class responsibility assignment
multi-objective genetic algorithms
fast non-dominated sorting
hierarchical agglomerative clustering