Untitled 1

Embed Size (px)

DESCRIPTION

vježbe

Citation preview


KRATAK OPIS INTERNET APLIKACIJE ZA TESTIRANJE STUDENATAautor Ivan akoti za prof. ipka PeruNe bih govorio o prednostima softvera koji danas nastaje osim, da praktino sve ono to softver uradi za nas, moe se uraditi i bez njega, ali poreenje: brzine, tanosti, lakoe, cene, lepote i nivoa rada; nesumnjivo pokazuje veliinu i njegovu blagodet.Danas se Internet testiranje sve vie uvodi kao deo edukativnog procesa u organizacijama, kolama ali i kao verifikacija znanja prilikom zapoljavanja. Ono se koristi u testovima znanja, testovima inteligencije, raznim istraivanjima i generalno, svugde gde se sam proces procene moe automatizovati.Internet testiranje se koristi i kao deo procesa uenja na daljinu (eng.e-learning). Uenje na daljinu se koristi za prenoenje znanja strunjaka na mesta na kojima nije fiziki prisutan, naroito u zemljama koje su slabo naseljene.Ovo testiranje donosi mnoge prednosti, ali trebamo biti svesni i nedostataka. Prednosti su ubrzanje sastavljanja testa, ubrzanje ispitivanja, vea tehnika preciznost ocenjivanja, jednostavna i brza analiza rezultata jednog ili grupe ispitanika. Prednost Internet ispitivanja je i mogunost praenja kvaliteta ispitnih zadataka, tj. moe se videti po uzorku ispitanika koji zadaci su koliko i kako reavani, te na temelju tih podataka oni se u sledeem ispitu mogu ili promeniti ili izbaciti iz ispita.Nedostatak je nepreciznost ocenjivanja slobodno pisanih odgovora (eseja), kao i ogromna zavisnostpostupka ispitivanja, odn. kvaliteta testa od onoga ko sastavlja test (prilikom sastavljanja testa treba precizno odrediti podruje ispitivanja, vreme potrebno za svaki odgovor ili ukupno vreme pisanja testa, i kakva vrsta pitanja e biti koriena za svaki zadatak).Danas postoje mnoge aplikacije koje omoguavaju proveru znanja putem Interneta i praenje rezultata ispitanika. Internet testiranje pomae u usavravanju znanja generiui izvetaje pomou kojih se moe precizno odrediti koje oblasti zahtevaju dodatnu edukaciju ispitanika. Ono ima ogromnu ulogu i u procesu traenja posla sa verifikacijom znanja. Kako postoje razliite metode uenja koje variraju od fakulteta do fakulteta, a posebno od drave do drave ne moe se precizno prosuditi znanje pojedinca samo na temelju diplome. U stvarno znanje ulazi i samouenje. Zato se prilikom zapoljavanja moe precizno proveriti znanje upravo jednom ovakvom aplikacijom.Zbog svega ovoga, moj izbor je upravo bio realizacija Internet aplikacije koja radi nad bazom podataka za testiranje studenata. Ona predstavlja jednu od prvih aplikacija ovog tipa na naem podneblju, a nadam se da e biti i jedna od korisnih softverskih alatki i primer primene novih raunarskih tehnologija u edukativne svrhe. Sem to prua mogunost provere znanja iz pojedinih predmeta i njihovih oblasti ona detaljno prikazuje i ima mogunost objanjavanja svih uinjenih greaka. Time ima dvojaku ulogu, jednu u pripremi studenata za polaganje pojedinih ispita, a drugu kao mnogo vaniju, navikavanje na novi vid provere znanja koja e verujem biti sve prisutnija.Budunost jedne ovakve aplikacije je verovatno u njenoj razgradnji do onog nivoa kada e ona obuhvatati sve vidove ispitnih zadataka, a samim tim davati slobodu svakog studenta da polae ispit i odmah po polaganju dobije detaljne rezultate uz minimalno angaovanje profesora. Raunari omoguavaju unos svih tipova zadataka koje postoje na papiru, ali ne i automatsko ocenjivanje njihove tanosti. Iz tog razloga u ovom radu je realizovana Internet aplikacija za testiranje studenata koja podrava sledee tipove ispitnih zadataka:4Istinito/Neistinito najednostavniji tip zadatka koji nije preporuljiv za proveru znanja, zato jer daje 50% mogunosti za sluajan izbor tanog odgovora4Viestruki izbor jedan odgovor ovaj tip zadatka je slian prethodnom, sa tom razlikom da je ovde ponueno vie odgovora, a postoji samo jedan taan odgovor. Ovaj tip zadatka se esto koristi na ovakvim ispitima znanja, jer daje relativno dobar odnos izmeu traenog znanja i jednostavnosti i brzine odgovaranja za ispitanika. Obino se nudi od 4 do 5 moguih odgovora, to daje 20% do 25% mogunosti sluajnog izbora tanog odgovora.4Viestruki izbor viestruki odgovor tip zadatka koji zahteva vie tanih odgovora na postavljeni zadatak i jo je jedan est tip zadatka koji se pojavljuje na ispitima. U ovom tipu zadatka poeljno je naglasiti da se trai vie tanih odgovora.Izabrani tipovi upravo daju potpunu automatizaciju generisanja testova iz izabranih predmeta i oblasti, a po zavretku detaljan rezultat. Pitanja i odgovori se generiu po principu sluajnog izbora u trenutku vremena tako da svaki student dobija razliit raspored pitanja i odgovora, ime se umanjuje njegova mogunost sluajnog pogodka tanog odgovora. Ovo naroito ima efekta ukoliko je student pripremajui ispit ve reavao taj zadatak.Da budem precizniji naveu vrste pitanja koje postoje: Istinito/Neistinito, Viestruki izbor-jedan odgovor, Viestruki izbor-viestruki odgovor, Umetanje izraza (gde se zahteva od ispitanika da slobodno upie odgovor), Viestruko umetanje odgovora (slian prethodno navedenom, s tom razlikom da se sad umesto jednog izraza moe uneti vie njih), Viestruko umetanje izraza po redosledu (tip zadatka koji za razliku od prethodnog insistira na vanosti redosleda odgovora) kao i hibridni tip zadatka (koji se sastoji od kombinacije bilo kojih od gore navedenih tipova zadataka).Ova aplikacija koristi metodu ispitivanja koja omoguava jedan ili vie tanih odgovora na pitanje, a svako pitanje moe imati neogranien broj odgovora. Za njenu podrku ostalim tipovima zadataka bilo bi potrebno uvesti dodatne relacije. Npr., kod umetanja izraza ispitanik slobodno upisuje tekst odgovora. Ovaj tip zadatka se koristi za upisivanje matematikih izraza, formula i programskih naredbi. On dakako ima prednost u tome to ne nudi mogua reenja ispitaniku pa samim tim daje kreativniju i kvalitetniju proveru znanja. U njemu se moe traiti upis jednog ili vie odgovora pri emu se odgovorom smatra jedan ili svi uneseni izrazi. Kako bi se postigla vea pravednost u ocenjivanju prilikom leksike greke ispitanika, izrazi se smatraju tanim i ako je veina znakova tana ili ako je pravilan redosled veine znakova u izrazu. U ovom tipu zadatka, dakle, moe se koristiti leksika, sintaksna i semantika analiza, odn. vetaka inteligencija, ali to ozbiljno komplikuje postupak ocenjivanja, odn izraunavanja rezultata, te je stoga jasno zato ovaj tip zadatka nije ukljuen u ovu aplikaciju, pa ostaje kao mogunost dorade.Mnogo vaniji nedostatak aplikacije je nemogunost specificiranja tipa odgovora. Ne moe se rei da li se eli, da se izabere samo jedan taan odgovor ili vie tanih odgovora. Da bi se ova mogunost implementirala potrebno bi bilo generisanje posebne forme za svaki tip pitanja. Budui da je veina ovakvih testova napravljena tako da se izabere jedan ili vie tanih odgovora ova aplikacija je dobra za veinu klasinih primena. Ostavljena je mogunost masteru aplikacije(profesoru) da li e ili nee specificirati ovaj podatak u samom tekstu zadatka.Jedno od nedostataka ove aplikacije, svesno uraen prilikom realizacije, je nemogunost umetanja slika u pitanja i odgovore. Ona ne bi neto znaajnije zakomplikovala aplikaciju ni samu bazu, ali kao autor aplikacije umetanje slika nisam smatrao neophodnim za razreavanje.Meutim, ovo moe vrlo lako da se implementira u samu aplikaciju ukoliko se smatra neophodnim kod primene.Generisanje testa aplikacije je bilo osmiljeno na sledei nain. Prvo se postavljaju parametri: predmet i oblasti datog predmeta (oni su u stvari izbor studenta). Time je definisan broj pitanja testa (koji sam master aplikacije odn. predmetni profesor upisuje prilikom upisa predmeta u bazu), kao i ukupan broj pitanja koji postoji u bazi za izabrane oblasti izabranog predmeta (takoe zavisan od mastera aplikacije odn. od predmetnog profesora, ali ne u smislu eksplicitnog broja). Nakon toga se kree na generisanje pitanja i odgovora. Pitanja se generiu po sluajnom izboru i redosledu koji zavisi od trenutka kada student odabere opciju poetka testa. Ovo prua generisanje razliitog testa sa razliitim redosledom pitanja svaki put kada se isti predmet odabere. Prilikom prikazivanja pojedinog pitanja generiu se odgovori tog pitanja po sluajnom redosledu i on takoe zavisi od trenutka kada student pree na to pitanje po prvi put. Pitanja i odgovori se upisuju u bazu po potvrivanju studenta da je zavrio test.Prednost ovakvog generisanja testa je u tome to student na svako pitanje moe odgovoriti sa vie oznaenih odgovora, i to se tokom testa moe vraati na ve odgovorena pitanja i ispravljati odgovor (to daje dovoljnu fleksibilnost i komoditet studentu tokom samog testiranja), a da pri svemu tome ne utiemo na sadraj baze podataka. Student kao pojedinac ne moe da zapone novi test dok nije zavrio ili prekinuo prethodno zapoeti i spreen je da dvaput upie isti test u bazu (prethodno reeno je ustvari ono to treba da obezbedi softverski deo aplikacije koji je neophodno da isprati sve zahteve generisanja testa), to takoe predstavlja prednost, jer se uva integritet baze podataka i ona je samim tim osloboena od ponovljenih n-torki.Nedostatak ovakvog generisanja testa je to nije mogue umesto sluajnog izbora pitanja, eksplicitno odrediti redosled i koja pitanja ulaze u dotini test. Jo jedan od nedostataka je u tome to sam test nije ogranienog vremenskog trajanja. To vreme je neogranieno u sluaju samostalne izrade pojedinih testova, ali moe biti ogranieno ukoliko se student testira pod nadzorom. Meutim, vremensko ogranienje moe vrlo lako da se implementira u samu aplikaciju ukoliko se smatra neophodnim kod primene.Generisanje izvetaja o rezultatima testa je ustvari i najkompleksniji deo aplikacije, jer ne samo to treba prikazati broj bodova dobijenih na testu, ve treba prikazati odgovore studenta, tane odgovore, kao i dobijene bodove za svako pitanje uz, opciono, objanjenje pitanja ukoliko ono postoji u bazi. Kako ova aplikacija daje mogunost da pitanje ima vie nego jedan taan odgovor, to znai i da parcijalno reenje treba da dobije pravilan deo od ukupnog broja bodova koje to pitanje nosi. Ako student ne zna odgovor na pitanje, mogao bi oznaiti sve odgovore i dobiti barem deo bodova. Zbog toga prilikom generisanja izvetaja treba da detektujemo broj odgovora na pitanje i ako je taj broj vei od broja tanih odgovora na to pitanje studentu treba dodeliti nula bodova. Prilikom pregleda izvetaja za svako pitanje se ispisuje ispravan odgovor, ali i odgovori koje je ispitanik dao. Tako se omoguava uenje na grekama, to obezbeuje jednu od najlepih i najbitnijih prednosti same aplikacije.Kako se u poslednje vreme pojamInternet aplikacijakoristi da bi opisao prezentaciju koju karakterie bilo kakav aktivni sadraj, ukazuje se potreba da se ovaj pojam preciznije definie. Radi se o aplikaciji koja je pisana na jednom od programskih jezika i koja se nalazi na serveru. Ona za procesiranje zahteva upuenih iz itaa (eng.browser) od strane korisnika koristi kd pisan na programskom jeziku, a za prezentaciju HTML kd. Tako da ukoliko korisnik pogleda izvorni kd strane, na njoj nema ni traga od koda pisanog programskim jezikom, poto se on procesira na serveru, a njemu se samo alje rezultirajui HTML. Iz ovog razloga bih napomenuo da sam pri izradi same aplikacije razdvojio posao razvoja Internet strane (koji formatira pristigle podatke, prua kontrole navigacije i ini ugoaj za korisnikove oi) od aplikativnog dela koji o Internet dizajnu ne mora da zna nita, a koji ini srce i pokreta same aplikacije.Takoe, bio sam svestan da je korienje Interneta za predstavljanje i prikupljanje podataka preraslo u velikoj meri jednostavan prikaz stranice. Odavno su proli dani kada su projektanti, iji je zadatak bio da prikau stavke kolekcije, pravili zasebnu stranu za stavku. Takve stranice bilo je u poetku teko organizovati, a skoro nemogue due vreme odravati aurnim.Obim i struktura podataka predstavljenih na Internetu sve vie nalae njihovo pohranjivanje i organizovanje u baze podataka. Upravo ova injenica mi je olakala razvoj aplikacije, jer svaka Internet lokacija (ili njen deo), koja predstavlja informacije o kolekciji slinih stavki (u mom sluaju studenata, pitanja, odgovora, testova, rezultata), kandidat je za korienje baze podataka. Iz tih razloga jedan od glavnih zadataka ovog rada bilo je kreiranje baze podataka koja slui potrebama ove aplikacije.U nastavku u navesti spisak tehnologija koje su primenjivane prilikom izrade ove Internet aplikacije koja radi nad bazom podataka sa kratkim osvrtom na svaku od njih, jer o svim tim temama postoji dosta dokumentacije, ije se poznavanje naalost ne moe izloiti u jednom ovako kratkom prikazu:4HTMLi pored svojih mnogobrojnih ogranienja,Hypertext Markup Languageostaje fundamentalna tehnologija za kontrolu strukture i izgleda pojedinih Internet stranica. Meutim, kao osnovni jezik za izradu Internet strana i skript programi koji se izvravaju na raunaru klijenta sami po sebi nisu dovoljni. Potrebni su skriptovi na serverskoj strani. HTML stranice iJavaScriptprogrami mogu da budu efektni, ali pate od statinosti: bez obzira na animaciju i specijalne efekte, stranice su onakve kakve ih je autor generisao i ne mogu sesame od sebemenjati. Te stranice vide na isti nain svi oni koji im pristupaju, dok se dinamiki sadraji generiu prema smernicama autora, ali i na osnovu podataka koji pristiu od klijenta i/ili podataka do kojih server doe na neki drugi nain. Dinamiki generisani sadraji su preduslov za razne primene Interneta, meu kojima i jedno mesto zauzima ova Internet aplikacija za testiranje studenata koja radi nad bazom podataka.4Microsoft Activ Server Pages (ASP)jeMicrosoft-ova tehnologija (Microsoftje isporuuje sa svim svojim Web serverima) koja omoguava efiksnu izradu dinamikih Internet stranica i kompleksnih Internet aplikacija kao to je ova. Dakle, ona obezbeuje realizaciju skriptova na serverskoj strani. Kada posetilac na Internetu zatrai stranicu koja sadri te skriptove, skript nadopunjuje stranicu pre nego to ona napusti server. Najjednostavniji oblik interakcije sa korisnikom kroz aktivne stranice svodi se na prikupljanje podataka pomou HTML obrazaca i prilagoenje Internet stranice tim podacima. Jedna od najeih poslova koje obezbeuje ASP jeste upravo pristup bazama podataka tako da je jedan od zadataka pri izradi ove aplikacije detaljna upotreba ove tehnologije.4Microsoft Visual Basic Scripting Edition (VBScript)programski jezik izabran zaActive Server Pages. ASP je tehnologija koja vam omoguava da sami izaberete sintaksu koju ete koristiti, uz postojanje odgovarajueg mehanizma (eng.engine). U startu su obezbeeni mehanizmi zaJScriptiVBScript, a mogue je naknadno dodati mehanizme i recimo za PERL, REXX iliPython. U ovoj aplikaciji sam koristio upravoVBScriptdelom zbog linih sklonosti, a delom zato to se, ako je verovati statistikama, za njega opredeljuje najvei broj ASP programera.4Dizajn baze podataka i primena. Prvi korak u korienju baze podataka je projektovanje njenih tabela i polja. Drugi korak je implementiranje ove strukture pomou softvera za upravljanje bazama podataka. Trei i etvrti korak su dodavanje podataka i pravljenje upita nad podacima, to je u potpunosti u zavisnosti sa prva dva koraka.4Microsoft ActiveX Data ObjectsPristupanje bazi podataka iz programskog jezika oigledno zahteva neki oblik softverskog interfejsa.Microsoft Webserveri pruaju takav interfejs ActivX Data Objects (ADO). U skladu sa izvorom podataka kome se pristupa, ADO obezbeuje iroku ponudu objekata, metoda i svojstava. Otvaranje baze podataka i itanje zapisa sastoji se iz sledeih koraka: pravljenje primeraka (aktivnih kopija) potrebnih ADO objekata, postavljanje njihovih svojstava, pozivanje njihovih metoda i prihvatanje rezultata. Ovaj interfejs predstavlja standard prilagoen COM objektnom modelu tako da on predstavlja celinu meu svim interfejsima.4Struktuirani upitni jezikpraktino svi sistemi za upravljanje bazama podataka prihvataju komande iz aplikacija u formatu nazvanom SQL (eng.Structured Query Language).Accesskao izabrani softver za upravljanje bazom podataka ove aplikacije nije izuzetak. ADO prihvata SQL komande iz kda aplikacije i alje ih softveru za upravljanje bazama podataka koji ih izvrava. Mnoge Internet stranice koje pristupaju bazi podataka formiraju svoje SQL naredbe, ukljuujui esto opcije ili vrednosti za pretraivanje odreene od strane Internet posetioca