Software Engineering and AI

MSc course (co-developer), Open Universiteit, 2025

This course presents an MSc course, Software Engineering and AI. It rests on a simple premise: students should think like a chief engineer. They must own the full lifecycle, even when a task pushes them past their specialty.

Central to the course is a duality in how AI is treated. First, AI is a partner in two roles. As a simulated client, an LLM lets students elicit requirements from an open project idea. As a coding partner, it assists with code review and repetitive implementation work. Students are taught prompting as a discipline for both roles, covering common techniques and prompt security. These elicited requirements then drive two decisions: the architecture and the design patterns used to implement it. Patterns draw on the classic Gang-of-Four vocabulary, extended with AI-specific counterparts such as Retrieval-Augmented Generation and the Model Context Protocol. Second, AI is a black box. It must be integrated, tested, and held to compliance standards it cannot self-certify. Either way, students remain responsible for the outcome.

We report on the course’s first run, piloted with two adult learners, practising professional software engineers. Their capstone is a multi-modal retrieval-augmented generation system combining OCR, vision captioning, and hybrid retrieval. Its AI components were evaluated and audited against the EU AI Act. We share what worked, what surprised us, and what we would change before scaling the course to a full cohort.

Course page (course code IM2203)