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.

Znovupoužitie návrhových vzorov na úrovni modelu 143<br />

zené v kosoštvorcoch. Okrem pomenovania vzahu obsahuje opis vzahu aj definíciu minimálnej<br />

a maximálnej kardinality vzahu, ím dochádza k definícií poetnosti zúastnených<br />

rolí. Príklad metaschémy zachytávajúcej štruktúru vzoru Observer sa nachádza na<br />

obrázku 5-15.<br />

Súasou opisu vzoru sú aj textovo definované pravidlá. Príklad takého pravidla pre<br />

vzor Observer je:<br />

for each ConcreteObserver<br />

cardinality_of(Subject.observer) =<br />

cardinality_of(ConcreteObserver.implements)<br />

Obrázok 5-15. Metaschéma vzoru Observer [31].<br />

5.2.5 Prístup založený na formálnych metódach<br />

Práca [6] predstavuje prístup zahajúci formálnu špecifikáciu a verifikáciu návrhových<br />

komponentov a vzorov (prístup pracuje so vzormi ako s komponentmi na úrovni návrhu).<br />

Poskytuje systematický prostriedok konštrukcie formálnych modelov návrhových vzorov,<br />

ktoré sú generické (nezávislé od aplikanej domény) a vo vhodnej forme pre strojové odvodzovanie.<br />

Okrem toho definuje vlastnosti týkajúce sa ako jednotlivých vzorov tak aj<br />

celých systémov strojovo spracovateným spôsobom, ím otvára možnosti formálnej verifikácii.<br />

V rámci prístupu sa pre návrhové vzory definujú Štrukturálne kontrakty zachytávajúce<br />

štruktúru vzoru, Kontrakty správania zachytávajúce správanie vzoru a vlastnosti<br />

zachytávajúce pravidlá, ktoré identifikujú problémy v rámci celkového návrhu.<br />

V nasledujúcich podkapitolách budú tieto asti opisu návrhových komponentov podrobnejšie<br />

opísané.

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

Saved successfully!

Ooh no, something went wrong!