Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
9655934 | Electronic Notes in Theoretical Computer Science | 2005 | 20 Pages |
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.
Keywords
Related Topics
Physical Sciences and Engineering
Computer Science
Computational Theory and Mathematics
Authors
Márcio Cornélio, Ana Cavalcanti, Augusto Sampaio,