There are always a number of different Software Engineering projects available, suitable for Summer Projects, Part 4, Masters (both taught and research) and PhD. Below is a very brief summary of the general areas, but for specific discussions for projects available (or if you have others of your own you would like to suggest), please get in touch with Nasser.
These projects involve developing applications (whether it be mobile, desktop or web-based) to help promote effective learning. Sometimes we target particular programming topics, but we are also interested in other domains. In most cases, the end user of these applications are students/learners. An important aspect here is that the tool or app developed is based on sound learning theories, rather than just being "yet another app". Some finished projects are available in the Educational Projects links above.
Multi-core processors are now mainstream, even in mobile devices! Unfortunately, the performance potential inherent in this hardware will not be realised unless modern software developers specifically target them; this is where parallel computing comes in. Traditionally applied only to large-scale scientific and engineering applications, parallel computing includes knowledge and skills that every software developer must be equipped with in order to develop performant and correct applications for today's systems. The Parallel and Reconfigurable Computing group has many projects targeting this area.