Software systems and computer networks are prone to failure. The National Institute of Standards and Technology estimates software errors cost the U.S. economy $59.5 billion annually. It is likely that costs in Europe are on a similar scale.

Static Analysis is a technique for analysing software without executing it, to help detect and repair defects. With increasing complexity of software, traditional testing and validation techniques are stretched to the limit. Automated static analysis tools look set to become a crucial part of modern software development.

The RESA project, based in the Laboratory for Foundations of Computer Science within the University of Edinburgh School of Informatics, aims to capitalise on a ground-breaking strand of research supported by EPSRC funds since 2000, set in a wider background of over 40 years of world-leading research in Types, Logic, and Theorem Proving at Edinburgh, much of it also funded by EPSRC and its predecessors.

We are building a demonstration static analysis tool for Java which targets a new class of software defects not considered by existing tools: those arising from resource usage violations. Our aim is to demonstrate that resource analysis is a mature and effective technology which can be practically applied in Java program development.

RESA is funded by the EPSRC Follow-on Fund grant number EP/G006032/1