Středoškolská 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
4.
5.
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
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
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 komunikace mezi touto aplikací a systémovou službou. Tuto uto 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íť 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 plikace 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ý bázový jazyk SQL SQL. Školní evidenční systém Bakaláři, 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. FoxPro Tento poskytovatel vytvoří redukci mezi databázemi Microsoft Visual FoxPro a objektovou technologií, s kterou pracuje ADO.NET. Architektura rchitektura 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ěží po 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á prostřednictvím vnitřní sítě OS (localhost).
umožňuje
komunikaci
mezi
procesy
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í
String text = ""; //#ifdef NOKIA //# text = "Verze Nokia"; //#elseif SE //# text = "Verze pro SonyEricsson"; //#else text = "Jina verze"; //#endif
String text = ""; text = "Jina verze";
NOKIA
String text = ""; //#ifdef NOKIA text = "Verze Nokia"; //#elseif SE //# text = "Verze pro SonyEricsson"; //#else //# text = "Jina verze"; //#endif
String text = ""; text = "Verze Nokia";
String text = ""; //#ifdef NOKIA //# text = "Verze Nokia"; //#elseif SE text = "Verze pro SonyEricsson"; //#else //# text = "Jina verze"; //#endif
String text = ""; text = "Verze pro SonyEricsson";
SE
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 chlosti datových přenosů je objem přenášených dat velmi zredukován 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. 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 í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í 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é aplikac aplikacee 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 oucnost 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é technické stránce. Například rozšířením možností získávání dat ze školního evidenčního 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 CSS
HyperText Markup Language 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