Teaching
I teach the first-year COM1001 Introduction to Software
Engineering module. Key to the module is team-based software
development, writing automated tests, and improving code design through
refactoring.
I also teach the third-year COM3529 Software Testing and
Analysis module. Topics include how to write effective,
maintainable tests, and how to analyse their quality. The module also
covers more research-oriented topics such as automatically generating test
cases (e.g., through fuzzing and search-based techniques), mutation
analysis, and methods for test case priortisation.
I also supervise a range of third year dissertation
projects on topics in software engineering, software testing, and
on those provided by local industry partners.