Predictable Software Systems
1st October 2007 to 30th June 2013
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.