Fonctionnalités
VÉRAC est un logiciel de gestion d'un établissement scolaire dans le cadre d'une évaluation par compétences :
- libre (licence GNU GPL 3)
- multiplateforme
- gratuit (autant le préciser ; car libre n'implique pas gratuit).
Contenu de cette page :
Une liste de fonctionnalités
Cette liste n'est évidemment pas exhaustive
- les évaluations ne sont pas réservées aux professeurs dans leur matière et on peut évaluer dans d'autres cadres (documentaliste, aide aux devoirs, en club, ...) ;
- une saisie rapide des évaluations (sélection multiple, sélection automatique, ...) ;
- une grande liberté pour le professeur dans l’organisation de ses évaluations et réévaluations ;
- évaluation des élèves selon 4 niveaux + “non évalué” ;
- création personnalisée des items évalués et de leurs regroupements en bilans ;
- choix des bilans apparaissant sur les bulletins par les enseignants (partie disciplinaire du bulletin) ;
- 4 listes de compétences partagées (partie partagée du bulletin, référentiel de compétences, ...).
Ces compétences peuvent être évaluées par tous et le logiciel mutualise les résultats des élèves ; - possibilité de gérer des classes à notes (obligé en 3°), d'exporter des notes d'après les évaluations ;
- création de bulletins trimestriels et autres relevés (relevés du référentiel, fiches brevet, ...) ;
- paramétrage des modes de calcul ;
- interface web accessible aux parents et élèves permettant le suivi de l’acquisition des compétences.
Interfaces
VÉRAC est constitué de 3 parties (et présente donc 3 interfaces différentes).
Interface professeur
La partie prof est faite d'un logiciel à installer.
- avantages :
- un logiciel installé sera toujours plus rapide à manipuler qu'un logiciel en ligne, ce qui est important au moment de saisir des évaluations
- on peut l'utiliser à tout moment, même sans connexion Internet (en extérieur, salle non équipée, panne, ...)
- plus de possibilités pour le logiciel (interface, lien avec d'autres applications, ...).
- inconvénients :
- il faut installer
- pas directement accessible depuis n'importe quel poste relié à Internet.
- remarque : il est possible d'évaluer depuis l'interface web, mais cela offre bien moins de possibilités que d'utiliser le logiciel ; cela permet à un prof de rentrer des évaluations depuis un poste non équipé de VÉRAC (mais connecté à Internet).
Interface administrateur
L'interface d'administration se présente comme un module supplémentaire au logiciel.
Interface web
Pour la consultation des résultats par les élèves, le choix a été une interface Web.
Les besoins ne sont ici pas les mêmes que pour le prof et l'admin :
- la vitesse d’exécution est moins primordiale
- l'absence d'installation est par contre un gros avantage.
Choix techniques
VÉRAC est programmé en Python pour les parties prof et admin, en utilisant Qt (via PyQt), tandis que l'interface web est programmée en PHP. Les 3 parties utilisent des bases de données SQLite.
Les parties prof et admin nécessitent donc une installation.
Python
- Python est un langage de programmation interprété libre et multiplateforme
- les parties prof et admin de VÉRAC sont programmées en Python
- VÉRAC fonctionne aussi bien avec les versions 2.x et 3.x de Python
- pour en savoir plus : article Wikipédia décrivant Python.
Qt et PyQt
- Qt est une bibliothèque logicielle très complète, libre et multiplateforme.
Les parties prof et admin de VÉRAC utilisent Qt.
Pour en savoir plus : article Wikipédia décrivant Qt - PyQt fait le lien entre Qt (écrit en C) et Python.
PHP
- PHP est un langage de scripts libre. Il permet de créer des pages Web dynamiques.
L'interface web de VÉRAC est développée en PHP.
SQLite
- SQLite est un système de gestion de base de données multiplateforme. SQLite est dans le domaine public.
Contrairement à d'autres systèmes (MySQL, ...), une base de données SQLite est stockée dans un fichier indépendant de la plateforme.
Les bases SQLite sont des fichiers légers, et sont très bien gérées par Python et par PHP.
Pour en savoir plus : article Wikipédia décrivant SQLite.
Outils utilisés et liens divers
Outils de bases pour le développement
- Python : langage de programmation
- Qt : "toolkit" très complet (interface graphique et tout un tas de choses)
- PyQt : lien entre Python et Qt
- SQLite : bases de données
- PHP : langage de programmation (interface web)
Autres bibliothèques
- wkhtmltopdf : pour créer des fichiers pdf depuis les modèles html
- PyPDF2 : pour manipuler les fichiers PDF
- ODSlib : pour manipuler les fichiers ODS
- Simple FTP Mirror : script Python pour réaliser un miroit FTP (utilisé dans VÉRAC administrateur)
- pyspellchecker : pour le correcteur d'orthographe
- marked : pour afficher les fichiers Markdown
- Bootstrap : framework utilisé dans l'interface web
- Chart.js : pour les camemberts dans l'interface web
Des trucs dont je me suis inspiré
- Porting to Python 3: An in-depth guide : pour que le code de VÉRAC fonctionne avec Python 2 et Python 3
- Fixed-table : tables avec titres et première colonne
- Sortable : listes réorganisables par drag&drop (trombinoscopes)
Logiciels tiers utilisés
- LibreOffice
- Freeplane
- Blender : pour la création du logo
- GIMP : manipulation des images
Hébergement et site du projet
- TuxFamily : l'hébergement libre pour les gens libres


