1 Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Vyšší odborná škola informačních služeb v Praze Darina Procházková Reengineering we...
Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Vyšší odborná škola informačních služeb v Praze
Darina Procházková
Reengineering webové aplikace pro zadávání bakalářských prací
Bakalářská práce
2011
Prohlášení Prohlašuji, že jsem bakalářskou práci na téma Reengineering systému pro zadávání bakalářských prací zpracovala samostatně a použila pouze zdrojů, které cituji a uvádím v seznamu použité literatury.
V Nučicích dne
Podpis
Poděkování Touto cestou bych chtěla poděkovat svému vedoucímu bakalářské práce panu Ing. Antonínu Skopcovi za jeho pomoc, věcné rady a připomínky k mé bakalářské práci. Dále bych chtěla poděkovat své rodině za jejich psychickou podporu.
Anotace Cílem mé bakalářské práce je provést reengineering webové aplikace na základě vytvořené analýzy stávajícího systému pro zadávání bakalářských prací na VOŠIS. V teoretické části se zaměřím na reengineering a popíšu technologické metody, které pro práci budu potřebovat. V praktické části vytvořím analýzu a specifikaci požadavků na systém a navrhnu uživatelské rozhraní aplikace pro možnou integraci systému do webových stránek školy.
Anotation The aim of my bachelor´s thesis is to implement reengineering of Web applications developed on the basis of analysis of the current system for awarding bachelor's work on VOŠIS. The theoretical part focuses on reengineering and describes applied technological methods. In practical part of the thesis, I will present an analysis and specification of system requirements and design user interface for possible integration into the school website .
Obsah Anotace ........................................................................................................................ 5 Anotation ...................................................................................................................... 5 Obsah ................................................................................................................ 6 Úvod ............................................................................................................................. 8 1.
Teoretická část ..................................................................................................... 9 1.1.
Uživatelé systému ................................................................................. 26
Student ........................................................................................................... 27 Vedoucí BP ...................................................................................................... 28 Oponent .......................................................................................................... 30
Ředitel ............................................................................................................. 30 2.1.4.
Závěr........................................................................................................................... 52 Seznam použité literatury ........................................................................................... 53 Seznam obrázků .......................................................................................................... 55 Seznam tabulek........................................................................................................... 56 Seznam diagramů ....................................................................................................... 56 Seznam zkratek ........................................................................................................... 57
Úvod Téma jsem si vybrala na základě předmětu „Projekt“, který vyučuje paní PhDr. Helena Kučerová. V tomto projektu jsme měli vytvořit „Webovou aplikaci pro administrativu a evidenci závěrečných prací na VOŠIS“. V předmětu projekt jsme vytvořili pouze specifikaci systému, technickou dokumentaci a uživatelské rozhraní. Jelikož mě práce na tomto projekt velmi zaujala, rozhodla jsem se vytvořit funkční aplikaci pro zadávání bakalářských prací na VOŠIS a jejich evidenci v systému. V teoretické části se budu zabývat především reengineeringem. Nejdříve popíšu, co to reengineering podnikových procesů vůbec je. Po představení reengineeringu podnikových procesů, si projdeme principy reengineeringu a organizační strukturu – kdo vše by se měl na změně projektu podílet, jakou odpovědnost budou jednotlivé role mít a v neposlední řadě jsou důležité znalosti jednotlivých osob. Poté přejdu k metodikám procesního reengineeringu - popíši čtyři nejznámější metodiky a nakonec přiložím tabulku, kde provedu jejich porovnání. Dále se budu zabývat výběrem metodiky, v které se dozvíte, jakými fázemi by měl projekt projít a na závěr uvedu veškeré použité technologie při zpracování aplikace a na jakém serveru práce v tuto chvíli funguje. V praktické části provedu podrobnou analýzu stávajícího systému pro zadávání bakalářských témat na VOŠIS od tvůrců Bc. Jana Buriánka a Ing. Davida Klimánka Ph.D a aplikace, kde se v tuto chvíli přihlašujeme na bakalářskou zkoušku a vyplňujeme formulář při vkládání bakalářské práce. Na základě provedené analýzy si vytvořím specifikaci požadavků na systém. Nadále se budu zabývat uživateli, kteří do systému vstupují. Vytvořím Use Case diagram uživatelů a diagramy aktivit pro jednotlivé osoby zvlášť. Další fází bakalářské práce je databáze, která bude vytvořena pro ukládání dat z formulářů a vkládaných souborů. Poslední částí bude uživatelské rozhranní. Zde Vám předvedu jednotlivá okna systému, a popíši, jak systém funguje.
8
1. Teoretická část Když přijdu na poštu nebo někam do obchodu a čekám ve frontě, napadají mě různé otázky „Proč tu jde pouze jedna přepážka, když je tu fronta 7 lidí?“, „Proč jsou na kase jen dvě prodavačky, když nestíhají odbavovat lidi?“. V tuto chvíli mě vždy napadne, že chod provozovny by potřeboval reengineering. Ale ono v provozu nejde jenom o zákazníky a jejich odbavování, ale taky o dodržování termínů od dodavatelů, bez kterého by potraviny v obchodě nebyli. Pod podnikovými procesy si tedy představte každou činnost, kterou musí personál obchodu udělat, aby zákazník mohl dojít ke kase a zaplatit a tenhle koloběh jde pořád dokola. Podnikový proces je souhrn činností, transformujících souhrn vstupů do souhrnu výstupů pro jiné lidi nebo procesy, používajíc k tomu lidi a nástroje.[1 s. 15]
Dodavatel
Prodnikový proces
Zákzaník
Obrázek č. 1 Základní schéma podnikových procesů
Zdroj: [1]
1.1. Reengineering podnikových procesů Už v roce 1993 napsali H. Hammer a J. Champy nejslavnější dílo o procesním reengineeringu. Často se používá pojem Business Process Reengineering (BPR). BPR předpokládá, že stávající podnikový proces nevyhovuje a potřebuje radikální změnu podnikových procesů, tak aby došlo k jeho zdokonalení. Reengineeringový přístup začíná definicí rozsahu projektu a hlavních cílů chystaného projektu. Pokračuje důkladnou analýzou a specifikací požadavků. Po analýze se vytvoří nová soustava procesů, naplánuje se přechod a nakonec se daný proces implementuje v podniku. [1., s 16-18] 9
Definice rozsahu projektu
Vytvoření nové soustavy procesů
Analýza potřeb a možností
Naplánování přechodu
Implementace
Obrázek č. 2 Model zásadního reengineeringu Zdroj: [ 1 s 17]
1.1.1. Principy reengineeringu V první polovině 90. let minulého stolení shrnuje C. Coulson-Thomas ty nejdůležitější reengineerionvé podnikové principy takto: Vnější zaměření na cílové zákazníky a zvýšení jim poskytované hodnoty – zákazníci a koncoví uživatelé musí mít jeden snadno přístupný kontaktní bod, přes nějž si mohou zkombinovat zdroje a lidi, kteří nejlépe naplní jejich požadavky a potřeby. Vnitřní zaměření na zapojení maxima lidského potenciálu do těch činností, které objevují a dodávají zákazníkům hodnotu. Tento princip bývá často přehlížen. Podněcovat poznávací a vzdělávací aktivity zaměstnanců vytvářením kreativního pracovního prostředí. Tento princip bývá často zapomínán a nahrazován spíše tendencí vyždímat ze zaměstnanců co nejvyšší výkon za jakoukoliv cenu, resp. bez ohledu na důsledky, namísto zlepšení kvality jejich práce. Myslet a konat jak jen možno „horizontálně“, zaměřující se na procesy a toky procházející skrze organizaci. Z procesů odstranit činnosti, nepřinášející hodnotu. Tam, kde to jde, provádět činnosti paralelně a i jinak zrychlit dobu vývoje a celkové odezvy. Namísto vstupů se zaměřit na výstupy. Měření výkonu a odměňování podřídit výstupům k zákazníkovi. Namísto udržování manažerské kontroly dát prioritu výsledkům. K tomu je třeba změnit roli manažera z původního“velitele“, který kontroluje a velí, na „kouče“, který spíše podceňuje, pomáhá a usnadňuje. 10
Vytvořit síťovou organizaci lidí a činností. V některých sektorech se virtuální organizace stává běžným jevem. Posunovat
rozhodování
blíže
k zákazníkům,
přeorganizovat
systém
odpovědností mezi organizací, dodavateli a zákazníky. Liniové vedoucí nahrazovat v organizaci spíše pracovními týmy a „manažery případů“. Podněcovat vlastní aktivitu zaměstnanců a spolupráci. To však vyžaduje od manažerů jistou míru tolerance k chybám. *1 s 25] Dbát, aby zaměstnanci byli dostatečně motivováni, dostatečně vybaveni a dostatečně pravomocní k plnění svých úkolů. Kde jen možno, dát zaměstnancům plnou odpovědnost za vedení sebe sama. To však od nich vyžaduje jisté schopnosti v oblasti plánování. Delegování pravomocí by nicméně nemělo znamenat úplný přesun rozhodování na zaměstnance, přinejmenším v oblasti strategického řízení je třeba expertní znalosti. Vyvarovat se přílišné složitosti a mechaničnosti v přístupu k procesům. Nenahrazovat tvořivé myšlení softwarem. Držet počet klíčových procesů na minimu (cca do 12). Všechny musí být zaměřeny na cílové zákazníky. Zejména větší organizace jsou často v pokušení vytvářet manažerské procesy (např.: tzv. „korporátní plánování“), které trvají příliš dlouho na to, aby byly schopny mít nějaký praktický přínos. Takové procesy typicky postrádají jak externí, tak dokonce i interní zákazníky. Vybudovat systém procesů s krátkou zpětnou vazbou, umožňující jejich přirozenou obměnu na základě praktických zkušeností. Zajistit, aby systém postupného zlepšování procesů byl ve stálé shodě se zaměřením společnosti. Podniky s delší zkušeností s reengineeringem často spojují procesní řízení s TQM (Total Quality Management) – oba přístupy jsou přirozenými doplňky. [1 s 26]
11
1.1.2. Organizační struktura Organizační struktura je vždy hierarchická, to znamená, že každý zaměstnanec má svého nadřízeného a ti mají své nadřízené a tak to pokračuje až k nejvyššímu vedení. Díky hierarchii jsou dobře rozdělovány pravomoci každého nadřízeného a jeho odpovědnosti. Nadřízení dávají úkoly svým podřízeným, ale jejich práci musí bezpodmínečně kontrolovat. Na základě takovéto organizace se zvyšuje efektivnost výkonu v organizaci. Na druhou stranu podřízení nerozumí věcem nadřízeného a naopak, což vede ke složitější komunikaci mezi sebou navzájem. Proto se podniky snaží „zplošťovat organizační strukturu“, aby nedocházelo ke „komunikačnímu šumu“. Leader V roli vůdce musí být člověk, který má představu, jak to ve firmě funguje nebo minimálně v oblasti, ve které dojde ke změně. Musí dobře vědět, proč dochází ke změně a jaký výsledek pro ně bude změna mít. Vždy se jedná o člověka nadřízeného, který spravuje daný úsek, třeba např.: marketing nebo logistiku a on se zaměří na změny pouze ve svém úseku. Obecně se jedná o projektový charakter nikoliv o rutinu. Projekt má vždy definovaný čas a rozpočet pro daný cíl, možnosti zdrojů a vždy je specifikovaný s vyšší rizikovostí. Musí být kladen důraz na analýzu rizik za účelem jejich řízení. Řízení a cíle se můžou během projektu měnit na základě měnících se podmínek v organizaci. Ostatní role Pokud chceme provést změny v organizaci, tak každý zaměstnanec, který se na vývoji bude podílet, musí začít uvažovat jinak, než jak uvažoval doposud, jinak by se pořád ve vývoji vraceli ke starému systému. Systém odměňování je velmi důležitý pro motivaci zaměstnanců. Ve většině organizací není brán ohled na soulad týmu či výsledek projektu. „Lidé jsou odměňováni za to, co dělají, nikoliv za to čeho dosáhli“. *1 s. 29+
12
Znalost Znalostí je označováno něco více, než jen informace. Znalost je něco, co člověk dokáže využít. Většinou jsou to získané zkušenosti, a pokud zaměstnanec firmu opustí, odchází s ním i zmíněna znalost. Znalost je dvojího druhu explicitní (jasná a zřetelná) a tzv. znalost tacitní, kam se řadí vzájemné postoje a sympatie mezi zaměstnanci.
1.2. Metodiky procesního reengineeringu Metodik reengineeringu existuje celá řada. Liší se v různých věcech. Některé rozsahem, jiné zaměřením nebo poměrem praktické a teoretické orientace. Studie ukazují, že po informačních technologiích je nejdůležitější týmová práce. Situace trvá dodnes a vzhledem ke komplexnosti problematiky je jasné, že nějakou dobu ještě potrvá. Například ve vývoji informačních systémů, z kterých mohou metodiky analýzy a designu procesů čerpat cenné zkušenosti, zejména v oblasti formálního popisu a analytických metod „technických“ aspektů procesu, se za dobu své existence nedokázali upevnit ve všeobecném paradigmatickém základu. [1 s 37] Tabulka č. 1 Metodiky reengineeringu procesů
Metodika
Původ – specifické zaměření
Hammer, Champy
Konzultantský/akademický
Davenport
Akademický
Manganelli, Klein
Konzultantský
Kodak
Uživatelský
DoD
Státní správa
ARIS Method (prof. Scheer)
Konzultantský/akademický, akcentuje vývoj IS/IT
PPP Method (prof. Gappmaier)
Konzultantský/akademický, akcentuje sociálně-psychologické aspekty projektu
DEMO Method (prof. Dietz)
Konzultantský/akademický, akcentuje formální modelování procesu podniku Zdroj: [1 s 37]
13
Vybrala jsem si pouze klasické metodiky procesního reengineeringu, proto se dále budu zabývat metodikou Hammera a Champyho, metodikou T. Davenporta, metodikou Manganelliho a Kleina a metodikou Kodak, nakonec provedu srovnání těchto uvedených metodik reengineeringu procesů.
1.2.1. Metodika Hammera a Champyho Autoři metodiky, definují BPR jako „fundamentální „přemýšlení“ a radikální rekonstrukci strategicky kritických podnikových procesů“ [2]. Hlavním problémem firem je v předem nedefinovaných cílech nebo v nepříliš jasných. Dalším problémem je nedostatečný management v podniku a díky těmto problémům si Hammer a Champy myslí, že dosáhne reengineering většího úspěchu. Hammer a Champy rozdělili metodiku reengineering do šesti kroků: Uvedení do reengineeringu – Uvádí vrcholný management, který shrne současnou situaci v podniku a vylíčí ji zaměstnancům. Identifikace podnikových procesů (PP) – Znázornění PP pomocí grafů. Výběr PP k reengineeringu – dochází k výběru nejvhodnějších PP, který zákazníkům přinesou zvýšený efekt. Vybírají se hlavně bezproblémové procesy. Poznání vybraných PP – jedná se o analýzu v porovnání stávajících procesů s očekáváním těch po reengineeringu Redesign vybraných PP – hlavním cílem projektu, zde dochází k vytváření inovací Implementace nových PP – konec reengineeringu, končí na úrovni plánování projektu [1]
1.2.2. Metodika T. Davenporta V Davenportově metodice se reengineering zaměřuje především na informační technologie (IT), protože dle Davenporta jsou klíčovou rolí pro zdokonalení. I přesto sleduje další faktory v organizaci a nakonec staví do čela organizační a personální stránku podniku. Podle Davenporta bude snazší spojit staré metody reengineeringu s novými, a proto i jeho metodika má šest kroků: 14
Vize a cíle – organizace si stanový potřebné vize a cíle, na které se při procesech zaměřují. Hlavním cílem je snížení nákladů. Podnik by se, ale neměl upínat pouze na snižování nákladů, protože jsou zde další důležité cíle jako např.: uspokojení zaměstnanců, zlepšení efektivity práce, snížení potřeby času na jednotlivé úkoly a další cíle, které zamezují redukci nákladů. Identifikace PP – nejdříve zjistí, které PP procesy potřebují změnit. Davenport doporučuje vybrat max. 15 procesů, které tvoří jádro podniku. Poznání a měření procesů - dochází k nastavení srovnávacích hodnot výkonu nových procesů *1+. Dochází zde k modelování procesů a zároveň k jejich měření IT – zjišťují se možnosti implementace Prototypování procesů – jde o vytvoření funkčního modelu procesu. Vytváří se pro zaměstnance podniku, aby se seznámili se změnami a zároveň se mohli vyjádřit k případným změnám prototypu Implementace procesů – uvádění nových procesů do podniku, kdy zároveň dochází k jejich testování. Davenport implementaci považuje za úspěch celého projektu a předpokládá, že potrvá minimálně jeden rok. [1]
1.2.3. Metodika Manganelliho a Kleina Autory uváděná metodika se zabývá procesy, které přímo souvisejí se strategickými cíly podniku a požadavky jejich zákazníků. Hlavním cílem je zejména vývoj produktu. Největšími problémy při reengineeringu vidí v organizaci, čase, nákladech a riziky – tedy kritické faktory organizačních projektů. Jejich metoda se jmenuje „Rapid-Re“ a má 5 kroků: Příprava projektu – stanovení cílů a připravení projektu Identifikace – definice organizační struktury orientované na zákazníka, vyměření procesů, které se budou muset změnit či nově vytvořit Vize – zvýšení efektivnosti procesů, závisí na přesném měření stávajících procesů Redesign
Technický – řeší se design informačního systému a užití technologií
Personální – vytvoření nového pracovního prostředí 15
Transformace – jedná se o implementaci změněných procesů a pracovního prostředí v podniku [1]
1.2.4. Metodika Kodak Metodika dostala název od mezinárodní organizace Kodak, která ji vyvinula za účelem řešení typických problémů nadnárodních firem. Stejně jako jiné metody byla i tato metodika ovlivněna Hammerem a Champym, ale má pouze 5 kroků. Iniciace projektu – jedná se o plánování projektu a definici všech potřebných administrativních projektových pravidel a procedur Poznání procesů – nastavení společných cílů, vytvoření modelu procesů podniku a zajištění manažerů, kteří budou za projekt odpovědni Design nových procesů – dochází k naplánování implementace Transformace podniku – tento krok je zaměřen na implementaci a přizpůsobení infrastruktury podniku nově zkonstruovaných podnikových procesů Řízení změny – řešení průběžných chyb v procesech [1]
1.2.5. Porovnání metodik Všechny čtyři metodiky reengineeringu jsou v rukou vrcholového managementu, který má vybraný projektový tým. Projekt, ale nezávisí jen na vrcholovém managementu, nýbrž taky na zručnosti a schopnostech jeho týmu. Tabulka č. 2 Srovnání klasických metodik reengineeringu procesů
Příprava projektu
Rekonstrukce procesu
Hammer,
Uvedení do
Champy
reengineeringu
Poznání procesů
Identifikace
Redesign procesů
Implementace
implementace
Výběr pocesů Davenport
vize a cíle identifikace procesů
poznání a měření
Prototypování
procesů
implementace
16
informační technologie Manganell,
Příprava projektu
Klein
Identifikace
Kodak
Vize Technický a personální
Transformace
design
Iniciace projektu Řízení změny
Poznání procesů
Transformace
Design nových procesů
podniku
Řízení změny
Řízení změny
Zdroj: [1 ] Klasické metodiky jak je vidět z tabulky mají mnoho společného: a) V zásadě lineární přístup b) Metodický postup je podobný jako u vývoje informačních systémů Metodika se liší nejvíce v přípravě projektu, kdy podle Davenporta musí dojít k vytvoření vize, zatímco v ostatních metodikách se v přípravě projektu přiklánějí k schematickému postupu. Všechny metodiky, kromě Hammera a Champyho , zdůrazňují lidský faktor, který má pomoci při úspěšné implementaci reengineeringu. V třetím kroku se autoři téměř shodují, akorát Davenport vytváří nejdříve funkční prototyp, než přejde k implementaci do podniku.
1.3. Výběr metodiky Prvním krokem před spuštěním projektu, je výběr metodiky. Není možné určit jeden správný postup, jak by se měl reengineering správně provádět. „Dobrý reengineeringový projekt vede k výsledku, který: je zaměřen na zákazníky; staví na nejlepších zkušenostech a respektuje ostatní; je vytvořen pro budoucnost; přináší významná a podstatná zlepšení činnosti celého podniku *1 s. 52+“ Navzdory zvolenému přístupu v situaci či technologii, v níž je použita a na níž staví, by měla každá metodika reengineeringu pokrýt sedm obecně přirozených fází projektu: *1+
17
„Plánování a spuštění projektu výběr týmu, stanovení cílů, definice rozsahu, výběr metodiky, vytvoření harmonogramu projektu, výběr externích poradců, získání sponzorů projektu, naplánování změny, příprava týmu. Zhodnocení současného stavu a kompletace poznání v oboru: globální – přehledová definice procesu, benchmarking (srovnávací studie parametrů firmy vůči ostatním), zjištění cílových skupin zákazníků, zjištění cílových skupin zaměstnanců, zhodnocení technologie. Globální návrh procesů: návrh struktury procesů, návrh architektury technologické podpory procesů, návrh organizační struktury (nutných změn v organizaci), návrh personální struktury (nutných změn pracovních míst). Případová studie chystané změny: analýza nákladů a přínosů, příprava případové studie, presentace vrcholovému vedení a klíčovým osobám. Detailní návrh systému procesů: detailní definice procesů, vývoj podpůrného informačního systému, vytvoření systému školení, 18
naplánování implementace, naplánování zavedení procesů, pilotní projekty a zkušební provoz. Implementace a zavedení systému procesů: široce zaměřené pilotní projekty, fázovaná implementace, vývoj systémů měření, plná implementace systému procesů. Postupná zlepšování systému procesů: neustálé měření a zlepšování nových procesů a podpůrných systémů.“
1.4. Použité technologie Použité technologie se dají rozdělit do 3 vrstev webové aplikace. V prezentační vrstvě jsem použila technologii značkovacího jazyka HTML a kaskádové styly CSS. V aplikační vrstvě je použit skriptovací jazyk PHP a Windows Server 2008 R2 64 bit. V poslední vrstvě alias datové jsem použila databázi MySQL.
1.4.1. HTML/XHTML HTML neboli HyperTextMarkup Language je značkovací jazyk (tzn. uvnitř kódu je text pro zpracování i text vlastní) a je používán především v hypertextových dokumentech. Tento jazyk se používá při tvorbě statických stránek v systému World Wide Web, které umožňují publikaci hypertextových dokumentů na internetu. První verze jazyka HTML 0.9 byla vydána již v roce 1991, postupem času se verze vyvíjeli až do verze HTML 5, která byla vytvořena v roce 2007. XHTML (eXtensible HyperText Markup Language) je rozšířený značkovací jazyk, který měl v budoucnu nahradit HTML. Rozdíl mezi HTML a XHTML jsou např.: Tagy a atributy jsou psané malými písmeny a nepárové tagy musejí být ukončeny lomítkem .
19
1.4.2. CSS CSS neboli kaskádové styly pomáhají již několik let k usnadnění práce webových designérů. Používají se především při zobrazování stránek psaných v jazycích HTML, XHTML či XML. Hlavním úkolem kaskádových stylů je doplnit hypertextové dokumenty o design, který sami neumožňují vytvořit. Proto jsou vkládány do hypertextových dokumentů jako link, který se jmenuje „nazev.css“, kde jsou styly definovány (např.: ). Pokud potřebujeme změnit design stránek, otevřeme si soubor nazev.css a změníme ho, jak potřebujeme. Po nahrání souboru na server se nám design změní všude, kde byl předtím s tímto názvem použit.
1.4.3. PHP Php (rekurzivní zkratka - Hypertext Preprocess) je skriptovací jazyk, který se používá k vytváření dynamických internetových stránek nebo webových aplikací za pomoci značkovacích jazyků. Při vytváření dynamických stránek jsou skripty odeslány na server. Server vykoná příkazy a odešle na obrazovku uživateli kód v HTML či XHTML formátu, kterému rozumí. Podporuje různé knihovny jako např.: zpracování textu, grafiky, práci se soubory, databázové systémy (MySQL) a internetové protokoly (HTTP, FTP). Jazyk php se zapisuje dvěma možnými způsoby buď a nebo ?>, záleží na nastavení serveru, který php spouští a my si to můžeme ověřit pomocí spuštění příkazu
1.4.4. Windows Server 2008 R2 Windows server 2008 R2 od společnosti Microsoft z řady Windows NT je operační systém, který přišel na trh v roce 2009 jako nadstavba Windows server 2008. Rozdíl mezi těmito servery je v v kódu, který používají. Starý Windows server 2008 používal kód Windows Vista, kdežto nový server 2008 R2 používá Windows 7. IIS7 neboli Internet Information Services 7 je součástí Windows Server 2008 R2. Tato služba zajišťuje lepší správu webových aplikací ve Windows Serveru 2008 R2. ISS7 podporuje HTTP, HTTPS, FTP, FTPS, SMTP A NNTP.
20
1.4.5. MySQL MySQL je multiplatformní, relační databáze, která používá strukturovaný dotazovací jazyk SQL. Pro MySQL existují 2 licence. První licence GPL (GNU Public Licence) a druhá je komerční. Je to nejpoužívanější databázový systém, kvůli jeho implementaci a použití s PHP. Hodnoty zapsané pomocí dotazovacího jazyka SQL se ukládají do tabulky, kterou si vytvoříme pomocí CREATE. Později můžeme na tabulku použít UPDATE (editace) nebo DELETE (smazat). Tabulka má sloupce a řádky. Každý sloupec má svůj název a řádek svůj datových typ, pod kterým se hodnoty ukládají. Příklad datových typů: varchar, date, set, text a jiné. Software, který můžeme používat pro práci. Phpmyadmin pokud používáme Apache, MySQL Query Browser nebo Navicat Lite u ostatních serverů.
1.4.6. HTTP HTTP je nejznámější internetový protokol na světě určený k výměně hypertextových dokumentů vytvořených ve formátu HTML a XHTML. V dnešní době se pomocí něj přenášejí i jiná data a informace stejně jako pomocí e-mailu. Jelikož HTTP neumožňuje šifrování, byla proto vytvořena bezpečnější verze HTTPS. Činnost protokolu HTTP je založený na dotazu a odpovědi. Uživatel pomocí internetového prohlížeče pošle serveru dotaz, ten dotaz vyhodnotí a pošle uživateli odpověď. Pokud uživatel pošle další dotaz, server není schopný vyhodnotit, zda je podobný s předchozím dotazem a znovu vykoná dotaz stejným způsobem. Protože většina aplikací, kam se lidé přihlašují pod svým loginem, potřebují, aby se informace o něm zapsali, používájí k tomuto účelu HTTP cookies.
21
2. Praktická část 2.1. Analýza Nejprve si vytvořím analýzu stávajícího webu, protože v tuto chvíli systém nefunguje komplexně na jednom místě. Na základě analýzy vytvořím specifikaci požadavků na systém. Popíšu jednotlivé uživatele, kteří do systému vstupují, a vytvořím Use Case diagram uživatelů. Dále se budu zabývat jednotlivými aktivitami uživatele zvlášť, pro lepší přehlednost a ujasnění, jak probíhají jednotlivé procesy ať už v systému nebo mimo něj.
2.1.1. Analýza stávajícího systému Stávající systém na zadávání bakalářských prací má dva procesy. Původní systém byl navrhnut studentem Bc. Janem Buriánkem, který vytvořil funkční systém pro vybírání bakalářských témat. Na stránkách http://klimanek.sks.cz/rez_system/ funguje již upravená verze o registraci studentů a učitelů. Po zaregistrování se student může přihlásit k tématu. Pokud je student nalogovaný a má vybrané téma, již vidí jen téma, ke kterému se přihlásil. Téma si může student změnit, po změně se původní téma znovu otevře pro jiné studenty. Cíle zapisují vedoucí bakalářských prácí přes svoje uživatelské rozhraní. Studentovi se cíl zobrazí v jeho profilu, jakmile ho vedoucí odešle do systému. V systému má student po zadání cíle možnost vložit osnovu svoji bakalářské práce. V systému vidíte seznam všech bakalářských prací, seznam vyučujících a volných témat. Nynější systém ovšem nijak neřeší možnost, kdy student bakalářskou práci obhájil. Tudíž i student, který již studentem není, může provádět stále stejné změny v systému. Učitel může ve svém profilu přidávat nová témata. Pokud si student nevybere ze zadaných témat, dojde za učitelem, u kterého chce psát bakalářskou práci, a spolu téma do systému zapíší a potom se teprve student může k tématu přihlásit. Učitel může témata nejenom přidávat, ale také mazat, blokovat či rušit rezervaci studentů.
22
23 <<extend>>
Zrušit rezervaci
<>
Přidat téma
<<extend>> Blokovat téma
Prohlížení témat
<<extend>>
Prohlížení volných témat
Prohlížení vyučujících
Nepřihlášený uživatel
Registrace
Smazat téma
Rezervace tématu
Učitel
Přihlášený uživatel
Diagram č. 1 Diagram užití aplikace
Pokud už máte téma zpracované a chystáte se k odevzdání bakalářské práce, jdete na stránky www.sks.cz. Zde se nalogujete do systému a na záložce „Bak.zkoušky“ se Vám otevře menu. Na kartě „Závěrečná BZ“ se přihlásíte a otevře se Vám možnost vložit pdf s bakalářskou práci. Zde nás to odkáže na http://toy.sks.cz/absprace/prace.html, kde musíte ručně vyplnit veškeré údaje o bakalářské práci včetně anotace a nakonec vložíte svou bakalářskou práci. Poté se můžete přihlásit k bakalářské zkoušce. Po obhájení bakalářské práce, studentovi zůstává možnost opět se přihlásit na bakalářskou zkoušku a může projít opět stejným procesem, který jsem již uvedla (viz obr. č 3). Toto by mělo být ošetřeno. I když student, který bakalářskou práci dokončil, se na ní asi znovu přihlašovat nebude, měla by tam být podmínka, aby se již přihlašovat nemohl.
Obrázek č. 3 Student, který bakalářskou práci již obhájil
Zde je dobře vidět, že student se může opětovně přihlásit, má zde akorát napsané, že půjdu obhajovat podruhé. Tento student, ale práci již obhájil, proto by se mu dané okno zobrazovat nemělo.
2.1.2. Specifikace požadavků Na základě provede analýzy, uvedu specifikaci požadavků na systém: Integrace systému do webových stránek školy Přehled obhájených bakalářských prácí na hlavní stránce školy, kde se budou ukládat do jednotlivých let, kdy byla témata obhájena, ale pouze témata, která budou moci být zveřejňována 24
Student uvidí veškerá témata vložená vyučujícími, která si podle vyučujících bude moci filtrovat po přihlášení tématu u vyučujícího se mu otevře možnost vložit bakalářskou práci a projekt k bakalářské práci vložení bakalářské práce – formulář pro vložení abstraktu, možnost zda student chce či nechce bakalářku zveřejňovat a vložení BP pokud student bakalářku obhájí, zneaktivní se mu přístup do záložky „bakalářská práce“ zobrazení posudků Vyučující přidává, edituje a maže témata vedoucí BP může stáhnout soubor BP a projekt k BP vkládá posudky buď jako oponent nebo jako vedoucí po udělení zápočtu (obhájení práce) student nebude moci ve svém profilu již více prohlížet záložku „Bakalářská práce“, jestliže student práci neobhájí, zůstane mu otevřeno stejné menu a bude si moci vybrat jiné téma nebo přepracuje to stávající a vloží novou BP a stará BP se přepíše Ředitel
schválí přihlášená témata
25
2.1.3. Uživatelé systému Pro lepší představu, kdo vše vstupuje do systému, jsem udělala, podrobný use case diagram. Uživatelé jsou tři vlastně čtyři: student, ředitel a vyučující. Vyučujícího tu, ale zobrazuju každého zvlášť, protože pro studenta může být buď vedoucím, nebo oponentem.
Diagram č. 2 Use Case diagram uživatelů
26
Use case diagram nám ukazuje, jak vstupujou uživatelé do systému, ale ne veškeré aktivity, které musejí uživatelé dělat, proto vytvořím pro každého uživatele diagramy aktivit zvlášť. Student Diagram č. 3 Diagram aktivit studenta
27
Jak je již z diagramu zřejmé, student si vybere téma a vedoucího, po diskusi o tom, jakým směrem by se měla práce ubírat a vyučující mu zapíše téma. Studentovi se nabídne možnost vložit projekt vytvořený k bakalářské práci, jestliže projekt nebude vyhovovat, proběhne celý proces s výběrem znovu, pokud ano může student přejít k vytvoření a vložení bakalářské práce. Po vložení se přihlásí k bakalářské zkoušce, kde bude obhajovat svoji práci. Před bakalářskou zkouškou se studentovi v jeho profilu objeví vložené posudky od vedoucího a oponenta. Pokud student při bakalářské zkoušce práci neobhájí, bude mít 2 možnosti. Vybrat si mezi přepracováním bakalářské práce nebo nalezením nového tématu a vypracování celé bakalářské práce znovu. Jestli student práci obhájí, dokončí se celý proces. Vedoucí BP Vyučující navrhuje témata, z kterých si studenti můžou vybírat, pokud si student u daného vyučujícího téma nevybere, student může požádat o přidání tématu. Po přidání tématu vyučující studenta zapíše a po zapsání, vedoucí BP může zapsané téma editovat, např. vloží cíl. Po vytvoření projektu studentem a nahráním na server může vedoucí BP vidět v tabulce vložení projektu, který si může stáhnout, stejně tak to probíhá i s vložením BP. Po přečtení BP vedoucí BP vkládá do systému svůj posudek a studentovi se otevře možnost přečíst si posudek u sebe v profilu. Při bakalářské zkoušce může dojít k tomu, že student práci neobhájí a tudíž mu nebude udělen zápočet a bude muset celý proces proběhnout znovu od editace tématu. Jestliže student práci obhájí a udělí mu profesor zápočet, dojde k neaktivnosti studenta v systému a v systému zůstanou jen posudky, bakalářská práce a projekt k BP.
28
Diagram č. 4 Diagram aktivit vedoucího BP
29
Oponent Oponent vstupuje do procesu jenom tím, že si přečte vytištěnou práci a vloží posudek pro studenta v záložce „posudek oponent“, kde se mu objeví všechna jména studentů, pro která má posudek vložit. Diagram č. 5 Diagram aktivit oponenta
Ředitel Ředitelovi se v jeho rozhraní zobrazí veškerá témata, která jsou přihlášena k bakalářským pracím. Může si přečíst název bakalářské práce, vedoucího, studenta a cíl jeho práce. Po přečtení a zvážení, zda téma schválí, přejde k editaci a zaškrtne, zda téma schválil či nikoliv. Diagram č. 6 Diagram aktivit ředitele
30
2.1.4. Databáze Pro ukládání dat jsem použila databázi MySQL. Bude obsahovat pouze 4 tabulky, které stačili pro uložení všech hodnot vstupujících do databáze. Uživatelé uzivatele id_uzivatele jmeno prijmeni rc datum_narozeni bydliste mail login heslo uzivatel status
int varchar varchar varchar varchar varchar varchar varchar varchar set set
Obrázek č. 4 Tabulka uživatele
id_uzivatele: nastaven automatický primární klíč, jmeno: jméno uživatele, prijmeni: příjmení uživatele, rc: rodné číslo uživatele, zadává se s lomítkem, datum_narozeni: zadání ve formátu DD.MM.RRRR, bydliste: ulice a město uživatele, mail: mail uživatele, login: unikátní přihlašovací jméno do systému, heslo: heslo uživatele do systému, uzivatel: nastavena hodnota SET s možnostmi ucitel, student, reditel, která zajišťuje přístupová práva status: nastavena hodnota SET s možností aktivní a neaktivní, kdy aktivní je defaultní hodnota
31
Projekt uzivatele id_uzivatele jmeno prijmeni rc datum_narozeni bydliste mail login heslo uzivatel status
int varchar varchar varchar varchar varchar varchar varchar varchar set set
projekt id_download jmeno_souboru typ_souboru id_uzivatele
int varchar set int
Obrázek č. 5 Tabulka projektů
id_download: automatický primární klíč, jmeno_souboru: název souboru - login uživatele, který ho vkládá typ_souboru: vybírá z možnosti projekt, bakalarka a dle možnosti vloží soubor do příslušné složky id_uzivatele: cizí klíč, který připisuje číslo uživatele, který posudek vložil Posudky uzivatele id_uzivatele jmeno prijmeni rc datum_narozeni bydliste mail login heslo uzivatel status
int varchar varchar varchar varchar varchar varchar varchar varchar set set
projekt id_posudku jmeno_souboru typ_souboru id_uzivatele abstrakt_cz abstrakt_en publikovat
int varchar set int text text set
Obrázek č. 6 Tabulka posudků
id_posudku: automatický primární klíč, jmeno_souboru: název souboru - login uživatele, který ho vkládá typ_souboru: vybírá z možnosti vedouci, oponent a dle možnosti vloží soubor do příslušné složky id_uzivatele: cizí klíč, který připisuje číslo uživatele, který posudek vložil abstrakt_cz: česká anotace bakalářské práce abstrakt_en: anglická anotace bakalářské práce publikovat: vybírá z možnosti ano, ne 32
int varchar varchar varchar varchar text date set set set set
Obrázek č. 7 Tabulka témat
kod: automatický nastaven primární klíč, nazev_tematu: napíšeme celý název tématu, vedouci: vkládá se z formuláře, který vybere všechny učitele - jmeno + prijmeni dohromady, oponent: vkládá se z formuláře jako text, student: vkládá se z formuláře, který vybere všechny studenty – jmeno + prameni, cil: cíl bakalářské práce, datum_zadani: datum poslední změny ve formátu RRRR-MM-DD, schvaleno: vybíráme z hodnot – ano, ne – defaultní hodnota ne udelit_zapocet: vybíráme z hodnot – ano, ne – defaultní hodnota ne prihlasen: vybíráme z hodnot – ano, ne – defaultní hodnota ne zruseno: vybíráme z hodnot – aktivní, neaktivní – defaultní hodnota aktivní
2.2. Uživatelské rozhraní Při vytváření grafického uživatelského rozhraní jsem použila software od Microsoftu „Microsoft Expression Blend 4“, který byl dostupný přes msdn školy a jediný, s kterým jsem měla zkušenosti. V tomto interaktivním prostředí jsem si vytvořila, jak by měl vypadat systém pro zadávání bakalářských prací implementovaný do webových stránek školy. Nejdříve se zaměřím na rozhraní pro všechny stejné a postupně Vám ukážu jednotlivá rozhraní pro každého účastníka zvlášť.
33
Obrázek č. 8 Hlavní stránka
Na hlavní stránce v sekci informace pro studenty je záložka „absolventské a bakalářské práce“, zde se budou opět zveřejňovat obhájená témata, ale jen ta, která jsou studentem dovolena zveřejnit. Ovšem v tuto chvíli nemám přístup k stránkám, proto jsem vytvořila „náhradní“ úvodní stránku, kam vložím nahrávání bakalářských prací (Obrázek č. 9Obrázek č. 9 Obhájené práce) a škola si potom skript implementuje do svých stránek.
Obrázek č. 9 Obhájené práce
34
Na obrázku č. 9 jsem chtěla jen poukázat, kde v tuhle chvíli budou vložené bakalářské práce, které byly obhájeny a dovoleny zveřejňovat, jinak tato stránka existovat nebude, proto se ji dále nebudu zaobírat.
Obrázek č. 10 Obhájené bakalářské práce
V obhájených pracích můžete vidět název, studenta, který ji vypracoval, abstrakt v práci. Můžete si stáhnout bakalářskou práci, kterou student vypracoval a jeho posudky od vedoucího a oponenta. Můžete si i vybrat rok ukončení studia a prohlédnout si jednotlivé bakalářské práce.
35
Obrázek č. 11 Přihlašovací okno
Přihlašovací okno do systému sks.cz. Heslo a login dostaneme vygenerované od školy, ale heslo si uživatel samozřejmě může změnit. Pokud se uživatel špatně přihlásí, vypíše se mu hláška, co zadal špatně. Pokud zadá špatně heslo, tak se mu nad loginem objeví text: „Špatné heslo“, jestli napíše špatně uživatelské jméno, systému mu vypíše: „Neznámý uživatel“.
Obrázek č. 12 Špatné přihlášení
Obrázek č. 13 Okno po přihlášení studenta
Toto okno je po přihlášení do systému pro všechny účastníky stejné, mění se zde pouze hlavní menu. Na obrázku je použito menu pro studenty. Ostatní menu budou vidět u každé zúčastněné osoby v systému zvlášť.
36
2.2.1.
Administrátor
Po přihlášení administrátora se objeví okno, které vidíte níže. Po kliknutí na správu uživatelů se vám zobrazí veškeré činnosti, které administrátor může v systému udělat. Posledním tlačítkem je „odhlášení“, které provede odhlášení administrátora a přesměruje ho na úvodní stránku školy. Administrátora jsem zde vytvořila zcela jen pro svoji potřebu, na základě usnadnění práce při vkládání a mazání studentů, tudíž především kvůli testování stánek, proto jsem ho ani nezahrnovala do specifikace požadavků ani do jednotlivých diagramů. V systému školy se samozřejmě bude používat vkládání studentů stejným způsobem jako doposud.
Obrázek č. 14 Úvodní strana administrátora
Administrátor se stará o funkčnost systému. Může přidávat a mazat uživatele, kontrolovat seznam uživatelů a editovat jednotlivé uživatele dle potřeby. Jeho hlavní činností je aktualizace systému a kontrola, zda daný systém funguje, jak má. Administrátoři si postupně dané systémy vyvíjejí dle potřeby. V mém systému bude dělat pouze základní věci, které pro funkčnost systému stačí.
37
Obrázek č. 15 Přidat uživatele
Obrázek nám znázorňuje, co vše bude u přidání uživatele, ať už studenta nebo učitele, admina či ředitele potřeba. Musíme vyplnit jméno, příjmení, rodné číslo, datum narození, bydliště, e-mail pro kontakt s uživatele, login a heslo. Když administrátor všechno vyplní, zmáčkne tlačítko provést a objeví se mu jméno zapsané v seznamu uživatelů.
Obrázek č. 16 Seznam uživatelů
V seznamu uživatelů bude administrátor mít možnost editovat jednotlivého uživatele zvlášť. Při kliknutí na „editovat“ se otevře formulář pro přidání uživatele a zde se vypíšou již zapsané hodnoty v databázi, které může změnit nebo doplnit o nové informace o uživateli, které potřebuje. Pokud uživatel bude chtít změnit heslo, tak ho administrátor změní také přes tlačítko „editovat. Jistě jste si všimli, že nad tabulkou je tlačítko přidat, po 38
kliknutí se nám také otevře formulář pro přidání uživatele a administrátor tak má 2 možnosti pro přidání uživatele.
Obrázek č. 17 Smazání uživatele
V posledním sloupečku máme možnost „smazat“, zde bude použitý skript na smazání u každého uživatele zvlášť. Udělala jsem tuto variantu z důvodu, pokud by se náhodou na škole vyskytovali stejná jména, aby administrátor nevymazal někoho jiného, proto možnost smazání bude pouze touto cestou. Pro větší jistotu, že mažeme skutečně uživatele, kterého chceme smazat, se nás systém zeptá, zda opravdu chceme smazat tohoto uživatele. Máme možnost kliknout na odkaz „ano“, tím se uživatel skutečně smaže a objeví se hláška: Uživatel byl úspěšně smazán. Nebo můžeme zmáčknout „smazat uživatele“ a vrátíme se zpět na seznam uživatelů, který můžeme mazat.
Obrázek č. 18 Odstranit uživatele
2.2.2. Student Student ve svém uživatelském rozhraní najde jeho dosavadní výsledky, které jsou na kartě „Moje studium“. Druhá karta „Bakalářská práce“, tou se budu zabývat níže. Třetí karta „Zkoušky“, zde se student dozví, které zkoušky jsou vypsané, a může se zde na ně přihlásit. V kartě „Termíny“ uvidí přehled veškerých zkoušek na škole a poslední karta
39
slouží k odhlášení studenta ze systému. (V tuto chvíli fungují záložky „home“, „bakalářská práce“ a „odhlášení“).
Obrázek č. 19 Menu pro studenta
Obrázek č. 20 Bakalářské standardy
Po kliknutí na kartu „bakalářská práce“ se nám zobrazí okno, kde jsou uvedeny standardy pro psaní bakalářských prací. V okně bakalářské standardy najdeme různé odkazy na webové stránky. V důležitých předpisech najdeme například „Zákon č. 111./1998 Sb. o vysokých školách“, Disciplinární řád VŠE, Řád o zveřejňování prací a v neposlední řadě studijní a zkušební řád VŠE. V odrážce více informací o bakalářské práci jsem použila odkaz na seminář diplomových prací na stránkách doktorky Kučerové *INT 11+. Dozvíme se zde, jak by měla bakalářská práce vypadat, kolik by měla mít stran a jaké vlastnosti má mít odborný dokument.
40
Obrázek č. 21 Moje téma
Moje téma – najdeme, zde téma, které si student vybral a u profesora si nechal zapsat. Nejdříve jsem udělala možnost, že student bude moci také vkládat téma, ale jelikož si student musí vybrat vedoucího, který mu práci povede. Přijde mi lepší, aby si rovnou o tématu promluvili, a proto jsem se rozhodla, aby téma vložil vedoucí práce. Pokud ještě nebude téma zapsané (Obrázek č. 22 Nezapsané téma), v záložce projektu a vložení BP budou prázdná okna, aby student nemohl nic vkládat, když nemá vybrané téma (Obrázek č. 23 Nezadané téma - nefunkční vládání projektu a BP).
Obrázek č. 22 Nezapsané téma
41
Obrázek č. 23 Nezadané téma - nefunkční vládání projektu a BP
Student vidí název práce. Vedoucího, který mu práci povede, cíl bakalářské práce, který si s vedoucím dohodli a datum poslední změny. V políčku schváleno se student dozví, zda ředitel souhlasí, aby toto téma mohl psát. Udělení zápočtu proběhne v době, kdy student složí bakalářskou zkoušku. Po udělení zápočtu se student smaže ze systému. Pokud mu udělen zápočet nebude, bude si moci student buď znovu zapsat téma nebo přepracuje starou bakalářskou práci (Obrázek č. 21).
Obrázek č. 24 Seznam témat
V seznamu témat se dozvíme, jaké témata jsou vypsána pro bakalářské práce pro následující semestr. U každého tématu vidíte i profesora, který téma povede a jeho navržený cíl, na kterém se, se studentem dohodli a zda už je téma zadané či nikoliv. Pokud je téma zabrané, bude se objevovat na konci tabulky. Cíl bude uveden jen, pokud je téma vybrané. Nejdříve jsem zde chtěla uvést i studenta, ale potom jsem si uvědomila, že to 42
není důležité, aby ostatní studenti viděli, kdo si co zapsal, a proto jsem studenta odstranila. Jak vidíte student si, bude moci filtrovat jednotlivé učitele, dle jména profesora. Pomocí filtru si student nebude muset skrolovat 100 tématy, ale zadá si profesora a vypíšou se mu v tabulce pouze témata vybraná od něj. (Obrázek č. 24)
Obrázek č. 25 Projekt k bakalářské práci
Projekt k bakalářské práci musí každý student vytvořit už na semináři o bakalářské práci. Je to první náčrt studenta, jak bude jeho práce vypadat. Do projektu jsem uvedla osnovu, které by se měl každý student držet nebo mu může alespoň pomoci k tomu, jak by měl projekt psát. Student si zvolí nejdříve téma a najde si vedoucího práce. Potom si vymezí problematiku, čím se práce bude zabývat a stanoví si její cíle. Student si musí vytvořit hypotézu, určí si, o jaký typ práce půjde a navrhne si, jak bude postupovat. Dalším úkolem na navržení časového plánu, aby to za 3 měsíce stihl student skutečně napsat. Nejdelší dobu zabere shromažďování dat a potom vytvoření praktické části. Do svého systému jsem projekt zahrnula, aby ho mohl vidět i vedoucí práce. Student vloží projekt do systému a po vložení se mu zobrazí proklik, kde si může projekt stáhnout. Po vložení projektu studentem se objeví možnost stažení projektu i u profesora, který práci povede.
43
Obrázek č. 26 Vložení bakalářské práce
V kartě „vložení bakalářské práce“ může student vložit bakalářskou práci, která se vedoucímu práce objeví u jeho zapsaného tématu. Student může vybrat pouze 3 formáty, v kterých práci může uložit a to v .pdf, .doc a .docx. Ostatní formáty nejsou povoleny. Student může vložit téma pod jakýmkoliv názvem, protože soubor se sám přejmenuje dle loginu studenta, stejně tak je tomu i u projektu. Při vložení bakalářské práce se studentovi zobrazí formulář, kam vloží svoji anotaci (anglickou i českou) a vybere, zda umožňuje škole zveřejnit jeho téma na stránkách školy. Po obhájení práce se objeví studentova práce na www.sks.cz v sekci bakalářské zkoušky, jak tomu bylo doposud a budou zde vloženy posudky vedoucího a oponenta. V mém případě se to objeví na hlavní stránce v sekci „Pro studenty“ -> „Obhájené práce“.
44
Obrázek č. 27 Posudky student
Posudky vkládá vedoucí práce a oponent ve svém uživatelském rozhraní, které uvidíte později. Zde se studentovi zobrazí, jakmile ho vloží. Pokud posudek není vložen, vypíše se hláška: „Soubor není vložen“. Pokud posudek vložen bude, vytvoří se zde proklik na stáhnutí posudku. Student klikne na „stáhnout“ a otevře se mu vložený posudek v příslušném formátu. Posudek je vkládán pouze v .pdf, aby ho nikdo nemohl upravit.
2.2.3.
Profesor
Profesor má ve svém uživatelském rozhraní možnost „vypsat zkoušky, zapsat známky, vidět předměty, které se ho týkají a bakalářskou práci“. Bakalářskou prací se bude zabývat níže, ostatní záložky jsou v tuto chvíli nefunkční, protože předpokládám, že škola vloží své skripty.
Obrázek č. 28 Menu profesora
Přejdeme teď k rozebrání záložky „bakalářská práce“. Po rozkliknutí se objeví menu pro bakalářskou práci, kde najdeme: „Moje témata“, „Posudek, který vkládá profesor jako oponent nebo jako vedoucí“ a „Všechna témata“.
45
Obrázek č. 29 Moje tétama
V kartě moje témata, profesor najde vypsaná veškerá svoje témata, která má k dispozici. Uvidí, zde studenta, který si téma vybral. Cíl bakalářské práce, na kterém se dohodli. Datum změny jeho posledních úprav v tomto tématu. Pod bakalářkou a projektem se objeví soubory, které vložil student ve svém uživatelském rozhraní a profesor si je bude moci stáhnout. V políčku schváleno uvidíme, zda ředitel souhlasí s tématem a jak už jsem psala u studenta, udělit téma proběhne až po skončení státnic studenta přes možnosti editovat. Pokud zůstane „ne“ student stále uvidí vše, co ve svém profilu měl, jestliže zkoušku vykoná, tudíž dostane zápočet, student v systému zneaktivní, zůstanou po něm jen vložené soubory, které budou použity do vypsání bakalářských prací, které byly obhájeny a poveleny zveřejnit. V posledním sloupečku vyučující bude mít možnost „smazat“ zadané téma. Původně jsem, zde měla pouze možnost „editovat“. I když by jistě nebyl problém, aby tlačítko „editovat“ použili k přepsání tématu jiným, ale pro lepší orientaci všech, jsem tam tlačítko přidala. Tlačítko smazat funguje úplně stejně jako u administrátora, když chce smazat uživatele.
46
Obrázek č. 30 Formulář pro vkládání a editaci témat
Profesor bude moci přidat téma přes tlačítko „přidat“, kde se mu po prokliku objeví formulář pro vkládání tématu. V možnosti „editovat“ se zobrazí taktéž formulář, kde budeme moci změnit téma, u kterého jsme klikli na „editovat“ a poté se nám vypíšou hodnoty, které vidíme v tabulce.
Obrázek č. 31 Posudky vedoucí a oponent
Záložky posudek vedoucího a posudek oponenta pracují stejně. Vedoucí nebo oponent vybere studenta, který si u něj zapsal téma a dá vložit soubor. Soubor se zapíše do databáze pod loginem studenta (Obrázek č. 31 Posudky vedoucí a oponent) a objeví se 47
zde proklik na stáhnutí. Ve stejnou chvíli se objeví posudek i u studenta, kterému patří. Soubory se budou dát ukládat pouze v .pdf, aby je již nikdo nemohl měnit.
Obrázek č. 32 Všechna témata
Stejně jako u studenta i u profesorů se budou vypisovat veškerá témata, které profesoři zapsali. Je to z důvodu, aby se témata neopakovala. Profesoři vidí název práce, vedoucího, který práci zapsal, cíl (pouze pokud je již téma vybrané studentem), a zda bylo téma vybrané či nikoliv.
2.2.4. Ředitel Pro ředitele jsem vytvořila také vlastní uživatelské rozhraní. Po rozhovoru s profesory, kteří se podíleli na specifikaci požadavků pro daný systém, jsem se dozvěděla, že pan ředitel by měl mít ve svém uživatelském rozhraní pouze možnost vidět, která témata jsou vybrána, a tak jsem se toho i držela.
Obrázek č. 33 Menu ředitel
Stejně jako ostatní uživatelé i pan ředitel má svoji úvodní stránku a své menu. V menu vidíme pouze možnost „home“, „ témata ke schválení“ a možnost „odhlášení“.
48
Obrázek č. 34 Vybraná témata studentů ke schválení
Po kliknutí na „Témata ke schválení“ se objeví tabulka všech témat, která byla vybrána studenty ke zpracování bakalářských prací. Ředitel, zde vidí název bakalářské práce, jejího vedoucí a studenta, který bakalářskou práci bude psát, dohodnutý cíl a zda již téma bylo schváleno či nikoliv. Po zmáčknutí tlačítka „editovat“ se řediteli objeví formulář, ve kterém najde možnost zaškrtnout „ano“ či „ne“, záleží, zda souhlasí s tématem, pokud ředitel téma schválí, téma se přesune nakonec tabulky. Je to z důvodu, aby ředitel měl přehled, která témata ještě neschválil. Původně jsem chtěla udělat možnost, aby ředitel neviděl již schválená témata, ale pokud by se uklikl a dal schválit téma i když ho schválit nechtěl, už by neměl možnost vrátit se zpět.
Obrázek č. 35 Formulář pro schválení tématu
49
2.3. Testování 2.3.1. Validita kódu Validita kódu XHTML a CSS jsem provedla na stránkách http://validator.w3.org/ a zároveň i pomocí pluginu v Mozilla Firefoxu. Doplněk v Mozilla Firefoxu se nazývá HTML validátor. Byla použita verze 0.9.1.0. HTML Validátor, která je kompatibilní z Mozilla Firefox 6.0., vypíše veškeré chyby v zdrojovém kódu a ukáže možnosti, jak chyby správně opravit, proto jsem systém použila. Validátor od W3C fungoval jen do doby, než jsem narazila na stránky, kde museli být studenti, ředitel či vyučující přihlášen. Stránka se vždy přesměrovala a nevykonala zkontrolování na stránkách, kde jsem validitu potřebovala. Zároveň jsem zjistila, že zdrojových kód ve validátoru W3C psal, že je vše správně. V pluginu od Firefoxu byl zdrojový kód špatně. V tuto chvíli jsou veškeré chyby opraveny i varování se vypisují pouze při vkládání dat, kvůli id.
2.3.2. Webové prohlížeče Testování proběhlo na čtyřech nejznámějších prohlížečích. Všechny prohlížeče byly aktualizovány na nejnovější verze a teprve potom prošli stránky testováním. Opera 11.50 Mozilla Firefox 6.0 Google Chrome 13.0 Internet Explorer 9.0 Já jsem v době vytváření aplikace používala testování především na Google Chrome, který používám běžně. Ovšem jak už to bývá, co funguje v jednom prohlížeči, neznamená, že funguje v jiném. Největším problémem byla optimalizace do prohlížeče Mozilla Firefox 6.0. Testování proběhlo na více počítačích zároveň, protože to co mě se ukazovalo v pořádku, ve stejném prohlížeči na jiném počítači bylo špatně a naopak.
50
2.3.3. Testování uživateli Nejvíce přínosné bude, až systém poběží na oficiálních stránkách a studenti, vyučující a i ředitel budou moci vyzkoušet, jak systém funguje. V tuto chvíli testování proběhlo mezi mými známými, kteří mají se systém školy své zkušenosti a veškeré jejich připomínky jsem zahrnula již do specifikace systému. Systém jim přišel jednodušší, už protože je systém komplexní.
51
Závěr Cílem mojí práce bylo na základě analýzy provést reengineering webové aplikace pro zadávání bakalářských prací na VOŠIS. Měla jsem vytvořit uživatelské rozhraní aplikace a integrovat ji do webových stránek školy. Na základě vytvořené analýzy jsem postupovala a vytvářela jsem tuto webovou aplikaci, která v tuto chvíli funguje kompatibilně na jednom místě a bude se moci implementovat do webových stránek školy. Jelikož jsem si musela vytvořit svoji databázi, bude se muset implementovat i již zmíněná databáze. Jestliže by škola chtěla použít svoji databázi, musela by si systém upravit. V tuto chvíli je funkční systém možný shlédnout na www.darin.cz, kde běží aplikace dle specifikovaných požadavků na systém. I když jsem celý systém v bakalářce popsala, přidávám i přihlašovací údaje pro studenta: prochdar – prochdar, učitele: skopec – skopec, ředitele: reditel – reditel. V průběhu si jistě škola bude systém upravovat. I když je teď systém připravený do užívání, jsou tam situace, které by ještě chtěli doplnit. Určitě se bude muset vyřešit přihlašování na zkoušky, které se může třeba přidat k vložení bakalářky, ale jelikož je důležité, aby k tomu byly splněny podmínky pro ukončení studia – tudíž mít všechny předměty odstudované, tak jsem přihlašování nedělala, protože nemám přístup k tomu, jak vypadá nynější databáze školy a potom by musela škola radikálně zasahovat do vytvořené systému a práci by jim to neulehčilo. Na základě přihlašování a odevzdávání bakalářek se bude muset vyřešit i problém, aby studijní referentka mohla shlédnout, zda student před přihlášením na zkoušku vše odevzdal. Další úpravy systému mě v tuto chvíli nenapadají, ale jak už jsem psala v kapitole o testování. Nejlepším přítelem pro rozvoj systému jsou samotní uživatelé, proto by bylo dobré, aby se uživatelé mohli k systému vyjádřit a říct o co by ho chtěli doplnit nebo jak by se měl zlehčit.
52
Seznam použité literatury Knižní zdroje: [1] ŘEPA, Václav. Podnikové procesy : Procesní řízení a modelování . 2., aktualizované a rozšířené vydání. Praha 7 : Grada Publishing, 2007. 281 s. ISBN 978-80-247-2252-8. [2] HAMMER, M.; CHAMPY, J. . Reengineering - radikální proměna firmy : Manifest revoluce v podnikání. (přeložil L. Vodáček). Praha : Management Press, 1995. 212 s. [3] DAVENPORT, Thomas H. Process innovation: : reengineering work through information technology. Boston : Harvard Business School Press, 1996. 323 s. [4] VRÁNA, Jakub. 1001 tipů a triků pro PHP : Nejlepší postupy a řešení pro vaše webové aplikace. Brno : Computer press, 2010. 456 s. ISBN 978-80-251-2940. [5] GUTMANS, Andi; BAKKEN, Stig Saether; RETHANS, Derick. Mistrovní v PHP 5 : Skriptování, objektové programování a tvorba webových aplikací. 2. vydání. Brno : Computer press, 2008. 655 s. ISBN 978-80-251-1519. [6] PONKRÁC, Miloslav. PHP a MySQL : bez předchozích znalostí. První vydání. Brno : Computer press, 2007. 221 s. ISBN 978-80-251-1758-3. [7] KOFLER, Michael; ÖGGL, Bernd. PHP 5 a MySQL 5 : Průvodce webového programátora. První vydání. Brno : Computer press, 2007. 607 s. ISBN 978-80251-1813-9. [8] NARAMORE, Elizabeth; GERNER, Jason; SCOUARNEC, Yann Le.; STOLZ, Jeremy; GLASS, Michael K.; PHP5, MySQL, Apache : Vytváříme webové aplikace. První vydání. Brno : Computer press, 2006. 813 s. ISBN 80-251-1073-7. [9] LEISS, Oliver; SCHMIDT, Jasmin. PHP v praxi : pro začátečníky a mírně pokročilé. První vydání. Praha : Grada Publishing, 2010. 242 s. ISBN 978-80-247-3060-8. [10] DLOUHÝ, Radek. PHP v příkladech. První vydání. Kralice na Hané : Computer Media, 2007. 180 s. ISBN 80-86686-83-3. [11] DOMES, Martin. 333 tipů a triků pro CSS : Sbírka nejužitečnějších návodů pro váš web. První vydání. Brno : Computer press, 2009. 266 s. ISBN 978-80-2512360-7. 53
[12] SCHNEIDER, Robert D. MySQL : Oficiální průvodce tvorbou, správou a laděním databází. První vydání. Praha : Grada Publishing, 2006. 372 s. ISBN 80-2471516-3. Elektronické zdroje: [INT 1] Reinženýring (Reengineering) [online]. 2008 [cit. 2011-08-13]. Management mania. Dostupné z WWW: . [INT 2] JANOVSKÝ, Dušan. Jakpsatweb.cz *online+. 2001, 20. července 2011 *cit. 201108-14+. HTML příručka. Dostupné z WWW: . [INT 3] JANOVSKÝ, Dušan. Jakpsatweb.cz *online+. 2001, 7. června 2011 *cit. 2011-0814]. CSS - Kaskádové styly. Dostupné z WWW: . [INT 4] JANOVSKÝ, Dušan. Jakpsatweb.cz *online+. 2001, 7. června 2011 *cit. 2011-0814]. PHP. Dostupné z WWW: . [INT 5] W3Schools. W3schools.com [online]. 1999 [cit. 2011-08-14+. PHP. Dostupné z WWW: . [INT 6] GRIMMICH, Šimon. Tvorba-webu.cz [online]. 2003 [cit. 2011-08-14]. CSS styly. Dostupné z WWW: . [INT 7] GRIMMICH, Šimon. Tvorba-webu.cz [online]. 2003 [cit. 2011-08-14]. PHP. Dostupné z WWW: . [INT 8]
Yahoo! Inc. Php.net [online]. 2001 [cit. 2011-08-14+. PHP. Dostupné
z WWW: . [INT 9]
wikimedia. Wikipedia : wikipedie.org [online]. 1995 [cit. 2011-08-15].
Dostupné z WWW: . [INT 10]
wikimedia. Wikipedia : wikipedie.org [online]. 1995 [cit. 2011-08-15].
Dostupné z WWW: . [INT 11]
KUČEROVÁ, PhDr. Helena . Info.sks.cz/ [online]. 2003 [cit. 2011-08-18].
Diplomový seminář. Dostupné z WWW: .
54
Seznam obrázků Obrázek č. 1 Základní schéma podnikových procesů ................................................. 9 Obrázek č. 2 Model zásadního reengineeringu ........................................................ 10 Obrázek č. 3 Student, který bakalářskou práci již obhájil ......................................... 24 Obrázek č. 4 Tabulka uživatele ................................................................................ 31 Obrázek č. 5 Tabulka projektů ................................................................................. 32 Obrázek č. 6 Tabulka posudků ................................................................................. 32 Obrázek č. 7 Tabulka témat ..................................................................................... 33 Obrázek č. 8 Hlavní stránka ..................................................................................... 34 Obrázek č. 9 Obhájené práce .................................................................................. 34 Obrázek č. 10 Obhájené bakalářské práce ............................................................... 35 Obrázek č. 11 Přihlašovací okno .............................................................................. 36 Obrázek č. 12 Špatné přihlášení .............................................................................. 36 Obrázek č. 13 Okno po přihlášení studenta ............................................................. 36 Obrázek č. 14 Úvodní strana administrátora ........................................................... 37 Obrázek č. 15 Přidat uživatele ................................................................................. 38 Obrázek č. 16 Seznam uživatelů .............................................................................. 38 Obrázek č. 17 Smazání uživatele.............................................................................. 39 Obrázek č. 18 Odstranit uživatele ............................................................................ 39 Obrázek č. 19 Menu pro studenta ........................................................................... 40 Obrázek č. 20 Bakalářské standardy ........................................................................ 40 Obrázek č. 21 Moje téma ........................................................................................ 41 Obrázek č. 22 Nezapsané téma ............................................................................... 41 Obrázek č. 23 Nezadané téma - nefunkční vládání projektu a BP ............................. 42 Obrázek č. 24 Seznam témat ................................................................................... 42 Obrázek č. 25 Projekt k bakalářské práci ................................................................. 43 Obrázek č. 26 Vložení bakalářské práce ................................................................... 44 Obrázek č. 27 Posudky student ............................................................................... 45 Obrázek č. 28 Menu profesora ................................................................................ 45 Obrázek č. 29 Moje tétama ..................................................................................... 46 Obrázek č. 30 Formulář pro vkládání a editaci témat ............................................... 47 55
Obrázek č. 31 Posudky vedoucí a oponent .............................................................. 47 Obrázek č. 32 Všechna témata ................................................................................ 48 Obrázek č. 33 Menu ředitel ..................................................................................... 48 Obrázek č. 34 Vybraná témata studentů ke schválení ............................................. 49 Obrázek č. 35 Formulář pro schválení tématu ......................................................... 49
Seznam tabulek Tabulka č. 1 Metodiky reengineeringu procesů ....................................................... 13 Tabulka č. 2 Srovnání klasických metodik reengineeringu procesů .......................... 16
Seznam diagramů Diagram č. 1 Diagram užití aplikace ......................................................................... 23 Diagram č. 2 Use Case diagram uživatelů ................................................................ 26 Diagram č. 3 Diagram aktivit studenta ..................................................................... 27 Diagram č. 4 Diagram aktivit vedoucího BP ............................................................. 29 Diagram č. 5 Diagram aktivit oponenta ................................................................... 30 Diagram č. 6 Diagram aktivit ředitele ...................................................................... 30