Sicuramente esistevano già programmi che, prendendo a caso le domande da un archivio, predispongono questionari per le verifiche scritte tutti diversi, ma della medesima complessità.
Io però ho preferito scrivermelo da solo; perchè adattarsi a qualcosa, se con qualche ora di lavoro possiamo crearci un'applicazione su misura? Fatica inutile? Tempo sprecato? Forse! O forse no. E poi mia nonna mi diceva sempre "dove c'è gusto, non c'è perdenza!".
Come ambiente di sviluppo ho usato lo stesso che abbiamo scelto nel laboratorio del Liceo: Lazarus. Non sarebbe infatti saggio mostrare agli studenti di non impiegare, nella pratica, ciò che si propone nell'insegnamento; anzi spero che presentare un'applicazione realmente funzionante possa risultare motivante per loro che sono ancora alle prese con esercizi meramente didattici.
Lazarus è un IDE (ambiente di sviluppo integrato) basato sul compilatore Free Pascal, che, rispetto alle altre implementazioni più semplici spesso suggerite dai libri di testo, offre funzionalità più avanzate (ad esempio il RAD, la modalità visuale di sviluppo rapido di applicazioni) e professionali. Inoltre è cross-platform, cioè permette di compilare lo stesso progetto per ottenere eseguibili per differenti piattaforme (windows, linux, ecc). Dulcis in fundo è gratuito ed open-source.
Il programma che ho realizzato mi permette di definire la composizione di ciascun modulo, associando ad ogni domanda la categoria da cui "pescarla" casualmente. Si può anche predefinire il numero di righe che sarà occupato dalla domanda e l'intestazione del foglio. Se una stessa categoria è referenziata più di una volta, il software evita che possano essere presenti domande duplicate sullo stesso modulo. Il modulo viene prodotto in pdf e può ovviamente essere stampato.
Come evoluzione futura sto pensando di automatizzare e gestire su un database gli esiti delle correzioni (per ora ho solo abbozzato i relativi TAB).