V září 1995 na výjezdním zasedání Centra výpočetní techniky Fakulty informatiky v Luhačovicích vznikla myšlenka zřídit pro potřeby fakulty zvláštní komunikační a informační zdroj, který dostal pracovní název "administrativní server". Hlavními cíli bylo:
Ihned na počátku úvah o budoucí podobě jsme si vytýčili tyto implementační principy:
Jako základní komunikační protokol mezi klienty a serverem jsme zvolili HTTP, tj. protokol běžného WWW. To nám umožnilo stát se nezávislým na technickém a softwarovém vybavení klientů. WWW prohlížeče existují pro snad všechny existující platformy. Nejpoužívanějšími jsou Netscape Navigator pro platformy MS-Windows a X Window System; Lynx pro řádkové terminály UNIXu a DOSu.
Ve srovnání s předchozími pokusy o zpřístupňování informací prostřednictvím klasického UNIXovského telnetu se WWW na základě dosud nabytých zkušeností jeví jako člověku daleko příjemnější prostředek. Dostane-li totiž informaci pouhým stiskem tlačítka myši, je (i když se to zarytým UNIXmanům nemusí líbit) spokojenější.
Na straně serveru jsme zvolili UNIXový operační systém Linux a NCSA http (WWW) server. Programovacím jazykem je perl. Veškeré databáze jsou v textovém tvaru. Touto volbou jsme si zajistili nezávislost na komerčních firmách, protože veškeré programové vybavení serveru je volně šiřitelné (na základě GNU licencí). Linux provozujeme na běžné architektuře PC, která umožňuje snadnou a rychlou opravitelnost a cenovou nenáročnost.
Prvním krokem samozřejmě muselo být vybudování databáze všech osob, které budou mít s administrativním serverem cokoli společného. Rozhodli jsme se, že databáze bude mít více vrstev. Nejvyšší vrstva (interně nazývaná people) obsahuje základní provozní a identifikační údaje: jméno, tituly, rodné číslo, vztah k fakultě, údaje pro vytváření uživatelských účtů na počítačích fakulty, adresa (poštovní i elektronická), telefon, místnost, datum vypršení vztahu, katedra/oddělení a práva vzhledem k administrativnímu serveru.
Tato vrstva obsahuje údaje o následujících okruzích osob:
Realizace nejvyšší vrstvy databáze je jednoduchá: Pro každou z uvedených osob je v určeném adresáři jeden textový soubor (kódování češtiny dle ISO 8859-2, tj. ISOLAT2). Každý řádek začíná klíčem ukončeným dvojtečkou. Za tímto oddělovačem následuje hodnota klíče. Nadbytečné mezery jsou nežádoucí. Velikost písmen je významná. Na pořadí řádků nezáleží (i když je kontrolor syntaxe people vždy v noci uspořádá do doporučeného pořadí). Uveďme si přehled klíčů s komentářem a příklady (platí v době psaní tohoto článku):
Jednotlivé vrstvy databáze jsou propojeny jednoznačným přihlašovacím jménem. Tímto jménem je pojmenován soubor v people a tímto jménem se osoba na administrativní server přihlašuje. Jedná se o stejné jméno, pod jakým se osoba přihlašuje na všechny počítače FI. Jméno obsahuje malá písmena a číslice a má délku tři až osm znaků.
Při spojování databází administrativního serveru a databází personálního, studijního a jiných oddělení se jako jednoznačný identifikační údaj používá rodné číslo osoby. Tyto databáze jsou vedeny na osobních počítačích pod MS-DOSem. Technicky je jejich propojení s administrativním serverem zařízeno tak, že příslušná pracovnice oddělení poté, co aktualizuje svoji interní databázi, spustí v DOSu program, který kódovaným kanálem databázi zkopíruje do administrativního serveru. Administrativní server zjistí novou verzi databáze na vstupu a spustí svůj program, který provede aktualizaci people a dalších databází.
V praxi se uvedené propojení databází ihned projevilo v několika směrech:
Administrativní server dále automatizuje proces vzniku nových záznamů v people. Jde-li o zaměstnance, vytvoří se při pravidelné aktualizaci personálním oddělením. Jde-li o studenta (nárazově jde o stovky záznamů), pak se záznamy vytvářejí podle dat dodaných studijním oddělením. Studentům se automaticky vytvářejí přihlašovací jména a iniciální účty na všeobecných počítačích.
Důležitá je i otázka likvidace záznamů. Pokud např. student přestává být studentem fakulty, doví se to administrativní server automaticky buď z vlastních údajů (nebyl zapsán do semestru), nebo z databáze studijního oddělení (přerušení apod.). V takovém případě se automaticky zahajují kroky k vypořádání vztahů: elektronickou poštou se osobě oznamuje, do jakého data budou práva vyplývají ze studia tolerována (právo mít účet na počítačích, právo mít půjčené knihy apod.). Po uplynutí této doby jsou účty zrušeny, studentovi je v databázi people zrušen vztah k fakultě atd.
Konzistence údajů v databázi people je pravidelně kontrolována automatickým spouštěním syntaktického kontrolora, který testuje správnost klíčových slov, duplicity klíčových slov, existenci a správnost obsahů (např. vzájemně name, first, last, longname; institution; rights), duplicitu osob podle rodných čísel, správnost rodných čísel dělitelností, existenci klíče expire k status:exception atd.
Pro rychlejší zpracování nad databází people se automaticky vytvářejí pomocné soubory obsahující data jednoho klíče od všech osob. Např. soubor longnames obsahuje na každém řádku přihlašovací jméno a celé jméno určité osoby:
novak:prof. RNDr. Karel Novák, CSc. xnovak1:Jan Novák |
Takový soubor se v programu, který bude potřebovat celá jména osob, načte do asociativního pole perlu a pak se už jenon pracuje s položkou např.
$longnames{$login} |
kde $login je přihlašovací jméno osoby.
Obsah databáze people lze ihned využít na tvorbu různých informačních seznamů: seznamy studentů a zaměstnanců pro různé účely, místní telefonní seznamy, seznamy čísel kanceláří a elektronických adres, seznamy osob vč. pomocných údajů pro WWW stránky atd.
To hlavní, k čemu se administrativní server používá, je komunikace ve studijní oblasti. Poskytuje celou řadu dalších funkcí, k těm však až později.
Uvnitř systému studijní evidence probíhají rámcově tyto komunikační toky (předem podotýkám, že na FI probíhá zápis vždy do každého semestru zvlášť):
Ke zvýšení přehlednosti zadávání operací definuje systém pojmy: "předchozí semestr", "aktuální semestr" a "následující semestr". Obsahy těchto pojmů se plní globálním konfiguračním souborem např. následovně:
predchozisemestr:1995zima semestr:1996leto dalsisemestr:1996zima rozvrh:1996leto anketa:1996leto zapis:1996zima |
Kromě naplnění těchto pojmů se ještě dále uvádí, že rozvrh se zveřejňuje pro semestr 1996-léto, že právě nyní probíhá elektronická studentská anketa pro semestr 1996-léto a zápis do semestru 1996-zima (registrace byla již ukončena). V tomto okamžiku pak typický student po přihlášení k administrativnímu serveru v HTML stránce (v oblasti určené studiu) uvidí tyto položky:
* | Informace o ukládání známek | ||
* | Předchozí semestr 1995-zima | ||
+ | Předměty, které jsem měl zapsány pro semestr 1995-zima | ||
+ | Moje hodnocení za sem. 1995-zima | ||
+ | Seznam předmětů, které se zapisovaly do semestru 1995-zima | ||
+ | Statistika ankety za sem. 1995-zima | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Aktuální semestr 1996-léto | ||
+ | Rozvrh (předmětů, poslucháren, učitelů) | ||
+ | Předměty, které mám zapsány pro semestr 1996-léto | ||
+ | Moje hodnocení za semestr 1996-léto | ||
+ | Seznam předmětů k zapsání do semestru 1996-léto | ||
+ | Aktuální statistika studia | ||
+ | Statistika ankety za semestr 1996-léto | ||
+ | Vyhodnocení a statistika registrace | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Následující semestr 1996-zima | ||
+ | Seznam předmětů k zapsání do semestru 1996-zima | ||
+ | Vyhodnocení a statistika registrace | ||
+ | Zápis do semestru 1996-zima | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Moje známky za celou dobu studia | ||
* | Povolení a nepovolení přístupu ostatních k vlastním známkám | ||
* | Prohlížení výsledků studia těch, kteří to povolili |
V části "Informace o ukládání známek" se student doví zhruba následující:
Když Vám vyučující po absolvování zkoušky/kolokvia/zápočtu zapíše
hodnocení, objeví se druhý den v odstavci "Aktuální semestr"
(příp. "Předchozí semestr") v položce "Moje hodnocení
za semestr ...". Druhý den proto, protože se známky
zatřiďují až v noci.
Jakmile v hodnocení semestru máte známky za všechny zapsané předměty, může Vám být semestr uzavřen. Uzavřením semestru se známky zkopírují do tzv. archivu známek a Vy je uvidíte v položce "Moje známky za celou dobu studia" (hledejte až za následujícím semestrem). Způsoby ukončení předmětu jsou: z (zápočet), k (kolokvium) a zk (zkouška). Z historických důvodů se navíc vyskytuje i kz (klasifikovaný zápočet). Možná hodnocení jsou následovná: z, n pro zápočet; p, n pro kolokvium; 1, 2, 3, 4 pro zkoušku (a klasifikovaný zápočet). Hodnocení - (minus) zřejmě znamená, že se student nedostavil ke zkoušce. Pokud na žádost studenta učitel změní kolokvium na zkoušku, pak pouze místo p napíše známku. Proto student v aktuálním hodnocení bude stále mít způsob ukončení k, ale vedle něj už příslušnou známku. Způsob ukončení na zkoušku se změní až v archivu známek po uzavření ročníku. Pravidelně si kontrolujte Vaše hodnocení! Předejdete tak řadě možných problémů. Případné nesrovnalosti ihned oznamte na adrese stud@fi.muni.cz. |
Pod položkou "Moje hodnocení za semestr ..." se student dovídá informace ve tvaru Kód, Název předmětu, Ukončení, Hodn, Datum (například I000, Úvod do informatiky, zk 2, 8.1.1996) ukončené informací o studijním průměru (Studijní průměr za semestr: 2.40); údaje zde přibývají nebo mění se až do okamžiku, kdy je studentovi na studijním oddělení uzavřen semestr.
V odstavci "Následující semestr" (příp. "Aktuální semestr") v okamžiku probíhajícího zápisu je studentovi přístupná operace "Zápis do semestru" (již dříve tam byla "Registrace do semestru"). Tato operace je konkrétnímu studentovi přístupná jenom do okamžiku návštěvy studijního oddělení za účelem oficiálního potvrzení zápisu. Po vybrání zápisové operace student obdrží stránku Aktuální stav zápisu obsahující informace ve tvaru Kód, Název předmětu, Kredity, Vyučující (např. P005, Služby počítačových sítí, 2 k, Brandejs M.) ukončené přehledem počtu dosažených kreditů, kolokvií, zkoušek a zápočtů a počtem zapsaných předmětů.
Student má buď z registrace nebo z předchozího spuštění této operace zapsány některé předměty. V úvodu stránky se mu tyto předměty vypíší a má možnost dalšími operacemi tento seznam měnit: přidat, zrušit předmět a změnit (snížit) způsob ukončení předmětu. Podobně probíhá i registrace, tam se navíc ukládá i čas zaregistrování předmětu, podle kterého se stanoví pořadí práva nároku na zápis předmětu tam, kde je omezen počet studentů na předmět.
Na druhou stranu typický učitel ve své hlavní stránce administrativního serveru v části určené studijním záležitostem vidí tyto možné operace:
* | Předchozí semestr 1995-zima | ||
+ | Záznamník učitele pro semestr 1995-zima | ||
+ | Seznam předmětů, které se zapisovaly do semestru 1995-zima | ||
+ | Statistika ankety za semestr 1995-zima | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Aktuální semestr 1996-léto | ||
+ | Rozvrh (předmětů, poslucháren, učitelů) | ||
+ | Záznamník učitele pro semestr 1996-léto | ||
+ | Seznam předmětů k zapsání do semestru 1996-léto | ||
+ | Aktuální statistika studia | ||
+ | Statistika ankety za semestr 1996-léto | ||
+ | Anketní odpovědi vztahující se k mým předmětům | ||
+ | Vyhodnocení a statistika registrace | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Následující semestr 1996-zima | ||
+ | Seznam předmětů k zapsání do semestru 1996-zima | ||
+ | Vyhodnocení a statistika registrace | ||
+ | Úplný seznam předmětů pro zimní i letní semestr | ||
* | Prohlížení výsledků studia těch, kteří to povolili |
Učiteli po spuštění operace "Záznamník učitele pro semestr ..." se nechá vybrat z vlastních předmětů probíhajících v požadovaném semestru. Až si učitel vybere předmět, má právo si volit operaci z:
* | Dokumentace k záznamníku učitele | ||
* | Změna v seznamu osob, které smějí pracovat se záznamníkem | ||
* | Operace s poznámkovým blokem | ||
* | Operace s hodnocením předmětu | ||
* | Aktuální seznam studentů, kteří mají zapsaný tento předmět | ||
* | Zaslání dopisu všem studentům, kteří mají zapsaný tento předmět | ||
* | Seznam studentů, kteří se na stud. odd. prokázali neschopenkou | ||
* | Seznam změn v software záznamníku učitele |
Právo přístupu k záznamníku učitele má ta osoba (nebo ty osoby), která je uvedena v seznamu předmětů k danému předmětu. Tato však má také právo povolit přístup k záznamníku komukoli dalšímu (operace na druhém řádku). Toho se s výhodou používá např. tehdy, pokud PG studenti opravují písemné práce. Pak učitel konkrétní osobě povolí přístup do záznamníku a tato sama zapíše do poznámkového bloku bodové hodnocení písemek.
Operace s poznámkovým blokem slouží k průběžnému hodnocení a komunikaci se studenty. Operace s hodnocením předmětu směřují k naplnění Výkazu o ukončení předmětu.
Velmi užitečná je možnost zasílat elektronickou poštou stejný dopis všem studentům, kteří mají v tomto okamžiku zapsán předmět (posílá se např. společné zadání úkolu, informace o nepřítomnosti vyučujícího). Neméně užitečný je přehled o doložených pracovních neschopnostech studentů, kteří mají zapsaný tento předmět. Během zkouškového období má tak učitel snadný přehled o tom, kdo je řádně omluven ze zkušebního termínu.
Operace s poznámkovým blokem nad zadaným předmětem jsou následovné:
( ) | Vytvoření novéhop bloku. | |
(*) | Prohlížení a editace bloku. | |
( ) | Tisk bloku. | |
( ) | Odeslání obsahu bloku el. poštou (všem). | |
( ) | Odeslání obsahu bloku el. poštou (pouze neprázdné záznamy). | |
( ) | Zrušení příznaku odeslání (:m:). | |
( ) | Zrušení poznámkového bloku. | |
( ) | Export bloku v textovém tvaru. | |
( ) | Import bloku v textovém tvaru. | |
( ) | Vytvoření sumárního bloku (nevyžaduje se jméno). | |
( ) | Sestavení statistiky bodového ohodnocení zadaného bloku. | |
( ) | Ohodnocení podle bodů. | |
( ) | Přenos hodnocení do Výkazu. |
Poznámkové bloky jsou vlastně textové soubory obsahující záhlaví, tělo a patu. Při vytvoření nového bloku se vygeneruje prázdné záhlaví, tělo obsahující seznam studentů majících předmět zapsán v okamžiku vytváření bloku a prázdná pata. Jedním z důvodů existence poznámkových bloků je potřeba sdělování výsledků např. písemek studentům bez toho, aby byly údaje veřejně vyvěšovány. Učitel do těla bloku zapíše ke každému studentovi jeho bodové ohodnocení a příp. i osobní komentář, do záhlaví a paty napíše společný úvodní a závěrečný text. Potom zadá operaci "Odeslání obsahu bloku el. poštou". Administrativní server vytvoří tolik dopisů, kolik je záznamů v těle bloku. Každý dopis se složí ze společného záhlaví, z jednoho záznamu těla, který patří dotyčnému studentovi a ze společné paty. Tyto dopisy se studentům automaticky rozešlou. Studenti tak dostanou svoje vlastní výsledky a neznají výsledky ostatních. Pokud by učitel chtěl zveřejnit seřazenou celou bodovou škálu (bez uvedení jmen), použije operace "Sestavení statistiky bodového ohodnocení zadaného bloku".
Operace nad poznámkovými bloky umožňují také sumární operace. Pokud máme např. bodová hodnocení písemek uložena v jednotlivých blocích, můžeme vytvořit blok nový, ve kterém je u každého studenta součet bodů ze zadaných bloků. Dále pak můžeme zadat bodové intervaly a jim přiřadit výslednou známku. Takovou známku potom jednou operací přeneseme do Výkazu o ukončení předmětu.
Operace s hodnocením předmětu jsou tyto:
(*) | Prohlížení a editace hodnocení předmětu. | |
( ) | Tisk výkazu o ukončení předmětu. | |
( ) | Export hodnocení v textovém tvaru. | |
( ) | Import hodnocení v textovém tvaru. | |
( ) | Rušení nadbytečných studentů v hodnocení. |
Jakmile učitel zadá výslednou známku do hodnocení předmětu, zpracuje se tak, že ji student druhý den uvidí ve svých stránkách. Stejně tak je známka ihned k dispozici studijnímu oddělení. Učitel se záznamem studenta v hodnocení předmětu smí manipulovat nejdéle do okamžiku, kdy je studentovi na studijním oddělení semestr uzavřen. Poté je studentův záznam v hodnocení zablokován. Další změny je možné provádět pouze ze studijního oddělení.