Loading…
Loading grant details…
| Funder | National Science Foundation (US) |
|---|---|
| Recipient Organization | Bowling Green State University |
| Country | United States |
| Start Date | Jul 01, 2023 |
| End Date | Jun 30, 2026 |
| Duration | 1,095 days |
| Number of Grantees | 1 |
| Roles | Principal Investigator |
| Data Source | National Science Foundation (US) |
| Grant ID | 2232593 |
The proposed new software infrastructure, srcDiff (SouRce Code DIFFerencer), which brings together investigators from Bowling Green State University and Kent State University, will directly support research on how software changes and evolves over time. The core of the infrastructure is a highly scalable syntactic differencing algorithm that models a programmer’s viewpoint of software change.
The infrastructure also supports querying and exploration of changes and is used to determine which programming language syntactic structures change between two source code versions. Current differencing approaches have no understanding of the syntax of the programming language being used. Thus, srcDiff produces a more accurate and human-understandable difference of changes. The approach is very scalable and can be applied to large software systems.
Accurately analyzing changes to software is vital for studying how large critical software systems evolve. srcDiff provides a means to produce accurate differences in an efficient and scalable manner. The proposed infrastructure will greatly reduce the burden researchers and practitioners incur in obtaining, analyzing, and processing software changes.
Changes to software are used directly or indirectly for a wide variety of tasks including software merging, clone detection, author attribution, bug localization, feature location, recommender systems, commit classification, and much more. Several tools for differencing exist, but there is no other syntactic differencing approach for source code that is accurate, scalable, lossless, and supports analysis of the results.
Currently, no usable syntactic differencing infrastructure is widely available to researchers or practitioners.
Change is an integral part of software development. Knowledge about changes is required for the day-to-day activities of software developers. srcDiff will reduce the cost to perform various types of research and enable a platform for the development of various types of tools to directly aid software developers. As part of their daily development tasks, developers need to inspect recent and past changes, perform code reviews, merge branches, and debug software.
Software project managers need to make informed decisions that require knowledge of changes to their systems, such as change impact analysis. The proposed infrastructure has the potential to positively impact and improve the quality of all types of software. The srcDiff infrastructure appeals to a variety of stakeholders, including researchers, students, and software practitioners.
The srcDiff project website is at www.srcDiff.org. The infrastructure is freely available, and the site includes downloads of the srcDiff tools, documentation, tutorials, and links to the repository of the open-source system. This site will be maintained until at least 2030.
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.
Bowling Green State University
Complete our application form to express your interest and we'll guide you through the process.
Apply for This Grant