Nástroje pro vývoj aplikací a jejich vazba na CASE Semestrální práce 4IT450 CASE ZS 2009/2010 Jiří Jakoubek Radek Štěpán Jiří Neumann Miroslav Žebrák Stanislav Chaloupecký Martin Vlčko
Obsah Obsah... 2 Úvod... 3 1. Sledované funkce (návaznosti) IDE nástrojů na CASE... 3 2. Vývojová prostředí (IDE) - popis + porovnání... 6 Visual Studio 2008... 6 SharpDevelop... 12 PSPad... 13 Delphi 2010... 14 Oracle JDeveloper 11g... 17 MS Expression Web 3... 19 Adobe Dreamweaver CS4... 21 Microsoft Visual Web Developer 2010 Beta 2... 22 Zend Studio 7.1... 24 Eclipse IDE... 26 PHP Development Tools... 28 NetBeans... 30 Rapid SQL... 32 RAD Studio 2010... 34 Macromedia HomeSite... 35 HTML Pad 2010... 35 oxygen XML Editor... 37 Altova XML Spy... 39 3. Porovnání (CASE/IDE - vzájemná podpora; IDE/definovaná kritéria)... 41 Zdroje... 42 Seznam obrázků... 44 Seznam tabulek... 45 2
Úvod V této seminární práci si klademe za cíl, seznámit čtenáře s nejrozšířenějšími produkty IDE (Integrated development environment) a jejich vazeb na CASE (Computer Aided System Engineering) nástroje, které jsou koncem roku 2009 na trhu. Nejdříve přiblížíme základní charakteristiky jednotlivých nástrojů na základě vlastního internet research. Poté načrtneme možné vazby (budou-li nějaké) na CASE nástroje a tyto vazby popíšeme u jednotlivých produktů IDE. Na konci práce uvádíme celkové shrnutí do přehledné matice, která umožní rychlé zorientování se v celé problematice. 1. Sledované funkce (návaznosti) IDE nástrojů na CASE Na počátku naší práce jsme předpokládali velký počet nejrůznějších návazností IDE nástrojů na CASE. Při samotném zkoumání jednotlivých produktů jsme však došli spíše k opačnému závěru a to, že existují v podstatě dvě možnosti, jak lze funkce CASE nástrojů integrovat s vývojovými prostředími: 1. Určitá funkcionalita CASE existuje přímo ve vývojovém prostředí a je tedy jeho součástí (např. Eclipse) 2. Vývojový nástroj je do prostředí CASE ve větší či menší míře propojen prostřednictvím tzv. plug-inů či add-inů, přičemž míra propojení určuje možnost využití funkcionality daného CASE nástroje, do kterého plug-in vývojový nástroj propojuje (viz např. Visual Studio 2008 ale i Eclipse atd.) Pokud tedy bylo naším cílem popsat a zároveň porovnat jednotlivá vývojová prostředí mezi sebou, museli jsme přistoupit k určitému zobecnění hodnocených kritérií. Pro popis produtků jsme zavedli závaznou strukturu, ve které uvádíme Název a verzi produktu Základní informace o produktu Platformu, na které je vývojový nástroj postaven Cenu Možnosti vazby na CASE o Vlastní o Plug-iny Jednotlivé body se mohou lišit urovní podrobnosti. Ta se odvíjí jednak od velikosti vývojového nástroje, ale také od pohledu člověka, který dané vlastnosti zkoumá. Jako příklad bych uvedl Visual Studio 2008 a Eclipse. Prvně zmíněný nástroj má možnost vazby na CASE prostřednictvím 5 plug-inů, oproti tomu Eclipse jich zahrnuje přibližně 90. Obecnost porovnání jsme volili podle výsledků zkoumání a také z důvodu zajištění přehlednosti pro potencionálního čntenáře. Za účelem porovnání jsme vytvořili následující seznam sledovaných funkcí: Vlastní CASE funkce 3
U tohoto bodu zjišťujeme, zdali má vývojový nástroj své vlastní integrované nástroje pro modelování a práci s UML diagramy. To znamená, že jsou tyto funkce k dispozici se základní instalací a není potřeba doinstalovávat další rozšíření nebo napojovat na CASE nástroje. CASE plug-iny Forward engineering Forwar engineering je pojem používaný pro generování struktury programového kódu na základě namodelovaných diagramů např. pomocí CASE nástrojů. Reverse engineering Obrázek 1: Forwar engineering Reverse engineering, též označovaný jako "backward engineering" je možnost, jak zahrnout do analýzy či návrhu systému již hotový zdrojový kód. Tato metoda je vhodná právě v případě, kdy máme porozumět již vytvořenému programu. Ze zdrojového kódu dokáže vytvořit obecný model transformovaný do diagramů. Jedná se o formu abstrakce, která je vyžadována při zjednodušení komplexních problémů. 4
Obrázek 2: Reverse engineering Round-trip engineering Je to proces úprav ve vygenerovaném kódu, který nenaruší vazby mezi vygenerovaným kódem a samotným návrhem systému v podobě diagramů. Pokud provede programátor nějakou změnu v kódu, tato změna se automaticky promítne i do diagramu, kde je tato třída modelována a naopak. (Objekty VŠE, 2009) Obrázek 3: Round-trip engineering Tvorba dokumentace o Tvorba dokumentace je jednou z dobrých vlastností CASE nástrojů. Výstupní dokument má nejčastěji formu XML či HTML dokumentů. Při tvorbě dokumentace je klíčovým faktorem její účel, například podklad pro další vývoj nebo testování, proto je kladen důraz na automatickou aktualizaci při změnách a možnost volby výstupních formátů, tím mohou být napčíklad i MS Word nebo Rich Text Format. Tvorba dokumentace by měla být založena na definovaných pravidlech s možností uživatelských šablon. Týmová spolupráce 5
o Vzhledem k tomu, že na většině větších projektů pracuje skupina členů vývojového týmu (přes vývojáře po analytiky), je nanejvýš vhodné, aby CASE nástroj vhodnou formou podporoval možnost jejich spolupráce na projektu. Často se tak děje prostřednictvím podpory správy verzí (implementace repository a subversion) a sdílení rozpracovaných fragmentů. Dále bývá k dispozici podpora kontroly dodržování metodiky (např. zda byly vytvořeny předepsané modely) vývoje a co je důležité, kontrola konzistence vytvářených modelů (autor_neznámý). Úroveň podpory týmové spolupráce se napříč nabídkou CASE liší a není radno při výběru CASE tuto oblast zanedbat. Podpora XMI o Podpora XMI (XML Metadata Interchange) má umožňovat výměnu objektů mezi modelovacími nástroji UML a metadaty MOF (Meta Object Facility) v distribuovaném heterogením prostředí. o XMI definuje standard XML DTD (Document Type Definition), který umožňuje výměnu UML a MOF informací. Rovněž automaticky generuje kód XML DTD pro každý meta-informační model. Verze UML 2. Vývojová prostředí (IDE) - popis + porovnání Visual Studio 2008 Info o produktu Microsoft Visual Studio je vývojové prostředí (IDE) od Microsoftu. Může být použito pro vývoj konzolových aplikací a aplikací s grafickým rozhraním spolu s Windows Forms aplikacemi, webovými stránkami, webovými aplikacemi a webovými službami jak ve strojovém kódu, tak ve spravovaném kódu na platformách Microsoft Windows, Windows Mobile, Windows CE,.NET,.NET Compact Framework a Microsoft Silverlight. Visual Studio obsahuje editor kódu podporující IntelliSense (inteligentní automatický návrh proměnných, funkcí a metod) a refaktorování. Integrovaný debugger pracuje jak na úrovni kódu, tak na úrovni stroje. Další vestavěné nástroje zahrnují designer formulářů pro tvorbu GUI aplikací, designer webu, tříd a databázových schémat. Je možné přidávat rozšíření, což vylepšuje funkčnost na téměř každé úrovni - od přidání podpory pro verzovací systémy (jako Subversion a Visual SourceSafe) do přidání nových nástrojů jako editory a vizuální designery pro jazyky specifické pro obor nebo nástroje pro další aspekty návrhu programu (jako klient Team Foundation Serveru: Team Explorer). Visual Studio podporuje jazyky prostřednictvím jazykových služeb, což umožňuje, aby editor kódu a debugger podporoval jakýkoliv programovací jazyk. Mezi vestavěné jazyky patří C/C++ (použitím Visual C++), VB.NET (použitím Visual Basic.NET) a C# (použitím Visual C#). Podpora dalších jazyků jako Chrome, F#, Python a Ruby spolu s ostatními může být přidána jazykovými službami, které musí být nainstalovány zvlášť. Také je podporováno XML/XSLT, HTML/XHTML, JavaScript a CSS. Existují i verze Visual Studia pro určitý jazyk, které uživateli poskytují omezenější jazykové služby. Tyto individuální balíčky jsou Microsoft Visual Basic, Visual J#, Visual C# a Visual C++. (Wikipedia) 6
Obrázek 4: Visual Studio 2010 Platforma.NET Cena $299 $10 939 v závislosti na typu produktu (Corporation, 2009) Možnosti vazby na CASE: vlastní: Class Designer, Database Designer Extensibility plug-iny: Sparx Systems Enterprise Architect, Altova UModel, i3 Design, IBM Rational Rose, Sybase PowerDesigner Tabulka 1: Přehled podpory definovaných funkcí ve Visual Studiu 2005/2008 Vlastní CASE funkce ANO Tvorba dokumentace ANO CASE Plug-iny ANO Týmová spolupráce ANO Forward engineering ANO Podpora XMI ANO Reverse engineering ANO Verze UML 2.2 Míra splnění kritérií je uvedena u popisu jednotlivých pluginů, přičemž některé nemusí splňovat veškeré funkce sledované v přehledové tabulce. Ta je výsledkem souhrnu funkcí všech pluginů. Jako zdroje informací o jednotlivých pluginech sloužila nápověda, ze které bylo čerpáno po instalaci daného produktu. Dalším použitým zdrojem je (Microsoft, 2009). 7
Visual Studio CASE plug-iny Sparx Systems Enterprise Architect 7.5.850 (EA) je samostatné UML 2.1 modelovací prostředí. MDG (Model Driven Generation) Integration je add-on, který přináší výhody a bohaté modelovací schopnosti EA a UML 2.1 do MS Visual Studia 2005 a 2008. Intuitivní navigace a editace modelu jsou poskytnuty přímo ve vývojovém prostředí Visual Studia prostřednictvím EA Project Explorer. MDG integrace umožňuje generovat.net kód z elementů UML. Dále je zde zahrnuta funkcionalita tvorby webové dokumentace a reportů. Obrázek 5: EA Prohlížeč projektu ve Visual Studiu Vlastnosti Integrace EA a UML 2.1 do MS Visual Studia 2005 a 2008 Navigace a vývoj s využitím modelování UML propojením kódu a příslušného modelu Generování reportů v textovém nebo HTML formátu Sdílení plánu mezi analytiky, architekty a vývojáři Týmová spolupráce na projektu díky zabudovanému diskusnímu fóru Sledování změn Synchronizace FW/REV (C, C++, C#, Delphi, Java, PHP, Python, ActionScript, Visual Basic a VB.NET) (Sparx, 2009) Možnost synchronizace kódu a modelu Synchronizaci lze nastavit ve dvou úrovních. 1. Synchronizace modelu s EA automatická synchronizace nizace celého nebo části modelu v EA do prostředí EA Project Exploreru 8
2. Synchronizace kódu s modelem manuálně/automaticky Obrázek 6: Možnost synchronizace kódu a modelu Altova Altova UModel 2008 Enterprise Edition je sofistikovaný UML nástroj sloužící pro vizuální návrh modelů aplikací a generování programového kódu a projektové dokumentace. UModel 2008 Enterprise Edition Visual Studio integrace umožňuje uživatelům prohlížet a přepínat mezi softwarovým UML modelem a zdrojovým kódem při vývoji aplikací ve Visual Studiu 2005 a 2008. UModel poskytuje praktickou cestu k visuálnímu návrhu aplikačních modelů v UML a je schopný generovat Java, C# nebo Visual Basic.NET kód a projektovou dokumentaci. UModel také umožňuje vývojářům aplikovat reverzní inženýrství tedy existující program převést do UML diagramů, upravit model dokončit round trip opětovným vygenerováním programového kódu. 9
Obrázek 7: Integrace Umodelu do Visual Studia Vlastnosti Využívá UML 2.2 Integrace UModelu do Visual Studia 2005 a 2008 Forward engineering a reverse engineering (Java, C#, Visual Basic) Tvorba dokumentace Obrázek 8: Možnosti funkcí Umodelu (ALTOVA, 2009) 10
i3 Design i3 Design Constructor/MDRAD pomáhá vývojářům vytvářet datově řízené aplikace založené na vizuálních modelech. Jedná se o vývojářský toolkit integrovatelný optimalizovaný pro Visual Studia 2002, 2003, 2005 a 2008. Umožňuje tvorbu modelů tříd z jazyka scratch nebo pomocí reversního inženýrství z existující databáze nebo XML schématu. Object-Oriented Model Driven Development Vlastnosti Přímá integrace do Visual Studia Datově řízené programování Forward engineering Reverse engineering (I3 Design) Obrázek 9: Object-Oriented Model Driven Development Schema IBM Rational Software Corporation Rational byl získán společností IBM v roce 2003 a nyní je jednou z jejich divizí. IBM Rational Rose XDE Developer for Visual Studio je modelovací nástroj který podporuje UML 1.4. Vlastnosti Pouze pro Visual Studio 2005 Forward engineering/reverse engineering (C++, ANSI C++, COBRA, Visual C++, Visual Basic) Založeno na UML 1.4 (IBM, 2009) Sybase Sybase PowerDesigner 12.5 je komplexní nástroj pro modelování a návrh, který pomáhá IT profesionálům implementovat efektivní podnikovou architekturu prostřednictvím širokých analytických a modelovacích technik ve vývojovém cyklu. Pokud je integrován s Visual Studiem, poskytuje bohaté analytické a modelovací techniky včetně UML a generování kódu pro všechny vedoucí RDBMS platformy. PowerDesigner Microsoft Visual Studio Plugin umožní převést modelovací možnosti PowerDesigneru přímo do prostředí Visual Studia 2005, kde lze modely zahrnovat do jednotlivých projektů. Vlastnosti Forward/Reverse engineering UML 2.0 11
SharpDevelop Info o produktu SharpDevelop je open source integrované vývojové prostředí, které je volně šiřitelné pod licencí GPL a slouží k vývoji aplikací v programovacích jazycích C#, Visual Basic.NET a Boo na platformě.net nebo MONO. Usnadňuje psaní, ladění a překlad kódu do výsledných sestavení. Někteří programátoři se rozhodli v rané fázi portovat projekt pod MONO/Gtk#, tento fork se nazývá MonoDevelop, který je multiplatformní Pro kompletaci kódu používá SharpDevelop vlastní C# a VB.NET parser SharpDevelop 1.1 umí převést projekty z Visual Studia do SharpDevelop projektu, až s verzí SharpDevelop 2.0 bylo možné spravovat tyto projekty přímo Obrázek 10: Sharp Develop 3.1 Platforma.NET 12
Cena OpenSource šiřitelný pod licencí GPL (General Public License) Možnosti vazby na CASE: vlastní: nemá plug-iny: SharpDevelop Class Diagram Tabulka 2: Přehled podpory definovaných funkcí v Sharp Develop 3.1 Vlastní CASE funkce NE Tvorba dokumentace NE CASE Plug-iny ANO (1) Týmová spolupráce NE Forward engineering NE Podpora XMI NE Reverse engineering NE Verze UML x SharpDevelop Class Diagram Projekt, který napodobuje Class Diagram MS Visual Studia. Umožňuje celkový pohled na třídy projektu. Od verze 2.0 je už zahrnutý v základní instalaci programu SharpDevelop. Obrázek 11: ClassCanvas SharpDevelop (IC#Code, 2009) PSPad Obecně o produktu PSPad je textový editor určený vývojářům a kodérům webových stránek a aplikací (Fiala, 2009). Základní funkcí editoru je usnadnění psaní strukturovaných textů, chceme-li programového kódu. Nástroj lze využít jako IDE a navázat ho na některý kompilátor zdrojového textu. V PSPadu je možné nastavit zvýrazňování syntaxe mnoha programovacích, 13
značkovacích i dotazovacích jazyků. Do jisté míry pomáhá program s doplňováním kódu a pomocí zvýrazňování a zobrazení stromové struktury dokumentu usnadňuje orientaci v něm. Program podporuje práci v projektech, obsahuje interního FTP klienta, možnost náhledu vytvářených www stránek v prohlížeči a najdeme v něm také množství užitečných utilit, jako například převodník číselných soustav, výpočet šifrovaného řetězce jako výsledek MD4, MD5 či SHA1, komprese HTML atd. PSPad se zdá pro svou jednoduchost, transparentnost a dostupnost být oblíbeným nástrojem pro jednodušší projekty. Platforma Windows Cena Produkt je volně šiřitelný bez licenčního poplatku. Vazba na CASE U nástroje PSPad navázání na CASE nevnímám. Funkcionalita se soustředí obecně řečeno na zpracování strukturovaného textu. Případné doplňky, kterých lze na internetu nalézt veliké množství, podle mého názoru ale také s funkcionalitou CASE nesouvisí. PSPad bývá označován jako pokročilý editor prostého textu a v tomto duchu se vyvíjí i jeho funkcionalita. Tabulka 3: Přehled podpory definovaných funkcí v PSPad Vlastní CASE funkce NE Tvorba dokumentace NE CASE Plug-iny NE Týmová spolupráce NE Forward engineering NE Podpora XMI NE Reverse engineering NE Verze UML x Stupeň naplnění jednotlivých kritérií je vyjádřením mé zkušenosti s produktem. V tomto případě PSPad modelování vůbec nepodporuje. Delphi 2010 Obecně o produktu Dephi je historicky jedním z prvních produktů, které je zvykem označovat jako prostředí RAD (Rapid Application Development). Jádrem prostředí je jazyk Pascal, resp. jeho objektová mutace Object Pascal. První verze byla vypuštěna v roce 1995. O vývoj se starala americká firma Borland až do roku 2008, kdy došlo k odprodání dceřiné společnosti CodeGear, která zastřešovala nástroje pro vývojáře softwaru, společnosti Embarcadero. V současnosti je Delphi robustním vývojovým prostředím (IDE), jejíž poslední verzí je Delphi 2010 (ze srpna 2009) (Wikipedia, 2009). Podle informací publikovaných na webu Embarcadero je Delphi používáno více než 1,7 miliony vývojářů po celém světě (Embarcadero, 2009). Pokusím se nyní zhodnotit zejména možnosti modelování, tedy v souladu s tématem této práce možnosti vazby na CASE. 14
Platforma Windows Cena Tabulka 4: Ceny jednotlivých verzí Delphi (zdroj: (Embarcadero, 2009)) Delphi 2010 Architect Nový uživatel Upgrade Delphi 2010 Enterprise Nový uživatel Upgrade Delphi 2010 Professional Nový uživatel Upgrade Ukázka uživatelského prostředí 3499,- EUR 2299,- EUR 1999,- EUR 1299,- EUR 899,- EUR 399,- EUR Vazba na CASE Obrázek 12: Delphi 2010 (založení nového projektu) Prostředí Delphi podporuje modelování systému nyní samo o sobě, a to ve verzích Architect a Enterprise (viz Tabulka 4). Je tedy přímo možné vytvářet UML diagramy v prostředí IDE a provázat je s vývojovým projektem a zdrojovými texty. Přehled podporovaných diagramů je patrný z následujícího obrázku. 15
Obrázek 13: Dialog vložení nového diagramu Delphi umožňuje modelování v UML verze 1.5 a 2.0, přičemž je zachována důležitá vlastnost CASE nástrojů, a sice forward resp. reverse engineering, tj. generování kódu z diagramu a naopak. V rámci nástroje ER/Studio 8.0 Developer Edition pak lze modelovat databázi. Ještě bych zmínil nástroj ModelMaker Tools, který lze integrovat do IDE Delphi a Visual Studio (ModelMaker Tools, 2009). Tabulka 5: modelovací možnosti Delphi (zdroj: (Embarcadero, 2009)) UML MODELING 16 Architect Enterprise Professional UML Code Visualization at any time, get a UML model X X X view of your source code Enhanced in 2010! Diagrams have an updated look and feel X X X Sequence diagrams X X Collaboration diagrams X X State charts X X Deployment diagrams X X Use case diagrams X X Activity diagrams X X Component diagrams X X Documentation generation X X 80+ Code Metrics that allow for deep understanding and X X static analysis of the health of the object domain Introduced for Delphi Professional in 2010! 10+ X introductory level code Metrics for understanding the health of the object diagram 200+ Code Audits for deep code analysis to better X X understand the coding style and approach Introduced for Delphi Professional in 2010! 10 introductory X level code audits for better code understanding Import model from Rational Rose (mdl import) X Language neutral UML 1.5 modeling X Language neutral UML 2.0 modeling X
Enhanced in 2010! Transformation from language neutral X UML 1.5 and UML 2.0 projects to source code projects Enhanced in 2009! Design Patterns support, including GOF X X patterns New in 2010! Custom design patterns support X X Diagram printing X X X XMI 1.1 Import/Export X X Full two-way class diagrams with synchronization between X X X code and diagrams OCL 2.0 support X X X UML in Color profile X X X Diagram hyper-linking and annotations X X X Tabulka 6: Přehled podpory definovaných funkcí v Delphi 2010 Vlastní CASE funkce ANO Tvorba dokumentace ANO CASE Plug-iny ANO (1) Týmová spolupráce ANO Forward engineering ANO Podpora XMI ANO Reverse engineering ANO Verze UML 2.0 Modelování a míra jeho podpory v Delphi závisí na konkrétní verzi produktu. Údaje v tabulce jsou vztaženy k nejvyšší verzi, Architect. Detailnější popis vlastních CASE funkcí obsahuje Tabulka 5; existence CASE plug-inu pro modelování resp. jejich počet není nikde explicitně vyjídřen, je tedy možné, že jich existuje více. Mně se ovšem podařilo objevit jeden (Zmíněnž ModelMaker Tools. Možnosti týmové spolupráce se mi nepodařilo ověřit pro aktuální verzi, z předešlé práce pro tento předmět vyplývá, že tuto možnost Delphi má. Na základě tabulky 5 hodnotím naplnění zbylých kritérií. Oracle JDeveloper 11g Obecně o produktu JDeveloper je všestranné vývojové prostředí. Je zde patrná koncentrace na tvorbu aplikací v jazyce Java, podporovány jsou i další typy jazyků, jako jsou XML, HTML, PHP, Java Script, SQL, PL/SQL či BPEL (Wikipedia, 2009). Umožňuje tedy tvorbu jak standardních desktop aplikací, tak i aplikací pracujících na principu webových služeb (poskytovaných prostřednictvím aplikačního serveru). Zřejmě je podporována tvorba webových aplikací, ale i databází v komplexním pojetí (Oracle, 2009). Produkt je nepřímo zaměřen na tvorbu aplikací a služeb na platformě Oracle. Přestože je samotné prostředí JDeveloperu dostupné zdarma, zásadní prostředek, se kterým JDeveloper spolupracuje (a který přispívá k efektivitě vývoje aplikací Oracle Application Development Framework (ADF)), je licencovaný. Licenční poplatek je zahrnut v licenci k serverům Oracle WebLogic, při použití na serveru jiného výrobce je třeba uhradit provozní licenci (5800,- USD na procesor nebo 120,- USD na uživatele) (Oracle, 2009). Historie JDeveloperu sahá přibližně do roku 1998, kdy byla vydána první verze (založená na produktu Borland JBuilder). Ta byla přepracována s cílem vytvořit produkt založený na jazyce Java. JDeveloper je navázán na Oracle ADF(Application Development Framework - proprietární framework pro vývoj aplikací), což dohromady tvoří prostředí pro rychlý vývoj ve smyslu RAD. Oracle používá označení "visual and declarative development" (Wikipedia, 2009). Poslední verzí v době psaní této práce je verze 11.1.1.2.0 (11g Release 1Patch Set 1) a 17
pravděpodobně nejvýznamnější změny se týkají UML (podporovaná verze 2.2) a vylepšení frameworku ADF. Bylo také přepracováno uživatelské prostředí JDeveloperu (Oracle, 2009). Platforma Jsou k dispozici balíky určené pro Windows, pro Linux, ale také pro JVM obecně, proto se dá říct, že JDeveloper není závislý na platformě, resp. je možné ho používat na více platformách (Oracle, 2009). Ukázka uživatelského prostředí Obrázek 14: Prostředí JDeveloper 11g (Oracle, 2009)) Cena Samotné IDE je zdarma, ADF framework, pokud je využíván, je licencován ($5800,- USD). Vazba na CASE Modelování je podporováno jak v samotném JDeveloperu, tak formou externího plug-inu. Přímo v JDeveloperu se v souvislosti s UML mluví s tzv. modelery, např. Class Modeler, Use Case Modeler, Activity Modeler, Sequence Modeler. Z pohledu CASE nástrojů pak tradiční přístup získáme dolněním plug-inu (Oracle, 2004). Nejcitovanějším je doplňek společnosti Visual Paradigm, SDE for JDeveloper. Tento nástroj splňuje všechny námi stanovené 18
požadavky na CASE nástroj (většinu již v základní verzi Modeler, například vylepšenou synchronizaci kódu (v reálném čase) až ve verzi Professional) (Hallogram Publishing, 2004). Tabulka 7: Přehled podpory definovaných funkcí v JDeveloper Vlastní CASE funkce ANO Tvorba dokumentace ANO CASE Plug-iny ANO (1+) Týmová spolupráce ANO Forward engineering ANO Podpora XMI ANO Reverse engineering ANO Verze UML 2.2 Výše zmíněné vlastnosti by (vycházím zde z přehledu nových funkcí JDeveloper 11g (Oracle, 2009)) měl JDeveloper mít i bez instalovaného plug-inu, nepodařilo se mi zjistit, do jaké míry JDeveloper podporuje týmovou spolupráci, XMI a generování dokumentace. Tyto funkce zahrnuje ale zmíněný plug-in (Hallogram Publishing, 2004),Proto tabulku jako celek lze chápat jako přehled vazeb na CASE JDeveloperu s nainstalovaným plug-inem SDE. Opět platí, že mnou uváděný počet existujících plug-inů je výsledkem hledání na internetu, nemusí být konečný. MS Expression Web 3 Obecně o produktu Microsoft Expression Web 3 je nástroj pro tvorbu webových dokumentů. Web 3 vychází ze známého editoru FrontPage, který byl součástí MS Office do verze 2003. Základem nástroje Web je stejně jako u jeho předchůdce WYSIWYG editor. Webový editor MS Expression Web 3 podporuje standardy HTML/XHTML, XML/XSLT, CSS, JavaScript či ASPX. Jeho hlavním zaměřením je prostředí ASP.NET, proto je možné vytvářet soubory typické pro ASP.NET jako jsou Master Page, Site Map či Web Configuration. Web 3 podporuje validaci kódu, zvýrazňování syntaxe a další užitečné funkce webových editorů. Web 3 je součástí balíku řešení Microsoft Expression Studio a spolu s nástroji Expression Design či Expression Blend tvoří ucelený nástroj na tvorbu webových stránek. (Microsoft, 2009) Nástroj je koncipován s ohledem na maximální uživatelskou přívětivost. Pracovní plocha je celkem přehledná, tak jak jsme ostatně zvyklí z produktů MS Office. Tlačítka a panely jsou po ruce a přehledně uspořádány, levý sloupec nabízí vlastnosti jednotlivých elementů i stránky samotné. Na druhou stranu, Web 3 nadále generuje inline styly bez ohledu na optimalizaci, vlastnosti stránek nabízí zastaralé konstrukce a validátor stránek počítá pouze s omezenou definicí dokumentů. Nástroj pracuje s technologií SuperPreview, která slouží k testování a prohlížení webových stránek současně v několika webových prohlížečích jako je Internet Explorer 6, IE7, IE8 či Firefox 3. (Němec, 2009) Platforma Microsoft Windows XP Service Pack 2 a vyšší, Windows Vista, Windows 7 (Microsoft, 2009) Ukázka uživatelského prostředí 19
Obrázek 15: MS Expression Web 3 - současné zobrazení zdrojového kódu, (Němec, 2009) Vazba na CASE Obrázek 16: MS Expression Web 3 - vyhledávání a nahrazování řetězců, (Němec, 2009) Podpora standardů: kontrola přístupnosti, kompatibility s IE Tabulka 8: Přehled podpory definovaných funkcí v MS Expression Web 3 Vlastní CASE funkce NE Tvorba dokumentace NE CASE Plug-iny NE Týmová spolupráce NE Forward engineering NE Podpora XMI NE Reverse engineering NE Verze UML x MS Expression Web, na rozdíl od ostatních IDE nástrojů, nepodporuje CASE. Jedniná pozorovaná vazba je podpora standardů při psaní zdrojových kódů webových stránek. 20
Cena MS Expression Web 3 149$ MS Expression Studio 3 599$ (Microsoft, 2009) Adobe Dreamweaver CS4 Obecně o produktu Adobe Dreamweaver CS4 je čtvrtým z řady oblíbených editorů od firmy Adobe. Nástroj slouží především k tvorbě webových stránek, ale není problém využít Dreamweaver CS4 jako nástroj tvorby Rich Internet Applications (RIA). Mezi podporovaná prostředí patří ASP (JavaScript, VBScript,.NET C#,.NET VB), PHP či JSP. Na rozdíl od konkurenčního prostředí MS Expression Web3 podporuje Dreamweaver vývojová prostředí Coldfusion. Editor podporuje formáty HTML/XHTML, XML/XSLT, CSS, JavaScript či ActionScript. (Adobe, 2009) Editor poskytuje výborně propracovanou pracovní plochu. Nabízí osm přednastavených rozvržení editačních oken a palet, se svým uspořádáním, připravených pro práci na dvou monitorech. Pracovní plocha obsahuje palety a nástroje jako property inspector, ale také například zajímavý nástroj related files, který zobrazí všechny externí soubory napojené na momentálně upravovaný soubor, například kaskádové styly, PHP soubory a další. Adobe Dreamweaver nabízí řadu zajímavých rozšíření. Díky nástroji ConnectNow můžete sdílet vaši obrazovku v reálném čase s dalšími lidmi. Zdrojové soubory můžete sdílet pomocí rozšíření subversion. (Němec, 2008) Platforma Microsoft Windows XP Service Pack 2+, Windows Vista, Windows 7, Mac OS X v10 Ukázka uživatelského prostředí Obrázek 17: Adobe Dreamweaver CS4 - pracovní prostředí, (Němec, 2008) 21
Vazba na CASE Obrázek 18: Adobe Dreamweaver CS 4 - rozmanité pracovní nabídky, (Němec, 2008) Podpora standardů: kontrola přístupnosti, kontrola kompatibility s prohlížeči Týmová spolupráce: Subversion, ConnectNow, Reporting Tabulka 9: Přehled podpory definovaných funkcí v Adobe Dreamweaver CS4 Vlastní CASE funkce NE Tvorba dokumentace NE CASE Plug-iny ANO Týmová spolupráce ANO Forward engineering NE Podpora XMI NE Reverse engineering NE Verze UML x Adobe Dramweaver CS4, jako ostatní editory webových stránek, podporuje standardy při psaní zdrojového kódu. Navíc pomocí plug-inů podporuje týmovou spolupráci (ConnectNow) a reporting. Cena Adobe Photoshop CS4 Win CZ Retail s DPH 23 359,- Adobe Creative Suite 4 (CS4) Design Standard Win CZ s DPH 40 221,- (Alza, 2009) Microsoft Visual Web Developer 2010 Beta 2 Obecně o produktu Visual Web Developer 2010 Express je součástí rodiny produktů Microsoft Visual Studio. Web Developer 2010 je nástupcem Visual Developer 2008 a obsahuje mnohá vylepšení a rozšíření původní verze. V projektové nabídce jsou hned dvě nové položky: Windows Azure tools a MS Silverlight application. Nástroj získal také nový grafický nádech, svým stylem tak zapadá do koncepce Windows 7. Obdobně jako Adobe Dreamweaver získal nástroj podporu pro zobrazení na více monitorech. (Microsoft, 2009) 22
Aplikace staví na Frameworku.NET 4 Beta 2. Nástroj podporuje tvorbu HTML/XHTML, XML/XSLT, CSS, JavaScript se zaměřením na platformu ASP.NET. Nástroj nabízí intuitivní prostředí s možností zobrazení v basic, code a expert módu. Nabídka standardních panelů, funkce jako drag and drop či zvýrazňováním syntaxe je samozřejmostí. Nástroj nabízí velká množství nejrůznějších rozšíření. Ta se dají stáhnout přímo prostřednictvím aplikace v nástroji Extension Manager. Rozšíření se řadí do kategorií kontrolních prvků, šablon a nástrojů. Mezi nástroji stojí za zmínění nástroje pro tvorbu dokumentace, modelování, reportingu, týmové spolupráce, testování či kontroly kódu. (Vadgama, 2009) Platforma Microsoft Windows XP Service Pack 2+, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008 (Microsoft, 2009) Ukázka uživatelského prostředí Obrázek 19: MS Visual Web Developer Express - rozložení panelů Obrázek 20: MS Visual Web Developer Express - Extension Manager 23
Vazba na CASE Rozšíření pro: Dokumentaci, Modelování, Reporting, Týmový vývoj, Testování, Kontrolu kódu V době psaní této práce neobsahovaly kategorie žádné existující rozšíření Tabulka 10: Přehled podpory definovaných funkcí v Microsoft Visual Web Developer 2010 Beta 2 Vlastní CASE funkce NE Tvorba dokumentace ANO CASE Plug-iny ANO Týmová spolupráce ANO Forward engineering NE Podpora XMI NE Reverse engineering NE Verze UML x Microsoft Visual Web Developer 2010 Beta 2 je plnohodnotným prostředí pro tvorbu webových aplikací. Produkt podporuje některá vybraná rozšíření pro CASE. Bohužel v době psaní této práce nebyla rozšíření reálně k dispozici. Cena zdarma Zend Studio 7.1 Obecně o produktu Zend Studio 7 je nástrojem pro tvorbu PHP aplikací. Aplikace byla navržena tak, aby vyhovovala PHP 5.3 a podporovala Zend Framework a Server. Nástroj podporuje kompletní vývoj od dokumentů HTML/XHTML, XML/XST/DTD, CSS či JavaScript, až k webovým aplikacím postavených na knihovnách PHP a databázových spojeních. Toto prostředí nabízí pokročilé formátování zdrojového kódu s možností zvýrazňování a doplňování syntaxe, podporu týmové spolupráce založené na SVN či CVS, ladění zdrojového kódu a mnoho dalšího. Zend studio je velmi vyspělým prostředím pro tvorbu aplikací postavených na PHP. Aplikace těží předevěím ze Zend Frameworku, který je mezi vývojáři PHP aplikací velmi rozšířen. Oblíbený je především díky rozsáhlé nabídce PHP kinovem a široké podpoře ze strany uživatelů. Podpora uživatelů činí z frameworku Zend ideální prostředí pro začínající progranátory PHP. Díky rozšířšnosti PHP je Zend Studio ideálním vývojovým prostředím na vývoj webových aplikací. (Zend, 2009) Platforma Windows x86 2000, XP, 2003, Vista (32bit), Linux x86 (32bit), Mac OS X (32bit) (Zend, 2009) Ukázka uživatelského prostředí 24