Research interests include (but are not limited to):

Software Engineering lifecycle

Questions such as how we can improve the levels of feedback and control to bring quality software to the client in a timely and cost effective manner. What automation can we include to improve quality and efficiency? How can we harness the power of meta-programming to ease software development especially in large and complex domains?

Education and learning

Although humans (and, indeed, almost all living things) are much more complex than computers, what can we learn from the ways computers work about the ways we learn? What do the techniques we use to facilitate smooth and efficient team work in software engineering projects have to tell us about how we can improve teaching and learning?

Artificial Intelligence

Now that we have more progress being made on so-called “deep learning networks”, can we progress models of cognitive computing, and design multiple architecture models which provide better levels of artificial general intelligence?

Computational linguistics

Manipulating text is easy - understanding what humans mean by text, in a computational sense, is somewhat harder. And yet “simple” text replacement systems can compute anything which is computable. Can we develop systems better able to extract meaning from human’s writing, or do we need to impose a form of ‘strict’ language on users?

Text analysis and manipulation

Identifying the formal level of competence in a language, the authorship of a document, the contextual meaning of a word in a document, or the position in “concept space” of a sentence, paragraph or more; using basic statistics, pattern matching, clustering and various AI and evolutionary computation systems makes this an interesting field.

Digital Identity

Digital Identity is the concept that we all portray multiply facetted views of ourselves on the Web (and, more broadly, on the internet) and that these are part of our overall indentiy as seen by others. We arenot necessarily in control of information about us, and whilst this is no different to the world before the WWW, the information is now more persistent, and searchable. These factors make both qualitative and quantitative differences to the way information about us can be used, viewed, and interpreted.

Technology Enhanced Learning

Technology (specifically computer based technology) is all around us, and is used in education as much as any other sphere. Studies on the efficacy of new eways of working in education are often hampered by ethical concerns over running randomised trials, because they may disadvantage one group of students. I have a particular interest in whether there is a placebo effect which needs to be considered in TEL research, as well as whether there are instances where a non-technology mediated experience provides better benefits.

Agent based computation

Modern life and the systems which support it are highly complex. Agent based computation allows multiple simple agents to be designed to deal with specific attributes and to work together to cover the whole of the problem and solution spaces.

Enterprise bus architectures

Traditionally systems were either monolithic, or made up of many legacy elements with bespoke communications channels between them. Reminiscent of Baar’s Global Workspace Theorem, the Enterprise Bus provides a central “workspace” where information can be exchanged between systems easily. It does not appear to have been by design, but this may be one of the single biggest moves towards business intelligence that we have seen to date.

Ethics and computing

From Data Protection and Display Screen Equipment regulations, to hacking, privacy invasions, pornography and cyber-bullying, computing raises a number of issues which have ethical implications.

Social systems provide challenges for technology acceptance - sometimes this is a good thing, but in others we would like to be able to design our approach to reach the broadest acceptance as soon as possible so that our projects are successful. Using feedback models and analogues with physical systems, the idea is to develop metrics which can be used to calculate possible outcomes when interventions are made.

Assessment and automation

Education systems have, for a long time, been based on an industrial model - passing students through a pipeline, with intermittent quality testing. With increasing numbers of students, decreasing resources, and an increasing realisation that tailoring the learning journey to the students starting position might be a good idea, it is important to investigate ways of minimisising the administrative burden of assessment to that staff focus can be placed on the collaborative acts of knwoledge creation and sharing which give education systems value.