Model driven architecture: Porovnání verzí
Smazaný obsah Přidaný obsah
Oprava gramatické chyby |
m typo; kosmetické úpravy |
||
Řádek 1:
'''MDA''', '''Model Driven Architecture''' (Modelem řízená [[architektura]])
'''MDA poskytuje obecný přístup jak:'''
* Specifikovat systém nezávisle na platformě na které je systém vystavěn
* Specifikovat [[platformy]]
* Vybrat konkrétní platformu
* Transformovat systém podle zvolené platformy
'''MDA člení architekturu na čtyři úrovně:'''
* Model nezávislý na počítačovém zpracování ([[CIM]])
* Model nezávislý na platformě ([[PIM]])
* Model specifický na konkrétní platformě ([[PSM]])
* [[Zdrojový kód]] [[aplikace]] (výsledná implementace)
== Computation Independent Model (CIM) ==
Model, též známý jako [[doménový model]], se zaměřuje výhradně na prostředí a obecné požadavky systému a jeho detailní struktura a konkrétní zpracování jsou v této fázi skryté nebo dosud neurčené. Tento model reflektuje „business“ požadavky zákazníka a pomáhá přesně popsat to, co se od systému očekává. Proto musí být nezávislý na technickém zpracování a popisovat systém
== Platform Independent Model (PIM) ==
Tento model se zabývá tou částí kompletní specifikace systému, která se nemění podle konkrétního druhu zvolené platformy. PIM totiž zprostředkovává určitou míru nezávislosti konkrétního řešení dané problémové oblasti tak, aby se hodila na různé platformy podobného typu. Popisuje chování (algoritmy) a strukturu aplikace opravdu jen v těch mezích, které zajistí jeho přenositelnost mezi různými technologickými řešeními. Oproti předcházejícímu modelu je doplněn o ty informace (algoritmy, principy, pravidla, omezení…), které jsou nezbytně důležité k řešení dané problémové oblasti prostřednictvím informačních technologií. Ovšem je důležité poznamenat, že tento model přesně nevychází z CIM, nýbrž si z něho obvykle [[IT]] analytik vybere pouze to podstatné, co se považuje za smysluplné pro potřeby počítačového zpracování konkrétní problémové oblasti. Transformace z modelu CIM do PIM obvykle neprobíhá automaticky, je to dáno především odlišným charakterem těchto modelů, kde PIM je model struktury (objektový model), kdežto CIM je spíše procesní model. Tento přechod probíhá skrze Use Case scénáře, které přiblíží procesní model k objektovému.
== Platform Specific Model (PSM) ==
Řádek 24:
== Transformace modelu PIM do PSM ==
Jedná se o proces aplikace konkrétních transformačních pravidel na model nezávislý na platformě, jenž vyústí v PSM. Otázkou je, jaká transformační pravidla mají být použita u konkrétních elementů z PSM. MDA specifikace popisuje hned několik způsobů, jak vytvořit (mapovat) tyto vazby (v čemž spočívá asi jeho největší přínos).
Jednou z možností je mapovat přes meta-modely, kdy jednotlivé typy elementů jak v PIM tak v PSM, jsou specifikovány ve dvou odlišných tzv. [[MOF]]
[[Soubor:transformation_PIM2PSM.jpg|none|PIM transformace do PSM]]
Dalším přístupem je mapování prostřednictvím tzv. značek. Těmito značkami se označí jednotlivé elementy a tím se určuje, jakým způsobem budou transformovány. Slouží tedy jako identifikátory pro transformační pravidla. Jednoduchým příkladem značky by mohla být „Entita“, která může být aplikována na nějakou třídu nebo jiný objekt z PIM. Složitější ukázkou je případ, kdy je více elementů modelu osázeno značkami, které dohromady tvoří identifikovatelnou sadu. K této sadě je jasně definována transformační šablona např. v podobě [[návrhového vzoru]]. A aby to nebylo jednoduché, je také možno jednomu elementu přiřadit více značek. To indikuje, že tento prvek hraje roli ve více než jednom mapování a proto také bude podle každého z nich transformován. Ve výsledku se to může projevit jak dodatečnou vlastností stejně tak jako novým elementem v PSM.
|