Exact search-space size for the refactoring scheduling problem

Automated Software Engineering - Tập 25 - Trang 195-200 - 2017
Rodrigo Morales1, Francisco Chicano2, Foutse Khomh1, Giuliano Antoniol1
1DGIGL, Polytechnique Montréal, Montreal, Canada
2Dept. de Lenguajes y Ciencias de la Computación, Universidad de Málaga, Andalucía Tech, Málaga, Spain

Tóm tắt

Ouni et al. “Maintainability defects detection and correction: a multi-objective approach” proposed a search-based approach for generating optimal refactoring sequences. They estimated the size of the search space for the refactoring scheduling problem using a formulation that is incorrect; the search space is estimated to be too much larger than it is. We provide in this paper the exact expression for computing the number of possible refactoring sequences of a software system. This could be useful for researchers and practitioners interested in developing new approaches to automate refactoring.

Tài liệu tham khảo

Bois, B.D., Demeyer, S., Verelst, J., Mens, T., Temmerman, M.: Does god class decomposition affect comprehensibility? In: IASTED Conference on Software Engineering, pp. 346–355 (2006) Fowler, M.: Refactoring: Improving the Design of Existing Code. Pearson Education India, New Delhi (1999) Harman, M., Tratt, L.: Pareto optimal search based refactoring at the design level. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation. ACM, pp. 1106–1113 (2007) Moghadam, I.H., Cinneide, M.O.: Code-imp: A tool for automated search-based refactoring. In: Proceedings of the 4th Workshop on Refactoring Tools. IEEE Computer Society, pp. 41–44 (2011) Morales, R., Sabane, A., Musavi, P., Khomh, F., Chicano, F., Antoniol, G.: Finding the best compromise between design quality and testing effort during refactoring. In: 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), vol. 1, pp. 24–35 (2016a) Morales, R., Soh, Z., Khomh, F., Antoniol, G., Chicano, F.: On the use of developers? Context for automatic refactoring of software anti-patterns. J. Syst. Softw. (2016b). doi:10.1016/j.jss.2016.05.042 O’Keeffe, M., Cinneide, M.O.: Search-based software maintenance. In: Proceedings of the 10th European Conference on Software Maintenance and Reengineering, 2006. CSMR 2006, pp. 10–260 (2006) Opdyke, W.F.: Refactoring Object-Oriented Frameworks. Ph.D. thesis, University of Illinois at Urbana-Champaign (1992) Ouni, A., Kessentini, M., Sahraoui, H., Boukadoum, M.: Maintainability defects detection and correction: a multi-objective approach. Autom. Softw. Eng. 20(1), 47–79 (2013) Ouni, A., Kessentini, M., Sahraoui, H., Hamdi, M.S.: Search-based refactoring: towards semantics preservation. In: 2012 28th IEEE International Conference on Software Maintenance (ICSM). IEEE, pp. 347–356 (2012) Ouni, A., Kessentini, M., Sahraoui, H., Inoue, K., Hamdi, M.S.: Improving multi-objective code-smells correction using development history. J. Syst. Softw. 105, 18–39 (2015) Ramanujan, S.: Notebooks (2 volumes). Tata Inst. Fundam. Res Bombay 27(96), 816–3236 (1957) The on-line encyclopedia of integer sequences, sequence no. A000522. http://oeis.org/A000522. Accessed 16 Jan 2017 van Rompaey, B., Du Bois, B., Demeyer, S., Pleunis, J., Putman, R., Meijfroidt, K., Dueas, J.C., Garcia, B.: Serious: Software evolution, refactoring, improvement of operational and usable systems. In: 13th European Conference on Software Maintenance and Reengineering, 2009. CSMR’09, pp. 277–280 (2009)