30 mila bug al mese: ecco come Microsoft li gestisce con il machine learning
di Andrea Bai pubblicata il 23 Aprile 2020, alle 19:41 nel canale InnovazioneLa software house di Redmond divulga pubblicamente i dettagli del suo approccio alla gestione dei bug nel lavoro degli sviluppatori: il machine learning per classificare e dare priorità
Gestire i circa 30 mila bug ogni mese generati da un esercito di 47 mila sviluppatori non è impresa che si possa improvvisare e tantomeno affrontare superficialmente. Soprattutto se sei una realtà come Microsoft e i tuoi software sono usati sulla stragrande maggioranza dei PC in tutto il mondo.
Scoot Christiansen, senior security program manager per Microsoft ha spiegato come la società affronta l'oneroso compito che, oltre a prevedere la documentazione dei bug su repository come GitHub e AzureDevOps, coinvolge anche le capacità delle tecniche di machine learning per aiutare nell'identificazione dei bug, nella loro classificazione e assegnazione di priorità.
"Il nostro obiettivo è stato quello di costruire un sistema di machine learning che classifichi i bug come security/non-security e come critici/non-critici con un livello di accuratezza che fosse il più vicino possibile a quello di un esperto di sicurezza" spiega Christiansen.
Machine Learning a caccia di bug: ora si punta ad aprire l'approccio
Microsoft si è basata su quasi 20 anni di dati storici, per allenare il suo modello di machine learning somministrando bug classificati come security o non-security. Il modello ha imparato a classificarei bug e ad applicare etichette di gravità come "critico", "importante" o "basso impatto". Il lavoro è stato condotto assieme ad esperti di sicurezza e scienziati dei dati, assicurandosi inoltre di poter monitorare il modello anche una volta messo in produzione. Per fare ciò viene revisionato periodicamente un campione casuale di ciò che il sistema ha classificato, e il modello viene inoltre riallenato continuamente con nuovi dati revisionati dagli esperti di sicurezza Microsoft.
I risultati di questo approccio sembrano dare ragione al colosso di Redmond: il modello riesce ad identificare bug di sicurezza nel 99% dei casi ed etichettarli correttamente il 97% delle volte. Certo è abbastanza insolito che una realtà come Microsoft riveli pubblicamente il volume di bug generato mensilmente dai suoi sviluppatori, e addirittura le modalità con cui si affronta il problema. Ma in realtà l'azienda di Redmond vuole andare ancor oltre: l'intenzione è quella di rendere open source la sua metodologia su GitHub, così che altre realtà possano implementare un modello simile.
Coloro i quali sono interessati all'argomento da un punto di vista più tecnico e dettagliato possono consultare la documentazione accademica pubblicata dalla stessa Microsoft.
10 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoSe l'obiettivo e' avere software in perenne beta con bug gravi nella versione definita stabile, buona idea.
Veramente 47000 sviluppatori è un numero estremamente alto!
Se ognuno di questi produce meno di un bug al mese, o è veramente bravo o (più credibilmente) produce poche decine di righe di codice al mese.
Se ognuno di questi produce meno di un bug al mese, o è veramente bravo o (più credibilmente) produce poche decine di righe di codice al mese.
Forse ti interesserà sapere che su grossi progetti (e quelli di Microsoft sono grossi), la produttività media di uno sviluppatore è poco più di 10 linee di codice al giorno (ovviamente c'è un problema a definire cos'è una linea di codice, ma tant'è Per cui sì, un programmatore in un progetto complesso produce in media circa 200 linee di codice al mese.
Una fonte iniziale come referenza: https://skeptics.stackexchange.com/...of-code-per-day .
In realtà un solo bug su 300 linee di codice (se vuoi, un bug in un mese e mezzo di lavoro) mi sembra un ottimo risultato.
Soltanto chi è completamente ignorante dell'Ingegneria del software pensa che si possano produrre software senza bug.
Soprattutto quando si compongono di decine di milioni di linee.
Va detto che per fare chiacchiere non è necessario saperne di cosa si sta parlando.
Cerca di essere compassionevole, la solitudine e la ricerca di attenzione ha molte forme…
Sono mesi che sono compassionevole. Il fatto è che i suoi continui commenti pieni di rancore mi stanno sfracellando i cosiddetti.
Ma neanche, è quasi insignificante
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".