
NSF Org: |
CCF Division of Computing and Communication Foundations |
Recipient: |
|
Initial Amendment Date: | August 17, 2022 |
Latest Amendment Date: | August 17, 2022 |
Award Number: | 2232565 |
Award Instrument: | Standard Grant |
Program Manager: |
Sol Greenspan
sgreensp@nsf.gov (703)292-7841 CCF Division of Computing and Communication Foundations CSE Directorate for Computer and Information Science and Engineering |
Start Date: | September 1, 2022 |
End Date: | December 31, 2024 (Estimated) |
Total Intended Award Amount: | $150,000.00 |
Total Awarded Amount to Date: | $150,000.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
300 TURNER ST NW BLACKSBURG VA US 24060-3359 (540)231-5281 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
2202 Kraft Drive BLACKSBURG VA US 24060-6356 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): | Software & Hardware Foundation |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
As software is maintained over its lifetime and new features are added, it often becomes necessary to restructure the software to continue working with expected functionality and performance. This restructuring, called refactoring, is tedious and error-prone, consuming software development time and delaying releases. In modern software development processes, refactoring is routine but only applies to software running on one machine. With the increasing ubiquity of distributed applications, such as those for the web, mobile systems, and the Internet of Things, refactoring techniques do not apply. This EAGER grant explores the issues involved in extending refactoring to distributed systems.
Refactoring is the application of semantics-preserving program transformations to restructure software for better performance, modularity, and other attributes. Refactoring has become an integral part of the modern software development processes, but only for centralized software that runs within a single address space. When evolving a distributed system, programmers apply existing refactoring techniques to its individual components, treating them as separate, unrelated parts, so these techniques remain unaware of the distributed communication across these parts. When programmers can refactor only the individual parts of a distributed system, (1) the overall system?s execution semantics may not be preserved, and (2) the system?s distribution cannot be changed, thus making it impossible to fulfill many important objectives for modifying modern distributed systems. Distributed applications have many accompanying challenges ? such as being written by independent programmers in decentralized ecosystems and in multiple languages with different semantics that need to be related and preserved. This EAGER grant will uncover technical possibilities and challenges as a step toward understanding and addressing these challenges.
This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
Last Modified: 03/11/2025
Modified by: Eli Tilevich
Please report errors in award information by writing to: awardsearch@nsf.gov.