COM1001 Introduction to Software Engineering

I organise and supervise team projects with Prof Phil McMinn in COM1001 (Semester 2), where all students work as a group to implement software systems from requirements. Students are expected to use software engineering disciplines, including requirement engineering, SCRUM, and test-driven development. 

COM3523/6523 Software Reengineering

I teach Software Reengineering with Dr Neil Walkinshow to our UG and MS cohorts. The course aims to teach how to understand and restructure legacy software systems. I focus on the restructuring part, with an emphasis on testing for reengineering, redistributing responsibilities, managing code clones, and removing dead code. 

UG/MSc Dissertation Projects

I also supervise UG and MSc dissertation projects. These tend to centre on my research interests, especially mutation testing and testing for AI. Read more about How I supervise.