Par Matthieu, Fondateur.

PrestaShop To The Future

 

Note : nous avons écrit cet article pour PrestaShop, mais la logique et le principe de fonctionnement est le même pour tous les logiciels, Open Source ou pas, ecommerce ou pas !

 

 

1 – Pourquoi des mises à jour ?

Les mises à jour apportent des corrections de bugs, mais aussi des corrections de failles de sécurité ainsi que des évolutions.

 

Sécurité en cascade

PrestaShop, comme tout logiciel, et en particulier Open Source, intègre des briques issues de divers « tiers » (bibliothèques, composants, etc…). Les mises à jour de PrestaShop peuvent intégrer des corrections de PrestaShop lui-même, mais aussi des mises à jour de composants tiers. Au travers du partage de code, l’Open Source réduit les coûts de développement, mais impose des mises à jour régulières, amplifié par cette cascade de composants imbriqués (une faille de sécurité dans un composant nécessitant une mise à jour de tous les logiciels utilisant ledit composant).

 

Compatibilité entre composants

D’ailleurs, ces composants peuvent être au sein de PrestaShop, comme à l’extérieur, pour permettre son fonctionnement. PHP a peu évolué ces dernières années, mais l’avènement de PHP 7 va relancer les choses, ce que va faire apparaitre des dépendances fortes entre PHP (et d’une manière les caractéristiques de l’hébergement) et votre version de PrestaShop. Ainsi, faire fonctionner une ancienne version de PrestaShop imposera une ancienne version de PHP. Si cette version de PHP n’était plus supportée par PHP, votre hébergeur pourrait simplement refuser … ou vous répercuter le coût de maintient !

 

Evolution du contexte

Par ailleurs, le web évolue rapidement. Au-delà de nouvelles fonctionnalités, il est nécessaire d’adapter certaines fonctionnalités pour suivre le contexte général. Par exemple : le https était réservé aux données sensibles (paiement) il y a encore quelques années. Aujourd’hui, le https est devenu un standard. Sa généralisation à l’ensemble d’un eshops a mis en lumière quelques limites dans la solution proposée par PrestaShop, mais nécessite aussi de nouvelles fonctionnalités et des adaptations techniques ou fonctionnelles.

 

2 – Quelle complexité de mettre à jour PrestaShop ?

Tout d’abord, il faut différentier mises à jour mineures et majeures.

– Mise à jour mineure : corrections et évolution mineures sans impact technique. Ces versions sont identifiées par un changement sur les 2 derniers chiffres, exemple 1.7.3.1.

– Mise à jour majeure : évolutions avec impact technique. Ces versions sont identifiées par un changement sur les 2 premiers chiffres, exemple 1.7.3.1.

Je fais là une grosse simplification, pour plus de détails, vous pouvez lire cet article du blog des développeurs de PrestaShop à propos du versioning PrestaShop qui respecte SemVer.

En principe, la mise à jour mineure ne doit pas engendrer de correction de code, là où la mise à jour majeure peut nécessiter des interventions plus lourdes.

La complexité de la mise à jour de votre boutique dépendra des ajouts apportés à ladite boutique. Une boutique PrestaShop non modifiée passe une mise à jour majeure sans problème, à l’inverse une boutique très modifiée nécessitera à coup sûr des actions techniques. La charge technique dépend du type de modifications de PrestaShop :

 

1 – Ajout de module

Recourir à un module édité par un contributeur déporte le coût de compatibilité avec la mise à jour vers ce contributeur. Si le module a été corrigé par le contributeur, vous devrez peut être acheter une nouvelle licence, mais le coût est très limité par rapport à un développement spécifique. Si le contributeur ne met pas à jour le module, vous êtes bloqués.

Remarque : il est donc important de choisir un éditeur sérieux et pérenne quand vous achetez un module.

 

2 – Thème (sur mesure ou acheté)

Suivant les versions de PrestaShop, vous allez pouvoir continuer à utiliser votre ancien thème (sans bénéficier des nouvelles fonctionnalités), ou vous allez devoir refaire le thème. La rupture de compatibilité est évidemment la solution la moins privilégiée par PrestaShop, mais les technologies « front » ont beaucoup évoluées ces dernières années (notamment à cause de la généralisation des SmartPhone) et PrestaShop a été contraint de bloquer la comptabilité du thème 1.4 vers 1.5 puis 1.6 vers 1.7.

 

3 – Développement spécifiques

C’est évidement les modifications les plus couteuses à maintenir : chaque mise à jour majeure nécessitant à minima une analyse, et au pire une réécriture.

Remarques sur les développements spécifiques :

1/ Il est important d’avoir en tête que chaque développement spécifique ajouté à votre boutique complexifiera sa mise à jour, et donc augmente son cout de maintenance (TCO dans le jargon). Ainsi, il est important de bien peser le pour et contre avant de se lancer dans un développement spécifique, notamment existe-t-il un module correspondant, même approximativement, à mon besoin ?

2/ Le respect des normes de développement éditées par PrestaShop, sans garantir des mises à jour en un clic, contribue grandement à en limiter le coût. La qualité du travail de votre agence impactera donc le coût de maintenance de votre boutique PrestaShop.

 

3 – Quelle politique de mise à jour pour PrestaShop ?

Nous voyons de nombreux marchands faire l’impasse sur les mises à jour régulières, préférant une refondation complète (aussi peu souvent que possible).

Pourtant, notre recommandation est complètement l’inverse, pour plusieurs raisons :

– La sécurité n’est pas le problème des autres : un piratage peut avoir des conséquences lourdes sur votre activité. De plus, le RGPD oblige explicitement les utilisateurs de logiciels gérant des données personnelles à des mises à jour régulières.

– Mettre à jour votre boutique régulièrement vous garanti la maitrise de votre plateforme, et donc en fait baisser le coût global. Plus les mises à jour s’espacent, plus le coût, et le risque, sont forts.

Imaginez mettre à jour PrestaShop 1.4 vers PrestaShop 1.7 : 6 ans de différence, plus de développeurs compétant en 1.4, aucune techno compatibles entre 1.4 & 1.7, plus de doc à jour, quelle folie !! Vous pouvez vous dire que c’est la responsabilité du prestataire, mais cela suffira-t-il à garantir le succès d’une telle opération ? En réalité, en se laissant distancer par la technologie, ce marchand aura préparé un coûteux désastre.

 

3.1 – Mise à jour mineures

Pour les mises à jour mineures, PrestaShop ne supporte que la dernière version, vous êtes donc censés mettre à jour votre boutique PrestaShop dès la disponibilité d’une version mineure. Exemple : vous utilisez PrestaShop 1.6.0.3, et PrestaShop publie 1.6.1.0. Vous devez faire la mise à jour dès que possible. En cas de faille de sécurité, PrestaShop ne corrigera que la dernière version (1.6.1.0) par une 1.6.1.1.

Chez 202, nous recommandons de faire les mises à jour mineures de PrestaShop régulièrement. Jusqu’ici, nous traitions chaque client au cas par cas en fonction des besoins de la maintenance évolutive. A partir de maintenant, nous allons proposer à nos clients une mise à jour trimestrielle systématique.

 

3.2 – Mises à jour majeures

Pour les mises à jour majeures, PrestaShop supporte 2 versions en parallèle, et cela pour laisser le temps aux marchands de mettre à jour leur boutique. La durée de ce double support est fixée par PrestaShop, généralement entre 1 et 2 ans. Concrètement, PrestaShop a continué à corriger PrestaShop 1.6.x jusqu’à aujourd’hui, alors que la première PrestaShop 1.7 stable a été publiée en Novembre 2016.

La durée du support des 2 versions en parallèle est adaptée à la complexité de mise à jour vers la nouvelle version ; plus il y a d’impact techniques, et plus PrestaShop vous laissera du temps.

Chez 202, nous recommandons de ne pas foncer vers la première version disponible, mais pas non plus vous laisser distancer. PrestaShop 1.7 est aujourd’hui stable et éprouvé, certains nouveaux modules ne sont pas publiés pour 1.6, il est temps de basculer sur PrestaShop 1.7.

 

Historique des versions PrestaShop 1.5, 1.6 & 1.7

 

3.3 – Et les modules ?

La théorie ci-dessus s’applique également pour les modules, qu’ils soient payants ou gratuits, édités par PrestaShop ou pas. Chez 202, la mise à jour trimestrielle vers la dernière version mineure s’accompagnera de la mise à jour des modules.

 

4 – Conclusion : les logiciels sont un actif concurrentiel comme un autre qu’il faut entretenir

Le web, et le ecommerce, est encore tout jeune, et c’est bien entendu aussi le cas pour ses outils, PrestaShop compris. Avec l’essor du ecommerce, les outils des emarchands vont évoluer vers plus de robustesse, d’efficacité, de stabilité et de sécurité.

Cette évolution va nécessairement s’accompagner d’une complexification des technologies, qui imposera aux emarchands, et leurs prestataires, des compétences plus spécialisées. Cependant, il parait indispensable de rester dans la course, la concurrence étant aux aguets. Qui pourrait aujourd’hui vendre en ligne sans un site adapté aux téléphones portables ?

Laissez un commentaire