Beyond Code Generation: LLM-supported Exploration of the Program Design Space

AI-generated keywords: Program Design Large Language Models Integrated Development Environment Collaboration AI-powered Systems

AI-generated Key Points

The license of the paper does not allow us to build upon its content and the key points are generated using the paper metadata rather than the full article.

  • Authors explore explicit Large Language Model (LLM)-powered support for iterative program design
  • Program design involves navigating space of alternative problem formulations and solutions iteratively
  • Introduction of Integrated Development Environment (IDE) to facilitate program design by generating new problem framing approaches and alternative solutions
  • IDE helps track design decisions and identify implicit choices made by programmers or LLMs
  • User study shows users combining and parallelizing design phases to explore wider design space with IDE
  • Challenges include keeping up with changes from LLMs and managing information overload
  • Fundamental challenge highlighted for future IDEs: effectively managing attention and determining when agents should surface information to designers
  • Research contributes insights into enhancing efficiency and effectiveness of program design processes through innovative IDE tools tailored for collaboration between human designers and AI-powered systems
Also access our AI generated: Comprehensive summary, Lay summary, Blog-like article; or ask questions about this paper to our AI assistant.

Authors: J. D. Zamfirescu-Pereira, Eunice Jun, Michael Terry, Qian Yang, Björn Hartmann

17 pages; 4 figures; 1 table; to appear in CHI '25
License: CC BY-NC-ND 4.0

Abstract: In this work, we explore explicit Large Language Model (LLM)-powered support for the iterative design of computer programs. Program design, like other design activity, is characterized by navigating a space of alternative problem formulations and associated solutions in an iterative fashion. LLMs are potentially powerful tools in helping this exploration; however, by default, code-generation LLMs deliver code that represents a particular point solution. This obscures the larger space of possible alternatives, many of which might be preferable to the LLM's default interpretation and its generated code. We contribute an IDE that supports program design through generating and showing new ways to frame problems alongside alternative solutions, tracking design decisions, and identifying implicit decisions made by either the programmer or the LLM. In a user study, we find that with our IDE, users combine and parallelize design phases to explore a broader design space -- but also struggle to keep up with LLM-originated changes to code and other information overload. These findings suggest a core challenge for future IDEs that support program design through higher-level instructions given to LLM-based agents: carefully managing attention and deciding what information agents should surface to program designers and when.

Submitted to arXiv on 10 Mar. 2025

Ask questions about this paper to our AI assistant

You can also chat with multiple papers at once here.

The license of the paper does not allow us to build upon its content and the AI assistant only knows about the paper metadata rather than the full article.

AI assistant instructions?

Results of the summarizing process for the arXiv paper: 2503.06911v1

This paper's license doesn't allow us to build upon its content and the summarizing process is here made with the paper's metadata rather than the article.

In their work titled "Beyond Code Generation: LLM-supported Exploration of the Program Design Space," authors J. D. Zamfirescu-Pereira, Eunice Jun, Michael Terry, Qian Yang, and Björn Hartmann delve into the realm of explicit Large Language Model (LLM)-powered support for the iterative design of computer programs. They highlight how program design involves navigating a space of alternative problem formulations and solutions in an iterative manner. The authors introduce an Integrated Development Environment (IDE) that facilitates program design by generating and presenting new problem framing approaches alongside alternative solutions. This IDE also helps track design decisions and identify implicit choices made by programmers or LLMs. Through a user study, they observed that users utilizing their IDE were able to combine and parallelize design phases to explore a wider design space. However, they also encountered challenges in keeping up with changes originating from LLMs and managing information overload. These findings underscore a fundamental challenge for future IDEs aiming to support program design through higher-level instructions provided to LLM-based agents: effectively managing attention and determining when agents should surface information to designers. The research contributes valuable insights into enhancing the efficiency and effectiveness of program design processes through innovative IDE tools tailored for collaboration between human designers and AI-powered systems.
Created on 11 Nov. 2025

Assess the quality of the AI-generated content by voting

Score: -1

Why do we need votes?

Votes are used to determine whether we need to re-run our summarizing tools. If the count reaches -10, our tools can be restarted.

Similar papers summarized with our AI tools

Navigate through even more similar papers through a

tree representation

Look for similar papers (in beta version)

By clicking on the button above, our algorithm will scan all papers in our database to find the closest based on the contents of the full papers and not just on metadata. Please note that it only works for papers that we have generated summaries for and you can rerun it from time to time to get a more accurate result while our database grows.

Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.