18.04.2013 Views

Tehnici de implementare a concurentei în analiza si proiectarea ...

Tehnici de implementare a concurentei în analiza si proiectarea ...

Tehnici de implementare a concurentei în analiza si proiectarea ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

un<strong>de</strong>:<br />

- o stare <strong>si</strong>mpla este o stare care are o <strong>si</strong>ngura componenta ortogonala,<br />

iar aceasta este vida.<br />

- starea compusa (XOR – stare) are o <strong>si</strong>ngura componenta ortogonala,<br />

nevida.<br />

- starea ortogonala (AND-stare) are mai multe componente ortogonale<br />

nevi<strong>de</strong>.<br />

Definitie 5. Definim hartile <strong>de</strong> stari scalabile <strong>de</strong> grad 1 ca fiind tuplul:<br />

HSS 1 = (M, S, O, sR, SF, (stSucc, stInit, ortSucc), T; Sa, C),<br />

- M este o multime finita <strong>de</strong> mesaje care pot fi receptionate <strong>de</strong> catre<br />

obiectele clasei mo<strong>de</strong>late <strong>de</strong> harta <strong>de</strong> stari,<br />

- S este multimea finita a starilor,<br />

- O este o multime finita <strong>de</strong> componente ortogonale,<br />

- sR ? S este starea radacina a ierarhiei <strong>de</strong> stari,<br />

- SF – multimea finita a starilor finale. Penru a pastra con<strong>si</strong>stenta mo<strong>de</strong>lului<br />

vom impune ca toate starile finale sa se afle <strong>în</strong> componente ortogonale ale<br />

starii radacina sR, adica ? sf ? SF, stPred(ortPred(sf)) = sR. Vom elimina<br />

astfel tranzitiile <strong>de</strong> terminare specificate <strong>în</strong> UML, fara <strong>în</strong>sa a restrânge<br />

puterea <strong>de</strong> mo<strong>de</strong>lare a hartilor <strong>de</strong> stari.<br />

- functii <strong>de</strong> <strong>de</strong>finire a ierarhiei <strong>de</strong> stari <strong>si</strong> componente ortogonale:<br />

- stSucc : O ? ? (S? SF), un<strong>de</strong> stSucc(o) = {s1, s2, ... , sn} reprezinta<br />

multimea substarilor componentei ortogonale o, cu restrictia ca ? o1,<br />

o2 ? O vom avea stSucc(o1) ? stSucc(o2) = ? ;<br />

- stInit : O\{o : stSucc(o)=? } ? S, stInit(o) = s0 ? stSucc(o), sub-<br />

starea initiala a componentei ortogonale o (functia se aplica doar<br />

pentru componentele ortogonale nevi<strong>de</strong>);<br />

- ortSucc : S ? ? (O) \ {? }, un<strong>de</strong> ortSucc(s) = {o1, o2, ... , om}<br />

reprezinta multimea componentelor ortogonale ale starii s, cu<br />

restrictia ca ? s1, s2 ? S vom avea ortSucc(s1) ? ortSucc(s2) = ? (o<br />

stare are cel putin o componenta ortogonala);<br />

- T ? ? (S\{sR}) ? M ? ? (S\{sR}) multime finita <strong>de</strong> tranzitii. O tranzitie<br />

({s1’, ..., <strong>si</strong>’}, m, { s1’’, ..., sj’’}) ? T semnifica faptul ca, <strong>în</strong> cazul <strong>în</strong> care un<br />

115

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!