Skip to content

Unit 15 — AI-Assisted Software Engineering

Learning objectives

  • Identify software engineering activities that can be accelerated by foundation models.
  • Explain new assurance risks introduced by generated code and natural-language artifacts.
  • Design human-and-tool workflows that preserve verification and accountability.

Where AI can assist

  • Requirement clarification and example generation.
  • Code completion and transformation.
  • Test-case brainstorming and test generation.
  • Documentation and code summarization.
  • Review suggestions and defect localization.
  • Migration and repetitive maintenance tasks.

New failure modes

Generated artifacts may be plausible but incorrect, insecure, inconsistent with the repository, based on outdated APIs, or impossible to trace to a trustworthy source. Automation can also increase the volume of change, making review and verification capacity the bottleneck.

Assurance-oriented workflow

flowchart LR
    P[Prompt / Task] --> G[Generated candidate]
    G --> R[Human + automated review]
    R --> T[Tests / static / security checks]
    T -->|pass| M[Merge with traceability]
    T -->|fail| P

Principle

AI assistance should reduce low-value effort while increasing—not decreasing—the importance of testability, reviewability, provenance, security, and independent verification.

Final discussion

If code generation becomes extremely cheap, which software engineering activities become more valuable rather than less valuable?