Search-Based Parallel Refactoring Using Population-Based Direct Approaches

dc.authoridKILIC, HUREVREN/0000-0003-2647-8451
dc.authorwosidKilic, Hurevren/V-4236-2019
dc.contributor.authorKilic, Hurevren
dc.contributor.authorKoc, Ekin
dc.contributor.authorCereci, Ibrahim
dc.contributor.otherComputer Engineering
dc.date.accessioned2024-10-06T10:57:00Z
dc.date.available2024-10-06T10:57:00Z
dc.date.issued2011
dc.departmentAtılım Universityen_US
dc.department-temp[Kilic, Hurevren] Gediz Univ, Dept Comp Engn, Izmir, Turkey; [Koc, Ekin; Cereci, Ibrahim] Atilim Univ, Dept Comp Engn, Incek, Ankara, Turkeyen_US
dc.descriptionKILIC, HUREVREN/0000-0003-2647-8451en_US
dc.description.abstractAutomated software refactoring is known to be one of the "hard" combinatorial optimization problems of the search-based software engineering field. The difficulty is mainly due to candidate solution representation, objective function description and necessity of functional behavior preservation of software. The problem is formulated as a combinatorial optimization problem whose objective function is characterized by an aggregate of object-oriented metrics or pareto-front solution description. In our recent empirical study, we have reported the results of a comparison among alternative search algorithms applied for the same problem: pure random, steepest descent, multiple first descent, simulated annealing, multiple steepest descent and artificial bee colony searches. The main goal of the study was to investigate potential of alternative multiple and population-based search techniques. The results showed that multiple steepest descent and artificial bee colony algorithms were most suitable two approaches for an efficient solution of the problem. An important observation was either with depth-oriented multiple steepest descent or breadth-oriented population-based artficial bee colony searches, better results could be obtained through higher number of executions supported by a lightweight solution representation. On the other hand different from multiple steepest descent search, population-based, scalable and being suitable for parallel execution characteristics of artificial bee colony search made the population-based choices to be the topic of this empirical study. I In this study, we report the search-based parallel refactoring results of an empirical comparative study among three population-based search techniques namely, artificial bee colony search, local beam search and stochastic beam search and a non-populated technique multiple steepest descent as the baseline. For our purpose, we used parallel features of our prototype automated refactoring tool A-CMA written in Java language. A-CMA accepts bytecode compiled Java codes as its input. It supports 20 different refactoring actions that realize searches on design landscape defined by an adhoc quality model being an aggregation of 24 object-oriented software metrics. We experimented 6 input programs written in Java where 5 of them being open source codes and one student project code. The empirical results showed that for almost all of the considered input programs with different run parameter settings, local beam search is the most suitable population-based search technique for the efficient solution of the search-based parallel refactoring problem in terms of mean and maximum normalized quality gain. However, we observed that the computational time requirement for local beam search becomes rather high when the beam size exceeds 60. On the other hand, even though it is not able to identify high quality designs for less populated search setups, time-efficiency and scalability properties of artificial bee colony search makes it a good choice for population sizes >= 200.en_US
dc.description.woscitationindexConference Proceedings Citation Index - Science
dc.identifier.citation13
dc.identifier.doi[WOS-DOI-BELIRLENECEK-380]
dc.identifier.endpage+en_US
dc.identifier.isbn9783642237157
dc.identifier.isbn9783642237164
dc.identifier.issn0302-9743
dc.identifier.issn1611-3349
dc.identifier.scopusqualityQ3
dc.identifier.startpage271en_US
dc.identifier.urihttps://hdl.handle.net/20.500.14411/8648
dc.identifier.volume6956en_US
dc.identifier.wosWOS:000306979300026
dc.identifier.wosqualityN/A
dc.institutionauthorKılıç, Hürevren
dc.institutionauthorCereci, İbrahim
dc.language.isoenen_US
dc.publisherSpringer-verlag Berlinen_US
dc.relation.ispartof3rd International Symposium on Search-Based Software Engineering, SSBSE 2011 -- SEP 10-12, 2011 -- Szeged, HUNGARYen_US
dc.relation.ispartofseriesLecture Notes in Computer Science
dc.relation.publicationcategoryKonferans Öğesi - Uluslararası - Kurum Öğretim Elemanıen_US
dc.rightsinfo:eu-repo/semantics/closedAccessen_US
dc.subject[No Keyword Available]en_US
dc.titleSearch-Based Parallel Refactoring Using Population-Based Direct Approachesen_US
dc.typeConference Objecten_US
dspace.entity.typePublication
relation.isAuthorOfPublication27e7437e-ade6-4ff4-9395-851c0ee9f537
relation.isAuthorOfPublication26c615ae-248b-4103-b8f9-2afcacddaff0
relation.isAuthorOfPublication.latestForDiscovery27e7437e-ade6-4ff4-9395-851c0ee9f537
relation.isOrgUnitOfPublicatione0809e2c-77a7-4f04-9cb0-4bccec9395fa
relation.isOrgUnitOfPublication.latestForDiscoverye0809e2c-77a7-4f04-9cb0-4bccec9395fa

Files

Collections