VYSOKÁ ŠKOLA EKONOMICKÁ V PRAZE Fakulta informatiky a statistiky Přehled nástrojů CASE na tuzemském trhu v prvním pololetí roku 2006 Semestrální práce v rámci kurzu IT_572 Petr Žůrek Ondřej Kousal Vasil Griga Aleš Nebřenský
ÚVOD... 3 OBECNĚ O CASE... 4 PRODUKTY KOMERČNÍ NÁSTROJE... 6 ENTERPRISE ARCHITECT... 6 Charakteristika výrobce... 6 Stručná charakteristika produktu... 6 Jaké vlastnosti má EA?... 6 Vybrané novinky verze 5... 9 Vybrané novinky verze 6... 10 Datové modelování v EA... 11 Velká výhoda nasazení nástroje ve firmě - metodiky EFEM... 11 Jak nástroj získat?... 11 Stránky firmy Sparx Systems a demo verze... 11 Školení... 11 SYBASE POWERDESIGNER 12... 12 Úvodní informace... 12 Klíčové a nové vlastnosti... 12 Druhy PowerDesigneru na trhu... 13 Podporované funkcionality... 15 PowerDesigner pro uživatele... 17 Závěr k PowerDesigneru... 18 MICROSOFT VISIO... 20 Charakteristika výrobce... 20 Stručná charakteristika produktu... 20 Co umožňuje Visio 2003?... 20 Interface Visia 2003... 20 Výčet funkcí MS Visio 2003... 21 Zhodnocení VISIO... 23 ALTOVA UMODEL 2006... 24 Charakteristika výrobce... 24 Stručná charakteristika produktu... 24 Klíčové vlastnosti... 24 Další zajímavé vlastnosti... 25 Diagram užití... 25 Diagram tříd... 26 Diagram objektů... 26 Diagram komponent, diagram nasazení... 26 Závěrečné zhodnocení... 27 MAGICDRAW 11.0... 28 Charakteristika výrobce... 28 Stručná charakteristika produktu... 28 Klíčové vlastnosti... 28 Další zajímavosti... 30 Celková charakteristika... 30 JUDE... 32 Úvodní informace... 32 Podporovaná funkcionalita... 32 Prostředí JUDE/Community... 33 ZÁVĚREM... 36 POUŽITÁ LITERATURA A DALŠÍ ZDROJE... 37 2
Úvod Tato seminární práce je pouze jednou ze seriálu prací, které jsou zpracovávány v rámci kurzu IT_572 - Prostředky CASE a jejich využití při tvorbě IS. Tématem je Přehled nástrojů CASE na tuzemském trhu v prvním pololetí roku 2006. Naším úkolem v tomto semestru bylo de facto aktualizovat práce předchozích generací, které se stejným tématem zabývaly již v minulých semestrech. Cílem této práce je tedy pokusit se v ucelené formě nastínit, jaké produkty je možno na tuzemském trhu nalézt, přičemž bychom se rádi detailněji zaměřili na ty nejzajímavější. Konkrétně na produkty komerční od známých výrobců s důrazem na ty, které prodělaly od minulé verze nejvíce změn. 3
Obecně o CASE Od dob, kdy se začínaly vyvíjet první softwarové aplikace, na ně bylo kladeno stále více požadavků typu: zvýšení spolehlivosti a rychlosti. Aplikace byly ale postupem času stále více robustnější a komplexnější, což vyvolalo potřebu automatizovaných nástrojů, které by zjednodušily fáze analýzy a návrhu těchto aplikací. S tímto souvisí i vznik disciplíny softwarového inženýrství, jakožto počítačové vědy zabývající se vývojem velkých aplikací. To zahrnuje nejen technické aspekty vytváření softwarových systémů, ale i aspekty řízení, ekonomické aspekty a aspekty kvality. Softwarové inženýrství představuje systematický a kvantifikovaný přístup k vývoji, provozování a údržbě software. Cílem této disciplíny je vytvářet takzvaně užitečný software, což znamená takový software, který je dodán v termínu, pracuje bez chyb, je za stanovenou cenu a odpovídá požadavkům uživatelů. Řada softwarových projektů se v minulosti nesetkala s přílišným úspěchem, neboť výsledkem byl často špatně navržený, špatně nebo málo dokumentovaný, cenově neodpovídající a uživatelsky nepřívětivý software. Právě proto se softwarové inženýrství snaží tyto neúspěchy eliminovat. Běžně je dnes možné se s inženýrskými postupy setkat ve stavebnictví, strojírenství nebo v elektrotechnice. Teprve v posledních letech se však začínají objevovat i při vývoji softwaru a to zejména díky masovému vývoji aplikací, kdy jsou uplatňovány standardizované postupy. Nástroje dnes neodmyslitelně spojené se softwarovým inženýrstvím, které podporují vývoj software se souhrnně označují termínem CASE. Zkratka CASE znamená: Computer-Aided Software Engineering, i když v řadě případů je interpretována jako Computer-Aided System Engineering. To je podpořeno hlavně tím, že nástroje typu CASE přesahují svým působením návrh programového vybavení a představují prostředek pro návrh informačního systému. CASE bývá často definován jako: podpora procesu vývoje software, která je založena na využití počítačových prostředků, jejímž cílem je celkově zefektivnit celý proces vývoje software. Nástroje CASE jsou pak definovány jako: sada softwarových nástrojů podporujících určité fáze vývoje informačního systému. Zkratka CASE vznikla na počátku osmdesátých let, kdy došlo ke shodě, že grafické prostředky pro znázornění datové základny, ve smyslu dat a jejich relací, a procesů zpracování dat se stanou významnou pomůckou při analýzách a návrzích informačních systémů. Od té doby začaly vznikat nejrůznější podpůrné nástroje nejen pro grafický návrh, ale i s možností vytvoření databáze o projektu, která obsahuje podrobnosti o datových prvcích a informačních procesech. CASE nástroje jsou dnes nabízeny v několika variantách, podle toho, jak podporují jednotlivé fáze při analýze a návrhu informačního systému. Dnes většina CASE nástrojů představuje velké aplikace, které je možno využít ve všech fázích procesu vývoje software. U většiny nástrojů je jádrem univerzální modelovací jazyk UML (Unified Modeling Language). Postupně se zde objevuje funkcionalita, která podporuje UML verzi 2.0. Pokud se podíváme na CASE nástroj, první co uvidíme, je grafické rozhraní. Zde je možno modeloval nejrůznější typy diagramů. Uveďme alespoň ty nejběžnější: DFD diagramy, které dovolují provádět funkční analýzu; Class diagramy pro modelování tříd; STD diagramy; procesní diagramy a další. Právě podpora používání těchto nástrojů byla jedním z podnětů pro ke vzniku prostředků CASE. Hlavním důvodem byla častá aktualizace diagramů, kterou, při vyšší složitosti diagramů, nebylo možné provádět jen tak v ruce. 4
Při používání CASE nástrojů při podpoře návrhu a vývoje softwarové aplikace či informačního systému je potřeba dodržovat určitá pravidla a postupy, které zaručí smysluplnost a efektivitu. Jedná se o metodiky, jakožto souhrny postupů a metod, které určují co, kdo a kdy se má řešit. Podpora metodiky prostředkem CASE vyžaduje především, aby tento prostředek pokrýval všechny fáze životního cyklu projektu. Tyto prostředky se pak nazývají jako integrovaná prostředí pro vývoj aplikací. Přičemž jejich hlavní charakteristikou je pevná svázanost s konkrétní metodikou. Takovéto nástroje mají pak výhodu integrity všech metod, technik a nástrojů v kontextu celého životního cyklu projektu. Další skupinou jsou pak prostředky označované jako běžné nástroje (tools), které podporují pouze některé metody a techniky z životního cyklu projektu. Od integrovaných prostředí se pak liší nezávislostí na konkrétní metodice. Z úvodu práce již vyplývá několik skutečností proč je výhodné používání CASE nástrojů pro podporu návrhu a vývoje softwaru. Tím nejviditelnějším je urychlení a zpřehlednění práce s nejrůznějšími diagramy a tím dosažení vyšší produktivity práce. Grafické rozhraní dovoluje vytvářet přehledné modely, na kterých je možno odladit vzniklé chyby dříve než se dostanou do vyvíjené aplikace či informačního systému. Tím je možno ušetřit na nákladech za jejich opravování. Spolu s návrhem aplikace vzniká i dokumentace, kterou je možno z modelů generovat a zlepšit tak další vývoj. Samozřejmě obrovským přínosem je podpora práce několika vývojářů respektive návrhářů na projektu současně. Co se týče nevýhod nebo lépe řečeno možných úskalí při používání CASE nástrojů, je nutno zmínit jejich vysokou cenu. Řada firem při návrhu a vývoji aplikací nepoužívá známé kvalitní CASE nástroje právě z důvodu vysokých pořizovacích cen jejich licencí. Tato práce bude zaměřena právě na tyto leadery na tuzemském trhu s CASE. Jen pro informaci je u každého uvedena cena za licence, která je často velmi vysoká. Dalším úskalím bývá často nedostatečné zkušenosti uživatelů s nástroji. Pro správné používání je nutné si v první řadě osvojit celou řadu technik, které jsou závislé na konkrétním typu nástroje. 5
Produkty Komerční nástroje Enterprise Architect Verze: 6.1.790 (ze dne 30.4.2006) Výrobce: Sparx Systems Distributor ČR: HTK Pro s.r.o. Cena a druhy licencí: Enterprise Architekt Desktop Edition 3856,- Kč s DPH (3403,- Kč; 3118,- Kč)* Enterprise Architekt Professional Edition - 5641,- Kč s DPH (5355,- Kč; 5069,- Kč)* Enterprise Architekt Corporate Edition - 6771,- Kč s DPH (6212,- Kč; 5641,- Kč)* *v závorce uvedeny dvě ceny, první za 5 19 licencí a druhá za 20 100 licencí, mj. pokud jste si už nástroj jednou zakoupili, jsou nabízeny za výhodné ceny obnovy licencí Charakteristika výrobce Sparx Systems je australská společnost, která se zaměřuje na vývoj a podporu softwarových produktů, objektově orientované metodologie a CASE nástroje. Hlavním nástrojem, který nabízí, je Enterprise Architect - komplexní nástroj pro modelování a návrh použitelný v celém životním cyklu vývoje softwaru. Stručná charakteristika produktu Enterprise Architect je CASE nástroj pro modelování pomocí UML, určený pro analytiky, návrháře, architekty, vývojáře, testery, projektové manažery a pracovníky podpory. Jeho hlavní výhodou na tuzemském trhu je jeho poměr cena/výkon, díky němuž si našel velkou základnu uživatelů mezi známými IT společnostmi. Jaké vlastnosti má EA? Současná verze EA podporuje 13 modelů definovaných v UML 2.0 1) Strukturní diagramy Diagramy balíčků (Package diagrams) Se používají na rozdělení modelu na logické kontejnery neboli balíčky a popisují vztahy mezi nimi (na vyšší úrovni abstrakce). 6
Diagramy tříd (Class diagrams) Diagram tříd zachycuje všechny třídy objektů, které se týkají modelovaného systému (tj. celou oblast zájmu řešení) a vztahy mezi těmito třídami. Objektové diagramy (Object diagrams) Objekty jsou instance tříd. Objekty jsou propojeny linky. Název konkrétního objektu se zapisuje před název třídy a odděluje se dvojtečkou. Composite Structure diagramy Nový typ diagramu. Zachycuje vnitřní strukturu (zúčastněné elementy a jejich vztahy) daného klasifikátoru (třída, use case, collaboration, aktivita, ). Jedná se o runtime strukturu. Diagramy komponent (Component diagram) V UML 2.0 již není pro komponentu samostatné značka. Předpokládá se použití obdélníku jako pro třídu, který má původní značku umístěnou jako ikonu v pravém horním rohu. Je možné pracovat s porty a nabízeným a poskytovaným rozhraním. Samotný pojem komponenta nezahrnuje fyzické prvky systému (DLL, zdrojové soubory, ) jako tomu bylo v prvních verzích UML. Diagramy nasazení (Deployment diagram) Diagram nasazení ukazuje rozmístění zdrojů (např. HW) a softwarové komponenty, procesy a objekty, které na nich žijí. 2) Behaviorální diagramy (diagramy chování) Use Case diagramy (Use case diagrams) Use case diagram popisuje chování systému z pohledu uživatele. Zachycuje tedy uživatelovy požadavky na systém. Myšlenkou je zapojit uživatele do počátečních fází analýzy a návrhu systému. Zvyšuje to pravděpodobnost, že systém nakonec bude skutečně prospěšný pro ty lidi, pro které prospěšný být má. 7
Diagramy aktivit (Activity diagrams) Jazyk UML nemá přímou podporu pro modelování firemních procesů. Žádný speciální diagram pro tuto problematiku neobsahuje. EA nabízí zjednodušený diagram aktivit pro BPM. Tento diagram je nejvolnější ze všech, které EA nabízí. Analytikovi nechává plnou volnost ve využití jednotlivých elementů a nesvazuje tvorbu diagramu dodatečnými pravidly. Diagram aktivit představuje sekvenční popis činností tak, jak postupně probíhají v systému. Vzniká rozšířením stavového diagramu. Diagram činností zachycuje především činnosti znázorněné ve stavovém diagramu. Stavové diagramy (State chart diagrams) Zachycuje stavy objektu, kterými může projít v průběhu svého životního cyklu v systému. Ke změně stavu může dojít konkrétní událostí nebo i pouhým plynutím času. Každý objekt má svůj počáteční stav a může mít konečný stav (pokud se nebude jednat o perpetum mobile). Komunikační diagramy Zobrazují síť a sekvenci zpráv (nebo jiné formy komunikace) mezi objekty. Tento diagram se v UML 1.x nazýval kolaborační diagram. Důvodem ke změně je to, že pojem Collaboration se používá pro jiný význam. 8
Sekvenční diagramy (Sequence diagrams) Zachycuje časovou sekvenci interakce mezi objekty tříd, ke které dochází při komunikaci (předávání činnosti) v systému. Časové diagramy (Timing diagrams) Jedná se opět o diagram nově zavedený. Je určen především pro systémy reálného času a zaznamenává časová omezení spojená se změnou stavu jednotlivých objektů. Interaction overview diagrams Tento diagram je nově zaveden. Spojuje vlastnosti diagramu aktivit a sekvenčního diagramu. Je možné jej chápat tak, že jednotlivé aktivity v diagramu aktivit jsou zaznamenány pomocí sekvenčního diagramu. Kromě toho: Podporuje řízení v týmové práci (eviduje výstupy z projektu, úkoly v projektu apod.) Přiřazuje resource k prvkům modelu Provádí dokumentaci výstup generovaný v RTF formátu Nabízí výstup modelů v XMI (XMI 1.1) pro kompatibilitu s jinými nástroji (i když v této souvislosti bych chtěl upozornit, že ačkoli XMI je nádherná idea, je protichůdná cílům společností, které produkují CASE nástroje, protože tyto společnosti nechtějí, aby se jejich modely daly otevřít v jakémkoli jiném, tedy konkurenčním nástroji, a proto bývá podpora XMI problémová a kompatibilita ne úplně stoprocentní) Zpřístupňuje model pomocí ActiveX interface Generuje kód a provádí tzv. reverse engineering do kódu C++, Java, C#, VB.Net, Delphi a Visual Basic. Vybrané novinky verze 5 Editor šablon a generátor reportů Od verze 5.0 došlo ke značnému zlepšení v generování RTF dokumentů u Corporate a Professional edicí. Generování RTF dokumentu používá editor šablon, který umožňuje uživateli přizpůsobit si vzhled a obsah svého dokumentu, až na úroveň jednotlivých elementů modelu. 9
Zlepšení kontrol verzí Kontrola verzí teď obsahuje kontrolu větví balíčků, které již nejsou přepsány importováním rodičovských verzí. Doba nahrávání velkých souborů byla zredukována a byla zlepšena podpora AccuRev a Perforace. Baseline Edice Corporate má novou funkci, která umožňuje ukládat kompletní větve balíčků jako zkomprimovaný XMI soubor v rámci používaného modelu. Funkce baseline umožňuje uživateli provádět srovnání těchto uložených balíčků a balíčků, na kterých právě pracujete. MDA Model Driven Architecture Model Driven Architecture (MDA) je framework pro vývoj software, který využívá systémové modelovací jazyky. Cílem MDA je zlepšení přenosnosti oddělením systémové architektury a architektury platform. Hlavními komponentami MDA technologie je model nezávislé platformy (Platform Independent Model) a model specifické platformy (Platform Specific Model). Model nezávislé platformy popisuje strukturu a funkce systému, ale pomíjí specifika implementace. MDA umožňuje definovat šablony, které mapují transformace mezi modelem nezávislé platformy a modelem specifické platformy. Toto ulehčuje vývoj systému díky abstrakci a zjednodušuje implementaci na různorodé platformy. Srovnávací utilita (Diff) Opět jen v edici Professional a Corporate. Umožňuje srovnávat strukturu modelu (větve balíčku) s uloženým XMI. Import binárních modulů Umožňuje reverse engineering Java archívů (.jar), souborů.net PE (.exe,.dll) a binárních modulů překladače (.il). Vybrané novinky verze 6 Build an Run, vše v IDE prostředí EA Poskytuje vývojářům nástroje pro integraci UML a zdrojového kódu a jeho kompilaci. S možností generovat testovací třídy ze zdrojových tříd pomocí MDA transformací a integrovat celý testovací proces do IDE Enterprise Architektu, je teď možné zahrnout UML a modelování do jednoho procesu (build/test/execute/deploy). Meta Object Facility (MOF) Od verze 6.0 přibyla podpora exportování balíčků do XMI na standardech MOF 1.3 a MOF 1.4. Modely MOF jsou vytvářeny přiřazením metamodelu k balíčku. Diskusní fórum projektu Diskuze o pokroku na diskusním fóru projektu může přispět k udržení aktuálnosti celého vývoje. Různé aspekty projektu mohou být rozděleny do kategorií a témat. Uživatelé mohou zakládat témata nebo reagovat na příspěvky ostatních v daném tématu. V těle příspěvku je možné se přímo odkazovat na různé elementy diagramu. Diskusní fóra ostatních modelů jsou též k dispozici přímo z modelu, na kterém zrovna pracujete. 10
Webové služby (WSDL) Od verze 6.0 je podporován Forward a Reverse engineering webových služeb WSDL (W3C Web Service Definition Language). Enterprise Architekt umožňuje modelovat, generovat a importovat WSDL soubory. XML schéma (XSD) Podpora Forward a Reverse engineeringu (modelování, generování, import) W3C XML schémat (XSD). Datové modelování v EA EA je nástroj orientovaný čistě na UML. Tento jazyk v sobě nemá zabudovanou podporu datového modelování. Nicméně je možné využít principu rozšiřování Extensions Mechanism. Tento mechanismus definuje tzv. Stereotypy, které představují nový význam existujících elementů jazyků UML. Pro datové modelování je vytvořeno UML Extension for data modeling, které definuje stereotypy Table, Column atd. (více viz specifikace UML a nápověda k EA). EA má v okně toolbox, ve skupině elementů Structure mimo jiné i element Class se stereotypem Table, pomocí kterého lze vytvářet datové modely. Velká výhoda nasazení nástroje ve firmě - metodiky EFEM EA je dodáván s EFEM, což je souhrn metodických dokumentů pro nasazení modelovacích technik UML ve firmě. K tomuto produktu EFEM jsou dodávány postupky, které umožňují jednoduché nasazení EA ve firmě i s efektivními a kvalitními postupy v projektu tvorby IS. Jak nástroj získat? Produkt můžete zakoupit v ČR přímo od autorizovaného prodejce HTK Pro s.r.o. na stránkách www.devshop.cz. Stránky firmy Sparx Systems a demo verze Firma Sparx Systems uvolnila 30-denní demo verzi, kterou si můžete stáhnout z její download stránky. Na stránky firmy Sparx Systems se dostanete www.sparxsystems.com.au. Školení Firmy Unicorn a Object Consulting nabízí analytikům, softwarovým architektům, vývojářům a obecně všem, kdo chtějí využít Enterprise Architect pro objektově orientovanou analýzu a návrh kurzy školení. Kurzů je po ČR samozřejmě více. 11
SyBase PowerDesigner 12 Verze: 12 Výrobce: Sybase, Inc (www.sybase.com) Distributor ČR: Sybase Software s.r.o (www.sybase.cz) Tychonova 2, 160 00 Lokalizace ČR: NE Demoverze: ANO Cena licence: cca. 30tis Kč Podpora: tři placené plány technické podpory, které zahrnují vedle možnosti telefonického řešení případných problémů telefonicky také přístup přes web a poskytování aktualizovaných verzí jednotlivých produktů. Úvodní informace Společnost Sybase uvedla na trh novou verzi produktu PowerDesigner 12.0, všestranného nástroje pro modelování a design (navrhování), určeného pro společnosti, které potřebují rychle, cenově efektivně a konzistentně vytvořit nebo přepracovat své obchodní aplikace. Společnost Gartner označila PowerDesigner od společnosti Sybase za světovou jedničku na trhu CASE nástrojů pro vývoj databází v roce 2004, a to na základě obratu z prodeje nových licencí. Tento obrat dosáhl 33,7 procentního podílu na celkovém objemu trhu. PowerDesigner je první CASE nástroj který komplexně pokrývá všechny aspekty rozvoje podniku. Obsahuje nástroje pro obchodně orientovanou procesní analýzu, která umožní identifikovat klíčová místa a funkce podniku jako takového a nabízí také plně integrované prostředí pro datovou a objektovou analýzu informačních systémů. Přitom plně podporuje zavedené přístupy a metodologie jako je Unified Modeling Language (UML) nebo dvouúrovňový návrh databáze. Klíčové a nové vlastnosti Mezi klíčové vlastnosti PowerDesigneru patří: Model podnikových procesů: skutečné modelování podniku pro netechnické uživatele Entitně relační modelování dle průmyslových standardů (konceptuální a fyzický datový model) Datové modelování s podporou datových skladů (hvězdicové a vločkové schéma, multidimenzionální modelování a mapování datových zdrojů) Standardní UML diagramy - plná podpora UML pro analýzu, návrh a implementaci systému Generuje zdrojový kód z diagramu tříd pro vývojová prostředí jako Java, PowerBuilder, C++, C#, Visual Basic, XML a WSDL a další Generuje DDL pro více jak 40 databázových platforem Podpora více architektura včetně Java 2 Enterprise Edition (J2EE) - Enterprise Java Beans (EJB), Java Server Pages (JSP) a Servlety, platformy.net a Web Services (webové služby) Objektově relační mapování 12
Definice komplexních uživatelských datových typů včetně Java tříd a Java uložených procedur umístěných v databázi Zpětná analýza databáze do fyzického a konceptuálního datového modelu a synchronizace modelů s běžícími databázemi Zpětná analýza existující obchodní logiky do diagramu tříd (Java, PowerBuilder, CORBA/IDL a XML) Integrace s populárními Java IDE a vedoucími J2EE 1.3/EJB 2.0 certifikovanými aplikačními servery. Podpora vývoje XML (DTD, Schema, BizTalk, O/R mapování pro databáze) Vedoucí upravitelné grafické uživatelské rozhraní společné pro všechny modely s objektovým průzkumníkem, editačním, chybovým a stavovým oknem. Vylepšená globální správa modelů, včetně synchronizace objektů, modelů a databází a aplikací Rozšířené, modelově nezávislé dokumentační mechanismy s podporou globální dokumentace pro všechny modely Nové vlastnosti, které byly představeny ve verzi 12 jsou: Zdokonalená integrace datového a procesního modelovaní PowerDesigner 12.0 automaticky vede k uplatňování standardů a ověřených postupů, které zaručují kompatibilitu systému jakožto celku Lze plně uzpůsobit firemní architektuře a vyhovět tak různým obchodním či zákaznickým požadavkům. Rozšířené uživatelské rozhraní lze přizpůsobit tak, aby se usnadnila práce nového uživatele a neomezily se možnosti uživatelů pokročilých. Nové, přehledné uživatelské rozhraní pro mapování metadat usnadňuje komplexní transformace dat mezi databázovými zdroji, XML nebo objekty. Obsahuje výkonnější generátor výstupních sestav, včetně nových nástrojů pro jejich návrh a zdokonalení výstupů ve formátech RTF a HTML. Podpora nejnovějších standardů včetně UML 2.0, BPMN a nejnovějších verzí RDBMS. Rozšířené možnosti pro snazší a intuitivnější import existujících modelů ze starších nástrojů pro modelování. Druhy PowerDesigneru na trhu PhysicalArchitect PhysicalArchitect je základní variantou PowerDesigneru která obsahuje pouze podporu fyzického datového modelu. PhysicalArchitect je určen především databázovým administrátorům kteří nepotřebují konceptuální a objektové modely ale potěší je možnost zpětné analýzy a dokumentace jimi stravované databáze. DataArchitect PowerDesigner DataArchitect je ideálním nástrojem pro datového analytika. Nepřekonatelný přístup dvouúrovňového datového modelování dává analytikovi možnost soustředit se na vlastní obchodní data systému a oprostit se od implementačních úprav databáze a přitom vyvíjet databázová schéma přímo na míru cílových databází. 13
Developer Pro programátora a návrháře aplikace je určen PowerDesigner Developer. PowerDesigner v této variantě zpřístupňuje ve fyzickém datovém modelu databázové schéma výsledné aplikace a umožňuje pomocí diagramů objektového modelu (Use Case, Sequence, Class, Aktivity, Component) navrhovat příslušnou aplikační logiku systému. ObjectArchitect ObjectArchitect tvoří kompletní sada modulů pro vývoj aplikací. Plně podporuje návrh obou stran informačního systému. Nabízí jak dvouúrovňovou datovou analýzu, tak i návrh aplikace v objektovém modelu. Business Process Architekt PowerDesigner Business Process Architect umožňuje obchodním (ne-it) analytikům zachytit procesy v organizaci a předat je IT oddělení k jejich IT analýze a převedení do vyvíjených systémů. Vedle zajištění shody obchodního zadání s vyvíjenou aplikací lze Business Process Architect použít také k popisu obecných procesů v podniku, jejich optimalizaci a pro podporu business process reengineeringu. Studio PowerDesigner Studio tvoří univerzální prostředí, které pokrývá veškeré požadavky na modelování a návrh informačního systému. Vedle nástrojů pro detailní návrh informačního systému (konceptuální, fyzický datový a objektový model) obsahuje i model podnikových procesů, který umožňuje analyzovat a modelovat chování celého podniku. Viewer PowerDesigner Viewer je určen nikoliv samotným analytikům, ale ostatním uživatelům výsledků jejich práce. PowerDesigner Viewer umožňuje prohlížení všech typů modelů vytvořených v PowerDesigneru a projektoví manažeři pomocí něho mohou sledovat postup práce na systému. Enterprise Option Ke každé z výše uvedených variant PowerDesigneru existuje její mutace s podporou centrálního úložiště projektu (repository), která podporuje verzování a řízení práce týmu analytiků. Power Designer PhysicalArchitect Fyzický datový model Konceptuální datový model x Objektový model Model podnikových procesů PhysicalArchitect Enterprise x x DataArchitect x x DataArchitect Enterprise x x x Developer x x Developer Enterprise x x x ObjectArchitect x x x ObjectArchitect Enterprise x x x x Business Architekt Business Process Process Architect Enterprise x x x Repository 14
Studio Personál x x x x Studio Enterprise x x x x x Pouze pro Pouze pro Pouze pro Viewer Pouze pro čtení Pouze pro čtení čtení čtení čtení Tabulka Dostupnost modulu v jednotlivých edicích Sybase PowerDesigner Podporované funkcionality Modelování podnikových procesů Model podnikových procesů poskytuje efektivní nástroj pro analýzu fungování podniku, který není zatížen odkazem informačních technologií. Model podnikových procesů je v PowerDesigneru zaměřen na obchodní analytiky a manažery. Tedy na pracovníky, kteří se velmi dobře orientují v problematice daného podniku, ale slovník programátorů je jim cizí. PowerDesigner nabízí manažerům a obchodním analytikům snadno uchopitelné prostředí, ve kterém mohou jednoduše modelovat lepší fungování podniku případně i zdokumentovat stávající stav. Model podnikových procesů lze pak použít pro tvorbu vnitropodnikových předpisů a norem nebo přímo jako zadání pro vývojáře aplikací. Navíc lze tento procesní model použít pro konfiguraci produktů pro vnitropodnikovou integraci aplikací (EAI) a pro systémy pro automatickou komunikaci s obchodními partnery (B2B). Datové modelování PowerDesigner těží za své bohaté tradice nejefektivnějšího nástroje pro návrh databází. Tvorba databázových schémat je založena na plnohodnotné koncepci dvouúrovňového návrhu schématu databáze. PowerDesigner umožňuje pomocí konceptuálního datového modelu (CDM) návrh abstraktních datových struktur (Entit) a vztahů mezi nimi v ER diagramech - to vše pomocí osvědčených metod. Konceptuální datový model tak představuje platformově nezávislé datové schéma projektovaného systému které je oproštěno od všech implementačních úprav. Datový analytik se tak může soustředit přímo na vlastní obchodní data systému a nikoliv na způsob jejich uložení v konkrétním databázovém serveru. Fyzický datový model (PDM) tvoří v PowerDesigneru druhou složkou datového modelování. Fyzický datový model je na rozdíl od konceptuálního modelu již určen pro konkrétní databázový server, kterých PowerDesigner podporuje více jak 35. Právě v tomto modelu má datový analytik možnost navrhovat indexy, provádět denormalizaci či specifikovat další speciální nastavení pro cílovou databázovou platformu. PowerDesigner tak umožňuje optimalizovat výsledné databázové schéma konkrétní databázi a přitom zajisti aby výsledná aplikace podporovala více databázových platforem. PowerDesigner umožňuje snadný přechod mezi obecným, platformově nezávislým, konceptuálním modelem a fyzickým datovým modelem optimalizovaným pro konkrétní databázi. Při generování fyzického modelu provede PowerDesigner překlady datových typů, M:N relací, klíčů a dalších součástí modelu do jejich ekvivalentů v cílové databázové platformě. PowerDesigner také podporuje zpětnou konsolidaci fyzického do konceptuálního datového modelu a umožňuje jednoduše porovnávat jednotlivé modely mezi sebou a tak udržovat a vyvíjet aplikace podporující více databázových serverů. Posledním doplňkem datového modelování v PowerDesigneru je podpora datových skladů. Všechny edice PowerDesigneru umožňují v rámci fyzického datového modelu vytvářet i multidimenzionální datové modely a pracovat s hvězdicovými a vločkovými schématy. 15
PowerDesigner také umožňuje provádět mapování mezi zdrojovými a cílovými databázovými objekty a tak vytvářet dokumentaci pro nasazení a konfiguraci nástrojů pro extrakci, transformaci a plnění datových skladů. Objektové modelování Podpora objektového modelování v PowerDesigneru je založena na osvědčené metodologii Unified Modeling Languge (UML). Diagramy uživatelských scénářů (Use Case) dostupné v rámci objektového modelu systému umožňují specifikovat požadované chování aplikace na nejvyšší úrovni abstrakce. Pomocí sekvenčních diagramů a diagramů aktivit pak aplikační analytik může identifikovat obchodní objekty v aplikaci a funkce, které mají vykonávat. Výsledkem těchto diagramů je sada tříd včetně identifikace jejich atributů a metod. Jádrem objektového modelu v PowerDesigneru je samotný diagram tříd. V tomto diagramu lze definovat závislosti a další vztahy mezi jednotlivými třídami obdobně jako v případě konceptuálního nebo fyzického datového modelu. PowerDesigner samozřejmě umožňuje synchronizaci tohoto klíčového diagramu objektového modelu systému s datovými modely a tak udržovat konzistenci mezi datovou a aplikační stránkou vyvíjeného systému. Diagram tříd je tedy obdobou fyzického datového modelu pro aplikační stránku systému a stejně jako fyzický datový model umožňuje diagram tříd generování zdrojového kódu a zpětnou analýzu aplikací (hierarchií objektů, analýzu jejich funkcí a atributů) pro celou řadu objektových platforem jako jsou prostředí PowerBuilder, Java, C++, C#, XML, WSDL, CORBA nebo VisualBasic. Repository Pří vývoji rozsáhlejšího informačního systému obvykle pracuje na jeho návrhu celý tým analytiků. Pro koordinaci a zvýšení efektivity jejich práce slouží v PowerDesigneru modul MetaWorks který slouží jako společné úložiště (repository) modelů projektu pro všechny členy vývojového týmu. MetaWorks umožňuje vedoucímu projektu přiřazovat jednotlivým členům vývojového týmu přístupová práva k jednotlivým modelům - součástem projektu - uloženým v PowerDesigner repository v SQL databázi. Pro potřeby repository je k produktu PowerDesigner přiložena omezená licence databáze Adaptive Server Anywhere a lze použít libovolnou databázi s ODBC rozhraním. Vedle řízení přístupu k jednotlivým součástem projektu plní PowerDesigner repository ještě důležitou funkci verzování modelů. Repository automaticky sleduje vývoj každého jednotlivého modelu v čase a uchovává jeho předchozí varianty. V okamžiku kdy dojde například k objevení nové chyby v současné verzi aplikace, lze porovnat její model s modelem dřívější, bezchybné aplikace a tak identifikovat příčiny zjištěné chyby. Verzování modelů, které v PowerDesigneru umožňuje i větvení vývoje, má v sobě zakomponován také mechanismus zamykání jednotlivých částí modelu se kterými pracují ostatní členové vývojového týmu a tak zabraňuje situaci, kdy s jedním modelem navrhované aplikace pracují dva analytici, kteří si navzájem přepisují svoji práci. Java 2 Enterprise Edition PowerDesigner přináší novou dimenzi do vývoje distribuovaných Java aplikací podle normy Java 2 Enterprise Edition. Díky těsné vazbě mezi datovým a objektovým modelem umožňuje PowerDesigner specifikovat i objektově relační mapování - vazbu mezi tabulkami ve fyzickém datovém modelu a třídami v diagramu tříd v objektovém modelu. Toto objektově relační mapování lze následně využít pro automatickou konfiguraci kontejnerem řízené 16
perzistence (Container Managed Persistence, CMP) Entity Enterprise Java Bean komponent v J2EE 1.3 kompatibilních aplikačních serverech. Vedle kontejnerové perzistence umožňuje PowerDesigner také modelovat Enterprise Java Bean komponenty jako takové. PowerDesigner dokáže korektně vytvořit všechny součásti EJB komponenty - od home, remote a local rozhraní, přes bean třídu až k deployment deskriptorům - a obsahuje mechanismy pro udržení konzistence výchozího modelu tříd a dalších objektových diagramů s diagramem komponent. Porovnávání modelů Jádro návrhu informačního systému v PowerDesigneru spočívá v konceptuálním a fyzickém datovém modelu a diagramu tříd z objektového modelu aplikace. PowerDesigner zajišťuje konzistenci všech součástí vyvíjené aplikace (modelů) pomocí pokročilé možnosti porovnávání a slučování jednotlivých modelů. Možnost porovnat datový a objektový model mezi sebou dává analytikům do ruky silný nástroj pomocí kterého mohou identifikovat provedené změny v jedné součásti vyvíjeného systému, například v datovém modelu, a implementovat je odpovídajícím způsobem do modelu objektového. Tím PowerDesigner zajistí aby navrhovaná aplikace odpovídala své databázi. Generování a zpětná analýza aplikací a databází V rámci fyzického datového modelu a diagramu tříd v objektovém modelu umožňuje PowerDesigner generování základů navrhované aplikace. Z fyzického datového modelu lze získat Data Definition Language (DDL) skripty pro vytvoření všech tabulek, pohledů, indexů, uživatelských datových typů, triggerů a dalších součástí schéma databáze navrhovaného systému. A to vždy přesně podle možností cílového databázového serveru kterých PowerDesigner podporuje více jak 35 nejrůznějších verzí všech rozšířených dodavatelů. Obdobně i objektový model, respektive jeho diagram tříd - PowerDesigner podporuje generování zdrojového kódu pro mnoho objektově orientovaných vývojových prostředí včetně jazyka Java, PowerBuilder, C++, C#, VisualBasic nebo komponentového modelu CORBA (IDL soubory). PowerDesigner také umožňuje vytvářet i schéma a definice XML dokumentů k danému objektovému modelu a tak umožnit hladké zapojení navrhované aplikace do ecommerce systémů. Vedle samotného generování databázových skriptů a zdrojového kódu aplikace dokáže PowerDesigner provádět i zpětnou analýzu (reverse engeneering) databází a aplikací.powerdesigner se může připojit pomocí ODBC rozhraní na existující databázi nebo přečíst její DDL skripty a vytvořit odpovídající fyzický datový model - včetně tabulek, indexů, referenční integrity a dalších součástí databázového schéma. Tuto vlastnost PowerDesigneru spolu s možností generování dokumentace a porovnáváním modelů obzvláště ocení databázoví administrátoři protože v PowerDesigneru naleznou nedocenitelný nástroj pro sledování a dokumentaci změn ve spravované databázi. PowerDesigner pro uživatele PowerDesigner pro CxO a obchodní analytiky PowerDesigner boří stereotyp těžkopádných aplikací pro návrh a modelování systémů, které byly přístupné pouze lidem s vysokou odborností v oblasti softwérového inženýrství. Model obchodních procesů v PowerDesigneru byl navržen právě s důrazem na jeho snadné používání tak, aby jej mohli využít i obchodní manažeři a analytici. Tito odborníci mohou v prostředí PowerDesigneru navrhnout a zdokumentovat lepší a efektivnější způsoby fungování 17
podniku a předat vytvořené modely podnikových procesů k jejich převedení do jednotlivých informačních systémů. PowerDesigner pro IT manažery PowerDesigner pomůže vedoucím projektů informačních systémů efektivně řídit jejich vývoj i v rámci velmi rozsáhlých týmů analytiků. Jednotné prostředí pro návrh aplikace a databáze spolu s podporou týmové práce a centrálním úložištěm modelů (repository) s podporou verzování zlepší komunikaci a sdílení vědomostí mezi jednotlivými vývojáři a tak přispěje k úspěchu projektu. Vedoucí vývojového týmu také jistě ocení snadnou tvorbu dokumentace ve standardním RichText či HTML formátu kterou lze jednoduše publikovat pro kontrolu a další schvalovací procesy. PowerDesigner pro datové analytiky Konceptuální datový model je ideální nástroj pro vysokoúrovňový návrh databáze. Poskytuje datovému analytiku dostatečný nadhled a oprošťuje jej od specifik a omezení konkrétní databázové platformy. Fyzický datový model pak poskytne možnost vyladit návrh z konceptuálního ER diagramu pro konkrétní databázové servery, provádět denormalizaci, ladit databázi k co nejvyššímu výkonu. PowerDesigner pro aplikační vývojáře Objektový model PowerDesigneru založený na notaci Unified Modeling Language (UML) dává široký prostor k definování struktury aplikace. Ze zakomponovaného diagramu tříd může aplikační vývojář generovat a zpětně analyzovat zdrojové kódy pro mnoho objektově orientovaných vývojových nástrojů - včetně prostředí Java, PowerBuilder, XML, C++, C#, CORBA nebo VisualBasic. PowerDesigner pro databázové administrátory PowerDesigner nabízí velice silné nástroje pro zpětnou analýzu již existujících databází. Dokáže vytvořit fyzický databázový model z DDL skriptů nebo přímo z "živé" databáze pomocí ODBC rozhraní. Takto zpětně analyzovaný datový model může databázový administrátor pomocí PowerDesigneru zdokumentovat případně sledovat jeho změny v čase pomocí funkce porovnávání modelů. Závěr k PowerDesigneru PowerDesigner je ideálním nástrojem pro návrh informačních systémů protože umožňuje v rámci jediného prostředí identifikovat důležité obchodní aktivity podniku a zachytit jejich odraz v aplikacích a databázích pomocí datových a objektových modelů. Obchodní analytik tak může navrhnout efektivnější fungování podniku v modelu podnikových procesů a předat takto specifikované zadání do IT oddělení k vytvoření informačních systémů podporujících tyto nové procesy v podniku. Při návrhu požadovaných aplikací může datový analytik tak vytvářet entity v datovém modelu a sledovat jejich závislost na objektech a třídách v navrhované aplikaci získaných z objektového modelu systému. Hladká spolupráce při návrhu datové a aplikační stránky systému v rámci jediného CASE nástroje s jednotným uživatelským prostředím se pak odrazí v rychlém a bezproblémovém vývoji. Systémové požadavky: MS Windows XP, NT 4.0, 2000 procesor Pentium 90 MHz, 96 MB RAM SVGA displej (s rozlišením 800x600 nebo vetším) 18
mechaniku CD-ROM (pro instalaci) 200 MB volného místa na pevném disku Obrázek Sybase PowerDesigner - Uživatelské prostredí ukázka objektového modelovaní Obrázek Sybase PowerDesigner - Uživatelské prostredí ukázka objektového modelovaní 19
Microsoft Visio Verze: 2003 Výrobce: Microsoft Distributor ČR: Microsoft Cena a druhy licencí: Visio 2003 Standard CZ - 6708,- Kč s DPH Visio 2003 Standard CZ EDU** - 2013,- Kč s DPH Visio 2003 Standard CZ UPG* - 3287,- Kč s DPH Visio 2003 Professional CZ - 14587,- Kč s DPH Visio 2003 Professional CZ UPG*- 7294,- Kč s DPH * Upgrade - produkt lze zakoupit pouze v případě, že jste legálním majitelem některé z předchozích verzí tohoto produktu. ** Školní produkt - produkt je určen pro použití ve školství. Produkt obsahuje dokumentaci, medium (CD nebo diskety) a licenci pro 1 uživatele. Charakteristika výrobce Popisovat společnost Microsoft myslíme není třeba. Stručná charakteristika produktu Visio 2003 je aplikace pro tvorbu diagramů, s níž lze vytvářet obchodní a technické diagramy, ve kterých jsou dokumentovány a uspořádány plány, procesy a systémy. Diagramy vytvořené v aplikaci Visio 2003 umožňují vizualizovat a předávat informace tak, jak by to pouze s využitím textu a čísel nebylo možné. Pomocí přímé synchronizace diagramů se zdroji dat automatizuje aplikace Visio 2003 vizualizaci dat. Poskytuje tak aktuální diagramy a navíc lze mechanismy aktualizace přizpůsobit potřebám organizace. Co umožňuje Visio 2003? vytvořit nákresy vytvořit technická schémata vytvořit grafy a diagramy pracovat s textem, obrazci a šablonami navrhnout nákresy budov, interiérů, kanceláří, technických schémat vytvořené objekty pak vkládat do dalších dokumentů vytvořených v aplikacích MS Word, MS Power Point a dalších Interface Visia 2003 20