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.

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.

a címlapról