DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
CREATING, IMPLEMENTING AND RUNNING THE LMS ON THE HIGH SCHOOL „PODORLICKE VZDELAVACI CENTRUM“ VYTVÁŘENÍ, NASAZOVÁNÍ A PROVOZ LMS NA STŘEDNÍ ŠKOLE „PODORLICKÉ VZDĚLÁVACÍ CENTRUM“
Petr Voborník Univerzita Hradec Králové Fakulta informatiky a managementu, Katedra informatiky a kvantitativních metod,
[email protected] Abstrakt Během vyučování na střední škole jsem pocítil tíživost absence on-line e-learningového nástroje, na který jsem na univerzitě zvyklý, jakožto na naprosto přirozenou součást učebních pomůcek. Předávání studijních materiálů studentům a komunikace s nimi mimo výuku tak byla velmi obtížná, nesystémová a každý vyučující ji řešil individuálně dle svých schopností a dostupných prostředků. Stejně tak zadávání a vyhodnocování úkolů, známkování, písemné zkoušení, reference, rozvrhy, změny ve výuce, události apod. Zvláště pak v případě studentů s dlouhodobější absencí či osob studujících při zaměstnání. Tytéž potřeby se přitom vyskytují na většině dalších středních škol. Kvalitních, finančně dostupných a v současné době personálně zabezpečitelných LMS přizpůsobených pro potřeby a možnosti tuzemských středních škol není mnoho. Zkusil jsem tedy vytvořit vlastní LMS, natolik jednoduchý, aby jej mohl používat každý, natolik komplexní, aby pokryl veškeré potřeby vyučujících a natolik univerzální, aby jeho rozšiřování o další funkcionalitu bylo snadné a přístupné všem potencionálním zájemcům. Tato striktní modularita systému by měla napomoci jak jeho použitelnosti, tak i dlouhé životaschopnosti. LMS je vyvíjen v ASP.NET a koncipován tak, aby byl schopen podporovat libovolný databázový zdroj. Systém se skládá z jádra systému, základní sady modulů a kompletní dokumentace pro studenty, učitele, správce a programátory dalších modulů. Abstract I miss on-line e-learning tool during my teaching on the high school. I use it on the university as an absolute basic component of learning instruments. It has been very difficult and unsystematic to distribute the study materials and communication with the students out of the lessons. The teachers have solved the situation individually followed by theirs faculties and available means. The same situation is in entering and scoring tasks, written examination, reference, timetables, changes of timetables, events etc. Especially it is a problem with long time absent students or men studying incareer. The same problems are on the majority of other high schools. There are not LMSs in the high-quality, financially accessible and personally guaranteed in this time, which are adapted for the needs and the possibilities in the national high school. I have tried to create the LMS by myself, enough easy for everybody, enough complex for every needs from teachers and enough universal for easy and available future extending of functionality for every potentials interested persons. This strict modularity of the system should be helpful for it usability and long time viability. The LMS is developed and conceived to be able to support every database sources. System consists of core of the system, basic modules pack and completely documentations for students, teachers, administrators and programmers of additional modules.
328
DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
Klíčový slova LMS, Learning management system, střední škola, ASP.NET Keywords LMS, Learning management system, high school, ASP.NET
Úvod Při svém vyučování na střední škole jsem hned od samého začátku zaznamenal jeden základní handicap – nebyl zde k dispozici žádný e-learningový nástroj, tedy něco, na co jsem si za dobu svého působení na univerzitě zvykl jako na naprosto přirozenou součást učebních pomůcek. Možnosti předávání studijních materiálů studentům tak byly značně omezeny, stejně jako i veškerá další komunikace s nimi mimo výuku. Jednotliví vyučující pak tuto situaci řešili „postaru“ tedy individuálně dle svých schopností a dostupných prostředků. Začal jsem tedy pátrat po nějakém systematičtějším způsobu a prostředku, jak tuto situaci řešit. Nejprve jsem zkoušel systémy, ne přímo určené pro výuku, jako například Microsoft SharePoint či DotNetNuke. Ty by sice pro samotné „předávání informací“ byly dostačující, avšak další e-learningové funkce by u nich byly značně problematické. Pozn.: Profesionálně vytvořená virtuální studijní prostředí jsou vybavena nástroji, které umožní plánovat a řídit průběh studia, připravit a prezentovat studijní materiály, komunikovat učiteli s jeho studenty a mezi studenty navzájem, zadávat úkoly a přijímat jejich řešení, aktivizovat studenty, monitorovat činnost studentů, průběžně prověřovat vědomosti studentů, evidovat studijní výsledky studentů, nastavit úroveň přístupových práv pro různé kategorie uživatelů apod. [3] Zaměřil jsem se tedy na již hotové LMS systémy. Vzhledem k omezeným finančním prostředkům školy tedy především na open-source či freeware projekty. Tady byla situace již o něco lepší, avšak i zde jsem u každého nalezl nějaký nedostatek či omezení, jež se mi zdálo, že bych dokázal vyřešit lépe. Čím více jsem tedy pronikal do problematiky e-learningových systémů, tím více jsem se ujišťoval v tom, že nejlepším řešením bude vytvořit vlastní systém, který bude inspirován pouze těmi nejlepšími specifiky těch ostatních. Jako programovací jazyk jsem zvolil ASP.NET C# a to hned z několika důvodů. Jednak pro šíři spektra možností, které skýtá, dále pro jeho „novost“ v této oblasti a zároveň vhodnost pro systémy tohoto rozsahu a druhu.
Struktura jádra LMS Jádro LMS obsahuje veškeré uživatelské i administrační nástroje, s pomocí nichž lze vytvářet a provozovat libovolný kurz. Patří mezi ně například přehled kurzů, rámec a navigace pro jednotlivé stránky kurzu, na které se následně umísťují moduly, autorizace a autentizace uživatelů, také administrace kurzů, období, uživatelů, uživatelských skupin, oprávnění, atd.
2.1 Kurzy Základním objektem tohoto, stejně jakož i většiny ostatních LMS, jsou kurzy. V případě LMS pro střední školy se jedná spíše o předměty, které se na škole vyučují, nicméně tento obecnější název umožňuje postihnout i případy, kdy škola v rámci projektů celoživotního vzdělávání pořádá rekvalifikační kurzy pro veřejnost, přičemž bude samozřejmě LMS využíván také. 2.1.1 Otevírání kurzů Kurzy jsou zde vytvářeny na dobu neurčitou, v podstatě s permanentním trváním. Časově je pak omezen pouze přístup studentům do těchto kurzů. Ty se totiž otevírají na určitá předdefinovaná období (např. školní rok) a pouze po dobu jejich trvání do nich mohou uživatelé vstupovat.
329
DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
Vzhledem k tomu, že členství uživatelů v uživatelských skupinách je také vždy nastaveno pouze na určité období, každý kurz má nastálo přidělené skupiny, jejichž uživatelé do něho mají přístup. Díky tomu lze určit například, že do kurzu Matematika pro 2. ročník má permanentní přístup uživatelská skupina 2. ročník, přičemž jejími členy budou v každém školním roce jiné osoby. Pro jednotlivá „otevření kurzů“ je samozřejmě možné přidávat výjimky a to jak uživatele, tak celé skupiny. Tyto výjimky mohou umožňovat výjimečný přístup do kurzu, nebo naopak tento přístup blokovat či poskytovat nebo rušit subjektu další nadstandardní oprávnění.
2.2 Administrace Jádro modulu poskytuje komfortní administrační nástroje pro správu celého systému. Kompletně řeší správu uživatelů a uživatelských skupin, definici období, vytváření a otevírání kurzů, nastavování oprávnění všem subjektům systému na veškeré jeho části atd. 2.2.1 Období Období definují určité časové úseky významné ve skutečném běhu školy. Jde tedy například o školní rok, dobu trvání některého z rekvalifikačních kurzů či školení a podobně. Tato období se mohou i překrývat. Na takto definovaná období se pak otevírají kurzy a nastavuje se uživatelům členství v uživatelských skupinách. 2.2.2 Uživatelské skupiny Uživatelské skupiny na dané období seskupují určité uživatele (například studenty téže třídy). Jeden uživatel pak samozřejmě může být členem více skupin. Jednotlivé uživatelské skupiny jsou hierarchicky uspořádány do stromové struktury, a to nejen z přehlednostního hlediska, ale také pro definici oprávnění. Pokud skupině „1. ročník“ zpřístupníme kurz „Dějepis“, tak všichni uživatelé všech jejích podskupin až do nejnižší úrovně budou mít do tohoto kurzu přístup. Jestliže poté tento přístup zakážeme skupině (třídě) „1OZ“, pak i celý její podstrom skupin bude mít přístup zamezen. Platí tedy vždy více specializovaná definice oprávnění. V případě, že je jeden uživatel členem více skupin s různě definovaným týmž oprávněním, zákaz má přednost před povolením. 2.2.3 Oprávnění Z hlediska oprávnění jsou zde především tři základní objekty: • kurzy, • stránky kurzů, • obsah na stránce kurzu (moduly).
Na každou z těchto částí lze jednotlivým uživatelům i celým uživatelským skupinám nastavovat oprávnění. Konkrétně v kurzu nastavujeme přístup a roli (administrátor, designér, vyučující a student), na jednotlivé stránky kurzu přístup či zákaz vstupu a oprávnění na individuální výskyty modulů v kurzu. Stránky kurzu mají hierarchickou strukturu a každý modul sám definuje určitou sadu oprávnění k funkčnostem, které poskytuje.
330
DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
Moduly Tento LMS je vytvořen striktně modulárně. Jádro systému je tedy pouze základem, který sám o sobě nemá téměř žádnou prezentační schopnost potřebnou pro předávání informací studentům. To zajišťují až jednotlivé moduly. Předem tedy neexistuje žádná vazba mezi jádrem systému a moduly, protože se počítá s tím, že jejich základní sada se bude do budoucna rozšiřovat. Každý modul pouze musí dodržovat určitá pravidla, implementovat jisté rozhraní a být zaregistrován v seznamu modulů. To zajistí funkce jádra pro přidávání modulů. Libovolný registrovaný modul může být použit na kterékoli stránce kurzu případně jen na její části.
3.1 Podpora vývoje modulů Jádro sytému, kromě mnoha výše popsaných nástrojů pro podporu tvorby, správy a provozu kurzů poskytuje i rozsáhlou podporu pro vývojáře, kteří tak mohou vytvářet další libovolné moduly. Tato podpora se skládá nejen s podrobné dokumentace a tutoriálů jak na to, ale i programových knihoven s nástroji, které celý tento proces potencionálním vývojářům velmi usnadní.
3.2 Zabezpečení Jak již bylo uvedeno, do systému bude možné přidat libovolný modul, ať již jeho vývojářem bude kdokoli. To sebou ovšem samozřejmě nese určitá bezpečnostní rizika, jelikož ne každý vývojář modulů musí mít vždy jen dobré úmysly, případně jen jeho kód nemusí být vždy zcela bezpečný. Z těchto důvodů bude zaveden certifikační systém. I přes něj bude samozřejmě možné nainstalovat libovolný modul, což bude například nezbytné pro vývojáře a samotvůrce při ladění (testování) modulů. Ovšem administrátor LMS, který jediný bude moci tento krok učinit, bude vždy důrazně varován, že se jedná o necertifikovaný a tudíž potencionálně nebezpečný modul a bude moci sám rozhodnout, zda má být instalace modulu i přes tuto skutečnost provedena či nikoli. Oproti tomu certifikované moduly při instalaci zobrazí pouze informaci o jejich prověření z bezpečnostního hlediska. Cerifikát bude v podstatě digitální podpis instalačního balíčku modulu, který bude vydávat centrální autorita po prověření zdrojových kódů a databázových skriptů každého modulu.
3.3 Současné a připravované moduly K jádru systému bude samozřejmě k dispozici i základní sada modulů. V současné době jsou k dispozici plně funkční dva: Text (pouze zobrazuje zadaný text, včetně případného HTML formátování) a Soubory ke stažení (umožňuje tvůrci kurzu nahrát na server různé soubory, případně pouze odkazy na externí zdroje, a studentům je stáhnout). Mezi připravované moduly patří tyto: Novinky, Odkazy, Obrázky, Diskusní fórum, Interní zprávy, Kalendář, Tabulka, Seznam doporučené literatury, Průvodce, Přehrávač videí, Zadávání úkolů a hodnocení, Testy, Klasifikace, Hlasování, Absence, Rozvrhy, Citáty a celá řada dalších.
Použité technologie 4.1 Programovací jazyk LMS je vyvíjen v technologii ASP.NET C#, což přináší spoustu výhod a několik málo nevýhod. K výhodám jistě patří obrovské možnosti, které tato technologie poskytuje, jako například zcela objektový přístup, možnosti komponentového řešení, podporu AJAXu, komfortní vývojářský nástroj Visual Studio a mnoho dalších.
331
DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
Nevýhodou je pak velmi omezený výběr web hostingů, kde by se takovýto systém dal umístit a provozovat, zvláště ve spojení s aktuálně použitým databázovým systémem.
4.2 Databáze Celý systém je vytvářen tak, aby dokázal pracovat s libovolným databázovým zdrojem. Veškerý kontakt z databází zajišťuje jedna třída, která využívá výhradně konfigurovatelného „factory“ přístupu k databázovým komponentám. Díky tomu je změna databázového systému teoreticky možná jen změnou jednoho slova v konfiguračním souboru. Samozřejmě za předpokladu, že pod novým DBS bude vytvořena databáze se stejnou strukturou, nebo jí bude přizpůsobena konfigurace O-R mapování. Konkrétním databázovým systémem, nad kterým je LMS vyvíjen a odlaďován, je FireBird.
Nasazování a provoz V době psaní tohoto článku je popisovaný LMS stále ve vývoji. Zároveň ovšem jeho první betaverze již běží ve zkušebním provozu. Jak je však zmíněno výše, vhodných webhostingů pro tuto technologii je bohužel v současné době jen poskromnu, a serverhosting se zatím pro provoz betaverze nevyplatí. Proto je systém zatím nasazen pouze na lokálním serveru školy a studenti k němu mohou přistupovat pouze z vnitřní sítě. Otevřen je zde prozatím pouze jeden kurz – Programování. Ten, jakožto vyučující tohoto předmětu, připravuji a tutoruji sám, a díky tomu získávám cennou zpětnou vazbu od uživatelů systému – studentů. Na základě toho mohu vývoj lépe přizpůsobovat jejich potřebám. V následující fázi dojde ke zpřístupnění systému dalším vyučujícím a s jejich pomocí z jedné strany k přípravě dalších kurzů a ze strany druhé k zdokonalování funkčnosti a uživatelské přívětivosti pro další skupinu uživatelů LMS – vyučujících. Již v této podobě si LMS získal u studentů značnou oblibu a ostrý provoz systému na internetu je napjatě očekáván, jakož i na zahájení kurzů z více předmětů. Stejně tak vyučující uvítají, až jednoduchou a uživatelsky přívětivou formou budou moci studentům zpřístupňovat studijní materiály, informace o studiu, komunikovat s nimi i mimo výuku a na další výhody nového LMS.
332
DIVAI 2008 – Dištančné vzdelávanie v Aplikovanej informatike
Literatura [1] Císař, P.: InterBase / FireBird Tvorba, administrace a programování databází, Brno: Computer press, 2003. ISBN: 80-7226-946-1. [2] MacDonald M.,; Szpuszta M.: ASP.NET 2.0 a C# - tvorba dynamických stránek profesionálně, Praha: Zoner Press, 2006. ISBN: 8086815382. [3] Milková, E.: E-learning: různé formy využití. Technológia vzdelávania, ročník XII, 5/2004, s. 15 -16. ISSN 1335-003X. [4] Robinson,S.; Allen, K., S.; Cornes, O.; Glynn, J.; Greenvoss, Z.; Harvey, .B.; Nagel, Ch.; Skinner, M.; Watson, K.: C# Programujeme profesionálně, Brno: Computer press, 2003. ISBN: 8025100855. [5] Sharp, J.: Microsoft Visual C# 2005 - Krok za krokem, Brno: Computer press, 2006. ISBN: 8025111563. Ing. Petr Voborník Univerzita Hradec Králové, Fakulta informatiky a managementu Katedra informatiky a kvantitativních metod Rokitanského 62, 500 03 Hradec Králové 3
[email protected]
333