NÁSTROJE PRO VÝVOJ APLIKACÍ V ZÁVISLOSTI NA PLATFORMĚ A JEJICH VAZBA NA CASE

Rozměr: px
Začít zobrazení ze stránky:

Download "NÁSTROJE PRO VÝVOJ APLIKACÍ V ZÁVISLOSTI NA PLATFORMĚ A JEJICH VAZBA NA CASE"

Transkript

1 Fakulta informatiky a statistiky Informační systémy a technologie NÁSTROJE PRO VÝVOJ APLIKACÍ V ZÁVISLOSTI NA PLATFORMĚ A JEJICH VAZBA NA CASE Členové týmu: 2

2 xname Jméno a příjmení xpucv02 xtump13 xdrad07 xhano06 xsrnm03 Vladimír Pucholt Pavel Tůma Dušan Drábik Ondřej Hanák Srnský Martin 3

3 OBSAH 1 Úvod Cíl práce Charakter práce Přístup ke zpracování práce Definice základních pojmů IDE CASE Platforma Teoretická úvaha o spolupráci IDE a CASE Proč BY IDE a CASE vůbec měly spolupracovat? Tvorba modelu a jeho implementace Prostředek komunikace Jak by měla spolupráce fungovat? Nástroje pro vývoj aplikací v závislosti na platformě Java Netbeans Eclipse Rational Requirements Composer Rational Team Concert NET Framework Architektura.NET Framework Common Language Runtime (CLR) Řízený a neřízený kód Intermediate language (IL) Typový systém (CTS)

4 5.6 Automatická správa paměti Knihovny Události NET Compact Framework Shrnutí Visual Studio Projekty Editace Nástroje Nápověda a dokumentace Visual Studio Express Visual Web Developer Shrnutí Visual Studio a vazba na CASE nástroje Možnosti integrace Visual Studia a CASE nástrojů Visual Studio a UML Visual Studio a vybrané CASE nástroje Microsoft Visio SyBase(SAP) Power Designer Altova UModel Shrnutí Závěr Zdroje

5 1 ÚVOD V dnešní době si již neumíme představit vývoj softwaru bez použití nástrojů. Nástroje používáme od plánování softwaru, návrhu a kreslení diagramů až po programování, testování a kontrolu [BECK, 2003]. S používáním nástrojů je také spojena úspěšnost projektů vývoje softwaru. Má-li být projekt vývoje softwaru úspěšný, nestačí jen nástroj, ale zaleží na mnoha dalších faktorech. 1.1 CÍL PRÁCE Cílem této práce je popsat vybrané nástroje pro vývoj softwarových aplikací v závislosti na platformě. Dalším cílem, který si náš tým vytyčil, je prozkoumat u těchto nástrojů vazbu na CASE. Čtenář se díky této práci seznámí s některými CASE nástroji daných platforem a zjistí, jak se od sebe liší a jakým způsobem napomáhají vývoji softwaru. 1.2 CHARAKTER PRÁCE Práce je rozdělena do několika částí. V úvodu vysvětlujeme základní pojmy důležité pro charakter této práce. 1.3 PŘÍSTUP KE ZPRACOVÁNÍ PRÁCE Při psaní této práce jsme se snažili, aby co nejlépe korespondovala s pracemi již vytvořenými. Vzhledem k tomu, že tyto práce jsou k dispozici na předpokládáme, že čtenář, který čte naši práci, má přístup i k pracím předešlým. Pokud tedy například usoudíme, že nějaký pojem, který by měl být podrobně vysvětlen, už popsán byl, vysvětlíme ho jen velmi stručně a případně odkážeme na některou z minulých prací. Podrobněji bychom se chtěli věnovat především věcem, které zatím příliš vysvětleny nebyly. 6

6 2 DEFINICE ZÁKLADNÍCH POJMŮ Definovat pojmy týkající se dané problematiky není primární cíl této práce, ovšem samotný název naší práce Nástroje pro vývoj aplikací a jejich vazba na CASE v závislosti na platformě obsahuje 3 základní pojmy, které je třeba vymezit. Proto je zde tato kapitola věnována definici důležitých pojmů. 2.1 IDE IDE znamená Integrated Development Environment, což by bylo možné přeložit jako integrované vývojové prostředí. Jednoduše bychom mohli IDE definovat jako software, pomocí kterého lze napsat zdrojový kód mnohem jednoduššeji než pokud je kód psaný v poznámkovém bloku. Podrobnější informace o tom, k čemu všemu lze IDE využít, se objevily například v pracích Nástroje pro vývoj aplikací v závislosti na platformě a jejich vazba na CASE ze zimního semestru 2009 nebo Nástroje pro vývoj aplikací a jejich vazba na CASE z jara CASE CASE neboli Computer Aided Software Engineering jsou nástroje, které mají pomáhat při vývoji aplikací, a to zejména tvorbou různých modelů a UML diagramů. Tvorba modelů je hlavním účelem většiny CASE nástrojů, ale pomoci vývoji aplikací lze i jinými způsoby, což je předvedeno zejména v kapitole týkající se Javy. Opět nebudeme uvádět podrobnější popis toho, co CASE vlastně je, neboť to už mnohokrát bylo řečeno například v obou pracích zmíněných v odstavci IDE, ale také ve spoustě dalších prací, neboť CASE je ústřední téma celého předmětu. 2.3 PLATFORMA Tento pojem nemůžeme přejít pouhým odkazem na předchozí práce. Není to z toho důvodu, že by v předchozích pracích vysvětlen nebyl, ale protože tento pojem lze chápat různě. Wikipedie definuje platformu jako skupinu technických prostředků v informatice a výpočetní technice, které mluvčí (obecně producent softwarových řešení) používá nebo nabízí jako základ pro další vývoj. To ovšem znamená, že platforma může být operační systém nebo například programovací jazyk. Díky těmto rozdílným pojetím jsou předchozí práce na toto téma poměrně pestré a nám se nabízelo mnoho možností, jak je nějak doplnit. Nakonec jsme se zaměřili na platformy Java a.net. Tyto platformy se sice již v předchozích pracích objevily, ale žádná z nich se nezaměřila přímo na tyto dvě, 7

7 proto si myslíme, že přehled IDE a CASE nástrojů srovnaný podle těchto dvou velmi populárních platforem může být přínosný. 3 TEORETICKÁ ÚVAHA O SPOLUPRÁCI IDE A CASE 3.1 PROČ BY IDE A CASE VŮBEC MĚLY SP OLUPRACOVAT? V předchozích pracích se mnohokrát objevily definice CASE, IDE a základní způsoby jejich spolupráce. V žádné z nich jsme však nenarazili na odpověď na otázku proč vůbec spolupracovat? Že je tato spolupráce velmi užitečná, si už uvědomilo jistě mnoho lidí, jak je patrné z toho, kolik CASE a IDE tuto spolupráci podporuje. Tato práce se pokusí předvést, jak může konkrétně funkcionalita CASE nástrojů týkající se modelování pomoci při vývoji aplikací TVORBA MODELU A JEHO IMPLEMENTACE Case nástroje se zabývají především vytvářením různých modelů. IDE se zabývají především tvorbou zdrojového kódu. Vytvoření modelu je práce analytika a jeho implementace práce programátora. CASE nástroje a IDE tedy podporují rozdílné činnosti, které u větších projektů ani nemusí mít na starost jeden člověk. Avšak tyto činnosti spolu velmi úzce souvisí, a proto by měly CASE nástroje a IDE být nějakým způsobem propojeny. Zvlášť u menších projektů může být modelování vnímáno jako něco navíc, něco co zdržuje programátory od toho, aby konečně začali tvořit něco hmatatelného, ne jenom pěkné barevné obrázky. Avšak i aplikace, jejichž naprogramování vypadá poměrně nenáročně, může být nakonec velmi komplikovaná, pokud se začne programovat bez zamyšlení, jak by měla fungovat a jaké funkce obsahovat. K zjištění toho všeho modelování dobře poslouží a pro vývojáře bude jedině dobře, pokud nástroje použité pro vytvoření modelu a pro jeho implementaci nebudou fungovat nezávisle na sobě, ale budou se různými funkcemi podporovat. Důležitost propojení modelu a vývoje aplikace je možno vypozorovat i z různých metodik pro vyvíjení softwaru. V prakticky každé má model své pevné místo. Jako příklad lze uvést třeba metodiku MMDIS [VOŘÍŠEK,1997], která se zabývá vývojem a provozem informačních systémů. Metodika se skládá ze šesti fází: Úvodní studie Globální analýza a návrh 8

8 Detailní analýza a návrh Implementace Zavádění Provoz a údržba Za povšimnutí stojí určitě to, že zde jsou 3 fáze, které se týkají především analýz a vytváření modelů, a teprve poté nastává samotné naťukání kódu v nějakém vývojovém prostředí. Informační systém je samozřejmě velmi specifická aplikace, která svou složitostí mnohonásobně převyšuje jednodušší aplikace, a je zde proto na modelování kladen větší důraz než jinde, ale i u jednodušších aplikací je modelování důležité. Ještě zřetelněji ilustruje důležitost modelu během vývoje aplikace tento obrázek metodiky RUP: [RUP, 2010] 3-1 -Průběh vývoje podle metodiky RUP (zdroj: [RUP, 2010]) Na obrázku jsou znázorněny jednotlivé činnosti, kterými je třeba se během projektu zabývat na svislé ose. Na vodorovné ose jsou potom jednotlivé fáze projektu. Při použití této metodiky probíhá většinou modelování jeho implementace zároveň. To je především díky tzv. iterativnímu vývoji, který se snaží o časté vydávání spustitelných verzí. Samozřejmě, první verze jsou chudé, co se týče funkcionality, důležité je však, že to, co bylo implementováno dobře, funguje. Po vydání verze je 9

9 třeba vytvoření zpřesňujících modelů, jejich implementace a vydání další verze. Vyvíjení softwaru pomocí této metodiky si přímo říká o použití CASE nástroje, který je dobře propojen s vývojovým prostředím. Metodika MMDIS je určena k vývoji informačních systémů, které jsou mnohem složitější, než běžné aplikace a metodika RUP je zas určena spíše k vývoji větších aplikací. Existuje však také spousta lehkých metodik, které se hodí k vývoji menších aplikací. U těchto metodik nebývá tak podrobně popsáno, co přesně v jakém kroku dělat, spíše jsou to jen taková obecná doporučení, jak postupovat během vývoje. Avšak i v těchto lehkých metodikách má modelování své místo, což dokazuje, že není dobré ho zanedbávat ani u vývoje menších aplikací. Například metodika Feature driven development používá doménové objektové modelování, které zahrnuje UML class diagram, který má podchytit nejdůležitější vztahy v budoucí aplikaci. Existuje dokonce metodika nazvaná agilní modelování, která se zabývá přímo tím, jak požívat modely během vývoje malých aplikací tak, aby byly k užitku, a nikoli ke škodě. Při použití této metodiky by mělo během vývoje dosaženo toho, že modely budou jednoduché, jejich tvorba nebude zabírat příliš mnoho času a budou dostatečně podrobné na to, aby ukázaly vše podstatné PROSTŘEDEK KOMUNIKACE U softwaru vyvíjeného na zakázku obvykle programátor nebude aplikaci, kterou vytváří, nikdy používat. Aplikace je vyvíjena pro zákazníka, který daný software potřebuje, avšak obvykle není schopen ho sám naprogramovat. (Pod pojmy programátor a zákazník se v tomto případě nemusí skrývat jedna osoba. Obě strany můžou být také velká mezinárodní společnost.) Potřebuje ale programátorovi nějakým způsobem sdělit, co od něj vlastně potřebuje a jakým způsobem by měla výsledná aplikace fungovat. Programátor zase potřebuje nějakým způsobem komunikovat se zákazníkem, například dodat mu nějaký zpřesňující návrh, nebo pokud si to myslí, sdělit zákazníkovi, že by bylo vhodné přidat další funkce. Je třeba myslet na to, že i když zákazník nedokázal správně nadefinovat funkcionalitu, kterou opravdu potřebuje, je dobré snažit se mu tuto funkcionalitu dodat. Pokud zákazník nedostane to, co potřebuje, může se příště obrátit na někoho jiného, kdo mu dodá užitečnou aplikaci, i pokud nedovede úplně přesně vyjádřit, co vlastně chce. Právě model je dobrým prostředkem komunikace. Ačkoli se zákazník pravděpodobně ve zdrojovém kódu nevyzná, dobře vytvořený model by měl pochopit. Komunikace pomocí modelu v průběhu projektu může být velmi užitečná. Ze začátku může programátor zákazníkovi předvést, jak bude aplikace fungovat před tím, než bude muset vůbec začít s programováním. Je tak daleko větší šance, že zákazník zjistí, že by vlastně chtěl, aby aplikace fungovala trochu jinak, dřív, než budou v projektu utopeny velké finanční 10

10 prostředky. V dalších fázích potom může být pomocí modelu ukázán dopad navrhovaných změn. Také může model posloužit třeba k tomu, aby bylo zákazníkovi vysvětleno, jak vlastně aplikace funguje, a zákazník tak nedostal jen jakousi černou skříňku. Pochopení aplikace může pomoci například tomu, že zákazník bude vědět, jak přesně zadat vstupy, aby nedocházelo k nesprávným výstupům. Pokud byl tedy vytvořen model, který měl demonstrovat nějaký aspekt aplikace, bude jedině dobře, když bude moct být část kódu vytvořena automaticky za pomoci tohoto modelu. Pochopitelně může nastat i opačný případ, kdy část kódu již bude hotova a bude potřeba vytvořit nějaké grafické přehledné vyjádření tohoto kódu. Potřeba komunikace je také mezi jednotlivými programátory projektového týmu. Tady je sice pravděpodobné, že všichni budou rozumět všem částem kódu, ale přesto může být modelování často užitečné. Například při tvorbě nové verze je lepší nejdřív udělat model, který může celý projektový tým prodiskutovat, případně upravit, a až poté ho implementovat, než když budou jednotliví členové týmu své návrhy demonstrovat přímo případnou změnou kódu. Zvlášť pokud bude existovat způsob, jak z modelu části kódu dopsat. Nikdo pak nebude mít pocit, že tvorbou modelu se vlastně nic nevytváří. 11

11 Jako příklad, kdy model může dobře posloužit jako prostředek komunikace, by se dal uvést třeba sequence diagram. 3-2 Sequence diagram (zdroj: [BUS, 2010]) Tento diagram zachycuje, jakým způsobem si jednotlivé objekty mezi sebou vyměňují zprávy. Například diagram nahoře ukazuje zasílání zpráv během přihlašování k webové aplikaci. To, co je zakresleno na tomto diagramu, by šlo vyčíst i ze zdrojového kódu, pokud člověk ovládá programovací jazyk, ve kterém je aplikace napsaná. Naproti tomu tento graf je schopen interpretovat i člověk, který nemá s programováním zkušenosti. Pokud je aplikace vyvíjena pro programování neznalého zákazníka, je možné mu na sekvenčním diagramu poměrně přesně ukázat, jak bude aplikace fungovat. Poté co bude zákazník se sekvenčním diagramem spokojen, lze v případě dobré spolupráce mezi CASE nástrojem a IDE rovnou z tohoto diagramu vytvořit základ kódu, což ušetří spoustu práce. Stejně jako semence diagram, můžou sloužit ke komunikaci i další diagramy. Například use-case diagram při diskuzi nad potřebnou funkcionalitou a jejími případnými změnami. 3.2 JAK BY MĚLA SPOLUPRÁCE FUNGOVAT? 12

12 V předchozí části byly osvětleny důvody, proč by tato spolupráce vůbec měla existovat. Další část se bude zabývat tím, jak může tato spolupráce fungovat. Jak bylo zmíněno dříve, tvorba modelu pomocí CASE nástroje by měla předcházet jeho implementaci v určitém vývojovém prostředí. V ideálním případě, když je model navržen opravdu dobře, stačí programátorovi pouze mechanické přepsání modelu do kódu. Takový ideální případ sice málokdy nastane, ale přesto ve většině případů tráví programátor mnoho času činnostmi, které nevyžadují rozsáhlou myšlenkovou aktivitu, tedy činnostmi, které by mohl klidně zvládnout stroj. Tady je právě prostor pro spolupráci. Pokud bude model vytvořen dobře a podle jistých pravidel, která budou dodržována, mělo by být možné, aby byl tento model nějakým způsobem automaticky převeden do zdrojového kódu. Tento převod může fungovat oboustranně. To znamená, že stejně jako je možno z modelů získat zdrojový kód, tak i ze zdrojového kódu může být získán model. Další příklad ukáže jeden ze způsobů, jak je možno z určitého diagramu získávat kód. Na následujícím obrázku je tzv. class diagram [BUCHALCEVOVÁ,2007+, který zachycuje strukturu tříd v aplikaci a vztahy mezi jednotlivými třídami. 3-3 Ukázaka class diagramu Tento class diagram ukazuje část návrhu aplikace, která bude spravovat účty jednotlivých klientů banky. Vytvoření tohoto diagramu stálo analytiky jistě určité úsilí, které je třeba co nejlépe zužitkovat, což znamená snažit se, aby tento digram pokud možno co nejvíc usnadnil programátorům práci. 13

13 Pokud má CASE nástroj dostatečnou funkcionalitu, je možno získat z tohoto diagramu definice jednotlivých tříd, jejich atributů a jejich metod. Také je možno rovnou vytvořit přístupové metody k jednotlivým atributům. S implementací jednotlivých metod sice už diagram nepomůže, ale důležité je to, že prakticky nebude nutné jednu práci dělat vícekrát. 14

14 4 NÁSTROJE PRO VÝVOJ A PLIKACÍ V ZÁVISLOSTI NA PLATFORMĚ Pro naši práci jsme vybrali dvě nejpoužívanější a nejrozšířenější platformy, Javu a.net. 4.1 JAVA Dle [Java, 2010] je platforma Java počítačová platforma zastřešující různé varianty použití programovacího jazyka. Platforma Java zastřešuje následující dílčí platformy: JavaCard pro aplikace provozované v rámci tzv. chytrých karet (např. platební a kreditní karty atp.), Java ME pro aplikace provozované na mobilních zařízeních (mobilní telefony, PDA, atp.), Java SE aplikace provozované na stolních počítačích, Java EE aplikace pro podnikové a rozsáhlé informační systémy. Jednotlivé dílčí platformy sdílejí společné koncepty, kterými jsou: syntaxe jazyka Java, virtuální stroj Javy Java Virtual Machine (JVM), obdobné API standardních knihoven funkcí. V následujících podkapitolách popisujeme nástroje, které podporují a napomáhají vývoji softwarových aplikací. V Kapitolách a okrajově zmiňujeme nástroje NetBeans a Eclipse, protože již byly více než podrobně zmíněny v pracích předchozích. V kapitolách a popisujeme nástroje IBM řady Rational, protože se jedná o moderní nástroje pro podporu vývoje aplikací, které se dají integrovat s nástroji NetBeans, Eclipse a dalšími. Popis těchto nástrojů vidíme jako velký přínos tohoto dokumentu, jelikož nebyl ještě zpracován či popsán v předchozích pracích NETBEANS NetBeans IDE je bezplatné, open-source vývojové prostředí pro softwarové vývojáře. Vzhledem k tomu, že je kompletně naprogramováno pomocí programovacího jazyka Java, je nezávislé na platformě a lze jej tedy provozovat na mnoha odlišných operačních systémech jako 15

15 Microsoft Windows, Linux, Solaris a MacOS. NetBeans IDE poskytuje vývojářům veškeré nástroje, které potřebují pro tvorbu profesionálních, na platformě nezávislých aplikací. NetBeans jsou vývojovým prostředím pro programovací jazyk Java. Vzhledem k tomu, že je Java rozdělena do tří edic, tj. J2SE, J2ME a J2EE, lze pomocí NetBeans vytvářet aplikace desktopové, enterprise aplikace, webové aplikace či aplikace pro mobilní zařízení. [Pitka, 2007] Níže uvedená ukázka NetBeans, včetně popisu [Pitka, 2007], názorně ukazuje hlavní možnosti a rozmístění komponent v tomto prostředí. Obrázek Hlavní menu aplikace pomocí hlavního menu je možno přistupovat k veškeré funkcionalitě aplikace. Některé nově nainstalované moduly mohou přidat další položky do menu a naopak při odebrání modulu jsou položky menu odebrány. 2. Nástrojová lišta (toolbar) obsahuje volby, které uživatel využívá často. Položky v nástrojové liště je možno libovolně nastavovat pomocí menu View Toolbars. 3. Okno pro práci se soubory okno obsahuje tři záložky: Projects, Files a Runtime. 4. Navigátor 16

16 5. Output 6. Welcome obrazovka tato obrazovka slouží jako počáteční bod při spuštění NetBeans. Obsahuje množství voleb, které můžete po spuštění provést. Okno je rozděleno do následujících částí: 6.1. Skupina Getting started obsahuje odkazy na nejrůznější dokumenty, které mohou pomoci vývojářům v začátcích práce s NetBeans. Také jsou zde odkazy na dokumenty What s new, tedy novou funkcionalitu této verze NetBeans Skupina Sample projects slouží k rychlému vyvolání okna New Project s výběrem tzv. sample projects, tedy vzorových projektů. Jsou uvedeny odkazy na vytvoření vzorové obecné aplikace, webové aplikace, enterprise aplikace, pluginu k NetBeans a odkaz na Java BluePrints Solutions Skupina Articles & News obsahuje aktuální informace týkající se NetBeans. Jsou zde odkazy na nejnovější články na Tato skupina vyžaduje přístup k Internetu, aby mohla načíst informace o článcích Skupina Blogs obsahuje aktuální informace z vybraných blogů týkajících se NetBeans. Opět je vyžadován přístup k Internetu pro načtení informací Zatrhávací tlačítko Show on Startup pokud je zatržené, zobrazí se Welcome obrazovka při každém spuštění NetBeans ECLIPSE Dle [Eclipse, 2010] je Eclipse opensource vývojová platforma, která je pro většinu lidí známa jako vývojové prostředí (IDE) určené pro programování v jazyce Java. Flexibilní návrh této platformy dovoluje rozšířit seznam podporovaných programovacích jazyků za pomoci pluginů, například o C++ nebo PHP. Právě pluginy umožňují toto vývojové prostředí rozšířit například o návrh UML, či zápis HTML nebo XML. Oproti ostatním vývojovým prostředím v Javě, jako například Netbeans, je filozofie Eclipse úzce svázána právě s rozšiřitelností pomocí pluginů. V základní verzi obsahuje Eclipse pouze integrované prostředky pro vývoj standardní Javy jako kompilátor, debugger atd., ale neobsahuje například nástroj pro vizuální návrh grafických uživatelských rozhraní desktopových aplikací nebo aplikační server všechna taková rozšíření je potřeba dodat formou pluginů. Z tohoto důvodu přímo pod křídly Eclipse vznikly takzvané subprojekty, které zastřešují rozšíření pro jednotlivé oblasti softwarového vývoje v Javě. Tyto subprojekty usnadňují integraci potřebných rozšíření do samotného vývojové ho prostředí. Eclipse je v současnosti nejpopulárnější IDE pro Javu. 17

17 Obrázek 4-2 Projekt Eclipse (Eclipse 1.0) vznikl uvolněním kódu IBM pod EPL licencí. Hodnota tohoto příspěvku open source se odhaduje na 40 miliónu dolarů. Pro účely tohoto projektu byl vyvinut grafický frameworkswt. Výhodou SWT je nativní vzhled aplikací na každé platformě, kde je SWT portován (SWT využívá nativního kódu operačního systému). Naproti tomu konkurenční framework Swing využívá pouze služby JVM, což umožňuje lepší portovatelnost (omezenou pouze dostupností Javy pro danou platformu). Eclipse ve verzi 3.0 adaptoval na široce podporovaný standard OSGi R4 (Eclipse project Equinox), čímž získal na atraktivnosti jako vývojová platforma. Technologie balíčků (OSGI bundle ~ Eclipse plugin) umožňuje snadnou rozšířitelnost produktů. Výhodou této architektury je dynamické nahrávání pluginů až v okamžiku potřeby, čímž se minimalizují systémové nároky i čas potřebný pro start aplikace RATIONAL REQUIREMENTS COMPOSER 18

18 Kvalitu projektu určuje úroveň splnění požadavků klienta. Rational requirements composer umožňuje vtáhnout zainteresované strany (zákazníka) tím způsobem, že jsou součástí projektu. Díky tomuto nástroji můžou vývojáři a zákazník vzájemně spolupracovat na definování a ověřování správnosti požadavků. Výstupy pak budou umožňovat přesně to, co si zákazník přeje. Mnoho druhů artefaktů je třeba vyjádřit požadavky v souvisejícím organizačním kontextu a omezeních, tyto artefakty jsou však vytvořeny v různých nástrojích a datových formátech. Může se jednat například o: tabulky, prezentace, grafy, nebo nahrávky z webových konferencí. Rational requirements composer nabízí způsob, jak spojovat tyto "informace", propojovat je s odkazy a atributy. Tento nástroj umožňuje spojit obě zainteresované strany do jednoho týmu. Na obrázku 4-3 vidíme, jakým způsobem se dají vytvářet, editovat a komentovat vytvořené use case a ostatní artefakty. Obrázek 4-3: Initial review of baseline use case (zdroj: [RRC, 2010]) Projektový tým definuje, čeho je potřeba dosáhnout. Rational requirements composer pomáhá týmu se přirozeně pohybovat od nestrukturovaných myšlenek vyjádřených v prezentacích a neoficiálních dokumentech k dokumentům strukturovaným, s přesně definovanými požadavky. Vyjádřenými jako scénáře, případy užití, deklarativní požadavky a pracovní položky. Rational 19

19 requirements composer obsahuje editory pro případy užití, návrhy uživatelského rozhraní a storyboardy 1, procesy, rich text dokumenty, a integrované slovníky. Autoři dokumentů (analytici a další) mají všechny tyto editory k dispozici, s podobnými uživatelskými rozhraními, využívající společné úložiště. Obrázek 4-4: Ukázka dashboardu (zdroj: [RRC, 2010]) Uživatelská rozhraní poskytují způsob, jak vyjádřit uživatelské scénáře intuitivně, stejně jako filmoví producenti využívají storyboardy ke komunikaci. Rational requirements composer používá webový klient, který umožňuje snadný přístup pro zainteresované strany a příležitostným uživatelům prohlížet, hodnotit, komentovat a schvalovat požadavky artefakty a soubory artefaktů. Na obrázku 4-4 je vidět dashboard, který umožňuje uživateli kontrolu nad projekty, v kterých je zainteresován. Dále má přehled o průběhu projektu, průběhu jednotlivých etap a úrovně splnění deklarovaných požadavků MODELOVÁNÍ V RRC 1 Storyboard je sekvence obrázků vytvořená za účelem previzualizace výsledného díla 20

20 Tento nástroj umožňuje modelování různých procesů, diagramů a dalších. Za pomoci BPMN 2.0, či BPEL RRC je tak robustní nástroj, že už není potřeba ho integrovat s nástroji pro modelování, ale pokud je potřeba integrovat z důvodů, které tento nástroj nenabízí, je naproti snadné jej integrovat s jinými nástroji. Především však s nástroji od Rational. Je schopen ke každé činnosti, která je v business procesu znázorněna přiřadit člena týmu, který za ni zodpovídá, a zároveň k této činnosti přidat zdroje a dokumenty, které můžou tomuto pracovníkovi pomoci s vytvářením užitné vlastnosti. Na obrázku 4-5 je vidět diagram s posloupnostmi jednotlivých činností. V případě, že chci k jednotlivým činnostem přidat odkaz na vnější zdroj či chci poukázat na novou skutečnost, můžu použít link, který pracovník uvidí okamžitě, při změně činnosti, za kterou zodpovídá, protože ho systém upozorní em či jinak. Pokud se analytik zodpovědný za modelování rozhodne změnit posloupnost činností, či změní nějakou entitu v diagramu, okamžitě se o ní dozvědí všichni pracovníci, kteří mají tyto činnosti na starosti. Díky archivaci změn jsou schopni nahlédnout do historie a tyto změny vidět. Obrázek 4-5: BPM Mezi další možnosti modelování v Rational Requirements Composer patří například Use Case diagramy. Tento robustní nástroj umožňuje vytvořené modely propojovat s jinými, tak aby byla zachována konzistence v úvodní analytické části projektu. Na obrázku 4-6 je vidět Use case diagram a způsob, jakým je vytvářen. Tím, že se diagramy a modely vytváří přímo v tomto nástroji, není třeba, aby byl někam ukládán a dále vkládán nějakými způsoby do RRC. Modelování mimo tento nástroj by přineslo do projektu větší míru chaotičnosti a menší míru integrace a propojitelnosti jednotlivých komponent mezi sebou. Kdykoliv by se změnily požadavky nebo by si analytik uvědomil chybu, bylo 21

21 by třeba opět vytvářet či předělávat model, diagram v externím nástroji a to by přineslo velké zdržení a komplikace. V případě RRC je možné provést změny bez větších starostí, protože změna se projeví ve všech komponentách napříč celým projektem. Okamžitě budou všichni účastníci informováni a budou schopni si vyhledat předešlou verzi díky správě verzí a sledování změn. Obrázek 4-6: Use case diagram Rational requirements composer umožňuje spolupráci s Rational Team Concert, který si představíme v příští kapitole. Vývojáři a testeři tak mohou využívat podobné vlastnosti, které jim nabízí oba tyto nástroje řady Rational RATIONAL TEAM CONCERT Rational Team Concert (dále RTC) je softwarový nástroj pro týmovou práci na projektech. RTC je vytvořený společností IBM kategorie Rational. První verze RTC 1.0 se objevila na trhu v polovině roku Poslední verzí, která se objevila na trhu v polovině dubna 2010, je RTC

22 Hlavním cílem tohoto nástroje je usnadnit a zefektivnit práci na projektech, kde jsou jednotliví členové týmu geograficky distribuováni a tudíž nemůže probíhat osobní komunikace. Nástroj nabízí možnosti řízení a správy projektu, podporu procesů a aktivit spojených s budováním softwaru. Dále nabízí využívání metodik, umožňuje dodržování stanovených standardů a norem. Velkým přínosem je transparentnost a dohled nad projektem a prací v reálném čase a reporting současného stavu projektu. [RTC, 2010] Při podrobnějším popisu funkcionalit a vlastností vycházíme ze serveru jazz.net [Jazz, 2010]. Rozdělili jsme je tedy do pododstavců, které charakterizují RTC. PŘIZPŮSOBITELNOST PROCESŮ Projekty vývoje softwaru se od sebe velice liší. Způsoby, jak postupovat při vývoji, závisí na mnoha faktorech. Z těchto důvodů není možné nalézt univerzální proces, který by fungoval na všech projektech. Proto je důležité, aby nástroje pro vývoj softwaru umožňovaly konfiguraci a přizpůsobení procesů pro specifické potřeby projektu. [FOWLER, 2009] RTC přizpůsobení a konfigurací procesů dle potřeb projektu umožňuje. Dále umožňuje vytváření, či exportování nových šablon procesů. RTC zlepšuje produktivitu týmů a kvalitu práce (produktů) tím, že umožňuje týmům používání nejlepších praktik obsažených v metodikách. Týmy si tyto praktiky mohou přizpůsobit svým potřebám či vytvořit nové. RTC využívá těchto informací k automatické detekci porušení procesů a praktik ve chvíli, kdy se nedodržují. TÝMOVÉ POVĚDOMÍ V RTC jsou uloženy informace o projektovém týmu, jeho vnitřní organizaci a artefaktech, na kterých pracují. To velice zjednodušuje přístup uživatelů k informacím nebo operacím spojených s týmem. Každý projekt má definované své procesy, v jejichž rámci lze upravovat týmy a jejich práva tak, aby odpovídaly potřebám projektu. Týmová organizace může být spravována buď prostřednictvím webového rozhraní, nebo některého z klientů zobrazených na obrázku 4-2. Pro každý druh projektu jsou předdefinovány určité role, které jsou přiřazovány jednotlivým členům týmu, jak je vidět na obrázku 4-3. Podle potřeby je možné definovat nové role a přidělovat je členům týmu. Při koordinaci práce na projektu je důležité stanovit pracovní prostředí uživatelů. Členové týmu mohou být v různých časových pásmech, proto je důležité nastavit pracovní dobu. Díky tomu se lépe odhaduje a plánuje práce na projektu. 23

23 Obrázek 4-7: Předdefinované role procesu pro OpenUP Dalším přínosem RTC je komunikace mezi členy týmu. Je několik možností, jak může probíhat komunikace v rámci RTC. Členové týmů mezi sebou mohou interaktivně komunikovat nebo si posílat příspěvky a komentovat práci svého kolegy. Klient RTC pro Eclipse nabízí 3 druhy poskytovatele instant messagingu 2 : Google talk, Sametime ve dvou verzích a Jabber. Na obrázku 4-4 je vidět probíhající komunikace. Nespornou výhodou je možnost používání odkazů na pracovní položky (obrázek 4-4). 2 "Instant messaging je internetová služba umožňující svým uživatelům sledovat, kteří jejich přátelé jsou právě připojeni, a dle potřeb jim posílat zprávy, chatovat, přeposílat soubory mezi uživateli a i jinak komunikovat." [PROCHAZKA, 2010] 24

24 Obrázek 4-8: Ukázka komunikace v Eclipse(zdroj: [Team Aware,2010]) SLEDOVÁNÍ PRACOVNÍCH POLOŽEK Pracovní položky jsou základním mechanismem v RTC pro sledování vývoje úkolů a workflow 3. Kromě pracovních položek jsou důležité další vazby mezi RTC artefakty 4 (např. buildy, pracovní položky a změna sestavy) jako poskytování podpory pro integraci s ostatními produkty. RTC umožňuje vytvářet nové typy pracovních položek nebo upravovat stávající typy pracovních položek s cílem podpořit dosažení cílů, na kterých tým pracuje. Na obrázku 4-5 vidíme u každého uživatele stav jeho práce v rámci projektu. Zelená barva znázorňuje, že je vše v pořádku a splněno. Nepřiřazené nové pracovní položky se dají myší přesunout na ukazatel průběhu (progress bar) 5 práce uživatelů a tím je snadno přiřadit. 3 Workflow znamená automatizaci celého podnikového procesu nebo jeho části, během kterého jsou dokumenty, informace, nebo úkoly předávány od jednoho účastníka procesu ke druhému podle sady procedurálních pravidel tak, aby se dosáhlo nebo přispělo k plnění celkových, resp. globálních cílů. Přeloženo z [WfMC, 1996] 4 Artefakt je výstup, který je vytvářen v průběhu procesu vývoje softwaru. *BUCHALCEVOVÁ, Progress bar je prvek, který se používá ke znázornění průběhu déle trvající práce. 25

25 Obrázek 4-9: Přehled odvedené práce v rámci týmu (zdroj: *Team aware,2010+) AGILNÍ PLÁNOVÁNÍ RTC komponenta agilní plánování poskytuje nástroje pro asistenci při plánování a provádění iterací při vývoji. Poskytuje nástroje pro vytváření plánů iterace, vytváření individuálních plánů pro vývojáře, sledování vývoje v průběhu iterace a rozložení práce pro vývojáře. Plány jsou přístupné všem členům týmu a mohou být dynamicky pozměňovány v průběhu iterací tak, aby reflektovaly aktuální potřeby týmů. Plány se v RTC člení podle časových os. V RTC je možné upravit časovou osu dle potřeb projektu nebo definovat svou vlastní osu. Struktura časové osy se liší dle použité metodiky. Na obrázku 4-6 je znázorněna základní časová osa projektu dle metodiky OpenUP. Modrá šipka ukazuje, která fáze projektu je aktuální. Obrázek 4-10: Časová osa projektu dle OpenUP Plán lze vytvořit vzhledem k celému projektu, fázi a iteraci. K tomuto plánu je pak možno přidělit pracovní položky, které se mají vykonat. To napomáhá v přehledu o dění na projektu a jeho 26

26 vývoji. Na obrázku 4-7 je znázorněn plán, ve kterém vidíme pracovní položky každého uživatele, které se mají udělat (To Do), pracovní položky, na kterých se v současnosti pracuje (In Progress) a pracovní položky hotové (Done). Na každý plán se lze dívat pomocí několika pohledů (například podle uživatelů, plánovaného času apod.), které jsou znázorněny v pravé části obrázku 4-7. Obrázek 4-11: Plán iterace (zdroj:*agile Planning,2010+) PLYNULÉ BUILDY Komponenta týmových buildů poskytuje informace o buildech, kontrolu a sledování pro tým (obrázek 4-8). Členové týmu mohou sledovat vývoj buildu, různá upozornění a výsledky aktuálních buildů, vyžadovat a sledovat buildy k dalším artefaktům, jako jsou změny sestav a pracovních položek. 27

27 Obrázek 4-12: Přehled Buildů (zdroj: [Build, 2010]) Dále je možné sledovat, jaké buildy proběhly, kolik obsahovaly pracovních položek a souborů (obrázek 4-9) a další statistiky (Například: Kolik práce odvedli jednotliví uživatelé). S buildy je spojena změna sad (Change sets), díky které je možné ve výsledcích buildů sledovat změny, které proběhly, kolik zahrnovaly pracovních položek apod. (obrázek 4-9). Obrázek 4-13: Souhrn o proběhlém buildu(zdroj: *Build,2010+) TRANSPARENTNOST RTC komponenta týmové reporty a webové dashboardy pomáhá udržet přehled o stavu a zdraví projektu. Dashboardy poskytují přehledný pohled na dotazy na pracovní položky, události 28

28 a další položky důležité pro porozumění vývoje projektu. Například ve formě grafu typu burndown 6, což je graf využívaný v metodice Scrum [LARMAN, 2004]. Na obrázku 4-10 jsou uvedeny příklady možných pohledů (viewlet), což jsou dotazy na používané položky (Například: Pracovní položky), které nám zobrazují různé statistiky pomocí grafů. V tomto případě ukazuje horní graf poměr otevřených pracovních položek k/ke zavřeným a dolní koláčový graf, který ukazuje rozdělení pracovních položek mezi uživatele. Obrázek 4-14: Dashboard(zdroj: [Build,2010]) Reporty poskytují historický i aktuální vývoj buildů, pracovních položek a dalších položek, se kterými tým pracuje. Reporty se dají z RTC vyexportovat, například do formátů PDF, PostScript, Excel, Word a PowerPoint. ADMINISTRACE Jazz team server poskytuje webové uživatelské rozhraní pro nastavení, konfiguraci a administraci serveru. Konfigurace serveru může být pozměněna a uložena autorizovaným 6 Burndown je graf zobrazující množství práce, které zbývá dodělat v rámci aktuální iterace. [COHN, 2004] 29

29 administrátorem webovým prohlížečem v mnoha instancích bez vyžadování restartu serveru. Administrátoři mohou zobrazit klíčové statistiky a podívat se, které žádosti se v současnosti vykonávají. Webové rozhraní také poskytuje možnost jednoduchého nastavení serveru pomocí průvodce, který ukáže nastavení základních konfiguračních nastavení, jako jsou konfigurace databáze, ové upozornění, uživatelské nastavení a LDAP integrace. Tohoto průvodce jsme vyzkoušeli pro rychlé nastavení serveru a práci s RTC. INTEGRACE RTC je možné integrovat také s ostatními produkty řady Rational, jako jsou Rational Quality Manager, Rational ClearQuest a Rational ClearCase. Integrace s Rational Quality Manager a Rational ClearQuest je součástí aplikace pro spolupráci a řízení životního cyklu (C/ALM), které obsahuje také Rational Requirements Composer. Dále spolupracuje s produkty řady IBM Lotus (Například: IBM Lotus quickr, IBM Lotus notes a IBM Lotus Connection). Celý seznam produktů, které se s RTC dají integrovat nebo s ním spolupracují je dostupný na webových stránkách jazz.net. [Integrations, 2010] WEBOVÝ KLIENT Jednou z možností, jak se připojit k RTC, je webový klient, který nabízí mnoho možností práce s projekty, od vytváření projektu až po práci s pracovními položkami. Webový klient umožňuje konfiguraci serveru (nastavení ukládání souborů, možnost nastavení SMTP serveru po zasílání zpráv a další), správu uživatelů, projektů a šablon procesů, zobrazování statistik a grafů formou dashboardů a reportů. Tyto možnosti jsou spojené pouze s právy administrátora, který může přes webové rozhraní vytvořit projekt, týmy, uživatele, pracovní položky, nastavit oprávnění, přidělit role a další možnosti, jejichž popsání se věnují scénáře případů užití pro webového klienta (kapitola 3). Administrátorem vytvořený uživatel může také přistupovat k RTC přes webové rozhraní, má však omezené možnosti dle nastavených práv a licencí pro přístup. ECLIPSE KLIENT Pro vývojáře je nástroj Eclipse jednou z možností, jak spolupracovat na projektu pomocí RTC. Mezi další nástroje, se kterými RTC spolupracuje přes klienta, patří například Visual Studio. Pokud uživatel (vývojář) nástroj Eclipse již vlastní, je možné klienta doinstalovat. V případě, že Eclipse nevlastní, je možné si jej nainstalovat s už integrovaným klientem. 30

30 Klient vkládá do nástroje Eclipse nové funkcionality, které umožňují pracovat týmově v reálném čase na projektu. Na obrázku 4-11 (vlevo: nástroj Eclipse s klientem RTC; vpravo: nástroj Eclipse bez klienta RTC) je vidět, že klient RTC nabízí více možností pro teamovou spolupráci. Například hlídání změn, připojení k úložišti, týmovou organizaci, týmové artefakty a další možnosti, které klasický Eclipse neobsahuje. Obrázek 4-15: Rozdíly nástroje Eclipse s klientem a bez klienta čeho POHLED TEAM ARTIFACTS Pomocí tohoto pohledu, či záložky je možné sledovat všechny artefakty, které souvisejí s projektem, na kterém tým vývojářů pracuje. Nacházejí se zde projekty, ke kterým je uživatel připojen, dále pracovní plocha (Repository workspace), týmové oblasti uživatele (My team areas), jeho pracovní položky a dále (Obrázek 4-12). 31

31 Obrázek 4-16: Team artifacts V tomto pohledu je možné vytvářet nové plány, pracovní položky, přiřazovat je uživatelům a dotazovat se na ně. POHLED PENDING CHANGES Tento pohled je spojen se změnou sestav (Change sets), který poskytuje informace o uskutečněných změnách. Obrázek 4-13 ukazuje změnu ve tříde Class.java. Uživatel tuto změnu může okomentovat, přijmout, odmítnout či sdílet. Obrázek 4-17: Změna zdrojové kódu ZÁLOŽKA WORK ITEMS Záložka work items zobrazuje pracovní položky, které jsou výsledkem dotazu. Obrázek 4-14 ukazuje výsledek dotazu, které pracovní položky jsou otevřené a určené přihlášenému uživateli. Jednotlivé atributy (ID, Stav, Souhrn, Vlastník a další) pracovních položek se dají přidat či naopak odstranit podle potřeby. Uživatel může například zobrazit, do jaké části plánu pracovní položka patří. 32

32 Obrázek 4-18: Záložka Work Item 33

33 5.NET FRAMEWORK 5.1 ARCHITEKTURA.NET FRAMEWORK V současné době představuje.net Framework základ pro vývoj aplikací pro platformu Windows. Tvoří jej, kromě velkého množství knihoven, kompletní běhové prostředí pro spouštění a provoz aplikací. Framework poskytuje objektově orientované nástroje pro vývoj moderních, uživatelsky orientovaných aplikací.[wikipedie, 2010] Integrované knihovny umožňují programátorům odklonit se od řešení stále stejných rutinních činností a zaměřit se na funkčnost svých výtvorů. Prostředí pro běh kódu si samo spravuje paměť, je typově bezpečné a snaží se eliminovat rozdíly mezi vývojem aplikací pracujících lokálně a třeba webových služeb.[šimeček, Obrázek Architektura.NET Framework Dvě velmi podstatné součásti jádra jsou CLR (neboli Common Language Runtime) a BCL (Base Class Library). *Šimeček,

34 5.2 COMMON LANGUAGE RUNTIME (CLR) CLR je základní běhové prostředí pro spouštění řízeného kódu. Implementuje centrální typový systém a kompletně se stará o běh programu. Mezi službami, které obsahuje, jsou: automatická správa paměti (Garbage Collector), podsystém výjimek reagujících na chyby a pády, integrace s Win32 a COM, JIT kompilace, podpora 64bitové architektury atp. 5.3 ŘÍZENÝ A NEŘÍZENÝ KÓD V textu se často vyskytuje pojem řízený kód (managed code). Jedná se o zdrojový kód napsaný ve vyšším jazyce (C#, VB.NET, C++ ) a následně zkompilovaný do binárního formátu (ve formě tzv. sestavení, anglicky assembly), který zpracovává CLR. Takový kód těží z vlastností rozhraní.net Framework, protože není nutné programátorsky dále řešit správu paměti nebo například typovou bezpečnost. Opakem je pak kód neřízený (unmanaged code). (Wikimedia Foundation, 2010) 5.4 INTERMEDIATE LANGUAGE (IL) IL (celým názvem Common Intermediate Language CIL, dříve známý jako MSIL) je jazyk nezávislý na procesoru a platformě, do kterého jsou kompilovány všechny řízené jazyky. CLR při spuštění programu vezme metadata vytvořená překladačem, vyhodnotí je, vytáhne z nich IL kód a spustí jej. Nikoliv přímo, ale po tzv. JIT (Just In Time právě včas) kompilaci do nativního kódu architektury. Název JIT vychází z toho, že kompilace probíhá za běhu, až ve chvíli, kdy je kód vyžadován. Zároveň je zaručen překlad do instrukční sady stroje, na kterém běží. *Šimeček, TYPOVÝ SYSTÉM (CTS) V rámci CLR se jakýkoliv kód spouští v rámci pevně daného typového standardu Common Type System (CTS). Ten představuje rozhraní mezi řízeným kódem a samotným běhovým prostředím. Navíc předkládá sadu pravidel, která musí kód splňovat, aby byl označen za typově bezpečný (a jako takový vyhýbající se problémům s pamětí). Díky CLR pak nezáleží na konkrétním jazyku, podstatné je, že jakýkoliv kód je kompilován do stejné sady konstruktů. CLR je silně typové prostředí. Bez ohledu na to, v jakém jazyce je program tvořen, zda je statický (C#, Java, Haskell, F# apod.) či dynamický (VB, Python, Perl, Ruby a další), překladač si nakonec vždy musí poradit s datovými typy na nejnižší úrovni. Všechny typy v.net jsou objektové. Základem je třída System.Object. *Šimeček, AUTOMATICKÁ SPRÁVA PAMĚTI 35

35 .NET obsahuje podsystém Garbage Collector, který se stará o správu paměti programu a snaží se chytře získávat volné místo. Pokud na objekt neexistují žádné aktivní reference, GC rozhodne, že je bezpečné jej odstranit, provede to a v druhé fázi paměťovou haldu zkompaktní (po uvolněných objektech totiž zůstalo nežádoucí prázdné místo uvnitř haldy). (Wikimedia Foundation, 2010) 5.7 KNIHOVNY Posunem od Win32 vzniklo.net API. Tvoří jej sada základních knihoven Base Class Library (BCL), které obsahují např. třídy pro práci s kolekcemi, vstupy a výstupy, síťováním apod. Zároveň představují základ pro další nadstavby. Mezi ty patří knihovny pro práci s daty (ADO.NET), zpracování XML dokumentů nebo formuláře (Windows Forms). Od verze 3.0 jsou součástí také: [MCorp, 2010] Windows Presentation Foundation (WPF) pro vývoj uživatelského rozhraní, Windows Communication Foundation (WCF) coby unifikovaný komunikační model mezi programovacími rozhraními, Workflow Foundation (WF) pro komplexní správu vývoje včetně oddělení aplikační prezentační vrstvy, Windows CardSpace ke správě identit na webu. 5.8 UDÁLOSTI Většina.NET aplikací je řízená událostmi (event-driven) aplikace tráví čas čekáním na události, které by mohla zpracovat. Může to být vykreslení okna ve Windows Forms nebo třeba načtení stránky v ASP.NET. Na rozdíl od procedurálních aplikací je posloupnost kódu určována až za chodu. *Šimeček, NET COMPACT FRAMEWORK Compact Framework je prostředí nezávislé na hardware, které umožňuje běh řízených aplikací na zařízeních s omezenými zdroji. [MCorp, 2010] Jedná se o podmnožinu rozhraní.net Framework, kde každá aplikace běží uvnitř vlastní aplikační domény a spouští vlastní instanci CLR. Framework zajišťuje, že všechny využité zdroje se po ukončení aplikace uvolní. Technologie je optimalizována tak, že v případě nedostatku paměti odstraňuje datové struktury nepoužívané právě běžícím programem. Pokud ani to nestačí, čistě aplikaci ukončí a uvolní všechny 36

36 zdroje nikdy by se tak nemělo stát, že Compact Framework spadne kvůli nedostatku paměti. *Šimeček, SHRNUTÍ Hlavní silou technologie.net je nezávislost na programovacím jazyce. Protože všechny řízené programy jsou překládány pro CLR do IL, mohou být zdrojové kódy jedné aplikace tvořeny různými jazyky není problém zvolit pro konkrétní úlohu jazyk, který nejvíce vyhovuje. Díky Garbage Collectoru také odpadají starosti o paměť. Destruktory sice existují, ale není třeba je volat přímo. *Šimeček, Architektura.NET tak programátorům dává do ruky mocný nástroj, jak rychle a efektivně vytvářet plnohodnotné aplikace. 37

37 6 VISUAL STUDIO První pokus společnosti Microsoft o vytvoření jednotného prostředí pro vývoj aplikací se objevil v roce 1997, ale až v roce 2002 (spolu s uvedením technologie.net) vyšlo Visual Studio.NET předek dnešního komplexního IDE. Obrázek Úvodní obrazovka MS Visual Studio 2008 V současné době Visual Studio pokrývá a zjednodušuje celý proces vývoje softwaru od návrhu až po nasazení. Obsahuje pokročilé nástroje pro testování, tvorbu prototypů, ladění, automatizaci apod. [Microsoft, 2010] 6.1 PROJEKTY Základem každého projektu ve Visual Studiu je soubor řešení (solution) s příponou SLN, který obsahuje informace o projektech a další konfigurační volby. Jednotlivé projekty jsou pak soubory XML s informacemi o sestavení, soubory se zdrojovým kódem a případné další zdroje (obrázky, databáze ). Výstupem řešení může být jedna nebo několik aplikací (popřípadě knihoven). 38

38 Obrázek Solution Explorer Z hlediska kompatibility platí, že projekt vytvořený ve starší verzi Visual Studia lze otevřít v novější, ale nikoliv naopak. [Šimeček, 2010] 6.2 EDITACE Prostředí poskytuje vše, co vývojář potřebuje pro tvorbu aplikací a je možné jej velmi rozsáhle přizpůsobovat. Ve vizuálním editoru lze mimo jiné tvořit aplikace Windows Forms, WPF, Silverlight, ASP.NET, vlastní ovládací prvky a další Je k dispozici panel s komponentami, z něhož lze přetahovat prvky, z kterých se aplikace sestavuje. Visual Studio automaticky na pozadí generuje patřičný kód. V editoru kódu se upravují soubory se zdrojovým kódem všech možných typů. Obarvování syntaxe a napovídání názvů funguje inteligentně v závislosti na právě otevřeném kódu C#, Visual Basic.NET nebo třeba soubory XML mají svá specifická klíčová slova a elementy. Kromě toho obsahuje Visual Studio spoustu drobných vylepšení pro zápis programů, která vývojářům zjednodušují život. [Šimeček, 2010] 39

39 Obrázek Editor kódu 6.3 NÁSTROJE K odstraňování logických chyb, které se nedají odchytit při kompilaci, slouží integrovaný debugger. Můžeme nastavit zastavení programu v konkrétním místě, krokovat jej, prohlížet aktuální obsah paměti a paměťových registrů, měnit hodnoty proměnných, sledovat průběh volání atd. Obrázek Vložený breakpoint v editoru kódu V nejnovější verzi (2010) byla značně zjednodušena instalace rozšíření vytvořených třetími stranami. Visual Studio obsahuje nástroj Extension Manager, který se připojuje na online galerii rozšíření a umožňuje z ní doplňky přímo stahovat. Všechny pluginy musí projít schválením společnosti Microsoft, než se v repositáři objeví. [Šimeček, 2010] 40

40 6.4 NÁPOVĚDA A DOKUMENTACE Spolu s celým prostředím je možné nainstalovat knihovnu MSDN. Zkratka MSDN znamená Microsoft Developer Network a neoznačuje tedy jenom knihovny nápovědy pro Visual Studio, ale také snahu společnosti Microsoft vycházet vstříc programátorům a testerům při řešení potíží či sebevzdělávání. [Wikipedia, 2010] Obrázek Nápověda MSDN 41

41 6.5 VISUAL STUDIO EXPRESS Visual Studio Express je zvláštní edice vývojářského IDE, která je na rozdíl od Visual Studia k dispozici zdarma. Jednotlivými produkty jsou Visual Basic Express, Visual C# Express, Visual C++ Express, Visual Web Developer Express a SQL Server Express. 42

42 Oproti plnému Visual Studiu chybí následující součásti: [MCorp, 2010] oficiální dokumentace na MSDN, podpora rozšiřitelnosti (add-inů, maker, průvodců ), nástroj Dotfuscator pro ztížení dekompilace kódu, nástroj Spy++ pro sledování procesů, oken, vláken a zpráv systému, integrace Team Exploreru pro použití s Team Serverem, nástroj Class Designer, pokročilý refaktoring, pokročilé nástroje pro ladění, podpora vývoje pro mobilní zařízení (Windows Mobile), nástroj Server Explorer, vývoj pro Office, nástroje pro testování jednotek. Obrázek Visual C# 2010 Express 43

43 6.6 VISUAL WEB DEVELOPER Tento produkt je obdobou projektu typu webové aplikace ASP.NET, který obsahuje Visual Studio. Slouží tedy k tvorbě aplikací ASP.NET a umožňuje stránky vytvářet jak pomocí vizuálního návrháře, tak psaním směsi HTML a ASP.NET kódu. Zároveň se dají editovat soubory s kódem na pozadí (v jazycích Visual Basic nebo C#). Základem je vývoj pro ASP.NET 3.5, ale nechybí možnost aplikaci zacílit na konkrétní nižší verzi. Součástí nástroje je také integrovaný webový server, na kterém se dá právě tvořená aplikace přímo testovat bez nutnosti mít aktivní IIS (nebo jiný plnohodnotný webový server). [Šimeček, 2010] Obrázek Visual Web Developer 2010 Express 6.7 SHRNUTÍ Visual Studio je univerzální nástroj, který pokryje kompletní vývoj softwarového produktu. Prostředí je vybaveno spoustou detailů, které nenápadně zpříjemňují práci. Při práci s jinými IDE pak člověk tyto drobné funkčnosti velice rychle začne postrádat. 44

44 Samozřejmě je vhodnější pro specifické úkoly, jako například návrh rozhraní v jazyce XAML, použít nástroje pro ně určené. Nad rozhraním.net Framework ovšem mnoho takových úkolů neexistuje. [Šimeček, 2010] 7 VISUAL STUDIO A VAZBA NA CASE NÁSTROJE V současnosti je již v podstatě nezbytností každého vývojového prostředí, aby podporoval integraci s modelovacími nástroji. Nejinak je tomu v případě Visual Studia, které poskytuje možnost integrace s většinou běžně používaných CASE nástrojů na trhu. To umožňuje analytikům a vývojářům zefektivnit celý proces návrhu informačního systému a zajistit konzistenci návrhu a výsledného řešení. Kvalitní nástroje CASE dnes nabízí kompletní funkcionalitu k podpoře tohoto procesu. Její analýzou se již zabývalo mnoho prací na toto téma, a proto nemá smysl zde vše uvádět znovu. Pro přehlednost uveďme alespoň výčet jednotlivých funkcí: tvorba konceptuálního a fyzického datového modelu objektové modelování procesní modelování kontrolní mechanismy porovnávání modelů generování výsledného zdrojového kódu podpora spolupráce při vývoji automatická tvorba dokumentace reengineering podpora návrhu vícerozměrných schémat vytváření datových slovníků podpora životního cyklu návrhu správa požadavků 7.1 MOŽNOSTI INTEGRACE VISUAL STUDIA A CASE NÁSTROJŮ Visual Studio, jakožto hlavní IDE pro platformu.net samozřejmě podporuje možnost integrace s drtivou většinou běžně dostupných CASE nástrojů. Existuje několik možností, jak integraci provést. 45

45 První z nich je nainstalování rozšiřujícího modulu přímo do Visual Studia. Tento model integrace je využíván hlavně v případě robustních nástrojů. Uživatel pak může vytvářet vybrané modely přímo v rámci Studia a tyto modely jsou pak automaticky synchronizovány s navrhovaným kódem a podobně. Využití této možnosti ilustrují následující obrázky ukazující propojení Visual Studia a Power Designeru: Obrázek Vytvoření modelu k již existujícímu projektu. Zdroj: *Sybase,

46 Obrázek Vytvoření nového PD modelu přímo v prostředí MS Visual Studia. Zdroj: [Sybase, 2010] Další možností je vytvoření modelů přímo v CASE nástroji a jejich následné manuální nahrání do IDE. Hlavní problém této varianty, časté především u méně komplexních nástrojů, je nutná manuální synchronizace a problematická a často nemožná zpětná úprava modelů podle již existujícího kódu (reengeneering). 7.2 VISUAL STUDIO A UML Pro vývojáře a analytiky, kterým pro potřeby analýzy a návrhu informačního systému stačí pouze základní modely zahrnuté v rámci notace UML, nabízí Visual Studio od verze 2010 ještě jednu možnost, a sice přímou podporu zmíněných modelů. Vývojáři a analytici tak mají možnost vytvářet UML modely přímo v prostředí Visual Studia. Bohužel se nejedná o plnou podporu specifikace UML 2.0, která jak známo definuje 13 diagramů. Aktuální verze Visual Studia podporuje následujících pět: Activity diagram Component diagram Class diagram Sequence diagram Use case diagram V novém Visual Studiu bude možné generovat jak diagramy z existujícího kódu (reverse engineering), tak kód z diagramů (Code Generation). Nejedná se však o takzvaný Round-trip engineering, který spočívá v tom, že kód a příslušné diagramy jsou konzistentní. Čili změny v jednom se neustále 47

47 promítají do druhého. Toto nebylo záměrem Microsoft vývojářů a Reverse Engineering i Code Generation jsou spíše jednorázovou záležitostí. *Šťastný, 2010] Z výše zmíněného je jasné, že podporou těchto diagramů nemůže Visual Studio konkurovat komplexním CASE nástrojům. To však zjevně ani nebyl cíl, jde spíše o zjednodušení práce vývojářů, kterým dané modely mohou ušetřit práci následným automatickým generováním kódu. Stejně tak tato funkcionalita pomůže vývojářům ve firmách, které se z nějakého důvodu rozhodnou neinvestovat do pořízení CASE nástrojů. Velmi užitečným se zajisté prokáže také Architecture Explorer, který umožňuje vizualizovat vztahy mezi jednotlivými třídami / jmennými prostory / assemblies a efektivně tak pomáhá proniknout do tajů cizího kódu a rychle se v něm zorientovat. *Šťastný, 2010] Obrázek Tvorba Sequence diagramu přímo v prostředí Visual Studia. Zdroj: *Šťastný, 2010] 7.3 VISUAL STUDIO A VYBRANÉ CASE NÁSTROJE Nyní se pojďme podrobněji podívat na vybrané CASE nástroje, jejich funkcionalitu a možnosti integrace s Visual Studiem. Vzhledem k faktu, že Visual Studio je komerční produkt, zaměříme se v naší analýze hlavně na komerční nástroje, open-source produkty nyní (ač možná trochu 48

48 neoprávněně) zůstanou v pozadí. Na trhu je v současnosti celá řada komerčních CASE nástrojů, pro naši analýzu jsme vycházeli z produktů dostupných na českém trhu, které jsou integrovatelné s MS Visual Studiem. Vycházeli jsme rovněž z prací našich kolegů s předchozích semestrů, kteří se zabývali právě CASE nástroji dostupnými na českém trhu. Vzhledem k počtu takových produktů a omezenému rozsahu této práce, zmíníme jen produkty splňující následující kritéria: Dostupnost na českém trhu Integrovatelnost MS Visual Studiem Existence trial verze zdarma Produkt je běžně používaný v kombinaci s Visual Studiem a rozšířený na českém trhu (v tomto bodě jsme vycházeli z analýz z předchozích prací) Dle zmíněných kritérií jsme do výběru zahrnuli následující produkty, které dle našeho názoru nejlépe odpovídají výše zmíněným kritériím: Microsoft Visio SyBase(SAP) Power Designer Oracle Designer Enterprise Architect Rational Software Modeler IDS Sheer Aris Design Platform Altova UModel S ohledem na rozsah práce jsme se rozhodli zhodnotit možnosti integrace u třech produktů. Jedná se o Microsoft Visio, SyBase(SAP) PowerDesigner a Altova Umodel. Všechny tři si teď podrobněji představíme a zhodnotíme jejich možnosti integrace s Visual Studiem MICROSOFT VISIO Základní informace o produktu Aktuální verze: Microsoft Office Visio 2010 ( ) / 15 Červen 2010; Výrobce: Microsoft Cena: Standard edition: $ 49

49 Professional edition: $ Premium edition: $ Systémové nároky: OS Windows XP with Service Pack (SP) 3 (32-bit) a novější, CPU 500MHz, 256MB RAM, 2GB místa na disku Podporované platformy: Microsoft Windows Podporovaná verze UML: 2.0 Podporované UML diagramy: Use case diagram Další podporované diagramy: (využitelné při analýze a návrhu IS) Možnost integrace s IDE: Týmový vývoj: Sequence diagram Collaboration diagram State chart diagram Activity diagram Structure diagram Business process diagram Data flow diagram Workflow diagram ERD MS Visual Studio Ne (pouze s použitím MS SharePoint) Visio je modelovací nástroj společnosti Microsoft, která produkt získala převzetím firmy Visio Corporation v roce 2000 a od té doby pravidelně vydává nové verze zahrnuté do balíku MS Office. Visio podporuje celou řadu typů modelů, od modelů použitelných pro návrh IS (viz tabulka), přes technické modely až po modely podporující řízení podniku, např. Cause-effect diagram, Audit diagram apod. Kromě možnosti integrace s MS Visual Studiem, o které ještě bude řeč, nabízí Visio také možnost propojení s MS SQL Serverem, konkrétně s Analysis services, které se používají pro analýzu dat v rámci business inteligence. Ve Visiu je tak možno vytvořit dynamické modely vybraných dat, které jsou přímo napojeny a datové kostky uložené na serveru INTEGRACE MS VISIO A MS VISUAL STUDIO Ke spolupráci obou produktů není potřeba instalace žádného pluginu, stačí mít nainstalované oba produkty. Visio podporuje reverse engineering a visual studio na oplátku umí vytvořit kód z modelů 50

50 vytvořených ve Visiu. V případě zpětné tvorby modelů dle již vytvořeného kódu obsahuje Visual Studio přímo v menu, pod záložkou Project možnost zpětné analýzy ve Visual Studiu. Obdobně, jen v opačném směru, funguje tvorba kódu z vytvořených modelů z Visia. Spolupráce obou programů je jednoduchá a velice přehledná. Na druhou stranu vzhledem k faktu, že se jedná o produkty jedné společnosti, bychom očekávali vyšší míru provázání obou produktů (např. automatické aktualizace modelů dle kódu a opačně, jednotné úložiště), tak aby Visio mohlo konkurovat dalším předním CASE nástrojům na trhu. Možná by se měl Microsoft místo na přímou podporu UML ve Visual Studiu zaměřit spíš na možnosti integrace s MS Visio a vytvořit tak efektivní nástroj pro analytiky a vývojáře SYBASE(SAP) POWER DESIGNER Základní informace o produktu Aktuální verze: PowerDesigner 15.2 Výrobce: Cena: Systémové nároky: Podporované platformy: SyBase(SAP, společnost SyBase byla v květnu letošního roku odkoupena a je tak součástí společnosti SAP) 3000$ $ (neoficiální čísla, výrobce oficiální na svých stránkách neuvádí) CPU 1,5 GHz, 1 GB RAM, 500MB místa na disku Microsoft Windows Podporovaná verze UML: 2.0 Podporované UML diagramy: všechny Další podporované diagramy: (využitelné při analýze a návrhu IS) Business process diagram Data flow diagram Workflow diagram ERD Diagramy pro datové modelování (na principu tří architektur) Mnoho dalších 51

51 Možnost integrace s IDE: Týmový vývoj: MS Visual Studio, Eclipse, PowerBuilder Ano PowerDesigner je jeden z nejkomplexnějších nástrojů, který je v současnosti na trhu dostupný. Po dlouhé roky ho vyvíjela společnost Sybase, která byla v létě letošního roku převzata další významnou firmou na trhu, a sice firmou SAP. PowerDesigner podporuje všechny diagramy v rámci notace UML 2.0, rovněž podporuje datové modelování a princip tří architektur s možností automatického vygenerování SQL skriptu na vytvoření namodelované databáze v příslušném databázovém systému (podporována je drtivá většina databázových systémů na trhu). Podporuje integraci s Visual Studiem, Eclipse a PowerBuilderem, u všech zmíněných je podporován obousměrný engineering INTEGRACE POWERDESIGNER A MS VISUAL STUDIO Jak již bylo zmíněno, PowerDesigner podporuje integraci s Visual Studiem prostřednictvím přídavného modulu, po jehož nainstalování je možné vytvářet potřebné modely a automaticky je synchronizovat s kódem. Podpora reengineeringu již také byla zmíněna, stejně jako možnost týmového vývoje. Pro analytiky a vývojáře je tak dle našeho názoru PowerDesigner jedním z nejlepších nástrojů, který umožní zefektivnit celý proces návrhu informačního systému. Dané kvalitě ovšem odpovídá i cena licencí, která se v případě vývojářské firmy může vyšplhat i přes stovky tisíc korun. 52

52 Obrázek Model propojení PowerDesigneru a Visual Studio. Zdroj: [Sybase, 2010] ALTOVA UMODEL Základní informace o produktu Aktuální verze: Výrobce: UModel v2011 Altova Cena: Edice Professional 119 Eur Edice Enterprise 199 Eur (sleva při nákupu více licencí) Systémové nároky: CPU 800 MHz, 64 MB RAM, 50 MB místa na disku Podporované platformy: Microsoft Windows Podporovaná verze UML: 2.0 Podporované UML diagramy: všechny Další podporované diagramy: (využitelné při analýze a návrhu IS) Business process diagram Diagram pro modelování XML 53

53 schémat Možnost integrace s IDE: Týmový vývoj: MS Visual Studio, Eclipse Ano UModel je produkt společnosti Altova, známou hlavně díky svému produktu XMLSpy. UModel je vyvíjen od roku 1998, jedná se o komplexní produkt, který je svou cenou zajímavou alternativou k ostatním produktům s podobně obsáhlou funkcionalitou, ovšem s řádově vyšší cenou. Produkt rovněž podporuje všechny diagramy v rámci notace UML 2.0, podporuje automatickou tvorbu kódu z diagramů, a to pro jazyky C#, Java a Visual Basic, z těchto jazyků rovněž podporuje reverse engineering. Příjemně překvapí i automatická tvorba dokumentace INTEGRACE UMODEL A MS VISUAL STUDIO Altova UModel podporuje možnost integrace jak s Visual Studiem, tak i s Eclipse. Postup integrace je v podstatě totožný jako v případě PowerDesigneru, po nainstalování příslušného pluginu je možné pracovat s diagramy z UModelu přímo v rozhraní Visual studia, což zjednoduší celý postup při návrhu a tvorbě informačního systému. Celý proces integrace je velice jednoduchý, naistalování trvá jen pár minut. Stejně tak vlastní práce v rámci Visual Studia je pak intuitivní. Jak vypadá rozhraní po integraci, pak ukazuje následující obrázek. 54

54 Obrázek Rozhraní Visual Studia s integrovaným pluginem UModel. Zdroj: [Altova, 2010] 7.4 SHRNUTÍ Visual Studio je v dnešní době suverénně nejpoužívanější IDE pro vývoj aplikací na platformě.net. Proto je samozřejmostí, že nabízí celou řadu možností integrace s CASE nástroji. Pokud bychom měli hodnotit tři námi analyzované nástroje, budeme těžko hledat nějakého vítěze. Dle našeho názoru je každý produkt určen pro jinou cílovou skupinu. Integrace s Visual Studiem byla ve všech případech bezproblémová, rozdíly ovšem určitě najdeme ve funkcionalitě. Ve funkcionalitě v oblasti analýzy a návrhu IS přeci jen Visio lehce zaostává, ať už tím, že nepodporuje veškeré diagramy v rámci UML, nebo i forma integrace nám připadá nejméně efektivní pro spolupráci analytiků a vývojářů. Visio tyto nedostatky řeší přítomností diagramů pro modelování i jiných oblastí, než jen návrh IS, což je asi i hlavní důvod, proč si ho zákazníci kupují. Z čistě technického pohledu na možnosti integrace s Visual Studiem a vůbec podpoře celého procesu analýzy, návrhu a vývoje informačního systému pak musíme lehce vyzdvihnout PowerDesigner a Umodel. 55

Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework

Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework Připravil: Ing. Vít Ondroušek, Ph.D. Technologie.Net Framework úvod, historie, základy.net framework, programovací jazyky, vývojové prostředky Úvod strana 2 Cíl předmětu Seznámit se s vývojem aplikací

Více

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25

Úvod Seznámení s předmětem Co je.net Vlastnosti.NET Konec. Programování v C# Úvodní slovo 1 / 25 Programování v C# Úvodní slovo 1 / 25 Obsah přednášky Seznámení s předmětem Co je.net Vlastnosti.NET 2 / 25 Kdo je kdo Petr Vaněček vanecek@pf.jcu.cz J 502 Václav Novák vacnovak@pf.jcu.cz?? Při komunikaci

Více

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

Seznámení s prostředím dot.net Framework Základy programování v jazyce C# Seznámení s prostředím dot.net Framework PL-Prostředí dot.net - NET Framework Je základním stavebním prvkem, na kterém lze vytvářet software. Jeho součásti a jádro je založené

Více

Obsah. Zpracoval:

Obsah. Zpracoval: Zpracoval: houzvjir@fel.cvut.cz 03. Modelem řízený vývoj. Doménový (business), konceptuální (analytický) a logický (návrhový) model. Vize projektu. (A7B36SIN) Obsah Modelem řízený vývoj... 2 Cíl MDD, proč

Více

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Visual Studio Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 19,2 Číslo: V/5 Programování

Více

ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická. Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy

ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická. Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy ČESKÉ VYSOKÉ UČENÍ TECHNIKÉ Fakulta elektrotechnická Microsoft Sharepoint 2007 Workflows Průmyslové informační systémy Bc. Petr Pokorný Letní semestr 2009/2010 1 Obsah 1 Úvod... 3 2 Workflow... 3 3 Workflow

Více

Matematika v programovacích

Matematika v programovacích Matematika v programovacích jazycích Pavla Kabelíková am.vsb.cz/kabelikova pavla.kabelikova@vsb.cz Úvodní diskuze Otázky: Jaké programovací jazyky znáte? S jakými programovacími jazyky jste již pracovali?

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Analýza a Návrh. Analýza

Analýza a Návrh. Analýza Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,

Více

Business Intelligence

Business Intelligence Business Intelligence Josef Mlnařík ISSS Hradec Králové 7.4.2008 Obsah Co je Oracle Business Intelligence? Definice, Od dat k informacím, Nástroj pro operativní řízení, Integrace informací, Jednotná platforma

Více

Novinky ve Visual Studio 2010. Tomáš Kroupa Tomas.Kroupa@hotmail.com

Novinky ve Visual Studio 2010. Tomáš Kroupa Tomas.Kroupa@hotmail.com Novinky ve Visual Studio 2010 Tomáš Kroupa Tomas.Kroupa@hotmail.com O čem si dnes řekneme Visual studio 2010 (beta 2) Jazyk C# 4.0 ASP.NET 4.0.NET 4.0 Visual Studio 2010 Beta 2 Jak získat Testovací verze

Více

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

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE

Více

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

Efektivní vývoj mobilních aplikací na více platforem současně. Mgr. David Gešvindr MCT MSP MCPD MCITP gesvindr@mail.muni.cz Efektivní vývoj mobilních aplikací na více platforem současně Mgr. David Gešvindr MCT MSP MCPD MCITP gesvindr@mail.muni.cz Osnova 1. Kam míří platforma Windows Phone 2. Seznámení s univerzálními Windows

Více

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu StatSoft Typy souborů ve STATISTICA Tento článek poslouží jako přehled hlavních typů souborů v programu STATISTICA, ukáže Vám jejich možnosti a tím Vám dovolí využívat program efektivněji. Jistě jste již

Více

ArcGIS Online Subscription

ArcGIS Online Subscription ArcGIS Online Subscription GIS pro organizace ArcGIS Online je GIS v cloudu. Poskytuje služby GIS v prostředí internetu, ať už se jedná o úložné místo, publikaci mapových a geoprocessingových služeb, nebo

Více

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

Nové jazykové brány do Caché. Daniel Kutáč Nové jazykové brány do Caché Daniel Kutáč O čem budeme mluvit.net T/SQL Perl Python MultiValue Basic Téma.NET provider .NET Provider Co lze již dnes Factory / VisM ODBC.NET Web Services Factory a VisM

Více

Lotus Quickr - ECM Integrace s LD/LN aplikacemi. Ing. Josef Homolka VUMS Legend

Lotus Quickr - ECM Integrace s LD/LN aplikacemi. Ing. Josef Homolka VUMS Legend Lotus Quickr - ECM Integrace s LD/LN aplikacemi Ing. Josef Homolka VUMS Legend Lotus Symposium 2010 Co nám přinesl systém ISDS?? Informační Systém Datových Schránek 2 Otázku Kam s ním? 3 Ptáte se s čím?

Více

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

Úvod. Klíčové vlastnosti. Jednoduchá obsluha REQUESTOR DATASHEET Úvod Requestor Service Desk poskytuje kompletní řešení pro správu interních i externích požadavků, které přicházejí do organizace libovolnou cestou. Produkt je zaměřen na vytvoření

Více

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13 Obsah Úvodem 9 1. Úvod do Ajaxu 11 Jak Ajax funguje? 13 Popis 13 Ukázky 13 Jaké jsou možnosti tvorby interaktivních webových aplikací? 15 Co je třeba znát? 16 Jak fungují technologie Ajaxu 16 Jak funguje

Více

Wonderware Information Server 4.0 Co je nového

Wonderware Information Server 4.0 Co je nového Wonderware Information Server 4.0 Co je nového Pavel Průša Pantek (CS) s.r.o. Strana 2 Úvod Wonderware Information Server je výrobní analytický a reportní informační portál pro publikaci výrobních dat

Více

1 - Úvod do platformy.net. IW5 - Programování v.net a C#

1 - Úvod do platformy.net. IW5 - Programování v.net a C# 1 - Úvod do platformy.net IW5 - Programování v.net a C# Strana 1 Obsah přednášky Objektově orientované paradigma.net Framework Základní rysy jazyka C# Strana 2 Objektová orientace C# implementuje základní

Více

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

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího

Více

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2006/2007 c 2005-2007 Michal Krátký, Miroslav Beneš Tvorba

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

První kroky s METEL IEC IDE

První kroky s METEL IEC IDE První kroky s poskytuje programování v IEC 61131-3 jazycích, podporuje jak grafickou tak textovou podobu. Umožňuje vytvářet, upravovat a ladit IEC 61131-3 (ST, LD, IL, FBD) programy pro řídicí jednotky

Více

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

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

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

Vývoj informačních systémů. Přehled témat a úkolů Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Teorie Praxe Cvičení Diskuze

Více

Uživatelská příručka

Uživatelská příručka PŘÍLOHA B Uživatelská příručka Před prvním spuštění aplikace je nezbytné ujasnit si některé pojmy: web URL webových stránek, pro které se budou zjišťovat pozice. klíčové slovo - Slovní spojení nebo samostatné

Více

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

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 Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části

Více

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

Vývoj informačních systémů. Přehled témat a úkolů Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Znalosti Schopnosti Cvičení

Více

Tvorba informačních systémů

Tvorba informačních systémů Tvorba informačních systémů Michal Krátký 1, Miroslav Beneš 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Tvorba informačních systémů, 2005/2006 c 2006 Michal Krátký, Miroslav Beneš Tvorba informačních

Více

O projektu Nasazení OpenOffice.org v praxi

O projektu Nasazení OpenOffice.org v praxi O projektu Nasazení OpenOffice.org v praxi Filip Molčan molcanf@openoffice.org Konference EurOpen Hotel Relax, Moninec - 18. 5. 2005 Obsah prezentace Minulost a současnost OpenOffice.org Představení projektu

Více

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

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 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 3) 4) Mantichora Mantichora je moderní aplikace, který

Více

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK Systém WorkWatch je určen pro malé a střední firmy, které se zabývají službami nebo zakázkovou výrobou. Zajistí dokonalý přehled o všech zakázkách a jejich rozpracovanosti.

Více

ELO ECM Suite 9 Just Better Business

ELO ECM Suite 9 Just Better Business ELO ECM Suite 9 - Ve zkratce ELO ECM Suite 9 Just Better Business ELO Enterprise Content Management www.elo.com ELO ECM Suite 9 - Ve zkratce ELO ECM Suite 9 Just Better Business Z inteligentní správy informací

Více

Správa obsahu webové platformy

Správa obsahu webové platformy Správa obsahu webové platformy www.dobrovolnik.net Bc. Irina Kushnareva PRAHA 2019 Tento dokument byl vypracován v rámci projektu Dobrovolnictví ve veřejné správě, reg. č. CZ.03.3.X/0.0/0.0/15_018/0005458,

Více

Programujeme v softwaru Statistica

Programujeme v softwaru Statistica Programujeme v softwaru Statistica díl třetí Newsletter Statistica ACADEMY Téma: Programování, makra, skripty Typ článku: Návody V předchozích článcích (díl první, díl druhý) jsme si osvětlili základní

Více

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

Vzdálená správa v cloudu až pro 250 počítačů Vzdálená správa v cloudu až pro 250 počítačů S pomocí ESET Cloud Administratoru můžete řídit zabezpečení vaší podnikové sítě bez nutnosti nákupu, instalace nebo údržby dalšího hardwaru. Řešení je poskytováno

Více

Obsah SLEDOVÁNÍ PRÁCE... 4

Obsah SLEDOVÁNÍ PRÁCE... 4 Co je nového Obsah SLEDOVÁNÍ PRÁCE...... 4 Konfigurace souboru... 5 Globální konfigurace... 6 Soubory... 6 Projekty... 6 Uživatelské rozhraní... 7 Synchronizace... 7 Typ serveru... 8 Test připojení...

Více

Formy komunikace s knihovnami

Formy komunikace s knihovnami Formy komunikace s knihovnami Současné moderní prostředky Jiří Šilha a Jiří Tobiáš, Tritius Solutions a.s., Brno Osnova Základní požadavky na komunikaci s knihovnami Historie komunikace s knihovnami Confluence

Více

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

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

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

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz UML a jeho použití v procesu vývoje Jaroslav Žáček jaroslav.zacek@osu.cz Různé pohledy na modelování Různé pohledy na modelování Unified Modeling Language UML není metodikou ani programovacím jazykem,

Více

Nápověda k aplikaci EA Script Engine

Nápověda k aplikaci EA Script Engine Nápověda k aplikaci EA Script Engine Object Consulting s.r.o. 2006 Obsah Nápověda k aplikaci EA Script Engine...1 1. Co je EA Script Engine...2 2. Důležité upozornění pro uživatele aplikace EA Script Engine...3

Více

Rozklad na prvočinitele. 3. prosince 2010

Rozklad na prvočinitele. 3. prosince 2010 Rozklad na prvočinitele Ondřej Slavíček 3. prosince 2010 1 Obsah 1 Příručka k programu 3 1.1 funkce main()............................. 3 1.2 funkce hlavnifunkce()........................ 3 1.3 funkce

Více

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

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb: Technologie Marushka Základním konceptem technologie Marushka je použití jádra, které poskytuje přístup a jednotnou grafickou prezentaci geografických dat. Jádro je vyvíjeno na komponentním objektovém

Více

CASE nástroje. Jaroslav Žáček

CASE nástroje. Jaroslav Žáček CASE nástroje Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Co znamená CASE? A CASE tool is a computer-based product aimed at supporting one or more software engineering activities within

Více

Newsletter RIBTEC automatické aktualizace Praktická novinka v servisu a podpoře k softwaru RIBTEC od verzí 15.0

Newsletter RIBTEC automatické aktualizace Praktická novinka v servisu a podpoře k softwaru RIBTEC od verzí 15.0 1.1 Automatické aktualizace RIBTEC Pomocí nového Prostředí automatických aktualizací můžete udržovat Váš software stavební statiky RIBTEC od verzí 15.0 a vyšších na aktuálním stavu. Tento systémový nástroj

Více

E-learningovýsystém Moodle

E-learningovýsystém Moodle E-learningovýsystém Moodle Jan Povolný Název projektu: Věda pro život, život pro vědu Registrační číslo: CZ.1.07/2.3.00/45.0029 Co je to Moodle? - systém pro tvorbu a správu elektronických výukových kurzů

Více

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Příprava dat v softwaru Statistica

Příprava dat v softwaru Statistica Příprava dat v softwaru Statistica Software Statistica obsahuje pokročilé nástroje pro přípravu dat a tvorbu nových proměnných. Tyto funkcionality přinášejí značnou úsporu času při přípravě datového souboru,

Více

Technologie Sharepoint

Technologie Sharepoint Jan Salajka 25. 3. 2010 ČVUT FEL Technologie Sharepoint Letem světem Sharepoint - Co to je??? Je to technologie Slouží především k řízené tvorbě a správě informací ve webovém prostředí Slouží jako podklad

Více

Novell Identity Management. Jaromír Látal Datron, a.s.

Novell Identity Management. Jaromír Látal Datron, a.s. Novell Identity Management Jaromír Látal Datron, a.s. 19.4.2012 1 Identity management základní vlastnosti Jednoduché a rychlé poskytování uživatelských účtů Samoobslužné funkce pro uživatele Snadný návrh

Více

11. Přehled prog. jazyků

11. Přehled prog. jazyků Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 11 1 Základy algoritmizace 11. Přehled prog. jazyků doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze

Více

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ňů 15 110 00 Praha 1

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ňů 15 110 00 Praha 1 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ňů 15 110 00 Praha 1 Poslední aktualizace dne 5.8.2014 MÚZO Praha s.r.o. je certifikováno

Více

Tvorba kurzu v LMS Moodle

Tvorba kurzu v LMS Moodle Tvorba kurzu v LMS Moodle Před počátkem práce na tvorbě základního kurzu znovu připomínám, že pro vytvoření kurzu musí být profil uživatele nastaven administrátorem systému minimálně na hodnotu tvůrce

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

Kontingenční tabulky v MS Excel 2010

Kontingenční tabulky v MS Excel 2010 Kontingenční tabulky v MS Excel 2010 Autor: RNDr. Milan Myšák e-mail: milan.mysak@konero.cz Obsah 1 Vytvoření KT... 3 1.1 Data pro KT... 3 1.2 Tvorba KT... 3 2 Tvorba KT z dalších zdrojů dat... 5 2.1 Data

Více

Microsoft Office 2003 Souhrnný technický dokument white paper

Microsoft Office 2003 Souhrnný technický dokument white paper Microsoft Office 2003 Souhrnný technický dokument white paper Přehled inteligentních klientských aplikací založených na sadě Microsoft Office 2003 System Publikováno: Duben 2003 Shrnutí: Inteligentní klienti

Více

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

Vývoj moderních technologií při vyhledávání. Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz Vývoj moderních technologií při vyhledávání Patrik Plachý SEFIRA spol. s.r.o. plachy@sefira.cz INFORUM 2007: 13. konference o profesionálních informačních zdrojích Praha, 22. - 24.5. 2007 Abstrakt Vzhledem

Více

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod:

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod: Internetový prohlížeč CHROME Pro správné fungování veškerých funkcionalit, které nám nástroje společnosti Google nabízí, je dobré používat prohlížeč Chrome. Jeho instalaci je možné provést z webové adresy:

Více

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.

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. Úvodní příručka 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. Aktualizované šablony Šablony vám pomáhají při

Více

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

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části: Aplikace Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části: prezentační vrstva vstup dat, zobrazení výsledků, uživatelské rozhraní, logika uživatelského rozhraní aplikační vrstva

Více

Vývojové nástroje jazyka Java

Vývojové nástroje jazyka Java Vývojové nástroje jazyka Java Tato kapitola informuje čtenáře, jaké nástroje je zapotřebí nainstalovat pro spouštění a vývoj programů v jazyce Java, hlavním cílem kapitoly je seznámit čtenáře s aplikacemi,

Více

Architektury informačních systémů

Architektury informačních systémů Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to

Více

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

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 25. Otázka : Komponentní technologie - základní pojmy a principy, metody specifikace komponent. Obsah : 1. Základní pojmy 1.1 Komponenta Komponenta

Více

Architektury informačních systémů

Architektury informačních systémů Architektury informačních systémů doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes/vyuka/tis Miroslav.Benes@vsb.cz Obsah přednášky Co je to

Více

Úvod do programovacího jazyka Python

Úvod do programovacího jazyka Python Úvod do programovacího jazyka Python Co je to Python? Python je objektově-orientovaný programovací jazyk. Tento programovací jazyk je velice výkonný, čitelný a dá se snadno naučit. Jeho použití je velice

Více

Pracovní prostředí Word 2003 versus Word 2010

Pracovní prostředí Word 2003 versus Word 2010 Zdokonalování gramotnosti v oblasti ICT Pracovní prostředí Word 2003 versus Word 2010 Inovace a modernizace studijních oborů FSpS Vránová Hana 11.7.2012 OBSAH Srovnání pracovního prostředí Word 2003 a

Více

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013

Předměty. Algoritmizace a programování Seminář z programování. Verze pro akademický rok 2012/2013. Verze pro akademický rok 2012/2013 Předměty Algoritmizace a programování Seminář z programování Verze pro akademický rok 2012/2013 Verze pro akademický rok 2012/2013 1 Přednášky Jiřina Královcová MTI, přízemí budovy A Tel: 48 53 53 521

Více

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina 5a. Makra Visual Basic pro Microsoft Escel Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina Cyklické odkazy a iterativní výpočty Zde bude stránka o cyklických odkazech a iteracích.

Více

Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou...

Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou... Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou... 7 Jak se formulář vytváří... 8 Návrh formuláře... 8 Co jsou ovládací

Více

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

O projektu OpenOffice.org a IBM OS/2 OS/2 a Open Source O projektu OpenOffice.org a IBM OS/2 OS/2 a Open Source Filip Molčan molcanf@openoffice.org Konference Warpstock Czech Republic 2005 Liberec - 16. 7. 2005 Obsah prezentace Minulost a současnost OpenOffice.org

Více

Statistica, kdo je kdo?

Statistica, kdo je kdo? Statistica, kdo je kdo? Newsletter Statistica ACADEMY Téma: Typy instalací Typ článku: Teorie Někteří z vás používají univerzitní licence, někteří síťové, podnikové atd. V tomto článku Vám představíme,

Více

webmarketin Základní moduly aplikace

webmarketin Základní moduly aplikace webmarketin Aplikace webmarketing je komplexní online nástroj určený pro podporu a řízení marketingu a CRM ve společnosti. Její součástí jsou webové ankety, SMS kampaně nebo newslettery, které lze spravovat

Více

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

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale je serverová aplikace určená pro efektivní zpracování velkého objemu sdílených nestrukturovaných dat. Umožňuje automaticky indexovat data z různých informačních zdrojů, intuitivně vyhledávat informace,

Více

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů.

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů. Úvodní příručka Microsoft Excel 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. Přidání příkazů na panel nástrojů Rychlý přístup

Více

Microsoft Access tvorba databáze jednoduše

Microsoft Access tvorba databáze jednoduše Microsoft Access tvorba databáze jednoduše Časový rozsah: 2 dny (9:00-16:00) Cena: 3300 Kč + DPH Úvod do relačních databází. Funkce databázových objektů Microsoft Access. Návrh tabulek, definice základních

Více

UML - opakování 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

UML - opakování 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 UML - opakování 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 Co je to UML Evoluce UML Diagram komponent Diagram odbavení Diagram tříd Aktivity diagram Stavový diagram Sekvenční diagram Diagram

Více

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody 4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina Cyklické odkazy a iterativní výpočty

Více

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek

Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek Architektura rodiny operačních systémů Windows NT Mgr. Josef Horálek = Velmi malé jádro = implementuje jen vybrané základní mechanismy: = virtuální paměť; = plánování vláken; = obsluha výjimek; = zasílání

Více

Snažší používání. > Prostředí pro mobilní zařízení. > Vylepšení uživatelského komfortu. > Zjednodušení práce. > Integrace Office 365

Snažší používání. > Prostředí pro mobilní zařízení. > Vylepšení uživatelského komfortu. > Zjednodušení práce. > Integrace Office 365 Microsoft Dynamics NAV 2015 Co je nového? Microsoft Dynamics NAV je systém pro řízení firmy, který se snadno implementuje a používá. Zároveň je dostatečnou oporou pro všechny vaše obchodní ambice. Rychlejší

Více

Manuál pro uživatele aplikace FUEL 2000 Enterprise

Manuál pro uživatele aplikace FUEL 2000 Enterprise aplikace FUEL 2000 Enterprise Zpracoval: Ondřej Bejšovec JS Petrol s.r.o. Autor programu: UNICODE Systems, s.r.o. Ruská ul.14 674 01 Třebíč IČO: 26224992-1 - Úvod a přihlášení do systému 1) O systému Srdcem

Více

Nejčastější kladené dotazy

Nejčastější kladené dotazy Nejčastější kladené dotazy Než začnete vyplňovat žádost o dotace prostřednictvím jednotného inteligentního formuláře, je vhodné si přečíst návod. Přesto se může stát, že v něm nenajdete všechno. V takovém

Více

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14 Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14 KAPITOLA 1 Nové rysy Windows 8 a 8.1 15 Nové uživatelské rozhraní 15 Rychlý náběh po zapnutí 16 Informace v prvním sledu 16 Nové prezentační

Více

Bc. Martin Majer, AiP Beroun s.r.o.

Bc. Martin Majer, AiP Beroun s.r.o. REGISTR DIGITALIZACE HISTORICKÝCH FONDŮ (RDHF) A DIGITÁLNÍCH KONKORDANCÍ (DK) Návrh uživatelského rozhraní klientských aplikací verze 1.0 Bc. Martin Majer, AiP Beroun s.r.o. 28.11.2016-1 - Obsah 1 Seznam

Více

IntraVUE 2.0.3 Co je nového

IntraVUE 2.0.3 Co je nového IntraVUE 2.0.3 Co je nového Michal Tauchman Pantek (CS) s.r.o. Červen 2008 Strana 2/8 Úvod IntraVUE je diagnostický a podpůrný softwarový nástroj pro řešení komunikačních problémů, vizualizaci a dokumentaci

Více

Statistica Enterprise

Statistica Enterprise Statistica Enterprise díl první Newsletter Statistica ACADEMY Téma: Enterprise, možnosti software Typ článku: Příklad V starším článku jsme si představili jednotlivé typy licencí softwaru Statistica. V

Více

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

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 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 P R O G R A M O V É V Y B A V E N Í Studijní obor: 18-20-M/01 Informační technologie Školní

Více

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Trochu teorie Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Každá spuštěná aplikace má alespoň jeden proces

Více

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

Kapitola 1: Úvod. Systém pro správu databáze (Database Management Systém DBMS) Účel databázových systémů - 1.1 - Kapitola 1: Úvod Účel databázových systémů Pohled na data Modely dat Jazyk pro definici dat (Data Definition Language; DDL) Jazyk pro manipulaci s daty (Data Manipulation Language; DML) Správa

Více

Studijní informační systém KOS ikos přístup pro referenty

Studijní informační systém KOS ikos přístup pro referenty Studijní informační systém KOS ikos přístup pro referenty Pro práci se studijním informačním systémem AMU se používají dvě různé aplikace, které však pracují se společnými daty. Studenti a učitelé pracují

Více

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování

2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování 1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy

Více

HLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace

HLEDEJCENY.mobi. Obsah. Mobilní verze e-shopu. Důvody instalace Obsah HLEDEJCENY.mobi Mezi Vodami 1952/9 e-mail: info@hledejceny.cz HLEDEJCENY.mobi... 1 Mobilní verze e-shopu... 1 Důvody instalace... 1 Výhody... 2 Co je k mobilní verzi potřeba... 2 Objednávka služby...

Více

Úvod do programovacího jazyka Python

Úvod do programovacího jazyka Python Úvod do programovacího jazyka Python Co je to Python? Python je objektově orientovaný programovací jazyk, který se může využít v mnoha oblastech vývoje softwaru. Nabízí významnou podporu k integraci s

Více

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová 5. Statistica StatSoft, Inc., http://www.statsoft.com, http://www.statsoft.cz. Verze pro Mac i PC, dostupná

Více

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 2+2.1 3/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 2+2.1 3/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2013 2+2.1 3/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 12 0:40 Programování na PC Při programování na PC musíme

Více