Nuvarande systemarkitektur

Det nuvarande systemet för kursprov fungerar bra. Det har använts med framgång i fyra elektroniska studentprov och över yli 23 000 kursprov med cirka 360 000 givna provsvar. Det har avlagts prov på nästan 2 000 enhetsmodeller med detta system.

Det nuvarande elektroniska studentprovet ordnas i ett slutet lokalt nät på gymnasiet. I nätet finns två servrar. Den egentliga servern delar ut provuppgifterna och sparar svaren med programsystemet node.js och databasen PostgreSQL. Reservservern replikerar hårdskivan på den egentliga servern med DRBD. Vid behov är det möjligt att omstarta reservservern som egentlig server. Servrarna startas via en USB-sticka med Linux DigabiOS på Debian 8 Live.

Examinandens svar och filer överförs till provlokalens server varifrån de kopieras till reservservern. På så sätt finns examinandens provprestationer hela tiden på två olika lagringsmedier. Versioner av examinandens provsvar sparas också på USB-minnet i examinandens dator.

Orsaker till valet av ett slutet offline-nät är bland annat följande:

  • Gymnasiernas nätförbindelser har varierande tillförlitlighet och kapacitet. Prov ordnas också i hyrda lokaler. Provprestationen får inte störas av att nätförbindelsen bryts eller är långsam.
  • Provprestationerna kan utföras med hjälp av olika medier. Provprestationen får inte störas av att nätförbindelsen är långsam.
  • Det nät som används vid examen är likadan i alla provlokaler. Det underlättar problemlösning och distanssupport.

Orsaker till valet av en serverlösning är bland annat följande:

  • Diskimagen baserar sig på lösningar med öppen källkod och därför kan SEN sprida den utan behörighetsadministration. Transparens är en viktig aspekt i ett offentligt projekt.
  • Servermjukvara som distribueras som diskimage garanterar att alla servrar är identiska efter uppstart. Olika versioner av programmen kan inte bli osynkroniserade på grund av misslyckade uppdateringar (en version av USB-stickor innehåller alltid en specifik version av programmen).
  • Uppdatering av USB-media kräver inga specialkunskaper. Diskimagen laddas ned och skrivs med programmet AbittiUSB (HTTP GET, MD5-kontroll, dd).
  • Tack vare konfigurationen med en reservserver sparas examinandernas svar på minst två sinsemellan oberoende medier på grund av fysiska fel i utrustningen.
  • På hårdskivan görs inga ändringar. Datorn kan användas för annat på andra tider än under examensveckorna.

Examinandens dator startas också upp via en USB-sticka med ett operativsystem som bygger på Debian Jessie. På examinandens dator finns den del som hör till provsystemet av provsystemet som skapats med node.js. Provsvaren skrivs med webbläsaren på en sida som genereras av node-programmet på examinandens dator. Programmet på examinandens dator och servern är uppkopplade mot varandra med programmets eget protokoll. Uppkopplingen är krypterad med SSL.

På examinandens dator finns utöver de program som behövs för provet även program som examinanden kan använda för att genomföra provet. En aktuell förteckning över programmen finns på projektets webbplats.

Orsaker till valet av USB-sticka är bland annat följande:

  • Diskimagen baserar sig på lösningar med öppen källkod och därför kan SEN sprida den utan behörighetsadministration. Transparens är en viktig aspekt i ett offentligt projekt.
  • Servermjukvara som distribueras som diskimage garanterar att alla servrar är identiska efter uppstart. Olika versioner av programmen kan inte bli osynkroniserade på grund av misslyckade uppdateringar (en version av USB-stickor innehåller alltid en specifik version av programmen).
  • Versionen på USB-stickan för examinandens dator kontrollerar automatiskt kompatibiliteten med serverns mjukvara.
  • Uppdatering av USB-media kräver inga specialkunskaper. Diskimagen laddas ned och skrivs med programmet AbittiUSB (HTTP GET, MD5-kontroll, dd). Alla programnivåer uppdateras på en gång.
  • Inga permanenta ändringar behöver göras på examinandens dator med undantag för startordningen (boot prioritet). Permanenta ändringar skulle kunna störa annan användning av datorn.
  • Examinanderna rör sig på samma plattform: alla examinander har samma mjukvara.
  • Examinandens eget operativsystem aktiveras inte alls på datorn. Med hjälp av operativsystem som startas via USB-sticka kan man rensa bort komponenter som underlättar missbruk (t.ex. drivrutiner SATA, WLAN, bluetooth, IR), göra inställningar för att begränsa användningen (t.ex. brandvägg, möjlighet att koppla till nya USB-medier, eller köra vissa program) eller köra program som följer med användningen.

Omvänt uttryckt kan man säga att vårt mål med det nuvarande operativsystemet som startas upp via USB-sticka är följande:

  • Så många enheter som möjligt som är oberoende av en enskild leverantör.
  • Administratörsbehörighet under provtillfället.
  • Snabb spridning av program som används under provet och raderas efter det.