Automated Software Engineering
Investigating and developing automated techniques and tools to enhance support for human activities in software development, from analysis and design, to implementation, testing, and maintenance.
Exploring new ways of bridging the needs of users, customers, and other stakeholders of software systems, to the capabilities and opportunities afforded by software-intensive technologies.
Studying how to engineer software to adapt and evolve over its lifetime to ensure the effective operation of the ubiquitous, cyber-physical-social systems that have become an integral part of our world.
Empirical Studies of Software Development
Engaging with practitioner communities and software organisations through empirical studies of actual practice and products in order to derive theory and inform practice at the leading-edge of software development.
User eXperience Design
Investigating and creating new frameworks, principles and concepts for mobile, tangible and ubiquitous computing that enhance users' experience of cyber-physical-social systems.
Aeronautics & Aerospace
Design techniques for evolution, testing, verification, and re-configuration of evolving software.
Health & Wellbeing
Wearable and Internet of Things for self-quantification to improve health and wellbeing.
Policing & Forensics
Evidence handling methods for forensic evidence from the social media.
Security & Privacy
Adaptive software capabilities to deliver secure software and support users in managing their privacy.
Adaptive technologies to support energy, transport, and food security.