Collaborative Research: CNS Core: Small: RUI: Intelligent Developer Infrastructure

Information

  • NSF Award
  • 2008940
Owner
  • Award Id
    2008940
  • Award Effective Date
    7/15/2020 - 6 years ago
  • Award Expiration Date
    6/30/2023 - 3 years ago
  • Award Amount
    $ 176,018.00
  • Award Instrument
    Standard Grant

Collaborative Research: CNS Core: Small: RUI: Intelligent Developer Infrastructure

Software engineers use development tools to help develop software. The tools may compile computer code into runnable programs, debug programs to find and fix errors, and deploy software across systems. Existing tools used for these tasks are complex. The misuse of tools can introduce errors and inefficiencies. For example, a popular tool for compiling code, called "make", automates compilation with a user-provided encoding of the task. Users of "make" must produce either a simple but inefficient encoding, or an efficient but complex encoding with an increased risk of error. This project introduces techniques that correctly and efficiently automate compilation, debugging, and deployment tasks without programming.<br/><br/>This project proposes a core technique built on dependency graphs. A dependency graph is generated by observing a piece of software interacting with its environment as it runs. This project proposes three tools that leverage dependency graphs to automate software development tasks. First, Riker correctly and efficiently automates compilation tasks based on a single example compilation. Second, Scotty answers high-level queries about where a program went wrong by observing the program's execution. Third, Locutus automates software deployment tasks by observing the user during an example deployment.<br/><br/>This project has the potential to impact the day-to-day work of software developers significantly. Automating support tasks with minimal developer input reduces the cost of software development and guarantees that support tasks are correct by construction. These changes free software developers to focus on their core tasks. This project will provide undergraduate students at Grinnell College and Williams College with opportunities to participate in research, and will broaden participation by including students from underrepresented groups.<br/><br/>All products of this project will be hosted at https://github.com/curtsinger-lab/idi-grant. Code produced in the course of this project will be released under the MIT license. Modifications to existing software will be released under a compatible open source license. Any non-code products will comprise only publicly-available, non-confidential information, and will be released under a Creative Commons license. All products of this project will be preserved for at least five years after the conclusion of the project.<br/><br/>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.

  • Program Officer
    Matt Mutka
  • Min Amd Letter Date
    7/13/2020 - 6 years ago
  • Max Amd Letter Date
    7/13/2020 - 6 years ago
  • ARRA Amount

Institutions

  • Name
    Grinnell College
  • City
    Grinnell
  • State
    IA
  • Country
    United States
  • Address
    1121 Park Street
  • Postal Code
    501121690
  • Phone Number
    6412694983

Investigators

  • First Name
    Charles
  • Last Name
    Curtsinger
  • Email Address
    curtsinger@grinnell.edu
  • Start Date
    7/13/2020 12:00:00 AM

Program Element

  • Text
    CSR-Computer Systems Research
  • Code
    7354

Program Reference

  • Text
    SMALL PROJECT
  • Code
    7923