Středoškolská odborná činnost 2007/2008 Obor č. 18 Informatika Mobilní Informační Systém pro studenty škol Timins Autor práce: Petr Altman SPŠ Strojnická, Klatovská 109, Plzeň Konzultant práce: Ing. Petr Hlávka SPŠ Strojnická, Klatovská 109, Plzeň Plzeň, 2008 1
Prohlašuji tímto, že jsem soutěžní práci vypracoval samostatně pod vedením Ing. Petra Hlávky a uvedl v seznamu literatury veškerou použitou literaturu a další informační zdroje včetně internetu. V Plzni dne vlastnoruční podpis autorů 2
Anotace Timins je informační systém určený pro poskytování aktuálních týdenních a denních rozvrhů včetně případných změn a dalších informací studentům školy prostřednictvím celosvětové sítě Internet a mobilního telefonu. Celý systém pracuje po počátečním nakonfigurování plně automaticky bez nároků na další obsluhu. Poskytované informace jsou automaticky získávány serverovou aplikací informačního systému z databází školního evidenčního systému Bakaláři. Aplikace na mobilním telefonu tak studentovi zprostředkuje v příjemném grafickém prostředí prostřednictvím Internetu žádané informace, a to vždy v aktuální formě. Student aplikaci může snadno získat stažením z webových stránek http://www.timins.xf.cz, které jsou součástí projektu, a to jak prostřednictvím PC, tak i prostřednictvím mobilního telefonu. Informační systém je určen především pro studenty. V budoucnu není vyloučeno, po domluvě s autory systému Bakaláři, informační systém rozšířit i na mobilní telefony učitelů. 3
4
Obsah 1. Úvod... 6 2. Diagram informačního systému... 7 3. Metodika... 8 3.1. Metodika aplikací serveru... 8 3.1.1. Technologický souhrn serverových aplikací... 9 3.2. Metodika klientské aplikace... 10 3.3. Technologický souhrn řešení síťové komunikace... 11 4. Server informačního systému... 12 4.1. Rozdělení aplikací serveru... 12 4.2. Serverová aplikace... 13 4.2.1. Popis serverové aplikace... 13 4.2.2. Způsob získávání a zpracování informací... 13 4.2.3. Diagram serverové aplikace... 13 4.2.4. Ilustrační UML diagram serverové aplikace... 14 4.3. Konfigurační aplikace systémové služby... 15 4.3.1. Popis konfigurační aplikace... 15 4.3.2. Editor přihlašovacích jmen... 15 4.3.3. Diagram konfigurační aplikace... 15 4.3.4. Ilustrační obrázky konfigurační aplikace... 16 5. Klientská aplikace... 18 5.1. Popis klientské aplikace... 18 5.2. Online režim... 19 5.3. Offline režim... 19 5.4. Způsob distribuce aplikace studentům... 20 5.5. Ilustrační obrázky klientské aplikace... 21 6. Budoucnost vývoje informačního systému... 23 7. Výsledky... 24 8. Diskuse... 24 9. Závěr... 24 10. Seznam použitých zkratek... 25 11. Seznam použité literatury... 26 5
1. Úvod Nápad k tomuto projektu jsem získal již od nástupu na střední školu, kdy docházelo, oproti základní škole, hlavně na počátku nového školního roku k úpravám týdenních rozvrhů. Zejména pak pamatování si často rozsáhlých každodenních změn pro nadcházející den mě dokázalo často potrápit. Proto s postupem rozvoje mobilních technologií mě napadlo řešení, které by dokázalo orientaci ve změnách v rozvrhu efektivně vyřešit. Po třech letech poté, co jsem rozvíjel své vědomosti a zkušenosti v oblasti svého koníčku programování jsem získal potřebný základ k tomu, abych mohl tento nápad realizovat. Vytvořil jsem tak poměrně rozsáhlý mobilní informační systém, který poskytuje jak aktuální týdenní rozvrhy, tak i aktuální denní rozvrhy se změnami studentům přímo na jejich mobilní telefon prostřednictvím celosvětové sítě Internet. Vývoj projektu ale neprobíhal vždy úplně bez problémů. Problémy spočívaly zejména v oblastech, s kterými jsem neměl příliš zkušeností. Například s řešením serverové aplikace, u které je potřeba, aby byla spuštěna i poté, kdy pod operačním systémem nebude přihlášen žádný uživatel. Dalším úskalím bylo vyřešení získávání dat z evidenčního systému Bakaláři, která jsou využita pro generování aktuálních rozvrhů. Na druhou stranu však nejmenší obtíže znamenala komunikace prostřednictvím sítě Internet s mobilními telefony. S touto komunikací jsem již předtím získal bohaté zkušenosti a tak díky správné volbě síťové topologie klient-server a použitím protokolu TCP/IP pro přenos datových paketů jsem vytvořil kvalitní základ pro komunikaci. Celý informační systém je založen především na běžně používaných, a tím i běžným uživatelům snadno přístupných, výpočetních a mobilních technologiích. Toho je zejména docíleno použitím platforem Microsoft.NET Framework verze 2.0 a mobilní platformy Java 2 Micro Edition (J2ME) v konfiguraci MIDP 1.0 a CLDC 1.0. Zvolení nejnižší konfigurace platformy J2ME zaručuje použití informačního systému prostřednictvím nejširšího možného okruhu mobilních telefonů, jež tuto platformu podporují těch je v této době masivní většina. 6
2. Diagram informačního systému Obrázek č. 1.- Diagram informačního systému- zeleně zvýrazněné bloky jsou aplikace informačního systému
3. Metodika Vývoj informačního systému neprobíhal tak úplně přímočaře. Celý proces probíhal v období necelých tří měsíců, během kterého došlo i k radikálním změnám od předpokládaného řešení. Celkem tak ve výsledku informační systém sestává ze tří aplikací. Hlavní částí - mozkovnou - celého informačního systému je serverová aplikace, jež je řešena jako systémová služba tak, aby běžela na pozadí operačního systému i bez nutnosti být do tohoto operačního systému stále přihlášen. Druhou část systému tvoří konfigurační aplikace pro hlavní serverovou aplikaci. Právě z důvodu řešení serverové aplikace jako systémová služba, bylo nutné vytvořit uživatelské rozhraní pro nastavování parametrů této služby. K tomu slouží konfigurační aplikace. Celý systém uceluje poslední ze tří aplikací, a to klientská aplikace pro mobilní telefony. Tato aplikace je, jak již název napovídá, určena pro koncové uživatele, v tomto případě studenty. Aplikace především zobrazuje informace na displeji mobilního telefonu a také zajišťuje veškeré informace prostřednictvím bezdrátové technologie GPRS ze sítě Internet. Diagram rozložení informačního systému je zobrazen na obrázku č. 1. 3.1. Metodika aplikací serveru Nejobsáhlejším řešením, kde jsem musel čelit velkému počtu problémů, je bezesporu server informačního systému. Ten právě plní veškeré funkce, které je informační systém schopen nabídnout. Prvním krokem při vytváření serverové aplikace bylo řešení získávání dat z databází evidenčního systému Bakaláři. To byl asi nejtvrdší oříšek, protože v té době jsem tento systém neznal a jen jsem předpokládal, jak tento oříšek rozlousknout. Po domluvě s vedením školy jsem získal demoverzi systému a moje práce mohla začít. S tím přišly i další problémy. První problém spočíval v kompatibilitě databázových technologií. Databáze systému Bakaláři jsou ukládány v databázích Microsoft Visual FoxPro a platforma, pro kterou je serverová aplikace informačního systému napsána, používá technologii ADO.NET. Vzájemnou kompatibilitu databázových technologií jsem vyřešil použitím tzv. providera - Microsoft OLE DB Provider for Visual FoxPro jenž zajistil objektový přístup k databázím. Další komplikace představovala struktura databází. Protože se mi nepodařilo zajistit popis struktury databází, musel jsem jej zjistit empiricky. Prošel jsem tak veškeré databáze, které systém používá a sestavil si tak přibližnou strukturu, kterou jsem pak aplikoval do svého řešení informačního systému. Další, a také nejdůležitější aspekt informačního systému, který bylo nutné vyřešit, byla schopnost komunikace mezi serverovou a klientskou aplikací prostřednictvím celosvětové sítě Internet. V této oblasti jsem již získal mnoho zkušeností, a proto nebylo zapotřebí řešit větší problémy. Síťovou topologii jsem zvolil osvědčenou topologii klient-server. Celá komunikace probíhá po síti ethernet a datové pakety jsou přenášeny protokolem TCP/IP. Serverová aplikace je napsána v jazyce C# pro platformu MS.NET Framework 2.0. Zpočátku vývoje byla serverová aplikace řešena jako standardní aplikace pro operační systém MS Windows. Během prvních testování aplikace na školním serveru jsem však zjistil, že to není správné řešení. A to z toho důvodu, že při běžném provozu školního serveru není pod OS přihlášen žádný uživatel. Tím je znemožněn běh standardních aplikací po odhlášení uživatele, který aplikaci spustil. Tento problém jsem vyřešil řešením serverové aplikace jako systémová služba, která právě může běžet na pozadí OS i po odhlášení uživatele. S tím však přišel další problém. Systémová služba nedokáže poskytnout uživatelské rozhraní, pomocí kterého by bylo možné 8
službu konfigurovat. Proto jsem musel napsat druhou aplikaci konfigurační aplikaci - která toto rozhraní zprostředkuje. Dalším krokem bylo vytvoření komunikace mezi touto aplikací a systémovou službou. Tuto komunikaci jsem zajistil použitím technologie.net Remoting, která dokáže zprostředkovat komunikaci mezi dvěma nezávislými procesy prostřednictvím sítě. Pro potřeby svého projektu mi postačila lokální síť OS localhost. 3.1.1. Technologický souhrn serverových aplikací Aplikace serveru, a to jak hlavní serverová aplikace, tak i konfigurační aplikace, je napsána v plně objektovém jazyce C# a využívá tak moderní platformu Microsoft.NET Framework ve verzi 2.0. Aplikace jsou určeny pro operační systémy Microsoft Windows 98, 2000, XP, Vista, Server 2003, a vyšší. Pro komunikaci s databázemi je použita technologie ADO.NET, jež je schopna poskytnout obsah databází jako objektový model a využívá k tomu standardní databázový jazyk SQL. Školní evidenční systém Bakaláři, jehož databáze jsou zdrojem informací pro informační systém, však používá odlišnou databázovou technologii - Microsoft Visual FoxPro - než s kterou je ADO.NET běžně schopen pracovat. Proto je nutné nainstalovat alovat tzv. provider (poskytovatel) - Microsoft OLE DB Provider for Visual FoxPro. Tento poskytovatel vytvoří redukci mezi databázemi Microsoft Visual FoxPro a objektovou technologií, s kterou pracuje ADO.NET. Architektura technologie ADO.NET je zobrazena na obrázku č. 2. Obrázek č. 2.- architektura ADO.NET S nevyhnutelným řešením hlavní serverové aplikace jako systémová služba, která běží pouze na pozadí OS a tak nedokáže poskytnout uživatelské rozhraní, bylo nutno vytvořit konfigurační ní aplikaci, jež toto uživatelské rozhraní zprostředkuje. Tím vznikla nemalá komplikace a to z toho hlediska, že OS chápe dvě běžící aplikace jako dva navzájem oddělené procesy. Proto nelze triviálním způsobem vyřešit komunikaci mezi nimi. Byla k tomu proto 9
použita technologie.net Remoting, která umožňuje komunikaci mezi procesy prostřednictvím vnitřní sítě OS (localhost). Ukládání externího nastavení systémové služby a databáze uživatelů na pevný disk je řešeno pomocí, v poslední době velmi oblíbeného, formátu XML. 3.2. Metodika klientské aplikace Hlavní přednost tohoto informačního systému představuje schopnost poskytování rozvrhů hodin studentům prostřednictvím mobilního telefonu. Aby bylo možné rozvrhy získávat a následně zobrazovat prostřednictvím displeje mobilního telefonu, vytvořil jsem pomocí jazyka Java klientskou aplikaci spustitelnou na masivní většině telefonů s podporou platformy J2ME. Při návrhu a následné realizaci mobilní aplikace jsem využil své zkušenosti nabyté během vývoje mobilních her a aplikací pro tuto platformu. I přes to však nešlo vše bez problémů a setkal jsem se s několika problémy, které jsem musel řešit. Hlavní komplikaci představovala kompatibilita síťové komunikace dvou rozdílných platforem platformy MS.NET a platformy J2ME. Obě platformy sice používají stejné technologie pro přenos datových paketů, ale každá z těchto platforem je používá trochu jinak. Hlavní rozdíl spočívá v posloupnosti přenášení bajtů více bajtových proměnných. Tento problém jsem snadno vyřešil napsáním vlastní implementace přenosu dat a zajistil jsem tak vzájemnou kompatibilitu obou platforem. Je přirozené, že mobilní telefony se vyvíjejí, a to nejen v možnostech, ale i například zvyšováním rozlišení displeje. Pokud k tomu přidáme svéráznou implementaci platformy J2ME u některých výrobců mobilních telefonů, máme zde komplikaci v podobě nekompatibility. To znamená, že není možné vytvořit jedinou verzi aplikace, která by spolehlivě běžela na mobilních telefonech všech typů a značek. Z tohoto důvodu se vytváří vždy více tzv. portů, jež jsou určeny vždy pro konkrétní zařízení, či skupinu zařízení. K vytváření těchto portů, často se jedná o velké množství, se používá tzv. preprocesor. Jazyk Java preprocesor nemá přímo zabudovaný, ale obstarává je například technologie Apache ANT (Another Neat Tool) ve spolupráci s technologií Antenna. Jedná se o skriptovací jazyk, jenž umožňuje plně zautomatizovat vytváření rozdílných verzí aplikací prostřednictvím značek preprocesoru ve zdrojovém kódu aplikace. 10
Příklad výsledku použití preprocesoru Definovaná značka Zdrojový kód po preprocesingu Výsledek zdrojového kódu Není NOKIA String text = ""; //#ifdef NOKIA //# text = "Verze Nokia"; //#elseif SE //# text = "Verze pro SonyEricsson"; //#else text = "Jina verze"; //#endif String text = ""; //#ifdef NOKIA text = "Verze Nokia"; //#elseif SE //# text = "Verze pro SonyEricsson"; //#else //# text = "Jina verze"; //#endif String text = ""; text = "Jina verze"; String text = ""; text = "Verze Nokia"; SE String text = ""; //#ifdef NOKIA //# text = "Verze Nokia"; //#elseif SE text = "Verze pro SonyEricsson"; //#else //# text = "Jina verze"; //#endif String text = ""; text = "Verze pro SonyEricsson"; 3.3. Technologický souhrn řešení síťové komunikace Hlavní výhoda informačního systému spočívá ve schopnosti komunikovat prostřednictvím celosvětové informační sítě Internet a získávat tak od serverové aplikace vždy aktuální informace. Pro tuto komunikaci je využito síťové topologie klient-server a pro přenos dat standardní protokol TCP/IP umožňující kvalitní přenos včetně kontroly přijatých datových paketů. V případě mobilního telefonu je přenos dat řešen za pomoci technologie GPRS, která prostřednictvím mobilního operátora propojuje mobilní telefon s internetem. 11
4. Server informačního systému 4.1. Rozdělení aplikací serveru Server informačního systému se skládá z dvou oddělených aplikací. Jedná se především o hlavní serverovou aplikaci, řešenou jako systémová služba, a dále o konfigurační aplikaci určenou pro uživatelské nastavení serverové aplikace. Diagram rozdělení aplikací serveru a jejich začlenění do systému je zobrazen na obrázku č. 3. Obrázek č. 3. - Diagram rozdělení serveru informačního systému 12
4.2. Serverová aplikace 4.2.1. Popis serverové aplikace Serverová aplikace je hlavním mozkem celého informačního systému. Zajišťuje tak získávání dat z databází evidenčního systému Bakaláři, které dále zpracovává na informace, jež dále poskytuje síťovým serverem prostřednictvím sítě Internet mobilní klientské aplikaci. Aplikace je řešena jako systémová služba. Běží tedy pouze na pozadí operačního systému a nedokáže tak zprostředkovat uživatelské rozhraní to zajišťuje konfigurační aplikace, viz kapitola 4.3. Objektový model serverové aplikace je zobrazen pomocí UML diagram na obrázku č. 5. 4.2.2. Způsob získávání a zpracování informací Hlavním zdrojem informací, poskytovaných tímto informačním systémem, jsou databáze školního evidenčního systému Bakaláři. Získávání dat je zprostředkováno pomocí objektové technologie ADO.NET a jazyka SQL. Důležitým faktem, u způsobu získávání dat z těchto databází je, že informační systém k databázím přistupuje pouze v režimu čtení. Účelem informačního systému není databáze měnit, pouze číst proto v žádném případě nemůže dojít k jejich změně nebo poškození. Samotná data, získaná z databází systému Bakaláři, jsou serverovou aplikací načtena pouze v surovém stavu. Evidenční systém Bakaláři, například pro týdenní rozvrh, má údaje o rozvrhu uchovány ve formě úvazků pro učitele. Bylo tedy zapotřebí vytvořit algoritmus, který se postará o generování rozvrhů hodin, jež bude možné předat klientské aplikaci a zobrazit je studentovi. Tento algoritmus generuje rozvrh na základě aktuálního data, cyklu a třídy, pro kterou je určen. Obdobně funguje algoritmus pro generování denních rozvrhů s rozdílem, že je generován pouze jeden den pro požadovaný datum. 4.2.3. Diagram serverové aplikace Obrázek č. 4. - Diagram serverové aplikace 13
4.2.4. Ilustrační UML diagram serverové aplikace Obrázek č. 5. - Ilustrační UML diagram serverové aplikace 14
4.3. Konfigurační aplikace systémové služby 4.3.1. Popis konfigurační aplikace Díky řešení hlavní serverové aplikace jako systémové služby bylo zapotřebí umožnit uživateli aplikaci snadno konfigurovat. Pro splnění tohoto účelu byla vytvořena druhá aplikace, již řešená jako běžná aplikace s uživatelským rozhraním. Pomocí uživatelského rozhraní této aplikace je možné řídit systémovou službu, tj. zahájit či zastavit její běh, dále sledovat kompletní dění v celém informačním systému pomocí logování zaznamenávání činnosti aplikace do externího souboru. Především však umožňuje nastavovat parametry, jak pro přístup k databázím systému Bakaláři, tak i parametry síťového serveru. Dále umožňuje vytváření databáze registrovaných uživatelů, respektive databázi studentů, obsahující přihlašovací jména a hesla, kteří mají oprávnění informace od informačního systému požadovat. 4.3.2. Editor přihlašovacích jmen Pro vytváření databáze registrovaných uživatelů slouží editor přihlašovacích jmen - viz obrázek č. 11. Tento editor umožňuje rychlé vytváření přihlašovacích jmen pro všechny studenty školy. Používá k tomu databázi studentů získanou ze systému Bakaláři. Ke snadnému definování, jak má přihlašovací jméno každého studenta vypadat, slouží seznam segmentů přihlašovacího jména na okně editoru umístěného v pravé části. Tyto segmenty tvoří: jméno, příjmení, třída a rok nástupu studenta. Jejich pomocí je tak možné poskládat strukturu, podle které budou následně vytvořena přihlašovací jména pro všechny studenty získané z databáze studentů systému Bakaláři. Po vygenerování přihlašovacích jmen je však také možné, že některá automaticky vytvořená přihlašovací jména, kvůli stejným jménům studentů, mohou být stejná. Pro řešení této situace slouží rozhraní, kde lze manuálně stejná přihlašovací jména změnit viz obrázek č. 12. 4.3.3. Diagram konfigurační aplikace Obrázek č. 6. - Diagram konfigurační aplikace 15
4.3.4. Ilustrační obrázky konfigurační aplikace Obrázek č. 7.- rozhraní pro řízení služby serverové aplikace Obrázek č. 8.- logování činností serverové aplikace 16
Obrázek č. 9. - seznam registrovaných uživatelů Obrázek č. 10. - předvolby serverové aplikace 17
Obrázek č. 11. - editor přihlašovacích jmen Obrázek č. 12. - okno pro řešení konfliktů generovaných přihlašovacích jmen 5. Klientská aplikace 5.1. Popis klientské aplikace Poslední uvedenou, přesto nejvýznamnější, aplikací je klientská aplikace. Tato aplikace je určena pro spuštění na mobilních telefonech studentů. Aplikace proto obsahuje především přehledné grafické uživatelské rozhraní, jež umožňuje snadné ovládání aplikace. Studentovi je tak snadno zpřístupněno zobrazení týdenního a denního rozvrhu včetně zahrnutých případných změn a dalších užitečných informací. Nastavení aplikace lze snadno upravovat. Jedná se především o nastavení IP adresy a síťového portu pro připojení k serveru prostřednictvím sítě Internet. Dále o nastavení přihlašovacích údajů studenta a v neposlední řadě o možnost měnit heslo pro přihlášení do informačního systému. Pro plné využití potenciálu tohoto informačního systému je však zapotřebí komunikace se serverem informačního systému prostřednictvím sítě Internet. Je tak umožněno získávat kdekoli a vždy aktuální informace, ať již pevné týdenní rozvrhy hodin, či rozvrhy na dnešní nebo jakýkoli jiný den včetně aktuálních změn v učebním plánu školy. Je však zbytečné připojovat se opětovně k internetu, pokud je aplikace používána několikrát denně. Proto je studentovi umožněno vybrat si mezi dvěma režimy - online a offline. 18
5.2. Online režim V režimu online je aplikace připojena k síti Internet a umožňuje tak získávat vždy aktuální informace. Z důvodu rychlosti datových přenosů je objem přenášených dat velmi zredukován. A to za pomoci ověřovacího algoritmu, který v případě, že je informace již uložena v paměti mobilního telefonu, provede pouze ověření jejího data platnosti. V případě, že je datum platné, načte se informace z paměti telefonu a tím tak odpadá nutnost informaci opětovně z Internetu získávat. Blokový diagram algoritmu je zobrazen na obrázku č. 13. Obrázek č. 13. - Blokový diagram algoritmu pro ověřování a získávání aktuálního rozvrhu 5.3. Offline režim Režim offline umožňuje poskytování informací bez nutnosti připojení k Internetu. V tomto případě však neposkytne aktuální informace, nýbrž informace, jež byly získané během posledního připojení, tj. během posledního online režimu. Přednost tohoto režimu je především v pohotovosti, úspoře datových přenosů a s tím souvisejícím finančním ulehčením, i přes skutečnost, že se jedná řádově jen o desítky haléřů. 19
5.4. Způsob distribuce aplikace studentům Pro snadné poskytnutí klientské aplikace koncovým uživatelům byla vytvořena webová stránka na adrese http://www.timins.xf.cz za pomoci jazyků HTML a CSS. Tato stránka poskytuje uživateli aplikaci získat, a to buď stažením pomocí počítače a následného nainstalování alování aplikace do mobilního telefonu, nebo pohodlnějším způsobem OTA (Over The Air), který umožňuje aplikaci získat stažením prostřednictvím webového prohlížeče přímo v mobilním telefonu. Obrázek č. 14. - Webová stránka pro distribuci klientské aplikaci 20
5.5. Ilustrační obrázky klientské aplikace Obrázek č. 15. - Hlavní menu klientské aplikace Obrázek č. 16. - Hlavní menu klientské aplikace 21
Obrázek č. 17. - Zobrazení týdenního rozvrhu klientskou aplikací Obrázek č. 18. - Výběr dne pro zobrazení denního rozvrhu 22
Obrázek č. 19. - Zobrazení denního rozvrhu Obrázek č. 20. - Zobrazení informací o vybrané hodině 6. Budoucnost vývoje informačního systému Další vývoj projektu by se mohl ubírat především směrem poskytování dalších užitečných informací, jako například rozvrhy učeben, rozvrhy učitelů, zpravodajství školy, apod. Mimo to lze tento projekt dále rozvíjet i po technické stránce. Například rozšířením možností získávání dat ze školního evidenčního systému Bakaláři prostřednictvím SQL serveru, či rozvojem dalších možností informačního systému. 23
7. Výsledky Výsledkem projektu je mobilní informační systém, který zprostředkovává studentům školy prostřednictvím mobilního telefonu a celosvětové sítě Internet rozvrhy hodin a denní změny v rozvrzích. Data pro generování rozvrhů hodin jsou získávána z databází evidenčního systému Bakaláři. Tato data jsou následně zpracována do formy, která je předána prostřednictvím sítě Internet klientské aplikaci na mobilním telefonu, jenž rozvrhy zobrazí v grafické podobě. Výsledné řešení je tedy schopné spolehlivě zprostředkovat vždy aktuální týdenní rozvrhy i denní rozvrhy včetně zahrnutých změn. Mimo rozvrhy je informační systém schopen poskytovat i další informace zde je nutné zdůraznit důležitý aspekt, že poskytovaná data nejsou citlivého, či osobního charakteru. 8. Diskuse Výsledný mobilní informační systém Timins s sebou přinesl očekávaná vylepšení dosavadního způsobu informování studentů ve školách o rozvrzích hodin a denních změnách v rozvrhu. Hlavní inovace oproti dosavadnímu způsobu informování vychází již ze samotné podstaty informačního systému, a to schopnost získávat vždy aktuální týdenní i denní rozvrhy hodin prostřednictvím mobilního telefonu. Evidenční systém Bakaláři, jehož databáze jsou zdrojem informací pro informační systém Timins, má sice také schopnost informování o změnách prostřednictvím mobilního telefonu, ale informační systém Timins tyto schopnosti posunuje na zcela jinou úroveň. Oproti systému Bakaláři, který informuje prostřednictvím krátkých textových zpráv SMS - systém Timins využívá modernějšího a flexibilnějšího řešení získávání dat prostřednictvím celosvětové sítě Internet a použitím mobilní platformy Java. Právě použitím platformy mobilní Javy je dosáhnuto přehledného grafického zobrazení rozvrhů a ve spojení s komunikací prostřednictvím sítě Internet je dosaženo získání rozvrhů hodin kdekoli a kdykoli v aktuální formě. Systém Bakaláři navíc toto řeší jen pro vyučující, a tudíž pro studenty dosud nebyla žádná jiná možnost, jak prostřednictvím mobilního telefonu snadno získat platný rozvrh hodin. 9. Závěr Vývoj a testování informačního systému v reálném provozu školy přinesl výrazné inovace v dosavadním způsobu informování žáků o rozvrzích hodin. Využitím moderních softwarových a mobilních technologií poslední doby, včetně zahrnutí celosvětové sítě Internet, se podařilo vyvinout takové řešení, které rozšiřuje informační možnosti škol, v nichž do této doby nebyly uplatněny mobilní technologie jako prostředek pro získání aktuálních rozvrhů hodin a dalších informací školního charakteru. Proto by informační systém tohoto druhu mohl najít ve školství praktického uplatnění. 24
10. Seznam použitých zkratek Zkratka Význam OS Operační systém PC Personal Computer Osobní počítač SQL Structured Query Language strukturovaný dotazový jazyk pro rozsáhlé databáze J2ME Platforma Java 2 Micro Edition pro mobilní telefony a další zařízení MIDP Mobile Information Device Profile CLDC Connected Limited Device Configuration.NET dotnet - objektová technologie společnosti Microsoft ANT Another Neat Tool IP Internet Protocol TCP Transmission Control Protocol UML Unified Modelling Language OTA Over The Air HTML HyperText Markup Language CSS Cascading Style Sheets 25
11. Seznam použité literatury J2ME v kostce, Kim Topley, 1. Vydání, Grada Publishing a.s., 2004, ISBN 80-247-0426-9 Dokonalý kód, Steve McConnell, 1. Vydání, Computer Press a.s., 2005, ISBN 80-251-0849-X UML 2 a unifikovaný proces vývoje aplikací, 2. Vydání, Computer Press a.s., 2007, ISBN 978-80-251-1503-9 CSS kaskádové styly pro webdesignéry, 1. Vydání, Mobil Media a.s., 2003, ISBN 80-86593-35-5 Živě: Elektronický magazín o výpočetní technice a informačních technologiích [online]. Computer Press a.s. URL: http://www.zive.cz/programovani/c_csharp/sc-74/default.aspx MSDN: Microsoft Developer Network [online]. Microsoft Corporation. URL: http://msdn2.microsoft.com PCSvět: Počítače, programování, komunikace [online], internet. P.E.S. Consulting s.r.o. URL: http://www.pcsvet.cz/art/article.php?id=5242 Interval: Webdesign a vývoj aplikací [online]. Zoner Software s.r.o. URL: http://interval.cz/vyvoj-aplikaci/j2me 26