@conference {SNF16, title = {Designing and Developing Automated Refactoring Transformations: An Experience Report}, booktitle = {Proceedings of the 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2016)}, year = {2016}, month = {mar}, pages = {693{\textendash}697}, publisher = {IEEE Computer Society}, organization = {IEEE Computer Society}, address = {Suita, Osaka, Japan}, abstract = {There are several challenges which should be kept in mind during the design and development phases of a refactoring tool, and one is that developers have several expectations that are quite hard to satisfy. In this report, we present our experiences of a two-year project where we attempted to create an automatic refactoring tool. In this project, we worked with five software development companies that wanted to improve the maintainability of their products. The project was designed to take into account the expectations of the developers of these companies and consisted of three main stages: a manual refactoring phase, a tool building phase, and an automatic refactoring phase. Throughout these stages we collected the opinions of the developers and faced several challenges on how to automate refactoring transformations, which we present and summarize.}, keywords = {Automated Refactoring, code smells, coding issues, software maintenance}, doi = {10.1109/SANER.2016.17}, url = {http://ieeexplore.ieee.org/document/7476700/}, author = {Sz{\H o}ke, G{\'a}bor and Csaba Nagy and Rudolf Ferenc and Tibor Gyim{\'o}thy} }