C:C01
Chapter 1: AI Changes the Unit of Software Work
A guide to the published second edition, with literal citations separated from wider editorial reading suggestions.
Chapter guide
Defines an accepted, operable change as the unit of engineering work. The approval-routing case separates business intention, implementation, verification and acceptance, showing why brownfield understanding and explicit decision rights still matter when an AI agent generates the patch.
Sintesi in italiano
Definisce il cambiamento accettato e gestibile come unità del lavoro ingegneristico. Il caso di instradamento delle approvazioni distingue intenzione di business, implementazione, verifica e accettazione, mostrando il ruolo della comprensione del sistema e delle responsabilità decisionali anche quando la patch viene generata da un agent.
Learning goals
- distinguish an implementation artifact from an accepted change
- name the people and evidence required between a request and release
- scope an AI assistant's task without delegating business authority
Obiettivi in italiano
Obiettivi di apprendimento
- distinguere un artefatto di implementazione da una modifica accettata
- identificare le persone e le evidenze necessarie tra la richiesta e la release
- delimitare il task affidato a un assistente AI senza delegargli l'autorità sulle decisioni di business
Chapter outline
- 1.1 Software engineering begins before the code
- 1.2 From autocomplete to delegated execution
- 1.3 The engineer's work before and after AI
- 1.4 The lifecycle of a trustworthy change
- 1.5 The autonomy–accountability boundary
- 1.6 Why brownfield change starts with system comprehension
- 1.7 What the research can and cannot tell us
- 1.8 A teaching case, not a reported field experiment
- 1.9 From generated output to an evidence question
- 1.10 Worked engineering example: where does a change become acceptable?
- 1.11 Practice exercise: define the unit of trustworthy work
Struttura del capitolo
- 1.1 La software engineering comincia prima del codice
- 1.2 Dall'autocomplete all'esecuzione delegata
- 1.3 Il lavoro dell'ingegnere prima e dopo l'AI
- 1.4 Il ciclo di vita di una modifica affidabile
- 1.5 Il confine fra autonomia e accountability
- 1.6 Perché una modifica brownfield parte dalla comprensione del sistema
- 1.7 Che cosa può e non può dirci la ricerca
- 1.8 Un caso didattico, non un esperimento sul campo
- 1.9 Dall'output generato alla domanda sulle evidenze
- 1.10 Esempio ingegneristico svolto: quando una modifica diventa accettabile?
- 1.11 Esercizio pratico: definire l'unità di lavoro affidabile
Cited in the published chapter
12 linked atlas references from literal citations in the English and Italian editions. General bibliography membership and identifier-index entries are counted separately.
SE@PoliMi bibliography 12
- W002 — Code with Me or for Me? How Increasing AI Automation Transforms Developer Workflows
Chen · 2026 - W003 — The Effects of Generative AI on High-Skilled Work: Evidence from Three Field Experiments with Software Developers
Cui · 2026 - W010 — Writing Code vs. Shipping Code: Productivity Effects Across Generations of AI Coding Tools
Demirer · 2026 - W011 — The Productivity-Reliability Paradox: Specification-Driven Governance for AI-Augmented Software Development
Farrag · 2026 - W012 — Agentic Coding in the Wild: Characterizing GitHub Copilot Traces at Production Scale
Liu · 2026 - W023 — Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity
Becker · 2025 - W122 — AI Didn't Make Programming Easier. It Just Made It Differently Difficult
Osborn · 2026 - W153 — Toward Agentic Software Engineering Beyond Code: Framing Vision, Values, and Vocabulary
Hoda · 2026 - W170 — Measuring Program Comprehension: A Large-Scale Field Study with Professionals
Xia · 2018 - W175 — Code Ownership and Software Quality: A Replication Study
Greiler · 2015 - W176 — I Know What You Did Last Summer — An Investigation of How Developers Spend Their Time
Minelli · 2015 - W186 — Maintaining Mental Models: A Study of Developer Work Habits
LaToza · 2006
Trace literal citations to chapter sections
Locations come from the supplied English and Italian source files. Chapter text and figure captions are identified separately; identifier-index references and general bibliography membership are not treated as chapter citations.
- W002 · Code with Me or for Me? How Increasing AI Automation Transforms Developer Workflows
- EN · From autocomplete to delegated execution
EN/chapters/chapter01.tex:33 - EN · The autonomy–accountability boundary
EN/chapters/chapter01.tex:86 - ITA · Dall'autocomplete all'esecuzione delegata
ITA/chapters/chapter01.tex:33 - ITA · Il confine fra autonomia e accountability
ITA/chapters/chapter01.tex:84
- EN · From autocomplete to delegated execution
- W003 · The Effects of Generative AI on High-Skilled Work: Evidence from Three Field Experiments with Software Developers
- EN · What the research can and cannot tell us
EN/chapters/chapter01.tex:118 - ITA · Che cosa può e non può dirci la ricerca
ITA/chapters/chapter01.tex:116
- EN · What the research can and cannot tell us
- W010 · Writing Code vs. Shipping Code: Productivity Effects Across Generations of AI Coding Tools
- EN · From generated output to an evidence question
EN/chapters/chapter01.tex:148 - ITA · Dall'output generato alla domanda sulle evidenze
ITA/chapters/chapter01.tex:145
- EN · From generated output to an evidence question
- W011 · The Productivity-Reliability Paradox: Specification-Driven Governance for AI-Augmented Software Development
- EN · The lifecycle of a trustworthy change
EN/chapters/chapter01.tex:71 - ITA · Il ciclo di vita di una modifica affidabile
ITA/chapters/chapter01.tex:70
- EN · The lifecycle of a trustworthy change
- W012 · Agentic Coding in the Wild: Characterizing GitHub Copilot Traces at Production Scale
- EN · From autocomplete to delegated execution
EN/chapters/chapter01.tex:35 - ITA · Dall'autocomplete all'esecuzione delegata
ITA/chapters/chapter01.tex:35
- EN · From autocomplete to delegated execution
- W023 · Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity
- EN · What the research can and cannot tell us
EN/chapters/chapter01.tex:120 - ITA · Che cosa può e non può dirci la ricerca
ITA/chapters/chapter01.tex:118
- EN · What the research can and cannot tell us
- W122 · AI Didn't Make Programming Easier. It Just Made It Differently Difficult
- EN · The engineer's work before and after AI
EN/chapters/chapter01.tex:53 - ITA · Il lavoro dell'ingegnere prima e dopo l'AI
ITA/chapters/chapter01.tex:53
- EN · The engineer's work before and after AI
- W153 · Toward Agentic Software Engineering Beyond Code: Framing Vision, Values, and Vocabulary
- EN · The engineer's work before and after AI
EN/chapters/chapter01.tex:55 - EN · The autonomy–accountability boundary
EN/chapters/chapter01.tex:86 - ITA · Il lavoro dell'ingegnere prima e dopo l'AI
ITA/chapters/chapter01.tex:55 - ITA · Il confine fra autonomia e accountability
ITA/chapters/chapter01.tex:84
- EN · The engineer's work before and after AI
- W170 · Measuring Program Comprehension: A Large-Scale Field Study with Professionals
- EN · Software engineering begins before the code
EN/chapters/chapter01.tex:17 - EN · Why brownfield change starts with system comprehension
EN/chapters/chapter01.tex:100 - EN · A teaching case, not a reported field experiment
EN/chapters/chapter01.tex:136 - ITA · La software engineering comincia prima del codice
ITA/chapters/chapter01.tex:18 - ITA · Perché una modifica brownfield parte dalla comprensione del sistema
ITA/chapters/chapter01.tex:98 - ITA · Un caso didattico, non un esperimento sul campo
ITA/chapters/chapter01.tex:134
- EN · Software engineering begins before the code
- W175 · Code Ownership and Software Quality: A Replication Study
- EN · A teaching case, not a reported field experiment
EN/chapters/chapter01.tex:136 - ITA · Un caso didattico, non un esperimento sul campo
ITA/chapters/chapter01.tex:134
- EN · A teaching case, not a reported field experiment
- W176 · I Know What You Did Last Summer — An Investigation of How Developers Spend Their Time
- EN · Software engineering begins before the code
EN/chapters/chapter01.tex:19 - ITA · La software engineering comincia prima del codice
ITA/chapters/chapter01.tex:20
- EN · Software engineering begins before the code
- W186 · Maintaining Mental Models: A Study of Developer Work Habits
- EN · Why brownfield change starts with system comprehension
EN/chapters/chapter01.tex:98 - ITA · Perché una modifica brownfield parte dalla comprensione del sistema
ITA/chapters/chapter01.tex:96
- EN · Why brownfield change starts with system comprehension
Editorial reading mappings
Broader topical suggestions can overlap the cited sources. A mapping does not add a citation to the published edition or establish that a practice is effective.
SE@PoliMi bibliography 39
- W001 — AI IDEs or Autonomous Agents? Measuring the Impact of Coding Agents on Software Development
Agarwal · 2026 - W002 — Code with Me or for Me? How Increasing AI Automation Transforms Developer Workflows
Chen · 2026 - W003 — The Effects of Generative AI on High-Skilled Work: Evidence from Three Field Experiments with Software Developers
Cui · 2026 - W004 — Speed at the Cost of Quality: How Cursor AI Increases Short-Term Velocity and Long-Term Complexity in Open-Source Projects
He · 2026 - W005 — Early Adoption of Agentic Coding Tools by GitHub Projects
Raida · 2026 - W006 — Agentic Much? Adoption of Coding Agents on GitHub
Robbes · 2026 - W007 — Usage, Effects and Requirements for AI Coding Assistants in the Enterprise: An Empirical Study
Merler · 2026 - W008 — How Much Does AI Impact Development Speed? An Enterprise-Based Randomized Controlled Trial
Paradis · 2025 - W009 — Productivity Assessment of Neural Code Completion
Ziegler · 2022 - W010 — Writing Code vs. Shipping Code: Productivity Effects Across Generations of AI Coding Tools
Demirer · 2026 - W011 — The Productivity-Reliability Paradox: Specification-Driven Governance for AI-Augmented Software Development
Farrag · 2026 - W012 — Agentic Coding in the Wild: Characterizing GitHub Copilot Traces at Production Scale
Liu · 2026 - W013 — Quantifying the Expectation-Realisation Gap for Agentic AI Systems
Lobentanzer · 2026 - W014 — Adoption and Impact of Command-Line AI Coding Agents: A Study of Microsoft's Early 2026 Rollout of Claude Code and GitHub Copilot CLI
Murphy-Hill · 2026 - W015 — Agentic Delegation and the Language Frontier of Software Developers: A Model and Evidence from Claude Code on GitHub
Quispe · 2026 - W016 — The Impact of AI Coding Assistants on Software Engineering: A Longitudinal Study
Vella · 2026 - W017 — Randomized Controlled Trials for Conditional Access Optimization Agent
Bono · 2025 - W018 — Intuition to Evidence: Measuring AI's True Impact on Developer Productivity
Kumar · 2025 - W019 — Generative AI and labour productivity: a field experiment on coding
Gambacorta · 2024 - W020 — Measuring the Self-Reported Impact of Early-2026 AI on Technical Worker Productivity
Becker · 2026 - W021 — The AI Engineering Report 2026: The Acceleration Whiplash
Faros AI · 2026 - W022 — AI Coding Agents: Adoption Trends
JetBrains Research · 2026 - W023 — Measuring the Impact of Early-2025 AI on Experienced Open-Source Developer Productivity
Becker · 2025 - W024 — 2025 State of AI-Assisted Software Development
Google Cloud DORA · 2025 - W025 — Estimating AI productivity gains from Claude conversations
Tamkin · 2025 - W026 — Accelerate State of DevOps Report 2024
Google Cloud DORA · 2024 - W027 — Beyond the Copilot: Scaling the Agentic Product Development Life Cycle
Relyea · 2026 - W028 — The AI Revolution in Software Development
Relyea · 2026 - W095 — Beyond Code Generation: Reliability, Verification, and Cost Economics in the Agentic Software Development Lifecycle
Bhati · 2026 - W099 — From Code Review to Code Critique: Intent, Drift, and Spotlight for AI-Generated Diffs at Scale
Maddila · 2026 - W122 — AI Didn't Make Programming Easier. It Just Made It Differently Difficult
Osborn · 2026 - W150 — We Permit the Use of AI, but [...]: The Landscape of AI Policies in Popular Open Source Projects
Hora · 2026 - W152 — Agentic Software Engineering: Foundational Pillars and a Research Roadmap
Hassan · 2026 - W153 — Toward Agentic Software Engineering Beyond Code: Framing Vision, Values, and Vocabulary
Hoda · 2026 - W170 — Measuring Program Comprehension: A Large-Scale Field Study with Professionals
Xia · 2018 - W175 — Code Ownership and Software Quality: A Replication Study
Greiler · 2015 - W176 — I Know What You Did Last Summer — An Investigation of How Developers Spend Their Time
Minelli · 2015 - W186 — Maintaining Mental Models: A Study of Developer Work Habits
LaToza · 2006 - W191 — Where Do AI Coding Agents Fail? An Empirical Study of Failed Agentic Pull Requests in GitHub
Ehsani · 2026
Addy Osmani 3
- O015 — Is the IDE dead?
Addy Osmani · 2026-03-20 - O044 — Speech-to-Code: Vibe Coding with Voice
Addy Osmani · 2025-02-28 - O050 — User-centric engineering.
Addy Osmani · 2024-11-15
The Pragmatic Engineer 5
- P038 — What’s Changed in 50 Years of Computing: Part 4
Gergely Orosz · 2025-05-06 - P048 — Software engineering with LLMs in 2025: reality check
Gergely Orosz · 2025-07-01 - P080 — When AI writes almost all code, what happens to software engineering?
Gergely Orosz · 2026-01-06 - P100 — Revisiting “No Silver Bullets” in the age of AI
Gergely Orosz · 2026-05-12 - P122 — The state of the tech industry in 2026
Gergely Orosz · 2026-10-06
Martin Fowler’s website 6
- F001 — The toolchain
Birgitta Böckeler · 2023-07-26 - F007 — How is GenAI different from other code generators?
Birgitta Böckeler · 2023-09-19 - F013 — The role of developer skills in agentic coding
Birgitta Böckeler · 2025-03-25 - F019 — I still care about the code
Birgitta Böckeler · 2025-07-09 - F021 — To vibe or not to vibe
Birgitta Böckeler · 2025-09-23 - F027 — Humans and Agents in Software Engineering Loops
Kief Morris · 2026-03-04
Earlier Non-Deterministic books 19
- B001 — Introduzioni alle parti — Non-Deterministic Software Engineering
Enrico Papalini · - B002 — Fonti, attribuzioni e avvertenze di lettura
Enrico Papalini · - B003 — Summary
Enrico Papalini · - B004 — The Fundamental Shift
Enrico Papalini · - B005 — Vibe Coding vs. AI-Assisted Engineering
Enrico Papalini · - B011 — Looking Forward---The Future of Software Engineering
Enrico Papalini · - B012 — The Pattern Catalog
Enrico Papalini · - B033 — Expert Insights
Enrico Papalini · - B036 — Introduzioni e postfazione — The Bigger Picture
Enrico Papalini · - B037 — Preface
Enrico Papalini · - B047 — Introduzioni alle parti — SDD, seconda edizione
Enrico Papalini · - B048 — Preface
Enrico Papalini · - B082 — Previous Books and Author
Enrico Papalini · - B083 — Introduzioni e postfazione — The Autonomous Future
Enrico Papalini · - B084 — Preface
Enrico Papalini · - B085 — The Continuous Development Revolution
Enrico Papalini · - B101 — References and Sources
Enrico Papalini · - B102 — Avvertenze editoriali e limiti della guida
Enrico Papalini · - B103 — Summary
Enrico Papalini ·