Webová aplikace pro výuku cizojazyčné slovní zásoby
Petr Jirásek
Brno, 2013
Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje, prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj.
Petr Jirásek
Vedoucí práce: doc. RNDr. Ivan Kopeček, CSc.
ii
Poděkování Rád bych poděkoval vedoucímu práce doc. RNDr. Ivanu Kopečkovi, CSc. za jeho odborné vedení mé práce. Dále bych rád poděkoval své rodině za podporu při psaní této práce a svým přátelům za poskytnutí zpětné vazby.
iii
Shrnutí Cílem této práce je vytvořit webovou aplikaci pro výuku a procvičování slovní zásoby, implementující učební metodu RE-WISE, s využitím nástrojů pro podporu výuky. Nástroje pro podporu výuky označují skupinu služeb a prostředků, které nabízejí nové přístupy ke studiu a zpřístupňují další informace k lepšímu pochopení studované látky.
iv
Klíčová slova výuka cizích jazyků, učení s prodlevami, efektivní učení, RE-WISE, zapomínání, slovní zásoba, dialogové systémy, syntéza řeči, lexikální databáze
v
Obsah 1 2
Úvod .......................................................................................................................... 1 Paměť a metody učení ............................................................................................. 2 2.1 Paměť ............................................................................................................... 2 2.1.1 Zapomínání ............................................................................................. 2 2.1.2 Spacing effect.......................................................................................... 3
3
4
2.2 Metody učení .................................................................................................... 4 2.2.1 Plánování na základě aktuální znalosti ................................................... 5 2.2.2 Plánování na základě rozdělení do boxů................................................. 5 2.2.3 Leitnerův systém ..................................................................................... 5 2.2.4 Učení s prodlevami ................................................................................. 5 Aplikace pro výuku slovní zásoby .......................................................................... 7 3.1
Slovicka.org ...................................................................................................... 7
3.2
WordBot ........................................................................................................... 7
3.3
Dril ................................................................................................................... 7
3.4
Help For English .............................................................................................. 8
3.5 Srovnání aplikací .............................................................................................. 8 Charakteristika aplikace....................................................................................... 10 4.1
Uživatelé......................................................................................................... 10
4.2
Lekce .............................................................................................................. 10
4.3 Výuka ............................................................................................................. 10 4.3.1 Učební dávky ........................................................................................ 10 4.3.2 Učení ..................................................................................................... 11 4.4 5
Ligy ................................................................................................................ 11
4.5 Statistiky ......................................................................................................... 12 Implementace ......................................................................................................... 13 5.1
MVC architektura ........................................................................................... 13
5.2 Použité technologie ........................................................................................ 13 5.2.1 Serverová část ....................................................................................... 13 5.2.2 Uživatelská část .................................................................................... 14
6
5.3
Databáze ......................................................................................................... 14
5.4
Plánované úlohy ............................................................................................. 15
5.5
Služby třetích stran ......................................................................................... 15
5.6 Responzivní web ............................................................................................ 15 Výuka ...................................................................................................................... 16 6.1
Metoda RE-WISE .......................................................................................... 16
6.2 Základní terminologie .................................................................................... 16 6.2.1 Pojmy .................................................................................................... 16 vi
6.2.2
Značení.................................................................................................. 17
6.3
Výpočet míry zapamatování........................................................................... 17
6.4
Vytvoření učební dávky .................................................................................. 17
6.5 Zjištění reálné míry zapamatování ................................................................. 18 6.5.1 Nový fakt .............................................................................................. 18 6.5.2 Opakovaný fakt ..................................................................................... 19 6.6 Určení stability a bázového faktoru ............................................................... 19 6.6.1 Nový fakt .............................................................................................. 19 6.6.2 Opakovaný fakt ..................................................................................... 20 6.7 7
Opakování zapomenutých faktů ..................................................................... 21
6.8 Rozpoznání známých faktů ............................................................................ 21 Nástroje pro podporu výuky ................................................................................ 23 7.1 Dialogové systémy ......................................................................................... 23 7.1.1 Dialogová strategie a řízení dialogu ..................................................... 23 7.1.2 VoiceXML............................................................................................. 23 7.1.3 Procvičování výslovnosti ...................................................................... 23 7.2 Syntéza řeči .................................................................................................... 24 7.2.1 Zvukové nahrávky výslovnosti ............................................................. 25 7.3 Lexikální databáze.......................................................................................... 25 7.3.1 Definice a ukázkové věty ...................................................................... 26 7.4 Gamifikace ..................................................................................................... 26 7.4.1 Vědomostní souboje ............................................................................. 27 7.4.2 Výzva ve výslovnosti ............................................................................ 27
7.5 Další nástroje .................................................................................................. 28 7.5.1 Překladač ............................................................................................... 28 7.5.2 Externí zdroje........................................................................................ 28 8 Závěr ....................................................................................................................... 29 Literatura ...................................................................................................................... 30 A Obsah přiloženého CD .......................................................................................... 33 B Příloha Instalace a spuštění aplikace na serveru ................................................ 34 C Příloha Základy práce s aplikací.......................................................................... 36
vii
1 Úvod Základním předpokladem pro osvojení cizího jazyka je znalost jeho slovní zásoby. Na slovní zásobu se navazují další informace, jako kupříkladu, kdy konkrétní slovní spojení použít v daném kontextu, jakých významů může nabývat nebo jaká je jeho výslovnost. To z výuky slovní zásoby dělá komplexní proces, při kterém nelze slovní spojení vnímat pouze jako jednoduchou entitu, nýbrž pro jeho kompletní porozumění je nutné jej studovat s dostatkem studijních materiálů. [1] Cílem této práce je vytvořit webovou aplikaci pro výuku a procvičování slovní zásoby, implementující učební metodu RE-WISE, s využitím nástrojů pro podporu výuky. Nástroje pro podporu výuky označují skupinu služeb a prostředků, které nabízejí nové přístupy ke studiu a zpřístupňují další informace k lepšímu pochopení studované látky. Ve druhé kapitole práce je čtenář seznámen s krátkým úvodem popisujícím procesy v lidské paměti se zaměřením se na uchovávání informací a jejich zapomínání. Poté jsou představeny některé učební metody, přičemž několik z nich aplikuje poznatky ze zkoumání lidské paměti. V další kapitole se práce zabývá popisem několika českých webových služeb pro výuku cizojazyčné slovní zásoby. V závěru kapitoly je provedeno jejich srovnání. Čtvrtá kapitola pak popisuje základní charakteristiku aplikace, která je logicky rozdělena do několika sekcí. Dále se práce zabývá implementací samotné aplikace s důrazem na některé aspekty architektury včetně použitých technologií. Pátá kapitola představuje implementovanou učební metody v aplikaci vycházející z metody RE-WISE. Na začátku kapitoly jsou představeny základní pojmy a ty jsou dále použity při popisu učebního modelu s důrazem na jeho detaily. Předposlední kapitola se pak podrobně zabývá nástroji pro podporu výuky, kde jsou začleněny nástroje jako dialogové systémy, syntéza řeči, lexikální databáze nebo použití principů gamifikace a další. Tyto nástroje jsou zpravidla doplněny o teoretický úvod a o konkrétní využití v aplikaci s popisem některých implementačních specifik. V závěru práce jsou zmíněny některé požadavky na změny získané během uživatelského testování a návrhy na budoucí rozšíření aplikace. Čtenář zde také nalezne informace o jejím veřejném nasazení. Součástí práce je několik příloh a CD obsahující kompletní projekt aplikace včetně pomocných materiálů.
1
2 Paměť a metody učení Tato kapitola se v první části zaobírá úvodem do porozumění procesů v lidské paměti s důrazem na aspekty související s efektivním učením. V druhé části jsou poté probírány některé metody učení.
2.1 Paměť Paměť označuje soubor kognitivních schopností umožňujících uchovávat a používat informace o předchozích zkušenostech [2]. Paměť lze dělit z pohledu délky uchování informace na senzorickou, krátkodobou a dlouhodobou. Informace v senzorické paměti se uchovávají po velice krátkou dobu v řádu jednotek sekund. Jedná se o vstupní paměť, která přijímá podněty ze všech smyslů (co vidíme, slyšíme atd.). Informace ze senzorické paměti jsou pak předány krátkodobé paměti, pakliže jsou vyhodnoceny jako vhodné k dalšímu zpracování. V krátkodobé paměti jsou tyto informace pak uchovávány v řádu desítek sekund až několika minut. Tato paměť je kapacitně omezena, ale pomocí mnemotechnických pomůcek lze tuto kapacitu zvýšit. Aby nebyly informace v krátkodobé paměti zapomenuty, je nutné je opakovat. Mechanickým opakováním pak dochází ke vštěpování informace do dlouhodobé paměti, kde může být uchována od několika minut až po celý život. Čím častěji pak informaci opakujeme, tím silnější je její paměťová stopa. V opačném případě stopa slábne a dochází k zapomínání. Kapacita paměti je relativně neomezená. [3,4]
2.1.1 Zapomínání Zapomínání je jev, kdy dochází k vyblednutí (oslabení) paměťové stopy v důsledku nedostatečného opakování [3]. Zapomínáním se zabýval Hermann Ebbinghaus, německý psycholog a průkopník v oblasti výzkumu paměti, který zkoumal, kolik procent osvojené látky si člověk pamatuje v různých časových intervalech po osvojení. Výsledky vyjádřil v křivce zapomínání. [4]
Křivka zapomínání Křivka zapomínání vyjadřuje, s jakou pravděpodobností si člověk pamatuje osvojenou látku v průběhu času. Jedná se o exponenciální funkci [5]. Křivku vyjadřuje vztah: 𝑡
𝑅 = 𝑒 −𝑆 kde e je Eulerovo číslo, t je čas a S relativní síla paměti.
2
Graf 2.1 zobrazuje křivku zapomínání při nastavení relativní síly paměti 𝑆 = 1. Pravděpodobnost, s jakou si člověk pamatuje osvojenou látku v průběhu času, interpretujeme jako procentuální hodnotu.
Míra zapamatování
Křivka zapomínání 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% 0
1
2
3
4
5
6
7
8
9
10
Počet dnů od osvojení
Graf 2.1: Křivka zapomínání při nastavení relativní síly paměti 𝑆 = 1 Na grafu 2.1 vidíme, že při osvojení nové informace si člověk tuto informaci vybaví s pravděpodobností 100 %. Poté míra zapamatování strmě klesá a s postupem času se pokles zpomaluje. Po několika dnech se pak křivka přiblíží až k nule.
2.1.2 Spacing effect Spacing effect označuje poznatek z psychologie, který říká, že pokud jedinec opakuje nově osvojenou informaci ve správných intervalech, pak se po každém opakování snižuje také rychlost, s jakou klesá křivka zapomínání. Dále z poznatku vyplývá, že pokud nově osvojenou informaci opakujeme v příliš krátkých intervalech, pak síla účinku, který by zvýšil stabilitu udržení si informace v paměti, je zanedbatelná. V opačném případě, pokud jsou intervaly příliš dlouhé, může dojít k tomu, že informaci zapomeneme dříve, než ji zopakujeme. K tomu, abychom určili ideální interval opakování, je nutné znát hranici, kdy je osvojená informace blízko k úrovni zapomenutí, ale přitom je jedinec stále schopen si tuto informaci vybavit. [6,7] Graf 2.2 ukazuje průběh zapomínání při opětovném opakování ve správném intervalu.
3
Graf 2.2: Průběh zapomínání při opětovném opakování (převzato z [7]) Na grafu 2.2 vidíme, že po prvním osvojení informace křivka rámcově kopíruje průběh křivky zapomínání představené v předchozí kapitole. Jakmile ale úroveň míry vybavení si informace klesne na 80 %, což je v tomto případě ideální hranice, při které se provádí opakování, dojde k obnovení paměťové stopy informace, čímž se navrátí na úroveň 100 % a míra stability zapamatování si faktu se zvýší. To se následně projeví v pomalejším klesání křivky, což v důsledku vede k oddálení okamžiku, ve kterém je ideální provést další opakování. Chování se poté opakuje, důsledkem čehož roste stabilita osvojené informace v paměti a prodlužuje se tak i interval opakování. Poznatky plynoucí z kvantifikace zapomínání a z tohoto efektu byly také základem u některých učebních metod. Některé z nich zmíníme v další kapitole.
2.2 Metody učení Metody učení jsou strategie vyvinuté k zefektivnění průběhu učení. To, jak je metoda efektivní, také může záviset na povaze učební látky, na kterou je aplikována nebo na individuálních specifikách každého jedince. [8,9] Metody, které budou dále představeny, jsou založeny na tzv. kartičkové metodě spočívající v rozdělení učební látky na co nejmenší základní celky, které jsou pak reprezentovány na kartičkách, kde jedna strana kartičky reprezentuje otázku a druhá strana odpověď. Reálným příkladem může být výuka chemických značek z periodické soustavy prvků, kdy jedna strana kartičky reprezentuje název prvku a druhá jeho značku. Dále je metodu možné také aplikovat při výuce cizojazyčné slovní zásoby. Díky jednotné reprezentaci učební látky se pak představené metody liší pouze strategií plánování učebního rozvrhu. Zvolená reprezentace navíc umožňuje její aplikací 4
jak pomoci papírových kartiček, tak také v počítačových programech, kde jsou pokročilejší metody často využívány.
2.2.1 Plánování na základě aktuální znalosti Plánování na základě aktuální znalosti spočívá v rozdělení studované látky na naučenou a nenaučenou. Student na začátku učení náhodně vybere skupinu kartiček a ty si snaží vybavovat. Pakliže kartičku považuje za naučenou, vyřadí ji. Jakmile takto projde celou skupinu, tak kartičky, které jsou považovány za nenaučené, přechází dále a jsou doplněny o kartičky, které ještě nebyly zkoušeny. Student poté tuto nově vzniklou skupinu opět prochází a kartičky si snaží vybavit. Takto se celý proces opakuje. [8] Jakmile jsou všechny kartičky považovány za naučené, můžeme je poté označit za nenaučené a přejít tak na opakování.
2.2.2 Plánování na základě rozdělení do boxů Metoda rozdělení kartiček do boxů rozděluje kartičky tak, jak si je student vybavuje, přičemž boxy odpovídají relativní obtížnosti kartičky. Pro ilustraci uvedeme příklad, z kterého bude princip metody zřejmý. Uvažujme 7 boxů s pořadovými čísly 1 až 7. Na začátku učení vložíme zatím netestované kartičky do prostředního boxu č. 4. Poté kartičky, které považujeme v tomto boxu za naučené, přesuneme do sousedního boxu s nižším pořadovým číslem. Naopak ty, které považujeme za nenaučené, přesuneme do sousedního boxu s vyšším pořadovým číslem. Jakmile takto rozdělíme kartičky vložené do boxu č. 4, proces se opakuje. Nové kartičky vložíme opět do boxu č. 4, ale zkoušení začínáme vždy v boxu s nejvyšším pořadovým číslem, který je neprázdný a z podstaty metody obsahuje vždy ty kartičky, které se pro studenta zdají nejobtížnější. [8]
2.2.3 Leitnerův systém Leitnerův systém byl vyvinut německým popularizátorem vědy Sebastianem Leitnerem. Jeho princip opět využívá rozložení do boxů. V tomto případě ale uvažujeme 5 boxů, přičemž nové kartičky budou vždy vloženy do prvního boxu. Pokud si student kartičku vybaví, pak je kartička přesunuta do boxu s vyšším pořadovým číslem, pokud ne, je navrácena do prvního boxu bez ohledu na to, v jakém boxu se předtím nacházela. Učení v prvním boxu probíhá každý den, učení v dalším boxu každý druhý den a dále v dalších boxech po čtyřech dnech, po týdnu a po měsíci. Nastavení časových intervalů vychází z pozorování křivky zapomínání a spacing effectu. [10]
2.2.4 Učení s prodlevami Učení s prodlevami (anglicky „spaced repetition“) je komplexní metoda, která využívá poznatků o křivce zapomínání a spacing effectu. Její idea zcela vychází z předpokladu, že správně naplánované opakování zvyšuje efektivitu učebního procesu. Hlavním cílem metody je maximalizovat množství zapamatovaných informací a zároveň minimalizovat čas, který je potřebný k naučení se dané množiny informací. [11] 5
Konkrétní implementace metody může mít různé podoby. Často se liší v nastavení hranice, při které je vhodné danou informaci opakovat a také způsobem, jakým je měřena úroveň, nakolik si student informaci v daném čase vybavil a jak je ovlivněn další průběh křivky zapomínání. Učení s prodlevami se využívá v řadě aplikací zaměřujících se na memorování informací. Metoda je těžko aplikovatelná bez pomoci počítače, jelikož vyžaduje řadu výpočtů plánujících učební proces. Mezi metody, které jsou konkrétní implementaci učení s prodlevami, lze zařadit algoritmus SuperMemo nebo učební metodu RE-WISE.
6
3 Aplikace pro výuku slovní zásoby Tato kapitola se postupně zabývá čtyřmi online službami sloužícími k výuce slovní zásoby, přičemž na konci celé kapitoly se nachází jejich souhrn s porovnáním vybraných kritérií. Aplikace byly vybrány výhradně webové a na českém internetu, aby bylo možné zmapovat, jaké možnosti český uživatel internetu má. Ze seznamu byly také vyřazeny komerční aplikace, které si za užívání účtují poplatky.
3.1 Slovicka.org Služba slovicka.org, která vznikla v roce 2011, disponuje jednoduchým uživatelským rozhraním a umožňuje procvičování slovní zásoby, přičemž uživatelům poskytuje jednoduché statistiky o historii testování a učitelům možnost vytvářet lekce pro své žáky. Slova v lekcích lze exportovat do formátu CSV a samotné testování je založeno na metodě postupného procházení párů slov, kde jeden člen z páru je skrytý a poté je odhalen. [12]
3.2 WordBot WordBot je přehledný systém na procvičování slovní zásoby, který nabízí spoustu slovníků jak v anglickém, tak v německém jazyce, přičemž některá slova v anglickém jazyce jsou doplněna o nahrávky s výslovností. Testování vyžaduje, aby student vždy zadal daný překlad náhodně vylosovaného slova. Po zodpovězení se zobrazují informace o průměrné úspěšnosti. Uživatel může také vytvářet vlastní slovníky nebo vytvářet testy. Testy jsou zpravidla seznamy otázek, kde ke každé z nich student zadává odpověď. Po dokončení celého testu se zobrazí správně odpovědi a průměrná úspěšnost uživatelů v testu. [13]
3.3 Dril Dril je výuková služba dostupná v Informačním systému Masarykovy univerzity, přičemž přístup do systému je omezen pouze na jeho uživatele. Dril není primárně určen jako služba pro výuku slovní zásoby, ale jako služba pro memorování jednotlivých informací k naučení se nazpaměť. Uživatelé mohou v Drilu vytvářet nové učebnice a ty zveřejnit ostatním, přičemž v současné chvíli je k dispozici více než 100 jazykových učebnic pokrývajících angličtinu, němčinu, ale i jiné jazyky. Dril simuluje tzv. kartičkovou metodu s využitím metody učení s prodlevami. Student dá systému zpětnou vazbu, jak kterou kartičku ovládá výběrem hodnocení na číselné stupnici a systém na základě získané informace naplánuje další opakování. Pakliže si student kartičku nepamatuje, podstupuje tzv. dril zapomenutých kartiček, jehož cílem je obnovit jejich znalost. Samotný algoritmus použitý v Drilu vychází z algoritmu SuperMemo, který používají kupříkladu aplikace jako SuperMemo, Anki nebo Mnemosyne. [14,15]
7
3.4 Help For English Help For English je populární webová stránka, která nabízí řadu článku týkajících se výuky anglického jazyka. V rámci stránky je možné také procvičovat a zdokonalovat svou slovní zásobu v řadě lekcí rozdělených jak podle tématu, tak podle obtížnosti. Samotné testování probíhá tak, že student zadá překlad zvoleného slova, přičemž slova, která jsou testována, jsou postupně vybírána ze zvolené lekce. U každého z nich je zpravidla také možnost si poslechnout americkou nebo britskou výslovnost, řada slov je navíc doplněna o ilustrační obrázek nebo ukázkovou větu, ve které jsou použita. Při zkoušení jsou pak slova přidávána postupně tak, aby student zároveň opakoval i slova z počátku testování. Po dokončení lekce si ale systém již nepamatuje, která slova se student naučil. K tomu, aby získal tuto funkcionalitu, je nutné zakoupit program Word Manager spjatý se službou Help For English, který je schopen lekce importovat a pamatovat si výsledky studia uživatele. Jedná se ale o komerční aplikaci, tudíž není předmětem srovnání. [16]
3.5 Srovnání aplikací U porovnávaných aplikací jsou sledována některá kritéria uvedená v tabulce 3.1. Na základě těchto kritérií jsou srovnány výše zmíněné aplikace v tabulce 3.2. Kritérium Popis Otevřenost Sleduje, zda je aplikace přístupná libovolnému uživateli. Vlastní lekce Uvádí, zda uživatel může vytvořit vlastní lekce. Plánování výuky Zkoumá, zda systém plánuje učební dávky na základě předchozích výsledků studenta. Testovací algoritmus Zjišťuje, jak specifický je testovací algoritmus – zda testuje pouze sekvenčně s náhodnými prvky (hloupý) nebo se snaží i naučenou látku během zkoušení opakovat (chytrý). Další nástroje Uvádí, zda lekce obsahují i zvukové nahrávky, výslovnost, ilustrační obrázky, ukázkové věty apod. Tabulka 3.1: Kritéria srovnání aplikací Z porovnávaných nástrojů by bylo možné označit za nejpokročilejší aplikaci Dril, která disponuje velkým počtem jazykových učebnic různých jazyků a implementuje učební metodu vycházející z rozloženého učení. Naopak hlavní nevýhodou Drilu je požadavek být uživatelem Informačního systému Masarykovy univerzity.
8
Slovicka.org WordBot.cz Dril
Ano Ano Ne
Vlastní Plánování lekce výuky Ano Ne Ano Ne Ano Ano
Help For English
Ano
Ne
Služba
Otevřený
Ne
Testovací Další nástroje algoritmus Hloupý Hloupý Zvukové nahrávky* Chytrý Zvukové nahrávky* Zvukové nahrávky, Chytrý ilustrační obrázky, ukázkové věty
Tabulka 3.2: Srovnání aplikací dle kritérií *pokrytí lekcí zvukovými nahrávkami výslovnosti je pouze částečné
9
4 Charakteristika aplikace V této kapitole jsou stručně popsány základní funkce aplikace při jejím rozdělení do několika logických celků.
4.1 Uživatelé Aplikace umožňuje registraci uživatele a vedení jeho uživatelského účtu. Po přihlášení si uživatel může změnit své přístupové heslo, upravit profil a nastavení zasílání upozornění na jeho emailovou adresu. Uživatelé zastávají vždy jednu z následujících rolí:
Student Lektor Administrátor
Administrátor má kompletní správu nad celou aplikací a je jejím supervizorem. Aby se uživatel stal lektorem, musí mu tuto roli nastavit administrátor. Lektoři v aplikaci spravují obsah a jsou garanty kvality obsahu. Vytvářejí tedy lekce, spravují je v kategoriích a vedou ligy. Naopak studenti jsou pouhými konzumenty obsahu, přičemž každý registrovaný uživatel je automaticky studentem. Pokud uživatel není přihlášený, přístup do aplikace mu není umožněn. Pokud uživatel zapomene přístupové heslo, může požádat automaticky o zaslání nového na email, který uvedl při registraci.
4.2 Lekce Lektoři v aplikaci vytvářejí lekce a ty organizují do kategorií. Lekce reprezentuje seznam kartiček obsahujících slovní spojení (slova, fráze, věty apod.), kde každé z nich může být doplněno o poznámku. U každého spojení pak může být nastaveno, zda má aplikace pro něj umožnit při výuce poskytnutí dodatečných studijních materiálů (nahrávka s výslovností, definice, ukázkové věty apod.), pakliže je to vhodné a jsou k dispozici. Lekce je možné naplňovat vkládáním nových kartiček přes formulář nebo jejich importem prostřednictvím vloženého CSV souboru v předepsaném tvaru. Uživatelům je naopak umožněn export jejich obsahu a to ve formátu CSV nebo PDF.
4.3 Výuka Student si vybírá lekce, které se chce učit. Z těchto lekcí jsou pak kartičky zařazeny do jeho slovníku. Slovník obsahuje kartičky, které se student doposud ještě neučil. Kartičky, které se student v minulosti již učil, jsou zařazeny v jeho slovní zásobě.
4.3.1 Učební dávky Učební dávkou rozumíme jazykové cvičení obsahující sekvenci kartiček. Aplikace vytváří učební dávky pravidelně pro každý jazyk, který se student učí. Dávky jsou vždy složeny zčásti z kartiček, s kterýma se student doposud nesetkal a jsou v jeho slovníku, a dále z kartiček obsažených v jeho slovní zásobě, pro které nastal vhodný okamžik pro 10
jejich opakování. Student si také může vynutit vytvoření dávky ručně a nastavit její složení.
4.3.2 Učení Během učení student testuje znalost vybraných kartiček z učební dávky, přičemž aplikace po něm požaduje zpětnou vazbu o tom, jak silně si každou z nich vybavuje. Kartičky, které si student dobře vybavuje, se dále v procházené dávce nezobrazují. Naopak ty, s kterými má problém, se ještě opakují. Pakliže student během učení narazí na kartičku známou již z předchozího studia (škola, jazykové kurzy apod.), je možné, aby takovou kartičku označil za již zapamatovanou, což se projeví výrazně delším intervalem opakování a aplikace tak bude testovat pouze rámcově znalost zapamatované kartičky. Po dokončení dávky se zaktualizuje studentova slovní zásoba a aplikace přepočítá informace potřebné k plánování další výuky. Studentovi jsou během učení poskytovány nástroje, jejichž snahou je podpořit pochopení učební látky a podpořit tak jejich výuku. Mezi tyto nástroje patří možnost přehrát si zvukovou nahrávku s výslovností, přečíst si definice významu nebo ukázkové věty s použitím konkrétního slovního spojení atd. Zdali budou nástroje dostupné, závisí na nastavení konkrétní kartičky. Zkoušení studenta disponuje několika možnostmi, jak jej provádět. Student může zvolit pomocný režim umožňující zadání odpovědi přímo do textového pole nebo zakázat zobrazení slovních spojení a poslechnout si pouze zvukové nahrávky, což může pomoci při zlepšování studentových schopností poslechu cizího jazyka. Student také může zakázat zobrazení pomocných informací. Student má také možnost při procvičování výslovnosti využít zkoušení prostřednictvím řečového dialogového systému. Více informací lze naleznout v kapitole 7.1 Dialogové systémy.
4.4 Ligy Aplikace nabízí možnost absolvovat tzv. ligové souboje, které probíhají v rámci ligy. Každá liga čerpá slovní spojení z určité skupiny lekcí a je vytvářena lektorem. V případě, že je uživatel do ligy zapojen, může vyzvat jiného uživatele k souboji. Při výzvě se vygeneruje test o určitém počtu slovních spojení s časovým limitem, kde je cílem uživatele jej co nejlépe zodpovědět. Po zodpovězení uživatel vyčkává, dokud vyzvaný uživatel test neabsolvuje. Po jeho zodpovězení pak dojde k vyhodnocení, kdo se stal vítězem ligového duelu a výsledek se promítne do žebříčku ligy. V případě, že uživatel test nezodpoví do určité doby, dojde k automatické kontumaci. Ligy tak umožňují procvičovat své znalosti ze studovaných lekcí prostřednictvím absolvování ligových duelů s ostatními uživateli aplikace a vidět své výsledky v ligových žebříčcích. Uživatel může také absolvovat výzvu ve výslovnosti prostřednictvím řečového dialogového systému.
11
4.5 Statistiky Každý uživatel si může prohlížet statistiky. Ty se dělí na globální a uživatelské. Globální statistiky zobrazují informace získané od všech uživatelů. Uživatelské naopak zobrazují informace týkající se pouze uživatele, který si je prohlíží. Statistiky kupříkladu zobrazují informace o nejobtížnějších kartičkách, o podílu vyučovaných jazyků nebo také o počtu absolvovaných učebních dávek v průběhu času.
12
5 Implementace V této kapitole jsou uvedeny základní informace o implementaci aplikace. Informace zahrnují některé aspekty architektury a použité technologie.
5.1 MVC architektura V rámci aplikace je použitá MVC (Model-View-Controller) architektura, která rozděluje aplikaci do tří strukturálních částí:
Model o Reprezentuje datový model, reprezentaci dat Pohled o Prezentuje uživateli data poskytována modelem Řadič o Reaguje na vstupní události a zajišťuje provedení změn v pohledu nebo modelu
Obrázek 5.1: MVC architektura (převzato z [17]) Hlavní výhodou rozdělení aplikace do tři části je v případě modifikace jednoho celku minimální vliv na ostatní části aplikace. [18]
5.2 Použité technologie V této části jsou popsány základní technologie, které byly použity při implementaci aplikace.
5.2.1 Serverová část Serverová část webové aplikace je napsána v programovacím jazyce PHP [19], který podporuje objektově orientované programování. Aplikace vyžaduje minimální verzi PHP 5.4. 13
Jako databázovou platformu aplikace využívá MySQL [20], což je open source databázový systém pro správu relačních databází. Jako dotazovací jazyk se používá SQL. V rámci aplikace se vyžaduje verze MySQL 5.5 podporující InnoDB.
Nette Framework Nette Framwork je česká open source sada nástrojů pro tvorbu dynamických webových aplikací postavených na PHP 5. Podporuje MVC, tvorbu komponent, AJAX, DRY, KISS. Pomáhá také s eliminací chyb, které by mohly být bezpečnostním rizikem pro aplikaci. [21]
5.2.2 Uživatelská část Klientská část je tvořena pomocí značkovacího jazyka HTML s využitím některých prvků z HTML 5 (kupříkladu audio element), a dále s využitím kaskádových stylů (CSS) a také JavaScriptem.
Twitter Bootstrap Twitter Bootstrap je knihovna pro podporu vývoje uživatelské části webové aplikace, která disponuje řadou znovupoužitelných komponent a javascriptových rozšíření. Také podporuje responzivní web a je kompatibilní s řadou webových prohlížečů. [22] Aplikace s použitím knihovny Twitter Bootstrap buduje své uživatelské rozhraní, díky čemuž je zcela responzivní a umožňuje, aby jej provozovatel aplikace dále mohl snadno rozšiřovat, jelikož knihovna disponuje rozsáhlou dokumentací.
jQuery jQuery je javascriptová knihovna, která pomáhá při manipulaci s HTML dokumentem, podporuje animace a usnadňuje práci s AJAXem. Nabízí dobře zdokumentované API a je kompatibilní pro velkou část webových prohlížečů. [23] jQuery se v aplikaci používá pro podporu AJAXu a manipulaci s HTML.
Google Chart Tools Google Chart Tools je skupina nástrojů společnosti Google umožňujících s pomocí JavaScriptu vizualizovat data do podoby interaktivních grafů. [24] Tyto nástroje aplikace využívá pro vizualizaci statistik.
5.3 Databáze Reprezentaci databáze je možné rozdělit do několika logických částí zastupujících jednotlivé funkční celky aplikace: Uživatelé Lekce Ligy Kartičky Učební dávky a slovní zásoba Poskytované zdroje 14
ERD model databáze je přiložen na CD, které je součástí práce. Názvy entit a sloupců jsou uváděny v angličtině, jelikož i zdrojové kódy a komentáře dodržují anglickou notaci.
5.4 Plánované úlohy Některé úlohy, jako třeba vytváření nových učebních dávek nebo zasílání upozornění na emailovou adresu uživatele, je nutné provádět v pravidelných časových intervalech. Z tohoto důvodu je pro každou takovou úlohu nastaven softwarový démon neboli tzv. cron, který úlohu automatizovaně spouští v daných časových intervalech. Softwarový démon se nastavuje na straně serveru, na kterém je aplikace umístěna. Více informací o konkrétním nastavení intervalů a lokalizaci úloh je uvedeno v Příloze B Instalace a spuštění aplikace na serveru.
5.5 Služby třetích stran Aplikace komunikuje s řadou služeb třetích stran poskytujících svá API. Tato komunikace se liší vždy v závislosti na konkrétní službě a typu informací, které služba poskytuje. V potaz musí být brány i licenční podmínky každé služby, jelikož v některých případech mohou kupříkladu omezovat dobu pro uchování přijatých informací na straně aplikace. Informace o službách třetích stran a jejich implementaci jsou dostupné v podkapitolách kapitoly 7 Nástroje pro podporu učení.
5.6 Responzivní web Web je responzivní právě tehdy, pokud se jeho vzhled přizpůsobuje rozměrům displeje nebo monitoru zařízení, které k němu přistupuje. To umožňuje uživatelům mobilních zařízení snadno přistupovat k takovým webovým stránkám a pohodlnější práci s obsahem. [25] Vyvinutá aplikace je díky použitým technologiím zcela responzivní. Ukázky tohoto chování lze vidět na některých snímcích obrazovky přiložených na CD, které je součástí práce.
15
6 Výuka Výuka v aplikaci je založena na metodě RE-WISE [26], která byla vyvinuta společností LANGMaster. V této kapitole bude popsána implementace učební metody v aplikaci vycházející z této metody.
6.1 Metoda RE-WISE Metoda RE-WISE je jedním ze zástupců skupiny metod učení s prodlevami představené v kapitole 2.2.4 Učení s prodlevami. Snaží se minimalizovat dobu potřebnou k učení a přitom maximalizovat množství faktů, které si student zapamatuje. [26]
6.2 Základní terminologie Uvedené pojmy slouží jako základní terminologie pro pochopení problematiky, která bude diskutována v dalších kapitolách.
6.2.1 Pojmy Fakt Faktem označujeme jednoduchou informaci k zapamatování. V našem případě kartičku, která obsahuje slovní spojení (cizí slovo, fráze, věta).
Stabilita Stabilita je informace o tom, jak silně si student pamatuje daný fakt. Čím větší je stabilita, tím pomaleji student fakt zapomíná.
Iniciální stabilita Iniciální stabilita odpovídá stabilitě při prvním setkání se s novým faktem.
Bázový faktor Bázový faktor ovlivňuje, jakým způsobem roste stabilita daného faktu.
Míra zapamatování Míra zapamatování je informace o tom, s jakou pravděpodobností si student pamatuje daný fakt v čase. Získá se provedením výpočtu zahrnujícího stabilitu.
Reálná míra zapamatování Reálná míra zapamatování se liší od míry zapamatování v tom, že se získává na základě zpětné vazby studenta, nikoliv výpočtem ze stability, přičemž udává také informaci o tom, s jakou pravděpodobností si student pamatuje daný fakt v aktuální chvíli.
Optimální míra zapomenutí Určuje, při jaké míře zapomenutí si student fakt stále ještě optimálně vybavuje, ale přitom je na hranici jeho zapomenutí.
16
Normativní stabilita Normativní stabilita je konstantní hodnota vycházející z míry optimálního zapomenutí. Slouží k tomu, abychom mohli hodnotu stability interpretovat jako počet dní do doporučeného opakování.
6.2.2 Značení Tabulka 6.1 označuje zkratky, které jsou dále užívány v odkazu na představené pojmy výše. Pojem Zkratka Stabilita S Iniciální stabilita IS Normativní stabilita NS Míra zapamatování MZ Reálná míra zapamatování RMZ Bázový faktor BF Optimální míra zapomenutí OMZ Tabulka 6.1: Označení použitých pojmů Oproti metodě RE-WISE se použité značení liší. Důvodem je snaha, aby použité značení korespondovalo s českým označením pojmů,
6.3 Výpočet míry zapamatování Míra zapamatování je informace o tom, s jakou pravděpodobností si student pamatuje daný fakt v daném okamžiku, a vychází z poznatků o křivce zapomínání, která byla představena v kapitole 2.1.1 Křivka zapomínání. Míru zapamatování spočítáme následovně: 𝑑∙𝑁𝑆
1 𝑆 𝑀𝑍 = ( ) 2 kde d je doba ve dnech od posledního učení se faktu, S je stabilita, s jakou si student daný fakt pamatuje a NS je konstantní hodnota, reprezentující normativní stabilitu. [27] Normativní stabilitu spočítáme tímto vztahem: 1 𝑁𝑆 = log 2 ( ) 1 − 𝑂𝑀𝑍 kde OMZ je optimální míra zapomenutí, která v základním nastavení odpovídá hodnotě 0,3. [27]
6.4 Vytvoření učební dávky Učební dávka je seznam faktů, kterým student prochází vždy, když je zkoušen. Vytvořená učební dávka se skládá zpravidla z nových faktů, které student doposud nemá ve své slovní zásobě a dále z faktů, s kterýma se již setkal a je vhodné je zopakovat. [28] Tabulka 6.2 popisuje složení učební dávky, kterému odpovídá základní nastavení v aplikaci. 17
Skupina Nové fakta Plánované fakta
Procentuální zastoupení v dávce 20 % 80 % Tabulka 6.2: Složení učební dávky
V základním nastavení se mezi plánovaná fakta vybírají fakta ze slovní zásoby, jejichž míra zapamatování je v době vytváření učební dávky menší než 0,75. Takto nastavená hranice vychází ze skutečnosti, kdy v základním nastavení optimální míra zapomenutí odpovídá hodnotě 0,3. Z toho tedy vyplývá, že optimální hranice pro opakování faktu nastává právě tehdy, pakliže míra jeho zapamatování v době generování učební dávky je rovna hodnotě 0,7. Student ale pravděpodobně nebude opakovat fakta právě v okamžiku vytvoření učební dávky, nýbrž s určitým časovým zpožděním, tudíž je vhodné hranici pro výběr plánovaných faktů zvýšit tak, aby v době učení se míra zapamatování u faktů pohybovala v okolí hodnoty optimální hranice pro opakování. Zvýšení optimální hranice pro opakování o hodnotu 0,05 se u plánovaného faktu, jehož stabilita se pohybuje v okolí iniciální stability, projeví časovou rezervou odpovídající jednotkám hodin. U faktů s vyšší stabilitou pak časová rezerva poroste. Metoda RE-WISE žádné zvýšení optimální hranice pro opakování neprovádí a proto oproti implementaci v aplikaci pracuje s hranicí rovnou hodnotě 0,7 [27].
6.5 Zjištění reálné míry zapamatování Reálná míra zapamatování je hodnota určena na základě zpětné vazby studenta při zkoušení. Reflektuje, s jakou pravděpodobností si daný fakt student pamatuje. Student vždy ohodnotí určitým počtem bodů jeho znalost daného faktu, přičemž konkrétní bodové hodnocení přísluší danému intervalu reálné míry zapamatování. Tabulka 6.3 přiřazuje každému hodnocení odpovídající interval reálné míry zapamatování. Interval reálné míry zapamatování Bodové hodnocení 0,8 – 1,0 4 0,6 – 0,8 3 0,4 – 0,6 2 0,2 – 0,4 1 0,0 – 0,2 0 Tabulka 6.3: Reálná míra zapamatování na základě zpětné vazby (převzato z [29]) Přesné určení reálné míry zapamatování se pak liší v závislosti na tom, zda se jedná o nový fakt nebo o fakt, s kterým jsme se už setkali (je v naší slovní zásobě).
6.5.1 Nový fakt U nového faktu je za reálnou míru zapamatování považována vždy maximální hranice intervalu, kam spadá příslušné hodnocení. [29] Tedy v případě, že student faktu přiřadí 3 body, je výsledná míra rovna 0,8. 18
6.5.2 Opakovaný fakt U opakovaného faktu je naopak známá informace o předpokládané míře zapamatování, kterou lze spočítat vzorcem uvedeným v kapitole 6.3 Výpočet míry zapamatování. Takto získaná hodnota je pak porovnána s intervalem z tabulky, kam spadá příslušné bodové hodnocení. Pokud předpokládaná míra zapamatování leží v intervalu reálné míry, pak ji považujeme za konečnou reálnou míru. V případě, že tomu tak není, pak reálnou míru vypočteme tak, že odpovídá minimální nebo maximální hodnotě z intervalu v tabulce 6.3 v závislosti na tom, ke které z hranic se nachází blíže. [29] Jestliže tedy bude předpokládaná míra zapamatování faktu rovna hodnotě 0,75 a student si vybavuje fakt s ohodnocením 3 body, pak se nebude provádět korekce. Pokud by ale přiřadil 4 body, pak by se provedla korekce k nejbližší hranici předpokládaného intervalu, což je hodnota 0,8.
6.6 Určení stability a bázového faktoru Stabilita určuje, jak silně si student pamatuje daný fakt. Čím větší je stabilita, tím pomaleji student fakt zapomíná, což ve výsledku vede k delšímu intervalu opakování. Bázový faktor naopak ovlivňuje, jakým způsobem stabilita roste a určuje maximální hodnotu, s jakou může stabilita růst. Určení změny stability a bázového faktoru se dále liší podle toho, zda se jedná o nový fakt nebo opakovaný fakt. [29,30] K aktualizaci stability a bázového faktoru dochází vždy po absolvování učební dávky.
6.6.1 Nový fakt U nového faktu je stabilita rovna iniciální stabilitě, což je hodnota stability při prvním setkání se s faktem. Výpočet iniciální stability se provede takto: 𝑅𝑀𝑍 𝐼𝑆 = 0,75 + 2 Pokud tedy bude fakt pro studenta jednoduchý a jeho reálná míra zapamatování maximální, pak i iniciální stabilita bude maximální. Výpočet bázového faktoru se provede takto: 𝑅𝑀𝑍 𝐵𝐹 = 1,75 + 2 Pokud tedy bude fakt pro studenta jednoduchý a jeho reálná míra zapamatování maximální, pak i bázový faktor bude maximální. Při prvním zkoušení faktu se bázový faktor nepromítne do výpočtu stability, ale při další aktualizaci hodnot maximální bázový faktor umožní dosáhnout většího navýšení stability, což ve výsledku znamená delší dobu do dalšího opakování. Metoda RE-WISE v základním nastavení iniciální stabilitě přiřazuje hodnotu 1 a bázovému faktoru hodnotu 2 [29]. Aplikace se ale snaží už od počátku podle schopností 19
studenta tyto parametry adaptovat, v důsledku čehož se nastavení hodnot oproti původní metodě liší.
6.6.2 Opakovaný fakt U opakovaného faktu se stabilita vypočítá na základě funkce, jejímž vstupem je reálná míra zapamatování a výstupem koeficient pro změnu stability. Průběh funkce je tvořen křivkou tvořenou dvěma parabolami. Funkce křivky je poté definována těmito třemi body [30]: 𝑓(0) = 0 𝑓(1 − 𝑂𝑀𝑍) = 𝐵𝐹 𝑓(1) = 1 Graf 6.1 tuto funkci vykresluje při hodnotě bázového faktoru 2 a optimální míře zapomenutí rovné hodnotě 0,3.
Změna stability v závislosti na reálné míře zapamatování
Změna stability
2,00 1,80 1,60 1,40 1,20 1,00 0,80 0,60 0,40 0,20 0,00 0,0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1,0
Reálná míra zapamatování
Graf 6.1: Změna stability v závislosti na reálné míře zapamatování Vztah pro výslednou stabilitu pak odpovídá výpočtu: 𝑆𝑖 = 𝑆𝑖−1 ∙ 𝑓(𝑅𝑀𝑍) přičemž index i označuje číslo opakování [30]. Vztah tedy vyjadřuje součin předchozí stability, která byla doposud faktu přiřazena, s koeficientem pro změnu stability, který je výstupní hodnotou funkce pro výpočet změny stability. Pokud je výsledná hodnota stability rovná 0, pak dojde k její korekci na hodnotu 0,05. V případě, že by ke korekci nedošlo, nastala by situace, kdy student už nebude moci zvýšit dále stabilitu v důsledku násobení nulou. K této situaci ale může dojít jen ve skutečně vzácných případech, kdy by student opakovanému faktu přiřadil 0 bodů a zároveň míra zapamatování faktu byla rovna hodnotě 0, což by ve výsledku vedlo k nulové reálné míře zapamatování. 20
Ze vztahu si můžeme také všimnout, že pokud se reálná míra zapamatování blíží k nule, pak se tato skutečnost projeví i u výsledné stability jejím rapidním snížením. To bude mít za následek, že fakt bude zařazen do další učební dávky mnohem dříve. Naopak pokud bude student opakovat v nejideálnějším okamžiku, pak nárůst stability bude maximální. Pokud by si student fakt ale zcela vybavoval, pak nedojde ke změně jeho stability. Tato pravidla vychází z poznatku představeného v kapitole 2.1.2 Spacing effect. Při změně stability dojde také ke změně bázového faktoru, který se bude snažit reflektovat schopnost studenta, jak dobře si fakt vybavuje při zkoušení, neboli jak obtížný pro něj je. Vztah pro výpočet nového bázového faktoru je definován následovně, kde index i značí číslo opakování: 0,95 ∙ 𝐵𝐹𝑖−1 , 𝑅𝑀𝑍 < 1 − 𝑂𝑀𝑍 𝐵𝐹𝑖 = { 1,05 ∙ 𝐵𝐹𝑖−1 , 𝑅𝑀𝑍 ≥ 1 − 𝑂𝑀𝑍 Bázový faktor je zároveň omezen na interval hodnot od 1,5 do 3. V případě, že je interval z jedné ze stran překročen, hodnota se nastaví na nejbližší hranici intervalu. Vidíme, že pokud si student zkoušený fakt vybavuje, pak poroste i bázový faktor. To ve výsledku umožní, aby u studenta, který v několika testováních za sebou dosahuje dostatečně dobrých výsledků, se zvyšovala rychleji i stabilita daného faktu a tím i prodlužovala doba, kdy bude vhodné provést další opakování. Naopak pokud je student neúspěšný, maximální hranice možného nárůstu stability se snižuje, což vede k častějšímu opakování. Původní metoda RE-WISE konkrétně nespecifikuje, jakým způsobem modifikuje bázový faktor na základě zpětné vazby studenta. V důsledku toho aplikace bázový faktor upravuje v ohraničeném intervalu dle vztahů uvedených výše, přičemž tímto způsobem se snaží zvyšovat interval opakování u těch faktů, které se zdají studentovi snadno zapamatovatelnými.
6.7 Opakování zapomenutých faktů Pokud aplikace při zkoušení rozpozná, že si student daný fakt dostatečně nevybavuje, pak jej během procházení učební dávky opakovaně zařazuje do té doby, dokud aplikace nezíská od studenta zpětnou vazbu vybavení si faktu. Aplikace v současném nastavení považuje za dostatečně nezapamatovaný fakt s přiřazeným ohodnocením menší než 3 body [28]. Cílem opakování zapomenutých faktů je dosáhnout u studenta znovu vybavení si faktu pomoci intenzivního opakování, přičemž jeho stabilita s ohledem na získanou zpětnou vazbu od studenta reflektuje skutečnost, že student měl s faktem problémy. Následkem toho pak rychleji klesá jeho míra zapamatování a fakt je zařazen do dřívější učební dávky.
6.8 Rozpoznání známých faktů Pakliže student má již nějaké povědomí o slovní zásobě studovaného jazyka, pak je vhodné, aby nebyl při učení fakty, které zná z předchozího studia, dále zatěžován. Oproti 21
RE-WISE je proto do aplikace přidána podpora pro rozpoznání pro studenta již známých faktů. Funkcionalita je implementována tak, že v části, kdy student poskytuje aplikaci zpětnou vazbu prostřednictvím stupnice ohodnocení od 0 do 4 bodů, je provedeno její rozšíření o další dvě volby. První volbu nazveme jako volbu „oddálení“ a při jejím výběru se aplikace chová tak, že za ohodnocení přiřazené studentem považuje 4 body a následně při výpočtu nové stability je tato stabilita vynásobena koeficientem rovnému hodnotě 5. Důsledkem toho pak fakt bude čekat na zařazení do další učební dávky pětkrát delší dobu, než kdyby student faktu přiřadil pouze 4 body místo volby oddálení. Druhou volbu naopak označíme jako „fakt si pamatuji“ a oproti první volbě se pouze liší násobícím koeficientem, který je roven hodnotě 20. Cílem těchto voleb je umožnit studentovi předcházet situacím, kdy by byl nucen procvičovat fakta, u kterých si je více čí méně jist, že si je vybavuje a jelikož fakta nejsou z učebního procesu nikdy vyřazena, ale pouze jejich interval opakování je několikanásobně navýšen, umožňuje toto nastavení aplikaci i přesto rámcově ověřovat, zda si student fakt vybavuje i poté, co jej označil za pro něj známý.
22
7 Nástroje pro podporu výuky Nástroje pro podporu výuky označují skupinu služeb a prostředků, které nabízejí nové přístupy ke studiu a zpřístupňují další informace k lepšímu pochopení studované látky. Následující kapitoly se snaží popsat tyto nástroje i s jejich teoretickým úvodem a konkrétní implementaci v aplikaci.
7.1 Dialogové systémy Dialogový systém lze definovat jako systém umožňující komunikaci s uživatelem s využitím přirozeného jazyka, přičemž komunikace pomoci dialogu je pro řadu uživatelů často přirozenější než komunikace prostřednictvím grafického uživatelského rozhraní. Dialogové systémy tak umožňují nové přístupy ve tvorbě interaktivních aplikací nebo mohou usnadnit přístup k aplikacím pro zdravotně postižené. [31]
7.1.1 Dialogová strategie a řízení dialogu Dialogová strategie určuje pro každou promluvu dialogu následníka, přičemž promluvou rozumíme souvislé sdělení, které učiní jeden účastník dialogu k druhému [31]. Strategie může být volena na základě znalostí uživatele nebo struktuře získávaných dat. Řízení dialogu lze rozdělit do tří kategorií:
Dialog s iniciativou systému o Dialog je řízen dialogovým systémem (systém pokládá otázky, uživatel odpovídá) Dialog s iniciativou uživatele o Dialog je řízen uživatelem (uživatel pokládá otázky a zadává příkazy, systém reaguje) Dialog se smíšenou iniciativou o V dialogu se střídají přístupy uvedené výše
7.1.2 VoiceXML VoiceXML je standard konsorcia W3C odvozený z XML jako součást projektu Voice Browser Activity. Slouží pro popis dialogové strategie a tvorby dialogových systému založených na mluvené řeči se zaměřením se na zpřístupnění informací pomoci hlasu. V současné chvíli je VoiceXML k dispozici ve verzi 2.1, přičemž je zároveň připravována i verze 3.0. [32]
7.1.3 Procvičování výslovnosti Aplikace umožňuje studentovi procvičovat výslovnost vybrané anglické slovní zásoby prostřednictvím dialogového systému. Na začátku dialogu jsou studentovi nabídnuty vybrané lekce, ve kterých si může procvičit svou výslovnost nebo může absolvovat tzv. výzvu ve výslovnosti, která spočívá v dosažení co nejlepšího výsledku ve výslovnosti.
23
Při volbě procvičování lekce je student postupně testován z výslovnosti slov tak, že konverzační agent prvně slovo vysloví a poté ho požádá, aby ho student zopakoval. Pokud agent rozezná shodu, pak pokračuje na další slovo. V opačném případě provede zopakování a čeká na správnou odpověď. V případě, že se studentovi nedaří slovo úspěšně vyslovit, pak má možnost vyslovit alternativní příkaz, který dá agentovi pokyn slovo přeskočit a přejít k dalšímu. Při volbě tzv. výzvy ve výslovnosti je student naopak testován z množiny slov, která je sjednocením všech lekcí, které může procvičovat. Agent opět studentovi vysloví vybrané slovo a požaduje jeho zopakování, přičemž v případě správné odpovědi agent nabídne další slovo. V případě, že agent odpověď studenta nerozezná a považuje jeho odpověď za nesprávnou, ukončí výzvu a uloží výsledné skóre, které reprezentuje počet správných odpovědí zaznamenané uživatelem během výzvy, do tabulky výsledků. Jedná se o experimentální metodu procvičování výslovnosti, jelikož je nutné brát v úvahu skutečnost, že kvalita metody nutně závisí na kvalitě syntézy a rozpoznávání řeči použité služby. V budoucnu by metoda mohla být zajímavou alternativou pro výuku jazyků, jelikož by student mohl přirozeně komunikovat s virtuálním učitelem.
Implementace V rámci vyvinuté aplikace se využívá standard VoiceXML 2.1 a jako interpret se doporučuje využívat služba Voxeo [33], pro kterou byla funkce procvičování výslovnosti testována a která pro nekomerční účely umožňuje uživatelům prostřednictvím protokolu Skype zavolat na přidělené číslo a komunikovat s konverzačním agentem v anglickém jazyce. Omezením služby je jeden uživatel vedoucí dialog v jednu chvíli. Jelikož služba podporuje komunikaci pouze v anglickém jazyce, jsou z tohoto důvodu pro procvičování podporovány jen anglické lekce. Kdyby interpret podporoval český jazyk, lze uvažovat o rozšíření, které by umožnilo, aby agent při dialogu vždy vyslovil kupříkladu český ekvivalent slova a poté vyžadoval od uživatele jeho anglický překlad. Aplikace není závislá na použití služby Voxeo. Dokumenty ve VoiceXML popisující danou dialogovou strategii jsou automaticky generované aplikací a dostupné prostřednictvím HTTP protokolu. Proto je možné, aby jejich interpretaci převzala jakákoli jiná služba. Ukládání výsledku z výzvy ve výslovnosti probíhá prostřednictvím zavolání příslušné webové služby na straně aplikace, které je předán identifikátor uživatele (identifikátor služby Skype) a celkové skóre. Výsledek je pak zpřístupněn uživatelům, kteří vidí, jak si vedou v porovnání s ostatními.
7.2 Syntéza řeči Syntéza řeči umožňuje převod textu na mluvenou řeč. Program, který převod provádí, se nazývá syntetizér. Syntéza řeči se využívá kupříkladu v dialogových systémech nebo v řadě asistivních technologií pomáhajících nevidomým číst psané texty. [34]
24
7.2.1 Zvukové nahrávky výslovnosti Aplikace umožňuje automaticky generovat zvukové nahrávky výslovnosti pro slovní vazby v lekcích prostřednictvím syntézy řeči. Díky tomu si může student při procvičování slovní zásoby poslechnout nahrávku výslovnosti a docílit tak lepšího výsledku při učení. Student si také může zapnout automatické přehrávání nahrávek při testování, čímž se zvyšuje v učebním procesu počet přijímaných podnětů, důsledkem čehož může dojít k posílení paměťové stopy studovaného faktu.
Implementace Z pohledu implementace si systém vede frontu žádostí, kde každá z nich obsahuje text požadovaný k převodu do zvukové podoby, jazyk textu a informaci o stavu vyřízení. Fronta je pak v pravidelných časových intervalech postupně zpracovávána, přičemž příslušné nahrávky z vyřízených žádostí jsou poté zařazeny do seznamu dostupných nahrávek, kde si aplikace ke každé nahrávce vede informaci o textu, který interpretuje a také o jazyku, ve kterém je namluvena. Tyto materiály jsou poté zpřístupněny uživatelům. Zvukové nahrávky jsou ukládány ve formátech MP3 a WAV. Důvodem párové reprezentace zvukové nahrávky ve dvou formátech je skutečnost, že část v současnosti používaných webových prohlížečů podporuje pouze MP3 formát a část formát WAV. Řešením problému by mohlo být použití přehrávače prostřednictvím technologie Flash, ale aplikace by pak byla závislá na podpoře této technologie. Z tohoto důvodu se využívá řešení založeného na použití audio elementu zavedeného v HTML 5 s využitím párové reprezentace zvukové nahrávky. Jako syntetizátor byla zvolena služba Microsoft Translator, jelikož nabízí k syntéze velké množství podporovaných jazyků pod dostupnou licencí. Alternativou by mohla být služba Google Translate API, ale ta nenabízí bezplatný přístup. Microsoft Translator V rámci služby Windows Azure Marketplace je nabízen přístup k aplikaci Microsoft Translator, která umožňuje překlad mezi desítkami jazyků a také poskytuje syntézu řeči. V rámci podporovaných jazyků pro syntézu řeči se nachází angličtina, němčina a další jazyky. Čeština není podporována. Měsíční limit bezplatně poskytovaného API je 2 000 000 znaků. [35] Služba na základě volání příslušné metody API vrátí požadovaný zvukový výstup, který může být ve formátu MP3 nebo WAV [36]. Funkce syntetizátoru v Microsoft Translator API vychází z platformy Microsoft Tellme [37], která kromě podpory syntézy řeči zahrnuje také rozpoznávání řeči.
7.3 Lexikální databáze Lexikální databáze obsahují informace o výrazech v přirozeném jazyce. Mezi tyto informace kupříkladu patří významy příslušných výrazů, jejich synonyma nebo
25
sémantické vazby atd. Tyto databáze mohou vzniknout z jazykových korpusů, které se také často stávají základním zdrojem informací pro tvorbu výkladových slovníků.
7.3.1 Definice a ukázkové věty Možnost prohlížet si definice cizího výrazu a jeho začlenění v ukázkových větách může studentovi umožnit snadněji pochopit výraz samotný. Navíc se tím zvyšuje také množství podnětů, které student během učebního procesu přijímá. Aplikace proto přistupuje ke zdrojům třetích stran k získání definic a ukázkových vět. Aplikace v současném nastavení umožňuje u většiny anglických výrazů doplnění o jejich definice a sady ukázkových vět. Tyto informace jsou poté při učení studentovi zobrazovány.
implementace Získávání informací probíhá tak, že při požadavku o informace k danému výrazu dojde ke spojení se službami třetích stran a ty jsou požádány o poskytnutí příslušných dat. Data jsou po přijetí zpracována a převedena na výstup uživatele. Přijaté informace jsou ukládány po určitou dobu do mezipaměti aplikace, aby v případě duplicitního požadavku nebylo navazováno opakované spojení s příslušnými službami. Doba, po kterou se data uchovávají v mezipaměti, se může lišit v závislosti na licenčním ujednání poskytovatele dat. V současné chvíli tato doba odpovídá délce jednoho týdne. Aplikace jako poskytovatele dat využívá Wordnet a službu Wordnik, ale v rámci svého návrhu je možné doimplementovat i jiné služby, aniž by bylo nutné provádět úpravy v jiných částech aplikace. Pro další podporu anglického jazyka může kupříkladu přijít v úvahu British National Corpus. Wordnet Wordnet je rozsáhlá lexikální databáze pro anglický jazyk vyvíjená na univerzitě v Princetonu. Obsahuje výrazy (podstatná jména, slovesa apod.) seskupené do tzv. synonymických řad zvaných synsety. Také poskytuje ukázkové věty ilustrující význam konkrétních výrazů a zachycuje různé sémantické vztahy. Databáze je uvolněna pod licencí BSD a je poskytována volně ke stažení. Využit lze také webové rozhraní. [38] Wordnik Wordnik je webová služba, která prostřednictvím REST API poskytuje definici výrazu, ukázkově věty, synonyma a další informace spojené s tímto výrazem. Služba se výhradně zaměřuje na anglický jazyk a pro nekomerční užití disponuje omezením 15 000 zaslaných požadavků během jedné hodiny. [39]
7.4 Gamifikace Gamifikace využívá herních principů, estetiky a herního myšlení, přispívá k motivaci uživatelů k činnosti, podpoře učení a řešení problémů [40].
26
7.4.1 Vědomostní souboje Aplikace disponuje institutem lig, které zastřešují určitý okruh studijních lekcí. V rámci lig se odehrávají ligové duely, jejichž výsledky se promítají do celkového pořadí účastníků v lize. Ligový duel je vědomostní souboj mezi dvěma uživateli, kde jeden je označován jako vyzyvatel a druhý jako oponent. Souboj spočívá v absolvování vědomostního testu, jehož otázky jsou náhodně vygenerovány. Cílem uživatele je poté co nejlépe správné otázky zodpovědět. Jakmile oba účastníci duelu test absolvují, dojde k závěrečnému vyhodnocení a výsledky z duelu se promítnou do celkového pořadí ligy. Pokud některý z účastníků duel neabsolvuje v určitém časovém limitu, dochází ke kontumaci. Cílem institutu lig, který simuluje herní prostředí v podobě vědomostní hry, je snaha motivovat studenty ke studiu lekcí, jejichž znalost je nutným předpokladem k dosažení dobrých výsledků při absolvování ligových soubojů. Navíc možnost sledovat své výsledky v porovnání s ostatními může vést u uživatelů k posílení rivality a také k projevu většího úsilí při studiu.
Implementace vyhodnocení výsledků účastníka ligy Při každém vyhodnocení ligového duelu dochází k promítnutí jeho výsledku do celkového pořadí ligy, kde každý účastník disponuje svým bodovým ohodnocením. Zisk bodů, který může účastník ligového duelu získat, závisí jak na výsledku duelu (výhra, remíza a prohra), tak také na skóre, kterým účastníci duelu disponovali před začátkem duelu. Vztahy pro výpočet bodového zisku jsou následující: Při výhře uživatele A proti uživateli B: 𝑃𝐴 = 3 + 0,02 ∙ 𝑅𝐵 𝑃𝐵 = −1(3 + 0,02 ∙ 𝑅𝐴 ) kde R s indexem značí skóre účastníka ligy v době vytvoření výzvy k duelu. Při remíze uživatele A proti uživateli B: 𝑃𝐴 = 1 𝑃𝐵 = 1 Pokud celkové skóre uživatele klesne pod 0 bodů, pak se za jeho celkové skóre také považuje 0 bodů. Řada hodnotících systému vychází z myšlenky poměrného bodového zisku na základě aktuálního skóre účastníka. Aplikace proto implementuje jednodušší model vycházející z podstaty takových systému. V budoucnu na základě získaných dat z průběhu ligových soubojů by byla možnost implementovat kupříkladu některou z variant hodnotícího systému Elo [41].
7.4.2 Výzva ve výslovnosti Výzva ve výslovnosti je dalším nástrojem, který využívá herních mechanismů k motivaci studenta k opakování si výslovnosti. Nástroj byl představen v kapitole 7.1.3 Procvičování výslovnosti, a proto nebude dále probírán.
27
7.5 Další nástroje Tato kapitola zmiňuje další nástroje, jejichž použitím je snaha studentovi usnadnit některé činnosti a to jak ve smyslu zpřístupnění dalších zdrojů informací, tak také při pomoci s jejich porozuměním, jelikož poskytované informace jsou často v jazyce, který student procvičuje.
7.5.1 Překladač V rámci aplikace se využívá Google Translate jako překladač pro definice a ukázkové věty, které jsou prezentovány uživateli. Jelikož jsou poskytované informace v jazyce, který uživatel studuje, mohou mít někteří ze studentů obtíže s jeho překladem a pochopením. Proto aplikace u definic a ukázkových vět automaticky odkazuje na jejich překlad prostřednictvím služby Google Translate, přičemž originální znění je zachováno. Google Translate by mohl být nahrazen službou Microsoft Translator, která byla zmíněna již dříve. Prostřednictvím jejího API by bylo navíc možné provádět překlad přímo v aplikaci, ale z důvodu licenčního omezení na počet požadavků bylo zvoleno toto řešení, aby v případě častého využívání funkce překladu nebyla omezena tvorba zvukových nahrávek výslovnosti v důsledku překročení limitu.
7.5.2 Externí zdroje Student má dále k dispozici i externí materiály umožňující získat další informace. Aplikace se snaží s využitím předdefinovaných výkladových slovníku nabízet odkazy na stránky spjaté k danému výrazu. Mezi těmito zdroji je kupříkladu otevřený slovník Wiktionary nebo služba Dictionary.
28
8 Závěr Cílem této práce bylo vytvořit aplikaci pro výuku cizojazyčné slovní zásoby implementující učební metodu vycházející z metody RE-WISE, která by disponovala nástroji podporujícími učení studenta. Aplikace během svého vývoje prošla uživatelským testováním, které odhalilo požadavky na úpravu uživatelského rozhraní a přidání nových funkcí. Některé z požadavků byly:
Přidání funkce pro upozornění emailem na nově vytvořenou učební dávku Nativní skrytí nápovědy při učení Indikace počtu neabsolvovaných učebních dávek v menu Detailní prohlížení průběhu učební dávky Přidání klávesových zkratek při absolvování učební dávky Přidání funkce pro zakázání načítání doplňujících informací k vazbě při učení Přidání funkce automatického přehrávání zvukových nahrávek při učení Úprava grafického rozhraní pro lepší práci s aplikací přes dotykové zařízení Možnost vazbu oddálit nebo ji označit za již známou, pakliže má student znalosti jazyka i z jiného studia (6.8 Rozpoznání známých faktů)
Všechny požadavky byly implementovány. Během testování se také ukázalo, že někteří uživatelé mohou mít zpočátku problémy s orientací v aplikaci, proto byla přidána úvodní instruktáž pro nově registrované uživatele popisující výběr lekce a absolvování učební dávky, video sekvence představující běžný průchod aplikací a také byla mírně přepracována navigace. Pokračování vývoje této aplikace by v budoucnu mohlo vést několika směry:
Přidání dalších pomocných zdrojů pro jiné jazyky než angličtinu Rozšíření možnosti importu lekcí ze služeb třetích stran Přidání podpory pro další jazyky při učení přes dialogové rozhraní
V současné době je aplikace dostupná jako zcela nekomerční služba na webové adrese www.studujjazyk.cz. Nabízí několik lekcí v angličtině, němčině, španělštině a francouzštině, přičemž pro všechny lekce jsou v aplikaci dostupné zvukové nahrávky výslovnosti. Po delší době provozu této služby bude navíc možné ze získaných dat provést další úpravy aplikace se zaměřením se na zlepšení použité učební metody a celého procesu učení s důrazem na jeho vyšší efektivitu.
29
Literatura [1] Words Will Get You Far: Why Is Vocabulary Acquisition So Important in Second and Foreign Language Learning? [online]. [cit. 1.5.2013]. Dostupné z WWW: http://blog.worddive.com/2013/02/words-will-get-you-far-why-is-vocabularyacquisition-so-important-in-second-and-foreign-language-learning/. [2] Memory.[online]. [cit. 27.3.2013]. Dostupné z WWW: http://plato.stanford.edu/ entries/memory/. [3] DÖMÉNYOVÁ, Irena. Specifikace některých intervenujících proměnných v paměťovém výkonu. Brno, 2011. [Diplomová práce]. Masarykova univerzita, Filozofická fakulta. [4] HANUŠOVÁ Marie, OUDOVÁ Drahomíra, VOTAVA Jiří. Paměť a učení. [online]. [cit. 27.3.2013]. Dostupné z WWW: http://etext.czu.cz/img/skripta/64/ pamet-1.pdf. [5] Forgetting Curve. [online]. [cit. 10.3.2013]. Dostupné z WWW: http://www.prin ceton.edu/~achaney/tmve/wiki100k/docs/Forgetting_curve.html. [6] Supermemo spacing effect - Forget about forgetting. [online]. [cit. 18.3.2013]. Dostupné z WWW: http://supermemo.com/articles/kowal.htm#Spacing effect. [7] How to learn better by learning less. [online]. [cit. 5.4.2013]. Dostupné z WWW: http://ml.sun.ac.za/2012/01/30/how-to-learn-better-by-learning-less/. [8] Učební metody. [online]. [cit. 18.3.2013]. Dostupné z WWW: http://www.memo station.net/sk/ucebni-metody. [9] Jak se učit efektivně. [online]. [cit. 20.4.2013]. Dostupné z WWW: http://www.pa licedute.cz/clanek.php?c=2010121902&jak-se-ucit-efektivne-iii--metody. [10] The Leitner System. [online]. [cit. 10.3.2013]. Dostupné z WWW: http://flash carddb.com/leitner. [11] KEDER, Daniel. Computer-assisted language learning using spaced repetition. Brno, 2009. [Diplomová práce]. Masarykova univerzita, Fakulta informatiky. [12] Slovicka.org. [online]. [cit. 3.4.2013] http://www.slovicka.org/. [13] Wordbot.cz. [online]. [cit. 15.3.2013] http://www.wordbot.cz/. [14] BRANDEJS, Michal. Inteligentní Dril: studenti méně opakují a více si pamatují. In 7. ročník konference Alternativní metody výuky 2009. 1. vyd. Hradec Králové: GAUDEAMUS, 2009. 6 s. ISBN 9788070415153. [15] Teoreticky o Drilu. [online]. [cit. 5.3.2013] https://is.muni.cz/pruvodce/dril/index/ 10. [16] Help For English. [online]. [cit. 1.3.2013] http://www.helpforenglish.cz/.
30
[17] MVC for Dummies. [online]. [cit. 28.4.2013]. Dostupné z WWW: http://www.end lick.com/mvc-for-dummies/. [18] SANDERS, William. Learning PHP Design Patterns. O'Reilly Media, 2013. ISBN: 1449344917. [19] PHP. [online]. [cit. 15.3.2013]. Dostupné z WWW: http://php.net/. [20] MySQL. [online]. [cit. 15.3.2013]. Dostupné z WWW: http://www.mysql.com/. [21] Nette framework. [online]. [cit. 5.4.2013] . Dostupné z WWW: http://www.nette .org/. [22] Twitter Bootstrap. [online]. [cit. 20.3.2013]. Dostupné z WWW: http://twitter.git hub.com/bootstrap/. [23] jQuery. [online]. [cit. 2.4.2013]. Dostupné z WWW: http://jquery.com/. [24] GOOGLE. Google Chart Tools. [online]. [cit. 2.4.2013] https://developers .google.com/chart/interactive/docs/index. [25] Co je to responzivní web a jak funguje. [online]. [cit. 17.4.2013]. Dostupné z WWW: http://www.enext.cz/zurnal/47-co-je-to-responzivni-web-a-jak-funguje. [26] LANGMASTER. RE-WISE. [online]. [cit. 20.3.2013]. Dostupné z WWW: http://www.langmaster.cz/lmcom/com/web/cs-cz/pages/help/downloads/ rewise.aspx. [27] LANGMASTER. Křivka zapomínání. [online]. [cit. 1.4.2013]. Dostupné z WWW: http://www.langmaster.cz/lmcom/com/web/cs-cz/pages/help/downloads/ rewise/krivka-zapominani.aspx. [28] LANGMASTER. Denní plán. [online]. [cit. 27.3.2013]. Dostupné z WWW: http://www.langmaster.cz/lmcom/com/web/cs-cz/pages/help/downloads/ rewise/denni-plan.aspx. [29] LANGMASTER. Adaptace podle známkování. [online]. [cit. 25.3.2013]. Dostupné z WWW: http://www.langmaster.cz/lmcom/com/web/cs-cz/pages/help/ downloads/rewise/adaptace.aspx. [30] LANGMASTER. Nárůst stability při opakování. [online]. [cit. 2.4.2013]. Dostupné z WWW: http://www.langmaster.cz/lmcom/com/web/cs-cz/pages/help/ downloads/rewise/narust-stability.aspx. [31] BÁRTEK, Luděk. Generování dialogových rozhraní. Brno, 2005. [Disertační práce]. Masarykova univerzita, Fakulta informatiky. [32] W3C. Voice Extensible Markup Language (VoiceXML) 2.1. [online]. [cit. 30.3.2013]. Dostupné z WWW: http://www.w3.org/TR/voicexml21/. [33] Voxeo. [online]. [cit. 2.3.2013]. Dostupné z WWW: http://voxeo.com/. [34] LEMMETTY, Sami. Review of Speech Synthesis Technology. Helsinki, 1999. [Diplomová práce]. Helsinki University of Technology. 31
[35] MICROSOFT. Microsoft Translator. [online]. [cit. 17.4.2013]. Dostupné z WWW: http://datamarket.azure.com/dataset/bing/microsofttranslator. [36] MICROSOFT. Speak method. [online]. [cit. 4.3.2013]. Dostupné z WWW: http://msdn.microsoft.com/en-us/library/ff512420.aspx. [37] MICROSOFT. Background of voice synthesis in Bing Translator. [online]. [cit. 15.3.2013.]. Dostupné z WWW: http://social.msdn.microsoft.com/Forums/ en-US/translator/thread/989264ba-d9f2-4ce9-af5e-41ef277e4a42. [38] Wordnet. [online]. [cit. 18.3.2013.]. Dostupné z WWW: http://wordnet.princeton .edu/wordnet/. [39] Wordnik. [online]. [cit. 1.4.2013]. Dostupné z WWW: http://developer.wordnik .com/. [40] KAPP, Karl M. The Gamification of Learning and Instruction: Game-based Methods and Strategies for Training and Education. Pfeiffer, 2012. ISBN: 1118096347. [41] WIKIPEDIA. Elo rating system. [online]. [cit. 4.3.2013]. Dostupné z WWW: http://en.wikipedia.org/wiki/Elo_rating_system.
32
A Obsah přiloženého CD Součástí této práce je přiložené CD obsahující kromě samotné aplikace i další pomocné materiály. Obsahem CD jsou:
Složka project obsahující kompletní projekt s doplňujícími podklady. Složka docs obsahující API dokumentaci k projektu ve formě webových stránek. Úvodní stránka je přístupná přes soubor docs/index.html. Složka lessons obsahující ukázkové lekce pro angličtinu a němčinu v CSV formátu kompatibilním s funkcí importu v aplikaci. Složka text obsahující digitální podobu písemné části práce ve formátech DOCX a PDF a dále obrazový soubor ERD diagram v plném rozlišení. Složka screen captures disponující záznamy snímání obrazovky, které prezentují některé scénáře použití aplikace. Složka screenshoots disponující snímky aplikace.
33
B Příloha Instalace a spuštění aplikace na serveru Běhové prostředí musí splňovat některé požadavky, které jsou nezbytné pro úspěšné spuštění aplikace. Tyto požadavky jsou:
Webový server Apache 2.4.3 Skriptovací jazyk PHP 5.4 o S podporou rozšíření curl o S povolením direktivy allow_url_fopen Databázový systém MySQL 5.5 o S podporou InnoDB
Představenou konfiguraci výše lze považovat za minimální. Pakliže webový server splňuje veškeré požadavky, je nutné také dodržet správný postup instalace aplikace včetně její základní konfigurace. Na začátku popíšeme postup instalace: 1. Zkopírujeme složku project z přiloženého CD na webový server. 2. Zajistíme, aby kořenovým adresářem pro aplikaci byla složka project/www a direktiva open_basedir byla nastavena na složku project. 3. Nastavíme oprávnění pro zápis do složek project/log, project/temp a project/www/audio. 4. Vytvoříme MySQL databází s kódováním utf8_bin a naimportujeme soubor project/database.sql. 5. Na webovém serveru nastavíme provádění plánovaných úloh v doporučených intervalech. Jejich seznam nalezneme v souboru project/crones.txt. Poté provedeme nastavení konfiguračního souboru project/app/config/config.neon, který používá pro zápis syntaxi neon: 1. Nastavíme parametr name, který reprezentuje název aplikace. 2. Nastavíme parametr copyright, který se bude zobrazovat v zápatí stránek. 3. Můžeme také volitelně nastavit skypeNumber, což je číslo umožňující spojení s dialogovým systémem přes komunikační protokol Skype. Pakliže není parametr nastaven, není dostupný ani žebříček výzvy ve výslovnosti. Číslo lze získat kupříkladu prostřednictvím služby Voxeo na adrese voxeo.com. Dialogová strategie je pak umístěna na straně aplikace na adrese example.com/dialogue/stratégy. 4. V parametru languages nastavíme jazyky, které se lze v aplikaci učit. 5. V sekci emails.administrator nastavíme email administrátora aplikace. Na email budou směrovány emaily zaslané prostřednictvím dotazníkového formuláře a také zprávy o interních chybách aplikace. 6. V sekci database postupně nastavíme parametry name, který udává název vytvořené databáze, host, který označuje hostitele a je zpravidla localhost a dále
34
parametr user zastupující uživatelské jméno a password zastupující heslo pro přístup k databázi. 7. V části api poté nastavíme klíče pro přístup ke službám třetích stran. V podsekcích se nachází nastavení klíčů pro Microsoft Translator API a službu Wordnik. Tyto klíče lze získat na datamarket.azure.com přihlášením se k Microsoft Translator API a developer.wordnik.com. Administrátorský účet pro přístup do aplikace je po provedení instalace a nastavení dostupný pod přihlašovacím emailem
[email protected] a heslem traktor. Tyto přístupové údaje je možné po přihlášení změnit.
35
C Příloha Základy práce s aplikací Aplikace po instalaci v základním nastavení disponuje jediným uživatelským účtem s administrátorským oprávněním. Administrátor pak může na stránce Uživatelé ostatním registrovaným uživatelům změnit jejich roli. Tyto role jsou: Student o Každý uživatel je zpočátku člen o Využívá služeb aplikace o Nemá oprávnění vytvářet lekce Lektor o Přebírá oprávnění člena o Spravuje ligy a lekce v aplikaci, je schopen je vytvářet i mazat o Garantuje kvalitu obsahu v aplikaci Administrátor o Má všechna oprávnění o Přiřazuje role a může smazat profil uživatele Důvodem, proč studenti nemohou vytvářet lekce, je elementární snaha spravovat lekce ve spojitosti s dostupností zdrojů třetích stran, ať už se jedná o vytváření zvukových nahrávek nebo poskytování dalších zdrojů. Další ukázky práce s aplikací lze nalézt jako záznam obrazovky ve složce screen captures na přiloženém CD. Nachází se zde ukázky prezentující vytvoření nové lekce, spuštění učební dávky, absolvování ligového duelu a jiné.
36