Internationalisation d'un service digital : on peut doubler ses ventes, mais...

Un logiciel, un service vendu en ligne atteindront tout leur potentiel s’ils sont proposés dans la langue du pays qu'ils ciblent. Mais la préparation doit être minutieuse avant de séduire ces nouveaux consommateurs.

A l'époque de l'internet, où l'information est disponible en quelques secondes dans n'importe quel coin du globe, on peut imaginer qu'il est aisé de diffuser un logiciel, un site web n'importe où sur la planète. À  prime abord, aucun problème. Mais à quoi bon diffuser son produit, son service dans un marché à fort potentiel si personne n'est capable de comprendre ce qui s'affiche sur son écran ? Les nouveaux clients tant convoités seront conquis uniquement lorsque l'on aura mis le produit à leur portée. Autrement dit lorsqu'on l'aura internationalisé et traduit. Des études ont démontré que les usagers préfèrent quatre à cinq fois plus acheter des logiciels dans leur langue propre, même s’ils sont habitués à utiliser des produits en anglais. 

On peut imaginer que cela ne devrait pas être si compliqué. Quelques messages à traduire dans la bonne langue, quelques adaptations simples et le tour serait joué. Loin de là, car la complexité des langues joue un rôle primordial. Une équipe qui a facilement mené à bien une adaptation du français vers l’espagnol risque d’être en retard de plusieurs mois si elle saute à pieds joints dans le chinois ou le japonais. 

Si l'on s'en tient seulement à la programmation, l'internationalisation touche les aspects suivants: date et heure, calendriers, devises, ponctuation, jeux de caractères, polices de caractères, méthodes de saisie asiatique, rendu de texte (notamment en Arabe), génération de rapports, optimisation des bases de données face aux multiples tris requis par les utilisateurs multilingues, gestion des numéros de téléphone et des formats d'adresse, etc.  

C'est donc tout le code qui doit être examiné. Et si les développeurs ne sont pas pleinement conscients des enjeux de l'internationalisation, chaque ligne de code qu'ils écrivent, chaque jour, devra vraisemblablement être révisée lorsque l’on décidera de porter le produit sur un marché étranger. 

De 5 à 15% des lignes de code devront être modifiées. Les coûts d'accès à cette nouvelle clientèle ne sont pas négligeables mais, à terme, ils permettront de doubler les ventes… et les profits. Qui plus est, la présence dans ces nouveaux marchés bénéficiera d’un avantage concurrentiel face à d’éventuels compétiteurs qui devront développer le produit au complet.

Alors, pas aussi simple qu'elle en a l'air, l'internationalisation ? Tout à fait. Et de nombreux projets font face à des dépassements de coûts et d'échéances. Pourquoi ? Parce qu’on sous-estime trois problèmes: 
  • la complexité informatique du support des langues (évoquée ci-dessus),
  • la complexité des échanges avec les traducteurs,
  • le nombre de collaborateurs requis pour la création d’un produit globalisé.

En effet, même pour des langues assez proches, le processus de traduction qui doit être mis en place est loin d’être évident. La première traduction peut se dérouler assez bien, mais les multiples mises à jour vont mettre un processus manuel à l’épreuve. Saviez-vous qu’un copier-coller n’est pas toujours fiable ? On peut notamment perdre des espaces insécables entre Word et autres applications Windows. Ainsi, le nombre “123 456 €” peut devenir aisément “456 123 €” en arabe et autres langues qui s’écrivent de droite à gauche.

Le problème est d’autant plus crucial si l’on ne comprend pas le texte que l’on manipule. Seriez-vous capable de détecter une erreur dans un texte chinois ? Toute erreur, quelle soit humaine ou provenant d’un copier-coller, risque fort de passer inaperçue.

Il faut donc créer un processus automatique pour gérer l’extraction des textes à traduire, les échanges de ces textes avec les traducteurs et la réinsertion des multiples traductions (en plusieurs langues), au bon endroit, avec la bonne nomenclature (/expert/fr/ ou .fr-fr ou -fra) et le bon jeu de caractères (ISO Latin-1, Windows 1252 ou UTF-8, par exemple). Les opérations manuelles ne devraient être utilisées qu’en cas d’urgence exceptionnelle.

Et, tel que mentionné précédemment, on sous-estime le nombre de collaborateurs requis pour la création d’un produit globalisé. Car, l'internationalisation touche à tout. Elle a des répercussions sur bien des parties du code informatique, on l'a vu, mais aussi sur les graphiques, les interfaces utilisateurs, les tutoriels, etc. Ce ne sont plus uniquement les développeurs qu'il faut briefer. Les graphistes, les rédacteurs de la documentation, voire les ergonomes doivent également adapter tout l'environnement et le support du produit à sa nouvelle cible. Évidemment, le marketing devra suivre : pas question d'avancer les mêmes arguments de vente en Chine, en Corée, dans les Émirats arabes que dans un pays européen.

Voilà pourquoi l'internationalisation ne s’improvise pas. La planification et l'estimation sont délicates et régulièrement sous-estimées. Par exemple, il faut doubler le temps alloué aux impondérables, typiquement de 10% à 20%. De plus, par manque d’outils spécialisés, on n’a pas accès aux métriques pertinentes du logiciel: par exemple une tâche simple, comme l’extraction des messages, aura un impact bien différent si elle est à effectuer 10,000 fois ou 50,000 fois. Plusieurs mois-hommes sont en jeu.
Enfin, les aspects architecturaux d’un produit (ou site web) devant supporter une douzaine de langues dans une cinquantaine de pays, sont particulièrement délicats. Il y a de nombreux pièges et il est facile de se retrouver dans un cul de sac. 

Heureusement des audits spécialisés sont disponibles, en français ou en anglais. Ils fourniront une planification et une estimation réalistes du projet. Qui plus est, un audit fournit des recommandations architecturales concernant la gestion des jeux de caractères, des locales, des ressources, des bases de données, des générateurs de rapport. Une analyse du code source servira à identifier les problèmes à régler; des solutions précises seront proposées. Dès réception du rapport d’audit, les équipes pourront se mettre au travail. 

Les compagnies avisées forment leurs équipes afin de réduire les risques et de réussir le plus rapidement possible la mise sur le marché de leur produit globalisé. En effet, chaque langue (arabe, chinois, japonais, etc.) pose ses propres problèmes. Et toutes les technologies (HTML, CSS, Javascript, Java, .Net, Oracle, SQL Server, XML, etc.) apportent des solutions différentes à ces  problèmes.

Enfin, toutes les étapes de développement d’un logiciel sont affectées par cette nouvelle dimension qu’est la langue: comment va-t-on connaître les exigences des clients chinois ? On aura besoin de testeurs arabes pour vérifier un logiciel arabe.  Comment va-t-on offrir un support à la clientèle multilingue ? Comment va-t-on rédiger des documents en vue d’une traduction efficace ? Comment va-t-on aborder toutes les composantes de ce projet ? Nombre de questions se posent.