DeepCode löytää virheet ohjelmiston lähdekoodista tekoälyn avulla

Tänään sveitsiläinen startup DeepCode, joka käyttää tekoälyä ja koneoppimista koodianalyysin automatisointiin, ilmoitti saaneensa 4 miljoonaa dollaria sijoituksia riskirahastoilta Earlybird, 3VC ja Btov Partners. Yhtiö aikoo käyttää näitä varoja uusien ohjelmointikielien tuen tuomiseen palveluinsa sekä tuotteen markkinoimiseen globaaleilla IT-markkinoilla.

DeepCode löytää virheet ohjelmiston lähdekoodista tekoälyn avulla

Koodianalyysi on tarpeen virheiden, mahdollisten haavoittuvuuksien, muotoilurikkomusten ja enemmän varhaisessa ohjelmistokehityksen havaitsemiseksi, ennen kuin koodia käytetään missään. Tyypillisesti tämä toimenpide suoritetaan rinnakkain uuden koodin kehittämisen kanssa ja välittömästi sen valmistumisen jälkeen, ennen itse testausvaihetta. "Ohjelmistotestaus tarkastelee koodia ulkopuolelta, mutta koodianalyysin avulla voit tarkastella sitä sisältä", selittää DeepCoden perustaja ja toimitusjohtaja Boris Paskalev VentureBeatin haastattelussa.

Useimmiten koodin tarkistuksen suorittavat sen tekijät yhdessä kollegoiden ja esimiesten kanssa havaitakseen ilmeiset virheet ennen siirtymistä seuraavaan kehitysvaiheeseen. Ja mitä suurempi projekti, sitä enemmän koodirivejä on tarkistettava, mikä vie huomattavan määrän ohjelmoijien aikaa. Työkaluja, joiden pitäisi nopeuttaa tätä prosessia, on ollut olemassa jo pitkään, kuten staattiset koodianalysaattorit, kuten Coverity ja PVS-Studio, mutta niiden ominaisuudet ovat yleensä rajalliset, koska ne keskittyvät "ärsyttäviin ja toistuviin tyyliongelmiin, muotoiluun ja pieniä loogisia virheitä”, Paskalev selittää.

DeepCode puolestaan ​​kattaa laajemman joukon ongelmia, esimerkiksi haavoittuvuuksien havaitsemista, kuten mahdollisuuksia sivustojen väliseen komentosarjaan ja SQL-injektioon, koska siihen upotetut algoritmit eivät vain analysoi koodia merkkijoukona, vaan yrittävät ymmärtää työkirjoitettujen ohjelmien merkityksen ja tarkoituksen. Tämän ytimenä on koneoppimisjärjestelmä, joka käyttää koulutuksessaan miljardeja rivejä koodia julkisesti saatavilla olevista avoimen lähdekoodin projekteista. DeepCode analysoi koodin aikaisemmat versiot ja siihen tehdyt muutokset selvittääkseen, mitä virheitä ja kuinka oikeat ohjelmoijat korjasivat työnsä, ja tarjoaa sitten samanlaisia ​​ratkaisuja käyttäjilleen. Lisäksi järjestelmä käyttää myös perinteisiä ennustusalgoritmeja löytääkseen koodin mahdollisia ongelmia, kuten edellä mainittuja staattisia analysaattoreita.

Yksi keskeisistä kysymyksistä DeepCodea käytettäessä on: kuinka luotettava on automaattinen koodin tarkistus? Alle 100 %:n analyysin tarkkuus tarkoittaa, että kehittäjien on silti analysoitava koodinsa manuaalisesti. Jos on, kuinka paljon aikaa tämän tehtävän automatisointityökalujen käyttäminen vapauttaa? Paskalevin mukaan DeepCode pystyy säästämään kehittäjät noin 50 % ajasta, jonka he tällä hetkellä käyttävät virheiden etsimiseen omatoimisesti, mikä on varsin merkittävä luku.

Kehittäjät voivat yhdistää DeepCoden GitHub- tai Bitbucket-tileihinsä, ja työkalu tukee myös paikallisia GitLab-kokoonpanoja. Lisäksi projektissa on erityinen API, jonka avulla kehittäjät voivat integroida DeepCoden omiin kehitysjärjestelmiinsä. Kun yhteys arkistoon on muodostettu, DeepCode analysoi jokaisen koodin muutoksen ja ilmoittaa mahdollisista ongelmista.

DeepCode löytää virheet ohjelmiston lähdekoodista tekoälyn avulla

"Kehittäjät käyttävät keskimäärin noin 30 % ajastaan ​​virheiden etsimiseen ja korjaamiseen, mutta DeepCode voi säästää puolet ajasta nyt ja vielä enemmän tulevaisuudessa", Boris sanoo. "Koska DeepCode oppii suoraan globaalilta kehittäjäyhteisöltä, se pystyy löytämään enemmän ongelmia kuin yksi henkilö tai kokonainen arvioijaryhmä voisi koskaan löytää."

Tämän päivän sijoitusuutisten lisäksi DeepCode julkisti myös uuden arvopolitiikan tuotteelleen. Tähän asti DeepCode on ollut ilmainen vain avoimen lähdekoodin ohjelmistokehitysprojekteihin. Nyt se on ilmainen käytettäväksi kaikkiin koulutustarkoituksiin ja jopa kaupallisiin yrityksiin, joissa on alle 30 kehittäjää. Ilmeisesti tällä askeleella DeepCoden luojat haluavat tehdä tuotteestaan ​​suositumman pienten tiimien keskuudessa. Lisäksi DeepCode veloittaa 20 dollaria kehittäjältä kuukaudessa pilvipalvelun käyttöönotosta ja 50 dollaria kehittäjää kohden paikallisesta tuesta.

Aiemmin DeepCode-tiimi oli jo saanut 1 miljoonan dollarin investointeja. Toisella 4 miljoonalla yhtiö ilmoitti aikovansa laajentaa tukemiaan ohjelmointikieliä Javan, JavaScriptin ja Pythonin lisäksi, mukaan lukien C#-, PHP- ja C/C++-tuen lisääminen. He myös vahvistivat työskentelevänsä oman integroidun kehitysympäristönsä parissa.



Lähde: 3dnews.ru

Lisää kommentti