DeepCode finder fejl i softwarens kildekode ved hjælp af AI

I dag en schweizisk startup DeepCode, der bruger kunstig intelligens og maskinlæring til at automatisere kodeanalyse, annoncerede, at de har modtaget 4 millioner dollars i investeringer fra venturefondene Earlybird, 3VC og Btov Partners. Virksomheden planlægger at bruge disse midler til at introducere støtte til nye programmeringssprog i sin tjeneste, samt til at markedsføre produktet på det globale it-marked.

DeepCode finder fejl i softwarens kildekode ved hjælp af AI

Kodeanalyse er nødvendig for at opdage fejl, potentielle sårbarheder, formateringsovertrædelser og mere tidligt i softwareudviklingen, før koden bruges nogen steder. Typisk udføres denne procedure parallelt med udviklingen af ​​ny kode og umiddelbart efter, at den er afsluttet, forud for selve testfasen. "Softwaretest ser på kode udefra, men kodeanalyse giver dig mulighed for at se på det indefra," forklarer DeepCode-medstifter og CEO Boris Paskalev i et interview med VentureBeat.

Oftest udføres kodegennemgang af dens forfattere sammen med kolleger og ledere for at identificere åbenlyse fejl, før man går videre til de næste udviklingstrin. Og jo større projektet er, jo flere kodelinjer skal der tjekkes, hvilket optager en betydelig mængde af programmørers tid. Værktøjer, der skulle fremskynde denne proces, har eksisteret i lang tid, såsom statiske kodeanalysatorer såsom Coverity og PVS-Studio, men de har tendens til at være begrænsede i deres muligheder, da de fokuserer på "irriterende og gentagne stilistiske problemer, formatering og små logiske fejl,” forklarer Paskalev.

DeepCode dækker til gengæld en bredere række af problemer, f.eks. opdage sårbarheder såsom muligheder for cross-site scripting og SQL-injektion, da algoritmerne, der er indlejret i den, ikke blot analyserer koden som et sæt af tegn, men forsøger at forstå betydningen og formålet med de arbejdsskrevne programmer. Kernen i dette er et maskinlæringssystem, der bruger milliarder af linjer kode fra offentligt tilgængelige open source-projekter til sin træning. DeepCode analyserer tidligere versioner af koden og efterfølgende ændringer, der blev foretaget i den, for at undersøge, hvilke fejl og hvordan rigtige programmører rettede deres arbejde, og tilbyder derefter lignende løsninger til sine brugere. Derudover bruger systemet også traditionelle forudsigelsesalgoritmer til at finde mulige problemer i koden, som de statiske analysatorer nævnt ovenfor.

Et af nøglespørgsmålene ved brug af DeepCode er: Hvor pålidelig er den automatiske kodegennemgang? En analysenøjagtighed på mindre end 100% betyder, at udviklere stadig skal analysere deres kode manuelt. Hvis ja, hvor meget tid vil der så rent faktisk frigøres ved at bruge værktøjer til at automatisere denne opgave? Ifølge Paskalev vil DeepCode være i stand til at spare udviklere omkring 50 % af den tid, de i øjeblikket bruger på at søge efter fejl på egen hånd, hvilket er et ganske betydeligt tal.

Udviklere kan forbinde DeepCode til deres GitHub- eller Bitbucket-konti, og værktøjet understøtter også lokale GitLab-konfigurationer. Derudover har projektet en særlig API, der giver udviklere mulighed for at integrere DeepCode i deres egne udviklingssystemer. Når DeepCode er tilsluttet til depotet, analyserer hver kodeændring og markerer potentielle problemer.

DeepCode finder fejl i softwarens kildekode ved hjælp af AI

"I gennemsnit bruger udviklere omkring 30 % af deres tid på at finde og rette fejl, men DeepCode kan spare halvdelen af ​​den tid nu og endnu mere i fremtiden," siger Boris. "Fordi DeepCode lærer direkte fra det globale fællesskab af udviklere, er det i stand til at finde flere problemer, end en person eller en hel gruppe af anmeldere nogensinde kunne finde."

Ud over dagens nyheder om modtagelse af investeringer annoncerede DeepCode også en ny værdipolitik for sit produkt. Indtil nu har DeepCode kun været gratis til open source softwareudviklingsprojekter. Nu vil det være gratis at bruge til ethvert uddannelsesformål og endda for kommercielle virksomheder med færre end 30 udviklere. Det er klart, at med dette trin ønsker skaberne af DeepCode at gøre deres produkt mere populært blandt små teams. Derudover opkræver DeepCode $20 pr. udvikler om måneden for cloud-implementering og $50 pr. udvikler for lokal support.

Tidligere havde DeepCode-teamet allerede modtaget investeringer på 1 million dollars. Med yderligere 4 millioner sagde virksomheden, at det planlægger at udvide de programmeringssprog, det understøtter, ud over Java, JavaScript og Python, herunder tilføjelse af support til C#, PHP og C/C++. De bekræftede også, at de arbejder på deres eget integrerede udviklingsmiljø.



Kilde: 3dnews.ru

Tilføj en kommentar