- Décommissionnement Starjet (OPT / CSB)
- Dilution & perte de compétences Starjet
- Différentes pistes "commerciales"
Recherche d'une solution alternative :
- Intégrée au socle de développement de l'OPT
- Performante
- Economique
L'OPT souhaite étudier les moteurs de template, objet de cette étude, et plus particulièrement FreeMarker.
L'OPT souhaite également lever un certains nombre de difficultés éventuelles :
- l'intégration de code-barre
- l'intégration de graphiques (histogramme)
- le marquage optique pour l'impression et la mise sous pli.
La présente étude devra :
- confirmer la faisabilité technique
- fournir un PoC à minima
- estimer les coûts de mise en oeuvre
fonctionnement général
Par ordre alphabétique :
- FreeMarker,
- Mustache,
- Pebble,
- Rocker,
- Thymeleaf,
- Trimou, et
- Velocity
Top 3 (par ordre alphabétique) :
- FreeMarker
- Mustache
- Thymeleaf
Remarques générales :
- Utilisation de HTML / CSS / JS vs. Java (1)
- Limitation de la prise en charge CSS
(1) d'un commun accord avec l'OPT, l'utilisation du JavaScript est à proscrire.
fonctionnement détaillé utilisé dans le cadre du PoC
- Code-barre : cf. code
- Histogramme : cf. code
Compte-tenu des limitations de la prise en charge CSS level 3, ces deux points sont résolus par une génération d'image à la volée avec les outils idoines dans le code Java. Les images sont ensuite insérées dans le template.
Une attention particulière doit être apportée aux dimensionnement du code-barre pour une lecture optique efficace.
- Marquage optique (OMR)
C'est l'opération qui pose le plus de difficultés et qui est dépendante de la solution utilisée par le prestataire en charge de l'impression et de la mise sous pli, la CSB en l'occurrence.
Après contact pris auprès de M. Jean-Louis Billard de la CSB, celui-ci nous confirme que cette opération pourrait être prise en charge par la CSB, sous réserve de disposer d'un élément discriminant les différentes factures (code-barre ?).
Solution à privilégier.
Mises en oeuvre supplémentaires (cf. code) :
- Utilisation des fragments (réutilisabilité).
- Tableau avec rupture sur plusieurs pages (FreeMarker).
- Templating : de 1j à 5j
- Traitement des données et liaison avec le template : de 1j à 5j
- Génération PDF : 0,5j
- Temps hors dév / Maintenance : % tps dév / abaques OPT ?
- OMR : délai de 15 jours / template pour que la CSB soit opérationnelle
Cf. tableaux des résultats JUnit / JMH dans le rapport d'étude.
Bien que Thymeleaf dispose de meilleurs résultats JUnit que FreeMarker, ce dernier montre une meilleure homogénéité dans l’évolution des temps d’exécution sur des gros volumes.
JMH confirme ces résultats avec un temps moyen d’exécution par opération apportant des gains de plus de 20 % pour FreeMarker (0,044 s/op) par rapport à Thymeleaf (0.057 s/op). Les résultats JMH montrent aussi des marges d’erreurs moins importantes sur FreeMarker.