Statikus kód analizátorok (külső téma)

A feladat lényege megismerni a statikus kód analízis lehetőségeit és korlátait, majd kipróbálni és összehasonlítani néhány elterjed statikus kód analizátor eszközt C++ nyelvhez (pl. Cppcheck, lint, Parasoft C/C++test) a Mediso Kft. által biztosított forráskódon.

A statikus kód analízis eszközök a kód végrehajtása nélkül, a kód struktúrájának elemzésével képesek segíteni a fejlesztők munkáját többek között a következőkkel:

  • tiltott vagy korlátozott konstrukciók detektálása,
  • tipikusan hibás vagy veszélyes kódminták felismerése,
  • kód strukturáltság, komplexitás ellenőrzése,
  • függőségek felderítése az egyes kódrészletek között.

A fejlettebb eszközök arra is képesek, hogy a program memóriahasználatát vizsgálják (memóriaszivárgást detektálva), illetve a programban szereplő változók értéktartományait megbecsüljék (így detektálva például tömbök túlcímzését vagy számítások túlcsordulását). Így előre jelezhetők olyan dinamikus hibák, amik egyébként csak a tesztelés során, magasabb költséggel lennének kimutathatók.

A feladat konzultálása a Mediso Medical Imaging Systems szakembereivel történik.

 

Témacsoport: 
Ellenőrzés és tesztelés
Jelleg: 
Gyakorlati
Konzulens: 
Majzik István
Konzulens: 
Oláh János
TDK lehetőség: 
Nem
Megismerhető technológiák: 
Statikus kódanalízis eszközök: Cppcheck, lint, Parasoft C/C++test
Előismeretek: 
C++
Állapot: 
Korábbi