Met behulp van de Firestore database(via apps script, beperkt command set), de app QuizToFirestore en de gegevens uit de classrooms, kan een rapport worden opgesteld van een cursist over alle opleidingen heen.
De Firestore db, zorgt voor het doorgeefluik, zodat niet alle classrooms toegankelijk moeten zijn voor de report generator.
Tevens wordt zo alle data bewaard voor koppelingen naar externe tools.
De gegevens die bewaard worden in de Firestore zijn:
Studentlist, geeft de lijst van studenten weer van een bepaalde instructeur.
Deze lijst wordt bepaald aan de hand van de classrooms waarin de betrokken instructeur "docent" is.
Van deze classrooms worden alle gebruikers aanzien als studenten van de betrokken instructeur.
Aliasses, dienen om alle gegevens van een specifiek persoon samen te brengen tot één geheel, ook wanneer de betrokken persoon verschillende email adressen heeft gebruikt.
Het "master email" adres is dit van het domain, de andere adressen zijn aliassen.
Scores herrekend naar 100% van alle quizzes, gekoppeld aan de app QuizToFirestore.
Door gebruik te maken van een "collection", hier als voorbeeld de collection "HAREC", kan je scores samen brengen voor een specifiek doel, waardoor één Firestore database kan gebruikt worden, voor verschillende groepen.
Hierbij is het belangrijk de overweging te maken hoe en of je de collections splitst.
Wanneer alle quizzes verwijzen naar dezelfde collection, kan je alle behaalde scores opvragen en de competenties gebruiken voor een specifieke match.
Hierdoor kan je elders verworven competenties recupereren.
Classroomscore, geeft voor ieder item in een classroom dat gescoord is(assignedGrade) een document met een aantal gegevens (op 100% score instellen)
De naam van het document wordt gevormd door het studentEmail en de CoursworkID, die beide uniek zijn.
De studentEmail wordt nadien gebruikt om alle scores van een bepaalde student (of zijn alias) te zoeken in de database.
De data wordt vergaard met behulp van verschillende tools.
QuizToFirestore, is de app die zorgt voor het schrijven van de scores van een quiz naar de Firestore database, in een formaat dat wij nadien kunnen gebruiken voor het zoeken van de scores van een bepaalde gebruiker.
Iedereen die een quiz maakt, kan de app gebruiken om de data naar een bepaalde collection te sturen.
Het is belangrijk om, minstens binnen een bepaalde opleiding, afpraken te maken over welke "collection" naam er gebruikt wordt, zodat alle gerelateerde scores hierin terecht komen.
Hierdoor worden "composite indexes" vermeden, iets wat extra server tijd kost en manueel moet worden opgezet.
De persoon die het script koppeld aan een bepaalde score sheet van een quiz, moet ook toegang hebben tot de JSON credetial file van de Firestore.
Eens de setup gebeurt is, blijft deze koppeling behouden voor dit specifiek document.
Op deze wijze kan een administrator de configuratie doen, zonder de credentials vrij te geven.
Voor verschillende vakgroepen kunnen verschillende administrators allemaal toegang hebben tot dezelfde credential file en gebruik maken van dezelfde "collection" naam (vb: industrie)
Courses-info/crawler, is de code die gebruikt wordt om alle data uit de classrooms te halen en deze in de firestore db te bewaren.
Deze tool is "per instructeur" te gebruiken, daar enkel de gevens van zijn cursisten worden gebruikt.
Het opzoeken en bewaren gebeurt 2x per dag, daar de tijd die hiervoor nodig is, vrij lang is. (>350 sec).
Wat bewaard wordt is de "studentlist" per instructeur en alle scores van coursworkId's van alle studenten in zijn classroom.
Aliasses, kunnen door iedere instructeur worden aangemaakt of aangevuld en worden gebruikt om alle scores van zijn cursisten te raadplegen.
Zo kan een instructeur achterhalen, wat een collega reeds wist over mogelijke aliasses en kan deze lijst aanvullen, zodat ze ook voor collega's beschikbaar wordt.
De actie voor het updaten van de aliasses gebeurt manueel door een instructeur die de alias heeft aangepast.