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.

concurenta a fost propusa o exten<strong>si</strong>e a limbajului C++ <strong>si</strong> a fost prezentat un exemplu<br />

<strong>de</strong> <strong>implementare</strong> a unei cozi cu numar finit <strong>de</strong> elemente.<br />

Neajunsurile <strong>de</strong>terminate <strong>în</strong> mod unitar la nivelul mo<strong>de</strong>lelor <strong>de</strong> obiecte<br />

concurente au stat la baza <strong>de</strong>finirii notiunii <strong>de</strong> anomalie <strong>de</strong> reutilizare. S-a aratat ca<br />

anomaliile <strong>de</strong> reutilizare reprezinta un concept care surprin<strong>de</strong> atât anomaliile <strong>de</strong><br />

mostenire cât <strong>si</strong> conflictele care apar <strong>în</strong>tre mecanismele <strong>de</strong> specificare a <strong>concurentei</strong> <strong>si</strong><br />

relatiile <strong>de</strong> asociere, agregare <strong>si</strong> <strong>de</strong>legare <strong>în</strong>tre obiecte. Anomaliile <strong>de</strong> reutilizare sunt<br />

mo<strong>de</strong>late prin extin<strong>de</strong>rea unui <strong>si</strong>stem formal utilizat <strong>în</strong> cla<strong>si</strong>ficarea mecanismelor <strong>de</strong><br />

mostenire <strong>în</strong> programarea orientata-obiect concurenta.<br />

Tratarea formala a anomaliilor <strong>de</strong> reutilizare a permis <strong>de</strong>terminarea unui mo<strong>de</strong>l<br />

<strong>de</strong> obiecte concurente general care sta la baza <strong>de</strong>finirii unui formalism vizual <strong>de</strong><br />

mo<strong>de</strong>lare. Acest formalism reprezinta o exten<strong>si</strong>e a hartilor <strong>de</strong> stari <strong>de</strong>finite pentru<br />

mo<strong>de</strong>larea comportamentului <strong>si</strong>stemelor reactive. Formalismul vizual propus este un<br />

formalism executabil <strong>si</strong> el a fost numit harta <strong>de</strong> stari scalabila.<br />

În finalul tezei este <strong>de</strong>scrisa <strong>implementare</strong>a unui instrument <strong>de</strong> mo<strong>de</strong>lare a<br />

aplicatiilor orientate-obiect concurente. Acest instrument, numit ActiveCASE,<br />

vali<strong>de</strong>aza executabilitatea hartilor <strong>de</strong> stari scalabile <strong>si</strong> realizeaza generarea automata<br />

<strong>de</strong> cod sursa <strong>în</strong> limbajul C++, utilizând o ierarhie <strong>de</strong> clase concurente proprie. De<br />

asemenea instrumentul permite <strong>si</strong>mularea <strong>si</strong> <strong>de</strong>panarea grafica a executiei aplicatiilor<br />

orientate-obiect concurente.<br />

6.2. Perspective<br />

6.2.1. Anomalii <strong>de</strong> reutilizare<br />

Problema eliminarii anomaliilor <strong>de</strong> reutilizare din limbajele <strong>de</strong> programare<br />

orientate-obiect concurente ramâne <strong>în</strong> continuare <strong>de</strong>schisa. Notiunile <strong>de</strong> tip introduse<br />

<strong>în</strong> mo<strong>de</strong>lele obiect <strong>de</strong>zvoltate pâna <strong>în</strong> prezent nu rezolva aceasta problema. Solutiile<br />

<strong>de</strong> ameliorare a efectelor acestor anomalii propuse <strong>în</strong> teza vizeaza izolarea <strong>si</strong><br />

separarea codului contrângerilor <strong>de</strong> <strong>si</strong>ncronizare <strong>de</strong> codul <strong>de</strong> <strong>implementare</strong> a<br />

functionalitatii, precum <strong>si</strong> generarea automata <strong>de</strong> cod sursa.<br />

O alta po<strong>si</strong>bila abordare <strong>de</strong> ameliorare a anomaliilor <strong>de</strong> reutilizare este aceea<br />

<strong>de</strong> introducere a unui mecanism <strong>de</strong> sub-tipizare care nu conserva comportamentul.<br />

152

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

Saved successfully!

Ooh no, something went wrong!