Použití CASE ve vývojářské firmě



Podobné dokumenty
Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Nástroje pro tvorbu wireframes

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

CASE nástroje. Jaroslav Žáček

TÉMATICKÝ OKRUH Softwarové inženýrství

Olga Rudikova 2. ročník APIN

MIS. Manažerský informační systém. pro. Ekonomický informační systém EIS JASU CS. Dodavatel: MÚZO Praha s.r.o. Politických vězňů Praha 1

IS pro podporu BOZP na FIT ČVUT

Obsah. Zpracoval:

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Novinky ve Visual Studio Tomáš Kroupa

PRODUKTY. Tovek Tools

Tovek Tools. Tovek Tools jsou standardně dodávány ve dvou variantách: Tovek Tools Search Pack Tovek Tools Analyst Pack. Připojené informační zdroje

DODATEČNÉ INFORMACE K ZADÁVACÍM PODMÍNKÁM Č. 3. Zadavatel: Název veřejné zakázky: Česká republika Ministerstvo zemědělství

Vývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda

Semestrální práce Použití CASE ve vývojářské firmě

CASE. Jaroslav Žáček

Nové jazykové brány do Caché. Daniel Kutáč

Databáze s tisíci uložených procedur. Pavel Bláhovec, DiS pavel@blahovec.cz

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb:

MBI - technologická realizace modelu

1. Webový server, instalace PHP a MySQL 13

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody

Business Intelligence nástroje a plánování

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Instalace a konfigurace web serveru. WA1 Martin Klíma

Prezentace CRMplus. Téma: CRMplus jako nástroj pro kontrolu a vyhodnocení rozpracovanosti dílů na zakázkách

Specializace Návrhář software na základě analýzy vytváří návrh softwarových aplikací ve formě schémat a diagramů.

Identity Manager 4. Poskytujte okamžitý přístup ke zdrojům v rámci celého podniku

Úvod do programovacího jazyka Python

Wonderware Information Server 4.0 Co je nového

SW pro správu a řízení bezpečnosti

SOU Valašské Klobouky. VY_32_INOVACE_3_20_IKT_Tvorba_webovych_stranek_Redakcni_systemy. Mgr. Radomír Soural. Zkvalitnění výuky prostřednictvím ICT

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

Co je nového v aplikaci PaperPort 12?

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

Úvod. Klíčové vlastnosti. Jednoduchá obsluha

IBM Tivoli Storage Manager 6.2 a IBM Tivoli Storage Manager FastBack 6.1.1

1 Webový server, instalace PHP a MySQL 13

Databáze II. 1. přednáška. Helena Palovská

Seznámení s prostředím dot.net Framework

Programování a implementace Microsoft SQL Server 2014 databází

O projektu Nasazení OpenOffice.org v praxi

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Formy komunikace s knihovnami

Nástroje pro vývoj aplikací v závislosti na platformě a jejich vazba na CASE

Unified Communications. Customer Contact. Cisco Unified Contact Center Enterprise. Hlavní výhody. Způsoby nasazení

Unifikovaný modelovací jazyk UML

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

Matematika v programovacích

Evidence a správa kanalizace v GIS Kompas 3.2

IB111 Programování a algoritmizace. Programovací jazyky

OFFICE 365 popis služeb

Otevřený katastr (OK)

Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W

PRODUKTY. Tovek Tools

1. Začínáme s FrontPage

Tabulka základních vlastností nástroje C++Builder dle edice

Identifikátor materiálu: ICT-1-20

Modelování procesů s využitím MS Visio.

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

Úvod do programovacího jazyka Python

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale

Nástroje pro vývoj aplikací v závislosti na platformě a jejich vazba na CASE

Tieto Future Office. Přehled. Země: Česká republika. Odvětví: Samospráva

Architektura softwarových systémů

Téma Školitel Počet dní Moderní principy řízení výrobního podniku

C# - Databáze úvod, ADO.NET. Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí

POKROČILÉ POUŽITÍ DATABÁZÍ

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Možnosti reportingu v produktech řady EPM

Název: On-line tvorba webu Anotace:

Vzdálená správa v cloudu až pro 250 počítačů

AUTOMATICKÉ ŘÍZENÍ S INTERNETOVOU KOMUNIKACÍ V PHP Automatic Control with Internet Communication in PHP

Kapitola 1: Úvod. Systém pro správu databáze (Database Management Systém DBMS) Účel databázových systémů

Microsoft SharePoint Portal Server Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

Trask solutions Jan Koudela Životopis

PostgreSQL jako platforma pro datové sklady

Redakční systém Joomla!

programátor vs. vývojář

Angličtina program k procvičování slovní zásoby

Příprava dat v softwaru Statistica

ArcGIS for Server. V oblasti správy, vizualizace a zpracování prostorových dat nabízí ArcGIS for Server tyto možnosti:

Zpětná vazba od čtenářů 11 Dotazy 11 Zdrojové kódy ke knize 11 Errata 11 Typografické konvence použité v knize 12

Techniky a CASE nástroje vývoje IS přednáškový blok 3

Desigo Control Point řešení pro ovládání a monitorování budov siemens.cz/desigo

Microsoft Visio 2013 vypadá jinak než ve starších verzích, proto jsme vytvořili tuto příručku, která vám pomůže se s ním rychle seznámit.

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Obsah. Kapitola 1. Kapitola 2. Kapitola 3. Kapitola 4. Úvod 11. Stručný úvod do relačních databází 13. Platforma 10g 23

Redakční systémy 1. pro správu obsahu

S2. Vytvoření Windows balíku pro vývoj na STM32 architektuře

CASE nástroje pro jazyk UML

Ukázka knihy z internetového knihkupectví

1.13 ACCESS popis programu

PRVNÍ ELASTICKÝ INFORMAČNÍ SYSTÉM : QI

Možnosti využití dat RÚIAN poskytovaných VDP pomocí webových služeb

úvod Historie operačních systémů

Transkript:

Použití CASE ve vývojářské firmě Autoři: David Kotyza Michal Bank René Volkmer Štěpán Drbohlav Vladimír Chaloupka Datum: 29. prosince 2007 Předmět: 4IT450 CASE Computer Aided Systems Engineering

Obsah 1 Úvod... 3 2 Typy case nástrojů... 4 2.1 Tým A vývoj na platformě Microsoft... 5 2.1.1 Microsoft produkty... 5 2.1.1.1 Obecný popis... 5 2.1.1.2 Microsoft Visio... 5 2.1.1.3 Uplatnění produktu ve společnosti... 5 2.1.1.4 Microsoft SQL Server... 6 2.2 Tým B vývoj na platformě Linux... 8 2.2.1 Open source a komerční produkty... 8 2.2.1.1 Umbrello UML... 8 2.2.1.2 ArgoUML... 9 2.2.1.3 Poseidon for UML... 10 2.2.1.4 CASE studio 2... 11 2.2.1.5 DBDesigner 4... 12 2.3 Využití CASE nástrojů pro vývoj v Zope/Plone... 13 3 Závěr... 15 4 Zdroje... 16

1 Úvod Cílem této prace je popsat CASE nástroje, které se používají nejčastěji v reálném nasazení a zavádí do práce analytiků a vývojařů veliké zjednodušení. Díky existenci těchto nástrojů se vývoj aplikací znatelně urychluje, finanční prostředky vynaložené na vývoj se zmenšují a zavádí se společná komunikace mezi jednotlivými odděleními společnosti. Obecně se dají tyto aplikace popsat jako sofware, který pomáhá lidem při vývoji a údržbě softwarového řešení. Mezi CASE nástroje můžeme zařadit např. nástroje pro generování zdrojového kódu, UML či aplikace určené pro refaktoring zdrojového kódu. V následujících odstavcích představíme aplikace jež používá softwarová společnost Tilda (pravé jméno společnosti je na přání změněno), která patří do skupiny malých společností zaměřující se na tvorbu informačního systému pro státní správu a obecně pro zákazníky jež potřebují vytvořit řešení na klíč. Ve firmě pracují dva hlavní softwaroví architekti, přičemž každý zodpovídá za práci 3-4 lidí. Aktuální počet lidí jež ve společnosti pracují závisí na množství práce. Společnost často využívá práce externích vývojářů. Tuto firmu jsme si vybrali pro analýzu z toho důvodu, že vývoj jejich produktů je založen jak na platformě Unix/Linux, tak na platformě Microsoft. K tomu nejzajímavějšímu tedy patří to, že jednotliví lidé jsou dost často nuceni pracovat s rozdílnými produkty z důvodu většího množství práce na programu vyvíjeném na druhé platformě. Tento fakt v konečném důsledku klade velké nároky na jednotlivé vývojáře, jelikož musí znát do detailu více aplikací. V této společnosti se používá značné množství CASE nástrojů a to ze dvou příčin. Jedním z důvodů jsou historicky nakoupené licence a ověření kvalitativních stránek těchto aplikací (s tím souvisí i to, že někteří dávají přednost jedné aplikaci, druzí zase něčemu jinému) a druhý je právě již zmíněná různorodost platforem. Na druhou stranu je pravda, že výrobci mnoha CASE nástrojů vytvářejí svoje produkty na platformě Java, která je spustitelná na jakékoliv platformě kde běží Java Runtime. Analyzovaná společnost do budoucna neplánuje nákup nových CASE aplikací jelikož funkčnosti všech jejich vlastněných produktů plně dostačují potřebám společnosti. Každopádně věc, kterou společnost bude muset do budoucna řešit je integrace na úrovni zdrojových kódů a sjednocení řízení procesů. Např. společnost používá dvě rozdílné repository pro zdrojový kód apod. Níže uvedené aplikace využívala společnost v době naší analýzy. U některých se nám podařilo získat navíc z jejich strany konkrétní příklady využití při jejich práci a tyto jsme upřednostnili v popisu nad ostatními, které jsme do našeho přehledu nezařadili (např. právě již zmíněné repository nástroje).

2 Typy case nástrojů Následující nástroje jsou jedny z nejpoužívanějších. Níže jsou zmíněny spolu s krátkým popisem jejich základní funkcionality. 1) Nástroje pro generování kódu Termín automatické programování se vztahuje k programování, kde jsou počítačové programy generovány automaticky bez nutnosti psaní kódu člověkem. V průběhu času se jeho význam zásadně měnil. David Parnas mapující automatické programování v publikovaných výzkumech zjistil, že ve 40. letech 20. století znamenal tento termín automatizaci děrování papírových štítků. Mnohem později byl přiřazen k překladu high-level programovacích jazyků jako byly Fortran a ALGOL. Ve skutečnosti byl první program identifikovatelný jakožto kompilátor nazván Autocoder. David Parnas nakonec zakončil svoji studii tím, že automatické programování bylo vždy eufemismem pro programování ve vyšším programovacím jazyku, než který má k dispozici. Generativní programování je způsob počítačového programování, která využívá automatizované zdrojové kódy vytvořené pomocí generických tříd, prototypů, templatů, aspektů a generátorů kódů pro zvýšení programátorovy produktivity. 2) Nástroje pro datové modelování Datové modelování je proces vytváření datového modelu pomocí strukturování a organizování dat. Tyto datové struktury jsou následně implementované do databázových systémů spolu s jejich omezeními a limity. Řízení velkého objemu strukturovaných i nestrukturovaných dat je hlavní funkcí informačních systémů. Datové modely popisují strukturovaná data pro datové sklady v rámci DMS jako jsou například relační databáze. Nepopisují nestrukturovaná data, mezi které patří například obrázky, videa, hudbu apod. Podle ANSI (American National Standards Institute) z roku 1975 dělíme datové modely na tři druhy: konceptuální schéma datového modelu popisuje sémantiku organizace. Zahrnuje třídy objektù a vztahy mezi nimi. logické schéma datového modelu popisuje také sémantiku. Zahrnuje mimojiné popis tabulek a sloupců, objektově orientované třídy a XML značky. fyzické schéma datového modelu popisuje fyzické způsoby uložení dat. Tento pohled dovoluje těmto třem schématům být navzájem relativně nezávislé. Způsob uložení dat se může změnit aniž by nějakým způsobem poznamenal konceptuální nebo logický model, struktura tabulky nebo sloupců se může měnit bez nezbytné úpravy konceptuálního modelu apod. Tyto změny musí ale být i nadále konzistentní.

2.1 Tým A vývoj na platformě Microsoft 2.1.1 Microsoft produkty 2.1.1.1 Obecný popis Microsoftí produkty po dlouhá léta udávali směr ve vývoji vývojářských nástrojů. Dnes můžeme říci, že ve vývoji aplikací pro vývojáře je tato společnost právoplatným lídrem na trhu. Portfolio CASE nástrojů má opravdu široké. 2.1.1.2 Microsoft Visio Tato aplikace slouží pro kreslení diagramů z různých průmyslových odvětví (vedení elektrických kabelů, elektronických okruhů, modelování bytů, network diagramy až po TQM, ITIL a UML diagramy). Původně byla aplikace vytvořená společností Visio Corporation, kterou v roce 2000 Microsoft koupil. V současné době je Visio možné používat v rámci sady MS Office 2007 přičemž verze Professional od verze Standard obsahuje jak více šablon a vylepšených diagramů pro modelování, tak další funkce pro zlehčení interoperability mezi kreslenými diagrami a jejich datovými zdroji. Obrázek 1 MS Visio 2.1.1.3 Uplatnění produktu ve společnosti Jak již bylo řečeno, Visio 2007 je integrováno v sadě MS Office a z hlediska nabízených funkcí je tento produkt ve společnosti denně využíván. Analytické oddělení si mezi sebou vyměnuje prostřednictvím této aplikace četné množství dat a to i se zákazníky z jiných společností. Software se stal de facto standardem ve firmách různého založení a to i díky integraci s ostatními produkty. Naskýtá se možnost

provést integraci s Exchange serverem, kdy je např. možné velice jednoduše vygenerovat organizační strukturu společnosti, která je datově uložená v globálním seznamu v Exchange Serveru. V případě reverzního inženýrství se aplikace používá pro propojení s Visual Studiem, kdy je možné vytvářet zpětně UML diagramy již z existujících návrhu tříd a tak vytvářet dokumentaci k již vytvořeným systémům. Přechod na novou verzi Visia se společnosti vyplatil jelikož jsou zde nově přidány ITIL (Information Technology Infrastructure Library) šablony, takže řízení IT služeb je teď programově podporováno, ale hlavně je zde vylepšená podpora datového spojení k externím databázím. 2.1.1.4 Microsoft SQL Server Kvalitní SQL Server je alfou omegou všech dnešních databázových systémů. Microsoft v tomto ohledu nabízí ucelené řešení, které je schopno integrace i se službami operačního systému Windows a je díky tomu možno vyvinout lehce spravovatelné a přitom velice robustní řešení, které uspokojí jakékoliv nároky zákazníka na funkce systému. Obrázek 2 Microsot SQL Server podpora ER modelování Microsoft SQL Server 2005 je pokročilé řešení pro správu a analýzu dat, které firmě pomáhá řídit dynamicky se zvyšující objem dat kritických aplikací. Současně jí umožňuje získat komplexnější přehled o podnikových datech, na jejichž základě pak činit správná rozhodnutí v reálném čase a napříč celou organizací, a díky tomu i rychleji dosáhnout stanovených cílů společnosti. Firma využívá vysoké popularity microsoftí platformy u svých velkých zákazníků a díky již zmiňované jednodušší správě nové verze databázového systému, je oddělení, které má v kompetenci údržbu databáze, velice malé.

Vzdálená správa umožňuje vykonávání rutinních činností, které jsou i tak mnohdy prováděny bez zásahu člověka a to za pomocí tzv. jobů, které pokrývají standardní udržovací doporučení pro optimální stav indexů tabulek, velikosti transakčních logů, kontroly recovery režimů atd. V příštím roce uvede Microsoft na trh nový SQL Server 2008, který staví na kvalitách předchozí verze a posouvá je ještě dále, mimo jiné právě v oblasti řešení rozsáhlých datových skladů.

2.2 Tým B vývoj na platformě Linux 2.2.1 Open source a komerční produkty 2.2.1.1 Umbrello UML Umbrello UML je volně šířitelný UML nástroj vyvinutý na platformě Unix. Je součástí prostředí KDE Desktop Environment, ale dokáže pracovat i pod jinými prostředími jako např. Gnome. Jedná se sice o poměrně jednoduchý nástroj, ale pomocí nejrůznějších externích nástrojů je možné jeho funkcionalitu doplnit o podporu exportů i importů z/do množství programovacích jazyků (např. C++, Java, Perl, Delphi, Python atd.). Obrázek 3 Umbrello UML ukázka diagramu tříd Umbrello UML má implementovánu většinu funkcionalit standardu UML 2.0. Podporuje následující typy diagramů: Class Diagram Sequence Diagram Use Case Diagram Activity Diagram State Diagram

Deployment Diagram Component Diagram Navíc je zde zahrnuta podpora modelování databází pomocí ER diagramu. Exporty z tohoto ER diagramu podporují SQL kód pro databáze MySQL a PostgreSQL. Veškerá funkcionalita zde implementovaná je dostupná na základní úrovni. Oproti ostatním produktům zde chybí např. podpora UML stereotypů, vnořených stavových diagramů nebo automatického uspořádání layoutu. Umbrello UML se doporučuje začátečníkům, kteří se buď chtějí s UML naučit nebo programátorům, kteří ke své práci nepotřebují sofistikovaný nástroj a vystačí si se základní funkcionalitou. V naší společnosti s ní pracují hlavně tedy nově příchozí lidé s menší profesní praxí, kteří pracují na méně důležitých a menších projektech. 2.2.1.2 ArgoUML ArgoUML je javovský UML nástroj, tzn. je dostupný na všech platformách podporovaných runtime prostředím Javy. Je vydaný pod open-source licencí BSD. Tento nástroj podporuje tyto diagramy standardu UML 1.4: Class, State, Use Case, Activity, Collaboration, Deployment, Sequence. Obrázek 4 Ukázka prostředí ArgoUML

V průběhu práce provází designéra pomocník, který v To Do listu zobrazuje problémy nebo varování, které by se měly vyřešit. Příkladem takového varování může být chybějící konstruktor ve třídě nebo název třídy začínající malým písmenem. ArgoUML ukládá model v otevřeném formátu XMI. Podporuje generování kódu do jazyků C++ and C#, Java, PHP4, PHP5, Python a Ruby. Modely se dají exportovat do několika typů obrázkových formátu (jako např. GIF, PNG, EPS). Program je možné spustit i bez nutnosti jakékoliv instalace, a to z webového prohlížeče ze stránek autorů přes Java Web Start. Je ovšem potřeba mít nainstalovaný Java Runtime Environment. Zásadní vytýkaný nedostatek nástroje je absence funkce Undo. Uplatnění tohoto nástroje může být přínosné pro nenáročné jednotlivce anebo v menších firmách s nepříliš početným programovým týmem což odpovídá přesně naší společnosti. 2.2.1.3 Poseidon for UML Tento nástroj sice není open-source, ale úzce souvisí s výše zmiňovaným ArgoUML. Poseidon je vyvíjen společností Gentleware, která vyšla z ArgoUML, značně rozšířila jeho funkcionalitu a vytvořila tak komerční nástroj. Dříve byla k dispozici tzv. Community Edition, která byla zdarma pro nekomerční účely. Tato verze je sice stále k dispozici, tentokrát i pro komerční využití, nicméně pouze za pravidelný měsíční poplatek od 4 EUR/měsíc. Obrázek 5 Ukázka diagramu tříd v Poseidon for UML

Vzhledem k tomu, že Poseidon vychází z ArgoUML, je to opět javovský nástroj a podporuje vše, co ArgoUML. Navíc nabízí možnost Undo/Redo, práci se schránkou, funkci auto-layout a další. Firma Gentleware nabízí 4 různé edice nástroje Poseidon for UML: Community Edition základní funkce za pravidelný měsíční poplatek Standard Edition poskytuje navíc podporu reverse engineeringu pro jazyk Java, generování dokumentace UMLdoc a plug-in rozšíření Professional Edition obsahuje vše, co Standard, přidává množství programovacích jazyků pro export (generování kódu), integraci s prostředím Eclipse IDE a další Embedded Edition speciální verze pro vývoj software pro kapesní počítače. 2.2.1.4 CASE studio 2 Tento skvělý a jednoduchý nástroj je dílem české firmy Charon Ware. Software poskytuje mocný nástroj pro vizuální navrhování databázových struktur. Program umožnuje navrhovat entitně relační diagramy (ERD) pro spoustu typů databází (Oracle, MS SQL, DB2, Firebird, Advantage DB server, Interbase, MaxDB, MS Access, MySQL, PostgreSQL a další). V programu je dále možné vytvářet data flow Diagramy (DFD). Dále je možnost reverse engineering, která umožňuje vytvořit model struktury již existující databáze. CASE studio nabízí také velmi jednoduchou formu versování. Tato funkce je ale dostatečná vzhledem k velikosti projektů, na jaké je CASE Studio2 určeno. Silnou stránkou jsou velice detailní HTML reporty a galerie pro uložení nejčastěji používaných částí modelů. Další výhodou je také podpora uživatelů, uživatelských skupin a uživatelských práv. Je tu také možnost zapisování akcí do "To do" listu a tvoření datového slovníku. Ne úplnou samozřejmostí u podobných nástrojů bývá možnost HTML reportů a konverze datových typů. Software je možné získat jako shareware, avšak s určitým funkčním omezením: je možno uložit pouze model s méně než 6 entitami, a je zakázaná funkce Správce verzí. Každý projekt by měl obsahovat také dokumentaci, aby se i další osoby vyznali v celku. CASE Studio umí vytvořit přehledný HTML dokument, ve kterém se nacházejí informace o tabulkách, jejich atributech, datových typech a slovníku, uložených procedurách, pohledech a triggerech. Tuto dokumentaci musí samozřejmě nejprve někdo napsat, tak mocné, aby ji dokázalo samo vymyslet ještě CASE Studio není, a pravděpodobně asi ani nikdy nebude. Stejně jako dostatečná dokumentace je nezbytná i možnost verzování projektu. Bez správy verzí není v podstatě možná efektivní spolupráce více lidí na jednom projektu. V CASE Studiu2 je zbudováno verzování přímo do programu a není využit žádný externí verzovací systém (SVN, apod.). CASE Studio2 je opravdu slušný nástroj a v menší vývojářské firmě je používán na menší a střední projekty. Jeho hlavními výhodami jsou snadné a přehledné ovládání, využitelnost a také poměr cena/výkon. CASE studio tedy bylo a je bezpochyby výborným nástrojem což nám bylo potvrzeno uživateli naší analyzované společnosti. Verze 25 však byla poslední aktualizací pro registrované uživatele. Dále je distribuováno jako Toad Data Modeler a firma Charon Ware se stala součástí Quest Software. Registrovaní uživatelé si mohou se slevou pořídit nový Toad Data Modeler. A nebo dále používat legálně

CASE Studio 2.25. Vývoj a podpora produktu CASE Studio 2 CZ byly ukončeny k 31. 8. 2007. To ale určitě není překážka pro všechny malé vývojáře, kteří potřebují navrhnout schéma databáze nebo si vymodelovat diagram datových toků své aplikace. Přesně pro ně bylo a je CASE Studio2 určeno. 2.2.1.5 DBDesigner 4 Dalším skvělým nástrojem, který bezpochyby využívá mnoho vývojářů (ať třeba již jen z důvodu že je GPL), je produkt od FabFORCE.net. DBDesigner 4 je jejich zatím poslední (a také jediný) nástroj, který nabízejí zdarma ke stažení na svém webu [10]. Tento program je zaměřen čistě na modelování ERD diagramů. Stejně jako předchozí software disponuje funkcí Reverse Engineering, a to z databázových platforem MySQL, Oracle, SQLite, MSSQL a také pomocí rozhraní ODBC, které možnosti použití ještě dále rozšiřuje. Společnost má zkušenosti pouze s použitím u databáze MySQL, kde fungovalo vše naprosto bezchybně. Nejsilnější stránka DBDesigneru 4 tkví v jeho jednoduchosti a přehlednosti (GPL licenci jsem zmiňoval již v úvodu). Vývojářská společnost potřebujete často rychle a jednoduše, bez nějakého složitého učení se mohutné aplikace, modelovat a ERD diagramy, generovat příslušné skripty nebo je posílat přímo do databáze, generovat HTML a grafické reporty, tvořit jednodušší dotazy, tak je pro DBDesigner 4 přesně to, co potřebují. Jeho další velkou výhodou je, že výsledný ERD model není nic jiného než XML. Tento nástroj využijí jak začínající tak i zkušení programátoři. Lze v něm snadno vytvořit ERD diagram během pár minut, a několika kliknutími spustit výsledný skript na cílové databázi.

2.3 Využití CASE nástrojů pro vývoj v Zope/Plone Zope/Plone je kombinace aplikačního serveru (Zope) a systému pro správu obsahuje CMS (Plone). Tento systém umožňuje vytvářet a spravovat intranetový či extranetový webový portál s možností vývoje vlastních produktů v jazyce Python. Oba produkty jsou open-source. Využití systému Zope/Plone je buď pro webové portály nebo jednodušší informační systém např. helpdesk pro klienty nebo databáze produktů či elektronický obchod. Jednoduchý příklad databáze hudebních CD, která obsahuje informace o jednotlivých interpretech (Artist). S použitím CASE nástrojů ArgoUML nebo Poseidon for UML je možné navrhnout kompletní aplikaci a vytvořený návrh následně importovat jako nový produkt do Zope/Plone. K tomu je zapotřebí nástroj ArchGenXML, který dokáže otevřít datový soubor jmenovaných UML nástrojů a vygenerovat z něj kód v jazyce Python s rozšířením Archetypes. Nutno podotknout, že tento program podporuje pouze diagram tříd a stavový diagram. schema= Schema(( StringField('title', widget=stringwidget( label= Artist name, size=20), ), ImageField('photo', widget=imagewidget( label= Headshot ), ), LinesField('instrument', widget=multiselectionwidget( label= Instruments ), multivalue=1, ), )) Obrázek 6 - ArchGenXML Nově vytvořený produkt potom stačí nainstalovat a můžeme v portálu využívat nový typ objektu Artist. V případě úpravy modelu je nutné opět vygenerovat kód pomocí ArchGenXML a přeinstalovat daný produkt. Při opakovaném volání ArchGenXML dochází k zachování vlastních metod definovaných ve zdrojovém kódu produktu. Výsledek editačního formuláře generovaného objektu typu Artist potom vypadá následovně:

Obrázek 7 Ukázka editačního formuláře v Zope/Plone

3 Závěr Jak je možné vidět, společnost má nakoupeno či používá velké množství aplikací. Je to častý případ právě u společností kde se již delší dobu používá jedna stejná aplikace. V dnešní době rychlého vývoje je přechod na nové aplikace finačně i časově náročný, proto je častá praxe taková, že se koupí nová aplikace a používá se spolu se starou. Přechod na nové programy je pak dost často velice pozvolný. Z našich osobních zkušeností a z této konkrétně provedené analýzy se domníváme, že popsaná situace není v současné době ojedinělá. Je celkem jisté, že jednotlivé dílčí oblasti CASE nástrojů se budou postupně integrovat do komplexních vývojových prostředí, což je možné vidět částečně i na populárních nástrojích typu Visual Studio Tem System od společnosti Microsoft.

4 Zdroje [1] Umbrello UML Modeller, webová stránka produktu http://uml.sourceforge.net [2] Sharan, KDE India, Umbrello http://www.kde.in/index.php/umbrello [3] Wikipedia, Umbrello http://en.wikipedia.org/wiki/umbrello [4] CollabNet Inc., ArgoUML webová stránka produktu http://argouml.tigris.org/ [5] Wikipedia, ArgoUML http://en.wikipedia.org/wiki/argouml [6] Fielden, Tim., Open Source ArgoUML offers unique decision support http://www.javaworld.com/javaworld/jw-04-2000/jw-0428-iw-argouml.html [7] Gentleware, Poseidon for UML webová stránka produktu http://www.gentleware.com/ [8] JSPWiki, Poseidon for UML Community Edition http://jspwiki.org/wiki/poseidonuml [9] Aune, Nate, Developing for Plone using ArchGenXML/ArgoUML http://www.jazkarta.com/presentations/archgenxml-argouml.pdf [10] FabForce.net http://www.fabforce.net