e-learning rendszer fejlesztése

11
E-learning rendszer fejlesztése Oltványi Gábor József diplomaterv bemutató Konzulens: Jaskó Szilárd 2012.07.04., PPKE-ITK Elektronikus oktatás szakirányú továbbképzés

Upload: callum-gill

Post on 30-Dec-2015

30 views

Category:

Documents


1 download

DESCRIPTION

E-learning rendszer fejlesztése. Oltványi Gábor József diplomaterv bemutató Konzulens: Jaskó Szilárd 2012.07.04 ., PPKE-ITK Elektronikus oktatás szakirányú továbbképzés. Feladatkiírás. 1. „Egy tetszőlegesen választott e-learning rendszer továbbfejlesztése”. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: E-learning rendszer fejlesztése

E-learning rendszer fejlesztése

Oltványi Gábor Józsefdiplomaterv bemutatóKonzulens: Jaskó Szilárd2012.07.04., PPKE-ITKElektronikus oktatás szakirányú továbbképzés

Page 2: E-learning rendszer fejlesztése

2

Válasszon egy létező (nyílt forráskódú) e-learning rendszert!

Ismerkedjen meg az alapelveivel, a benne használt technológiákkal (programkód, adatbázis)!

Üzemeltesse a rendszert a saját gépén vagy egy szerveren!

Nézzen utána a rendszer eddigi fejlesztésének! Pl. fejlesztői közösség, fő verziók, verziókövető rendszer.

Részletezze, hogyan támogatja a SCORM szabványt az adott e-learning rendszer!

Egy tetszőleges modult fejlesszen tovább – az elektronikus oktatás szemszögéből hasznos módon!

Esetleg fogadtassa el változtatását a fejlesztő szervezettel!

Feladatkiírás1.„Egy tetszőlegesen választott

e-learning rendszer továbbfejlesztése”

Page 3: E-learning rendszer fejlesztése

3

Távoktatás, elektronikus oktatás, e-learning,LMS, CMS, LCMS, VLE, Virtual School

Tanulásigény (LLL), képzésigény (cégek) Szereplők: rendszergazda, adminisztrátor,

oktatásszervező, tananyagfejlesztő, kurzuskészítő, oktató, hallgató

Egységesítés => szabványok, pl. SCORM Újrafelhasználhatóság => LO-k: Képzés, kurzus,

tanóra/teszt, oldal, média-elem Előzmények/egyéb E-learning rendszerek:

› Oktatásban: ingyenes (WebCT, Atutor, Moodle)

› Cégeknél: IT-multik (Oracle, iLearning, IBM L.Space)

Előzmények/Moodle fejlesztéséről› jól dokumentált: moodle.org

Fogalmak, előzmények2.

Page 4: E-learning rendszer fejlesztése

4

Szoftver (LMS/CMS/VLE); Moodle Pty Ltd.; Moodle Partner hálózat; Moodle Community (moodle.org)

Modular Object-Oriented DynamicLearning Environment

Felhasználók (e-learning szerepek szerint), kurzusok, tanórák, tesztek, hallgatók előrehaladásának nyomonkövetése, chat, címkék, wiki, fórumok, hírek, belső levelezés, értesítők, kérdőívek, stb…

Technológiai alapok:› nyílt forráskódú, ingyenes, PHP-alapú keretrendszer

› Keretrendszer: PHP (kódkönyvtár + adatkönyvtár – moduláris!)

› Adatbázis: választható (MySQL, PostgreSQL, MSSQL, Oracle, SQLite)

› JavaScript: YUI, de elvileg JS nélkül is futnia kell, modularitás!

› Verziókövetés: git (verzió-branch-ek…)

3.

Page 5: E-learning rendszer fejlesztése

5

1999, Martin Dougiamas, 2002: 1.0, 2012: 2.3.

főverzió/major/release, alverzió/minor; stable/unstable, alpha, beta, RC, heti release-ek

SCORM anyagot nem lehet létrehozni a Moodle-ben, de importálni és megjeleníteni lehet, vannak letölthető demó SCORM-anyagok is a Moodle egyik oldalán.

Kurzus, szerkesztési mód Tananyag hozzáadása SCORM-csomag => egy link jelenik meg a kurzusunkban

Példa: egy teszt csomag, médiaelemekkel tarkítva…

Verziók és SCORM4.

Page 6: E-learning rendszer fejlesztése

6

Fejlesztői modell,telepítés és üzemeltetés5.

Cél:› elérni a Moodle legújabb frissítéseit

› egy „éles” és egy „teszt” Moodle rendszert üzemeltetni

› Ide saját módosításokat is fejleszteni – a saját gépünkről – esetleg egy kolléga is tudjon hasonlóan fejleszteni.

Telepítés:› Szerver-oldal: apache, php, mysql, git

moodle.git klónozása saját „origin”, éles és teszt környezetek létrehozása újabb klónozással

üres adatbázis létrehozása, moodle-telepítés követése

› Fejlesztői gépen (lehet akár Windows is!): EasyPHP – phpMyAdmin, adatbázis dump, local alias

git – klón a szerverünkről, moodle: config.php

Üzemeltetés, karbantartás, frissítés, saját fejlesztések: › git remote update, git pull, …, git checkout, git commit, git

push, git rebase/merge

  OfficialMoodlegit repo

(git://git.moodle.org/

moodle.git)

OfficialMoodlegit repo

(git://git.moodle.org/

moodle.git)

OurServerOurServerOur Moodle

git repo origin

Our Moodlegit repo origin

Our Moodle site(moodle.ourserver.com)

Our Moodle site(moodle.ourserver.com) Moodle

test site

Moodle test site

MyMachineMyMachine

My Moodledev git repo

My Moodledev git repo

OtherMachineOtherMachine

OtherMoodledev git repo

OtherMoodledev git repo

http://gabrosz.szentjanosbogar.hu/mdl2/

Page 7: E-learning rendszer fejlesztése

7

Tracker: a Moodle teendő-listája, feladatok: „issue”-k. Projektek:› Moodle; Community Sites; Mobile;› QA; Testing; Non-core contributed modules

Kontribúció: közreműködés a Moodle fejlesztésében› Ehhez meg kell felelni a „coding standards”-nek› Fő verzióhoz „Moodle” projekt-beli issue-nak kell lennie, a sajátok a

„contrib”-ba mennek, ami a bővítménykönyvtárban jelenik meg (plugins)› Saját github létrehozása, issue a Trackerben (contrib + QA/Test),

dokumentáció, fórumtémák. A Moodle bővítése: pluginok (komponensek, bővítmények)

› docs.moodle.org/dev/Plugins, meglévők: moodle.org/plugins Egy komponens:

› modularitás => adott mappa almappája› meghatározott elnevezések, kötelező fájlok, osztály-öröklődés

pl.: /blocks/conversations/ versions.php, (edit_form.php), blocks_conversations.php, lang/en/block_conversations.php

› class block_conversations extends block_base { …

Tracker, kontribúció, fejleszthető komponensek6.

Page 8: E-learning rendszer fejlesztése

8

PHP:› config.php vs. install.php; lib/setup.php, lib/…› osztály-öröklődés modulonként› business logic és a template nem különül el… › régi, elavulós PHP-s stílus fellelhető (var, global)

Adatbázis:› nincs objektum-relációs leképezés (ORM)

(=> adatbázis-szerver függő is lehet a lekérdezés)› nagyjából logikus, de van redundancia…

JavaScript:› YUI ~ nem használtam, helyette jQueryt…› a YUI gyorsabb, könnyebb súlyú, és modulárisabb, szigorúbb

elvekkel, a jQueryt gyorsan lehet fejleszteni Fejlesztőeszközök:

› Linux/Windows?, Virtualbox ? Eclipse/Netbeans?; Notepad++› EasyPHP phpMyAdmin/MySQL WorkBrench; PuTTY› git – GitK, GitGUI, Git Bash (~linux shell), KDiff3› böngészők: Firefox, Chrome, + fejlesztésre: Inspector-ok, FireBug

Fejlesztői megjegyzések7.

Page 9: E-learning rendszer fejlesztése

9

Conversations Block8.

Ötlet, motiváció:› interaktív, felhasználóbarát, intelligens kommunikációs felület

(chat+messaging)› nincs még hasonló plugin

Specifikáció:› block+modul integrált chat és levelezéssel, auto-frissítés,

paraméterezhetőség› listázás: online felhasználók (vagy egyéb szűrés) – rájuk kattintva cset vagy

levél-oldal› üzenetlistázás: felhasználónként, önfrissülő› új üzenet jelzése, olvasatlan-számláló, stb.

Implementáció:› egy központi AJAX-hívásra épül,› aminek egy paraméter-listjától függő funkciók hajtódnak végre – szerver- és

kliens-oldalon is egy-egy „handle” függvény kontrollálásával.› listák betöltése: késleltetve, utána már csak frissítés› levélfolyam: korábbiak betöltése csak kérésre

Publikáció / hátra van:› a modul – csak a blokkon dolgoztam eddig› blokk funkciók, pl. chat egyesítése, chat elérhetőség› jQuery helyett YUI› fordítások

Page 10: E-learning rendszer fejlesztése

10

Demó9.

Page 11: E-learning rendszer fejlesztése

E-learning rendszerek alapfogalmai Moodle vizsgálata

› fejlesztésre alkalmas telepítési és üzemeltetetési modell és ennek kivitelezése

› SCORM: megjeleníthető, de nem fejleszthető

› fejlesztői közösség, verziók, tracker (feladattár), kontribúció feltételei

› fejleszthető bővítmények, bővítménytár

Conversations block: saját fejlesztés› ötlet, specifikáció, elkészült részek és tervek

11

10. Összefoglalás