Refactoring Towards a Layered Architecture

  • Authors:
  • Márcio Cornélio;Ana Cavalcanti;Augusto Sampaio

  • Affiliations:
  • Departamento de Sistemas Computacionais, Escola Politécnica --- Universidade de Pernambuco, Recife, PE, Brasil;Department of Computer Science, University of York, York, England;Centro de Informática, Universidade Federal de Pernambuco, Recife, PE, Brasil

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we present how refactoring of object-oriented programs can be accomplished by using formal refinement. Our approach is based on the use of refactoring rules designed for a sequential object-oriented language of refinement (rool) similar to Java. We define a strategy that aims at structuring programs according to a layered architecture that involves the application of refactoring rules, object-oriented programming laws, and data and algorithm refinement. As the laws are proved in a weakest precondition semantics of rool, correctness of refactoring is ensured by construction.