Futásidejű ellenőrzés szekvenciadiagram specifikációk alapján

OData támogatás
Konzulens:
Vörös András
Méréstechnika és Információs Rendszerek Tanszék

A minket körülvevő számítástechnikai rendszerek száma és a rájuk bízott felelősség napról nap nő. Más részről ezen rendszerek mérete és összetettsége is növekszik. Ezen okok miatt egy nagyobb igény olyan eszközök fejlesztésére, amelyek a szoftvermérnökök számára egyszerű módot biztosítanak a rendszerekkel szemben támasztott elvárások formális megfogalmazására és ellenőrzésére.

A probléma megoldása során előtérbe került a modellalapú fejlesztés, mely során a fejlesztők a rendszer többféle és –szintű modelljét elkészítve, majd abból kódot generálva tudják felépíteni a rendszert. A modellalapú fejlesztés során már a modelleken lehetséges ellenőrzéseket végrehajtani, melyek nagyban növelik a rendszer megbízhatóságát.

A biztonságkritikus rendszerek esetében pedig egyre több esetben alkalmaznak futásidejű ellenőrzést, amely a rendszer éles működése közben tudja felderíteni a tervezés és az implementáció hibáit. Igény esetén leállíthatja, vagy módosíthatja a rendszer működését.

Szakdolgozatomban a modellalapú fejlesztéshez jól illeszkedő futásidejű ellenőrzést segítő eszköz készítése a célom. Ehhez számos technológia és szabvány áll rendelkezésre, melyek közül több is széles körben elterjedt. Ezen eszközök felhasználásával, összekapcsolásával valósítottam meg egy olyan eszközt, amely egy magas szintű formalizmus, UML szekvenciadiagram használatával teremt lehetőséges a rendszerrel szembeni elvárások leírására. A magas szintű formalizmusból több iterációs lépéssel generál egy C++ nyelvű, futásidejű ellenőrzésre képes automatát.

A fentiek megvalósításához több megszorításra is szükség volt a szekvenciadiagramokkal szemben. Ezek egy részét az általam felhasznált és kiegészített algoritmus alapján állapítottam meg.

Az általam fejlesztett eszköz használhatóságát egy esettanulmány segítségével mutatom be a szakdolgozatom végén.

Letölthető fájlok

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