Mobilní Informační Systém pro studenty škol Timins



Podobné dokumenty
STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE

ZADÁVACÍ DOKUMENTACE Comenis 2.0

Microsoft SharePoint Portal Server Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR

Konfigurace pracovní stanice pro ISOP-Centrum verze

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

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

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ

Zápočtová úloha z předmětu KIV/ZSWI DOKUMENT SPECIFIKACE POŽADAVKŮ

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

Základní informace a postup instalace systému ISAO

ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE

CZ.1.07/1.5.00/

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Základní informace pro zprovoznění Aktovky Dozory IS MPP

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í

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

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIV Windows server 2003 (seznámení s nasazením a použitím)

Profilová část maturitní zkoušky 2013/2014

Vzdělávací obsah vyučovacího předmětu

TACHOTel manuál 2015 AURIS CZ

3.17 Využívané síťové protokoly

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

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

Demoprojekt Damocles 2404

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

T-Mobile Internet. Manager. pro Windows NÁVOD PRO UŽIVATELE

Návod k instalaci S O L U T I O N S

PRO K206 Kompletní letecký elektronický systém

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

Profilová část maturitní zkoušky 2017/2018

Popis instalace programu OCEP

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

Nová áplikáce etesty Př í přává PC ž ádátele

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

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

Copyright 2001, COM PLUS CZ a.s., Praha

Magic Power vzdálené sledování finančních dat. Popis a funkce systému. Strana: 1 / 6

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

Příručka nastavení funkcí snímání

Použití programu WinProxy

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

1 Webový server, instalace PHP a MySQL 13

Instalace demoverze

Mobilita a roaming Možnosti připojení

Nejlepší zabezpečení chytrých telefonů

1. Webový server, instalace PHP a MySQL 13

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

JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač

Úvod do tvorby internetových aplikací

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

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

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Informační systém pro podporu řízení, správu a zjišťování aktuálního stavu rozvrhované výuky

Load Balancer. RNDr. Václav Petříček. Lukáš Hlůže Václav Nidrle Přemysl Volf Stanislav Živný

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

SEMESTRÁLNÍ PROJEKT Y38PRO

Inthouse Systems s.r.o. Specifikace. Inthouse App a Inthouse Studio pro Siemens Climatix 6XX. Verze software 1.X. Revize dokumentu 6

9. Sítě MS Windows. Distribuce Windows. Obchodní označení. Jednoduchý OS pro osobní počítače, pouze FAT, základní podpora peer to peer sítí,

Databázové aplikace pro internetové prostředí PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

Programovací software ConfigTool. Základní obsluha a postup připojení k zařízení přes USB a GPRS. Verze 2.00

Co je Symantec pcanywhere 12.0? Hlavní výhody Snadné a bezpečné vzdálené připojení Hodnota Důvěra

Přechod na síťovou verzi programu

Komunikace s automaty MICROPEL. správa systému lokální a vzdálený přístup do systému vizualizace, umístění souborů vizualizace

Uživatelská dokumentace

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

Docházka 3000 evidence pro zaměstnance z více firem

3.4 Základní služby Internetu

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

počet studentů 400 počet tříd 16 počet učitelů 34

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Počítačové sítě. Počítačová síť. VYT Počítačové sítě

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě

Prehistorie. Doly Těžký průmysl

Jazz pro Účetní (export) Příručka uživatele

Wonderware Historian 2017

Obsah. Začínáme programovat v Ruby on Rails 9. Úvod Vítejte v Ruby 15. O autorovi 9 Poděkování 9

Popis instalace programu OCEP

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

Sísyfos Systém evidence činností

Úvod do aplikací internetu a přehled možností při tvorbě webu

LINUX - INSTALACE & KONFIGURACE

Kerio IMAP Migration Tool

Projekt implementace OS Linux do výuky informačních technologií

StaproFONS. Petr Siblík. Objednávání pacientů

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

DINOX IP kamery řady: DDC-xxxx DDR-xxxx DDX-xxxx DDB-xxxx

Administrační systém ústředen MD-110

Microsoft Office 2003 Souhrnný technický dokument white paper

Displej DT20-6. Update firmware. Simulační systémy Řídicí systémy Zpracování a přenos dat TM 2011_07_

Technická specifikace

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

T-Mobile Internet. Manager. pro Mac OS X NÁVOD PRO UŽIVATELE

s anténou a podstavcem CD-ROM obsahující návod a informace o záruce Ethernetový kabel (CAT5 UTP nekřížený) ADSL kabel (standardní telefonní kabel)

Uživatel počítačové sítě

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

Instalace SQL 2008 R2 na Windows 7 (64bit)

ADMINISTRACE POČÍTAČOVÝCH SÍTÍ. OPC Server

Transkript:

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