Semestrální práce CASE. aplikací a jejich vazba na CASE. Luboš Harášek;Filip Kroupa;Barbora Matoušková;Petr Pravlovský



Podobné dokumenty
CASE nástroje. Jaroslav Žáček

CASE. Jaroslav Žáček

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

Rozklad na prvočinitele. 3. prosince 2010

ArcGIS Server 10. Řešení pro sdílení geodat

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

IS pro podporu BOZP na FIT ČVUT

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

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

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

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

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

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source

Nástroje pro tvorbu wireframes

Využití CASE nástrojů ve vývojářské firmě

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

1.2 Operační systémy, aplikace

Novinky ve Visual Studio Tomáš Kroupa

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

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

Využití CASE ve vývojářské firmě CASE study + trendy a obecné závěry

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

Semestrální práce 4IT450 CASE

Česká zemědělská univerzita v Praze

Vysoká škola ekonomická v Praze

Compatibility List. GORDIC spol. s r. o. Verze

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

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

Infor Performance management. Jakub Urbášek

UML: Unified Modeling Language

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

O projektu Nasazení OpenOffice.org v praxi

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

PŘÍLOHA C Požadavky na Dokumentaci

Business Intelligence

Nástroje pro vývoj aplikací a jejich vazba na CASE

JIŘÍ ROUN NABÍDKA SPOLUPRÁCE SW DOKUMENTARISTA WEB: MOBIL:

Metadata. MI-DSP 2013/14 RNDr. Ondřej Zýka,

Software Základní pojmy a rozdělení. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1123_Software Základní pojmy a rozdělení_pwp

O projektu OpenOffice.org a IBM OS/2 OS/2 a Open Source

Tabulka Nabídková cena za předmět plnění *uchazeč vyplní cenu za celý kurz nebo cenu za 1 účastníka dle zadávací dokumentace a nabídky uchazeče

Semináˇr Java X J2EE Semináˇr Java X p.1/23

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

PV207. Business Process Management

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

NÁSTROJE PRO VÝVOJ APLIKACÍ A JEJICH VAZBA NA CASE

Cloudové služby kancelářského softwaru hostované společností Microsoft Kvalitní nástroje pro firemní nasazení za přijatelnou cenu Vždy aktuální verze

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

Analýza a Návrh. Analýza

Wonderware Information Server 4.0 Co je nového

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

1 Nástroje pro správu verzí. 1.1 Pojmy:

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

4IT450 CASE - Computer Aided Systems Engineering

MBI - technologická realizace modelu

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

KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování

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

Využití modelovacích nástrojů ve vývojářské firmě

Cloudové služby kancelářského softwaru hostované společností Microsoft Kvalitní nástroje pro firemní nasazení za přijatelnou cenu Vždy aktuální verze

Úvod. Únor Fakulta informačních technologií VUT. Radek Kočí Seminář Java Úvod 1/ 23

Přehled nástrojů CASE na tuzemském trhu v prvním pololetí roku 2006

POUŽITÍ CASE VE VÝVOJÁŘSKÉ FIRMĚ. Zpracovali: Houžvička Jakub Kalina Tomáš Klimko Jozef Kvapil Hynek

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

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Vývoj informačních systémů. Přehled témat a úkolů

Programovací jazyky Přehled a vývoj

Mgr. Jan Folbrecht Senior softwarový inženýr, softwarový architekt, manažer

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

1. Webový server, instalace PHP a MySQL 13

SQL Server Data Tools (SSDT) RNDr. David Gešvindr MVP: Azure MCSE: Data Platform MCSD: Windows Store

TECHNIKY A CASE NÁSTROJE VÝVOJE IS

Olga Rudikova 2. ročník APIN

DOCUMENT MANAGEMENT TOOLKIT

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

1 Webový server, instalace PHP a MySQL 13

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

Project management. Příprava projektu Zahájení High level plánování. Vykonávání Detailní plánování Vykonávání Řízení a monitorování

Vývoj informačních systémů. Přehled témat a úkolů

Návrh softwarových systémů - architektura softwarových systémů

PRODUKTY. Tovek Tools

Architektura softwarových systémů

Technologie Sharepoint

Mobile application developent

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek

1. IT_0F1 Základní obsluha MS Office 2010 MS Word, MS Excel, MS PowerPoint, MS Windows

Integrace podnikových Open Source aplikací v praxi. RNDr. Petr Novák, Open Source Conference Praha, 19. duben 2011

Název nástroje Hodnocená verze nástroje 4.0 Společnost (vlastník nástroje) WWW

Enterprise Mobility Management AirWatch & ios v businessu

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

Cloudové služby kancelářského softwaru hostované společností Microsoft Kvalitní nástroje pro firemní nasazení za přijatelnou cenu Vždy aktuální verze

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP

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

Úvod. Leden Fakulta informačních technologií VUT. Radek Kočí Seminář Java Úvod 1/ 22

PODNIKOVÁ INFORMATIKA

Otevřený katastr (OK)

Analýza a design na reálném projektu. Richard Michalský

Znalostní systém nad ontologií ve formátu Topic Maps

Hlavní rysy produktu MapInfo Professional

Transkript:

Semestrální práce CASE Nástroje pro vývoj aplikací a jejich vazba na CASE Luboš Harášek;Filip Kroupa;Barbora Matoušková;Petr Pravlovský

1. Obsah 1. Obsah... 2 2. Úvod... 4 3. CASE... 6 4. IDE... 9 5. Nástroje CASE... 9 5.1. Enterprise Architect... 10 5.2. PowerDesigner... 14 5.3. MagicDraw... 17 5.4. Altova UModel 2011... 19 5.5. MS Visio... 21 5.6. Visual Paradigm for UML... 22 6. IDE Vývojová prostředí... 23 6.1. Eclipse... 23 6.2. Microsoft Visual Studio... 26 6.3. NetBeans... 28 6.4. Oracle JDeveloper 11g... 30 6.5. Zend Studio... 33 7. Integrace CASE v IDE... 35 8. Trendy z minulých prací... 36 8.1. Trend nezávislosti vývojových prostředí na nástrojích CASE...36 8.2. Trend integrace nástrojů CASE s IDE... 37 8.3. Trend nástrojů CASE rozšiřovat funkcionalitu o modelování podnikových procesů... 37 8.4. Trend CASE jako SaaS... 38 9. Závěr... 38 10. Citovaná literatura... 40

2. Úvod Tento dokument vznikl jako seminární práce pro předmět 4IT450 CASE Computer Aided System Engineering v zimním semestru akademického roku 2010/2011. Práce čerpá, navazuje a snaží se zdokonalit a aktualizovat práce studentů z minulých semestrů. Jak již bylo nastíněno v prezentaci k této práci, poskytneme přehled o nejpoužívanějších IDE a nástrojích CASE. Dále se zaměříme na jejich možnou spolupráci a podíváme se na budoucí vývoj a trendy v tomto odvětví informačních technologií. Semestrální práce je rozdělena na část, kde jsou definovány pojmy vývojové nástroje IDE, nástroje CASE a jaký je mezi nimi vztah. V druhé části jsou popsány nejčastěji využívané nástroje z praktického hlediska ukázáno jejich možné propojení. IDE a CASE a

3. CASE CASE je zkratka anglického termínu Computer Aided System Engineering, což ve volném překladu znamená Počítačem podporované systémové inženýrství. Mluvíme-li o CASE, mluvíme většinou přímo o nástrojích CASE, což jsou komplexní programy, pro podporu vývoje softwaru. A v čem jsou tyto nástroje nápomocny? Obsahují několik různých skupin funkcionalit pro usnadnění konceptuálního návrhu systémů: Podpora sběru požadavků Analytické prostředky Návrhové nástroje Generátory kódů Zpětné vytváření modelů ze zdrojového kódu Návrh obrazovek uživatelského rozhraní Repository Každý nástroj CASE obsahuje/poskytuje jinou kombinaci funkcionalit. To je závislé na specializaci daného nástroje. Některé se specializují na modelování organizačních záležitostí, podnikových procesů atp. To jsou tzv. UPPER CASE nástroje. Další skupina se jmenuje MIDDLE CASE. Tyto nástroje se zaměřují především na modelování systémů. Jsou dobrou pomůckou pro komunikaci s klienty. Skupina LOWER CASE se zaměřuje již na finální kódování, testování a správu programů. Pro úplný výčet jmenujme ještě kategorie PRE CASE a POST CASE. PRE CASE podporuje činnosti, které předchází vývoji, např. tvorba globální strategie organizace. POST CASE podporují činnosti, které následují po samotném vývoji systému, tedy uvedení do provozu, provoz samotný, údržba. Další vlastnost nástrojů CASE je podpora návrhu. Některé nástroje CASE jsou vhodné pro strukturované modelování, jiné pro objektové, další například pro datové modelování.

Většinou nástrojů nemá pouze jednu funkcionalitu, ale jsou komplexnější a nabízejí mnohem více funkcionalit. Takovéto nástroje je možné používat v celém průběhu projektů vývoje informačních systémů. Jejich předností je, že všechny modely jsou provázané, a od počáteční práce na návrhu lze dojít až ke generování části kódu v rámci jednoho modelu. Důsledkem toho je nesporně výhodné zajištění souvislostí napříč celým návrhem. Modelování většinou probíhá pomocí grafických standardizovaných notací. Nejčastější a zároveň asi i nejznámější je notace UML (Unified Modeling Language). Pomocí UML můžeme vytvářet sedm různých digramů, například Class diagramy (diagramy tříd), Use Case diagramy (diagramy užití). Pro modelování business procesů se používá nejčastěji BPMN (Business Process Modeling Notation). Funkcionalita těchto komplexních nástrojů by měla zahrnovat zejména: Správu požadavků Procesní modelování Tvorbu datových a objektových/strukturních modelů Podporu týmové spolupráce (např. repository) Kontrolu konzistence Automatickou tvorbu dokumentace Generování výsledného kódu Možnosti rozšíření Možnosti integrace s dalšími nástroji Nástroje CASE mohou být propojeny s vývojovými prostředími pomocí plug-inů. Vyspělejší vývojová prostředí nabízejí základní funkcionality nástrojů CASE jako svoji standardní součást. To usnadňuje přenos informací (modelů) mezi návrhem a implementací.

Jelikož se budeme v této práci zabývat vazbami nástrojů CASE na vývojová prostředí, zmíníme a vysvětlíme si pojem Round-Trip Engineering. Jedná se o proces, kdy se synchronizují úpravy v jednotlivých modelech s modely ostatními. Analytik zanese nějakou úpravu do modelu na vyšší úrovni a ta se následně promítne do nižších modelů, až se nakonec objeví i v kódu aplikace. Tomuto směru úprav se říká Forward Engineering. Ovšem je zde i druhý směr. Programátor může pozměnit strukturu kódu, nebo jednotlivých objektů a tato úprava se promítne do modelu vyšší úrovně. Tomuto směru se říká Reverse Engineering. Celý proces můžete vidět nastíněný na následujícím obrázku: Obrázek 1: Round-trip Engineering proces

4. IDE IDE je označení pro vývojová prostředí (Integrated Development Environment), která jsou většinou zaměřena na jeden programovací jazyk, nebo skupinu podobných či navzájem se doplňujících jazyků (například Dreamweaver pro webové technologie). Stejně jako u nástrojů CASE, i IDE jsou komplexní programy usnadňující programátorům jejich práci. Součástí IDE bývají zpravidla: Editor zdrojového kódu Kompilátor nebo interpret Debugger Editory kódu pomáhají programátorům při práci tím, že dovedou formátovat text (především barevně odlišovat různé části programového kódu), nabízejí dokončování příkazů, upozorňují na základní syntaktické chyby v reálném čase. Kompilátor převádí programový kód do strojového kódu, se kterým pracuje počítač. Interpret zase představuje běhové prostředí pro program a realizuje příkazy programového kódu. Debugger je nástroj pro vyhledávání chyb a ladění programu. Cílem IDE je zvýšení produktivity a snížení chybovosti programátora. IDE ovšem bývají někdy velice složitá, tak se produktivita zvyšuje až po určitém seznámení se s IDE. 5. Nástroje CASE Nástroje CASE mohou být provozovány samostatně nebo integrovány do IDE. Jejich účelem je podpořit, zpřehlednit a usnadnit vývoj softwaru. Všechny námi testované nástroje disponují podobnou funkcionalitou (vizuální návrh, podpora spolupráce, generování kódu,

dokumentace, reverse engineering, správa požadavků, podpora různých fází životního cyklu vývoje). Nejčastějšími rozdíly bývají podporované operační systémy, cena a uživatelské prostředí. V této práci se detailně zaměříme pouze na Enterprise Architect a PowerDesigner. MagicDraw, Altova Umodel 2011, MS Visio a Visual Paradigm for UML budou popsány jen krátce. 5.1. Enterprise Architect Aktuální verze 8.0.864 od spolecnosti Sparx Systems Modelovací nástroj Enterprise Architect (EA) je nástroj pro návrh a tvorbu softwarových projektů, včetně modelování podnikových procesů. Pokrývá všechny aspekty životního cyklu vývoje, sleduje vývoj od počátečního návrhu, přes deployment, údržbu, testování a sledování změn. Funkcionalita zahrnuje: Modelování založené na UML 2.3 BPMN, BPEL pro modelování podnikových procesů Modelování myšlenkových map Správu požadavků Správu verzí (CVS, SVN) Správu změn Řízení složitosti (diagramy na strategické úrovni, znovu použitelné vzory) Rozsáhlou podporu řízení projektů (zahrnuje zdroje, metriky a testování) Podporu testování (Junit a NUnit)

Sestavování a spouštění skriptů Dokumentaci (HTML, Rich-Text (RTF)) Integrované debugovací prostředí pro Javu,.NET, C++, C a VB Rozšiřitelné modelovací prostředí, ve kterém lze používat uživatelem definované technologie Generování kódu, podpora návrhu kódu pro mnoho programovacích jazyků (ActionScript, Ada, C and C++, C#, Java, Delphi, Verilog, PHP, VHDL, Python, System C, VB.Net, Visual Basic a další) Reverse engineering Generování databázových struktur (DB2, InterBase, Informix, Ingres, MS Access, MySQL, MS SQL Server, Oracle, PostgreSQL, Sybase ASE, ASA, Firebird) Rozšíření pro datové modelování, které umožňují modelování klíčů, triggerů, omezení a dalších vlastností relačních databází Export a import modelů (standard XMI) Nástroje pro podporu architektury řízenou modelem (Model Driven Architecture) Automatizaci (rozhraní pro automatizaci umožňuje např. denně generovat HTML report na lokální intranet) A mnoho dalších Je to velice rychlý nástroj, který načte i velmi velký model během několika sekund. Úložiště je vhodné i pro velké týmy a díky podpoře verzování mohou efektivně spolupracovat i týmy z různých míst na stejném projektu. EA je integrovatelný s Eclipse, Visual Studio, TcSE a k dostání je v šesti verzích: Ultimate, Systems Engineering, Business a Software Engineering,

Corporate, Professional a Desktop. Každá z verzí nabízí podporu pro požadavky různě velkých skupin uživatelů. Běží jen na systémech Windows a Linux. (Sparx Systems, 2010) Obrázek 2: Enterprise Architect - UML class diagram

Obrázek 3: Enterprise Architect - user interface model Obrázek 4: Enterprise Architect - generování kódu, vygeneruje třídy.java

Obrázek 5: Enterprise Architect vývoj 5.2. PowerDesigner Aktuální verze 15.3 vytvořeno společností Sysbase PowerDesigner je profesionální nástroj CASE, 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 metodiky jako je Unified Modeling Language (UML) nebo tříúrovňový návrh databáze. PowerDesigner je nástrojem pro návrh informačních systémů, 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 díky tomu datový analytik vytvářet entity v datovém modelu a sledovat jejich závislost na objektech a třídách 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 nástroje CASE s jednotným uživatelským prostředím se pak odrazí v rychlém a bezproblémovém vývoji. Podporuje také generování kódu v mnoha programovacích jazycích a obsahuje pluginy pro Eclipse, PowerBuilder a Visual Studio Nová funkcionalita ve verzi 15.3 (od 15.1 zpracovávané v poslední práci) Eterprise Architecture Model o Umožňuje nyní komplexní modelování clusterových serverů a virtuálních strojů Větší integrace s MS Office o zejména lepší podpora exportu do MS Excel Větší customizace zobrazení o Např. možnost zobrazit si v modelech kterékoliv atributy v jakémkoliv pořadí Powerdesigner plugin nyní podporuje MS Visual Studio 2010 Podpopra BPMN 2.0 (Business Process Modeling Notation) o Procesní diagramy, diagramy spolupráce, diagramy konverzace atd.

Obrázek 6: PD - Class Diagram Obrázek 7: PD - Organisation Diagram

5.3. MagicDraw Aktuální verze 16.9 od společnosti No Magic, Inc. MagicDraw je modelovací nástroj, pro podporu modelů business procesů, architektury a softwaru. Disponuje i podporou týmové spolupráce. Zahrnuje UML 2.0, BPMN OO návrh systémů a databází generování kódu (Java, C++, C#,.NET, XML a další) reverse engineering Datové modelování Automatické generování reportů (v HTML, PDF, RTF) Tvorbu vlastních diagramů A další Integrovatelné s IntelliJ IDEA, NetBeans, Eclipse, Workbench, CodeGear Jbuilder, IBM RAD. K dostání jsou verze pro Windows, Solaris, OS/2, Linux, Mac OS X a všude, kde je Java 5 nebo 6. A v různých verzích Personal, Standard, Professional, Architect, Enterprise. (What MagicDraw, 2010) Cena: $ 149 - $ 1,599 (dle verze) (Pricing and Licensing, 2010) is

Obrázek 8: MagicDraw - activity diagram, zdroj: http://www.magicdraw.com/images/screenshots/md_uml_screenshot.html Obrázek 9: MagicDraw - Model transformation, zdroj: http://www.magicdraw.com/images/screenshots/model_transformation.html

5.4. Altova UModel 2011 Aktuální verze 2011 od Společnosti Altova Další srovnatelný nástroj pro vizuální návrh aplikací v UML 2.3, generování kódu v Javě, C#, Visual Basicu,.NETu a generování dokumentace. Některé z jejích dalších funkcí jsou: Reverse engineering Data modeling BPMN Round trip engineering (synchronizace modelu a kódu) Podpora spolupráce Znovupoužití kódu XMI export a import Integrace s CVS Integrace do Visual Studia a Eclipse a k dostání pouze na Windows. Altova nabízí dvě verze Enterprise (x86, x64) a Professional (x86). (Altova, 2010) Cena: $ 149 - $ 249 (dle verze) (Altova Pricelist, 2010)

Obrázek 10 - Altova UModel - behavior view, zdroj: http://www.altova.com/images/shots/umodel2011_overview.gif Obrázek 11 - Altova UModel - business process, zdroj: http://www.altova.com/images/shots/umodel2011_overview.gif

5.5. MS Visio Aktuální verze 2010 od společnosti Microsoft Produkt, jehož funkcionalita zahrnuje: Mind maps, organizační schémata UML 2.2 diagramy BMPN SharePoint Workflow template (podpora práce v týmu) Detailní síťové diagramy (Visio Comparison, 2010) Je to asi nejslabší ze zde uvedených nástrojů. Integrovatelný s ostatními MS produkty (Project, Visual Studio, SharePoint Process Repository. K dostání jsou verze Standard, Professional a Premium. Cena: $ 249,99 -$ 999,99 (dle verze) (Visio Buy Page, 2010)

Obrázek 12: MS Visio - network diagram, zdroj: http://www.microsoft.com/presspass/images/features/2008/02-05visiopro_itchart.jpg 5.6. Visual Paradigm for UML Aktuální verze 8.1 od společnosti Visual Paradigm Funkcionalita zahrnuje zejména: Podpora UML 2.0 Generování kódu ve více jak deseti programovacích jazycích Podpora Round-trip engineeringu BPMN Nástroje pro týmovou spolupráci Mind Mapping Možnost textových i zvukových komentářů v grafech

Obrázek 13: Visual Paradigm for UML Visual Paradigm nabízí šest verzí produktu, od komunitní verze pro nekomerční využítí, která je zdarma až po Enterprise Edition za 1399$ 6. IDE Vývojová prostředí 6.1. Eclipse Aktuální verze: Helios 3.6.1 od Eclipse Foundation, Inc. Eclipse je jedna z nejpoužívanějších open-sourcových vývojových platforem. Primárně je určena k programování v jazyce Java. Jedná se o vývojový software, který je multiplatformový a je možné jej provozovat nejen na Windows, ale i pod Linuxem a Mac OS. Obrovskou výhodou tohoto IDE je jeho možná rozšiřitelnost pomocí pluginů, pomocí nichž je možné rozšířit podporované jazyky o PHP, C++ a jiné. Pluginy však nerozšiřují pouze podporované jazyky, ale i další

funkcionalitu, a to zejména možnost používání UML. Základní verze Eclipse balíku zahrnuje pouze nutné komponenty pro vývoj v Javě, tedy kompilátor, debuger, aj. Na webových stránkách Eclipse je však i možnost stáhnout si i další sestavení, které jsou přizpůsobená k použití pro jiné programovací jazyky. Příkladem můžou být balíčky Eclipse IDE for C/C++ Developers, Eclipse for PHP Developers, Eclipse Modeling Tools, atd. Instalace jakékoliv z těchto verzí je velice jednoduchá a spočívá pouze v rozbalení zip archivu. Způsobů, jak rozšířit pomocí pluginů funkcionalitu Eclipse je více. Pluginy se buď nainstalují přímo s instalací jiného software, dále je možné je nakopírovat přímo do specializovaného adresáře, zadat v Eclipse URL, která se má použít pro stažení software nebo instalací přes tzv. Eclipse Marketplace. Marketplace je systém instalace, který je stejný jako u mobilních telefonů Apple či Android nebo při instalaci software v Ubuntu, princip je tedy takový, že postačuje zadat přibližný název pluginu a Eclipse samo tento plugin vyhledá a po potvrzení uživatelem jej nainstaluje. Eclipse samozřejmě podporuje nástroje CASE a zde je jejich částečný výčet1: EMF (Eclipse Modelling Project) - modelovací rámec na generování zdrojového kódu založený na strukturovaném datovém modelu 1 XMI (XML Metadata Interchanger) euml2 UML modelovací nástroj Apolo for Eclipse UML modelovací nástroj Generic Eclipse Modeling System Roundtrip engineering Papyrus UML modelovací nástroj http://tomas.dankovi.info/content/eclipse

Obrázek 14: euml2 Studio v Eclipse Obrázek 15: Papyrus v Eclipse

6.2. Microsoft Visual Studio Aktuální verze: MS Visual Studio 2010 od Microsoft Visual Studio je IDE vývojovým prostředím od společnosti Microsoft, které je nyní ve verzi 2010. VS umožňuje vytvářet jak GUI aplikace, tak také konzolové aplikace pro platformy Microsoft (Windows,.NET, Windows Mobile, MS Silverlight, atd.). Mezi standardně podporované jazyky patří C/C++, VB.NET a C#. V MSVS však existuje funkcionalita zvaná správa jazykových služeb, která umožňuje doinstalovat podporu dalších programovacích jazyků, jako XML/XSLT, HTML, JavaScript, atd. Visual Studio je distribuováno v 5 různých verzích lišícími se podporovanou funkcionalitou a zejména cenou, kterou je možné vidět v tabulce. Obrázek 16: Distribuční varianty MSVS 2010 Nejnovější verze - 2010 oproti předchozím verzím poskytuje nativní CASE funkcionalitu v podobě UML Modeling Tool. K dispozici je zde 5 různých UML diagramů, jako Class, Use Case nebo Activity diagram.

Bohužel z takto vytvořených diagramů není možné automaticky vygenerovat žádné třídy2. Obrázek 17: Možnosti výběru UML Diagramů v MSVS 2010 Obrázek 18: Ukázka UML Class Diagramu v MSVS 2010 Pracovat s třídami v grafickém prostředí, podobném UML je však možné, a to prostřednictvím funkcionality Class Designer 3, která je taktéž 2 http://weblogs.asp.net/gunnarpeipman/archive/2009/11/04/visual-studio-2010uml-modeling-projects.aspx 3 http://msdn.microsoft.com/en-us/library/hyxd8c85.aspx

nativní. Nevýhodou však oproti jiným UML utilitám je skutečnost, že se jedná o formát, který je specifický pro MSVS a není tedy možné jej exportovat do standardizovaného UML formátu a použít v jiných programech. Obrázek 19: Ukázka Class Designeru v MSVS 2010 6.3. NetBeans Aktuální verze: 6.9.1 + 7.0 Beta od Sun Microsystems NetBeans je dalším ze zástupců open source vývojových software. Stejně jako Eclipse je zaměřen zejména na programovací jazyk Java. Ve svém základu však nabízí i podporu jazyků Ruby, C/C++ a PHP. Pro každý z těchto jazyků je možné stáhnout specializovanou distribuci, případně je nabízena kompletní distribuce se všemi komponenty. Open source projekt NetBeans byl založen v roce 2000 společností Sun Microsystems, která je zároveň jeho největším sponzorem. NetBeans jsou převážně vyvíjeny v její

pražské pobočce, je však dalších téměř 100 partnerů, kteří se na financování a vývoji podílí. Netbeans jsou vyvýjeny pro platformy Windows, Linux, Mac OS X a Solaris. Aktuální verze je označena jako NetBeans IDE 6.9.1, avšak k dispozici je nově i vývojová verze IDE 7.0 Beta. Pod pojmem NetBeans se však skrývají dva různé produkty, a to NetBeans IDE, což je vývojové prostředí pro další aplikace a dále NetBeans Platform, což je základní platforma pro vytváření dalších aplikací. Netbeans jsou podobné Eclipse i z pohledu pluginů a jejich možného způsobu získání, tedy pomocí instalace přímo z prostředí Netbeans. V základní instalaci však nejsou přítomny žádné CASE nástroje. Tyto nástroje je možné přidat buď pomocí pluginu vyvíjeného přímo vývojáři NetBeans, tento plugin je však pouze pro verzi NetBeans 6.7. Druhou možností je užití pluginů třetích stran. Základní UML Plugin pro verzi NB 6.7 umožňuje vytvářet čtyři druhy diagramů: Activity, Class, Sequence a State diagram. Podporováno je i reverse engineering. Obrázek 20: Netbeans 6.7 s UML pluginem

6.4. Oracle JDeveloper 11g Aktuální verze 11.1.1.3.0 4 od Oracle Oracle JDeveloper je integrované vývojové prostředí, které je k dostání zdarma. Prostředí poskytuje velice produktivní vývojové prostředí, zjednodušuje vývoj SOA aplikací a uživatelských grafických rozhraní založených na Javě. (Oracle, 2010 i) Podporuje celý životní cyklus vývoje software, což znamená, že pokrývá velké množství technologií užívaných při tvorbě aplikací. Podpora životního cyklu tedy zahrnuje vše od počátečního návrhu a analýzy, přes testovací fáze až po samotný vývoj. Vývojáři mohou navrhovat, generovat a zobrazovat kód v UML, javě a databázových diagramech. Rozhraní k verzovacím, buildovacím a deployment nástrojům umožňují tvorbu balíčků a deployment aplikací. Další funkcionalita zahrnuje podporu pro Javu (SE, EE), Web 2.0, databáze, XML a webových služeb. Vše má stejnou strukturu projektu a způsob vývoje. JDeveloper je vývojovým prostředím pro Oracle Application Development Framework (Oracle ADF), který umožňuje rychlý vývoj aplikací. Framework poskytuje řešení pro různé vrstvy aplikací (jako např. přístup k datům nebo mobilní a desktopové rozhraní) a nabízí funkcionalitu pro zjednodušení vývoje aplikací založených na Oracle ADF. (Oracle, 2009)ii Oracle ADF již však není zdarma. Novou funkcionalitou je Oracle Team Productivity Center, který přidává integrovanou hot-puggable5 aplikaci pro řízení životního cyklu. (Oracle, 2009iii) Součástí Jdeveloperu je i integrace se SVN a CVS. (Duncan, 2007)iv JDeveloper zahrnuje funkcionalitu pro modelování databází, která umožňuje forward a reverse modelování. (Oracle, 2009 v) Další integrované modelovací funkce podporují diagramy tříd, aktivit, sekvencí, případů užití, EJB a Java tříd. Existuje velké množství rozšíření a to jak oficiálních od 4 Ke dni 4.12.2010 Computer component (such as a disk drive, disk controller card, power supply) that can be easily removed and replaced without shutting down the system. Zdroj: http://www.businessdictionary.com/definition/hot-swappable.html 5

společnosti Oracle a jejích partnerů, tak open source. Tímto způsobem se dá přidat mnoho funkcí, např. Jabber/XMPP IM podpora, podpora pro blogging (Blogger 1.0, MetaWeblog a Atom API) nebo tvorba dokumentace. Jako plugin se dá přidat i další UML funkcionalita (SDE for Jdeveloper nebo DBVA for Jdeveloper). Oracle Jdeveloper lze nainstalovat jak na Windows, tak i Linux a Macintosh. V podstatě jsou podporovány všechny platformy s JDK 6. (Oracle, 2010vi) Obrázek 21: Oracle JDeveloper 11g workspace

Obrázek 22: Oracle JDeveloper 11g, build-in UML podpora (class diagram) Obrázek 23: Oracle JDeveloper 11g - Team Productivity Center,

zdroj: http://download.oracle.com/otn_hosted_doc/jdeveloper/111demos/tpc_overview/tpc_over view1.html 6.5. Zend Studio Aktuální verze 8.0.0 od Zend Technologies Ltd. Zend Studio je velice profesionální vývojové prostředí pro PHP. Obsahuje editor refaktoring, kódu s pokročilým generování PHP kódu, formátováním, integraci navigaci se Zend v kódu, Serverem a Frameworkem, pokročilé debuggování, vestastavěnou Mozillu, podporu pro JavaScript, HTML, CSS, XML, PHPUnit testování, databázové a SQL nástroje, podporu pro spolupráci v týmu, podporu pro vzdálené systémy, integraci s VMware Workstation6 a podporuje agilní vývoj. Dále je možné používat CVS nebo SVN, PHPDocumentor pro konzistentní dokumentaci kódu, tasky a to-do seznamy nebo sdílet nastavení projektu s týmem. (Zend, 2010)vii Zend Framework je velice oblíbený framework. Je open source, objektově orientovaný a založený na jednoduchosti. Je zaměřen na tvorbu Web 2.0 aplikací a webových služeb. (Zend, 2010)viii Zend Server je server webových aplikací určen pro běh a správu PHP aplikací, které vyžadují spolehlivost, výkon a bezpečnost. Může být použit pro monitorování spouštění PHP aplikací nebo k sledování kódu.(zend, 2010) Toto IDE je založeno na PHP Developers Tools (PDT) pro Eclipse (populární open source projekt od společnosti Zend) a poskytuje vysoce spolehlivou funkcionalitu, která je vyžadována profesionálními PHP vývojáři. Funkcionalita se dá rozšířit více jak tisícem pluginů, např. Mylyn pro řízení životního cyklu aplikace nebo různé UML nástroje. (Zend, 2010) ix Samotný Zend se dá použít jako plugin do Eclipse. K dispozici jsou balíčky pro Linux, Windows i Mac OS X. Zend Studio i Zend Server jsou placené produkty. 6 VMware Workstation allows one physical machine to run multiple operating systems simultaneously. Zdroj: http://en.wikipedia.org/wiki/vmware_workstation

Obrázek 24: Zend Studio workspace Obrázek 25: Zend Studio - generování dokumentace

Obrázek 26: Zend Studio - vygenerovaná dokumentace 7. Integrace CASE v IDE V této části práce jsme se snažili zjistit, v jakém rozsahu jsou CASE nástroje integrovatelné do IDE prostředí. Integrovatelností je zde na mysli podpora plug-inů, tedy zda plug-in CASE nástroje je možné nainstalovat do IDE prostředí. I když CASE nástrojů je velmi mnoho a IDE prostředí také, v případě integrace jsme se zaměřili pouze na programy popisované v této práci. I z menšího vzorku je však možné vysledovat jisté trendy. Z tabulky níže je patrné, že nejflexibilnějším CASE nástrojem z námi popisovaných je Visual Paradigm for UML. Tento nástroj je podporován všemi vývojovými prostředími z našeho výběru. Zároveň je to jediný nástroj integrovatelný s prostředím JDeveloper 11g a jeden pouze ze dvou pro prostředí NetBeans. Naopak je trochu zarážející, že MS Visio nabízí plug-in pouze pro MS Visual Studio. Je také třeba zmínit, že Zend Studio je založeno na platformě Eclipse a podporuje tedy stejné plug-iny.

IDE Visual Studio Eclipse 2010 Case nástroje Enterprise Architect PowerDesigne r Magic Draw NetBeans 2011 11g Zend Studio * x x x x x x x Altova Umodel Jdeveloper x x x x MS Visio 2010 x x Visual Paradigm for x x x x x UML * Zend Studio je založeno na Eclipse a je schopno používat všechny pluginy pro Eclipse 8. Trendy z minulých prací Dali jsme si za cíl identifikovat trendy naznačené v pracích z minulých semestrů a prozkoumat nakolik se potvrdily nebo zda byly vyvráceny. Nakonec jsme našli čtyři hlavní trendy, které se v několika pracích opakovaly 8.1. Trend nezávislosti vývojových prostředí na nástrojích CASE Tento trend, několikrát zmiňovaný v předchozích pracích se v průběhu let potvrdil. IDE se stávají nezávislejší na nástrojích CASE, protože samy začínají nabízet funkcionalitu na podporu CASE. Příkladem může být Visual Studio od společnosti Microsoft, které nově nabízí možnost tvorby UML diagramů. Tyto vestavěné nástroje však ani zdaleka nedosahují komplexnosti řešení typu PowerDesigner.

Plug-iny instalované do vývojových prostředí by se daly také zmínit v tomto kontextu. Zde ovšem platí, že pro instalaci plug-inu se musí nainstalovat i celý nástroj CASE. Po nainstalování plug-inu již je však možné funkcionalitu nástroje využívat přímo ve vývojovém prostředí. Dá se předpokládat další prohlubování tohoto trendu, protože vlastní CASE funkcionalita podporuje konkurenceschopnost IDE. 8.2. Trend integrace nástrojů CASE s IDE Tento trend je již prakticky prověřen i výše v této práci. Nástroje CASE poskytují plug-iny, kterými se prohlubuje spolupráce mezi CASE a IDE. Lze si všimnout, že od první zmínky o tomto trendu v minulých pracích (zima 2006) se jedna věc nezměnila. Nástroje CASE poskytují většinou možnost integrace pouze pro několik vybraných velkých vývojových prostředí (podle tabulky v kapitole 7 se jedná zejména o Eclipse a Visual Studio). Dochází tak k tomu, že některé IDE není možné propojit s žádným nástrojem CASE. Naopak, některé nástroje CASE se tomuto trendu také vyhýbají a podporu integrace téměř neposkytují například MS Visio. Výjimku tvoří Visual Paradigm for UML. Přestože je možné sledovat mírné zlepšení v této situaci, nedá se očekávat nějaká výraznější změna v tomto trendu. Nástroje CASE budou nadále, pravděpodobně z důvodu pracnosti vytvářených plug-inů, podporovat integraci pouze s největšími IDE, kde se dá očekávat vysoký počet zákazníků. 8.3. Trend nástrojů CASE rozšiřovat funkcionalitu o modelování podnikových procesů. Nástroje CASE se snaží bránit trendu číslo 1 rozšiřováním vlastní funkcionality tak, aby stále bylo výhodné pořídit si takovéto nástroje a nespoléhat pouze na vestavěnou, a značně zjednodušenou, CASE funkcionalitu vývojových prostředí. Hlavní nově integrovanou funkcionalitou je podpora BPMN (Business Process Modeling Notation), což je grafické zobrazení podnikových procesů, které bude srozumitelné všem článkům životního cyklu procesu

(business analytici, techničtí vývojáři, analytici monitorující procesy atd.) a dále podpora Mind Mappingu, tedy tvorby diagramu zachycujícímu slova, obrázky nápady a podobně ve vztahu k centrální myšlence. Tento trend se zcela jistě bude dále rozvíjet. Tak jak se budou rozšiřovat potřeby 8.4. Trend CASE jako SaaS Trend case jako služba se vztahuje k fenoménu cloud computingu, který se mohutně rozšiřuje informatickým světem. Aplikace nainstalovaná v cloudu, ke které je přistupováno prostřednictvím webového prohlížeče. Tento trend byl poprvé nastíněn v práci z jara 2009 a tak je příliš brzy na posouzení jeho případného úspěchu či neúspěchu. Nástroje CASE jako služba zatím trpí značným nedostatkem funkcionality a komplexity. Nabízejí většinou pouze zcela základní modelování UML diagramů. Úspěch tohoto trendu je spojen s úspěchem konceptu cloud computingu, jak se bude vyvíjet dále je k posouzení dalšími týmy v příštích semestrech. 9. Závěr Primárním cílem této semestrální práce bylo ukázat nejčastěji využívané CASE a IDE nástroje určené pro vývoj. Dále jsme uvedli současné trendy v užití těchto nástrojů a jejich budoucí směřování. Zhodnotili jsme také, zda byly správné předpoklady, které byly stanoveny v předchozích semestrálních pracích. Tento cíl jsme splnili a domníváme se, že tato práce může poskytnout čtenářům základní orientaci v této oblasti informačních technologií. Zároveň jsme se snažili podchytit nejdůležitější trendy z minulých prací a zjistit, jak si vedou s časovým odstupem. Zde se ukázalo, že předchozí týmy zpracovávaly práce důkladně, neboť i po několika letech se trendy tehdy naznačené zdají být aktuální. V oblasti informačních technologií byl, je a stále bude velmi rychlý vývoj, a dá se často říci, že co platilo minulý rok, již v současné době není