Innovating Works

S3

Financiado
Semantics of Software Systems
"*What if we had software bots that tirelessly test, debug, and monitor our software systems?* IT workers are expensive and scarce. So why can't we further automate boring, repetitive activities such as testing and debugging? The... "*What if we had software bots that tirelessly test, debug, and monitor our software systems?* IT workers are expensive and scarce. So why can't we further automate boring, repetitive activities such as testing and debugging? The problem is that we lack computer-readable _specifications_ (so-called _oracles_) for what the system should do or not do. For decades, this _oracle problem_ has been a roadblock to automated test generation, trusted software repairs, and accurate monitoring of software. Building on groundbreaking research to infer input languages of systems, S3 introduces a unified approach to _learning oracles automatically_. It takes a given software system; _infers_ and _decodes_ its inputs and outputs; and runs _experiments_ to extract _models_ of how the system behaves, capturing its semantics by predicting output features for given input features. These models, named _system invariants_, allow to _fully automate_ critical software development activities: TESTING. System invariants encode _languages_ for automatically generating test inputs and provide _oracles_ for checking test results: ""In the TLS server, the <payload> in the <heartbeat-response> must be the same as in the <heartbeat-request>."" DEBUGGING. System invariants allow narrowing down causes of software behavior (""The X.509 public key certificate is not recognized if <subject-name> contains a zero byte""). Generated tests and oracles ensure reliable automated repair. MONITORING. System invariants enable detecting abnormal behavior at runtime (""In 'log4j', logging a <user-agent> containing '""${jndi:<url>}""' opens <url>""). Problematic queries can be isolated and investigated until the problem is fixed. In the future, testing, debugging, and monitoring would thus be taken over by _software bots_ who would autonomously explore software behavior, report issues, and suggest actions to their human co-workers, boosting developer productivity and software reliability. " ver más
31/08/2028
3M€
Duración del proyecto: 60 meses Fecha Inicio: 2023-08-22
Fecha Fin: 2028-08-31

Línea de financiación: concedida

El organismo HORIZON EUROPE notifico la concesión del proyecto el día 2023-08-22
Línea de financiación objetivo El proyecto se financió a través de la siguiente ayuda:
ERC-2022-ADG: ERC ADVANCED GRANTS
Cerrada hace 2 años
Presupuesto El presupuesto total del proyecto asciende a 3M€
Líder del proyecto
CISPA HELMHOLTZZENTRUM FUR INFORMATIONSSICHE... No se ha especificado una descripción o un objeto social para esta compañía.
Perfil tecnológico TRL 4-5