Online soutěž v informatických znalostech pro žáky ZŠ a SŠ Přibyl Vladimír Vedoucí práce
PaedDr. Jiří Vaníček, Ph.D.
Školní rok: 2008-2011
Abstrakt Diplomová práce se zabývá přípravou, tvorbou a vyhodnocením informatické soutěže pro žáky základních a středních škol, nazvanou Bobřík informatiky. Práce také obsahuje shrnutí stávajících obdobných soutěží informatiky. Dále pak se snaží přiblížit a objasnit technické a organizační problémy spjaté s přípravou a průběhem této soutěže.
Abstract The thesis deals with the preparation, creation and evaluation of an informatics competition for pupils of primary and secondary schools, called Bebras (Beaver) of informatics. The work also includes a summary of simile existing contests on informatics. Furthermore, it seeks to convey and clarify the technical and organizational problems associated with the preparation and conduct of the competition.
Klíčová slova Bobřík, informatika, iBobr, soutěž, php, mysql
Keywords Bebras (Beaver), informatics, iBobr, contest/competition, php, mysql
Zadání práce Student zpracuje přehled současných soutěží v rámci ČR, které tématicky odpovídají předmětu informatiky či informačních technologií. Připraví prostředí pro takovou soutěž, vytvoří testovací webovou aplikaci, databázi a administrátorské prostředí pro správu soutěžících, úloh a kategorií soutěže. Vytvoří šablony pro zpracování výsledků realizované soutěže a na jejich základě provede analýzu získaných dat – povahy technické, pedagogické (obtížné otázky, úspěšnost soutěžících). Analyzuje data získaná při soutěži a provede výzkum mezi účastníky soutěže na povahu a zaměření úloh.
Datum zadání diplomové práce: 21. listopadu 2008 Datum odevzdání diplomové práce: 30. dubna 2011
Úvod Přehled aktuálního stavu tématu práce V roce 2004 vznikla v Litvě nová informatická soutěž Bebras - Informatický bobr. Tato soutěž, testující informatické znalosti a dovednosti, je určena žákům 5. – 9. tříd základních škol a studentům středních škol. Soutěž se později stala, tak úspěšnou, že se odtud rozšířila do dalších evropských zemí. Soutěž se už konala u všech našich státních sousedů. V Německu, Rakousku, Polsku a na Slovensku se do ní zapojilo víc než 48 000 žáků. Pravidelně se konají mezinárodní konference na, kterých se porovnávají výsledky a zkušenosti jednotlivých států pořádajících soutěž. Každý rok je upravován určitý společný model, který má soutěž splňovat. Soutěž je pak rozdělena do tří kategorií podle ročníku soutěžících. Každá kategorie, pak obsahuje 15 otázek. Z toho je pět lehkých, pět středních a pět těžkých otázek. Bodování se pak liší právě podle obtížnosti otázky. Za nesprávnou odpověď se body strhávají. Pokud soutěžící na otázku neodpoví, neztrácí žádné body. Po skončení testu se soutěžící ihned dozví, kolik bodů získal a zda bobříka ulovil. Své pořadí mezi soutěžícími a také komentované správné výsledky se soutěžící dozví, až několik dní po termínu konání soutěžního kola na webu soutěže.
Cíle práce Cílem práce je vytvořit přehled soutěží v ČR, vytvoření testovací webové aplikace, návrh podpůrné databáze a administrátorského prostředí. Dále pak sestavení šablon pro zpracování výsledků realizované soutěže, na jejichž základě bude možné provézt analýzu získaných dat a dále pak provedení výzkumu mezi účastníky soutěže na povahu a zaměření úloh.
Předpokládaná struktura práce Práce pak bude rozdělena do následujících okruhů: 1) Aktuální stav informatických soutěží v ČR 2) Návrh soutěžního prostředí a podpůrné databáze a) Registrace soutěžícího do soutěže b) Sestavení soutěžních otázek a odpovědí c) Vlastní soutěžní test d) Kontrola zbývajícího času e) Způsoby odesílání odpovědí na jednotlivé otázky
f) Vyhodnocení testu 3) Administrátorské prostředí a) Správa soutěžních kategorií b) Správa otázek c) Správa škol d) Správa soutěžících e) Přehledy a statistiky 4) Analýza získaných dat 5) Výzkum mezi účastníky soutěže
Ad 1) Soutěž v informatice pro žáky základních a středních škol není v České Republice žádnou novinkou. Mnohým se jistě vybaví informatické soutěže, na českých školách již rozšířené, jako například Matematická olympiáda - kategorie P a podobné. Největším rozdílem mezi těmito soutěžemi a Bobříkem informatiky je, že Bobřík informatiky je realizován jako on-line soutěž. Samotné testování tedy probíhá přímo na počítači. V této části práce bude uveden soupis a stav ostatních informatických soutěží v ČR. Ad 2) V této části práce budou popsány technické a organizační informace, spjaté s návrhem a realizací soutěže. Bude popsána registrace nového soutěžícího do soutěže, jednotlivé prvky registračního formuláře, informativní část pro již registrované soutěžící, kde mohou změnit některé své registrační údaje, přečíst si bližší informace o jejich kategorii a v neposlední řadě spustit samotný test. Dále pak prostředí vlastního testu a s ním spjatá problematika sestavení soutěžních otázek, kontrola zbývající času, odeslání a vyhodnocení odpovědí soutěžícího. Ad 3) V této části práce bude popsáno neveřejné administrátorské prostředí, určené ke správě jednotlivých soutěžních kategorií a jejich otázek. Prostředí bude obsahovat nástroje pro správu škol registrovaných do soutěže a správu jednotlivých soutěžících. V tomto prostředí bude také implementováno několik šablon pro analýzu získaných dat. Ad 4) V této části práce budou analyzována data, technické a pedagogické povahy získaná během konání soutěže. Půjde například o analýzu času potřebného
k řešení celého testu, ale i jednotlivých otázek, nebo srovnání úspěšnosti chlapců a dívek v jednotlivých kategoriích.
Ukázka: Délka testování v kategorii Junior V kategorii Junior, stejně jako v ostatních kategoriích, byl nastaven časový limit na řešení testu maximálně na 40 min. V této analýze se zaměříme na množství času, který soutěžící potřebovali k řešení testu. V kategorii Junior se soutěže účastnilo 1686 soutěžících, z čehož 881 z nich se podařilo ulovit bobříka. Dobu řešení a úspěšnost v soutěži ilustruje následující tabulka a graf: Doba řešení do 40 min do 35 min do 30 min do 25 min do 20 min do 15 min do 10 min do 5 min
Počet Ulovených soutěžících bobříků 552 440 446 263 373 121 201 45 90 9 15 2 5 1 4 0
Analýza problému Východiska řešení Prvním krokem, bylo seznámení se s modelem soutěže přijatým ostatními zeměmi. Návrh soutěžní aplikace realizované pomocí skriptovacího jazyka php a struktury podpůrné mysql databáze. Tyto návrhy pak byly pravidelně konzultovány s vedoucím práce. Zároveň bylo možné čerpat ze zkušeností ostatních zemí pořádajících soutěž už pravidelně. Po dokončení návrhu podoby soutěže, jsem se pustil do samotné realizace v programovacím jazyku php a databázovém systému mysql, se kterými jsem měl už řadu dřívějších osobních zkušeností. A to jak z absolvovaných seminářů programování v php, ale i z vlastních dřívějších projektů. Nemluvě o velké dostupnosti tištěné literatury a různých internetových zdrojů.
Metodika Na testovací aplikaci, pomocí níž by soutěžící řešili test, je kladeno velké množství požadavků. Aplikace musí být universální pro všechny soutěžní kategorie, do kterých jsou soutěžící rozděleni podle ročníků, tj. kategorie Benjamín pro žáky 5. – 8. ročníků základních škol, Junior pro žáky 9. ročníku základních škol a 1. – 2. ročník středních škol a Senior pro žáky 3. – 4. ročníků středních škol. Aplikace musí být snadno upravitelná na jiný počet soutěžních kategorií, jelikož se v budoucnu uvažuje o zavedení nové kategorie Kadet určené pro 5. – 6. ročník základních škol. Na Slovensku už byla kategorie Kadet zavedena v loňském ročníku. Aplikace musí obsahovat spolehlivé a zabezpečené ověření času, tak aby bylo možné spustit test v dané kategorii pouze v případě souhlasu aktuálního data se dnem soutěže. Soutěž pro každou kategorii proběhne vždy v jediný den. Po spuštění a registraci soutěžícího se spustí samotný test. Ostatní státy, účastnící se soutěže, mají v každé kategorii testu standardně 15 otázek, ale tento počet nemusí být trvalý. Je proto nutné navrhnout testovací aplikaci a její podpůrnou databázi, tak aby bylo možné rychle a jednoduše přiřazovat otázky do jednotlivých kategorií. Během testu bude neustále zobrazen název soutěže a kategorie, seznam otázek, číslo aktuální otázky, počet bodů za aktuální otázku, tlačítko pro předčasné ukončení testu a čas zbývající na řešení testu. V seznam otázek může být prezentován jen jako seznam jejich čísel, nebo lépe jako seznam záložek (karet) mezi, kterými může soutěžící libovolně procházet. V seznamu otázek, také budou rozlišeny otázky, které ještě nebyly zodpovězeny.
obr.: Ukázka soutěžního prostředí
Soutěžní otázky v každé kategorii jsou pak rozděleny do skupin podle obtížnosti. V každém testu bude pět lehkých, pět středních a pět těžkých otázek. Bodování se pak liší právě podle obtížnosti otázky. Za správnou odpověď získá soutěžící u lehkých otázek 9 bodů, u středních 12 bodů a u těžkých 15 bodů. Za nesprávnou odpověď se body strhávají. Pokud soutěžící špatně odpoví na lehkou otázku ztratí 3 body, za střední 4 body a za těžkou 5 bodů. V případě, že se rozhodne na otázku neodpovědět neztrácí žádné body. Bude vytvořena jedna sada testových otázek pro každou kategorii, ale pořadí otázek v testu bude pro každého soutěžícího promíchané. Stejně tak budou promíchané i odpovědi u každé otázky. Tato permutace otázek a odpovědí by měla ztížit předávání odpovědí, v rámci školy, na otázky v testu dopoledním skupinám od soutěžících z ranních skupin. Aplikace si nicméně musí pamatovat původní čísla otázek a odpovědí, aby bylo možné vyhodnotit správné odpovědi a odeslat studentovo řešení v standardní podobě pro možné vyhodnocení. Konkrétní příklad: Otázka 1 bude mít správnou odpověď B, ovšem bude zamíchána, takže soutěžící ji najde v testu jako otázku číslo 7 a správná odpověď bude C. Předpokládejme, že soutěžící vybere odpověď,která se mu zobrazuje jako A (ovšem před zamícháním je to např. D). Odeslána pak ovšem bude informace, že šlo o otázku 1 se správnou odpovědí B a soutěžícího volbou D. Dále musí být rozeznatelné, jestliže účastník na otázku neodpověděl (např. volba N). Po ukončení testu se zobrazí výsledek, v němž bude uveden počet bodů, které soutěžící získal a zda ulovil bobříka, tj. dosáhl určité předem nastavené bodové hranice. Nezobrazí se mu, ale žádné jiné podrobnější informace, které úlohy byly správně či
nesprávně zodpovězeny a proč se bude moci dozvědět až po skončení a vyhodnocení soutěžního ročníku na webu soutěže.
Stav rozpracovanosti práce Již jsem vytvořil všechny součásti testovací aplikaci a administrátorské prostředí. Začátkem listopadu 2008 proběhlo už první české kolo soutěže, do něhož se zapojilo 4096 soutěžících ze 79 škol se zastoupením všech krajů ČR. Na jehož výsledcích právě provádím analýzu získaných dat.
Nedodělaná práce Po skončení prvního kola soutěže se objevila řada možných drobných úprav, jak testovací aplikace, tak administrátorského prostředí. Dále je pak třeba provézt výzkum mezi koordinátory soutěže na jednotlivých školách a dokončit analýzu dat z 1. ročníku soutěže.
Seznam literatury [1] K.STEPHENS, Ryan, R.PLEW, Ronald. Naučte se SQL za 21 dní. *s.l.+ : Computer Press, 2004. 600 s. Odborná edice. ISBN 80-7226-870-8. [2] BRÁZA, Jiří. PHP5 : Začínáme programovat. *s.l.+ : GRADA Publishing, a.s., 2005. 244 s. Web design. ISBN 80-247-1146-X. [3] PEXA, Petr. Jazyky XHTML, CSS, DHTML, WML. *s.l.+ : Kopp, 2006. 208 s. Odborná literatura. ISBN 80-7232-286-9. [4] PEXA, Petr. Tvorba WWW a WAP. *s.l.+ : Kopp, 2001. 215 s. Odborná literatura. ISBN 807232-161-7. [5] DELLWIG, Elmar. JavaScript : příručka programátora. *s.l.+ : GRADA Publishing, a.s., 2003. 278 s. Web design. ISBN 80-247-0298-3. [6] SCHUBERT, Sigrid, SCHWILL, Andreas. Didaktik der Informatik. Berlin : Spektrum Lehrbuch, 2004. 372 s. ISBN 3-8274-1382-6. [7] BRICHZIN, Peter, et al. Grundlagen der Informatik. München : Oldenbourg, 2005. 161 s. ISBN 978-3-486-00098-6.