Archives par mot-clé : Génie Logiciel

Critère de qualité – La robustesse

Quand un site e-commerce grossit, que le site représente plusieurs millions d’euros, la qualité du site prend de plus en plus d’importance.

Ce n’est pas le cas au début, au lancement d’un site e-commerce.

Mettre la barre trop haut, au lancement d’un site n’est pas forcément une bonne idée, parce que la qualité à un prix…

Pour faire simple, au démarrage, il vaut mieux privilégier le e-marketing, et accepter de prendre certains risques au niveau de la qualité de la solution.

La qualité se mesure par plusieurs critères.

Le critère que je propose de creuser un petit peu ce soir, c’est la robustesse.

C’est quoi la robustesse ?

La robustesse, en informatique, c’est la capacité qu’à une solution informatique à se comporter le mieux possible, même quand « le monde s’écroule ».

Concrètement, cela veut dire, pour un site e-commerce, que le site doit continuer à fonctionner même si des incidents surviennent, à différents endroits (un serveur qui s’arrête, un service tiers qui ne répond plus, …).

Bien sûr, on ne peut pas demander à ce que le service continue « comme si de rien n’était » alors que des services clés ne répondent plus. Mais on peut demander à ce que la dégradation du service soit contrôlée et progressive.

Exemple : le lien avec la logistique tombe, et le site Front office n’a plus les infos de stock.

On peut tout à fait imaginer que le Front ai une sorte de cache, et qu’il puisse continuer à effectuer des ventes, en s’appuyant sur le stock géré en cache.

Autre exemple : sur pecheur.com, il y a deux systèmes de paiement CB, indépendants. C’est une solution (simple pour le coup) pour permettre de vendre à tout instant, même si l’une des plateformes de paiement tombe.

Pour un service Web, la robustesse, c’est également bien se comporter quand le site doit supporter une charge trop importante.

Exemple de stratégie : au lieu de ne plus rien répondre, le site peut s’adapter à la montée en charge, en se délestant de certaines fonctions (merchandising par exemple) pas complètement indispensables.

C’est toujours mieux que de laisser tous les clients attendre devant une page qui s’affiche à la mode des années 80.

C’est finalement assez cher de concevoir une solution vraiment robuste. Il faut doubler les serveurs, mettre en place des processus pour gérer les différents cas de panne, concevoir une architecture avec des composants assez indépendants, faire des tests, …

Mais c’est clairement indispensable et rentable pour un gros site, ou il est carrément impensable que le service s’arrête.