Automated assistance for program restructuring

Author:

Griswold William G.1,Notkin David2

Affiliation:

1. Univ. of California, San Diego

2. Univ. of Washington, Seattle

Abstract

Maintenance tends to degrade the structure of software, ultimately making maintenance more costly. At times, then, it is worthwhile to manipulate the structure of a system to make changes easier. However, manual restructuring is an error-prone and expensive activity. By separating structural manipulations from other maintenance activities, the semantics of a system can be held constant by a tool, assuring that no errors are introduced by restructuring. To allow the maintenance team to focus on the aspects of restructuring and maintenance requiring human judgment, a transformation-based tool can be provided—based on a model that exploits preserving data flow dependence and control flow dependence—to automate the repetitive, error-prone, and computationally demanding aspects of restructuring. A set of automatable transformations is introduced; their impact on structure is described, and their usefulness is demonstrated in examples. A model to aid building meaning-preserving restructuring transformations is described, and its realization in a functioning prototype tool for restructuring Scheme programs is discussed.

Publisher

Association for Computing Machinery (ACM)

Subject

Software

Reference51 articles.

1. ~AHO A. V. SETHI a. AND ULLMAN J. D. Comptlers Prznciples Techniques and Tools. ~Addison-Wesley Reading Mass. 1986. ~AHO A. V. SETHI a. AND ULLMAN J. D. Comptlers Prznciples Techniques and Tools. ~Addison-Wesley Reading Mass. 1986.

2. ~ALLEN F. E. AND COCKE J. A catalogue of optimizing transformations. In R. Rustin editor ~Design and Opttmization of Compilers. Prentice-Hall Englewood Cliffs N J 1972. ~ALLEN F. E. AND COCKE J. A catalogue of optimizing transformations. In R. Rustin editor ~Design and Opttmization of Compilers. Prentice-Hall Englewood Cliffs N J 1972.

Cited by 84 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Refactoring in Computational Notebooks;ACM Transactions on Software Engineering and Methodology;2023-04-26

2. Clean Code in Practice: Challenges and Opportunities;2023

3. Effort Estimation for Architectural Refactoring of Data Tier Software;2022 IEEE 19th International Conference on Software Architecture (ICSA);2022-03

4. Concept Design Moves;Lecture Notes in Computer Science;2022

5. Deep Learning Based Code Smell Detection;IEEE Transactions on Software Engineering;2021

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3