Practical Program Restructuring for Software Evolution
Practical Program Restructuring for Software Evolution
批准号:
9508745
负责人:
William Griswold
金额:
$21.84万
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
1995
资助国家:
美国
项目状态:
已结题
起止时间:
1995-07-01 至 1999-06-30
中文摘要
该项目正在开发和评估大型系统工具辅助重组的新技术。 软件演化的过度成本在很大程度上是由于系统的结构不适当,相对于正在发生的变化。 工具辅助的程序重构是为了以比手工更改更低的成本和风险来更改系统的结构而研究的。 在这种方法中,工具用户选择要应用于所选程序组件的转换。 该工具进行检查,以确保每个转换都将保留程序的功能行为。 如果是,它将执行对所选组件的转换,并更新任何相关组件以保持一致性。 工具辅助的重组尚未被证明在工业规模的应用中是实用的。 例如,一些工具需要详尽的过程间数据流分析,但在大型程序上执行成本很高。以前的重组研究没有解决常见的复杂结构,如指针算术,函数指针,注释,文本宏和条件编译。 为了使大型项目的重组切实可行,该项目正在开发和调整技术来解决这些问题。 需求驱动的数据流正在研究克服穷举数据流分析的许多性能问题。查询优先级和缓存的答复进行了研究,以尽量减少繁琐的和潜在的不正确的用户查询。测试和语义差异也可以在重构之后提供正确性检查。 案例研究的目的是评估所发展的技术和大规模重组的好处。
英文摘要
This project is developing and evaluating new techniques for tool-assisted restructuring of large systems. The excessive cost of software evolution is due in large part to inappropriate structure of a system, relative to the changes taking place. Tool-assisted program restructuring is studied for changing a system's structure at lower cost and risk than making changes by hand. In this approach, a tool user selects transformations to apply to chosen program components. The tool checks to make sure that each transformation will preserve the functional behavior of the program. If so, it performs the transformation to the chosen component and updates any related components to preserve consistency. Tool-assisted restructuring has not been demonstrated to be practical in industrial-scale applications. For example, exhaustive interprocedural data flow analysis is required by some tools, but is costly to perform on large programs. Previous restructuring research has not addressed common complicating constructs such as pointer arithmetic, function pointers, comments, textual macros, and conditional compilation. To make the restructuring of large programs practical, this project is developing and adapting techniques to address these problems. Demand-driven data flow is being investigated to overcome many performance problems of exhaustive data flow analysis. Query prioritization and caching of replies are studied to minimize burdensome and potentially incorrect user queries. Testing and semantic differencing may also provide checks of correctness after restructuring. A case study is intended to evaluate the techniques developed and the benefits of large-scale restructuring.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
SHF: Small: Scalable and Practical Detection of Invariants for Software Inspection
-
批准号:1719155
-
项目类别:Standard Grant
-
资助金额:$50.0万
-
财政年份:2017
-
负责人:William Griswold
-
依托单位:
CPS: TTP Option: Synergy: Collaborative Research: Calibration of Personal Air Quality Sensors in the Field - Coping with Noise and Extending Capabilities
-
批准号:1446912
-
项目类别:Standard Grant
-
资助金额:$111.0万
-
财政年份:2015
-
负责人:William Griswold
-
依托单位:
SEL: Small: Crowdsourced Software Engineering using Gamification
-
批准号:1423517
-
项目类别:Standard Grant
-
资助金额:$47.5万
-
财政年份:2014
-
负责人:William Griswold
-
依托单位:
I-Corps: CodeSpells: Game-Based Education in American Schools
-
批准号:1359492
-
项目类别:Standard Grant
-
资助金额:$5.0万
-
财政年份:2014
-
负责人:William Griswold
-
依托单位:
NeTS:Small:Collaborative Research: Protocols and Analysis for Predictable Wireless Sensor Networks
-
批准号:1144757
-
项目类别:Standard Grant
-
资助金额:$14.92万
-
财政年份:2011
-
负责人:William Griswold
-
依托单位:
CPS:Medium: CitiSense - Adaptive Services for Community-Driven Behavioral and Environmental Monitoring to Induce Change
-
批准号:0932403
-
项目类别:Standard Grant
-
资助金额:$149.91万
-
财政年份:2009
-
负责人:William Griswold
-
依托单位:
Collaborative Proposal: Center for Software-Intensive Ultra-Large-Scale Systems
-
批准号:0700712
-
项目类别:Standard Grant
-
资助金额:$1.0万
-
财政年份:2007
-
负责人:William Griswold
-
依托单位:
Collaborative Proposal: SoD-TEAM: Representations for a Science of Design
-
批准号:0613845
-
项目类别:Standard Grant
-
资助金额:$39.28万
-
财政年份:2006
-
负责人:William Griswold
-
依托单位:
Collaborative Proposal: Advances in Aspect-Oriented Languages, Methods, and Tools
-
批准号:0429947
-
项目类别:Continuing Grant
-
资助金额:$0.0万
-
财政年份:2004
-
负责人:William Griswold
-
依托单位:
Coping With Software Change Using Information Transparency
-
批准号:9970985
-
项目类别:Standard Grant
-
资助金额:$18.0万
-
财政年份:1999
-
负责人:William Griswold
-
依托单位:
Practical Automated Assistance for Program Restructuring
-
批准号:9211002
-
项目类别:Continuing Grant
-
资助金额:$9.0万
-
财政年份:1992
-
负责人:William Griswold
-
依托单位:
海外基金