Supporting design model refactoring for improving class responsibility assignment
Proceedings of the 14th international conference on Model driven engineering languages and systems
Single and Multi Objective Genetic Programming for software development effort estimation
Proceedings of the 27th Annual ACM Symposium on Applied Computing
An analysis of the effects of composite objectives in multiobjective software module clustering
Proceedings of the 14th annual conference on Genetic and evolutionary computation
Applying search based optimization to software product line architectures: lessons learned
SSBSE'12 Proceedings of the 4th international conference on Search Based Software Engineering
A comparison of two memetic algorithms for software class modelling
Proceedings of the 15th annual conference on Genetic and evolutionary computation
Proceedings of the 2013 International Conference on Software Engineering
Journal of Intelligent & Fuzzy Systems: Applications in Engineering and Technology
Hi-index | 0.00 |
In the context of object-oriented analysis and design (OOAD), class responsibility assignment is not an easy skill to acquire. Though there are many methodologies for assigning responsibilities to classes, they all rely on human judgment and decision making. Our objective is to provide decision-making support to reassign methods and attributes to classes in a class diagram. Our solution is based on a multi-objective genetic algorithm (MOGA) and uses class coupling and cohesion measurement for defining fitness functions. Our MOGA takes as input a class diagram to be optimized and suggests possible improvements to it. The choice of a MOGA stems from the fact that there are typically many evaluation criteria that cannot be easily combined into one objective, and several alternative solutions are acceptable for a given OO domain model. Using a carefully selected case study, this paper investigates the application of our proposed MOGA to the class responsibility assignment problem, in the context of object-oriented analysis and domain class models. Our results suggest that the MOGA can help correct suboptimal class responsibility assignment decisions and perform far better than simpler alternative heuristics such as hill climbing and a single-objective GA.