Szerző: Bodnár Ádám

2013. május 14. 14:39

Minél bonyolultabb, annál rosszabb minőségű egy szoftver

Közzétette szokásos éves szoftverminőségi felmérésének eredményeit a Coverity. A publikált adatok több mint 850 millió sornyi kód elemzésével születtek, a cég 300 elterjedt nyílt forrású programot és zárt forrású szoftvert vizsgált meg - utóbbiak a Coverity nem azonosított ügyfeleinek a termékei.

A vállalat sok évvel korábban azzal a felfedezéssel került először az informatikai lapokba, hogy a Linux kódjának minősége jobb a zárt kódú projektekénél - ezt a nyílt forrású szoftverek hívei sokszor használták fel érvként a vitákban. Mára az eredmények kiegyenlítődtek, a Coverity által megvizsgált nyílt kódok (pl. Linux, POV-ray, FreeRadius) ezer soronként átlagosan 0,69 hibát tartalmaztak, míg a zárt projektek esetében ez a mutató 0,68 volt, vagyis a megvizsgált nyílt és tulajdonosi szoftverek között ezen a téren nincs számottevő különbség már.

A Coverity évekkel ezelőtt az Egyesült Államok belbiztonsági minisztériumával (Department of Homeland Security) együtt indította el Coverity Scan nevű projektjét, mely a nyílt forrású projektek minőségének javítását célozza. "A statikus analízis technológia fejlődésével együtt a jelentés mérete és a hatálya is növekedik, de a megtalált és kijavított hibák száma is" - mondta Andy Chou, a Coverity műszaki vezetője.

Hogyan akadályoz meg egy fejlesztő 14 karakterrel egy hackertámadást (x)

Sokszor gondoljuk, hatalmas erőfeszítés ellehetetleníteni egy támadást, pedig nem feltétlenül.

Hogyan akadályoz meg egy fejlesztő 14 karakterrel egy hackertámadást (x) Sokszor gondoljuk, hatalmas erőfeszítés ellehetetleníteni egy támadást, pedig nem feltétlenül.

A Linux egyébként mind a nyílt, mind a zárt projektek közül kitűnik magas minőségével, ráadásul a kernel fejlesztői az évek során javítani is tudtak a kód minőségén. A Coverity által vizsgált kódok folyamatosan 1 alatti hibát tartalmaznak ezer soronként, 2011-ben 0,62, 2012-ben pedig 0,66 volt a talált hibák száma. A legutóbbi felméréshez a vállalat a 3.8-as Linux 7,6 millió sorát vizsgálta meg és rekordalacsony mennyiségű, ezer soronként átlagosan mindössze 0,59 hibát talált statikus automatikus kódanalízissel.

Érdekes tendencia fedezhető fel, ahogy a projektek komplexitása növekszik. Az 500 ezer és 1 millió kódsor közötti projektek esetében a nyílt szoftverek 0,44 hibát tartalmaznak ezer soronként, míg a zártak 0,98-at, ugyanakkor az 1 millió sornál hosszabb szoftvereknél az nyílt és zárt szoftverek minősége éppen ellenkező tendenciát mutat. A Coverity szerint az 1 millió kódsornál nagyobb nyílt szoftvereknél a hibák száma ezer soronként 0,75-re nő, míg a zártak esetében 0,66-ra csökken. Úgy tűnik, a nyílt forrású projektek nehezebben kezelik a komplex projekteket és a kód méretével együtt a hibák száma is növekszik, míg a zárt projektek esetében csökken - ennek oka az lehet, hogy a nagyobb projekteket már komoly cégek készítik, amelyek tudatosan odafigyelnek a minőségre, fejlesztői tesztelési folyamatokra.

"Az idei jelentés legfontosabb tanulsága, ami minden mást elhomályosít: a fejlesztői tesztelés többé nem lehetőség, hanem kötelező. A statikus analízist bevezető nyílt és zárt projektek sokasága az egész iparban megemelte a minőségi lécet" - mondta az eredmények kapcsán Jennifer Johnson, a Coverity marketingvezetője."Évről évre látjuk, hogy a kockázatos hibák mekkora károkat okoznak. Ma már ha valaki nem csinál fejlesztői tesztelést, egyszerűen versenyhátrányba kerül."

A Coverity jelentése egy ingyenes regisztrációt követően letölthető innen.

4 alkalmas, 12 órás biztonságos szoftverfejlesztés alapjai és Scrum otthonról képzésekkel köszönünk el 2020-tól.

a címlapról