Dissertação
Catálogo de refatorações para a evolução de programas em linguagem Fortran
Fecha
2011-07-08Registro en:
RISSETTI, Gustavo. CATÁLOGO DE REFATORAÇÕES PARA A EVOLUÇÃO DE PROGRAMAS EM LINGUAGEM FORTRAN. 2011. 100 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Santa Maria, Santa Maria, 2011.
Autor
Rissetti, Gustavo
Institución
Resumen
Evolution is a natural characteristic in software development. During the life cycle
of a system, usually there is the need of evolution, mainly to add a new requirement, to
change existing functionality, or to evolve the programming language used. The Fortran
(FORmula TRANslation) language, despite having more than fifty years of existence, is
still widely used in scientific applications. The majority of the existent Fortran applications
is composed of legacy code, using obsolete or deprecated constructions of the
language and, thus, need to evolve to improve their quality attributes. However, this process
is often done manually, without the existence of well-defined rules to be followed,
facilitating the introduction of anomalies in these applications. Software evolution can
be benefited from refactoring, which provides well-defined mechanisms to be followed,
helping to maintain and to improve the quality of existent systems. Refactoring is a software
engineering technique that transforms software artefacts in order to improve them,
without compromising their functionality. It is a permanent task in the life cycle of an
application and is directly associated with the software non-functional requirements, such
as modularization, legibility, and performance. This technique is widely used in objectoriented
languages, but is still largely unexplored in procedural languages such as Fortran.
In this context, this work explores the need for refactorings for the Fortran language, together
with the issue of evolving legacy code. This goal is achieved through the proposal
of a refactoring catalog to the evolution of Fortran programs, and the automation of some
of them in the Photran framework. The proposed refactorings are evaluated and validated
in applications written in Fortran.