Rethinking Software Engineering Foundations in the Large Language Model Era
Authors/Creators
Description
Software engineering theory has been shaped for five decades by three implicit assumptions: that human cognitive labor is the binding constraint on software production, that code is the primary engineering artifact, and that program execution can be treated as a deterministic mapping from inputs to outputs. These assumptions have rarely been made explicit because they have rarely been challenged.
The integration of large language models (LLMs) into software development introduces a different constraint structure. As code generation becomes inexpensive, the binding constraint shifts toward the precision of specification. As natural language specifications become the causal input to production, documentation assumes a central engineering role. And as the production process becomes probabilistic, classical deterministic execution models no longer fully characterize how software artifacts are produced.
We argue that these shifts are consistent with a broader reorientation of software engineering toward constraint-centric methods. To structure this transition, we introduce the Constraint Engineering Framework (CEF), a four-layer specification system grounded in the distinction between knowledge and control. We examine its implications for software lifecycle activities and design principles, and outline a research program that connects this perspective to ongoing empirical and formal work.
Files
PRISM_P1_CACM_v11.pdf
Files
(432.9 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:411d692ac315931457fcb675887f5409
|
432.9 kB | Preview Download |