On the use of genetic programming for automated refactoring and the introduction of design patterns

On the use of genetic programming for automated refactoring and the introduction of design patterns
复制标题

DOI:
10.1145/1830483.1830731
复制
发表时间:
2010-07
期刊:
--
影响因子:
--
通讯作者:
Adam C. Jensen;B. Cheng
Adam C. Jensen;B. Cheng
中科院分区:
其他
文献类型:
--
作者:
Adam C. Jensen;B. Cheng

文献摘要

被引文献

相似文献

维护一个软件的面向对象设计是一项困难而耗时的任务。自动化设计重构的先前方法集中于对给定软件设计进行小的迭代更改。然而,这种方法没有利用设计更改的组合,从而限制了它们可以生成的重构策略的丰富性。为了解决这个问题,本文介绍了一种方法,支持组合的设计变更,并使设计模式的引入重构过程的主要目标。所提出的方法使用遗传编程和软件工程指标,以确定最合适的一组重构应用到软件设计。我们通过将其应用于大量已发表的模型以及真实案例研究来说明这种方法的有效性
Maintaining an object-oriented design for a piece of software is a difficult, time-consuming task. Prior approaches to automated design refactoring have focused on making small, iterative changes to a given software design. However, such approaches do not take advantage of composition of design changes, thus limiting the richness of the refactoring strategies that they can generate. In order to address this problem, this paper introduces an approach that supports composition of design changes and makes the introduction of design patterns a primary goal of the refactoring process. The proposed approach uses genetic programming and software engineering metrics to identify the most suitable set of refactorings to apply to a software design. We illustrate the efficacy of this approach by applying it to a large set of published models, as well as a real-world case study