A software restructuring tool for oberon
[摘要] ENGLISH ABSTRACT:Software restructuring is a form of perfective maintenance that modifies the structureof a program's source code. lts goal is increased maintainability to better facilitateother maintenance activities, such as adding new functionality or correcting previouslyundetected errors.The modification of structure is achieved by applying transformations to the sourcecode of a software system. Software engineers often attempt to restructure software bymanually transforming the source code. This approach may lead to undesirable andundetectable changes in its behaviour. Ensuring that manual transformations preservefunctionality during restructuring is difficult; guaranteeing it is almost impossible.One solution to the problem of manual restructuring is automation through use ofa restructuring tool. The tool becomes responsible to examine each transformationand determine its impact on the software's behaviour. If a transformation preservesfunctionality, it may be applied to produce new source code. The tool only automatesthe application of transformations. The decision regarding which transformation toapply in a specific situation still resides with the maintainer.This thesis describes the design and implementation of a restructuring tool for theOberon language, a successor of Pascal and Modula-2, under the PC Native Oberonoperating system. The process of creating an adequate abstraction of a program'sstructure and its use to apply transformations and generate new source code are investigated.Transformations can be divided into different classes: Scoping, Syntactic,Control flow and Abstraction transformations. The restructuring tool described in thisthesis contains implementations from all four classes. Informal arguments regardingthe correctness of each transformation are also presented.
[发布日期] [发布机构] Stellenbosch University
[效力级别] [学科分类]
[关键词] [时效性]