Mendelova zemědělská a lesnická univerzita v Brně Provozně ekonomická fakulta
Evidence strukturovaných životopisů Bakalářská práce
Vedoucí práce: Mgr. Ing. Milan Šorm
Kateřina Nováková
Brno 2003
Chtěla bych touto formou poděkovat vedoucímu své bakalářské práce, Mgr. Ing. Milanovi Šormovi, za celkovou podporu a pomoc při vytváření této bakalářské práce. Dále bych chtěla poděkovat všem zaměstnancům pracujícím na Ústavu informatiky za cenné připomínky a rady, které byly značným přínosem při seznamování se s problematikou vývoje subsytému strukturovaných životopisů na MZLU.
Prohlašuji, že jsem tuto bakalářskou práci vyřešila samostatně s použitím literatury, kterou uvádím v seznamu. Část informačního systému, a to část životopisy, jsem vytvářela sama s pomocí, připomínkami a radami členů vývojového týmu.
V Brně dne 20. května 2003
.........................................................
4
Abstract Nováková, K. Filling of Structured Curriculum. Bachelor thesis. Brno, 2003 My bachalor thesis deals with the analysis of the introduction of structured curriculum as a part of UIS of the Mendel University of Agriculture and Forestry in Brno. I described the structure of UIS, present trends in the architecture and projecting of the modular information systems. The part of this work is also the description of my achivements and setting further steps for the development of this subsystem.
Abstrakt Nováková, K. Evidence strukturovaných životopisů. Bakalářská práce. Brno, 2003. Tato bakalářská práce se zabývá analýzou zavádění strukturovaných životopisů do Univerzitního informačního systému Mendelovy zemědělské a lesnické univerzity v Brně. Popisována je struktura Univerzitního informačního systému, současné tendence v architektuře a návrhu modulárních informačních systémů. Součástí je i popis dosavadní realizace a stanovení dalšího postupu při vývoji tohoto subsystému.
5
OBSAH
Obsah 1 Úvod a cíl práce 1.1 Úvod do problematiky . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Cíl práce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 6 7
2 Vymezení pojmů
8
3 Současné trendy IS/IT 11 3.1 Vývoj informačních systémů . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 Architektura moderních informačních systémů . . . . . . . . . . . . . 12 3.3 Třívrstvá architektura informačních systémů . . . . . . . . . . . . . . 14 4 Univerzitní informační systém 15 4.1 Architektura UIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 5 Součásti jádra informačního 5.1 Modul UIS . . . . . . . . . 5.2 Šablony . . . . . . . . . . 5.3 Formulář . . . . . . . . . . 5.4 SuperClass . . . . . . . . . 5.5 Index . . . . . . . . . . . . 5.6 Vyber . . . . . . . . . . .
systému . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
18 18 20 21 21 22 22
6 Informační systém na Masarykově univerzitě v Brně 23 6.1 Masarykova univerzita a systém životopisů . . . . . . . . . . . . . . . 23 7 Životopisy 7.1 Historie vývoje životopisu . . . . . . . . . . . . . . . . . . . . . . . . 7.2 Současný stav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Struktura životopisu . . . . . . . . . . . . . . . . . . . . . . . . . . .
25 25 26 26
8 Datová struktura 29 8.1 Popis datové struktury . . . . . . . . . . . . . . . . . . . . . . . . . . 29 8.2 Popis vkládání do datové struktury . . . . . . . . . . . . . . . . . . . 30 9 Analýza systému životopisů 31 9.1 Kontextový diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 9.2 Systémový diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 10 Závěr
35
11 Literatura
36
1
ÚVOD A CÍL PRÁCE
1 1.1
6
Úvod a cíl práce Úvod do problematiky
V dnešní době dochází podle materiálu [6] k překotnému rozvoji informačních technologií a ruku v ruce s tím i k rozvoji a vývoji informačních systému v nejrůznějších oblastech lidské činnosti. Bez kvalitního informačního systému se v současné době neobejdou ani nejmenší firmy, o velkých organizacích ani nemluvě. Do styku s počítačově orientovanými informačními systémy nyní přichází stále větší část populace. Během posledních let dochází na naší univerzitě k tvorbě nového integrovaného informačního systému, který řeší desítky různých agend celoškolského, fakultního či ústavního významu. Aby bylo možné vytvořit tento Univerzitní informační systém, byl na naší škole vybudován Vývojový tým UIS, jehož úkolem bylo problematiku metodicky zpracovat, provést analýzu celého systému i jeho dílčích modulů a systém naimplementovat. Po dobu vývoje systému tato skupina zajišťuje také rutinní provoz celého systému. Vývojový tým působí na naší univerzitě od roku 1998. V roce 2000 představil pilotní projekt v podobě Fakultního informačního systému (miniFis) pro Provozně ekonomickou fakultu, který v roce 2001 pokrýval většinu hlavních studijních agend této fakulty. Úspěch tohoto systému umožnil zahájit v roce 2001 práce na Univerzitním informačním systému. Vývoj UIS vychází ze zkušeností z tvorby a implementace FIS Provozně ekonomické fakulty naší univerzity. Původní Fakultní informační systém PEF nebyl plně přenositelný ani do vícefakultního provozu, ani na jinou instituci. Proto je nyní Univerzitní informační systém postaven na takovém datovém a funkčním modelu, aby bylo možné systém převádět do prakticky libovolného provozu. Systém je navržen modulárně, tzn. v průběhu používání systému je možné jej rozšiřovat přidáváním nových modulů pro případ, že se objeví nové skutečnosti, které by měl informační systém zahrnovat. Také je možné upravovat stávající funkce systému, aniž by došlo k ovlivnění funkcí jiných nebo k jejich pracnému přepisování a opravování. Mezi důležitá kritéria, která jsou na informační systém kladena, patří i požadavek na uživatelskou přívětivost a přizpůsobivost tohoto systému. Tuto vlastnost ocení nejen počítačoví odborníci, ale i široká veřejnost, která je dobou více či méně nucena s informačními systémy pracovat a využívat je. To platí i v oborech lidské činnosti, které jsou světu počítačů značně vzdáleny. Univerzitní informační systém MZLU v Brně v sobě integruje funkce studijního a vědecko-výzkumného systému. Vztahuje se na všechny fakulty univerzity, rektorát i celoškolská pracoviště. Informační systém používá několik velkých skupin uživatelů, přičemž jednotný právní systém zajišťuje přístup uživatelů k omezené množině jim přístupných agend. Jednotlivými skupinami uživatelů jsou učitelé, studenti, vedení univerzity, fakult a studijní oddělení, zaměstnanci Správy kolejí a menz, ostatní zaměstnanci univerzity, systémoví integrátoři a vývojáři systému.
1.2
Cíl práce
7
Jednou z částí Univerzitního informačního systému je aplikace s názvem Věda a výzkum, která má několik dílčích částí: • část Životopisy, která vzniká z potřeby unifikovaného systému životopisů, • další okruh se zabývá publikacemi – používá se jako součást životopisu a jako výstup pro RIV, • dále je umožněno sledovat práci na grantech a ostatních projektech. Bude možno uchovávat a stahovat diplomové práce, udržovat rozsáhlou databázi informací pro vědu a výzkum. Zjednoduší se také tvorba příspěvku, sborníku a jiných prací. 1.2
Cíl práce
• Teoretická část: Základem pro tuto práci bude seznámení se s architekturou moderních informačních systémů s důrazem především na moderní třívrstvou architekturu. Tuto architekturu porovnáme i s jádrem Univerzitního informačního systému. • Praktická část: Cílem této práce bude zejména realizovat jednu část vědeckovýzkumného subsystému Univerzitního informačního systému, a to část Životopisy. Co by měly životopisy umět? Každá osoba si podle materiálu [3] bude moci vytvořit svůj životopis. Pro vytvoření nového životopisu bude možné použít prázdný formulář nebo údaje z již existujícího veřejného životopisu zobrazovaného v UIS libovolného uživatele. Životopisy bude možno udržovat v několika variantách (to nám umožní šablonované tabulky) a tyto varianty budou mít možnost být v několika jazycích (což nám umožní mutace těchto šablon). Jednotlivé typy životopisů se budou skládat z různých částí. Uživatel si bude vybírat tento typ podle příležitosti, ke které bude chtít životopis použít. Některé části životopisu (např. osobní údaje) budou povinné, to znamená, že je bude muset uživatel vyplnit. Jiné části budou volitelné a uživatel je nebude muset vyplnit. Některé části životopisu bude muset uživatel vyplňovat sám. Mezi ně patří například jméno a příjmení. Jiné části se budou doplňovat automaticky, např. seznam publikací dané osoby. Každý uživatel bude moci svůj vlastní životopis později upravovat (text jednotlivých částí, příznak zobrazování) a případně celý životopis smazat. Uživatel přihlášený do UIS bude mít rovněž možnost zobrazit si životopis jiného uživatele, který má povoleno svůj životopis zobrazovat v UIS. Aby si životopis mohl zobrazit anonymní uživatel, musí být nastaveno oprávnění zobrazit životopis světu. V budoucnu bude řešena i otázka zobrazování životopisu v UIS pro anonymní osoby (nepřihlášené osoby). Toto zobrazování bude uživatel povolovat sám zvolením preferencí pro zobrazování životopisu. Bude se zobrazovat ten životopis, který má nejvyšší preferenci z těch, které mohou být zobrazovány v UIS, případně mimo UIS. Tato práce seznamuje čtenáře se všemi myšlenkami, které byly použity při tvorbě této části UIS.
2
2
VYMEZENÍ POJMŮ
8
Vymezení pojmů
Tato kapitola vysvětluje nejzákladnější pojmy bežně užívané jak v odborné literatuře, tak v každodenní práci analytiků, programátorů a dalších specialistů působících v této oblasti. U každého pojmu je podána definice na základě použitých literatur [9], [10] a [4]. K některým pojmům je přidáno i doplňující vysvětlení. Informační systém Informační systém je soubor lidí, technických prostředků a metod (programů), zabezpečujících sběr, přenos, zpracování, uchování dat za účelem prezentace informací pro potřeby uživatelů činných v systémech řízení. Data (údaje) jsou vhodným způsobem zachycené (vyjádřené) zprávy, které vypovídají o světě a jsou srozumitelné pro příjemce, kterým může být člověk nebo technický prostředek. Data – jako každý jiný prostředek lidské činnosti – vyžadují pro své zpracování vynaložení určité práce, která má smysl jedině tehdy, jestliže se tím získá nějaká užitná hodnota – užitek. Užitnou hodnotu tvoří právě informační obsah. Z dat tedy v okamžiku jejich užití vzniká informace. Informace tím, že pro svého příjemce přináší něco nového, snižují určitou neurčitost neboli entropii. Informační technologie Pod pojmem informační technologie obvykle myslíme soubor nástrojů, metod a znalostí sloužících k činnostem, k nimž je informační systém určen (sběr, uchování, přenos a prezentace informací). Rovněž informační technologie představují zákonitosti vývoje a výroby informačních produktů – tedy především informačních systémů. Často tento pojem také představuje základní směr myšlení jedné epochy nebo jedné kultury (informační generace, informační kultura, informační společnost). Technologie je správný název pro to, čemu dnes nesprávně říkáme technika (technika jsou pouze hmotné prostředky sloužící příslušné technologii k dosažení cíle). Databázový systém Databázový systém představuje úzké propojení databáze (vytvořené datové struktury – metadata a vlastní data) a systému řízení báze dat (Data Base Management System) bez příslušných prezentačních aplikací. Uvedený databázový systém tedy umožňuje definici, údržbu, manipulaci, zobrazování a zajišťování integrity (fyzické a logické správnosti) dat. Takovéto databázové systémy musí být schopny efektivně spravovat rozsáhlé objemy dat. V současné době jsou nejrozšířenějším typem databáze relační, vniklé na základě modelu E. F. Codda z konce 60. let. Experimentálně jsou užívány databáze objektově orientované, smart databáze (schopné provádět řadu transformací a prezentací dat jako vlastností metadat) a datové sklady (datawarehouse, způsob ukládání, třídění a vyhledávání v rozsáhlých datových celcích).
2
VYMEZENÍ POJMŮ
9
Datový model Představuje abstraktní návrh databáze, jedná se o myšlenkový popis daného problému. Skládá se z entit (cokoliv, o čem je třeba uchovávat informace), atributů (informace týkající se konkrétní entity), domén (obory hodnot atributu, nikoliv pouze datové typy, o kterých se hovoří až na fyzické úrovni, ale také logické podmínky a vazby) a vztahů (asociace mezi entitami). Obvykle je datový model představován strukturou (metadaty) konkrétní databáze informačního systému. Dnešní datové modely dokáží být časově proměnlivé a současné chytré (smart – aplikační logika je částečně přesunuta do datového modelu). Perl Perl je univerzální a pružný skriptovací jazyk, který má navíc tu výhodu, že se snadno učí. Kombinuje nejlepší vlastnosti různých nástrojů a jazyků původně unixového světa a jazyka C. Perl je stejně dobře použitelný pro zpracování textu, generování zpráv nebo provádění systémových úloh – a za pomoci skriptů CGI především pro programování internetových aplikací. Skripty v něm lze dnes psát nejen v rodném Unixu, ale i pod systémem Windows a bez komplikovací je i přenášení hotových skriptů mezi platformami. Rozhraní CGI Vyřizování požadavků klientů obstarávají CGI skripty, což jsou programy uložené na serveru. Využívají rozhraní CGI – Common Gateway Interface, které umožňuje do HTML stránek zapojit (volat) externí programy. CGI skripty potom poskytují uživateli dynamický výstup, tzn. zobrazí vždy současný stav jeho požadavku. Každý informační systém musí být postaven na datové bázi. Proto je jeho důležitou součástí výkonný databázový systém, kde jsou uložena všechna potřebná data. World Wide Web World Wide Web (alias WWW nebo pouze web) představuje nejrozšířenější službu na Internetu. Jde o graficky orientované prostředí hypertextových dokumentů zvaných WWW stránky, využívá moderní multimediální techniky (obrázky, zvuky, animace), čímž je uživatelsky i komerčně přitažlivé. Hypertextový dokument umožňuje pomocí odkazu propojit jednotlivé významově blízké dokumenty. Stránky na WWW jsou zapisovány značkovacím jazykem HTML odvozeným od obecného značkovacího SGML jazyka. Tyto stránky mohou být statické (předem připravené) nebo dynamicky generované (např. pomocí webového informačního systému). Pro zobrazení informací na WWW stránkách se používá internetový prohlížeč.
2
VYMEZENÍ POJMŮ
10
Webový informační systém Každý informační systém je provozován v konkrétním uživatelském prostředí a má svá specifika. V poslední době většina významných výrobců přesunuje své aktivity do tvorby informačních systémů v prostředí World Wide Web, které se souhrnně označují jako webové informační systémy. Kolem webových informačních systémů postupem času vyrostla teorie webových informačních systémů, která definuje přesně tyto systémy a umožňuje stanovit analytické postupy, metodiku a nástroje realizace takovýchto systémů. Architektura informačních systémů Architekturu chápeme obecně jako dílo navrhovatele vytvářející funkční prostor pro další realizaci podle základních ideových představ a technických možností daných dobou. Jedná se o ideovou jednotu použitých prvků, má definovaný styl, smysl i poslání. Architektura muže být otevřená změnám a přestavbám, ovšem pouze při zachování stanoveného stylu. Architektura informačních systému je obecná definice platná v informatice a používá se již půl století. RIV „Registr informací o výsledcích státem podporovaného výzkumu a vývojeÿ, označovaný jako RIV. Tato instituce shromažďuje podklady pro účely hodnocení výsledků účelově i institucionálně podporovaného výzkumu a vývoje a pro informování vědecké a ostatní veřejnosti o těchto výsledcích. RIV není centráln;ím registrem publikací České republiky. K tomuto účelu slouží specializovaná pracoviště, jejichž úlohu RIV v žádném případě nenahrazuje.
3
SOUČASNÉ TRENDY IS/IT
3
11
Současné trendy IS/IT
Historie počítačů a jejich využití k uspokojování společenských potřeb začíná v poválečné době. V tomto půlstoletí se postupně zvyšoval význam počítačů pro společnost a rovněž se měnilo pojmenování, pod kterým byly počítačové technologie prezentovány veřejnosti. Toto pojmenování se měnilo s rostoucí závislostí společnosti na počítačích jako prvku řízení a na informacích, které byly na počítačích zpracovávány až k dnešnímu pojmu informační společnost. 3.1
Vývoj informačních systémů
Informační systémy v počátku vývoje ani není dost dobře možné považovat za informační systémy. Vše začínalo dávkovým zpracováním – počítači se předložila vstupní data a čekalo se zda počítač havaruje nebo vrátí několik málo výstupních dat. Tyto typy výpočetních systémů byly vyvíjeny a používány především pro vojenské účely nebo se používaly v oblasti vědy. Pro vědeckotechnické výpočty byly tyto systémy poměrně výhodné, protože vstupní i výstupní data nebyla oproti objemu výpočtů příliš rozsáhlá. Naopak širší komerční využití zpočátku bylo nemožné. S dalším vývojem počítačů se vyvíjely i informační systémy. Od čistě dávkových programů se přecházelo k interaktivní práci. To umožnilo měnit parametry výpočtu při jeho běhu, čímž se o něco rozšířila oblast použití počítačů. Následoval vznik vyšších programovacích jazyků, které umožnily návrh a implementaci složitějších systémů. Složitost systémů vedla i k nepříjemným efektům, které se projevily v 70. letech tzv. softwarovou krizí, která se projevovala ve třech hlavních bodech. Překračovala se doba vývoje programového systému a finanční náročnost. A cílový produkt obvykle dělal něco jiného, než pro co byl původně určen. Pozornost na poli softwaru se tedy upřela ke zkvalitnění programů. Výsledkem byl rozvoj CASE systémů, které ulehčily analýzu problémů i vlastní návrh, implementaci a údržbu složitějších systémů. Druhým směrem, který podporoval kvalitu programů, bylo vylepšení programovacích jazyků a programových přístupů. Nejdůležitějším výsledkem tohoto směru bylo zavedení objektového přístupu do programování. Od 90. let se očekávál od IS/IT zásadní vliv na klíčové procesy podnikání a jejich změnu (reengineering) a vytváření nových příležitostí. Základní hodnota IS/IT je reprezentována jednak zvyšováním účinnosti (např. snižováním nákladů náhradou lidské práce) a zvyšováním výkonnosti (např. zrychlováním procesů eliminací časových ztrát). Prudký vývoj informačních systémů a informačních technologiích v několika posledních letech způsobil změny nebývalého rozsahu, které zvýšily jejich význam pro jednotlivé firmy a instituce i celé národní hospodářství. Na druhé straně je však zdrojem problémů. Co je dnes vrcholem technické úrovně, bývá zhruba za tři roky zastaralé.
3.2
3.2
Architektura moderních informačních systémů
12
Architektura moderních informačních systémů
Informační systém je funkční celek s vnitřní strukturou, která umožňuje realizovat jeho funkce a plnit cíle, pro které byl navržen. V materiálu [5] se na zobrazení vnitřní struktury informačního systému pohlíží vertikálně a horizontálně. Vertikální struktura IS
Vertikální dimenze představuje hierarchickou strukturu z hlediska poskytování služeb různým úrovním managementu podniku, popřípadě běžným uživatelům. Podle činnosti managementu se vertikální struktura rozděluje na tři vrstvy: • úroveň strategického plánování (top management), • úroveň taktického plánování, • úroveň operativního řízení (řízení transakcí a technologických procesů). Základní vertikální struktura je rozdělena na stupňovitou pyramidu znázorněnou na obr. 1.
Obr. 1: Vertikální struktura
Jádro každého informačního systému tvoří systém transakčního zpracování (TPS) spolu se základní vrstvou (OIS) a střední vrstvou (MIS). Základním úkolem tohoto jádra systému je především připravit a aktualizovat data pro řídící aktivity na nejnižší a střední úrovni řízení, udržovat základní evidenci a poskytovat základní přehledy ze všech oblastí činnosti podniku. TPS (operativní informační systém) podporuje každodenní aktivity operativního managementu společnosti. Chování je standardizováno, funkce jsou prováděny rutinně a je požadována velmi rychlá odezva, spolehlivost a eliminace chyb. Vnější svět aktivuje tento systém a on zajistí sesbírání podstatných dat a on-line vyhotovení příslušných dokumentů. Současně jsou uložena data pro pozdější dávkové zpracování v tomto či jiných systémech. MIS (manažerský informační systém) stojí nad úrovní TPS a jeho úkolem je řízení aktivit, které podporují každodenní rutinní činnosti. Na základě předzpracovaných, strukturních, částečně sumarizovaných vstupních dat z TPS umožňuje řídit a kontrolovat činnost základních podnikových aktivit. Střední část pyramidy tvoří OAS, systém pro podporu administrativy. Tyto systémy zajišťují zvýšení výkonnosti a produktivitu kancelářských pracovníků. Hlavním
3.2
Architektura moderních informačních systémů
13
úkolek OAS je vytvářet, modifikovat a přenášet data administrativního charakteru v převážně písemné, popř. grafické podobě. Tento systém se postupně přizpůsobuje organizační struktuře podniku, ve vzájemných interakcí s uživatelem se postupně stabilizuje. Plynule, většinou rychleji než ostatní části systému, absorbuje nové produkty informačních technologií. Tato vrstva se někdy prolíná do ostatních složek informačního systému. Systémy OAS jsou hlavně u velkých systémů značně různorodé a lze do nich zařadit kancelářské systémy, systémy řízení báze dat, prezentační programy. Prostředky pro přenos dat a napojení na externí zdroje dat. Další dvě vrstvy, které jsou nadřazené OAS a mají podstatně výraznější orientaci na analytické a rozhodovací algoritmy, jsou systémy pro podporu rozhodování (DSS) a systémy pro podporu vrcholového managementu (EIS). Bývají řešeny nestandardizovanými postupy a jsou orientovány na specifickou třídu uživatelů se specifickými informatickými potřebami. Decision Support Systems má převážně izolovaný charakter. Systémy pro podporu vrcholového managementu (EIS) jsou účelově orientované systémy. Řeší problémy top managementu a tvoří špičku pomyslné pyramidy. Integrují v sobě všechny důležité datové a technologické zdroje z celého informačního systému. Oproti DSS jsou na ně kladeny specifické nároky na prezentaci dat ve stručné, jasné a správné podobě. Jsou pomocníkem vrcholového managementu v celé šíři jejich rozhodovacího procesu. Nejdůležitější činností EIS je integrace mnoha datových zdrojů do jednoduchých a přehledných výstupů. Horizontální struktura IS
Druhým základním pohledem na strukturu informačního systému je pohled jednotlivých složek organizace, která tento sytém využívá. Obvykle jsou to jednotlivá oddělení a útvary podniku. Jednotlivé základní útvary (divize) nazýváme subsystémy. Následuje další vnitřní členění divizí, které nám vytvoří subsystémy jednotlivých subsystémů. To nám tvoří pomyslnou stromovou strukturu. Horizontálně-vertikální struktura
Obr. 2: Horizontálně-vertikální struktura
Kombinací obou zmíněných pohledů na strukturu informačního systému získáme komplexní pohled na modulární informační systém. Tento pohled je znázorněn na obr. 2. Jeho jednotlivé subsytémy jsou specifické jak z pohledu úrovně řízení, tak
3.3
Třívrstvá architektura informačních systémů
14
z pohledu organizační struktury podniku. Takto rozčleněný informační systém lze potom jednoduše modulárně vyvíjet a integrovat do celopodnikových potřeb. 3.3
Třívrstvá architektura informačních systémů
Do pojmu vrstvená architektura v oblasti informačních systémů patří jednak vnitřní struktura, tak struktura implementačních vrstev. Vnitřní strukturu nám tvoří výše zmíněný horizontální, vertikální a horizontálně-vertikální pohled na informační systémy. Struktura implementačních vrstev umožňuje přenášet systém mezi různými prostředími. Tříúrovňová client-server architektura, která je znázorněna na obr. 3 nabízí modularitu, pružnost a jednoduchý přístup k datům, vytváří kvalitní přemostění mezi starým a novým prostředím, a tím poskytuje okamžitý přístup k novým strategickým příležitostem i v době, kdy firma či jiná instituce postupně přebudovává existující informační systém.
Obr. 3: Třívrstvá architektura
Nejnižší vrstvu tvoří vrstva datová, která zajišťuje především napojení na systém řízení báze dat. Ale také provádí i základní datově-funkční operace zajišťující ukládání, výběr agregace, předzpracování, integritu a audit dat. Tím je možné využívat společnou datovou vrstvu několika různým systémům v integrovaném informačním systému. Nejvyšší vrstvu představuje vrstva prezentační. Ta zajišťuje vstup požadavků od uživatele a prezentaci výsledků. U webových informačních systémů tato vrstva degraduje na formátování výstupu (aplikace designu) a tenký klient (prohlížeč internetových stránek). Aplikační vrstva (někdy také funkční) tvoří prostřední vrstvu zajišťující veškeré počty a operace prováděné mezi vstupněvýstupními požadavky a daty. Je někdy označována za middleware, protože zajišťuje transformace dat. Tvoří prostředníka mezi oběma vrstvami. Tato technologie poskytuje základ pro výstavbu strategických aplikací, které mohou oživit a posílit podnikatelské procesy ve firmě.
4
4
UNIVERZITNÍ INFORMAČNÍ SYSTÉM
15
Univerzitní informační systém
Podle [2] je na naší univerzitě , stejně jako na většině jiných univerzit, provozována celá řada izolovaných a vzájemně nekompatibilních informačních systémů. Tyto moduly vznikají samostatně, mnohdy jsou značně zastaralé a hlavně vzájemně spolu nekomunikují. V současnosti roste potřeba tyto vzájemně nespolupracující moduly propojit. Tímto krokem by bylo možné získávat potřebné informace v odpovídajícím čase a v odpovídající podobě. O vybudování tohoto vzájemně komunikujícího integrovaného Univerzitního informačního systému se pokusila i naše univerzita. Pro celkovou efektivnost informačních systémů je důležité, aby na konci každého projektu byl spokojený uživatel, a to na všech stupních řízení a ve všech oblastech užití IS/IT. Z tohoto důvodu se velká pozornost věnuje uživateli a jeho očekáváním. Tato očekávání mohou být velice rozdílná podle toho, jaké postavení a jakou roli uživatel v podniku má a také podle toho, jak je informačně gramotný. Proto byla na náš informační systém použita webová technologie. Z jakéhokoliv počítače s webovým prohlížečem a Internetem mohou všichni používat tento informační systém. Práce s WWW stránkami je jednoduchá pro pochopení a ovládání. V dnešní době patří k základům počítačové gramotnosti. Z dostupných možností výběru informačního systému se vybírají nejen ty, které by mohly splňovat požadavky kladené na systém jak z hlediska uživatelského, ale které splňují požadavky kladené i programátorem. Každý programový celek se skládá z několika částí. Používá se určitých technik návrhu, nějaký programovací jazyk, vybírá se i vhodný způsob uchovávání informací atd. Častá reorganizace informačního systému vyžaduje vysokou pružnost a dodržování určitých standardů z důvodu možného vřazování již existujících částí informačních systémů do informačních systémů inovovaných. Při výběru způsobu uchování dat byl zvolen databázový systém pracující na standardu SQL. Databázový systém má být dostatečně spolehlivý, má mít dostatečně rychlou odezvu, musí umět pracovat s velkými objemy dat a měl by vhodným způsobem spolupracovat s okolím. Získávání, vkládání a aktualizace dat by měla být jednoduchá a pokud možno nezávislá na použitém operačním systému. Vzhledem ke všem těmto požadavkům byla zvolena jedna z nejlepších databází na trhu a to databáze Oracle Standard Database Relase 9i. Databáze je provozována na samostatném vysoce výkonném stroji s operačním systémem Solaris, takže je zabezpečena i požadovaná rychlost odezvy. Nevýhodou této databáze je poměrně vysoká cena. Jako operační systém pro aplikační server byl zvolen OS Linux. Tento systém je zcela zdarma a je nejpoužívanější v oblasti internetových serverů a poskytuje řadu prostředků a možností těm, kteří s ním pracují. Za vhodný programovací jazyk byl zvolen jeden z nejrozšířenějších a nejoblíbenějších programovacích jazyků – Perl. Tento jazyk umožňuje i objektové a modulární programování, které je v současnosti nepřehlédnutelným trendem. Tento jazyk je zcela nezávislý na konkrétním operačním systému.
4.1
4.1
Architektura UIS
16
Architektura UIS
Základní architektura Univerzitního informačního systému je vzhledem ke komplexnosti tohoto systému důkladně propracována. Základní kostru informačního systému tvoří technická, aplikační a datově-logická architektura spolu s personálním zajištěním pracovníků. Architektura Univerzitního informačního systému je popsána na základě materiálu [9] s aktualizací z materiálu [8]. Technická architektura
Představuje veškeré hardwarové zabezpečení, které je potřeba pro provoz Univerzitního informačního systému včetně konfigurace základních prvků tohoto hardware, operační systémy a jejich instalace a konfigurace použitých softwarových produktů. Základní částí globální technické architektury je UIS cluster, který je připojen přímo do páteřní sítě MZLU v Brně. Na tuto síť jsou připojeny také jednotlivá řídící PC distribuovaná po vybraných lokalitách v areálu. Tato PC jsou s UIS spojena pomocí šifrovacích IP-in-IP tunelů. Na páteřní síť jsou dále připojena vývojová centra demonstrátorů a vývojové stanice na Ústavu informatiky a oddělení Automatizace Informační Soustavy. UIS spolupracuje i s externími systémy, které jsou připojeny k této páteřní síti. Napojení dalších systémů je prováděno přes Internet. Do tohoto řešení spadá také server centrálního příjmu pošty, který přijímá emaily z páteřní sítě a konzultuje UIS pro správné doručení. V UIS clusteru je možné spojit libovolný počet počítačů a neexistuje omezení dané architekturou v použití počítačů. Vstupním bodem celého clusteru je firewall zajišťující ochranu vnitřních komponent a provádějící přesměrování požadavků dovnitř clusteru pro určité definované služby. Firewall je připojen k páteřní síti MZLU 1Gbitovým datovým spojem a záložní 100Mbitový spoj je připojen pro případ, že dojde k výpadku hlavního spoje. Aplikační server je tvořen clusterem 14 standardních počítačů PC, na které jsou firewallem rozkládány požadavky uživatelů. Databázový server poskytuje data aplikačním serverům. Hlavní databáze běží na stroji Sun Fire 880, jako záloha je použit stroj Sun Enterprise 220R. Aplikační architektura
Pod tímto pojmem rozumíme základní softwarovou výstavbu celého informačního systému. Univerzitní informační systém využívá klasickou třívrstvou architekturu. Datová část je realizována v SŘBD Oracle 9i, aplikační část pomocí webového informačního systému vystavěném nad webovým serverem Apache, programovacím jazykem Perl (implementací mod perl) a šifrování spojení mod ssl. Prezentační vrstva je realizována jádrem systému v jazyce Perl a zobrazuje se v několika typech zařízení (základním je internetový prohlížeč HTML stránek). Všechny moduly, ze kterých je informační systém složen, jsou dále dekomponovány na své složky, kterými jsou rodiny aplikací, aplikace a skripty.
4.1
Architektura UIS
17
Jeden vývojový pracovník pracuje vždy na jednom skriptu. Aplikace a rodiny aplikací většinou mají společné programové moduly, které zapouzdřují řadu společných funkcí. Základem celého systému je jádro UIS, do kterého jsou vnořeny systémy tvořící kostru UIS a rodiny aplikací, které představují jednotlivé aplikační celky. Jádro systému obklopuje všechny ostatní části. Jádro informačního systému je podrobněji rozebráno v následující části této práce. Datově-logická architektura
Veškerá data v UIS se nacházejí v databázi řízené systémem řízení báze dat Oracle Standard Database 9i. Základní datový model je rozčleněn do tří základních skupin – fyzický datový model, logický datový model a smart databázové funkce (inteligentní chování celé databáze). Pro údržbu datového modelu bylo vytvořeno několik základních nástrojů, které může datamanagement využít při své práci. Základním nástrojem je program dbMan, který umožňuje vývojovým pracovníkům ovládat databázi z konzolové aplikace. Jako druhý nástroj se používal program oradump, který umožňoval zálohovat databázové schéma fyzickým exportem nezávislým na platformě. Tento nástroj se využíval při komplikovaných přechodech z jednoho prostředí do druhého. Dalším používaným nástrojem je program SchemaView-Plus, který umožňuje kreslit datové modely v grafickém prostředí Tk.
5
SOUČÁSTI JÁDRA INFORMAČNÍHO SYSTÉMU
5
18
Součásti jádra informačního systému
Jádro informačního systému je dle materiálu [2] tvořeno několika programovými moduly, z nichž každý má specifický úkol. Na základě tohoto modulárního uspořádání je možno spolu související činnosti zapouzdřit do jednoho objektu. Jednou definovaná třída se použije k vytváření objektů při vývoji jednotlivých aplikací. Snahou je naprostá obecnost. Rozdílné chování a vlastnosti objektů v těchto aplikacích lze ovlivnit vhodně nastavenými hodnotami atributů. 5.1
Modul UIS
Nejzákladnější složku celého systému tvoří, kromě modulu SuperClass, modul UIS. Na jeho existenci závisí chod všech aplikací. Definuje metody, které zajišťují všechny potřebné činnosti společné většině nebo všem aplikacím. Základními prostředky, které jsou použity při tvorbě informačního systému jsou perlové moduly CGI, DBI a Cz::Cstocs. Tyto moduly jsou volně dostupné na internetu a patří k základním modulům pro programování v jazyce Perl. Modul CGI poskytuje metody pro CGI programování (design, práce s formuláři apod.). Modul DBI tvoří databázové rozhraní nezávislé na použité databázi. Práci s konkrétní databází zajišťují konkrétní databázové ovladače (práci s databází Oracle zajišťuje ovladač DBD::Oracle) a prostřednictvím vrstvy DBI jsou specifika jednotlivých databází odstíněna. Modul Cz::Cstocs slouží k práci s různými kódováními češtiny a pro konverze mezi nimi. Řada činností je řešena i mimo jádro na úrovni programových prostředků zajišťujících chod systému. • • • • • •
Funkce, který modul UIS poskytuje, lze rozdělit do několika kategorií: základní funkce, designové funkce, funkce pro práci s databází, funkce právního systému, funkce používané pro získávání jednoduchých informací, ostatní funkce.
Základní funkce
Tyto funkce jsou nezbytné pro chod jádra, používají se téměř při každém výskytu instance této třídy v aplikacích. Patří mezi ně blok BEGIN, který se automaticky volá v okamžiku použití modulu ještě před tím, než je volána jakákoliv jeho funkce. Mezi další základní funkce patří funkce DESTROY, init(), logout() a další. Designové funkce
Velká pozornost byla věnována právě designovým funkcím. Na rozdíl od starého systému, kde jádro designové funkce nepodporovalo tak kvalitně, je v novém systému použita možnost, že pro všechny používané objekty na WWW stránce (tabulky, odkazy, tlačítka . . . ) byly vytvořeny designové funkce, které generují HTML
5.1
Modul UIS
19
kód těchto objektů. Výhodou je to, že vzhled objektů je unifikovaný. Zabraňuje se neočekávanému chování modulu CGI a programátorům usnadňuje zápis některých pasáží. Umožněna je rovněž případná rychlá změna vzhledu aplikací jedním jediným zásahem do modulu. Tím je umožněna budoucí možná personalizace designu. Mezi jednotlivými stránkami systému je možno se pohybovat pomocí tlačítek, odkazů či přesměrováním. Vše probíhá za neustálého kontrolování přístupových práv (zdali má uživatel oprávnění se testuje v kontruktoru třídy UIS). Programátorům je znemožněno umisťovat do stránky jakékoliv HTML značky v kódu svého programu. Téměř každá z funkcí obsahuje řadu argumentů, kterými se ovlivňuje vzhled či chování jednotlivých objektů na WWW stránce. Typy a počty argumentů většinou odpovídají HTML specifikaci příslušného objektu. Funkce pro práci s databází
Každý skript v rámci informačního systému potřebuje pro svoji existenci databázi – buď zjišťuje nějaké informace, nějaké informace generuje a ukládá nebo obojí. Základním prostředkem pro práci s jakoukoliv databází v prostředí jazyka Perl je modul DBI a spolupracující moduly DBD::[typ databáze]. Je to volně použitelný modul nabízející jednotné databázové rozhraní nezávislé na konkrétním typu databáze. Poskytuje řadu objektů s nejrůznějšími funkcemi a vlastnostmi pro práci s daty, pro řízení transakcí, pro ošetřování chybových stavů, pro zjišťování struktury databáze apod. Protože občas dochází k vývoji nových verzí tohoto modulu, musí objekt třídy UIS zajistit, aby volání databázových funkcí v aplikacích informačního systému bylo na verzi modulu DBI nezávislé. Pomocí tohoto modulu dochází také ke zjednodušení volání některých funkcí oproti DBI a k dalším doplňujícím akcím. K nejpoužívanějším modulům patří modul UIS, který umožňuje přistupovat k originálním funkcím. Mezi tyto funkce patří např. funkce do() a select(), které slouží k práci s daty – provádění SQL příkazů a dotazů. Funkce právního systému
Jedním ze základních pilířů každého informačního systému je právní systém. Téměř v každém okamžiku a téměř v každé aplikaci je potřeba znát oprávnění uživatelů a na jaký subjekt se toto právo vztahuje. Na stránce, která je úvodním rozcestníkem k nějaké rozsáhlé aplikaci, stačí pouze vědět, zda uživatel příslušné oprávnění vlastní, protože další upřesnění se provádí až v konkrétních částech aplikace. Oba způsoby zjišťování oprávnění jsou řešeny jednou funkcí, záleží na tom, jak je výsledek použit. Základní používaná funkce se jmenuje ma pravo(), spolu s argumentem vrací seznam subjektů, na které má uživatel právo. Funkce používané pro získávání jednoduchých informací
Existují informace, které se používají v mnoha aplikacích, mezi takové údaje patří jméno uživatele či jméno pracoviště. Tyto funkce slouží pro zobrazení těchto běžných informací. Požadované údaje lze nejen prezentovat, ale i odkazovat se na skripty
5.2
Šablony
20
či aplikace, které zobrazují podrobnosti a to jednotným způsobem v rámci celého informačního systému. 5.2
Šablony
Patří k základním pilířům Univerzitního informačního systému, jeho potřeba vznikla na základě zkušeností z vývoje a provozu Fakultního informačního systému. Často se v systému stává, že některé oddělení školy si přeje evidovat u některého uživatele nový údaj a naopak některé údaj přestat evidovat, což znamená změnu ve struktuře databáze (přidání či odebrání některého sloupce v tabulce) a změnu v aplikacích, která není zrovna triviální. Tyto úpravy zabíraly většinu času vývojového týmu a zpomalily vývoj nových aplikací. Informace udržované k jednotlivým objektům se liší podle fakulty i časového období. V modelu šablon, existují jednotlivé objekty (uživatelé, předměty, pracoviště apod.), k nim jsou evidovány základní informace společné pro všechny typy těchto objektů. Ke každému objektu jsou evidovány i další doplňující údaje, u kterých není předem známo, co budou znamenat, jaký bude jejich typ a počet. Tyto doplňující informace jsou nazývány atributy objektu. Každý atribut má svoje ID, systémový identifikátor, název, popis, typ, příznak, zda může být vícenásobný a zda je údaj povinný. Každý atribut má rovněž definováno, kdo ho může prohlížet a kdo editovat. To je zajištěno přiřazením práva k atributu. Informace o tom, ke kterým tabulkám jsou vytvářeny šablony, jak se tyto šablony jmenují, pod jakým názvem jsou reprezentovány, kde je popsaná šablona (tzv. šablonovaná tabulka), kde jsou uloženy atributy (tzv. atributová tabulka) a zda se jedná o šablonu základní nebo rozšiřující, jsou uloženy ve zvláštní tabulce v databázi. Na tomto základě lze naprogramovat modul, který umožňuje jednotně pracovat s atributy libovolného objektu. Šablony jsou schopny pokrýt většinu uchovávaných informací, a proto jsou použity téměř všude. Existují dvě základní operace, které lze s objekty a s jejich atributy provádět – zobrazení hodnot atributů a editace hodnot atributů. Průběh operací probíhá pro všechny objekty stejně, mění se pouze v závislosti na vlastnostech atributů. U každého typu je evidován identifikátor, textový identifikátor, název, zobrazovaný název, v případě atributů typu cizí klíč se eviduje klíčový sloupec a tabulka, do které se odkazuje.Všechny existující typy atributů jsou zaznamenány v tabulce kc typy atributu. Mutace V některých případech jednoduchá šablona nestačí, a proto je modul upravený tak, aby uměl pracovat s více šablonami k jednomu objektu zároveň. Dále bylo třeba evidovat k jednomu objektu informace stejného typu, avšak v několika variantách. Tímto způsobem je možné dynamicky vytvářet či rušit varianty bez nutnosti zásahů do programů či do struktury databáze. Údaj o mutaci je možné předávat v parametru se jménem mutace poslané prohlížečem nebo v případě editace přímo ve jménu editačního objektu.
5.3
Formulář
21
Typickým příkladem je syllabus předmětu. K jednomu předmětu se udržuje jeden syllabus, který má dannou strukturu. Ovšem tento syllabus je třeba udržovat v několika jazykových variantách. Udržovat tolik šablon jako jazykových mutací by bylo značně nevhodné, proto ke konkrétní hodnotě atributu přibyla položka, která blíže specifikuje variantu. Hodnoty atributů nemusejí mutovat pouze přes jazyk, ale přes jakoukoli jinou tabulku. 5.3
Formulář
Společně se šablonami je tento modul základní částí jádra informačního systému. Formulář zjednodušuje určité, stále se opakující činnosti. Používá se hlavně pro naprogramování aplikací pro správu číselníků. Jedná se o stále stejný typ aplikací, kdy se zobrazí celý číselník, ve kterém je potřeba jednotlivé položky přidávat, editovat nebo mazat. Pro zobrazení formuláře se používá funkce zobraz formular(), které je jako základní argument předávána požadovaná struktura tabulky – pro každý sloupec se zadává jeho jméno v databázi, zobrazovaný popis sloupce, typ hodnoty, informace o poloze hodnoty. Je možné omezit nejen sloupce, ale i řádky tabulky. Programátor určí i pořadí zobrazovaných položek. Ke každému řádku se přidává i zaškrtávací pole, které se většinou využívá při mazání jednotlivých řádků z tabulky nebo kopírování či jiné akce. Přidání nového objektu je řešeno pomocí funkce formular add(). Doplňuje se o informace, které sloupce mají být naplněny, jakého mají být typu a jaký se zobrazí název v aplikaci. Dodatečnou informací, která je ovšem velice důležitá, je jméno sekvence, která se používá pro generování hodnot primárního klíče. Určí se zda hodnoty, které se do databáze přidávají, mohou být jedinečné. Třetí z nejpoužívanějších funkcí je formular editace, která zobrazuje prvky požadované položky a umožní jejich úpravu. Po odeslání změn se provedou kontroly správnosti zadaných hodnot a jedinečnosti a nově opravený údaj se uloží v databázi. Většina aplikací se skládá z kombinace modulů Sablony a Formular, kde modul Formular slouží k zobrazování, přidávání, rušení a editaci objektů a modul Sablony k prohlížení a editaci atributů těchto objektů. 5.4
SuperClass
Třída objektů SuperClass je společným předkem všech dalších tříd objektů. SuperClass je abstraktní třídou objektů a byla vytvořena proto, aby všechny budoucí třídy objektů patřící k jádru informačního systému měly společného předka a tím i společné základní vlastnosti. Definuje naprosto obecné objekty, umožňuje označit některou metodu za privátní, což znamená, nemůže být volána nikým jiným než objektem samým.
5.5
5.5
Index
22
Index
Modul Index sloužil dříve ke zrychlenému vyhledávání údajů v databázi. Charakteristické údaje, které každý objekt má, připravil do podoby, kde bylo vyhledávání rychlejší. Dnes se již tento modul nepoužívá. Tato funkce je převedena na databázovou úroveň. Ale stále se provádí tzv. indexování zadaných údajů. Existují čtyři typy indexování: • indexování podřetězců celého řetězce, • indexování podřetězců od začátku slova, • indexování slov, • indexování celých údajů. 5.6
Vyber
K řadě aplikací je třeba vybrat konkrétní objekt a potom se s ním dále pracuje. Při velkém počtu objektů je potřeba vybrat daný objekt na základě vyhledání podle zadaného vzorku. Vzorkem může být část jména, rodné číslo apod. Podle vzorku se najde objekt, který se s tímto vzorkem shoduje (je-li jich více musí se provést další selekce). Modul Vyber vlastně existuje proto, že tato posloupnost aplikací je stále stejná a tímto modulem se ji podařilo automatizovat.
6
INFORMAČNÍ SYSTÉM NA MASARYKOVĚ UNIVERZITĚ V BRNĚ
6
23
Informační systém na Masarykově univerzitě v Brně
V následující kapitole je dle materiálu [7] popsán systém Masarykovy univerzity v Brně, včetně jeho subsystému životopisů. Masarykova univerzita v záležitosti informačního systému zvolila cestu budování vlastními prostředky, tvorby produktu na míru šitému pro potřeby krajně heterogenní a rozsáhlé organizace. Důležitým aspektem této 80 let staré univerzity je její velká různorodost co se informačních technologií týče. Situace se změnila od špičkových pracovišť s vynikající konektivitou a množstvím pokročilých uživatelů až k oddělením na filozofické či lékařské fakultě, kde je typický velmi rezervovaný postoj k počítačům a zcela nedostatečné vybavení. Požadavkem bylo vybudovat IS s minimálními náklady na straně uživatele. Masarykova univerzita zvolila stejně jako naše univerzita přístup přes WWW – Internetový prohlížeč, protože se stal běžným pracovním standardem. Nezávislost na klientu umožňuje opravovat chyby a reagovat na požadavky uživatelů v řádu hodin (změna se provede pouze na serveru). Rychlá odezva vývojářů je uživateli považována za jednu z nejdůležitějších vlastností celého systému. Otevření pro celý Internet je vnímáno jako určitá hrozba. Systém loguje veškeré přístupy, zobrazuje informace o posledním přihlášení. Použit je protokol https. Oceňováno je u co možná nejvíce uchovávaných údajů udržovat informaci, kdo a kdy údaj změnil. Vidí-li lidé u prezentovaných údajů svoje jméno, jejich zodpovědnost za vkládaná data se pronikavě zlepšuje. Skripty používají pouze standardní HTML (plus JavaScript pro některá vylepšení, nikoliv však funkčnost), nepoužívá cookies, Javu ani prvky specifické pro pouze některé prohlížeče. Použití pokročilých technologií by samozřejmě umožnilo vylepšení některých míst aplikací, ale zhoršilo celkovou dostupnost: cílem je umožnit práci i ze sedm let starých PC provozovaných po modemu z fakultní nemocnice a podobně. Do studijního informačního systému jsou přidávány věci jako pohodlná e-mailová schránka, rozesílání výsledků zkoušek na mobilní telefon, možnost zkontrolovat, kolik mi zbývá dovolené, podívat se na fotografie studentů, snadné vyklikání své vlastní prezentační web stránky, možnost zvolit si vlastní přezdívku – přihlašovací jméno, výběr z různých designů stránek atd. 6.1
Masarykova univerzita a systém životopisů
Tato aplikace dává do určité míry univerzální nástroj na vytváření, správu, uchovávání, zveřejňování a poskytování životopisů. Všechny tyto funkce jsou dostupné pod odkazem Životopisy na stránce Osobní administrativy (manipulační stránka pro životopisy). K dispozici je možnost do počítače tento životopis pořídit, tak jej poskytnout pro účely hodnocení fakult a školy např. v celostátním registru RIV. Ve formuláři, který se vyplňuje, je (budoucí) životopis rozdělen do odstavců. Cílem této aplikace je, aby životopisy členů akademické obce univerzity byly alespoň částečně strukturované. Systém nabízí možnost vytvořit si několik životopisů, a to i v různých jazycích. Systém předpokládá alespoň jednu cizojazyčnou variantu životopisu, primárně dostupnou pro zájemce o informace ze zahraničí. Česká verze
6.1
Masarykova univerzita a systém životopisů
24
je určena hlavně jako příloha ke grantovým přihláškám, k podkladům pro habilitační či profesorské řízení apd. Více verzí životopisů slouží k vytvoření speciálních verzí životopisu pro konkrétní (možná i jedinečný) účel. Pro snadnější vytvoření lze životopis předvyplnit jinou hotovou variantou. Systém umožňuje nejen rozlišit, zda životopisy budou zveřejněny či nikoliv, ale také míru zveřejnění (zda dokument je zveřejněný pro uživatele informačního systému, nebo je zpřístupněný celému světu). Tvorba nového životopisu začíná v sekci „Vytvoření nového životopisuÿ na manipulační stránce. Vybírá se jazyk tvořeného životopisu a buď z připraveného menu nejobvyklejších nebo výběrem ze seznamu všech jazyků. Po zvolení jazyka se dostaneme do editační stránky (formuláře) pro zápis životopisu. Každý odstavec formuláře se skládá ze dvou editovaných polí. v prvním je uveden nadpis rubriky. Druhé editovací okno je určeno pro vlastní text odstavce. Kliknutím na tlačítko „Rady pro vyplňováníÿ nebo „Příkladÿ jsou přivolány další návody. Před odchodem na jinou stránku (z formuláře) je nutné zmáčknout „Uložitÿ nebo „Průběžné uloženíÿ, jinak jsou data ztracena. Na manipulační stránce je možnost v sekci „smazání životopisuÿ některou variantu smazat. Ovšem je vhodnější variantu pouze zneveřejnit (v systému stále existuje, ale je dostupná pouze osobě, která si tento životopis vytváří). Při prohlížení některé varianty svého životopisu se používá sekce „Výpis, tisk, exportÿ na manipulační stránce. Výpis zformátovaného životopisu je doplněn také možností zobrazit si ho ve tvaru vhodném pro tisk (HTML tvar bez doplňujících komentářů, tento formát lze vytisknout např. tlačítkem File/Print), či exportovat životopis do souboru pro MS Word či LATEX.
7
ŽIVOTOPISY
7
25
Životopisy
Životopis je v dnešní době velice využívaný pro různé příležitosti, a proto se v této práci podíváme nejenom na jeho současnost, ale i na kousek jeho historie. 7.1
Historie vývoje životopisu
Nejstarší doklady podle materiálu [1] představující stručné záznamy o datu způsobu smrti mučedníků, případně i o místě jejich pohřbu, byly sestavovány do delších seznamů podle pořádku liturgického kalendáře. V polovině 5. století tak vzniklo jedno z prvních významných standardních děl křesťanské hagiografie, tzv. Jeronýmské martyrologium, pozůstávající v podstatě z chronologického seznamu dat, jmen světců, míst jejich pohřbu a případně i krátkého popisu jejich smrti. Významnou novotou se staly poutě věřících ke hrobům mučedníků a jiných světců a s tím související kult relikvií. Zvýšené popularitě světců v rané křesťanské zbožnosti, odpovídala pak snaha i o získání podrobnějších informací o jejich životě, skutcích, způsobu smrti a případně posmrtných zázracích. Tak vznikaly první rozsáhlejší životopisné literární skladby v podobě uv actae sanctorum, „vitaeÿ či „passionesÿ. Tyto dvě základní pozdně antické kategorie literární hagiografie, tj. stručné texty kalendářů, rozšířených později do martyrologií na jedné straně a podrobnější narativní biografie na straně druhé, byly pak dále rozvíjeny a různým způsobem obohacovány pozdějšími autory. Typicky středověkou formou těchto rozsáhlejších životopisných skladeb, věnovaných vždy jen jednomu světci byl tzv. „libellusÿ, jenž původně představoval rukopis drobnějšího, příručkovitého formátu, obsahující nejen vylíčení jeho života, zázraků a pašijí, ale i další k němu se vztahující texty různých homelií, modliteb, čtení, případně i hudebních sekvencí. Jakousi přechodnou formou mezi monograficky zaměřeným „libellemÿ a kalendářově stručným martyrologiem byl ve středověku dále pasionál, zahrnující podrobnější životopisné a jiné údaje o větším počtu světců, seřazených podle pořádku církevního roku. Zvyk recitovat sekvence ze života světce na jeho svátek během mše byl pak kodifikován i v úpravě textů některých hlavních liturgických knih. Hagiografie jako literární žánr se pak stala jednou z nejtypičtějších forem literární kultury středověku. Z jejich pozdějších výtvorů se zde nutno zmínit především o tzv. Zlaté legendě (Legenda aurea), jako zatím nejrozsáhlejší sbírce životopisů světců a mučedníků, seřazených podle liturgického kalendáře, která vznikla zásluhou dominikánského řeholníka a pozdějšího janovského arcibiskupa Jacopo da Voragine. Krátce po svém prvním vydání v šedesátých létech 13. století se rychle rozšířila po všech kulturních zemích západního křesťanstva i díky mnoha překladům do národních jazyků a získala mimořádnou oblibu přetrvávající až do novověku.
7.2
Současný stav
26
V českých zemích byla chronologicky prvním zachovalým dokladem tohoto druhu latinská Legenda o sv. Václavu, sepsaná mantovským biskupem Gumpoldem, jejíž iluminovaný exemplář chovaný dnes ve Wolfenbüttelu byl objednán kněžnou Emmou, vdovou po Boleslavovi II. Zřejmě krátce před její smrtí v roce 1006. 7.2
Současný stav
Dnes je životopis považován za slohový útvar, který využívá popisu a charakteristiky k zachycení života jednotlivce. Používá se v praxi především ke stručnému vypsání hlavních dat a událostí života. Použití a účel dnešních typů životopisu se ovšem od doby středověku poněkud změnil. V dnešní době už se nepoužívají životopisy ilustrované a také životopisy popisné, vyprávěcí se také tak často nepoužívají. Používají se hlavně životopisy strukturované, které svou úpravou většinou i vyhovují standardům Evropské unie. V dnešní době s postupem rozvoje technologií se životopis může na počítači nejen psát, ale i za použití počítače posílat (po Internetu). Základní typ životopisů, ve kterém jsou uvedeny důležité životní data bývá v odborné a publicistické praxi rozšířen o přehled díla, objevů, příp. získaných cen a ocenění. Podrobnější údaje života mohou být rozvedeny ve větší míře vyprávění událostí a příhod pisatele. Slohově je pak životopis zpracováván jako biografie, autobiografie, paměti, deník, zápisky, kronika, vzpomínky či memoáry. Obvykle jsou ovlivněny časovým či politickým obdobím, ve kterém jsou zpracovávány. Z odstupem času je proto možný jiný náhled na události provázející život jednotlivce. 7.3
Struktura životopisu
V této práci se jednotlivé části spojují do jednotlivých typů životopisů. Mezi používané typy životopisu patří například curriculum vitae, evaluační zpráva (pro vedení fakulty, pro MŠMT), přehledné publikace o ústavu aj. Každý životopis má své jméno a seznam částí, které obsahuje, včetně jejich pořadí. Podle zvoleného typu životopisu se od uživatelů vyberou příslušné informace a s těmi se následně pracuje. V následující části práce jsou uvedeny dva typy životopisu (životopis pro přijímací řízení do zaměstnání a životopis, který se přikládá ke grantům), které jsou hodně odlišné svou strukturou. Struktura životopisu pro přijímací řízení do zaměstnání Největší uplatnění mají životopisy při přijímaní pisatele do zaměstnání. Je to jakási nejjednodušší podoba toho, jak vyjádřit své dosavadní úspěchy, a tím zvýšit pravděpodobnost k získaní dobré práce. Pravděpodobnost se zvyšuje i pro zaměstnavatele vybrat si z velkého počtu uchazečů kvalitního pracovníka. • osobní informace (jméno, příjmení, adresa, telefon, fax, e-mail, národnost a datum narození), • dosavadní pracovní zkušenosti – v této části je možno uvést v jednotlivých bodech předchozí zaměstnání, přičemž poslední zaměstnání bude uvedeno jako
7.3
•
•
• •
• •
• •
• • • •
Struktura životopisu
27
první (data od-do, jméno a adresa zaměstnavatele, typ podnikání či název sektoru, osobní aktivity v dané firmě a svěřená odpovědnost), vzdělání a kurzy – zde se uvádějí formou jednotlivých oddělených zápisů informace o všech dokončených kurzech, přičemž jako první budou uvedeny nejnověji absolvované kurzy (data od-do, jméno a typ školící organizace, hlavní předměty a získané dovednosti, získané tituly a certifikáty), osobní dovednosti a schopnosti – zde je možné uvést všechny ostatní dovednosti a schopnosti, které jsme získali, avšak nemůžeme je prokázat např. diplomem či vysvědčením, mateřský jazyk, cizí jazyky – je nutno specifikovat úroveň znalosti cizího jazyka (výborná, dobrá či základní úroveň znalosti), a to ve všech třech následujících formách: čtení, psaní a mluvení, umělecké dovednosti a schopnosti – např. hudba, psaní, design, společenské dovednosti a schopnosti – dosavadní zkušenosti ze života v multikulturním prostředí či zkušenosti z předchozích zaměstnání na pozicích, kde byla důležitá schopnost komunikace či týmové práce, organizační dovednosti a schopnosti – zkušenosti z koordinační práce s lidmi, popř. z koordinace projektů nebo rozpočtů, technické dovednosti a schopnosti – v současnosti jsou velmi ceněny všechny druhy technických znalostí a dovedností (ovládání počítače, práce se speciálním strojním vybavením apod.), řidičský průkaz – kategorie řidičského oprávnění, popř. vlastnictví mezinárodního řidičského průkazu, jiné dovednosti a schopnosti, dodatečné informace – v této části je možné uvést jakékoliv jiné relevantní informace, např. kontaktní osobu či informace o referencích), přílohy – vysvědčení, vysokoškolské diplomy, apod.
Struktura životopisu, který se přikládá ke grantům Grant (grantové prostředky) jsou účelové finanční prostředky přidělené na řešení grantového projektu. Grantová agentura ČR poskytuje granty formou dotace ve smyslu 14 zákona č. 218/2000 Sb., o rozpočtových pravidlech. Součástí grantové přihlášky je soubor dokumentů obsahující všechny informace potřebné k posouzení kvality navrhovaného projektu a údaje nezbytné pro administrativní zpracování. Soubor dokumentů se skládá z žádosti o udělení grantu, řešení finančních nákladů na projekt, zdůvodnění návrhu, informaci o dotacích z jiných zdrojů a právě životopis, který by měl mít následující strukturu. • identifikace osoby – uvádí se většinou jméno, příjmení, datum a místo narození, • pracoviště – uveden je příslušný ústav a adresa univerzity, • funkce na pracovišti, • vzdělání a akademická kvalifikace – zde se uvádějí formou jednotlivých oddělených zápisů informace o všech dokončených školách, přičemž se uvádějí chronologicky od poslední po první absolvovanou školu,
7.3
Struktura životopisu
28
• přehled zaměstnání – zde je možno uvést přehled předchozích zaměstnání v bodech, je nutné uvést odbobí od – do, • pedagogická činnost – uvádí se zde fakulta, na které byl přednět vyučován, název předmětu a odpovědnost za předmět tzn. zda předmět garantuje, přednáší či jen cvičí, • vědecko-výzkumná činnost – uvádí se v bodech chronologicky od posledního k prvnímu, • mimouniverzitní aktivity – mohou být uvedeny všechny aktivity, které se přímo netýkají činnosti na univerzitě, • ocenění – k bodovému výčtu ocenění se uvádí také rok ocenění, opět se seřazuje chronologicky od posledního, • vybrané publikace – uživatel uvádí všechny publikace, které chce v životopisu zdůraznit. Tyto publikace se uvádějí dle normy ISO 690. Tyto typy životopisů, ve kterých jsou uvedena důležité životní data mohou být doplňovány či jinak upravovány dle potřeby uživatelů.
8
29
DATOVÁ STRUKTURA
8
Datová struktura
Obr. 4: Entitně relační diagram
8.1
Popis datové struktury
Všechny uvedené tabulky mají tři společné údaje, a to: • id (indexování – slouží pro jednodušší výběr určitého záznamu (řádku v tabulce)), • zmeneno (u každého záznamu je uveden datum poslední modifikace), • zmenil (eviduje se i osoba, která tuto změnu provedla). kc uzivatel – tabulka, evidující informace o uživateli. Obsahem tabulky je jméno a přímení uživatele, jeho identifikační číslo a údaje o osobě, která tyto údaje buď zadávala nebo měnila. kc jazyky – tabulka, ve které je vložen seznam jazyků se svými příslušnými indexy. Tyto čísla se dále využívají v tabulce v zivotopis. v zivotopis – v této tabulce se ukládají hlavně náplně jednotlivých částí životopisu s identifikačním číslem uživatele, části životopisu a jazyku. vc ziv typy – číselník, který je naplněn seznamem jednotlivých typů životopisu. Tyto typy uživatel používá pro výběr jednotlivého životopisu pro zobrazení nebo tisk.
8.2
Popis vkládání do datové struktury
30
vc ziv casti – seznam částí životopisu s indexy částí. Jednotlivé části mohou byt doplňovány správci životopisů. v ziv slozeni – tabulka, ve kterém správci životopisu udávají složení jednotlivých typů životopisu. Typy životopisu jsou složeny z jednotlivých částí, u kterých je uvedeno i pořadí části. vc ziv aut casti – automatické části jsou části životopisů, které se doplňují automaticky, tzn. uživatel je nemusí vyplňovat sám. Jsou to informace, které se generují ze systému, např. osobní údaje, publikované práce, zaměstnání aj. 8.2
Popis vkládání do datové struktury
Správce životopisu nadefinuje jednotlivé části životopisu, které může přizpůsobovat dle potřeby uživatelů. Tyto části vloží do tabulky (číselníku) vc ziv casti. K těmto částem se v systému vygenerují jednotlivé indexy a údaj, zda se část doplňuje automaticky či ne. Skutečnost, zda se údaj generuje automaticky, je uložena v číselníku vc ziv typy aut casti. Z jednotlivých částí životopisu skládá správce životopisu jednotlivé typy životopisu. Typy životopisů následně slouží pro zobrazování a tisk životopisů pro různé příležitosti. Názvy typů jsou s jejími indexními čísly uloženy v tabulce vc ziv typy. Složení jednotlivých typů životopisu je uloženo v tabulce v ziv slozeni, ve které se ukládá požadovaný index typu životopisu (pracuje pomocí cizího klíče (odkazu) na tabulku vc ziv typy), index části (index obdobně pracuje s tabulkou vc ziv casti) a pořadí, ve kterém se u jednoho typu mají zobrazit jednotlivé části. Na číselník vc ziv typy aut casti je vytvořena webová aplikace. Je použit modul Formular. Formulář umožňuje vkládání, mazání a editaci údajů v tabulce. Na tabulku v ziv slozeni je vytvořen také Formulář, ale tento Formulář je vnořen do jiného Formuláře (pro v ziv typy) pro snadnější orientaci správce životopisu. Správce má v aplikaci možnost si vybrat pouze určitý jeden typ životopisu a pracovat pouze s ním. Na tabulku vc ziv casti je vytvořena mutovaná šablona. Tato tabulka je mutovaná přes jazyky. Poslední tabulkou je tabulka v zivotopisy, kde se ukládá identifikační číslo uživatele (toto číslo se generuje z databáze školy z tabulky kc uzivatele), indexní číslo části (odkaz na tabulku vc ziv casti), ID jazyka, ve kterém je tato část psána (i tato část je brána z databáze, z tabulky kc jazyky) a obsah této části životopisů. Tato tabulka slouží pro vkládání údajů pro vlastního uživatele.
9
31
ANALÝZA SYSTÉMU ŽIVOTOPISŮ
9
Analýza systému životopisů
Alanalýza systému je klíčová fáze projekčního procesu. Smyslem studie je vyhodnocení struktury a chování systému jako reálného systému před zrcadlem navržených cílů. Obsahem je návrh řešení nového systému. 9.1
Kontextový diagram
Obr. 5: Kontextový diagram
Tvůrce životopisu Je osoba přihlášená v UIS. Pro vytvoření životopisu může využít prázdný formulář nebo údaje z již existujícího životopisu. Tato osoba má možnost přidávat, editovat nebo mazat údaje ve svém životopisu. Uživatel Je to osoba, která může a nemusí být přihlášená do Univerzitního informačního systému. Tato osoba má právo si pouze zobrazovat ty životopisy, jejichž autor užil toto přístupové právo. Tento uživatel zadá jako vstup jméno a příjmení osoby, od které chce životopis zobrazit. Správce životopisu Správce životopisu je osoba s právem Správce pro vědu a výzkum (oddělení Věda a výzkum Děkanátu PEF, správci UIS). Tito uživatelé nadefinují typy životopisu a jejich strukturu – pojmenovávají části, určují jejich pořadí, říkají, zda jsou povinné, či zda jsou automaticky vyplňované údaji nacházejícími se v databázi UIS. Tyto
9.2
32
Systémový diagram
informace mohou správci později měnit. Různé typy životopisu jsou zde proto, že pro různé příležitosti je třeba uvést rozdílné části životopisu. 9.2
Systémový diagram
Systémový diagram je znázorněn na obr.6
Obr. 6: Systémový diagram
Zobrazování, tisk a export životopisu Při zobrazování životopisu se rozlišuje, zda uživatel, který tento požadavek vznesl, je přihlášený nebo anonymní. Dále je zohledňována jazyková preference prohlížeče, to znamená, že je uživateli nabízen životopis v té jazykové variantě, která odpovídá nastavení prohlížeče. Při zobrazení některého z životopisů je dále nabízen hypertextový odkaz na všechny další varianty s ohledem na to, zda mají nastaveno povolení zobrazení. Rovněž je možnost životopis vytisknout nebo získat v PostScriptu. Do budoucna se počítá s exportem do formátu PDF (elektronická kancelář) a do RTF z důvodu napojení na MS Office. Bude také umožněn tisk sborníku životopisu pro vybrané uživatele nebo pro skupinu uživatelů, zaměstnance určitého ústavu či fakultu.
9.2
33
Systémový diagram
Minispecifikace funkce Zobrazování, tisk a export životopisu BEGIN READ udaje o osobe FROM uzivatele IF data IN databaze THEN PUT zivotopis END Dekompozice procesu tvorba zivotopisu
Obr. 7: Proces Definice struktury životopisu
Minispecifikace Definice struktury životopisu (obr. 7) BEGIN READ definice struktury zivotopisu FROM spravce zivotopisu UPDATE data READ data FROM databaze skoly PUT statistiky TO spravce zivotopisu END
Obr. 8: Proces Tvorba životopisu
Minispecifikace procesu Tvorba životopisu (obr. 8) BEGIN READ potrebne udaje FROM tvurce zivotopisu UPDATE data READ data FROM databaze skoly PUT kontrola ulozenych udaju TO tvurce zivotopisu END
Obr. 9: Proces Oprava dat v životopisu
9.2
Systémový diagram
34
Minispecifikace procesu Oprava dat v životopisu (obr. 9) BEGIN READ kontrola opravenych udaju FROM tvurce zivotopisu UPDATE data READ data FROM databaze skoly PUT opravene udaje TO tvurce zivotopisu END Publikace Publikace je speciální část životopisu, u které se některé části doplňují automaticky (jména a příjmení autorů, organizace, vztah autorů k organizaci). Informace o publikacích se budou udržovat takovým způsobem, aby odpovídaly struktuře dat pro RIV2002. Tento registr má pevnou strukturu (k dispozici je brožura) a pomocí této aplikace by se mělo docílit správných výstupů a tyto výstupy zautomatizovat (bude se provádět automatický export do RIV). Aplikace rovněž umožní snadnou práci nabízením povolených hodnot. Systém umožní výstup citací podle normy ČSN ISO 690. Rovněž při práci na vlastním článku bude možno použít citace literatury od jiných autorů z databáze. Opět bude implementována myšlenka delegátů (zmíněno v části o životopisech) a výstup do PostScriptu, formátu PDF, RTF a tisk. Delegáti pro správu životopisu Do budoucna se počítá s možností, že bude určena osoba (delegát), která bude obstarávat naplnění životopisu za jiné uživatele. Delegáta si bude moci určit uživatel individuálně (např. profesor pověří naplněním životopisu svou sekretářku), nebo ho určí správce životopisu (např. pověří OSSA určitého ústavu naplněním životopisu zaměstnanců ústavu).
10
10
ZÁVĚR
35
Závěr
V teoretické části práce bylo úkolem nastudovat současné tendence v architektuře a návrhu modulárních informačních systémů, což je v práci dokumentováno. Je popsána architektura moderních informačních systémů jak teoreticky tak její aplikace na náš Univerzitní informační systém. Úkolem praktické části této práce bylo navrhnout a částečně realizovat subsystém evidence životopisů na Mendelově zemědělské a lesnické univerzitě v Brně. Byla vytvořena analýza subsystému životopisů, která detailně pojednává o funkčnosti systému, včetně vkládání, editování a mazání při tvorbě životopisů a exportu, tisku a zobrazování životopisů pro uživatele. V této práci je navrhnuta datová struktura subsystému, která se skládá ze sedmi tabulek s přesným popisem jejich obsahu. Pro zobrazení datové struktury byl použit entitně relační diagram, ve kterém jsou jasně vidět všechny spojitosti mezi jednotlivými tabulkami. K většině tabulek je i realizována webová aplikace pro vkládání údajů do databáze školy. Správce životopisu již může jednoduše vytvářet jednotlivé typy životopisů a skládat je z jednotlivých částí. Je potřeba vytvořit aplikaci pro vkládání vlastního obsahu životopisů (který se ukládá v tabulce v zivotopisy) pro interní uživatele Univerzitního informačního systému. Mezi tyto uživatele řadíme studenty, zaměstnance školy či externisty s přístupem na Univerzitní informační systém. Úkolem bylo také navrhnout vhodné typy životopisů pro Univerzitní agendy. V této práci jsou uvedeny dva zcela odlišné typy životopisů. Jeden by měl sloužit většinou pro studenty jako příloha pro přijímací řízení do zaměstnání a druhý pro školské potřeby jako příloha ke grantům (v něm jsou uvedena data typu publikační činnost, vědecká činnost apod., která se při přijímacím řízení do zaměstnání většinou neuvádí). Autorka této práce získala nenahraditelné zkušenosti nejen s analýzou, návrhem a vlastním vývojem systému, ale také se zaváděním do provozu tohoto systému u velkého informačního systému. Z tohoto pohledu se jeví tato práce jako velice úspěšná. Zda tento subsystém životopisů byl vhodně navržen a implementován se ukáže v budoucnosti.
11
11
LITERATURA
36
Literatura
[1] Černý, P. Hagiografická zobrazení ve středověké knižní malbě českých zemí. http://www.svkol.cz/konf/98hrad10.html. [2] Dařena, F. Jádro Univerzitního informačního systému. Diplomová práce. Brno: MZLU, 2002. 60 s. [3] Dařena, F. Věda a výzkum. In Informatika VI. Brno, 2002. [4] Molnár, Z. Efektivnost informačních systémů. Praha: Grada, 2000. 142 s. ISBN 80-7169-410-X. [5] Motyčka, A. Součásti a vývoj podnikových informačních systémů s ohledem na současný stav a trendy v informačních technologiích. Habilitační spis. Brno: MZLU, 1995. 190 s. [6] Netrefová, H. Uživatelská přívětivost Univerzitního informačního systému. In Firma a konkurenční prostředí. Brno: Konvoj, 2002. [7] Pazdziora, J. Dokumentový server IS Masarykovy Univerzity In RUFIS 2000. Brno: VUT, 2000. http://www.is.muni.cz. [8] Procházka, T. Studijní systém v Univerzitním informačním systému. Diplomová práce. Brno: MZLU, 2003. In press. 84 s. [9] Šorm, M. Univerzitní informační systém. Diplomová práce. Brno: MZLU, 2002. 98 s. [10] Tvrdíková, M. Zavádění a inovace informačních systémů ve firmách. Praha: Grada, 2000.