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
>
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).