1. Úvod. 1.1 Projekt Mantichora Představení projektu Tým Mantichora

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

Zadání bakalářské práce

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

Olga Rudikova 2. ročník APIN

manažerského řízení HW a SW požadavky pro sw ATTIS

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

Otevřený katastr (OK)

Webové rozhraní pro datové úložiště. Obhajoba bakalářské práce Radek Šipka, jaro 2009

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

SW ATTIS nástroje. HW a SW požadavky pro sw ATTIS. manažerského řízení. Verze manuálu: 3.5 Datum:

Úvod do programovacího jazyka Python

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

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

Úvod do programovacího jazyka Python

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

IS pro podporu BOZP na FIT ČVUT

Aplikační programové vybavení

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

Semestrální práce: Mashup. Observatory Star Explorer

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

Formy komunikace s knihovnami

Open Journal Systems na ČVUT. Věra Pilecká (ÚK ČVUT)

Vývoj SW pro mobilní zařízení s ios. Petr Hruška, Skymia s.r.o. Teorie a praxe IP telefonie,

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

VYUŽITÍ REGIONÁLNÍCH FUNKCÍ A WWW ROZHRANÍ V INTEGROVANÉM KNIHOVNÍM SYSTÉMU KPWINSQL

Na vybraném serveru vytvoříme MySQL databázi. Soubory scratch.jpa, kickstart.php a en-gb.kickstart.ini nahrajeme na vybraný server.

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

D R U P A L V O J T Ě C H K U S W O J T H A

Rozklad na prvočinitele. 3. prosince 2010

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

MBI - technologická realizace modelu

MST - sběr dat pomocí mobilních terminálů on-line/off-line

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

VY_32_INOVACE_INF.20. OS Linux

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

FORTANNS. 22. února 2010

Free & Open Source software. Liberix. prezentací. Open Source. software. Free Software. projektů pro studenty. Rekapitulace. Liberix o.p.s.

Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce

Telelogic Focal Point využití pro řízení a optimalizaci projektového portfolia Verze 1.0

Bakalářská práce, FEL ČVUT Praha. Michal Turek. červenec 2007

LSD v informatice. Michal Gruber, Ondřej Linger, Amin Shakery, Denis Sianov. SPŠE Ječná Ječná 30, Praha 2

KOMPONENTY APLIKACE TreeINFO. Petr Štos ECM Business Consultant

Groupwarová řešení na Linuxu. Dan Ohnesorg CZLUG

Jakub Šesták. ESEJ DO PŘEDMĚTU DIGITÁLNÍ KNIHOVNY

Svět svobodného softwaru

Ročníkový projekt DYNAMICKÉ HTML. Projektová dokumentace. Jan Ehrlich, Petr Marek, Tomáš Marván, Martin Paľo. Vedoucí projektu: RNDr.

verze GORDIC spol. s r. o.

Databázový systém Matylda

imos DSP Nové možnosti datové sběrné pošty pro II. pololetí roku 2014

Server-side technologie pro webové aplikace

Inovace výuky prostřednictvím šablon pro SŠ

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

Integrace datových služeb vědecko- výukové

Řízení reálných projektů, agilní metodiky

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

Publikování map na webu - WMS

Střední odborná škola a Střední odborné učiliště, Hořovice

Dobrý SHOP Popis produktu a jeho rozšíření

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

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

Srovnání issue a bug tracking komerčních nástrojů

Bioadresář. Specifikace požadavků. Verze Datum Projektový tým Bc. Martin Ventruba Bc. Ondřej Veselý Bc. Stratos Zerdaloglu

Elektronická podpora výuky předmětu Komprese dat

Střední odborná škola a Střední odborné učiliště, Hořovice

Open Source Programování

Vybraná zajímavá Lotus Notes řešení použitelná i ve vašich aplikacích. David Marko TCL DigiTrade

Střední odborná škola a Střední odborné učiliště, Hořovice

Architektura softwarových systémů

FOSS4G úspěšné projekty

O projektu Nasazení OpenOffice.org v praxi

Střední odborná škola a Střední odborné učiliště, Hořovice

Obsah. Rozdíly mezi systémy Joomla 1.0 a Systém Joomla coby jednička online komunity...16 Shrnutí...16

Architektura GIS KMA/AGI. Karel Jedlička

Technologie Sharepoint

Novinky. Autodesk Vault helpdesk.graitec.cz,

[ -3-

CZ.1.07/1.5.00/

Instalace a první spuštění Programu Job Abacus Pro

SOFTWARE. Programové vybavení počítače

3. HODINA. Prohlížeče Druhy prohlížečů Přehled funkcí Bc. Tomáš Otruba, Informatika 7. třída 1

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

1 Webový server, instalace PHP a MySQL 13

IntraVUE Co je nového

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ

Aplikační podpora národní inventarizace kontaminovaných míst

ŠKOLENÍ PROGRAMOVACÍHO JAZYKA JAVA JAVA - ZÁKLADY

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

Technická specifikace

Informace ke stavu celoměstsk xxx

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

E-learningový systém pro podporu výuky algoritmů

Základní pojmy spojené s webovým publikováním ~ malý slovníček pojmů~ C3231 Základy WWW publikování Radka Svobodová, Stanislav Geidl

MD Comfort. Ambulantní software. Řešení pro praktické a odborné lékaře a pro sítě zdravotnických zařízení

Instalace a základní administrátorské nastavení 602LAN SUITE 5 Groupware

Společnost MEFISTO SOFTWARE, a.s. uvádí na trh nový produkt Mefisto CAMPUS.

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

Střední odborná škola a Střední odborné učiliště, Hořovice

Transkript:

1. Úvod 1.1 Projekt Mantichora 1.1.1 Představení projektu Projekt Mantichora vzniká jako víceletý týmový bakalářský projekt. Vedoucím projektu je Ing. Jiří Chludil z katedry počítačů FEL ČVUT. Inspirací názvu i samotného projektu je několikadílná knižní sci-fi série od Davida Webera o Honor Harringtonové a jejím rodném Hvězdném království Mantichoře. Náš projekt se tedy zabývá simulací vesmíru nikoliv mýtickou bytostí, kterou má toto království ve znaku. Cílem projektu je vytvořit klient server aplikaci zobrazující hvězdné soustavy, vesmírné lodě, družice atd. Ve finální verzi by systém měl být uživatelsky interaktivní. To znamená umožnit uživateli ovládat například vesmírné lodě a možná s nimi vést i bitvy. Vytvořit takový systém, je ale časově velmi náročné, proto je Mantichora projektem jak týmovým tak i víceletým. Jako součásti projektu v budoucnu pravděpodobně nebudou pouze bakalářské, ale i diplomové práce. Akademický rok 2008/2009 je prvním rokem vývoje projektu Mantichora. Z toho důvodu jsou cíle prvních bakalářů, pracujících na tomto projektu, omezeny na simulace jednoduchých hvězdných soustav. Výsledkem by tedy měl být funkční prototyp aplikace, bez optimalizací. Proto pravděpodobně i tyto jednoduché simulace, nepoběží bez viditelných chyb. 1.1.2 Tým Mantichora Celý projekt je skládankou prací prozatím sedmi studentů a Ing. Jiřího Chludila. Každý ze studentů má svůj úkol v rámci projektu. Některé práce na sebe úzce navazují, jiné jsou v podstatě samostatné. Členové týmu: Ing. Jiří Chludil Vedoucí projektu Vedení konzultací týmu pořádaných každý týden. Schválení a úprava návrhů dalšího vývoje a nabízených řešení. Václav Podlipný Řízení projektu Rešerše možností aplikační podpory řízení projektu. Výběr vhodné aplikace, její úprava, nastavení, případně implementace vlastní aplikace. Jiří Kopecký Sít ová komponenta Prozkoumání nástrojů pro měření parametrů sítí. Vybrání vhodného nástroje a implementace rozhraní pro Mantichoru. Jiří Nekola Matematicko-fyzikální engine Provádí analýzu aplikací pro výpočty matematicko-fyzikálních modelů. Implementuje matematickofyzikální model Sluneční soustavy a jeho napojení na grafický engine. 1

Ondřej Čermák Editor modelů Implementuje editor scény s podporou importu grafických modelů a definicí jejich matematickofyzikálních vlastností. Scénu z toho editoru načítají grafické enginy. Michal Vaňkát Grafický engine OpenGL Implementuje grafický engine v prostředí OpenGL schopný zobrazovat specializovanou strukturu scény. Vladimír Blažek Grafický engine Java 3D Implementuje grafický engine v prostředí Java 3D schopný zobrazovat specializovanou strukturu scény. Zdeněk Hák Management zásuvných modulů Rešerše knihoven a aplikací podporujících tvorbu pluginové architektury. Navrhuje řešení propojení modulů v aplikaci Mantichora. 1.1.3 Komunikace v týmu Jak je vidět z předchozí části někteří členové týmu jsou závislí na jiných více či méně. Největší důraz na spolupráci se klade na skupinu editor modelů, matematicko-fyzikální engine a grafický engine. Je to z důvodu dohody na přenosu dat mezi moduly. Pro přenos dat mezi moduly bylo nakonec zvoleno XML. V editoru modelů je toto XML vytvořeno. Jsou v něm patřičné objekty a jejich vlastnosti. Toto XML je nahráno do grafického enginu, pro který matematicko-fyzikální engine počítá potřebná data. Přepočet dat a jejich posílání grafickému enginu však probíhá za běhu aplikace. Jedná se vlastně o podporu zásuvných modulů. Původní idea předpokládala využití Web Services připravených externě od Marka Sachy pracujícího na projektu Studentova berlička. Zdeněk Hák měl původně zpracovat pouze konkurentí možnosti podpory zásuvných modulů. Nakonec se však web services ukázalo jako nevhodné pro nasazení v projektu Mantichora, proto v první verzi byl zvolen přenos dat pomocí jednoduchých zpráv pře TCP protokol. Ostatní členové týmu řeší podporu tohoto implementačního jádra. Komunikace v týmu probíhala na každotýdenní schůzkách s vedoucím projektu a pomocí webové aplikace Assembla. 2

2. Popis problému, specikace cíle 3

3. Řešení 3.1 Abecední seznam rešeršovaných aplikací Bugzilla 3.2.3 FogBugz 6.0 MantisBT 1.1.6 TaskFreak! 0.6.2 4

3.2 Rešerše 3.2.1 Bugzilla 3.2.3 Vývoj po licencí: MPL Mozilla public license Vývojář: Mozilla Foundation Domovská stránka projektu: http://www.bugzilla.org/ Cena: freeware Požadavky na instalaci: Perl 5.8.1 a vyšší Požadované Perl moduly: CGI 3.21, Date::Format 2.21, DBI 1.41, File:Spec 0.84, Template 2.15, Email::Send 2.00, Email::MIME::Modifier 1.442 Požadované Perl moduly v závislosti na použité databázi: DBD::Pg 1.45, DBD::Oracle1.19, DBD::mysql 4.0 Databáze: MySQL 4.1.2 a vyšší, PostgreSQL 8.00.0000 a vyšší nebo Oracle 10.02.0 a vyšší Web server s podporou CGI skriptů, doporučován Apache verze 1.3.x nebo 2.x Mail server Stručný popis: První verze Bugzilly byla napsána v roce 1998 Terrym Weissmanem v Tcl, ještě před zveřejněním, však byla přepsána do Perlu. První dostupná verze byla tedy Bugzilla 2.0. Bugzilla je web-based bug tracking systém původně vyvinutý a používaný organizací Mozilla. Bugzilla je open source projektem a je využíván k podpoře mnoha open source i proprietárních projektů. Bugzilla se vyznačuje velkým množstvým parametrů, které je možné chybě přiřadit. Význam pojmu chyba je zde velmi obecný, nebot se tato aplikace používá nejen pro evidenci chyb v pravém slova smyslu, ale i pro návrhy na vylepšení a požadavky nových funkcí. Podobné aplikace se z tohoto důvodu často nenazývají jako nástroje pro bug tracking ale jako nástroje pro issue tracking. Samozřejmostí jsou filtry pro vyhledávání v chybách. Bugzilla nabízí také integraci některých systémů pro správu verzí. Uživatel si může zvolit, zda použije Bonsai, CVS, Perforace, Subversion nebo Tinderbox. 5

Náhled: Obrázek 1: Bugzilla - Náhled UI Zdroje: The Bugzilla Guide: 3.2.3 Release [online]. [2009-03-30] [cit. 2009-04-08]. EN. Dostupný z WWW: <http://www.bugzilla.org/docs/3.2/en/pdf/bugzilla-guide.pdf>. Wikipedie: Bugzilla[online]. [2008-09-17] [cit. 2009-04-08]. CZ. Dostupný z WWW: <http://cs.wikipedia.org/wiki/bugzilla>. 6

3.2.2 FogBugz 6.0 Vývojář: Fog Creek Software Domovská stránka projektu: http://www.fogcreek.com/fogbugz/ Cena: užívání na serveru výrobce: $25 / uživatel / měsíc užívání na vlastním serveru: 1 licence $199 10 licencí $1899 100 licencí $14 999 500 licencí $49 999 zkušební verze: zdarma omezena na 45 dní Požadavky na instalaci: pro Windows: Web server: IIS.Net Framework 2.0 Databáze: MySQL 4.1 a vyšší, MS SQL 7.0 2000, 2005, 2008 nebo MS Jet 4.0sp3 Mail server Verzovací systém: Subversion, Perforce, CVS, Visual SourceSafe nebo Vault pro MacOS, Unix Web server: Apache s PHP 5.1 a vyšší a rozšířeními xml, imap, mysql, iconv Databáze: MySQL 4.1 a vyšší Mail server Open source.net: Mono Nástroj příkazové řádky: Curl Verzovací systém: Subversion, Perforce, CVS, Visual SourceSafe nebo Vault 7

Stručný popis: FogBugz je dalším web-based bug tracking systémem pro podporu vývoje softwaru. Současná (7.4. 2009) nejnovější verze je 6.0. FogBugz patří mezi placené systémy, ale na domovských stránkách projektu si po registraci můžete systém odzkoušet ve 45 denní trial verzi. Pro zakoupení tohoto produktu jsou možné 2 cesty. Měsíční platby podle počtu uživatelů v systému při používání systému na serverech výrobce nebo zakoupení instalace s určitým počtem licencí. FogBugz umožňuje spravovat úkoly v týmu. Úkoly jsou rozděleny podle uživatelů, kategorie a statusu. Pro snadní vyhledávání v úkolech je možné použít různé filtry. Mezi další funkce Fog- Bugzu patří mail list, wiki, diskuzní fórum a spolupráce s verzovacími systémy. Velkou výhodou FogBugzu je široká podpora verzovacích systémů (Subversion, Perforce, CVS, Visual SourceSafe a Vault). Další zajímavou možností je import dat z Bugzilly a Tracku. Náhled: Obrázek 2: FogBugz - Náhled UI Zdroje: FogBugz: Windows system requirements[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.fogcreek.com/fogbugz/docs/60/topics/setup/windowssystemrequirements FogBugz: Mac system requirements[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.fogcreek.com/fogbugz/docs/60/topics/setup/macsystemrequirements.htm FogBugz: Unix system requirements[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.fogcreek.com/fogbugz/docs/60/topics/setup/unixssystemrequirements.ht FogBugz: Price list[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.fogcreek.com/fogbugz/pricelist.html>. 8

FogBugz: Feature list[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.fogcreek.com/fogbugz/pricelist.html>. 9

3.2.3 MantisBT 1.1.6 Vývoj po licencí: GNU/GPL Vývojář: Victor Boctor Domovská stránka projektu: http://www.mantisbt.org/ Cena: freeware Požadavky na instalaci: Pro MantisBT 1.1.x: PHP 4.3.0 a vyšší MySQL databáze 4.1.1 a vyšší (MS SQL a DB2 jsou také podporovány) Web server (Apache, IIS, etc.) pro MantisBT 1.2.x: PHP 5.2.0 a vyšší MySQL databáze 4.1.1 a vyšší (MS SQL, DB2, a PostgreSQL jsou také podporovány) Web server (Apache, IIS, atd.) Stručný popis: Mantis je bug tracking systém, podporující vývoj software. Je možné ho zdarma stáhnout z http://www.mantisbt.org/. Systém uživatel instaluje na svém počítači nebo serveru. Současný stable release je verze 1.1.6 současná (7.4. 2009) poslední vývojová verze je 1.2.0a3. Mantis může být instalován na Microsoft Windows, Mac OS, OS/2 a také Unix. Většina webových prohlížečů by měla být schopna Mantis zobrazit. Mantis se vyznačuje jednoduchým grafickým rozhraním. Úkoly jsou jasně rozděleny do skupin a jejich stav je rozlišen na první pohled podle barvy. Pro vyhledání určitého úkolu Mantis disponuje různými filtry. Mezi další zajímavé funkce Mantisu patří wiki, change log, road map a možnost propojení s verzovacím systémem. Road map přehledně ukazuje splněné a nesplněné úkoly na projektu a jejich poměr. Z verzovacích systémů je v Mantis uzpůsoben pouze na spolupráci s CVS, který bohužel nepatří mezi nejnovější systémy pro správu verzí. Pro vyzkoušení funkcí Mantisu je na stránkách projektu umístěno demo, které po registraci umožní uživateli vyzkoušet většinu funkcí, kromě těch vyžadujících upload, či jinou manipulaci se soubory. 10

Náhled: Obrázek 2: Mantis - Náhled UI Zdroje: MantisBT: Requirements [online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.mantisbt.org/requirements.php>. MantisBT: CVS Integration[online]. [2000-2009] [cit. 2009-04-07]. EN. Dostupný z WWW: <http://www.mantisbt.org/manual/manual.installation.cvs.integration.php>. Wikipedie: Mantis[online]. [2008-12-28] [cit. 2009-04-07]. CZ. Dostupný z WWW: <http://cs.wikipedia.org/wiki/mantis>. 11

3.2.4 TaskFreak! 0.6.2 Vývoj po licencí: GNU/GPL (částečně GNU/LGPL) Vývojář: Stan Ozier Domovská stránka projektu: http://www.taskfreak.org/ Cena: freeware Požadavky na instalaci: PHP 4.3.1 a vyšší (při použití SQLite PHP 4 s příslušnými rozšířeními nebo PHP 5) MySQL databáze 3.23 nebo SQLite Web server (Apache, IIS, atd.) Stručný popis: TaskFreak je webově založeným systémem pro správu úkolů. Na domovských stránkách projektu http://www.taskfreak.org/ je k dispozici několik verzí pro instalaci. Rozdíly verzí jsou v používané databázi a počtu uživatelů. Na výběr je jednouživatelská verze a více uživatelská verze s neomezený počtem uživatelů. Pro vyzkoušení funkcí TaskFreku si můžete prohlédnout demo víceuživatelské verze na domovských stránkách. Protože TaskFreak je vyvíjen jako open source a je poměrně hojně užívaný, bylo k němu dopsáno množství pluginů. Pluginy přidávají funkce jako upozornění na změny pomocí mailu a další. Zajímavostí na vývoji je, že některé soubory pochází z Tirzen Frameworku. Tyto části jsou šířeny pod licencí LGPL (Lesser General Public Licence). To znamená, že je můžete volně používat a to i v komerčních projektech. TaskFreak disponuje velmi přehledným GUI na druhou stranu jsou jeho funkce omezené pouze na správu úkolů. Umožňuje spravovat úkoly více uživatelů na více projektech. Viditelnost úkolů se dá nastavit. Bud to pro všechny, pro všechny na projektu, kam spadá úkol, nebo pouze pro tvůrce úkolu. Pro jednoduché vyhledání jsou pro uživatele připraveny filtry. Úkoly je v rámci projektu možno dělit do několika kategorií a je možné úkoly komentovat a sledovat stav jejich splněnosti (20%, 40%, 60%, 80%, 100%). Bohužel nelze přidávat přílohy k úkolům a chybí i možnost na propojení s nějakým verzovacím systémem pro správu kódu. Zajímavou funkcí TaskFreaku je možnost vygenerování verze pro tisk z právě zobrazených úkolů. 12

Náhled: Obrázek 4: TaskFreak - Náhled UI Zdroje: TaskFreak! [online]. [2000-2008] [cit. 2009-04-23]. EN. Dostupný z WWW: <http://www.taskfreak.com/>. TaskFreak!: Versions and licenses [online]. [2000-2008] [cit. 2009-04-23]. EN. Dostupný z WWW: <http://www.taskfreak.com/licence.html>. 13

3.3 Srovnávací tabulka 3.4 Zdůvodnění výběru systému Assembla 14