44
ZS 2009 ! " #$% &' #' -1-

˘ ˇpanrepa.org/CASE/zima2009/CASE_pro_DB_zima2009.pdfdo Oracle Repository, obsahuje modul analýzy závislostí jednotlivých aplikačných komponentov a nástroje pre správu verzií

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • ������������������������������������������

    �������������������

    ���������������������

    ZS 2009

    ������������

    ��������� ��!��

    "�����#�$�%�

    &�����'��#���'���

    -1-

  • �����

    Úvod ............................................................................................................................................ 4

    1 Oracle Designer ....................................................................................................................... 5

    Skupina modelovania systémových požiadaviek(Modelling System Requirements) ............ 9

    Procesný model(Process Modeler) ..................................................................................... 9

    Diagram hierarchie funkcií(Function Hierarchy Diagrammer) .......................................... 9

    Dátový model(Entity Relationship Diagrammer) ............................................................. 10

    Dátový model(Entity Relationship Diagrammer) ............................................................. 11

    Skupina generovanie predbežného obsahu(Transform preliminary design) ........................ 11

    Design aplikácie (Application Design Transformer) ......................................................... 11

    Design databáze (Database Design Transformer) ............................................................. 12

    Skupina Design a generovanie cieľového kódu(Design and Generate) ................................ 13

    Design editor ..................................................................................................................... 13

    DDL generátor(DDL generator) ........................................................................................ 14

    Reverzné inžinierstvo(Reverse engineer DB utility) ......................................................... 14

    Skupina utilít ......................................................................................................................... 14

    Správu repository(Repository Object Navigator) .............................................................. 14

    Správa závislostí(Dependency manager) .......................................................................... 16

    Maticové diagramy(Matrix Diagrammer) ......................................................................... 16

    Reporty o repository(Repository reports) ........................................................................ 17

    Správa repository(Repository administration utility) ....................................................... 17

    Novinky vo verzii Oracle Designer 10g ................................................................................. 17

    2 Sybase Inc. .............................................................................................................................. 18

    PowerDesigner ....................................................................................................................... 18

    ................................................................................................................................................... 21

    PowerDesigner 15 .................................................................................................................. 22

    -2-

  • Hlavní funkce a výhody nové verze: ..................................................................................... 23

    Databáze ................................................................................................................................ 24

    Typy licencí .......................................................................................................................... 24

    3 Toad Data Modeler ................................................................................................................ 26

    Základní informace .............................................................................................................. 26

    ER Diagramy ........................................................................................................................ 26

    Generování SQL kódu ......................................................................................................... 28

    .............................................................................................................................................. 29

    Reverzní inženýrství .............................................................................................................. 29

    .............................................................................................................................................. 31

    Tvorba dokumentace .............................................................................................................. 31

    Verifikace ............................................................................................................................. 32

    Customizace ......................................................................................................................... 33

    Alter skripty ......................................................................................................................... 33

    Novinky ve verzi 3.4 ............................................................................................................ 33

    Stažení softwaru .................................................................................................................. 33

    Systémové požadavky ........................................................................................................... 34

    Licence ................................................................................................................................. 34

    Případová studie – reverzní inženýrství .................................................................................... 34

    Závěr .......................................................................................................................................... 41

    Zdroje ........................................................................................................................................ 43

    Seznam Obrázků ................................................................................................................... 44

    Přílohy ....................................................................................................................................... 44

    -3-

  • ����

    Tato práce se zabývá CASE (Computer Aided Systems Engineering) nástroji, které lze

    využít při návrhu a tvorbě databází. CASE nástroje mají široké využití v oblasti návrhu a

    modelování. Vytváření databází je jedna z aplikačních oblastí, kde je lze využít. V současné

    době mají nejširší uplatnění relační databáze. Data v relačních databázích jsou strukturována

    do relačních tabulek. Metody a nástroje pro přístup k datům v databázi zajišťuje systém řízení

    báze dat (SŘBD). Tento systém představuje aplikaci, která zapouzdřuje práci s daty a

    poskytuje rozhraní pro externí aplikace, které mohou přistupovat k datům. SŘBD zabezpečuje

    vkládání dat do databáze, vyhledávání dat, přístup více uživatelů současně k datům a relační

    propojenost dat. Databáze je základní součást téměř všech systémů. SŘBD k zajištění práce s

    daty využívají jazyky vyšší úrovně, a to zejména jazyky pro manipulaci s daty a definici dat.

    Zároveň zajišťují potřebnou úroveň zabezpečení dat. Autentizují uživatele, jejich skupiny a

    autorizují jednotlivé uživatelské transakce podle přidělených práv.

    Data jsou strukturována v databázi v podobě datových prvků, které jsou nositeli

    hodnoty. Dále databáze obsahuje informace o relačním provázání datových prvků a

    integritním omezení, což jsou definované podmínky, které musí splňovat uložené datové

    prvky. V současné době jsou trendem centralizované databáze. Tedy uložení dat z více

    systémů na jednom místě. Lépe se pak zabezpečuje správa databáze a také je efektivněji

    řešitelné zálohování a obnova databáze v případě hardwarových a softwarových selhání.

    Zároveň nejrozšířenější jsou transakční databáze. Transakcí se rozumí jedna, nebo více

    činností s daty, a každá transakce má označený svůj konec. V jazyku SQL se používá příkaz

    commit, kterým je ukončena databázová transakce. Transakční zpracování zajišťuje provedení

    všech operací v jedné transakci, nebo žádné. Není možné provést pouze jednu operaci v

    transakci. Pokud dojde k přerušení činnosti v rámci jedné transakce, která není korektně

    ukončena, dojde k rollbacku a všechny provedené změny v rámci této jedné neukončené

    transakce jsou vráceny zpět, do původní podoby.

    V této práci se autoři zabývají praktickým popisem tří významných CASE nástrojů,

    které umožňují návrh databáze ve všech jeho úrovní, se všemi praktickými aspekty. První

    úrovní je konceptuální zobrazení databáze. Na této úrovni jsou data zachycena s vysokou

    -4-

  • úrovní abstrakce, zobrazeny jsou jednotlivé datové entity jako modely objektů reálného světa

    a vztahy mezi nimi.

    Druhou úrovní je logický model. Datové entity jsou modelovány jako konkrétní

    struktury logického modelu a vztahy mezi nimi jsou přesně kvantifikovány.

    Třetí úroveň modelu představuje fyzická podoba modelu, která je již implementační a

    v závislosti na technickém prostředí generuje konkrétní SQL skripty, který vytvoří samotnou

    databázi.

    ��������� ���!���Oracle Designer je softvér spoločnosti Oracle Corp. je súčasťou poslednej verzie

    balíku produktov, ktorý má názov Oracle Developer Suite 10g. Všetky informácie si Oracle

    Designer ukladá do databáze Oracle, takže je nutné mať túto databázu nainštalovanú. Čo sa

    týka vlastných modelov a analýzy, tento nástroj sa zameriava na štruktúrovaný návrh

    informačného systému. Hlavnou úlohou tohto nástroja je rýchly a flexibilný vývoj aplikácie

    založenej na relačnej databáze. Hlavným využitie Oracle Designeru je u webových

    a klient/server aplikácií na založených na práve ich databáze. [4,5]

    Obrázok č. 1 - Štruktúra databáze Oracle

    Oracle Designer je CASE nástroj pracujúci nad centrálnym depozitárom (Oracle

    Repository), schopný modelovať a automaticky generovať:

    • dátové štruktúry pre databázy Oracle, IBM, MS-SQL, ODBC,

    • aplikácie pre Oracle Forms a Reports Developer,

    • HTML aplikácií pre Oracle Internet aplikačný server.

    Okrem priameho modelovania aplikácií dovoľuje využiť existujúce Oracle Forms resp.

    Reports Developer moduly a metódou spätného inžinieringu ich preniesť do Oracle

    Repository, upraviť získaný model a vygenerovať nové, modifikované aplikácie. Aplikačná

    logika (klientska aj serverová časť) môže byť zapísaná v jazykoch PL/SQL alebo Java. Oracle

    Designer navyše poskytuje možnosť uloženia súborov a adresárov operačného systému priamo

    -5-

  • do Oracle Repository, obsahuje modul analýzy závislostí jednotlivých aplikačných

    komponentov a nástroje pre správu verzií a konfiguračný manažment. [3,5]

    Oracle Designer rozdeľuje projekt na štyri časti. Na modelovanie požiadavkou na

    systém(Modelling System Requirement), generovanie predbežného designu(Transform

    Prelimary Designs), designu a generovanie cieľového kódu(Design and Generating) a utilít.

    V časti modelovanie(Modelling System Requirements) požiadavkou sú spracované

    základné modely štruktúrnej analýzy(ERD, DFD a procesný model). Výber časti

    a konkrétneho nástroja sa prevádza na jednej prehľadnej obrazovke, kde sú zobrazené odkazy

    na všetky ponúkané nástroje. V predbežnom designe je možno vytvárať tabuľky, triggery, atď.,

    podľa návrhu vytvoreného v modelovaní požiadavkou. [4]

    V designe(Transform Prelimary Designs) sa pomocou Design Editoru prevádzajú

    úpravy práve vytváranej databáze a jej prvkov.

    Nakoniec dôjde ku generovaniu cieľového kódu(Design and Generating). Designer

    Editor zahrňuje Oracle Forms Generator(nástroj pre tvorbu Oracle Forms) a Oracle Reports

    Generator(nástroj na tvorbu Oracle Reports). Oracle Designer ponúka možnosť vytvorenia

    DDL(Data Definition Language) súborov, vytvorenie aplikácie priamo na databáze Oracle

    alebo pomocou ODBC na iných databázach(napr. Microsoft Access, SQL Server, DB2,

    Sybase, ANSI SQL).O všetky prvky(prvky návrhu v Modeler-i, nie objekty v zmysle

    objektovej metodológie) sa stará Repository. Tá sa tiež stará o verzie projektu, jednotlivé

    verzie môžu byť porovnávané a zlučované. [3,4]

    -6-

  • Obrázok č. 2 - Moduly Oracle Designer [1]

    -7-

  • Obrázok č. 3 - Modelovanie procesov [2]

    -8-

  • "#�����$���������������%$��&���

    ��'�������"()�������!�����$�

    *�+#���$����,�

    ��������&�$����(��������)������,

    • Tvorba procesného diagramu(viaceré úrovne)

    • Podporuje metódu Business Proces Reengineering

    • Znázorňujú sa nasledujúce prvky:

    � organizačné jednotky(priradené k tzv. Swim Lanes indikujúcich miesto

    vykonávania aktivity)

    � sklady

    � kroky procesov(typy: Data Entry, Decision Point, Report, Proces Step)

    � toky(môžu prelínať Swim Lanes) [1]

    � ��!��$������������-#�"���(.#�������

    /��������� ��!��$$��,

    Využitie pri rozklade business procesov. Pre zobrazenie dekompozície funkcií sa využíva

    stromová štruktúra. Jednotlivé prvky databáze sú prehľadne zobrazené v strome. [3]

    • Umožňuje zostrojovať hierarchické diagramy funkcií

    • Fukcie sú priamo spojené s udalosťami, ktoré spôsobujú ich spustenie

    • Hierarchia funkcií zobrazuje rozpad funkcie, nezobrazuje poradie alebo odovzdanie

    riadenia

    • Môže byť usporiadaný: horizontálne, vertikálne alebo hybridne

    • Mal by obsahovať len informačné činnosti [1]

    • Funkcie(kroky procesov z Proces Modeller-u) môžu byť:

    � koreňové

    � Spoločné(obsiahnuté vo viacerých hierarchiách alebo viackrát v tej istej

    hierarchii

    -9-

  • � elementárne(vykonané v jednej transakcii)

    • Umožňuje napojenie funkčného a dátového modelu – pre jednotlivé funkcie sa

    priraďujú entity z ERD(Entity Relationship Diagrammer), s ktorými funkcie pracujú

    [1]

    ���&�$����(�������*������������

    ��!��$$��,

    • Pri zadávaní nového diagramu toku dát sú na výber procesné kroky definované

    v procesnom modele [4]

    • Umožňuje tvorbu diagramov dátových/informačných tokov podľa notácie Gane &

    Sarsona

    • Obsahuje tieto prvky:

    � Funkcie:

    � rámcové(frame) – tvoria základ DFD

    � lokálne(local) – vo vnútri rámcových

    � spoločné(common) – mimo rámcových

    � Dátové toky

    � Sklady

    � Externé entity

    • DFD je možné vytvoriť na rôznych úrovniach detailnosti

    • Zdieľa prvky s Process Modeler a Function Hierarchy Diagrammer – rovnaké funkcie

    a rovnaké toky

    • Domodelujú sa externé jednotky a ich väzby so systémom [1]

    Spoločnosť Oracle odporúča vytvárať DFD len ak je potrebné modelovať detaily dátových

    tokov. [1]

    -10-

  • � ���&�$����(�������*������������

    ��!��$$��,

    Okrem bežných relácií sú k dispozície rekurzívne vzťahy(entita sa odkazuje sama na seba),

    ktoré slúžia napríklad k ukladaniu stromových štruktúr. Ak slúži dátové modelovanie

    k navrhnutiu dátového skladu, je možné definovať, ktorá tabuľka bude faktová a ktoré tabuľky

    dimenzionálne. [3]

    • Umožňuje vytvárať entitno-relačné diagramy

    • ERD obsahuje:

    � entity(názov entity, identifikátor, atribúty(povinné, voliteľné))

    � relácie(kardinalita(1:M, M:N), voliteľnosť(povinné, voliteľné)

    • Je možné vytvoriť aj tzv. Arcs, oblúk, ktorý znamená, že ak je viac relácií k jednej

    entitev tom istom čase, tak platí iba jedna [1]

    "#�����!�����������������'�%���

    �����#(0����-��$������$������

    ����!�,�

    ���!������"����(����������� ���!��

    0����-��$��,

    Vytvára definíciu modulov pre obrazovky, výstupy a menu. Design aplikácie vychádza

    z diagramu dátových tokov. Moduly je potom možné implementovať ako Oracle Forms, Oracle

    Reports alebo Web PL/SQL(aplikácie pre webovské prostredie používajúce Oracle Internet

    Appliction Server). [2]

    • Slúži na generovanie kandidátnych modulov(candidate modules) nového SP

    z funkčného modelu, ktorý bol vytvorený modulmi PM, FHD a DFD

    • Vygenerované kandidátne moduly, ak budú prijaté, môžu byť implementované ako

    formuláre(forms), zostavy(reports) a utility(utilities)

    • Transformuje na základe entity usage definovanej vo FHD [1]

    -11-

  • ���!����������( �������� ���!��

    0����-��$��,

    Vytvára schémy databáze(tabuľky, stĺpce, indexy, atď.)

    • Slúži na transformáciu konceptuálneho modelu dát vytvoreného v module ERD na

    logický model bázy dát [1]

    • Vykonávajú sa nasledovné kroky:

    � spustenie DDT

    � nastavenie volieb: možnosť výberu objektov, ktoré budú zahrnuté do LMD

    � definovanie tabuliek: entity z ERD sa transformujú do tabuliek LMD

    s dodržaním pravidiel ako v metodológii MERISE

    � definovanie stĺpcov: atribúty z ERD sa využívajú na odvodenie stĺpcov LMD

    � definovanie integrity: primárne kľúče, cudzie kľúče a kontrola modelu

    � spustenie DDT utility: generovanie tabuliek logického modelu(primárne kľúče

    majú implicitne vytvorené indexy Oracle serverom, pre cudzie kľúče sa

    generujú) [3]

    • Transformácia ERD na LMD

    � entita > tabuľka

    � relácia 1:N > cudzí kľúč

    • relácia M:N > relačná tabuľka so zloženým PK [1]

    -12-

  • "#����� ���!����!�����������

    ���1��%���"2�#( ���!������

    3�������,�

    ���!��������

    Navigátor DE obsahuje 4 záložky:

    ������$����

    • Prvotne obsahuje zoznam tabuliek vygenerovaných modelom DDT

    • Umožňuje tvorbu Server Model Diagram – prvkami diagramu sú grafické

    reprezentácie tabuliek(primárny kľúč, stĺpec, nenulový stĺpec) a relácií medzi nimi

    • Slúži na dotvorenie LMD(doplnenie relačných tabuliek) a na generovanie fyzického

    modelu [3]

    )��#��

    • Prvotne obsahuje zoznam modulov vygenerovaných modulom ADT a upravený v RON

    • Umožňuje tvorbu Module Diagram – samostatný diagram pre každý modul

    • Pre modul umožňuje tvorbu a modifikáciu

    � Detailed Usage Table – detailné využitie tabuliek modulom

    � Detailed Column Usage – detailné využitie stĺpcov modulom

    • Umožňuje nadefinovanie a špecifikáciu okien(strán)generovaných formulárov, počet

    zobrazovaných záznamov na formulári [1]

    4���$��

    • Umožňuje nastaviť prístupové práva a tvorbu Oracle a iných databáz

    ������#�����

    • Umožňuje tvorbu distribuovaných databáz

    -13-

  • 5�!�������( 5�!��������,

    • Slúži na generovanie fyzického modelu v BD

    • Postup generovania:

    � kontrola objekov BD(kontroluje sa úplnosť a správnosť objektov, Design

    Quality Check Report)

    � vytvorenie názvu DB(napr. v RON)

    � spustenie generátora – Generate DB from Server Model

    � prihlásenie na server a výber objektov na generovanie

    � štart generátora

    � execute DDL

    � vypísanie výsledkov do dialógového okna [1]

    *������%���'���������(*���������!������ 4�

    #������,

    • predstavuje proces, ktorý sa nazýva Design Recovery

    • Proces sa vykonáva v dvoch krokoch:

    � Revere Engineer DB Utility: slúži na výber objektov z DB a ich prenos do

    repository ako informácií o elementoch DB

    � Table to Entity Retrofil Utility: slúži na výber tabuliek, ktoré sa konvertujú na

    E-R model [1]

    "#�����#�����

    ���#�����������(*�����������������

    6���!����,

    • Nástroj na správu metabázu dát(reposiktory)

    -14-

  • • Umožňuje vytvárať a editovať všetky prvky repository, t.j. aplikačné systémy, objekty

    a typy objektov, elementy a typy elementov, asociácie a typy asociácií a ich vlastnosti

    • Sprístupňuje aj iné nástroje(Repository Reports, Matrix Diagramer, Dependency

    Manager, PM, ERD, FHD, DFD, DE, SQL, *Plus, Explorer) a utility(DDT, ADT,

    Table to Entity Retrofit ai.) [1]

    Obrazovka RON obsahuje:

    • Aplikačné okno

    • Okno hierarchie objektov

    � Zobrazuje prvky aplikácie v stromovej štruktúre

    � Objekty sú označené veľkými písmenami

    � Typy objektov sú označené veľkými a malými písmenami

    • Okno vlastností:

    � Zobrazuje vlastnosti vybraného prvku stromovej štruktúry

    � Vlastnosti možno sledovať a editovať

    • Iné funkcie [1]

    Použitie RON na spresnenie a doplnenie repository

    • Pre dátový model [2]:

    � Kompletná definícia entít a atribútov

    � Základná a úplná definícia

    � Uloženie definície elementov

    � Vymazanie elementov

    � Definícia jednoznačného identifikátora

    • Pre funkčný model [1]:

    -15-

  • � Detailné definície funkcií a poznámky

    � Definície udalostí

    � Definície použitia funkcií a atribútov

    � Špecifikácie vstupných zostáv

    � Špecifikácie funkcie na elementárnu alebo atomickú

    � Špecifikácie frekvenecie, s ktorou sa funkcia používa za jednotku času

    � Definícia typov udalostí: časové, vyvolané zmenou, systémové

    � Ako funkcie používajú entity

    � použitie organizačných jednotiek

    ��������������( ����������$���!��,�

    • Nástroj umožňujúci manažovanie a úpravu závislostí medzi jednotlivými prvkami

    repository

    )������%����!��$�()����7� ��!��$$��,

    • Umožňuje modelovanie väzieb, čo je potrebné na udržanie konzistencie a zaistenie

    úplnosti informácií v repository pri vytváraní ERD, FHD a DFD

    • Predstavuje nástroj na modelovanie krížnych referencií medzi elementárnymi

    repository

    • Vo všeobecnosti umožňuje tvorbu matíc, do ktorých sa vyberú elementy

    z repozitory do riadkov, stĺpcov a ich vzájomné väzby do priesečníkov

    • Zabezpečuje aj manipuláciu s krížovo referenčnými elementmi a vytváranie,

    prezeranie a aktualizáciu iných elementov v repository [1]

    -16-

  • *�������������������(*�����������������,�

    • Nástroj na tvorbu zostáv z existujúcich prvkov repository usporiadaných do

    jednotlivých kategórií

    • Zostava sa tvorí v prednastavenom internetovom prehliadači, kde je možná tlač [1]

    ���������������(*����������

    ��$������������#������,�

    • Nástroj na administráciu repository

    • Používa správca repository(repository owner) na tvorbu novej repository(workarea)

    a na vykonávanie všetkých funkcií spomenutých v časti Administrácia repository

    [3]

    • Každý AS má svojho vlastníka(owner)

    • Používa vlastník repository, ktorý má na RAU práva, na definovanie

    použivateľských účtov pre repository a zároveň účty spravuje, určuje, či ide

    o repository manager alebo repository user(prideľuje prístupové práva – skupinové,

    individuálne: admin, select, insert, update, delete, share) [1]

    6����"������������������� ���!�����8!

    Nedošlo k žiadnej zmene vo funkcionalite, spoločnosť orientuje ďalší vývoj na zlepšovanie

    súčasného riešenia. Pravidelne vydáva záplaty, ktorými ošetruje vzniknuté chyby. [5]

    -17-

  • 9�������:��;Jedna z největších světových společností v oblasti softwarové infrastruktury, aplikačního

    software a IT služeb, která se zaměřuje výhradně na správu a přenos informací z datových

    center do míst jejich využití. Systémy společnosti Sybase využívají přední světové společnosti

    v oblastech obchodu, financí, státní správy, zdravotnictví i obrany [7]. Společnost Sybase Inc.

    v České republice zastupuje Sybase Software, s. r. o.

    V ČR jsou významnými zákazníky společnosti: ČSOB Pojišťovna, Česká pošta, Česká správa

    letišť (provozuje na platformě Sybase své klíčové informační systémy od odbavovacího

    systému přes letištní informační systém, internetový portál až po řešení datového skladu),

    Škoda Auto, Středisko cenných papírů.

    ��

  • Dříve byly modelovací nástroje zaměřeny výhradně na datové modelování, dnes je modelování

    podnikových procesů a používání jazyka UML pro tento obor nutností.

    Obrázek č. 4 - Power Designer - Diagram tříd

    Podpora vývoje pro platformu .NET v PowerDesigneru je na velmi dobré úrovni. Diagram tříd

    umí bez problémů převést na zdrojový kód v jazycích C#, C++ a Visual Basic .NET a na

    rozdíl od Visia poskytuje mnoho možností pro generování kódu tak, aby bylo možností .NET

    jazyků využito co nejlépe – např. není problém pracovat s výše zmiňovanými vlastnostmi.

    PowerDesigner zcela korektně jednu vlastnost v .NET jazyku překládá na (všechny 4

    dohromady)

    • privátní atribut třídy

    • veřejný atribut třídy se stereotypem

    • metoda set_Vlastnost(value) : void se stereotypem

    • metoda get_Vlastnost() : value se stereotypem

    Důležitou a často vyzdvihovanou vlastností .NET Frameworku je snadná práce s webovými

    službami. Také PowerDesigner podporuje automatické generování webové služby – umí

    vygenerovat její WSDL popis, zdrojový kód asmx souboru a proxy objekt.

    -19-

  • 37%

    5%33%

    7%

    9%4% 5%

    Finance Telco Partners Public Industry Healthcare Utility

    V průběhu generování může PowerDesigner také automaticky vytvořit projekt pro Visual

    Studio .NET (buďto pro verzi 2002 nebo 2003,

    formáty projektů nejsou zcela kompatibilní). Dále

    nabízí automatickou kompilaci zdrojových souborů,

    takže výstupem modelu bude dokonce spustitelný

    EXE soubor. V průběhu generování je sledována

    syntaktická a základní sémantická správnost modelu a

    generování je ukončeno buďto hláškou o úspěchu,

    varováním nebo chybou, který generování souborů

    stornuje.

    V nabídce je také Reverse Engineering ze zdrojových souborů, který na rozdíl od Visia

    vygenerované třídy rovnou umístí na kreslicí plátno.

    Pro práci např. s jazykem C# existuje mnoho nastavení, např. jak má PowerDesigner

    pojmenovávat getters a setters metody, jaké znaky má povolovat v identifikátorech apod.

    Pěkné rovněž je, že např. v dialogu vlastností třídy je rovnou náhled toho, jaký programový

    kód bude generován. [7]

    Celkově se PowerDesigner ukázal jako dobrý CASE nástroj pro podporu vývoje nad

    platformou .NET.

    -20-

    ()��*�'�!+�����&�����������,-���

    ()��*�'�!+�.�/0��-�1�2��3����������4���5��-6$��789

  • Obrázek č. 7 Pozice PowerDesigneru v oblasti datového modelování dle Gartner Group [8]

    -21-

  • Obrázek č. 9 Zachmanův model, zdroj:

    http://www.zachmanframeworkassociates.com/Standards/protected/framework-graphic-3

    /������-#�"������&��������%������>

    • Technologie Link and Synch – PowerDesigner 15 automaticky a zachycuje průniky

    mezi všemi vrstvami architektury podniku, což umožňuje uživatelům ze všech skupin

    přehledně vizualizovat a účinně zavádět rychlé, spolehlivé a předvídatelné změny.

    • Nový model podnikové architektury – Uživatelé mohou formálně zaznamenávat

    veškerá metadata týkající se analýzy podnikové architektury.

    • Nový diagram analýzy dopadů – Snadná vizualizace kaskádového dopadu změn, řízení

    času i nákladů souvisejících se změnou.

    • Editor podnikové architektury – PowerDesigner 15 poskytuje jak standardní

    metodickou šablonu modelů (metodika FEAF) tak možnost vytvoření vlastní šablony.

    -23-

  • • Nový webový prohlížeč úložiště modelů (Repository Web Viewer) – V nové verzi je

    možné sdílet modely podnikové architektury mezi všechny zainteresované pracovníky

    bez ohledu na jejich softwarové vybavení. Možnost zobrazení metadat pro větší počet

    uživatelů.

    • Nový import z Visio – Dává možnost využít obchodních metadat pro začlenění do

    kompletní podnikové architektury. [9]

    ������Podporu databází zajišťuje DBMS, jde o možnost generování databáze na základě jejího

    fyzického modelu. Power Designer mimo jiné podporuje ANSI SQL, AS/400, DB2, Informix,

    Interbase, Access, MySQL a Postgre (pro uživatele Linuxu), MS SQL Server, Oracle a

    samozřejmě Sybase. [10]

    Je v podstatě jedno, kterým směrem se začne datový model vytvářet, tedy zda od obecného ke

    konkrétnímu (odshora dolů) či naopak od databáze směrem nahoru k obchodním procesům.

    V praxi totiž již nějaké řešení může existovat a je zapotřebí vytvořit pro ně odpovídající

    modely. Po reversu z již vzniklé databáze se vytvoří fyzický model, který obsahuje tabulky,

    relace, uložené procedury a další. Z fyzického modelu konkrétní databáze je následně možné

    vytvořit konceptuální model či model objektů. Z konceptuálního modelu je možné jít opět

    výše (k objektovému) případně zpět k fyzickému pro zvolenou databázi. PowerDesigner při

    tvorbě bohužel nepřepíše uložené procedury, triggery, jen defaultní hodnoty sloupců. Po

    zvolení jazyka, který má následně generovat kód se z konceptuálního modelu musí přejít do

    modelu tříd. Poté dochází k vzájemné synchronizaci mezi objektovým a datovým modelem,

    čímž je udržována konzistence mezi datovou a aplikační vrstvou. [11]

    0������������DataArchitect - datové modelování

    Developer - objektové modelování

    Studio - datové + objektové + modelování business procesů

    Enterprise - repository – práce v týmu

    -24-

  • Standalone x Floating - pevná licence na konkrétní PC x plovoucí licence

    Information Liquidity model - modelování ETL procesů a datových toků

    XML model - modelování dat ve struktuře XML [8]

    -25-

  • ?�0���� ����)������

    Českou firmu Charonware s.r.o., která vyvíjela software CASE STUDIO 2, koupila

    v roce 2006 americká společnost Quest software [13]. Tato společnost působí na

    mezinárodním trhu od roku 1987 se zaměřením na ERP a JAVA EE na Windows platformě.

    Na webových stránkách Charonware sice není implicitně uvedeno, zda pokračuje vývoj CASE

    STUDIO 2 , vzhledem k odsunutí všech odkazů a sekcí týkající se tohoto softwaru na druhé

    místo lze očekávat, že firma se bude soustředit na hlavní produkt mateřské společnosti a to

    Toad Data Modeler.

    @"��������-��$���Na rozdíl od ostatních CASE nástrojů, Toad Data Modeler (dále jen TDM) se podle

    vyjádření výrobce zaměřuje především na tvorbu databází. Koncept vychází ze software

    CASE STUDIO 2. Současná verze programu je 3.4. Beta verze dalšího vydání je rovněž

    k dispozici.

    �*� ��!��$�Jako základní funkcionalitu uvádí výrobce práci s ER diagramy. Software umožňuje

    práci s fyzickým i logickým modelem .

    Fyzický model ERD podporuje tyto databázové systémy [14]:

    • DB2• MS Access• MS SQL Server• MySQL• Oracle• PostgreSQL• Sybase ASE

    -26-

  • Obrázek č. 10 - Základní ER model

    Logický model podporuje tyto specifikace:

    • Dědičnost• Konverze logického modelu do specifického db. systému• Uživatel má možnost nastavit datový typ konverze.

    -27-

  • Obrázek č. 11 - Logický model

    � 3���������A5�"2�#TOAD má implementovanou funkci generování velice detailního SQL (DDL) skriptu.

    Dává možnost vygenerovat pouze vybrané části modelu (domény,tabulky,primární klíče,

    alternativní klíče,indexy,referenční integritu,triggery, procedury, pohledy,role,uživatelská

    práva ), využít verifikaci apod. Umožňuje generovat rovněž nepodporované typy

    referenční integrity pomocí triggerů. V závislosti na vybrané databázi lze vybrat i další

    prvky.

    -28-

  • Obrázek č. 12 - Generování SQL kódu

    *����������'��&�����Software TDM na rozdíl od CASE STUDIO má mnohem lepší podporu zpětného

    vytvoření modelu z existující databáze.

    -29-

  • Obrázek č. 13 - Průvodce reverzním inženýrstvím

    S databází se lze spojit mnoha způsoby (nativní spojení, ODBC atd.)

    -30-

  • Obrázek č. 14 - Průvodce reverzním inženýrstvím

    0��������"#$������Dokumentace vytvořeného projektu může být automaticky exportována do HTML

    nebo RTF.

    -31-

  • Obrázek č. 15 - Vygenerovaný HTML report

    B���-�"���Software umožňuje automatickou kontrolu modelů a vypsání všech možných errorů,

    varování a tipů.

    -32-

  • Obrázek č. 16 - Verifikace modelu

    �#���$�����Nástroj má v sobě zabudovány i mechanizmy na úpravu samotného rozhraní. Lze

    přidávat menu, formuláře, přednastavená schéma apod.

    ������"�����Konverze a úpravy modelu pro konkrétní databázové rozhraní

    6����"�����������?;CZatím poslední verze 3.4 přinesla několik zásadních vylepšení. Především rozšířila

    podporované databáze a s nativním spojením umožňuje spojit se i s nepodporovanou databází.

    To se týká i importu z SQL skriptů. Další novinkou je generování XML reportů s XSLT

    schématy. Přibyla ještě customizace formulářů a funkce undo/redo

    ��'������-�

  • Free verzi je možné používat až do 20.ledna 2010 a má následující omezení:

    • Ukládání modelu, Náhled, Tisk, Export do grafického souboru, Alter Report, Report

    do PDF s vodoznaky, XSL Transformation Report, SQL/DDL generování skriptů a

    Reverse Engineering - všechny tyto funkce jsou dostupné pouze pro modely do

    velikosti 25 entit.

    • Alter Script Generation – tuto funkci free verze vůbec neobsahuje

    ���%$��%���'����"�

    Obrázek - http://www.casestudio.com/enu/requirements.aspx

    5������TDM lze zakoupit přímo z eshopu výrobce. Jedna licence stojí 435 EUR, přičemž

    three-pack, tedy 3 licence stojí 1089 EUR. Enterprise či jiné hromadné licence firma QUEST

    zřejmě nenabízí.

    �����������#����D����������

    ��'��&�����K demonstrování funkčnosti programu v praxi, jsem si vybral proces reverzního

    inženýrství. K testu jsem použil MS Access databázi „Opravna aut“, kterou jsem používal

    -34-

  • v předmětu IT_360 Databáze na VŠE na bakalářském stupni. Takto vypadá databáze

    v relačním modelu v accessu

    Obrázek č. 18 - ER model v MS Access

    Jedná se tedy o komplikovanější strukturu, proto se podíváme jak si TOAD modeller

    sní poradí.Zapneme tedy průvodce pro reverzní inženýrství a zvolíme prostředí MS Access

    Obrázek č. 19 - Průvodce

    V dalším kroku si můžeme vybrat typ spojení (ODBC, Nativní, ADO..). Protože se

    jedna o „offline“ databázi v souboru, vybereme ADO.

    -35-

  • Po té vybereme konkrétní soubor a typ migrátoru vestavěného v TOAD. Zde nám opět nabízí

    pouze jeden.

    Posledním krokem je zaškrtnutí které entit/ tabulek chceme převést, zde dáme všechny.

    Obrázek č. 20 - Výběr entit

    -36-

  • Obrázek č. 21 - Finální obrazovka

    -37-

  • Nyní se můžeme podívat na převedenou databázi:

    Obrázek č. 22 - ER diagram v TOAD

    Obrázek č. 23 - ER diagram v TOAD

    Jak je vidět, všechny vlastnosti entit jsou stejné a zůstali i zachovány relace mezi

    tabulkami, takže jsme dostali správný ER diagram existující databáze.

    -38-

  • Původní databáze obsahovala i SQL dotazy. Které TOAD modeler rovněž převzal.

    Když se nyní podíváme například na definici tabulky „Zařazení zaměstnance“, uvidíme i

    zdrojový kód.

    Obrázek č. 24 - Generovaný kód pro .NET

    Jak je vidět, ten je psán pro prostředí .NET . Zkusíme ho nyní zkonvertovat pro

    ORALCE.

    Po spuštění convert průvodce, si pouze vybereme cílové prostředí a během několika sekund je

    model zkonvertován. Podívejme se na definici tabulky „Zařazení zaměstnance“ nyní:

    -39-

  • Obrázek č. 25 - Konvertovaný kód pro Oracle

    Takže během pár vteřin jsme vlastně „přemigrovali“ databázi z jednoho prostředí do

    druhého.

    To byla jen malá ukázka základních funkcionalit programu TOAD. Velmi mne překvapil svou

    rychlostí a intuitivním ovládáním.

    -40-

  • @�E�

    Autoři ve své práci představili tři významné CASE nástroje, které lze využít při návrhu

    a vytváření databází. Prvním představovaným nástrojem byl Oracle Designer, druhým

    PowerDesigner a třetím nástroj Toad Data Modeler. PowerDesigner je znám jako nástroj s

    širokým spektrem použitelnosti. Zahrnuje komplexní možnosti modelování veškerých objektů,

    procesů a datových toků se všemi aspekty podnikového businessu. Oracle designer vyvíjí

    společnost, která dominuje kvalitou technického řešení v dodavatelské oblasti databázových

    systémů. Ač se tento software profiluje jako komplexní nástroj pro tvorbu celých informačních

    systémů, jeho těžiště spočívá v databázové oblasti. Poslední z popisovaných nástrojů Toad

    Data Modeler je specializovaný přímo na návrh databází. V přehledné tabulce v příloze se

    nachází srovnání všech tří nástrojů.

    Základním požadavkem na databázi od firemních zákazníků je dostatečná robustnost

    řešení, která zajistí maximální možnou míru použitelnosti i v podmínkách velkého nárůstu

    objemu dat (vysoká škálovatelnost). Druhým základním požadavkem je požadavek

    bezpečnosti. Data musí být zajištěna takovým způsobem, s takovou úrovní zabezpečení, která

    jednoznačně garantuje možnost okamžitého obnovení dat ze zálohy v původní struktuře. A co

    nejkratší interval obnovení ostrého provozu po havárii.

    Oblast specializovaných CASE nástrojů speciálně určených pro návrh databází se v

    nejbližší budoucnosti nebude s největší pravděpodobností intezivně rozvíjet. Autoři práce pro

    toto tvrzení identifikovali tři hlavní důvody.

    Prvním důvodem je jednoznačný trend univerzálnosti modelovacích nástrojů. Poptávka

    na trhu je zejména po řešeních, která obsahují vše v jednom. Která integrují jednotlivé funkce

    a nástroje specializovaných modelovacích nástrojů, tak aby umožnily jejich široké použití.

    -41-

  • Druhý důvod představuje omezená množina relevantních požadavků podniků na

    databázová řešení. Jak bylo zmíněno výše, tak podnikoví zákazníci požadují zejména totální

    garanci bezpečnosti a zálohy dat a robustnosti řešení. Výrobci a poskytovatelé CASE řešení

    nemají dostatečný prostor pro inovaci svých produktů, zejména v oblasti funcionality. Novou

    funkcionalitu nemá smysl vyvíjet, když požadavky na databázové systémy se již několik let

    nemění.

    Třetím důvodem je omezený počet možných zákazníků. Uplatnění standardního CASE

    nástroje je v podstatě nezávislé na velikosti firmy, a i malé firmy mohou velmi efektivně

    využívat CASE nástrojů. pokud chtějí provádět optimalizaci podnikových procesů,

    optimalizaci podnikové struktury, či komplexní reingeneering. Tyto činnosti si mohou zajistit

    vlastními zdroji a CASE nástroje mohou představovat velký přínos pro tuto oblast aplikace.

    Zatímco kompletní návrh databáze, zejména s klíčovým ohledem na požadovanou úroveň

    bezpečnosti, si firmy nezajišťují vlastními zdroji, ale svěřují tento úkol do rukou profesionálů

    na databázovém trhu.

    -42-

  • @�����

    1. Prednášky Ekonomickej univerzity v BA, Fakulta hospodárskej informatiky:

    http://www.fhi.sk/files/katedry/kai/SAPPA/Prednasky3_2009.pdf

    2. Rydval Slávek, Kreslítka pro krycím jménem CASE,

    http://www.rydval.cz/phprs/view.php?cisloclanku=2005123135

    3. Beneš Michal, Diplomová práce Přehled OO metodik a notací

    http://objekty.vse.cz/Objekty/MetodikyANotace-NastrojePrehled

    4. Programovanie.sk,Oracle Internet platforma pre e-biznis

    http://programovanie.pc.sk/databazy/clanok.php?ID=276

    5. Oracle.com, Oracle Designer 10g Release 2

    http://www.oracle.com/technology/products/designer/index.html

    6. Borek Bernard, Jan Filip, Lucie Růtová, Jana Smítková. Podpora CASE nástrojů pro

    vývoj. BorBer.com. [Online] 31. srpen 2006. [Citace: 23. listopad 2009.]

    http://www.borber.com/files/IT_572-CASE-nastroje.doc

    7. Radecký, Alexandr. CIO Business world. Sybase PowerDesigner 15. [Online] 11. říjen

    2008. [Citace: 19. listopad 2009.] http://businessworld.cz/produkty-a-sluzby/sybase-

    powerdesigner-15-1574

    8. Profil firmy Sybase. Sybase Software, s.r.o. [Online] 2009. [Citace: 19. listopad 2009.]

    http://www.sybase.cz/index.php?option=com_content&view=article&id=18&mid=8

    9. Stanislav Dvořák, Pavel Sýkora. Obchodní prezentace PowerDesigner. Praha, Česká

    republika/Praha : autor neznámý, 19. březen 2009.

    10. Rydval, Slávek. Sybase Power Designer 9.0. NaWebka. [Online] 3. srpen 2005 . [Citace:

    23. listopad 2009.] http://www.rydval.cz/phprs/view.php?cisloclanku=2005123150

    -43-

  • 11. Pavlíček, Luboš. Přehled některých programů pro modelování. Objetky. [Online] 3. únor

    2008. [Citace: 23. listopad 2009.] http://objekty.vse.cz/Objekty/MetodikyANotace-

    NastrojePrehled

    12. Skřivánek, František. Sybase PowerDesigner 15. Databázový svět. [Online] 13. říjen

    2008. [Citace: 10. prosinec 2009.] http://www.dbsvet.cz/view.php?cisloclanku=2008101301

    13. TDM - Statement of Future Direction

    http://www.casestudio.com/enu/tdm_statement_of_direction.aspx

    14. Oficiální stránky produktu TOAD dostupné z url

    http://www.casestudio.com/enu/products.aspx

    15. Semestrální práce k předmětu CASE Nástroje - „Nástroje pro vývoj aplikací a jejich vazba

    na CASE“, Autoři: Borek Bernard, Jan Filip, Lucie Růtová, Jana Smítková

    ����$�����"�

    �������1. Zachmanův model

    2. Obchodní prezentace PowerDesigner, 19.3.2009

    3. Tabulka srovnávací popisované CASE nástroje.

    -44-