Automated refactorings for high performance Fortran programmes. (31st May 2011) - Boniati, Bruno Batista; Charão, Andrea Schwertner; de Oliveira Stein, Benhur; Rissetti, Gustavo; Piveta, Eduardo Kessler
Refactoring is a software engineering technique aimed at improving the design of software applications, without changing their external behaviour. Several refactorings have been proposed for object-oriented languages, but there are few related works focusing on procedural programming. Fortran is a procedural language heavily used in high performance computing, which is not fully explored considering refactoring support. In this paper, we describe a set of automated refactorings for Fortran based on the Photran plug-in, which is integrated with the Eclipse integrated development environment (IDE). We present a set of experiments to evaluate the impact of the proposed refactorings in third-party Fortran applications. The results show that the proposed refactorings improve the design of existing applications without compromising their performance.