Oxford logo

Predictable Software Systems

Project details

Funded by: EPSRC (grant reference EP/F001096/1)

Dates: October 2007 - September 2012

Institutions: University of Oxford

This project is one strand of the EPSRC-funded Large-Scale Complex Information Technology Systems (LSCITS) project (grant reference EP/F001096/1), founded by Dave Cliff (University of Bristol) Justin Keen (University of Leeds) Marta Kwiatkowska (University of Oxford) John McDermid (University of York) and Ian Sommerville (University of St Andrews).


The increasing complexity, scale and pervasive nature of software systems currently being deployed pose new challenges for software engineering. Traditional design and validation technologies are unable to deal with the needs for variability of context, for adaptability to changing scenarios, multiplicity of infrastructures and devices, and for addressing real-time and mobility issues. Software providers must have means to ensure and assess their confidence in the software system in advance of deployment. Consequently, techniques and tools able to predict and systematically validate the behaviour of large-scale networked software systems are necessary. Such tools, notably model checkers, have been developed within the formal methods community, and valuable lessons can also be learned from advances in theoretical computer science, and indeed in the applied mathematical analysis of complex systems in general. However, these cannot handle software adaptiveness, mobility, and system-of-systems issues.

Predictable Software Systems is a paradigm which embodies the desire that pervasive complex software can be built from analysed heterogeneous components, can evolve and adapt over time, and yet where the resultant system would have predictable behaviour. The Predictable Software Systems (PSS) project is part of the Large-Scale Complex IT Systems research programme (LSCITS, pronounced else-its), a collaboration involving five institutions (www.lscits.org). The main focus of the LSCITS programme is on novel approaches and techniques for managing change.

The PSS project has the following broad aims:

  1. To develop foundations and algorithms for automated verification of adaptive systems, such as those whose behaviour depends on scenario or context.
  2. To investigate the use of multi-objective approaches in quantitative evaluation of performance and dependability of embedded real-time software.
  3. To investigate the feasibility of methods for synthesizing policies, such as access control and power management, from specifications.
  4. To develop methodology for trust, privacy and security assurance, which takes into account sociological aspects and context variability.


Further information