Project: European Research Council - Advanced Grant (ERC-AdG)
One of the long-lasting dreams in science fiction is the ability to arrest criminals before they even commit crimes. Software testing researchers have a similar dream: when the context for a bug manifestation occurs in the field, the goal is to discover and fix the bug before it causes any in-field failure. In fact, current practice of pre-release testing is severely limited when dealing with autonomous AI (Artificial Intelligence) systems (such as self-driving cars, robots, automated traders, virtual doctors and customer service chatbots), running in complex, rapidly changing environments, which cause their run-time adaptation, learning and knowledge acquisition, because pre-release testing cannot exhaustively explore all different contexts and states in which the software will be running.
The PRECRIME project introduces a new, disruptive view on testing, called anticipatory testing and aimed at fixing bugs before they even manifest themselves in the field. Anticipatory testing is activated at run-time by a new type of oracles, called self-assessment oracles, which observe and report unexpected execution contexts. A self-assessment oracle is an estimator of the system's confidence in being able to handle a new execution context correctly. The goal of anticipatory testing is to anticipate any failure that might occur in the field due to unexpected execution contexts. Whenever an execution context monitored at runtime by self-assessment oracles is estimated as a low confidence context for the system, anticipatory testing exercises the software automatically and extensively in similar contexts. Timely activation of anticipatory testing by runtime observations results in early, anticipatory fault detection. Combined with automated patch synthesis, anticipatory testing leads to the release of a patch for the fault before any software failure occurs in the field.
UROP Summer students
Events and Invited Talks
Software and replication artefacts
Conference presentations and invited talks
The PRECRIME project is funded by the European Research Council, it is supported by Università della Svizzera italiana (USI), and it was granted 12-months of Amazon AWS cloud credits for research in 2019-2020. In Summer 2019 it was granted two Summer student scholarships and in Summer 2020 one Summer student scholarship funded under the program UROP (Undergraduate Research Opportunities Program) of the Faculty of Informatics. The project is hosted inside the Software Institute's labs at USI.
We welcome visiting researchers!