Článek na Odborném semináři Nymburk99.

Aplikace informačních systémů:

Informační systémy, výzkum a univerzity

Jan Pazdziora, Fakulta informatiky, Masarykova univerzita, Brno
adelton@fi.muni.cz
Abstrakt:
Informační systém pro podporu studijních a výzkumných agend, používaný a vyvíjený na Masarykově univerzitě v Brně, je příkladem nasazení informačního systému k usnadnění komunikace mezi členy organizace. Díky využití otevřených technologií ho mohou využívat všichni členové akademické obce Fakulty informatiky, do budoucna i celé univerzity.

Administrativní server FI MU

Začátek projektu spadá do poloviny roku 1995, kdy vznikl požadavek na zajištění registrace studentů do předmětů v nově zaváděném kreditním systému studia. Šlo o podporu asi 300 studentů, s perspektivním růstem v té době nové fakulty na dnešních téměř 1000 studentů a možnost dalšího rozšíření na celou univerzitu. Registrací vyjadřuje student v kreditním systému studia ještě v průběhu předchozího semestru svůj nezávazný zájem navštěvovat určité kursy. Tato informace je pak využita ke zrušení kurzů, o které není zájem, k vytvoření rozvrhu, který by obsahoval co nejméně kolizí, a samozřejmě k dlouhodobému přehledu o zájmu o jednotlivé přednášky.

Možná řešení:

  • vytisknout názvy předmětů na archy papíru a nechat studenty, aby na studijním oddělení nahlásili svůj zájem;
  • vylepit archy na zdech chodeb/nástěnky a nechat studenty, aby se zapisovali sami;
  • zpřístupnit informace o předmětech elektronicky a dát každému studentovi možnost modifikovat svůj registrační záznam.

Poslední řešení ušetří čas pracovnic na studijním oddělení, nejasnosti při zpracování papírových seznamů, dává okamžitý přehled i přesná data pro další zpracování. Informaci z registrace je dále možno studentovi nabídnout při zápisu do semestru, již pouze k doplnění a potvrzení.

Je zřejmé, že v kreditním systému se každý jednotlivý student stává důležitým partnerem školy, zapojení všech studentů je tedy velmi důležité. (Srovnejme s klasickým stavem panujícím ještě dnes na mnoha fakultách, nejen mimo MU: ročníkové plány studia vytváří určený proděkan, student se pouze na začátku semestru dozví, co bude letos studovat a jaký má rozvrh; zde žádný vstup od studentů není třeba a často není ani žádoucí.)

Potřebujeme tedy zpřístupnit informace všem studentům, samozřejmě také vyučujícím, aby mohli samostatně editovat sylaby svých předmětů a doplňovat další informace; a všem ostatním zainteresovaným osobám (studijní oddělení, děkanát). Musíme zvolit technologii, která bude dostupná všem z této heterogenní množiny osob, a vzít přitom do úvahy, že není možné po vzoru komerčních firem věnovat miliony na zakoupení nového jednotného technického vybavení a software.

Volba padla na použití WWW prohlížečů se šifrovaným spojením (HTTPS). To umožňuje přístup k informacím z libovolného počítače s prohlížečem, který se během doby stal standardním softwarovým vybavením bez ohledu na hardwarovou platformu či operační systém. Toto je obrovská výhoda oproti klasickým informačním systémům, které požadují speciální software na každém klientském pracovišti a každá nová verze znamená přeinstalování desítek pracovišť. Což vyžaduje čas správců, finanční náklady na licence, nutnost provést upgrade v krátkém časovém okamžiku. Výsledkem bývá stav, že informační systémy jsou přístupné jen velmi úzké skupině ,,vyvolených``. My ale potřebujeme, aby se systémem pracovali všichni studenti a učitelé fakulty, a aby byl systém dostupný nejen z učeben a kanceláří na fakultě, ale i z domácích počítačů připojených přes modemový server, či z libovolného jiného počítače na světě.

Použitím standardní a otevřené technologie WWW máme tedy zajištěnu dostupnost systému, stejně důležité je ale zajištění soukromí. Chceme, aby každý student viděl pouze svou registraci, aby každý učitel mohl opravovat sylaby (pouze těch) předmětů, které učí. Pokud je ale například postgraduální student zároveň vyučujícím, musí mít samozřejmě snadný přístup k oběma aplikacím. Primární zajištění přístupu k systému bylo založeno na účtech z Unixových serverů, kde studenti i učitelé přijímají poštu, spolu s údaji o studentech ze studijního oddělení, a o zaměstnancích z dat oddělení personálního. Znamenalo to netriviální práci spojenou s čištěním duplicitních a nepřesných záznamů, výsledkem ale je systém, kde každá fyzická osoba má podle svých funkcí zpřístupněny odpovídající informace.

Stávající aplikace studijních agend

Ke vcelku jednoduché registraci přibyla v průběhu let téměř kompletní sada aplikací, které nyní zajišťují komunikaci mezi studenty, učiteli a studijním oddělením.

V průběhu semestru se tak uživatelé setkávají například s následujícími funkcemi informačního systému:

  • Výsledky registrací jsou použity pro finální rozhodnutí o vypsání jednotlivých předmětů v semestru, a jsou také poloautomaticky zpracovány do návrhu rozvrhu.
  • Student se těsně před začátkem semestru zapisuje do semestru. K dispozici má elektronicky jednak své preference z registrace, jednak rozvrh, takže má možnost vyladit svůj zápis tak, aby vyloučil kolize a přitom si mohl zapsat co nejvíce předmětů, o něž má zájem.
  • Seznam studentů zapsaných do kurzu je v průběhu semestru dostupný učitelům daných předmětů, kteří ho mohou pomocí svého elektronického zápisníku učitele využít například k rozesílání zadání domácích úloh a jejich hodnocení, kdy je samozřejmostí, že každému studentovi přijde e-mailem pouze jeho bodové hodnocení.
  • Vypisování termínů zkoušek a s tím spojené rezervování učeben pro písemky je řešeno také prostřednictvím informačního systému, odpadá nepříjemné dohadování, zda je učebna volná nebo nikoli. Také studenti se na termín zkoušky přihlašují elektronicky.
  • Na konci semestru zadává učitel hodnocení předmětu. Má možnost udělit přímo známku, nebo například nechat sečíst udělené body za písemky či domácí úkoly za celý semestr a výsledné hodnocení nechat dopočítat podle hranic pro jednotlivé známky. Vcelku unikátní funkcí je pak odeslání PGP podepsané známky každému studentovi. Tím odpadá nutnost podepisovat i více než 400 indexů za jeden předmět -- PGP podepsaná známka má na FI MU stejnou váhu jako podpis na papíře.
  • Sylaby předmětů, které učitel vyplní na Webu, je možno díky použití SGML využít i jako základních podkladů pro tisk Seznamu přednášek fakulty na další rok.

Nejdůležitějšími principy zde stále je všeobecná dostupnost informací každému, kdo má právo je číst, případně měnit. Dalším podstatným rysem je, že většina údajů má jeden primární zdroj, kde jsou udržovány ve správném tvaru. Administrativní server FI není možno striktně zaškatulkovat do oblíbených termínů technologických teoretiků: spojuje v jediném systému vše od Internetu po Intranet. Pokud totiž někdo na fakultě vyučuje, je tato základní informace použita jak k výpisu seznamu učitelů, dostupnému celému světu, tak s množstvím doplňujících informací v autentikované sekci pro studenty a ostatní zaměstnance.

Otevřený přístup k datům vedl k výraznému zvýšení správnosti uchovávaných informací. Bylo by naivní domnívat se, že od začátku byly všechny údaje správně. Pokud ale přístup uživatelů není blokován úředníky, je mnohem snazší nejen informaci získat, ale i zpětně informovat odpovědnou osobu (učitele, studijní oddělení) o případné chybě či překlepu. Naštěstí, pokud jsou data k dispozici v nějaké rozumné (elektronické) podobě, není problém je vcelku snadno zpracovat, takže přidávání dalších aplikací, pohledů a způsobů práce s daty je pak snadné.

Na druhou stranu, organizace často funguje na základě neformálních postupů, prostě jen proto, že si správný úředník pamatuje nějakou dodatečnou informaci, která je v chodu organizace klíčová. Elektronický systém musí lidem pomáhat, a proto jim musí nahradit operace, které se dělaly ručně. Proto je důležitá úzká spolupráce s budoucími uživateli. V našem případě bylo určitě výhodou, že vývojáři byli zároveň studenty či vyučujícími FI MU, tedy dokázali posoudit vhodnost jednotlivých řešení velmi rychle, a také komunikace s ostatními členy fakulty byla velmi hladká.

Počáteční nedůvěru k novému systému se podařilo překonat právě dostupností informací, jejich viditelně se zlepšující kvalitou i množstvím aplikací, které systém nabízí. Široké použití se pak vrací pozitivním způsobem zpět k vývojářům systému, v námětech ke zlepšení i v jistotě, že jsou to právě uživatelé, kteří mají zájem udržovat údaje v pořádku. Vždyť jen to, že student vidí okamžitě známky za celou dobu svého studia, tak jak jsou evidovány studijním oddělením, je velkým krokem kupředu oproti minulému stavu, kdy student jednou za rok kontroloval správnost údajů na papíře a byl odkázán na to, že případné nesrovnalosti odstraní referentka na studijním a on se zase za rok dozví, zda se tak stalo či ne.

Použité softwarové technologie

Vlastní aplikace jsou vytvořeny jako kolekce CGI skriptů v jazyku Perl, běžících pod Apache WWW serverem, nad sadou textových databází. Na vývoji se v průběhu uplynulých 3 a půl roku podílelo 6 pracovníků Centra výpočetní techniky FI MU, z nichž většina jsou studenti vyšších ročníků či PGS a kteří systém vyvíjejí mimo svou hlavní pracovní náplň. Použité nástroje jsou vesměs z kategorie open software, tedy software s nulovými pořizovacími náklady, s dostupnými zdrojovými kódy a s velmi kvalitní podporou ze strany autorů a Internetové komunity.

zajišťuje dostupnost informací velmi širokému množství uživatelů, a nezávislost vývojářů a tedy celého systému na logických posunech uvnitř uzavřených řešení komerčních firem. Právě práce ve standardním a Internetem prověřeném prostředí Secure HTTP a HTML a vědomí, že nejsme závislí na uzavřených řešeních a v případě potřeby jsme schopní jakoukoli komponentu vyprogramovat sami, byla základem životaschopnosti celého projektu, který vyrostl do důležité komunikační spojnice všech členů fakulty, s desítkami tisíc přístupů za den, ve špičkách s desítkami požadavků za sekundu. To vše za situace, kdy všechny stránky, které uživatel vidí, jsou vytvářeny dynamicky, pro každý požadavek zvlášť, protože je nutné rozlišit jemné rozdíly mezi právy jednotlivých uživatelů.

Systém je velmi konzervativní v tom, co vyžaduje na klientské straně. V principu vyhovuje jakýkoli standardní prohlížeč HTML stránek. Nepoužíváme žádná rozšíření, která by omezovala uživatele na některé platformě či naopak vynucovala její použití. To znamená, že i například JavaScript se používá jen střídmě a ke kosmetickým zlepšením funkce programů na prohlížečích, které ho podporují, nikoli pro zajištění základní funkčnosti.

Nejbližší budoucnost -- podpora studia a výzkumu na celé univerzitě

V současné době jsou principy a zkušenosti z vývoje stávajícího Administrativního serveru FI MU bohatě zužitkovávány při jeho rozšiřování na celou univerzitu. Zde na nás čeká přes 16 tisíc studentů a několik tisíc zaměstnanců, kterým chceme postupně poskytnout stejné aplikace, jaké jsou dostupné členům Fakulty informatiky. Na zvládnutí řádově většího množství dat zde využíváme relační databázový server od firmy Oracle, který kromě klasického databázového výkonu nabízí například i technologii ConText pro fultextové vyhledávání, a místo jednoduchého počítače třídy PC s operačním systémem Linux přecházíme na výkonný server od firmy Sun. Jinak ale zůstávají principy budovaného systému stejné: použití otevřených komponent, jejichž vhodným propojením získáme snadno udržovatelný a modifikovatelný systém.

Stejně jako na Fakultě informatiky, bylo i při budování Administrativního serveru univerzity prvním úkolem zajištění přístupu pro všechny studenty a zaměstnance univerzity. Tedy naplnění databáze osob, a hlavně její vyčištění, aby každá fyzická osoba měla v systému jedinečný identifikátor. Je s podivem, v jakém nepořádku mohou být i v roce 1999 databáze, byť vedené v elektronické podobě. Zpracování záznamů trvalo asi 10 člověkodní, což není příliš mnoho, ovšem šlo z velké části o ,,ruční`` a poloautomatickou práci. Ukázalo se, že v jistých okamžicích nemá smysl složitě analyzovat, že je prostě třeba sednout a nepříjemnou práci udělat. Zpracování nespolehlivých externích dat o osobách bylo nutným základem pro jakoukoli další část systému. Pokud totiž máme například jen mlhavé představy o tom, na které fakultě je určitá osoba zaměstnána, nejsme schopni jí zpřístupnit patřičné informace a použitelnost systému se rapidně snižuje.

Nyní nastala další fáze, postupné převádění stávajících aplikací do nové podoby a doplňování chybějících. Ve studijní části je to především Katalog předmětů všech fakult univerzity. Je to vedle databáze osob druhý základní kámen všech studijních agend, protože studium je z pohledu informačního systému především o tom, že student má zapsán a absolvuje jisté předměty. Primárně byl Katalog předmětů naplněn ze zdrojů dodaných jednotlivými fakultami, v nejrůznějších formátech a v nejrůznějších kvalitách. Nyní jsou tato data přístupná garantům jednotlivých studijních programů pro jejich úpravu a rozšíření. Paralelně probíhají práce na převedení aplikací jako je evidence studentů, registrace či zápis.

Nová generace Administrativního serveru se stane také významným pomocníkem pro vědecké pracovníky. Prvním velkým projektem bylo propojení databáze publikací s databází RIV (Registr informací o výsledcích vědy a výzkumu) a knihovním systémem TINLIB. Nyní má přímo autor publikace možnost zadat správný tvar záznamu či zkontrolovat, že v databázi jsou uvedeny všechny publikace, které tam uvedeny být mají. Na tuto databázi publikací úzce navazuje možnost editace vlastního životopisu v mnoha jazykových mutacích, neboť záznamy o svých publikacích nyní zájemce nemusí pracně opisovat, ale prostě použije odkaz do existující databáze. Každý nový záznam o publikaci je naopak okamžitě k dispozici i všem ostatním uživatelům. Potřeba zadat a posléze vysázet životopis osoby vznikla s elektronickou evidencí podkladů pro zahájení profesorských a habilitačních řízení, ale zcela jistě ji uživatelé využijí i v jiných situacích.

K plánovaným aplikacím univerzitního Administrativního serveru patří evidence výzkumných záměrů fakult, grantů a jejich řešitelů. I zde chceme nabídnout více než jen prosté uložení dat v databázi, neboť víme, že jsou to aplikace, které přitáhnou uživatele a zpětně přispějí ke správnosti údajů a tím lepší funkci systému. V plánu je proto například projekt propojení s ekonomickými agendami univerzity tak, aby řešitel grantu měl okamžitý a stálý přehled o tom, jaké prostředky má k dispozici, v jakém stavu jsou objednávky či platba faktur. Samozřejmostí jsou i typické přehledové seznamy o počtech a částkách grantů na jednotlivých pracovištích. I zde věříme, že čím více uživatelů bude systém díky jeho možnostem používat, tím lepší výsledky bude dávat.

Možná inspirace pro ostatní organizace

Mnoho aplikací vyvíjených (či nevyvíjených, ale potřebných) například ve státní správě ale i v komerčních organizacích bude stále více vyžadovat podobný model, jaký již čtvrtým rokem funguje na FI MU a nyní se rozšiřuje i pro použití celou Masarykovu univerzitou: nejen agendy pro úzkou skupinu úředníků, ale aplikace, která zpřístupní občanům či klientům všechny informace, které potřebují a na které mají nárok; kde na to má uživatel právo, tam samozřejmě také s možností změn. Podstatný zde je přímý přístup k informacím, bez nutnosti dalšího úředníka, který typicky funguje pouze jako nástroj pro předání informací. Komunikace přímo s počítačem je rychlejší a mnohdy příjemnější, nehledě na to, že klient není vázán ani úředními hodinami, ani nutností být na stejném místě, jako úředník.

Požadavek na zpřístupnění co možná největšího množství údajů samozřejmě vede k úzkému propojení ,,interních`` informačních systémů organizací s takovou externí prezentační aplikací. Tohoto propojení se ale není v žádném případě obávat. Pokud použijeme standardní a otevřené technologie (otevřené ve smyslu dostupnosti standardů či zdrojových textů) s jasně danými rozhraními na všech úrovních, jsme schopni vytvořit dostatečně bezpečný systém, který ale nebude své uživatele omezovat.

Požadavek na co nejširší okruh uživatelů nás opět vede k otevřeným standardům, protože nemůžeme očekávat, že si klienti pořídí drahé proprietární technologie jen kvůli tomu, že jsme na nich my postavili svůj systém. U komerčních firem takové jednání povede pouze k odlivu potenciálních zákazníků, u úřadů a organizací veřejného sektoru pak pouze ke zvýšení nákladů a k nelibosti občanů.

Technologie WWW, perspektivně využívající možností XML, je ideální volbou nejen díky otevřenosti svých standardů, ale také proto, že Internet jako rychle se rozšiřující médium pro přístup k informacím má potenciál přivést stále více klientů či partnerů.

Naše zkušenost dále ukazuje, že pro úspěch projektu je důležité postavit ho na aplikacích, které osloví všechny uživatele. Aplikace, která děkanovi ukáže počet studentů v jednotlivých ročnících, je sice elegantní, mnohem důležitější je (alespoň pro nás) dát všem těmto studentům možnost elektronicky se zapsat k dalšímu studium či vidět své hodnocení.

Vytvoření základu informačního systému a ověření schopností vývojářského týmu není příliš obtížné -- zkompilujeme http server (Apache), relační databázi (MySQL či PostgreSQL), vytvoříme základní databázovou strukturu a naplníme daty, napíšeme tři čtyři skripty. Pro rozsáhlejší systém je samozřejmě nutná pečlivá analýza podle všech standardních postupů vývoje informačního systémů, s důležitou změnou: vývoj musí probíhat modulárně a části systému musejí být uvolňovány postupně. Uživatele mimo firmu či organizaci příliš nezajímá, že firma plánuje zavedení komplexního informačního systému na Internetu za dva roky. V té době firma již pravděpodobně nebude existovat. Mnohem podstatnější je, aby byly jakékoli části byť neúplného systému použitelné co nejdříve. Toto byl také jeden z důvodů, proč jsme nepoužili žádné externí komplexní řešení (nehledě na to, že žádné před třemi lety neexistovalo), a proč o něm neuvažujeme ani dnes. Nutnost reagovat na požadavky uživatelů rozšířeními či opravami řádově v hodinách či ve dnech nás vede k vývoji vlastními silami. Ze stejného důvodu je vhodné použít takové nástroje, které dovolí postupný vývoj a přidávání a úpravu jednotlivých částí. Skriptovací jazyky, dovolující rychlý a modulární vývoj aplikací, se ukazují jako nejvhodnější.

On-line zdroje o open software produktech

Operační systém
Linux -- http://www.linux.cz/ -- Ideální serverový operační systém pro malé a střední aplikace, s aktivním vývojem a podporou. Existují i komerční dodavatelé poskytující podporu či školení.
WWW server
Apache -- http://www.apache.org/ -- Nejrozšířenější WWW server s modulární architekturou, která umožňuje širokou konfigurovatelnost. Pro českého uživatele je důležité, že existují moduly, které zajistí správné kódování znakových sad českého jazyka podle požadavků klienta.
Skriptovací jazyky
Perl -- http://www.perl.com/ -- Jazyk vhodný pro manipulaci s texty, se silnou podporou regulárních výrazů, tedy vhodný pro vývoj CGI skriptů. Existují stovky modulů, že kterých složíme aplikaci za několik minut; rozhraní DBI dovoluje přistupovat k takřka všem komerčním i free databázovým serverům.
PHP/FI, PHP3 -- http://www.php.net/ -- Jazyk určený pro začlenění akcí přímo do HTML kódu, také s rozhraním na četné databázové systémy.
Relační databáze
MySQL -- http://www.mysql.com/ -- Jednoduchý a rychlý databázový server, bez podpory transakcí, vhodný pro bezestavové WWW aplikace.
PostgreSQL -- http://www.postgresql.org/ -- Takřka referenční SQL implementace, včetně transakcí.
Tímto výčtem, který navíc rozhodně není kompletní, nechceme odmítnout použití komerčních řešení, pouze ukazujeme, že existuje dostatek nástrojů, s nimiž je možné vybudovat malý informační systém v podstatě s nulovými náklady.

Odkazy, literatura

Brandejs, M.: Administrativní server. Sborník konference RUFIS 97. ČVUT, Praha, 1997.

Brandejs, M.: Demo Administrativního serveru FI.

Pazdziora, J.: Zajištění efektivního přístupu k informacím v prostředí univerzity. Sborník konference RUFIS 98. TU v Liberci, 1998.

Příklad uživatelského rozhraní Aministrativního serveru


Registrace předmětů

Přihlašování se na zkoušky

Rezervace učebny

Editace katalogu předmětů


Jan Pazdziora, *1974, absolvoval Fakultu informatiky Masarykovy univerzity v Brně v roce 1997, nyní je postgraduálním studentem na téže fakultě.