skip to primary navigationskip to content

Department of Computer Science and Technology

Courses 2026–27

 

Course pages 2026–27 (working draft)

AI-Augmented Software Engineering

Principal lecturers: Prof Neil Lawrence, Dr Christian Cabrera Jojoa, Dr Jasmin JAHIĆ
Taken by: MPhil ACS, Part III
Code: L174
Term: Lent
Hours: 16 (8 x 1hr lectures + 8 hrs supervised practicals)
Class limit: max. 30 students
Prerequisites: Good programming skills in at least one programming language, knowledge of software development methodologies (e.g. Agile), software engineering, and fundamentals of artificial intelligence.
timetable

Aims

This course aims to equip students with a multidisciplinary set of skills for transforming the software development life cycle (SDLC) using the latest AI advances. While different stakeholders in the SDLC have core competencies and responsibilities (e.g., developers write code), they also perform multiple additional tasks outside of their core competencies (e.g., documentation, meetings and discussions, training). Therefore, there are multiple opportunities to use AI to assist or automate SDLC tasks, even outside the core competencies. The course develops students’ abilities to recognise opportunities where AI is potentially beneficial, providing empirical evidence on how to transform SDLC with the help of AI. Part of these practical aspects will focus on establishing AI-enabled approaches, including multi-agent systems, for managing the systems engineering pipeline. Students will utilise this knowledge and skills to transform SDLCs in existing organisations or start their own companies and software products with innovative ideas for the current market. The insights provided in this course are based on cutting-edge industrial case studies and fundamental scientific conclusions about the goals of software engineering and the roles that humans have and will have in this process. Furthermore, we include conclusions from use cases regarding the business and management changes in the presence of AI. This multidisciplinary approach enables students to construct knowledge they will use to conduct critical research and advance software engineering beyond technical skills. Students will be able to continue their research in AI-enabled software systems, human-machine interaction, and the adoption of AI in society.

Objectives

By the end of this course, students will be able to:

  1. LO1 Identify SDLC tasks, processes, and methodologies that are effort-intensive and feasible to assist or automate, making them strong candidates for AI assistance.
  2. LO2 Articulate the practical and theoretical limitations and benefits of AI relevant to the SDLC scope.
  3. LO3 Assess the immediate and long-term benefits and drawbacks of adopting GenAI in SDLC.
  4. LO4 Evaluate the readiness of an organisation for the adoption of GenAI in SDLC (skills, roles, processes, and methodologies) and suggest adequate adjustments.
  5. LO5 Articulate the business value of AI adoption within SDLC.
  6. LO6 Implement AI-enabled SDLC pipelines using multi-agent systems.

Syllabus

Eight sessions are reserved for teaching, and each session will focus on a different topic and link to different learning objectives:

  1. Introduction to the Software Development Life Cycle (SDLC) (LO1)
  2. Foundations of AI for Software Engineers (LO2)
  3. Evaluating AI for SDLC challenges (LO2, LO3)
  4. AI-enabled software methodologies (LO1, LO3, LO6)
  5. Multi-agent systems in the SDLC (LO6)
  6. Deploying AI-enabled SDLC pipelines (LO4, LO6)
  7. AI and self-adaptive software maintenance (LO2, LO3)
  8. Measuring the impact of AI adoption (LO3, LO5)

Practical sessions follow the teaching topics. They are implementation-oriented: students work on practical notebooks that apply AI-enabled methods introduced in the course to a scoped software project. Each session has associated learning objectives:

  1. Scoping a group project in SDLC terms (LO1)
  2. Working with language models for software engineering (LO2, LO6)
  3. Building and configuring AI agents (LO1, LO6)
  4. Multi-agent systems for SDLC tasks (LO6)
  5. Deploying an AI-enabled SDLC pipeline (LO4, LO6)
  6. Complementary tools and toolchains (LO4, LO6)
  7. Abstracting AI-enabled workflows for stakeholders (LO4, LO6)
  8. Business and organisational analysis of AI adoption (LO3, LO4, LO5)

Assessment

Assessment comprises a group mini-project and a group presentation. Further detail (format, length limits, and marking criteria) will be provided in the coursework brief.

Mini Project (80%)

Students work in small groups (2–3) on a scoped, prototype-level software project. Each student takes responsibility for one or more SDLC roles (for example, requirements, architecture, development, testing).

The project is a controlled comparison between two modes of development: Phase 1 (non-AI), where selected features are developed without AI tools; and Phase 2 (AI-enabled), where the same system is extended using AI-assisted approaches, including agents and supporting tooling.

Students submit a group report and supporting artefacts (for example, code and design documents), with clear evidence of individual contributions. Assessment emphasises quality of artefacts, depth of comparative analysis, and critical evaluation of AI-enabled software engineering practices (LO1–LO6).

Group presentation (20%)

Groups present the implemented system, the transition from non-AI to AI-enabled development, individual role contributions, and key findings from the comparative analysis. Assessment emphasises clarity, evidence-based reasoning, and justified design and methodological choices (LO2, LO3, LO5, LO6).

Recommended reading

  1. Engineering AI Systems: Architecture and DevOps Essentials, Ingo Weber, Liming Zhu, Len Bass, Qinghua Lu, 2025.
  2. Digital Transformation: A Holistic Perspective for Business Leaders, Jan Bosch, 2024.
  3. Artificial Intelligence: A Modern Approach, Global Edition, Stuart Russell, Peter Norvig, 2021.
  4. The Software Architect Elevator: Redefining the Architect’s Role in the Digital Enterprise, Gregor Hohpe, 2020.
  5. Shai Shalev-Shwartz et al., Understanding Machine Learning: From Theory to Algorithms. New York, NY, USA: Cambridge University Press, 2014.
  6. Software Architecture in Practice, Len Bass, Paul C. Clements, Rick Kazman, 2012.
  7. The Atomic Human: Understanding Ourselves in the Age of AI. Neil D. Lawrence, Random House, 2024.