Facebook alla ricerca di un metodo di sviluppo più efficiente: premiato un gruppo di ricerca italiano

Un gruppo di ricercatori di Cnr-Isti, l’istituto di Scienza e tecnologia dell’informazione, ha ideato un metodo per verificare il corretto funzionamento in maniera continuata ed efficiente di Facebook, anche a fronte di frequenti aggiornamenti ed evoluzioni, conquistando uno dei 10 premi messi in palio da Facebook Research con un bando internazionale che – appunto – invitava progetti che aiutassero a mitigare gli ingenti costi delle attività di testing e validazione che devono esser continuamente effettuate per garantire l’operatività e l’efficienza di grandi piattaforme software.
Il progetto Static Prediction of Test Flakiness, elaborato da Breno MirandaAntonia Bertolino di Cnr-Isti di Pisa, con Emilio Cruciani e Roberto Verdecchia (entrambi dottorandi del Gran Sasso Science Institute), si è imposto tra i vincitori superando, spiega una nota del Cnr, “ben oltre 100 proposte provenienti da tutto il mondo e giudicate di elevata qualità, come rimarcato nel rivelare le proposte vincitrici da Mark Harman, ricercatore di Fb e promotore del bando”.
In Facebook (così come in Google o Microsoft, o per ogni altra vasta piattaforma in continua evoluzione) il testing ha infatti assunto dimensioni di enorme complessità. A causa di ciò, un problema sempre più pressante è costituito dai cosiddetti flaky test, o test fragili: uno stesso software eseguito nelle medesime condizioni a volte termina con successo e altre volte fallisce. Questo accade quando il fallimento non è in realtà causato da un vero guasto del software sotto test, che funzionerebbe bene, bensì da altre condizioni aleatorie e difficili da identificare nell’utilizzo della piattaforma o nel contesto di esecuzione. Il problema è che ad ogni fallimento (vero o ingannevole che sia), il processo di sviluppo deve esser interrotto per ricercarne e rimuoverne la causa, con ingenti perdite di tempo e soldi quando alla fine si comprende che non esisteva alcun guasto, e di conseguenza a causa della fragilità dei test gli sviluppatori tendono anche a perder fiducia nel processo stesso di collaudo.
Nella pratica, la maniera tradizionale per capire se un fallimento sia dovuto ad un test flaky consiste nel rilanciare lo stesso test diverse volte di seguito, verificando se il risultato sia sempre lo stesso: sulla scala delle diverse centinaia di migliaia di test eseguiti giornalmente in aziende come Facebook, tale pratica non è evidentemente sostenibile. L’idea semplice ma efficace proposta da Cnr-Isti è quella di predire che un test possa esibire caratteristiche di potenziale fragilità guardando al codice del test stesso, sull’ipotesi che i test flaky siano simili fra loro. Tale ipotesi è stata confermata dalla sperimentazione condotta su una vasta base di casi reali di test fragili, che con semplici analisi statiche sono stati identificati con una precisione superiore all’80%.
larepubblica.it

Total
0
Shares
Lascia un commento
Previous Article

Professore dell'Università di Pisa è coordinatore del gruppo Miur per la cittadinanza digitale

Next Article

Scuola digitale e progetto Pon: il bilancio tra luci e ombre

Related Posts