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: Výrobce: Distributor ČR:
12 Sybase, Inc (www.sybase.com) 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
Konceptuální Fyzický datový model datový model
PhysicalArchitect
x
PhysicalArchitect Enterprise
x
x DataArchitect Enterprise x Developer x Developer Enterprise x ObjectArchitect x ObjectArchitect Enterprise x DataArchitect
Business Architekt
Objektový model
Model podnikových procesů
Repository
x x x
x x
x x x x x
x x
Process
x
Business Process Architect Enterprise
x
x 14
Studio Enterprise
x x
Viewer
Pouze čtení
Studio Personál
pro
x x
x x
Pouze pro čtení
Pouze čtení
pro
x x
x
Pouze pro čtení
Pouze čtení
pro
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
Obrázek Visio 2003
A : panely nástrojů na horních lištách programu jsou ty samé co v ostatních produktech Microsoftu (Word, Power Point, Excel), pokud jste již někdy Visio viděli, možná jste si všimli několika rozdílných funkcionalit (popis není obsahem této práce) B : na levé straně obrazovky vidíme menu specifické pro každý druh diagramu, který vytváříme C : uprostřed obrazovky vidíme pracovní plochu diagramu D : pomocná lišta, typická pro všechny produkty Microsoft Office řady 2003
Výčet funkcí MS Visio 2003 Mezi širokou škálu diagramů, které MS Viso 2003 podporuje, patří především: •
Blokové diagramy, Diagramy databáze, Vývojové diagramy, Diagramy sítí, Organizační diagramy, Diagramy technologií výrobních procesů, Plány projektů, Softwarové diagramy
•
Hlavně pak BPM diagramy – Diagramy obchodních procesů
Diagram auditu – znázorňuje finanční nebo fiskálně zaměřené procesy
Diagram příčin a následků – znázorňuje faktory a příčinné vztahy v dané situaci, jsou rovněž známy jako rybí kost nebo Ishiakovy diagramy
Diagramy EPC – znázorňující procesní řetězce řízené událostmi
Diagram analýzy stromu poruchy – analyzují chyby v procesech
Vývojové diagramy řízení jakosti (TQM)
21
Diagramy průběhu prací – zobrazuje fyzickou práci nebo inf. procesy
Diagram průběhu prací - MS Visio 2003
Diagramy můžete snadno sestavovat přetahováním předem definovaných symbolů Mirosoft SmartShapes. Pro účely vytváření obchodních a technických diagramů můžete používat nástroje, které byly přímo navrženy pro jednotlivé profesionální disciplíny. Z existujících dat lze generovat běžné typy diagramů. K dispozici je kontextová nápověda a šablony pro konkrétní úkoly, které jsou pravidelně aktualizovány z webu. Můžete vytvářet vizuálně zajímavé diagramy, které zajistí maximální vliv na adresáty vašeho sdělení. Diagramy lze umístit do sdíleného pracovního prostoru na týmovém serveru služby Microsoft Windows SharePoint Services. Vkládání poznámek do diagramů pomocí funkce digitálního pera v počítačích Tablet PC je snadnější. Nový režim revizí umožňuje sledování komentářů recenzentů, změny tvarů a záznamů zadaných pomocí digitálního pera. Pomocí vylepšené funkce Uložit jako webovou stránku můžete publikovat a sdílet diagramy na webu. K dispozici je import a export diagramů do formátu SVG (Scalable Vector Graphics), cožje nový standard pro webovou grafiku založený na jazyce XML. Získáváním dat z diagramů aplikace Visio a jejich importem do aplikací Microsoft Excel nebo Microsoft Word, do databází Microsoft Access a Microsoft SQL Server, do formátu XML a dalších formátů lze integrovat podnikové procesy a systémy. Specifické podnikové potřeby můžete řešit začleněním aplikace Visio do výkonného softwaru připojeného k platformě Microsoft .NET. Ovládací prvky aplikace Visio pro kreslení je možné vkládat do obchodních aplikací, které jsou založeny na softwaru připojeném k platformě .NET nebo na operačním systému Microsoft Windows.
22
Zhodnocení VISIO Na rozdíl od Wordu či Excelu jsou silné stránky VISIO méně zjevné a vyžadují o něco více systémový přístup při prezentaci možností jeho využití. Uživatelé MS Office jsou zvyklí na intuitivní přístup k ovládání programů. Pokud zájemce o VISIO narazí v příručce na postup, který obsahuje 20, nebo i 40 bodů, nebude asi příliš nadšený. Řada uživatelů by uvítala informace a zkušenosti, které by více podporovaly rozvoj kreativity v práci s VISIO. Možná by se pak poněkud změnila i představa o přijatelné výši často kritizované ceny produktu VISIO. Jsou situace, kdy s VISIO dokážete udělat opravdu velký kus práce a není potřeba se za ni stydět. Ovšem jsou i takové situace, kdy je Visio naprosto nepoužitelné (ukotvování šipek na libovolné místo, nutné ručně přes VBA) a jeho použití je dvojnásobná práce - hlavně pro vývojáře. Nechť si proto každý sám posoudí, zda mu kvůli pár obrázkům stojí za to obětovat tak velký obnos za Visio.
23
Altova UModel™ 2006 Verze: 2006 Výrobce: Altova GmbH/ Altova, Inc. (www.altova.com) Distributor ČR: JIMAZ, s.r. o. (www.jimaz.cz) Cena a druhy licencí: licence pro 1 počítač (včetně SMP/upgradů na 1 rok) 5 740 Kč s DPH licence pro 5 počítačů (včetně SMP/upgradů na 1 rok) 27 070 Kč s DPH licence pro 10 počítačů (včetně SMP/upgradů na 1 rok) 48 840 Kč s DPH licence pro 20 počítačů (včetně SMP/upgradů na 1 rok) 92 870 Kč s DPH licence pro 50 počítačů (včetně SMP/upgradů na 1 rok) 230 620 Kč s DPH
Charakteristika výrobce Společnost Altova patří k aktivním členům konsorcií W3C (World Wide Web Consortium) a OMG (Object Management Group), na trhu IT je známa spíše jako tvůrce a dodavatel nástroje XMLSpy a dalších s technologií XML souvisejících nástrojů. Aktivity společnosti jsou řízeny z USA a Rakouska.
Stručná charakteristika produktu Altova UModel™ 2006 je nástrojem zaměřeným výlučně na podporu objektově orientovaných metod analýzy a návrhu resp. podporu notace UML. Vývoj nástroje začal až se vznikem specifikace UML 2.0, v současnosti UModel podporuje verzi UML 2.1. Tato podpora není úplná, z 13 hlavních diagramů definovaných v poslední verzi specifikace se UModel soustředí na podporu těch (zřejmě) nejpoužívanějších, tj.: diagram užití (Use case diagram), diagram tříd (Class diagram), diagram objektů (Object diagram), sekvenční diagram (Sequence diagram), diagram balíčků (Package diagram), diagram komponent (Component diagram), diagram nasazení (Deployment diagram).
Klíčové vlastnosti Generování programových kódů Pravděpodobně nejzásadnější charakteristika tohoto nástroje je možnost generování zdrojového kódu v jazycích Java a C# který je kompatibilní pro nejpopulárnější vývojová prostředí Eclipse, Borland® JBuilder®, Microsoft® Visual C# .NET®, Borland® C#Builder® aj. Zpětné generování modelu z programováho kódu UModel® 2006 je relativně mocným nástrojem pro reverse engineering. Díky importu Java či C# kódu a automatickému generování UML modelu lze rychleji porozumět struktuře existujících aplikací. Takto vytvořené diagramy najdou uplatnění při rozšiřování funkcionality existujících aplikací i vývoji nových aplikací.
24
Synchronizace modelu a programového kódu UModel® 2006 podporuje obousměrnou synchronizaci modelu a programového kódu. V průběhu postupu projektu lze revize a vylepšení zdrojového kódu zpětně promítnout do vytvořených diagramů, v opačném směru lze samozřejmě z aktualizovaného modelu znovu generovat programový kód. Přenos modelu do/z jiných prostředí Pro přenos modelu do/z jiných nástrojů lze v prostředí UModel® 2006 využít formát standardu XMI 2.1. Tvorbu dokumentace nástroj podporuje exportem diagramů v grafickém formátu PNG.
Další zajímavé vlastnosti Programový kód a zpětné generování modelu z konkrétního kódu lze provádět na úrovni projektu, balíčku i třídy. Diagramy UML lze vytvářet v libovolném pořadí. Pro generování programového kódu a reverse engineering UModel podporuje jazyk Java ve verzích 1.4.x a 5.0 a jazyk C# verze 1.2 a 2.0. V rámci jednoho projektu lze udržovat kód v obou jazycích současně. Podpora šablon UML. XML Metadata Interchange (XMI version 2.1) pro modely v UML 2.0 resp. 2.1. Při práci s atributy a metodami tříd UModel nabízí in-place nápovědu pro výběr typů, nastavení míry přístupnosti a dalších vlastností které bývají k dispozici v nejrozšířenějších integrovaných vývojových prostředí typu Visual Studio .Net či Eclipse. K vyšší atraktivnosti a intuitivnosti použití UML diagramů v UModelu přispívá zvýrazňování syntaxe. UModel nabízí bohaté možnosti customizace stylů (font, barva, ohraničení atd.) pro jednotlivé prvky diagramů, styly je možné definovat pro různé projekty, rodiny prvků, samotné prvky. Jednotlivé prvky modelu lze seskupovat do stromové struktury podle různých kritérií (např. typ diagramu), v rámci stromové struktury je pak možné vyhledávání těchto prvků podle jména. Asociace, agregace, generalizace atd. lze v diagramech modelu vyhledávat prostřednictvím kontextových menu. UModel umožňuje provést neomezené množství Undo/Redo operací, zaznamenávají se nejen změny v obsahu modelu, ale i stylu jednotlivých prvků.
Diagram užití Pro jeho tvorbu lze v UModelu využít všechny standardní prvky, tj. aktor, typ užití, vztah. Vztahy mezi prvky diagramu mohou být různého typu (např. include, extend), UModel dbá na správné používání vztahů různého typu, např. nezkušenému studentovi nedovolí nakreslit vztah extend mezi aktorem a typem užití. Každý prvek diagramu lze doplnit komentářem v podobě volného textu, který může posloužit jako základ dokumentace. Komentáře lze vkládat také přímo do diagramu jako poznámku (tato poznámka se nestává prvkem modelu).
25
Diagram tříd UModel poskytuje všechny základní prvky pro tvorbu diagramu tříd a může být využit při modelování tříd na různých úrovních (konceptuální, specifikační, implementační). Pro jednotlivé třídy nelze spravovat tolik podrobných informací jako v robustnějších nástrojích typu PowerDesigner, což činí práci s nástrojem přehlednější. Velmi dobře je řešena možnost využívání existujících prvků v jiných diagramech a to až na úroveň atributů a metod třídy.
Diagram objektů Za předpokladu existence diagramu tříd je v UModelu velmi snadné tento diagram instancializovat a znázornit vztahy objektů v systému. Klíčový prvek diagramu objektů je v UModelu pojmenován InstanceSpecification.
Diagram komponent, diagram nasazení Filosofie tvorby diagramu komponent a diagramu nasazení v UModelu je stejná jako u ostatních diagramů, vyžaduje však hlubší porozumění implementaci softwarových aplikací.
26
Závěrečné zhodnocení UModel® 2006 je typický Lower CASE specializovaný na vývoj aplikací v moderních programovacích jazycích Java a C# pomocí objektově orientovaného přístupu. Za silnou stránku nástroje považujeme intuitivní a přehledné uživatelské rozhraní, které je snadno a rychle zvládnutelné, podporuje českou abecedu a umožňuje efektivní a rychlé vytváření kvalitních UML diagramů, po stránce funkční i estetické. Jako velmi kvalitní se v průběhu testu ukázal také obousměrný engineering a podpora výše zmiňovaných programovacích jazyků. Nevýhodou nástroje při nasazení pro tvorbu rozsáhlejších systémů je nemožnost provozu repository nad databázovým systémem, absence podpory pro správu verzí modelu a podpory týmové práce ve fázi analýzy a návrhu. I s ohledem na ekonomické charakteristiky se UModel® 2006 uplatní spíše na projektech menšího až středního rozsahu.
Obrázek Altova UModel® 2006 – pracovní plocha
27
MagicDraw™ 11.0 Verze: 11.0 (2006) Výrobce: No Magic, Inc. (www.nomagic.com) Distributor ČR: No Magic European Software Development Center (www.bpi.lt) Cena a druhy licencí: Personal Edition €125 bez DPH Standard Edition €425 bez DPH Professional Edition for Java €765 bez DPH Professional Edition for C++ €765 bez DPH Professional Edition for C# €765 bez DPH Enterprise Edition €1,355 bez DPH
Charakteristika výrobce Společnost No Magic, Inc. je aktivním členem konsorcia OMG (Object Management Group), vlajkovou lodí jejího produktového portfolia je právě CASE nástroj MagicDraw™ 11.0. No Magic, Inc. je technologickým partnerem např. společností SUN či Borland a není bez zajímavosti, že mezi technologické partnery patří i český systémový integrátor KOMIX, s.r.o., dodavatel plug-in do MagicDraw UML pro správu požadavků, odhad pracnosti, sledování postupu vývoje a přípravu testů. Aktivity společnosti na evropském kontinentu jsou řízeny z litevského Kaunasu.
Stručná charakteristika produktu MagicDraw™ 11.0 nepatří na trhu CASE nástrojů k žádným nováčkům, jeho první verze byla odborné veřejnosti představena již v roce 1998. V počátcích byl nástroj zaměřen pouze na vizuální modelování a podporu notace UML, postupně byla doplňována funkcionalita pro generování zdrojových kódů a reverse engineering (Java a C++ od verzí 3.x). Současný MagicDraw™ 11.0 představuje robustní CASE nástroj podporující objektově orientovaný přístup k analýze a návrhu software, modelování podnikových procesů a částečně je využitelný i pro řešení některých problémů z oblasti datového modelování. Zákazníci podle svých požadavků mohou vybírat z 6-ti edic produktu: Reader, Community, Personal, Standard, Professional a Enterprise. Funkcionalita edic Reader resp. Community je výrazně omezená, v prvním případě se jedná o prostředek určený k prohlížení modelů v režimu „readonly“, ve druhém jsou navíc k dispozici pouze prostředky pro tvorbu diagramu tříd. Obě tyto edice jsou zdarma. Edice Personal a Standard již představují plnohodnotné nástroje pro modelování v jazyce UML, edice Standard vyhoví i nárokům na práci v týmu. Nicméně výše zmiňované funkcionality pro generování zdrojových kódů, reverse engineering a modelování podnikových procesů nabízí až edice Professional resp. Enterprise. Další text se věnuje popisu edice Enterprise.
Klíčové vlastnosti Podpora UML V nástroji je zabudována podpora notace a metamodelu UML 2.0, uživatel má k dispozici prvky pro tvorbu následujících diagramů: diagram užití (Use case diagram), diagram tříd (Class diagram), 28
diagram objektů (Object diagram), sekvenční diagram (Sequence diagram), diagram balíčků (Package diagram), diagram komponent (Component diagram), diagram nasazení (Deployment diagram), diagram aktivit (Activity diagram), stavový diagram (State diagram), diagram komunikace (Communication diagram). Kromě těchto může uživatel dále vytvářet a používat vlastní diagramy založené na UML, k dispozici jsou též rozšíření UML pro specifikace WSDL, XML, CORBA IDL aj. Podpora modelování business procesů Diagram podnikových procesů v nástroji MagicDraw™ 11.0 podporuje notaci BPMN (Business Process Modeling Notation) a export vytvořeného modelu do jazyka BPEL 1.1. Datové modelování MagicDraw™ neumožňuje oddělit modelování datové základny na konceptuální, technologické a fyzické úrovni. Konceptuální úroveň nástroj nijak nerozlišuje, tvorba technologického modelu je možná pomocí „znásilnění“ diagramů UML, např. nastavení stereotypů table resp. view pro třídu umožňuje pozdější vytváření tabulek resp. pohledů. Z takto vytvořeného technologického modelu lze později generovat DDL skripty pro databáze Informix Cloudscape 3.5 a Oracle 8. Pro tato prostředí je rovněž podporován reverse engineering. Podpora týmové práce Možnost současné práce více analytiků a vývojářů na jediném projektu v aplikaci MagicDraw™ lze zajistit pomocí instalace komponenty Teamwork Server, jejíž funkcionalitu lze využít v edicích Standard, Professional a Enterprise. Komponenta umožňuje integraci lokálních projektů do jediného týmového projektu a nastavení přístupových práv k projektu pro různé skupiny uživatelů. Každý oprávněný uživatel může získat nejaktuálnější kopii projektu ze serveru, zamknout část modelu pro editaci případně pracovat offline a provedené změny synchronizovat s projektem na Teamwork Serveru. Komponenta také nabízí prostředky pro správu více projektů, vytváření verzí projektu s možností návratu k libovolné předchozí, zasílání zpráv ostatním uživatelům Teamwork Serveru nebo práci na části projektu (modul). Pro správu uživatelů a monitorování práce Teamwork Serveru je dodávána administrátorská konzole. Generování programových kódů a zpětné generování modelu z programováho kódu Pro jazyky Java, C++, platformu .Net a kód podle specifikace CORBA IDL 3.0 nabízí MagicDraw™ prostředky pro zpětné generování modelu ze zdrojového kódu v příslušném jazyce a generování programových kódů ze statických diagramů UML. Pro všechny edice jazyka Java jsou dále k dispozici reverse engineering a generování kódu podle specifikace komponentní architektury EJB 2.0, možnost zpětného vytváření sekvenčního diagramu ze zdrojového kódu v Javě a kontrola modelu proti pravidlům programovacího jazyka. Během synchronizace modelu a kódu nástroj zachovává všechny implementace metod včetně komentářů. Reverse engineering a generování kódu pro prostředí sítě Internet je možné provádět v souladu se standardy WSDL 1.1 a XML Schema 1.0. Podpora automatické synchronizace modelu a programového kódu je k dispozici pro řadu vývojových nástrojů: Sun Java Studio, Borland CaliberRM, BEA WebLogic Workshop, IntelliJ IDEA, NetBeans, Eclipse, IBM Rational Application Developer, Borland JBuilder. 29
Další zajímavosti Otevřené API Otevřené API zpřístupňující všechny třídy UML metamodelu. Možnost přidávání vlastních akcí do menu a nástrojových lišt, doplňování vlastních plug-ins, vytváření nových návrhových vzorů. Prostředky pro snažší modelování Široká nabídka návrhových vzorů, tj. GoF (adapter, composite, decorator, observer, composite, decorator, observer, proxy, singleton, visitor, bridge), návrhové vzory pro Javu (RMI, EJB, Main class), JUnit vzory (test case, tested class). Přizpůsobení a rozšiřování vzorů. Předpřipravené šablony modelů. Struktura modelu a navigace Automatické seskupení prvků modelu do stromové struktury, možnost provázání prvků modelu pomocí odkazů, vkládání odkazů na libovolné prvky modelu nebo dokumenty mimo model do poznámek a textových polí. Snadná editace prvků modelu a vyhledávání jednotlivých prvků podle zadaných kritérií (např. název, typ, ...). Zvýrazňování změn v modelu od posledního uložení. Ukládání a export modelu Nativní soubory MagicDraw™ jsou ukládány ve formátu XMI 2.1. Jednotlivé části projektu mohou být ukládány do oddělených souborů. Všechny diagramy, zvolené diagramy nebo jen vybrané prvky lze exportovat jako obrázky v bitmapových (JPEG, PNG) i vektorových formátech (EMF,WMF, EPS, SVG). Podpora tvorby dokumentace modelů Dokumentaci je možné vytvářet pro dva režimy – tisk nebo prohlížení. V režimu prohlížení je dokumentace reprezentována zprávou ve formátu HTML. Pro modely a jednotlivé prvky existují předpřipravené styly, dále jsou k dispozici RTF a PDF šablony pro vytváření dokumentů SDD(Software Design Document) a UCS(Use Case Specification). Podpora OCL K libovolnému prvku modelu lze doplnit omezení v OCL. MagicDraw™ provádí automatickou validaci syntaxe.
Celková charakteristika I když z marketingových materiálů propagujících MagicDraw™ 11.0 je velmi patrná snaha přiblížit nástroj směrem k oblasti CABE, v realitě se jedná o robustní Lower CASE jehož přednosti by s největší pravděpodobností žádný business analytik neocenil resp. nevyužil. Slušná podpora týmové práce, široké možnosti generování programových kódů a reverse engineering, otevřené API, pestrá paleta návrhových vzorů, vazby na nejrozšířenější vývojová prostředí i nástroje pro odhad pracnosti – tyto všechny vlastnosti předurčují MagicDraw™ 11.0 pro nasazení na rozsáhlejších projektech. Chybí však výraznější podpora datového modelování, maximální využití všech předností které nástroj nabízí si pravděpodobně vyžádá důkladnější školení uživatelů, dosahování přijatelné doby odezvy v průběhu provozu se neobejde bez výkonných technických prostředků. Při rozhodování o tom zda investovat do tohoto CASE nástroje proto doporučujeme maximální míru obezřetnosti. 30
Obrázek MagicDraw™ 11.0 – pracovní plocha
Obrázek MagicDraw™ 11.0 – pracovní plocha – diagram business procesu
31
Produkty - Free nástroje Jude Verze: Výrobce: Distributor Lokalizace: Demoverze: Cena licence:
2.51 Eiwa System Management, Inc. (http://jude.change-vision.com/j) NE ANO Commmunity 0 USD Proffesional 280 USD
Úvodní informace Velikostí programu velmi malý (asi 2MB), ale velmi povedený vývojový program. Obsahuje veškerou základní funkčnost - podporuje UML 1.4 a všech 9 typů diagramů. V nynější době existuje jako jak free verze JUDE/Community, která je částečně omezena (chybějí některé funkce npř. Spojování modelů, export a import v XMI, výstupy RTF a vektorové formáty obrázků či tisk diagramů na více stránek. Do sekce free nástrojů jsme jej zařadili hlavně kvůli testování právě JUDE/Community verze. Jeho druhá verze JUDE/Professional již tyto fukce obsahuje, ale bohužel v nynější době je zpoplatněna licence cca. 280 USD. Avšak i free verze je plně použitelná a funkční.
Podporovaná funkcionalita Jude v nynější době podporuje základní UML 1.4 diagramy: • Class (Object/Package/Robustness) • UseCase • Sequence • Collaboration • Statechart • Activity • Component • Deployment Generování kódu diagramu Vzhledem k silné provázanosti s Java prostředím (využití k programování sofw v jazyce Java) lze kostru kódu generovat právě pouze do tohoto jazyka. Generování modelu ze zdrojových kódu Java Umí též analyzovat již vytvořenou aplikaci v Javě a na základě této analýzy nakreslit diagram tříd s jejich odpovídajícími vazbami. Úprava vzhledu modelů Dává schopnost uživateli do jisté míry nastavit, jak budou vypadat diagramy. Leze skrývat a zobrazovat některé vlastnosti, nastavovat barvy a to nejen invidivuálně, ale také podle přiřazených stereotypů. 32
Export Class diagramu do HTML (javadoc) Schopnost exportovat diagramy do HTML jakož to dokumentace pro java programy. Datové typy a přístupnosti atributu v modelech jazyce Java
Prostředí JUDE/Community
Obrázek JUDE/Community - Uživatelské prostredí – Class Diagram
33
Obrázek JUDE/Community - Uživatelské prostredí – UseCase Diagram
Obrázek JUDE/Community - Uživatelské prostredí – Activity Diagram
34
Systémové požadavky: CPU Pentium III 700MHz or higher, Memory 256MB or more (Recommended : 512MB or more) Hard Disc Free space of 128MB or more
35
Závěrem V naší práci jsme se pokusili nastínit, jak vypadá současná situace na tuzemském trhu s CASE nástroji. Na rozdíl od předchozích generací jsme se nezabývali výčtem všech nástrojů, které je možno na našem trhu sehnat, ale pokusili jsme se ze širokého spektra vybrat ty nejzajímavější komerční nástroje od významných světových výrobců a ty detailně analyzovat a popsat. Hlavní důraz byl kladen na dva produkty – PowerDesigner od firmy Sybase a Enterpise Architect od Sparx Systems. Neboť právě tyto dva produkty, jsou dnes mezi zákazníky, kteří používají CASE nástroje nejvíce rozšířeny. Co se týče PowerDesigneru, chtěli jsme představit nové vlastnosti nedávno vyšlé verze 12, kterých je oproti verzi minulé celá řada (například můžeme uvést: zdokonalenou integraci datového a procesního modelovaní; mapování metadat, které usnadňuje komplexní transformace dat mezi databázovými zdroji; podpora UML 2.0). Enterpise Architect byl vybrán hlavně kvůli jeho širokému rozšíření po tuzemském trhu, daném především jeho příznivou cenou za obrovské portfolio jeho funkcionalit.
36
Použitá literatura a další zdroje [1] Buchalcevová: Základy softwarového inženýrství, VŠE Praha, 2002 [2] Řepa: Podnikové procesy, Grada Praha, 2006 [3] Jude UML modelling tool [online] http://www.esm.jp/jude-web/index.html [4] Plotěný & kol.: Přehled produktu CASE na českém trhu. Seminární práce na předmět IT_572, LS 2004/2005. [5] Hauzírek & kol.: Přehled produktu CASE na českém trhu. Seminární práce na předmět IT_572, ZS 2005/2006. [6] Kunstová & kol.: Informatika pro ekonomy, VŠE Praha, 2001 [7] Enterprise Architect [online] http://www.sparxsystems.com.au/products/ea.html [8] Power Designer [online] http://www.sybase.com/products/developmentintegration/powerdesigner [9] Microsoft Visio 2003 [online] http://office.microsoft.com/en-us/FX010857981033.aspx [10] MagicDraw™ [online] http://www.magicdraw.com [11] Altova UModel® 2006 [online] http://www.altova.com
37