DeepCode vil finne feil i programvarekildekoden ved bruk av AI

I dag en sveitsisk oppstart DeepCode, som bruker kunstig intelligens og maskinlæring for å automatisere kodeanalyse, kunngjorde at de har mottatt 4 millioner dollar i investeringer fra venturefondene Earlybird, 3VC og Btov Partners. Selskapet planlegger å bruke disse midlene til å introdusere støtte for nye programmeringsspråk i tjenesten, samt å markedsføre produktet på det globale IT-markedet.

DeepCode vil finne feil i programvarekildekoden ved bruk av AI

Kodeanalyse er nødvendig for å oppdage feil, potensielle sårbarheter, formateringsbrudd og mer tidlig i programvareutvikling, før koden brukes noe sted. Vanligvis utføres denne prosedyren parallelt med utviklingen av ny kode og umiddelbart etter at den er fullført, før selve testfasen. "Programvaretesting ser på kode fra utsiden, men kodeanalyse lar deg se på den fra innsiden," forklarer DeepCode-medgründer og administrerende direktør Boris Paskalev i et intervju med VentureBeat.

Oftest utføres kodegjennomgang av forfatterne sammen med kolleger og ledere for å identifisere åpenbare feil før man går videre til neste utviklingstrinn. Og jo større prosjektet er, jo flere kodelinjer må kontrolleres, noe som tar opp en betydelig mengde programmerers tid. Verktøy som skal fremskynde denne prosessen har eksistert i lang tid, for eksempel statiske kodeanalysatorer som Coverity og PVS-Studio, men de har en tendens til å være begrenset i sine evner da de fokuserer på "irriterende og repeterende stilistiske problemer, formatering og små logiske feil,” forklarer Paskalev.

DeepCode dekker på sin side et bredere spekter av problemer, for eksempel å oppdage sårbarheter som muligheter for cross-site scripting og SQL-injeksjon, siden algoritmene som er innebygd i den ikke bare analyserer koden som et sett med tegn, men prøver å forstå betydningen og hensikten med de skriftlige arbeidsprogrammene. Kjernen i dette er et maskinlæringssystem som bruker milliarder av linjer med kode fra offentlig tilgjengelige åpen kildekode-prosjekter for opplæringen. DeepCode analyserer tidligere versjoner av koden og påfølgende endringer som ble gjort i den for å studere hvilke feil og hvordan ekte programmerere korrigerte arbeidet sitt, og deretter tilby lignende løsninger til brukerne. I tillegg bruker systemet også tradisjonelle prediksjonsalgoritmer for å finne mulige problemer i koden, som de statiske analysatorene nevnt ovenfor.

Et av nøkkelspørsmålene når du bruker DeepCode er: hvor pålitelig er den automatiske kodegjennomgangen? En analysenøyaktighet på mindre enn 100 % betyr at utviklere fortsatt må analysere koden manuelt. I så fall, hvor mye tid vil det faktisk frigjøres ved å bruke verktøy for å automatisere denne oppgaven? Ifølge Paskalev vil DeepCode kunne spare utviklere for omtrent 50 % av tiden de bruker på å søke etter feil på egenhånd, noe som er ganske betydelig.

Utviklere kan koble DeepCode til GitHub- eller Bitbucket-kontoene deres, og verktøyet støtter også lokale GitLab-konfigurasjoner. I tillegg har prosjektet en spesiell API som lar utviklere integrere DeepCode i sine egne utviklingssystemer. Når de er koblet til depotet, vil DeepCode analysere hver kodeendring og flagge potensielle problemer.

DeepCode vil finne feil i programvarekildekoden ved bruk av AI

"I gjennomsnitt bruker utviklere omtrent 30 % av tiden sin på å finne og fikse feil, men DeepCode kan spare halvparten av tiden nå, og enda mer i fremtiden," sier Boris. "Fordi DeepCode lærer direkte fra det globale fellesskapet av utviklere, er det i stand til å finne flere problemer enn en person eller en hel gruppe anmeldere noen gang kan finne."

I tillegg til dagens nyheter om å motta investeringer, annonserte DeepCode også en ny verdipolicy for produktet sitt. Til nå har DeepCode kun vært gratis for utviklingsprosjekter for åpen kildekode. Nå vil det være gratis for bruk for alle pedagogiske formål og til og med for kommersielle selskaper med færre enn 30 utviklere. Åpenbart, med dette trinnet, ønsker skaperne av DeepCode å gjøre produktet sitt mer populært blant små team. I tillegg belaster DeepCode $20 per utvikler per måned for skydistribusjon og $50 per utvikler for lokal støtte.

Tidligere hadde DeepCode-teamet allerede mottatt investeringer på 1 million dollar. Med ytterligere 4 millioner sa selskapet at det planlegger å utvide programmeringsspråkene det støtter utover Java, JavaScript og Python, inkludert å legge til støtte for C#, PHP og C/C++. De bekreftet også at de jobber med sitt eget integrerte utviklingsmiljø.



Kilde: 3dnews.ru

Legg til en kommentar