04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

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.

140 Štúdie vybraných tém programových a informaných systémov<br />

5.2.3 Modelovanie založené na OWL<br />

Iný spôsob modelovania štruktúry vzorov je predstavený v práci [4]. Jej prístup sa na rozdiel<br />

od predchádzajúcich nezakladá na modelovaní pomocou UML, ale používa nástroje<br />

vyvinuté v rámci iniciatívy Webu so sémantikou (Semantic Web): RDF (Resource Description<br />

Framework) [29] a z neho vychádzajúci jazyk OWL (Web Ontology Language) [27].<br />

Dôvodom použitia týchto riešení je vonos, ktorú poskytujú. Neboli vyvinuté na ukladanie<br />

znalostí o vzoroch i softvérových riešeniach, ale na zachytávanie informácií o akýchkovek<br />

zdrojoch, ktoré sú jasne identifikovatené pomocou svojich URI (Uniform Resource<br />

Identifier). Z toho vyplývajú široké možnosti, ktoré jazyky RDF a OWL poskytujú. Napríklad<br />

triedam možno definova vlastnosti presne v takej forme, ako je potrebné (napr. isAbstract,<br />

isStatic, isSubclass-Of).<br />

Na modelovanie vzorov a ich štruktúry bola použitá hierarchia OWL tried nachádzajúca<br />

sa na obrázku 5-11. V hierarchii sa nenachádzajú konkrétne prvky modelov ako triedy<br />

i metódy, ale len ich šablóny (ClassTemplate, MemberTemplate). Dôvodom toho je fakt,<br />

že táto hierarchia neobsahuje konkrétne stavebné jednotky návrhových vzorov, ale role,<br />

ktoré bývajú najastejšie realizované práve týmito stavebnými prvkami. Takže napríklad<br />

ak pre vzor Abstract factory je ConcreteFactory inštanciou triedy ClassTemplate, znamená<br />

to, že ide o rolu, ktorá je štandardne realizovaná triedou.<br />

Obrázok 5-11. Základná hierarchia OWL tried ontológie (vrstva ODOL) [4].<br />

Autori definovali vlastnú metamodelovú architektúru, ktorá sa odlišuje od štandardnej<br />

štvorvrstvovej OMG architektúry (M0 – inštancie, M1 – model tried, M2 – metamodel, M3<br />

– metametamodel MOF). Schéma tejto architektúry sa nachádza na obrázku 5-12. Dolné<br />

dve vrstvy zodpovedajú štandardným OMG modelom M0 a M1. Najvyššia vrstva predstavujúca<br />

jazyk OWL zodpovedá modelu M3. Vrstva ODOL (Object Design Ontology Layer)<br />

je metamodelová vrstva zodpovedajúca vrstve M2 (obrázok 5-11). Obsahuje definície<br />

základných pojmov potrebných na opis vzorov, napr. triedy *Template, Participant, Pattern<br />

a iné. Vrstva PDL (Pattern Description Layer) obsahuje tvrdenia o vzoroch vytvorené<br />

pomocou konceptov z vrstvy ODOL, napríklad definície rolí a vzahov medzi nimi.<br />

Príklad opisu návrhového vzoru Abstract factory sa nachádza na obrázku 5-13. Zdroje<br />

modelu (zobrazené ako elipsy) predstavujú role vzoru, ktoré sú v rámci OWL opisu<br />

definované ako inštancie tried definovaných vo vrstve ODOL.

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

Saved successfully!

Ooh no, something went wrong!