From Requirements to Code: Understanding Developer Practices in LLM-Assisted Software Engineering

πŸ“… 2025-07-10
πŸ“ˆ Citations: 0
✨ Influential: 0
πŸ“„ PDF

career value

167K/year
πŸ€– AI Summary
This study investigates the mechanisms and effectiveness boundaries of integrating requirement information in LLM-assisted programming, addressing the fundamental limitations of current LLMs in understanding abstract, high-level requirements. Method: Through semi-structured interviews with 18 developers from 14 industrial organizations and rigorous qualitative analysis, we identify that conventional requirement documents are typically too coarse-grained and lack architectural constraints, design rationale, and contextual details necessary for reliable code generation. Effective prompting requires manual decomposition into fine-grained programming tasks enriched with such domain- and system-specific knowledge. Contribution/Results: We propose the first theoretical framework explaining requirement transformation practices in the LLM era, demonstrating that traditional requirements engineering remains indispensable in AI-augmented development. Our work not only clarifies intrinsic LLM deficiencies in semantic and contextual requirement interpretation but also establishes a foundational theoretical basis for future automated, requirement-driven software engineering paradigms.

Technology Category

Application Category

πŸ“ Abstract
With the advent of generative LLMs and their advanced code generation capabilities, some people already envision the end of traditional software engineering, as LLMs may be able to produce high-quality code based solely on the requirements a domain expert feeds into the system. The feasibility of this vision can be assessed by understanding how developers currently incorporate requirements when using LLMs for code generation-a topic that remains largely unexplored. We interviewed 18 practitioners from 14 companies to understand how they (re)use information from requirements and other design artifacts to feed LLMs when generating code. Based on our findings, we propose a theory that explains the processes developers employ and the artifacts they rely on. Our theory suggests that requirements, as typically documented, are too abstract for direct input into LLMs. Instead, they must first be manually decomposed into programming tasks, which are then enriched with design decisions and architectural constraints before being used in prompts. Our study highlights that fundamental RE work is still necessary when LLMs are used to generate code. Our theory is important for contextualizing scientific approaches to automating requirements-centric SE tasks.
Problem

Research questions and friction points this paper is trying to address.

How developers use requirements with LLMs for code generation
Assessing feasibility of LLMs replacing traditional software engineering
Need for decomposing requirements before LLM input
Innovation

Methods, ideas, or system contributions that make the work stand out.

Manual decomposition of requirements into programming tasks
Enriching tasks with design decisions and constraints
Contextualizing requirements for LLM-assisted code generation
πŸ”Ž Similar Papers
No similar papers found.