Tomsovi

  • Zvětšit velikost písma
  • Výchozí velikost písma
  • Zmenšit velikost písma
Domů Honza Škola 5. ročník Diplomová práce - Automatizované modelování - 5.2 Eclipse Modelling Framework

Diplomová práce - Automatizované modelování - 5.2 Eclipse Modelling Framework

Email Tisk PDF
seznam článků
Diplomová práce - Automatizované modelování
Obsah
1 Úvod
1.2 Typografické konvence
Tabulka 1: Slovník zkratek
2 Cíl práce
3 Metodika
4 Přehled vlastností modelovacích nástrojů
4.1 Úloha modelování v běžném životě
4.1 Úloha modelování v běžném životě - pokračování
4.1.1 Vhodnost použití objektových nástrojů pro modelování a transformace
4.2 Architektura řízená modelem - Model Driven Architecture
4.2.1 The Object Management Group
4.2.2 Základní cíle a přístupy MDA
4.2.3 Platforma
4.2.4 Hierarchie modelů dle MDA
4.2.5 Model nezávislý na počítačovém zpracování
4.2.6 Model nezávislý na platformě
4.2.7 Mapování a značkování
4.2.8 Model specifický ke konkrétní platformě
4.2.9 Zdrojový kód aplikace
4.3 MDA a Oracle Designer
4.4 Vlastní zkušenost
4.5 Vlastnosti modelovacích nástrojů
4.6 Craft.CASE
4.7 Eclipse Modeling Framework
4.8 Omondo EclipseUML2
4.9 Enterprise Architect
5 Transformační modelovací jazyky
5.2 Eclipse Modelling Framework
5.4 XSLT
Část II - Projekt
6 Vlastní projekt
7 Požadavky na informační systém
8 Analýza
8.1 Model případů užití
8.2 Doménový objektový model
9 Design informačního systému
10 Aplikace Architektury řízené modelem (MDA)
11 Vývoj generátoru
12 Generování kódu z modelu
13 Závěr
Literatura
Přílohy
A Případy užití
A.1 Hlavní případy užití
A.2 Správa skupin parametrů
A.3 Správa parametrů
A.4 Správa modelů
B Sada šablon EA pro generování kódu v jazyku Smalltalk
C Vygenerované zdrojové kódy FSM v jazyku Smalltalk
D UML profil systému DecisionMaker
E Podpůrné třídy metamodelu UML
F Generátor entit aplikace DecisionMaker
G Zdrojový kód aplikace DecisionMaker
Všechny strany

5.2 Eclipse Modelling Framework

Jak již bylo popsáno v kapitole 4.7, EMF je framework, jehož síla je v transparentní
transformaci mezi XMI, XML Schema a anotovaným zdrojovým kódem v Javě.
S pomocí jeho API lze z Javového kódu přistupovat k entitám modelu a tak
vytvářet transformované modely nebo generovat libovolný kód.
Jedná se o obdobný přístup, jaký jsem aplikoval v kapitole 11 s tím rozdílem,
že tento framework je omezen skutečně čistě na Javu.

5.3 C.C language

Jazyk C.C je funcionální programovací jazyk se syntaxí blízkou jazyku PASCAL
s několika imperativními konstrukty a s několika vlastnostmi inspirovanými jazyky
PROLOG, Erlang, Ruby, Python a Smalltalk. Jedná se o interpretovaný jazyk provozovaný
v prostředí CASE nástroje Craft.CASE na platformě VisualWorks.
C.C se používá pro následující účely:
  • skriptovací jazyk - Procedury v C.C jsou schopny procházet projektovou databází a vytvářet nejrůznější dokumentační sestavy
  • precizní simulace procesů - Procedury v C.C mohou vypočítávat různá simulační data, řídit průběh simulace apod.
  • automatické manipulace s modelem - např. aplikování návrhových vzorů, refaktoring, objektová normalizace apod.
  • kontroly konzistence a integrity nad projektovou databází - tato vlastnost pokrývá stejnou funkcionalitu jako OCL.
  • export dat v různých formátech (jmenovitě XMI a binární formáty některých jiných CASE nástrojů).
  • import dat z různých datových zdrojů (ODBC, CSV atd.)

Motivace

Jazyk C.C pokrývá vlastnosti různých, již existujících nástrojů. Jeho autoři
požadovali zakomponování těchto vlastností do modelovacího prostředí Craft.CASE
zejména pro dosažení následující funkcionality:
  • interaktivní transformace modelů
  • prototypování a testování na úrovni instancí modelovaných objektů
    (dotazování a manipulace s daty konkrétních instancí objektů vytvořených z definice v modelu)
  • a
  • simulace.
[Merunka,Nouza,Brožek,2008]

Jazyk C.C zprostředkovává repository modelu prostřednictívm metamodelu na
obrázku 16.

Obrázek 16: C.C metamodel repository Craft.CASE
Obrázek 16: C.C metamodel repository Craft.CASE. [Merunka,Nouza,Brožek,2008]