Het gebruik van Apps Script in combinatie met een spreadsheet met meerdere sheets maakt het mogelijk om zowel tussenresultaten alsook het eindresultaat te bekijken.
Verder aanpassen van de scripts en sheet moeten de werking optimaliseren.
Door gebruik te maken van de standaard tools "sheet" en Apps Script, vervalt de noodzaak voor het maken van een volledige user interface en kan iedereen binnen bepaalde grenzen aanpassingen doen, zonder kennis van programmeren en HTML (via de template sheets).
De sheet wordt aangemaakt en bewaard op een "My drive", gekoppeld aan een specifieke instructeur, noodzakelijk omdat enkel de gegevens van zijn cursisten belangrijk zijn.
Zou de sheet aangemaakt worden op de shared drive, dan worden alle cursisten van alle instructeurs zichtbaar. (nog testen)
Hierdoor kan iedere instructeur zijn classrooms/cursisten beheren.
Het "delen" van cursisten wordt geregeld door het toegang verlenen aan een bepaalde classroom van een collega instructeur.
Bij ziekte of afwezigheid van een instructeur is zo de verderzetting van de opleiding volgens het afgesproken traject voor de cursist verzekerd.
Het proces wat in de achtergrond draait(crawler) en gegevens naar de firstore db schrijft heeft toegang nodig tot de Classroom services.
De externe bib voor toegang tot een Firestore via Apps script moet eveneens worden toegevoegd.
De Drive, Sheets en eventueel DriveActivity, Gmail services maken het mogelijk om gepersonaliseerde documenten aan te maken via apps script.
Het instellen van de koppeling met de FireStore gebeurt via het menu: Courses-info/Config Firestore connection.
Dit menu verwacht een link naar de credential file (JSON formaat gehaald uit de GCP console met serviceaccount credentials) en de gebruikte "collection" naam, waarin de quizzes worden bewaard.
De crawler functie voert een aantal taken uit in de achtergrond en wordt 2x per dag uitgevoerd.
Deze functie gebruikt de bewaarde Aliasses om een lijst op te bouwen van primaire gebruikers en hun aliasses.
De lijst wordt per instructeur bewaard (geupdate) in de Firestore/Studentlist en gebruikt om alle scores (zowel van het primaire als het alias adres) op te halen uit de classrooms waartoe de instructeur als docent rechten heeft.
Doordat dit een vrij intensief proces is, is de functie "gelocked" en kan dus slechts één maal tegelijk worden uitgevoerd.
Het proces wordt "time triggerd" gevoerd, maar kan ook manueel uitgevoerd worden via de menu, indien gewenst.
Houd er rekening mee dat dit ettelijke minuuten nodig heeft (>10min)
Het gebruik van Aliasses laat je toe om scores, gegegnereerd met andere email adressen, te combineren met de scores van een cursist binnen het domain.
Hierdoor kunnen "elders verworven competenties", zoals ten tijd van schoolse opleidingen, workshops, werknemers etc gerecupereerd worden.
Vermits het aanvullen van de "AliasEmails" lijst ad-hoc kan gebeuren door iedere instructeur, kan het zijn dat jij niet op de hoogte bent van reeds gemaakte koppelingen, vandaar dat de reeds bestaande aliasses worden gehaald uit de FS.
Heb je een nieuwe alias verkregen van een cursist, dan voeg je deze toe aan de sheet en schrijf de geupdate versie weg naar de FS. mbv Courses-info/Write Aliasses
Hierdoor wordt eveneens de studentlist geupdate, waarna je terug queries kan uitvoeren op de gegevens.
Het ophalen van alle gegeven van een bepaalde cursist gebeurt dmv queries op de FS database.
Het kiezen van een bepaalde student doe je door de drop-down lijst te gebruiken in de cel G1 in de "Grade" sheet.
De lijst is opgebouwd uit de "primaire adressen" van de studenten in je classrooms en wordt, samen met je Aliasses gebruikt om alle sores van een cusist op te halen.
In het bovenstaand voorbeeld zie je dat de cursist Bart Vermeire, met primair adres bart.vermeire@vdabcampus.be, een fictieve alias heeft enis.avdija@vdabcampus.be (mag dus een ander email adres zijn, zelfs buiten het domain).
Hierdoor worden in de Grade sheet beide scores getoond.
Je ziet hier (bewust gekozen als test) dat voor één item binnen een classroom er twee scores bestaan (primair en alias).
In de uiteindelijke rapportering wordt de maximale score gehaald uit een set van identieke items.
Hieruit blijkt dat het coördineren van de naamgeving in classrooms voor opdrachten die "Vlaanderen breedt" dienen te gebeuren, belangrijk is, zodat de scores/opleiding die elders reeds gebeurt zijn, kunnen gerecupereerd worden in het Technisch Pedagogisch dossier.
Het vertrekken vanuit een "modelklas" voor de evaluatiemomenten is daarom belangrijk (vb de bevoegdheden, eindevaluaties modules etc), ook wanneer het over "partner opleidingen" zou gaan.
Organisatorische inspanningen zijn hier vereist.
De items van CourseName/QuizName en CoursworkTitle/Quizresponse kunnen een link zijn naar de betreffende onderwerpen.
Vermits iedere classroom/courswork een eigen unieke ID heeft, ook als deze gecopieerd is, kan je voor identieke namen, toch verschillende linken hebben.
Via deze weg kan je acterhalen in welke classroom/item de opdracht heeft plaats gevonden en gescoord is.
Echter, vermits jij "alle scores" ziet, wil dit niet zeggen dat je ook toegang hebt tot alle courseWork items.
Het is daarom best mogelijk dat het klikken op de link resulteerd in een "no access", wat neer komt op een score die in een andere opleiding behaald is, een opleiding waar jij geen toegangsrechten toe hebt.
Het rapport wordt gegenereerd aan de hand van een template (zie subpagina) en de Grade sheet.
De naamgeving van de items in het rapport wordt nadien gebruikt om de automatische generatie van competenties te definiëren.
Door specifieke aggregaat regels kan je het rappoprt gebruiken voor opvolging van een cursist (traject opleiding).
Verdere automatisatie (sturen emails etc) wordt nog voorzien.