[Modelinterpreter] case study kerdesek

nboldi at caesar.elte.hu nboldi at caesar.elte.hu
Mon Nov 17 13:32:03 CET 2014


Sziasztok!

> Boldi: Ha abban gondolkozunk, hogy az allapotvaltasokhoz tartozo  
> aktivity-k nem uresek, es minden activity lefutasa utan automatikusan

Jogos a kérdés, de van olyan példa, amikor egy lehetséges  
interferenciát csak akkor tudunk észlelni, ha az egyes utasítások  
között történhet megszakítás.

Tegyük fel, hogy van két állapotautomata, "a" és "b", "a" éppen az "x"  
állapotba lép, mert kapott egy eseményt. Az "x" entry akciójában van  
egy olyan utasítás, hogy küldjön egy üzenetet "b"-nek. Persze ez csak  
bizonyos ritka együttállások esetén történik meg. Ettől "b" is aktívvá  
válik, megkaphatja a vezérlést. Viszont az az akció amit "b" csinál  
erre összeakadhat "a" maradék akciójával.

Emiatt a context váltások segítségével esélyünk van arra, hogy több  
információhoz jussunk. Persze biztosra nem mehetünk, de legalább  
esélyünk van a hibát detektálni. Ennek a megvalósítására jól  
használhatók a korutinok.

Alternatív lehetőség, hogy statikus elemzéssel nézzük meg, hogy egy  
akció milyen üzeneteket küldhet és az alapján figyeljük a lehetséges  
ütközéseket. Persze ennek az lehet a hátránya, hogyha mondjuk a "b"  
egy hibadetektáló komponens, sokan érhetik el és összegyűjt egy csomó  
információt a rendszerről, akkor mindenféle akcióval ütközni fog. Sok  
lesz a fals pozitív, viszont a valódi hibaeset nem jöhet elő az  
interpreterben ha itt csak statikus elemzést csinálunk ahelyett, hogy  
a vezérlést akárhol átadhatjuk.

Üdv,
Boldi




More information about the Modelinterpreter mailing list