HistoVec permet au vendeur de partager à un acheteur intéressé l’historique des faits marquants du véhicule enregistrés dans le fichier national du SIV (Système d’Immatriculation des Véhicules), notamment :
la date de mise en circulation,
les changements de propriétaire,
les sinistres à réparation contrôlée,
la situation administrative (gage, opposition, vol)
etc.
Ainsi, HistoVec permet à l’acheteur d’acheter en connaissance de cause, et au vendeur honnête de valoriser son offre.
Prochainement, HistoVec permettra également de connaître l'historique des contrôles techniques et le kilométrage grâce à une interface avec l'UTAC-CERAM.
La version en ligne a été homologuée par le ministère de l'Intérieur et est en phase de généralisation. HistoVec devrait revêtir un caractère obligatoire à terme. L'application permet aujourd'hui de produire 2500 à 3500 rapports uniques par jour. La mesure obligatoire devrait porter ce nombre à environ 15000.
Le code source du présent site comporte l'ensemble des éléments fonctionnels (frontend), et bien sûr ne comporte pas les données, ni les configurations de déploiement.
Les données en base d'HistoVec sont intégralement chiffrées en AES256, et les données personnelles hashées (SHA256).
La version disponible sur le site fonctionne sur la base des composants suivants :
git clone https://github.com/poc-vue
git checkout origin/dev
make dev
Le mode de développement lance les services suivant:
Il existe plusieurs modes de chargement des données.
Un jeu de donnée de développement est dorénavant disponible pour permettre de développer HistoVec ou l'utiliser pour des tests en interface avec d'autres applications (Capsule, UTAC-Ceram).
Ce jeu de données dispose d'identifiants personnels factices associés à des données de véhicules représentatifs de la diversité des véhicules (~2000 pour les plaques SIV, après 2009, et 700 pour les plaques IVT, avant 2009).
Les données sont lisibles via un suite office pour permettre de faire les tests d'insertion dans le formulaire, et seront utilisées prochainement pour des tests fonctionnels automatisés.
Pour les insérer dans la base HistoVec:
make data-encrypt index-load
Attention, cette opération réalise d'abord une purge de l'index.
pour vérifier le bon chargement des données:
make index-status
doit fournir les statistiques Elasticsearch, avec environ 3000 données chargées dans l'index siv
Si vous disposez d'un jeu de données chiffrées produites par le Ministère pour faire des tests avec HistoVec, celles-ci doivent être placées dans le repertoire data/encrypted
.
Pour les insérer en base :
make index-load
Un chargement direct depuis le stockage objet est également possible. Il faut alors disposer des données de paramétrage du stockage objet et les placer dans le fichier artifacts
.
Une fois ces paramètres configurés, l'insertion directe depuis le stockage objet se fait ainsi :
make index-direct-load
Il existe également un mode incrémental depuis le stockage objet :
make index-direct-update
Pour effacer les données dans Elasticsearch.
make index-purge
Ces opérations peuvent être accélérées en utilisant un copier coller avec les différentes données depuis un tableur.
Le rapport HistoVec d'un véhicule est mis en cache par l'application web durant 24h pour chaque recherche distincte. La base de données n'est actualisée qu'une fois par jour.
En tant qu'usager, vous pouvez donner votre avis sur le service HistoVec une fois votre rapport trouvé (après avoir rempli le formulaire avec succès). Une pop-up apparaîtra au bout de 2 minutes, vous proposant de donner votre avis. Elle réapparaîtra 2 minutes après chaque nouvelle recherche disctincte. Si vous ne souhaitez plus le revoir, il vous suffit de cocher la case "ne plus afficher". Si vous souhaitez que la pop-up réapparaisse car vous n'aviez pas encore voté, il vous suffit de vider votre local storage.
Le feedback est aujourd'hui géré par la procédure MonAvis du Ministère de l'intérieur. Par le passé, HistoVec disposait de son propre mécanisme de feedback.
L'arrêt des services se fait ainsi :
make dev-stop
Le mode compilé, correspondant à la production se lance ainsi:
make build
make up
Il lance actuellement la v1 d'HistoVec :
Les deux phases build
et up
permettent de construire les différents éléments (fichiers et répertoires) et structures nécessaires au fonctionnement d'HistoVec.
Pour stopper l'application, vous pouvez utiliser la commande make down
qui arrête et supprime les conteneurs.
HistoVec utilise artillery.io pour scénariser ses tests de performance. Pour lancer l'ensemble des scénarii (environ 15 minutes):
make index-stress
Ce test n'a de véritable sens qu'avec un index pleinement chargé. Des données factices peuvent être chargées. La volumétrie actuelle d'HistoVec représente 85M de véhicules.
La performance actuellement évaluée (8 vCPU, 8Go de Ram)
Redémarrer Elasticsearch seul :
make elasticsearc-stop elasticsearch
Redémarrer nginx ou le frontend (en mode dev):
make frontend-dev-stop frontend-dev
Redémarrer
En affichage, ok jusqu'au search :