Assigning responsibilities to classes is among first and arguably most important steps when creating objectoriented software design. This step depends greatly on human judgment and experience. In this paper our objective is to automatize assigning responsibilities to classes usingmetaheuristic optimization algorithms. Four different algorithms (simple genetic algorithm, hill climbing, simulated annealing and particle swarm optimization), using class coupling and cohesion metrics, were implemented and their results are compared. Implemented algorithms take semantically annotated responsibility dependency graph as input. This paper describes responsibility dependency graph, implemented algorithms and used coupling and cohesion metrics in detail. Paper also reports on a performed case study. Ultimately, based on results obtained from all implemented algorithms, conclusions on search landscape of class responsibility assignment problem are drawn.
CITATION STYLE
Glavaš, G., & Fertalj, K. (2011). Solving the class responsibility assignment problem using metaheuristic approach. Journal of Computing and Information Technology, 19(4), 275–283. https://doi.org/10.2498/cit.1002023
Mendeley helps you to discover research relevant for your work.