Elosztott rendszerek állapotalapú mérnöki modellezése

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

Napjainkban a komplex, elosztott szoftver-rendszerek fejlesztése részletes tervezést igényel. A rendszerkövetelmények megfogalmazásától, ezek formális specifikálásán keresztül a konkrét implementációig sok lépést kell megtenni. Ilyen esetekben a fejlesztés során célszerű valamilyen bevált szoftver életciklus-modellt követni, legyen ez a vízesés, spirál, V-modell vagy bármilyen más. Bármelyik fejlesztési modellt is választjuk rendkívül fontos a rendszer helyes és biztonságos működése, különösen ha egy beágyazott vagy felhő-alapú rendszerről beszélünk.

A modell-vezérelt architektúra (Model Driven Architecture), mint szoftverfejlesztési módszertan szabványokat és egyéb iránymutatásokat definiál a fent említett célok megvalósítására, de a mérnöki modellek elkészítésétől, a működésük formális verifikációjáig számos absztrakciós lépést kell megtenni. Ezek a lépések részlegesen vagy teljesen automatizálhatók modell transzformációk segítségével.

Dolgozatomban több, eltérő formalizmust használó eszközt mutatok be, mindegyikkel lefedve a teljes fejlesztési folyamat egy-egy részletét. Az eszközök egy része magas szintű mérnöki modellek megalkotását (BridgePoint xtUML, Yakindu Statechart Tools és Papyrus), más része a formális modellek létrehozását és ezek verifikációját (UPPAAL és VERUM ASD:Suite) célozza meg.

A modellellenőrző eszközök sokszor már kis méretű modellek esetén is számos akadályba ütközhetnek (például állapottér robbanás). Ráadásul, elosztott környezetben a helyes működés ellenőrzése még több megoldandó problémát vet fel. Éppen emiatt több absztrakciós lépést kell bevezetni a mérnöki modell és a formális modell közti transzformáció végrehajtásakor. Ennek az absztrakciós szakadéknak az áthidalására nyújthatnak megoldást a köztes nyelvet alkalmazó modellezési formalizmusok (Intermediate Modelling formalisms). Dolgozatomban megvizsgálom az Action Language for Foundational UML (ALF) nyelv, mint köztes nyelvnek az alkalmazhatóságát, mindezt egy egyszerű példán is végigvezetve.

Letölthető fájlok

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