sobota 7. októbra 2017

Rational XDE (pre Visual Studio .NET)



Rational XDE (pre Visual Studio .NET)
>     XDE (eXtended Development Environment)
>     produkt firmy IBM a Rational Software - výhradný copyright
>     integrovateľný s prostrediami Visual Studio .NET, Eclipse IDE alebo IBM WebSphere Studio ako doplňujúci modul
>     plnohodnotný CASE systém poskytujúci objektovo - orientované návrhárske a vývoj árske vybavenie
>     je to silný nástroj na analýzu, návrh, komunikáciu a dokumentáciu cez životný cyklus projektu integrovaný s vývojárskou platformou používanou na tvorbu aplikácií a systémov

XDE umožňuje:
>     pracovať efektívnejšie možnosťou definovania vlastných vzorov, ktoré zachytávajú osvedčené architektúry a návrhy a definujú programové a modelové šablóny
>     znázorniť rôzne typy informácií pomocou UML prvkov a non-UML prvkov
>     produkovať kód lepšej kvality pri podpore validácie modelov pre UML a špecifických programových jazykov
>     pracovať lepšie s inými členmi tímu (analýza, návrh a kódovanie sa robí v jednom prostredí, v rámci projektu sa dajú tvoriť mnohonásobné modely)
>     zdieľať informácie projektu jednoduchšie možnosťou distribúcie návrhu a vývoja prostredníctvom tvorby assets (RAS aktív)
>     produkovať heterogénne riešenia pre potreby aplikácií možnosťou generovať kód do rôznych jazykov
>     rozšíriť o ďalšie vývojárske nástroje pomocou Rational XDE Extensibility API

Základné prvky XDE Solution (Riešenie)
>     Je kontajner pre kolekciu projektov a ostatných súborov, ktoré tvoria aplikáciu (aj v rôznych jazykoch)
>     Obsahuje aj prvky riešenia (solution items - potrebné na vývoj ale nepatria projektu, napr. CSS) a rôznorodé prvky (miscellaneous items - neasociované s aplikáciou ale zahrnuté do riešenia alebo projektu, napr. schéma DB)
>     Stromovú štruktúru zobrazuje Solution Explorer
>     Otvorené len 1 riešenie (.sln,.suo)

Project (Projekt)
>     Kolekcia súborov v rámci partikulárneho adresára v stromovej štruktúre riešenia predstavujúcich aplikáciu alebo systém vo vývoji
>     Zahrňuje modely, kód, textové súbory a iné s projektom súvisiace artefakty
>     Dve možnosti pri vytvorení:

      jazykovo špecifický projekt: napr. Visual Basic, ktorému sa priradí stereotyp «VB», riešenie sa musí synchronizovať hneď na začiatku
      XDE modelovací projekt: Analysis Project alebo Empty Project
Model (Model)
>      Obsahuje hierarchiu objektov nazývaných elementy alebo prvky (napr. diagramy, dátové elementy, služby a relácie)
>      Obsahuje informácie o profile, užívateľských preferenciách a pracovnom priestore
>      Fyzicky uložený v súbore s príponou .mdx
>      Hierarchickú štruktúru modelov a ich elementov zobrazuje Model Explorer
>      Rozlišujeme:

>      kódový model (jazykovo špecifický kód v rámci projektu )
>      referenčný model (externé kódové artefakty, referencovaný kódový model z iného projektu)
>      dátový model (kolekcia dátových elementov na generovanie DB a DDL)

Diagram
>      Prostriedok na vizualizáciu a manipuláciu s modelovými elementmi a reláciami v modeli
>    Zobrazuje sa v Diagramovom okne Vrstva (Layer)
>     Definujú špecifické schopnosti pre model (pridanie alebo modifikáciu špecifického elementu, relácie alebo vlastnosti)
>     Dva druhy vrstiev:

       vrstva kódových šablón (Code Template)
       vrstva dátového modelu (Data Modeler)

Viditeľnosť (Visibility)
>     Určuje, či môže byť modelový element, ktorého sa týka, používaný elementmi mimo modelového elementu, ktorý ho obsahuje (public, priváte, protected, package)

Profil/y
>     XDE ho pridelí po vytvorení každému modelu
>     Modelu pridáva vlastnosti, funkcionalitu, podmienky validácie atď.
>     Sú mechanizmy UML, ktoré umožňujú rozšíriť sémantiku UML použitím stereotypov a tagovaných hodnôt.
>     Možno pridávať aj navyše (napr. pretransformujeme jazykov nezávislý model na jazykovo závislý), ak v Model Explorer, klikneme na model (.mdx), v Properties window pozrieme vlastnosť UML > AppliedProfiles.
>     Sú uložené v XML súboroch s príponou .prx

Workspace (pracovný priestor)
>     XDE vytvorí pre každý model pri jeho vytvorení pracovný priestor (workspace), ktorý sa znovu vytvára pri každom otvorení a upravuje (update) po každom zatvorení.
>     Obsahuje informácie o diagramoch modelu
>     Sú uložené v XML súbore s príponou .wdx
Nastavenia
>      Všetky potrebné nastavenia týkajúce sa vzhľadu modelu, konektorov, prvkov, model explorera, dátového modelu, vzorov (pattern), RAS, porovnania a zlúčenia, tlače, validačných pravidiel atď. sa robia v Tools>Options>Rational XDE

Minimálne požiadavky na hardvér
>      Procesor 733Mhz, RAM 512, Disk 2-5GB

Modelovacie balíky (package) Rational XDE
>      Rational Modeler (Modelár)
>      Rational Data modeler (Dáta modelár)
>      Rational Developer for the Java Platform
>      Rational Developer for Visual Studio
>      Rational Developer Plus (Vývojár Plus)

Rational Modeler (Modelár)
>      tvorbu diagramov free-form, activity, class, component, deployment, sequence, statechart, and use-case diagrams
>      podporuje modelovaciu konvenciu Unified Modeling Language (UML) 1.4 , využíva UML prvky a Non-UML prvky (v taboch Geometric Shapes and UML Deployment v Toolbox)
>      plná podpora tvorby vzorov (pattern)
>      tvorba Reusable Asset Specification (RAS) assets (kolekcia príbuzných artefaktov na riešenie opakujúcich sa problémov uložených v repozitory)
>      z Rational XDE Extensibility API (RXE API), umožňuje písať programy v rôznych jazykoch a tvorbu súborov XML a CSV
>      RUP Configuration for Java Developers
>      RUP Configuration for Microsoft Visual Studio .NET Developers predstavuje Rational Unified Process špeciálne upravený pre potreby NET

Rational Data modeler (Dáta modelár)
Navyše obsahuje:
>      Možnosť analýzy, definície a návrhu logického a generovania fyzického modelu dát pre databázy IBM DB2, Microsoft SQL Server, Sybase Adaptive Server
a Oracle
>      Plnú podporu kódových šablón, umožňujúce vytvorenie šablón pre často používané časti kódu

Rational Developer for the Java Platform
Navyše obsahuje:
>      Podporu na generovanie kódu do Javy, reverzné inžinierstvo modelov z kódu, vrátane J2SE a J2EE
>    Podporu modelovania a generovania JSP, tag knižníc a HTML dokumentov Neobsahuje:
>      RUP konfiguráciu pre Microsoft Visual Studio NET vývojárov
Rational Developer for Visual Studio
Navyše obsahuje:
>      generovanie kódu do Visual C++, VB a C# a reverzné inžinierstvo modelov z kódu
>    modelovanie a generovanie ASP.NET súborov Neobsahuje:
>      RUP konfiguráciu pre Java vývoj árov

Rational Developer Plus (Vývojár Plus)
Navyše obsahuje:
>      generovanie do ANSI C++ a reverzné inžinierstvo
>      analýzu run-time vykonávania s PurifyPlus
>      automatickú tvorbu tzv. Trace Sequence Diagram vo Visual Trace

Prvky používateľského rozhrania
>      Class View - zobrazuje triedy
>      Command window - umožňuje pridávať príkazy, debagovať alebo ohodnotiť výrazy
>      Diagram window - zobrazuje aktuálne diagramy
>      Dynamic Help window - zobrazuje pomoc k vybranému prvku
>      Model Explorer - zobrazuje súbory modelu
>      Model Dokumentation - umožňuje vytvoriť a editovať dokumentáciu k modelu
>      Output window - zobrazuje správy o statuse modelu, aktivity modelu a príbuzné elementy
>      Properties window - zobrazuje vlastnosti vybranému prvku
>      Solution Explorer - zobrazuje riešenie vrátane modelov
>      Toolbox - poskytuje prvky pre diagramy
>      Server Explorer - poskytuje prehľad serverov
V hl. menu si zvolíme VIEW a okno, ktoré chceme zobraziť

Príkazy menu závisia na:
>      Package, ktorý používame
>      Funkcionalite sprístupnenej načítanými profilmi
>      Type modelu, ktorý je otvorený
>      Type prvku, ktorý j e vybraný
>      Okne v ktorom vyberieme prvok

Toolbar (panel nástrojov)
>      poskytujú jednoduchý a rýchly prístup k najčastejšie používaným príkazom
>    položka menu VIEW>Toolbars Toolbox
>      poskytuje nástroje organizované v záložkách (tab) na vývoj diagramov
>      záložky a nástroje môžeme voľne pridávať alebo meniť
>      do diagramov môžeme pridávať nástroje potiahnutím alebo kliknutím



Modelovanie v XDE Práca s projektmi
>      Vytvorenie projektu: File >New > Project
>      Pridanie projektu: File > Add Project > New Project
>      Mazanie projektu: v Solution Explorer klikneme pravým tlačítkom na projekt a zvolíme Remove
Práca s modelmi
>      Vytvorenie modelu: File > New > File
>      Pridanie modelu do existujúceho riešenia: File > New > File
>      Pridanie modelu do existujúceho projektu: File > Add New Item,
>      Pridanie existujúceho modelu do projektu: v Solution Explorer klikneme pravým tlačítkom na projekt a zvolíme Add > Add Existing Model
>      Vymazanie modelu: v Solution Explorer klikneme pravým tlačítkom na projekt a zvolíme Remove

Validácia
XDE zahrňuje:
5

>      validovanie modelov a diagramov
>      validovanie .NET modelov
>      validovanie dátového modelu
>      validovanie externých referencií kódových šablón


Spúšťa sa:
>      všeobecne kliknutím pravého tlačidla na element a zvolením Validate
>      výsledky validácie sa zobrazujú v Output a Task List window - umožňuje dvojklikom na porušenie navigáciu k miestu
Existujú tri úrovne validácie:
>      Error - ide o porušenie, ktoré je nedovolené
>      Warning - ide o porušenie, ktoré je dovolené ale sémanticky nesprávne (resp. musíme si ho byť vedomý)
>      Information message - ide o porušenie konzistencie s UML štandardami alebo s jazykovou špecifikáciou, ktoré nemusí byť opravené

Validácia dátového modelu
Dve skupiny špecifických val. pravidiel:
>      tzv. živé, ktoré hlásia chybu ihneď po vykonaní akcie
>      tzv. dávkové (batch), ktoré zahlásia chybu až po spustení príkazu validovať

Import a export XMI
>      XMI (XML Metadata Interchange) je typ súboru, ktorý umožňuje výmenu UML informácií medzi rôznymi vizuálnymi modelovacími nástrojmi
>      Nie všetky reprezentácie XMI majú korešpondujúce elementy s XDE, preto sú reprezentácie nemajúce jednoznačné mapovanie importované (exportované) ako podobné elementy a všetky nekompatibilné reprezentácie ignorované
>      Spúšťa sa cez File>XDE Import alebo File>XDE Export

Stereotypy (stereotypes)
>      Sú rozširovací mechanizmus UML
>      Vytvára sa variácia modelového elementu alebo relácie, ktoré sa objavujú v rovnakej forme ale využívajú v rôznych situáciách
>      Možno použiť na tvorbu nových typov resp. špecifikáciu elementov založených na existujúcich elementoch
>      Definuje sa vo vlastnostiach elementu UML>Stereotype
>      Slovo uzavreté v « » (napr. «library», «table», «call», «create»)

Kľúčové slová (keywords)
>      Kľúčové slovo je textový opis pridaný prvku alebo konektoru, ktoré reprezentujú elementy bez vlastnej jedinečnej notácie
>      Napr. «enumeration», «interface»
>      Nie sú editovateľné na rozdiel od stereotypov

Obmedzenia (constrains)
>      Predstavuje rozširovací mechanizmus, ktorý určuje spresnenie štruktúry a správania elementu ku ktorému je pridelené
>      Podmienky alebo reštrikcie v textovom údaji nazývanom telo obmedzenia,
>      V diagramovom okne sa zjavuje ako poznámka, telo je v zložených zátvorkách
>      Podporuje Object Constraint Language (OCL) pre výrazy tela
>      V Toolbox nájdeme Constraint Attachment tool
Code templates (kódové šablóny)
>      Predstavujú zdrojový kód (šablónu) pre element v XDE modely
>      Pri generovaní kódu pre daný element sa šablóna stane časťou generovaného zdroja
>      Poskytujú rozšírenie model ku kódu pre potrebu generátorov kódov
>      Obsahujú telo, ktoré môže byť napísané v ľubovoľnom jazyku (aj skriptovacom)
>      Môže mať aj parametre (String alebo Modelltem)
>      Môže byť typu: scripted template, Java, .NET, COM a externý JavaScript
Ak je typ tela skriptovaná šablóna (scripted template), môže obsahovať skriptlety napísané v skriptovacom jazyku. JavaScript je zatiaľ jediný podporovaný.
>      Je rozvinutá (expanded), keď nastáva generovanie kódu
>      Oblasť začína z // (Begin Template Expansion) a končí //(End Template Expansion) v generovanom kóde
>      Telo kódovej šablóny je pregenerované vždy pokiaľ vlastnosť One Time Expansion nie je nastavená a nie je to prvý krát, čo je rozvinutá
>      Ak je nastavená vlastnosť Replace Body je celé telo kódovej šablóny nahradené
>      Ak nie je nastavená vlastnosť Replace Body telo kódovej šablóny je zlúčené zo zmenami oblasti expanded
>      Validácia napojení je možná cez Modeling > Check External References > To Artifacts
Kódové šablóny delíme na
>      Interné

      je napojená len na jeden element a uložená v modeli
      tvorba: Code Templates > Bind
>    Externé
      je napojená na viac elementov a uložená v externom XML súbore
      tvorba: Tools > Code Templates > Create File / Edit File
      Napojenie: Code Templates > Bind
      okrem naviazania je možné editovať, zrušiť a preorganizovať napojenie

Návrhové vzory (design pattern)
>      Sú založené na parametrickej kolaborácii, ktorá pozostáva z relácií a správaní aplikovateľných na celkový návrh v objektovo orientovanom vývoji
>      Tvorba je jednoduchá, len treba mať znalosti a skúsenosti izolovať opakovateľnú štruktúru alebo proces a transformovať ju do znovu použiteľného návrhu
>      Môžu zahrňovať upraviteľné výzvy a dokumentáciu

Výhody vzorov:
>      Riešia problém opakovania sa v rámci daného kontextu
>      Môžu byť zdieľané
>      Riešia problémy dobre definovanými riešeniami (návrh experta, dobre zdokumentovaný)
>      Majú individuálne a široké použitie (v rôznych fázach vývoja, vnorené vzory)
>      Podporujú znovu použiteľnosť softvéru (vytvorenie, obnovenie a údržba SW, znižuje náklady a šetrí čas znovunávrhu )
Vlastnosti:
>      Vzory môžeme definovať v Pattern Explorer, Model Explorer alebo diagramovom okne položku Add UML> Pattern asset
>      S tvorbou vzorov súvisí vlastnosť modelu TreatNewCollaborationsAsPatterns (true/false)
>      Po vytvorení musíme vzor aplikovať na konkrétny element cez položku Apply This Pattern. Zobrazí sa okno z možnosťami Apply Pattern Wizard alebo Apply Pattern dialog box.
>      Vzory GoF - príklady vzorov v XDE (Apply Favorite Pattern )

Okrem explorera existujú pre vzory Pattern properties a Pattern dokumentation window
>      Existujú tri typy dokumentácie:

       upraviteľné výzvy - textové vlastnosti, ktoré sa zobrazujú pri aplikovaní vzoru používateľom
       XML dokumentačno špecifikačný súbor - generuje sa so štandardnými prvkami, z neho je generovaný HTML súbor (Generovanie dokumentácie v Pattern Explorer > Generate Documentation)
       externá dokumentácia - dodatočné informácie (Add UML>URL alebo cez vlastnosť External dokumentation URL v Pattern properties)

Reusable Asset Specification (RAS)
>      Vzory možno importovať alebo exportovať z/do RAS. Najjednoduchšie cez File>XDE import / XDE export> RAS
>      Je štandard pre znovu použiteľné artefakty
>      Obsahujú elementy, štruktúru a dokumentačné štandardy pre jednoduchú výmenu medzi používateľmi XDE
>      Poskytujú konzistentnú metodológiu na organizáciu, dokumentovanie, zdieľanie, uchovávanie a obnovenie riešenia (solution)

RAS poskytujú:
>      organizáciu rôznych ale príbuzných súborov v jednom package
>      prezentáciu konzistentných informácií vo všetkých assets rovnakého typu
>      mnohonásobné a flexibilné kľúče na hľadanie assets
>      možnosti uchovávať a obnoviť assets z jednej alebo viacerých RAS assets repozitory
>      použitie jednoduchých variácií štandardných funkcií importu a exportu na načítanie package assets
>      údržbu aktivít zabezpečenia a správnej obnovy súborov

RAS asset:
>      Musí mať pridelený profil: default (predvolený), web services (na tvorbu servisov) alebo component (na tvorbu komponentov).
>      Je zipovaný súbor uchovávajúci súbory z ktorých sa asset skladá, má príponu .ras
>      Rasset.xml - Manifest udržiava dáta potrebné na obnovenie štruktúry RAS asset, poskytuje informácie pre používateľa vo forme opisu RAS asset (aký problém
rieši, kde môže byť aplikovaný, ktoré jazyky a platformy podporuje), kľúčových slov pre vyhľadávanie a dokumentáciu (ako používať asset)
>      Môže byť uložený v súbore (do adresára) alebo uverejnený v repozitory - lokálna, pracovného priestoru. Obidve možnosti sú prístupné zo sprievodcu exportu. Ale len asset v repzitory možno nájsť cez vyhľadávaciu schopnosť XDE RAS asset
>      Funkcie sú prístupné cez: Tools > RAS > Show RAS repository Explorer alebo Find RAS Asset alebo Add Repository / Remove Repository

Modelovanie .NET aplikácií
>      Round Trip Engineering je proces špirálového vývoja a zahrňuje v XDE generovanie kódu, reverzné inžinierstvo a synchronizáciu
>      Pri generovaní a reverznom inžinierstve ide o jednostrannú operáciu
>      Príkaz generovania kódu a príkaz reverzného inžinierstva sú prístupné z : Model Explorer context menu, Solution explorer context menu, Model Explorer command bar, Solution Explorer command bar, v Diagram window context menu, alebo z Rational XDE Round-Trip Engineering toolbar
>      Na riešenie jednosmerných synchronizačných problémov použijeme znovu príkaz generovania kódu alebo príkaz reverzného inžinierstva
>      Aby konflikty boli riešené priamo prepísaním modelov alebo kódu, nastavíme to v Tools>Options>Rational XDE
>      Samotná synchronizácia je obojstranná operácia, ktorá upraví model a kód a ich časti vzájomným porovnaním a znovu nastolením konzistencie medzi nimi
>      Všetky vzniknuté konflikty sa vypisujú v Task list window

XDE v rámci modelovania NET aplikácií umožňuje:
>      Modelovať .NET založený kód vytvorením kódových modelov priamo
v projektoch (automatické mapovanie kódových objektov a ich projektov do UML modelových elementov)
>      Modelovať projektové referencie generovaním a znovu použitím referencovaných modelov
>      Generovať NET založený kód z modelov a diagramov a prepísať kód zo zmenami v modely
>      Aktualizovať modely s najnovšími zmenami kódu
>      Aktualizovať modifikácie, pridania a zmazania modelových a kódových elementov použitím obojstrannej synchronizácie
>      Riešiť konflikty synchronizácie v okne zoznamu úloh (Task List window)
>      Zužitkovať kódové šablóny, kódové vzory a zmeniť softvérový manažment na zvýšenie produktivity vývoja a redukcie času predaja
>      Validovať .NET modely na správnosť syntaxe UML a kódu
>      Plne integrované round - trip inžinierstvo pre ASP NET Web aplikácie a XML Web služby (návrh, modelovanie, vizualizácia, reverzné inžinierstvo, generovanie, synchronizácia)

Generovanie kódu
>      Vytvoríme nový projekt: File>New>Project (Empty VB/C# project)
>      Vytvoríme model: v Solution Explorer klikneme pravým na projekt a zvolíme Synchronize (otvorí sa okno s prázdnym modelom)
>      Pridáme do modelu nejaké prvky
>      Generujeme kód: klikneme pravým na prvok a zvolíme Generate code
>      Prezeráme kód: klikneme pravým na prvok a zvolíme Browse code

Reverzné inžinierstvo
>      Otvoríme existujúci projekt: File>Open>Project
>      Urobíme reverzné inžinierstvo: v Solution Explorer klikneme pravým na projekt a zvolíme Reverse engineer (otvorí sa okno s modelom, reprezentujúcim kód)
>      Na navrátenie do pôvodného stavu môžeme zvoliť príkaz Edit>Undo
>      Na zastavenie synchronizácie slúži tlačítko STOP na Rational XDE Round-Trip Engineering toolbar

Synchronizačná politika (Synchronization polky)
>      Je dostupná v oblasti vlastností Round-Trip Engineering.
>      Môže byť nastavená na synchronize (umožnená obojsmerná synchronizácia), disabled (model sa nezúčastňuje synch.), accept code changes (len zmeny kódu sú premietnuté do modelu), accept model changes (len zmeny modelu sú premietnuté do kódu).

Modelovanie dát v XDE
>      Modelovanie dát v XDE podporuje round-trip engineering (RTE) medzi dátovým modelom a DDL (Data Dictionary Language) alebo podporovaným systémom riadenia databázy (SRBD).
>      XDE podporuje: ANSI SQL 92, IBM DB2 UDB 5.2, 6.1, 7.0, a 8.0 ,IBM DB2 UDB zSeries 5.x, 6.x, a 7.x ,IBM DB2 UDB iSeries v5 r2, Oracle 7.3, 8.x, a 9i for Windows NT , Microsoft SQL Server 6.5, 7.0, a 2000 , Sybase Adaptive Server 12.x

XDE v rámci modelovania dát umožňuje:
>      reverzné inžinierstvo dátového modelu z existujúcej databázy alebo DDL
>      transformovať tabuľky na triedy
>      transformovať triedy na tabuľky
>      porovnať a synchronizovať dátový model s existujúcou databázou alebo DDL
>      vytvoriť elementy dátového modelu na alokáciu tabuľkového priestoru
>      definovať obmedzenia (constrains) a indexy
>      vytvárať trigery (triggers), domény (domains), uložené procedúry (stored procedures) a pohľady (views)
>      generovať DDL a databázu z dátového modelu

Na modelovanie dát v XDE možno použiť diagram tried (class), komponentov (component) a nezávislých tvarov (free-form) alebo priamo záložku (tab) Data Modeler v Toolbox
V XDE možno pri tvorbe DM použiť:
  Špecifickú SRBD modelovú šablónu - určí sa konkrétny databázový cieľ
     Spoločnú šablónu ANSI SQL 92 - všeobecný štandard Dodatočné naviazanie sa robí cez Tools>Options>Rational XDE>Data Model

V XDE sa rozlišuje dátový model:
>    Fyzický
       Mal by byť rozdelený na databázový komponent, package pre tabuľky, uložené procedúry, pre domény a pohľady
       Tvorí sa v záložke Data Modeler
>    Logický
       Tvorí sa pomocou prvkov Diagramu tried, môže slúžiť aj ako konceptuálny model
       Mal by obsahovať triedy, ktoré mapujú tabuľky dátového modelu v package
       Transformáciou tried sa generuje fyzický model tabuliek

Postup tvorby logického dátového modelu
>      Vytvorenie súboru logického dátového modelu (v Solution Explorer sa pridá nový model cez Add>New Item a vyberieme Rational XDE>Data a konkrétny typ šablóny podľa cieľového SRBD)
>      (voliteľné) Pridanie a organizovanie balíkov logického dátového modelu
>      Pridanie elementov UML
>      Skompletizovanie predpríprav na transformáciu
>      Transformovanie logického modelu dát

Pridanie elementov UML
>      manuálnym vytvorením
    Pridávanie tried (reprezentujú entity), relácií medzi triedami, kandidátneho kľúča a nekľúčových atribútov a ich dátových typov
>    transformáciou dátového modelu
                       Transformácia tabuľky na triedy Skompletizovanie predpríprav na transformáciu
>      mapovanie transformácie tried na tabuľky, mapovanie dátových typov tried na tabuľky, zvážiť denormalizáciu pri reprezentácii generalizácie
Transformovanie logického modelu dát
>      Otvorí sa dátový model
>      Vyvolá sa transformácia

       Transformácia tried na tabuľky
       XDE nesynchronizuje logický dátový model a dátový model pri round-trip transformácii
       trieda môže byť mapovaná na viacero tabuliek, konkrétna tabuľka môže byť mapovaná len na jednu triedu
>    Overia sa výsledky
    V Class to Table report skladajúcom sa z diagramu ClassMapping (mapovanie tried) a UML artefaktu nazvaného AssociationMapping (mapovanie relácií)
Postup tvorby dátového modelu
>     Vytvorenie súboru dátového modelu
>     (voliteľné) Pridanie a organizovanie balíkov dátového modelu
>     Pridanie elementov dátového modelu
>     Validovanie dátového modelu
>     Generovanie DDL súboru alebo databázy

Pridanie elementov dátového modelu
>     manuálnym vytváraním

       Vytvárajú sa tabuľky, ich stĺpce a obmedzenia pre stĺpce, relácie medzi tabuľkami a určuje sa kardinalita relácií,
       Dátový model možno rozšíriť o pohľady, uložené procedúry a trigery, databázu a tabuľkový priestor
>   transformáciou logického modelu
    Transformácia tried na tabuľky
>     reverzným inžinierstvom existujúcej schémy alebo databázy
>     kombináciou týchto metód

Reverzné inžinierstvo
>     je tvorený Storage Modeling diagram, ktorý predstavuje komponentový diagram všetkých prvkov databázy (tabuľky, uložené procedúry, pohľady atď.)
>     Na spustenie klikneme pravým v Model explorer na model alebo package
a zvolíme Data Modeler > Reverse Engineer, postupujeme podľa inštrukcií sprievodcu

Generovanie DDL súboru alebo databázy
>     v Model Explorer klikneme pravým na dátový model a zvolíme Data Modeler>Forward engineer. Zobrazí sa wizard na generovanie DDL a databázy. Na porovnanie a synchronizáciu modelu a vygenerovaných DDL a databázy potom použijeme Comparison and Synchronization Wizard.
>     Na generovanie musia byť splnené tieto požiadavky: aby boli všetky zdrojové tabuľky pre pohľady, validovaný model a migrované kľúče a celý string kontajnera tabuľkového priestoru bol menom kontajnera.

Domény
>     V XDE možno tvoriť používateľmi definované dátové typy známe ako domény
>     po definovaní možno doménu použiť ako dátový typ pre stĺpec, atribút alebo parameter uloženej procedúry, alebo pridať pre celý dátový model
>     predstavuje aj pravidlo definované pre stĺpec a tvorí alias pre názov stĺpca tak, že sa nastavia jedinečné a nulové obmedzenia (constraints), použitím default hodnôt a tvorbou overovacích obmedzení.
>     Pri vytváraní domén, ktoré majú rovnaký cieľový SRBD ich musíme zoskupiť do jedného package
>     Vytvorenie domény: v Model Explorer klikneme pravým na package a zvolíme Add Data Modeler > Domain
>      Upravíme vlastnosti domény: klikneme pravým na doménu a zvolíme Data Modeler > Open Specification, kde určíme dátový typ, jedinečnosť atď
a zvolíme OK. Takto vytvorené domény môžeme priradiť:
>      Pre atribút: Properties window > UML > TypeExpression
>      Pre stĺpec: Data Modeler > Open Specification a v Type tab vyberieme doménu
>      Pre uloženú procedúru: Data Modeler > Open Specification a v Parameters tab vyberieme doménu
>      Pre dátový model: model a doménu pridáme do diagramu, v UML Class tab z Toolbox klikneme na Dependency prvok a prepojíme model s doménou.

Pre tabuľku v dátovom modely je možné určiť špecifický vzor Audit Trail Pattern. Správa sa ako tabuľka, aleje schopný generovať históriu tabuľky v tabuľke. Nájdeme ho v Toolbox v Data Modeler tab a zvolíme prvok Audit Trail Pattern

Databázy a tabuľkové priestory (tablespace)
>      Databáza môže obsahovať tabuľky, uložené procedúry a pohľady. Na vytvorenie databázy klikneme v Model Explorer na model a zvolíme Add Data Modeler > Database.
>      Tablespace je logický element, ktorý uchováva tabuľkové dáta. A kontajner (tablespace container) je fyzický úložný priestor ako disk, súbor alebo adresár.
>      Na pridanie Tablespace pre databázu zvolíme v Model Explorer > Add Data Modeler > Tablespace.
>      Na pridanie tabuľky do tablespace klikneme na tabuľku pravým a zvolíme Data Modeler > Open Specification a v Storage tab pridelíme tablespace.

Transformovanie tried a tabuliek
>      Tabuľka na triedu: klikneme pravým na tabuľku a zvolíme Transform > Transform to Class
>      Trieda na tabuľku: klikneme pravým na triedu a zvolíme Transform > Transform to Table
Porovnávanie a synchronizácia
>      V model Explorer klikneme pravým na databázu a zvolíme Data Modeler > Compare and Sync. A objaví sa sprievodca (wizard). Podľa inštrukcií
v sprievodcovi môžu byť výsledky rôzne. Napr. XDE vygeneruje DDL so zmenami, alebo zmení, pridá alebo vymaže elementy z modelu alebo urobí oboje.

Zvýšenie verzie modelu
>      Modely v starších verziách Rational XDE alebo v Rational Rose sa dajú upgrade-ovať do verzie 2003.
>      Musíme zohľadniť, že nie sú spätne kompatibilné, nemôžeme zlúčiť modely rôznych verzií, automaticky budú upgrade-ované aj všetky referenčné modely a obsahy podjednotiek sa zlúčia do materskej jednotky.
>      Upgrade sa robí v Solution Explorer dvojklikom na model. Zobrazí sa okno Upgrad-u modelu a zvolíme Upgrade.
Porovnávanie a zlučovanie modelov
Umožňuje:
>      vybrať základný a vstupné modelové súbory (max. 7 súborov)
>      porovnať vybrané súbory
>      prezrieť rozdiely a konflikty
>      manuálne alebo automaticky vyriešiť konflikty
>      zlúčiť súbory a vytvoriť jeden zlúčený model
>      spúšťa sa cez File > Compare/Merge > New Session. Zobrazí sa okno pre vstupy na porovnávanie alebo zlúčenie. Nájdeme potrebné súbory (model - .mdx, alebo ich podjednotky class - .clx, component - .cmx, object - .obx, package - .pkx)
a zvolíme Compare alebo Merge.
>      Pri porovnaní Semantic Comparative Model Explorer a Comparative Property Browser vypíšu statusové stĺpce pre konflikt (Conflict - C) a rozdiel (Difference -D).
>      Pri zlúčení sa automaticky vyrieši každý rozdiel a generuje zlúčený model pre riešené rozdiely. Diagram/Semantic Comparative Model Explorer a Comparative Property Browser ukáže statusové stĺpce pre konflikt (Conflict - C), riešenie (Resolution - R) pre model a rozdiel (Difference - D) pre zvolené vstupy
>      Stĺpec zlúčenia ukáže výsledok aplikovaný pre konkrétny element modelu.
>      Z menu Merge môžeme vybrať Auto-Advance na automatický pohyb medzi elementmi v spomínaných exploreroch alebo navigovať cez elementy pomocou Browse menu. Potom zvolíme z menu Merge > Resolve using / Resolve AU using na vyriešenie vzniknutých konfliktov špecifikovaním vstupu na vyriešenie.
A nakoniec zvolíme File > Compare/Merge > Save Merged Model a File > Compare/Merge > Close Session.
>      Na vrátenie elementu do pôvodného stavu zvolíme Merge > Unresolve.


Integrácia s inými Rational produktami XDE-PurifyPlus
>      Poskytuje schopnosť vykonávať run-time analýzy na aplikáciách generovaných v XDE. Ide o vykonávanie kódu a analýzu zozbieraných dát na nájdenie programových chýb a spôsobov na zvýšenie výkonu.
Skladá sa z nasledovných nástrojov:
>      Purify (očistiť) slúži na odhalenie pamäťových dier. Ide o pamäť, ktorú aplikácia nepoužíva a ani nemôže byť vrátená systému na znovu použitie.
>      Quantifi (kvantifikovať) slúži na odhalenie úzkych miest vo výkone.

>      PureCoverage (čisté pokrytie) slúži na monitorovanie pokrytia kódom. XDE-ClearCase
>      Umožňuje porovnávať a stopovať rôzne model elementy, identifikovať rozdiely a zlučovať modely.
XDE-RequisitePro
>      Umožňuje asociovať požiadavky a dokumenty s use case a modelmi. XDE-Rational Unified Process
>      Predstavuje konfigurovateľný vývojový proces pre softvér.
Visual Trace
>     Umožňuje získať líniu (sled) aplikácie a zobraziť ju v Trace sequence diagrame. Nielen, že zobrazuje tok aplikácie vizuálne ale poskytuje informácie o stave vlákien, pokrytí kódom a alokácii pamäte. Tento diagram pomáha porozumieť kódu, debagovať kód a generovať sekvenčné diagramy z kódu.
>     Spustenie: v menu PurifyPlus > Visual Trace > Engage Visual Trace
>     Ak chceme sledovať len časť aplikácie tak zvolíme na začatie a aj pre skončenie: v menu PurifyPlus > Visual Trace > Record Trace.
>     Na vypnutie: v menu PurifyPlus > Visual Trace > Disengage Visual Trace
>     Na navigáciu cez diagram používame skrolovanie myšou (+CTRL) a ponuku, ktorá sa zobrazí po kliknutí pravým na diagram, správu alebo životnú líniu (lifeline).
>     Pre diagram sa dajú zobraziť použitie pamäte(klikneme pravým na diagram a zvolíme Show Memory Usage), pokrytie kódom (Show Coverage Bar) a informácie o vláknach (Show Thread Status).
>     Ďalej môžeme diagram filtrovať (Filter message alebo Filter lifeline), generovať z neho sekvenčný diagram (Generate Sequence Diagram, kde sa zobrazí sprievodca) a hľadať text (Find).

Rational XDE Extensibility (RXE)
>     RXE je aplikačné programové rozhranie (API) s nástrojmi, ktoré umožňujú používateľovi podľa požiadaviek upraviť a rozšíriť XDE.
>     RXE obsahuje RXE API (poskytuje programovací prístup k modelovacej sémantike), Code Templates API (programové šablóny napísané v Jave, COM jazyku alebo CLR jazyku) a Patterns API (vkladanie vlastného správania do vhodných častí prostredníctvom vzorov).