Modern szoftverfejlesztési módszerek alkalmazásának vizsgálata beágyazott rendszerekhez

OData támogatás
Konzulens:
Szabó Zoltán
Automatizálási és Alkalmazott Informatikai Tanszék

A járműiparban a biztonságkritikus beágyazott szoftverek fejlesztési folyamata a klasszikus V modellen alapul annak érdekében, hogy biztosítsák a szoftvermodulok megfelelő tesztelését. A szoftveripar más területein új módszerek jelenetek meg, hogy elhárítsák a klasszikus modellek problémáit. Ezeket nevezzük Agilis módszereknek, melyek arra összpontosítanak, hogy valós értéket teremtsenek a vevőknek és kezeljék a specifikációban fellépő változásokat a folyamat bármely szakaszában. Az első fejezetben azt tanulmányoztam, hogy a legelterjedtebb Agilis módszereket hogyan lehetne felhasználni a beágyazott rendszerek fejlesztésénél.

A projektek általában több kisebb modulból épülnek fel, és ezeket olyan sűrűn kell integrálni, amennyire csak lehet, mert semmi sem garantálja a modulok kompatibilitását változások után. Ez a gyakorlat egy Agilig módszer, amit Continuous Integration-nak hívnak. Manuálisan integrálni egy projektet nagyon időigényes, de szerencsére a Jenkins Continuous Integration szerver képes automatikusan build-elni bármely projektet, sőt még ennél többet is tud. Futtatja a Unit teszteket, kódmetrikákat gyűjt és megjeleníti ezek eredményét.

Az MKS verziókövető és folyamat menedzser rendszer össze tudja kötni a kód változásait a fejlesztési folyamattal. Minden módosítás társítható egy követelményhez és egy fejlesztőhöz. A rendszer hátránya, hogy a koordinátornak több adminisztrációs munkát kell végeznie, de szerencsére ezek egy része automatizálható. Készítettem egy Java szoftverkönyvtárat, ami egy platformot biztosít bármely MKS-t használó program számára, és implementáltam három szoftver koordinátor programot, melyek a könyvtáron alapszanak. A harmadik fejezetben ezeket az alkamazásokat mutatom be.

A minőségi szoftver azzal jellemezhető, hogy mennyire képes megfelelni a vevő elvárásainak, mekkora munka árán lehet fenntartani és mennyi idő szükséges a megértéséhez. A szoftver minőségét metrikák segítségével lehet mérni. A legrégebbi metrikák a kódsorok száma és a komplexitás, amiknek segítségével meghatározható a függvények optimális mérete, hogy még karbantarthatók és érthetők legyenek. A kódismétlések szintén jelentősen rontják a minőséget, ezért ezek kiszűrése is fontos feladat. Az utolsó fejezetben utánajártam ezeknek a metrikáknak, hogy tisztázzam a definíciójukat és a céljukat, valamint implementáltam egy alkalmazást, ami képes mérni C nyelvű programok metrikáit.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.