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. © 2005 Elsevier B.V. All rights reserved.
CITATION STYLE
Cornélio, M., Cavalcanti, A., & Sampaio, A. (2005). Refactoring towards a layered architecture. In Electronic Notes in Theoretical Computer Science (Vol. 130, pp. 281–300). https://doi.org/10.1016/j.entcs.2005.03.015
Mendeley helps you to discover research relevant for your work.