C programok felműszerezése

A biztonságkritikus szoftverek fejlesztése során betartandó fejlesztési szabványok megkövetelik, hogy a tesztelés minőségét pontos teszt fedettségi metrikák alkalmazásával mérjék. Forráskód alapú metrikák vonatkoznak a tesztelés során végrehajtott kód elemekre, így képezve például utasítás fedettségi, döntési ág fedettségi, vagy feltétel fedettségi mértékeket. Ha a végrehajtott kód elemek (pl. utasítások, feltétel kiértékelések) meghatározásához nincs közvetlen hardver támogatás, akkor azt szoftveresen, a végrehajtást regisztráló utasítások forráskódba történő beillesztésével (úgynevezett szoftver felműszerezéssel) kell megoldani. Beágyazott vezérlők esetén tipikus probléma, hogy nincs fájlrendszer az alkalmazásokhoz, így a regisztrálást rugalmasan konfigurálható módon (pl. kijelölt memóriatartomány bitjeinek bebillentésével) kell megvalósítani.

A korábbiakban a Tanszéken elkészült egy olyan eszköz (CATES), amely képes C nyelvű programok esetén a felműszerezésre és a fedettségi metrikák megjelenítésére. Ennek korlátai azonban nehézkessé teszik az eszköz ipari használatát. A feladat célja a CATES jelenlegi verziójára jellemző hiányosságok és korlátozások feloldása, új alapokra helyezve a felműszerezéshez szükséges forráskód elemzést és ezáltal biztosítva az eszköz bővíthetőségét és könnyű karbantarthatóságát.

Témacsoport: 
Ellenőrzés és tesztelés
Konzulens: 
Majzik István
TDK lehetőség: 
Nem
Megismerhető technológiák: 
ANTLR, parserek készítése, forráskód analízis, teszt fedettségi analízis
Előismeretek: 
C
Állapot: 
Korábbi