My main research is in formal reasoning techniques for diagnosing and repairing faults in partial declarative specifications. Methods that are central to my work are model checking, inductive logic programming, abductive reasoning and answer set programming.
My focus has been on developing tool-supported approaches that assist software engineers when designing safety-critical systems including methods for goal operationalisation, vacuity detection in conditional scenarios and obstacle generation. In recent years, this has extended to computational methods for supporting serious crime investigations where I am particularly interested in developing AI-based techniques for behavioural analysis and crime linkage in serial crimes.
Some Professional Activities
- PC member, 12th International Conference on Software Engineering and Formal Methods,
- PC member, 22nd International Conference on Requirements Engineering (RE 2014).
- PC member, First International Workshop on Learning and Nonmonotonic Reasoning (LNMR 2013) co-located with LPNMR'13.
- Reviewer, ICSE (2013), TSE (2013, 2012) and IET Software (2012).
- PC member, 22nd International Conference on Inductive Logic Programming (2012).
- Co-Chair of International Workshop on Machine Learning Technologies in Software Engineering
- PC member of International Workshop on Requirements Analysis (IWRA 2010).
- Early Research Officer for BCS Requirements Engineering Specialist Group (2010-present).
- PhD students Officer for BCS Requirements Engineering Specialist Group (2007-2010).