La localisation de logiciels comprend des étapes telles que :
- Préparation du code pour la traduction
- Exportation des chaînes de logiciel
- Affinage des stratégies d'analyse et de segmentation
- Élaboration d'une liste de terminologie clé (glossaire)
- Création du projet de traduction du logiciel
- Assigner les traducteurs
- Attribution aux relecteurs Gestion des requêtes
- Contrôles QA automatisés }
- Réimportation des chaînes traduites
- Vérifications de l'assurance qualité dans l'environnement de pré-production ou des captures d'écran
- Testing
Dans cet article, nous explorerons ces différents composants et leurs implications dans l'ensemble du processus de localisation.
Préparation du code pour la traduction
Alors que certains logiciels sont conçus en tenant compte de la traduction, il arrive souvent que la traduction soit une exigence qui apparaît lorsque le logiciel est déjà mature. Pour préparer le code à la traduction, il est nécessaire de se pencher de plus près sur les variables, les dates et l'architecture globale du contenu traduisible par rapport au code. Les dates, les devises et d'autres facteurs changent de format en fonction de la région. S'ils sont codés en dur, ils devront être recodés en tant qu'entités dynamiques afin de permettre une flexibilité interculturelle. En fonction de la façon dont le code est écrit, il peut être très facile ou difficile d'isoler le code du texte traduisible. Cela aura un impact sur la prochaine étape d'exportation des chaînes de caractères, mais c'est peut-être l'aspect le plus négligé et sous-estimé de la localisation de logiciels. Chaque petite différence entre le code et le texte aura des répercussions considérables sur l'ensemble du processus de localisation. Cela peut entraîner des situations où il est difficile de préserver l'intégrité du code ou de le rendre convivial pour les traducteurs. Bien sûr, vous pouvez surmonter certains de ces défis grâce à des stratégies d'analyse et de segmentation, mais plus vous pouvez exporter du contenu traduisible sans interférence du code, meilleur (plus durable et évolutif) sera votre processus de localisation de logiciels.
Exporter les chaînes de logiciel
Exporter les chaînes devrait être un processus simple. Mais ce n'est pas le cas. Certains formats sont préférés tandis que d'autres devraient être évités. Exemples de formats privilégiés: XML, YAML, JSON. Ils sont structurés, prévisibles, facilement analysables et relativement faciles à trouver des motifs dans le code, ce qui réduit les problèmes liés à la traduction vers différentes langues. Exemples de formats à éviter : TXT, CSV, Code mixte. Une exportation CSV, par exemple, peut devenir un cauchemar. Les caractères de délimitation tels que les points-virgules sont nécessaires en tant qu'outils linguistiques. Il est pratiquement impossible de faire la distinction de manière algorithmique entre un point-virgule qui est destiné à interrompre le code et un point-virgule qui est destiné à être un outil linguistique. Cela crée des centaines de faux positifs qui doivent être vérifiés lors du processus d'assurance qualité ainsi que des problèmes lors de la réimportation du code, etc. Avec du code mixte, par exemple, nous faisons référence à XML avec JSON inclus en tant qu'exemple, ce qui ajoute de la complexité au processus d'analyse et de segmentation. L'encodage est également un point douloureux clé :
- Encodage HTML
- Encodage d'URL
- Encodage Unicode
- Encodage Base64
- Encodage Hexadécimal
- Encodage ASCII
Chacun de ces frameworks d'encodage aura des répercussions dans le processus de localisation, y compris une incompatibilité de caractères en fonction des langues englobées.
Affiner les stratégies d'analyse et de segmentation
Si vous avez suivi les meilleures pratiques énoncées ci-dessus, vos stratégies d'analyse et de segmentation seront des optimiseurs de processus. Si ce n'est pas le cas, l'analyse et la segmentation deviendront des facilitateurs de processus. En tant qu'optimiseurs de processus, une stratégie d'analyse et de segmentation affinée garantira que le contenu est ingéré par votre système de gestion de traduction de manière conviviale pour les traducteurs et les relecteurs. C'est là que vous pouvez vous assurer que les variables sont protégées, que tout code restant est protégé, et que le texte est découpé de manière logique pour le processus de traduction. Si vous n'avez pas fait vos devoirs, c'est à cette étape que les choses peuvent devenir folles. Soit parce qu'il est tout simplement impossible de créer suffisamment de segmentation pour protéger le code et les variables, soit parce qu'il faudra un niveau d'effort insensé pour écrire suffisamment d'expressions régulières afin de rendre le logiciel plus convivial pour la traduction. Quoi qu'il en soit, c'est une étape cruciale. Si vous modifiez la stratégie d'analyse et de segmentation au fil du temps, vous subirez une perte de levier de mémoire de traduction, ce qui entraînera des coûts supplémentaires et une complexité du processus. Ça peut ne pas sembler être un gros problème jusqu'à ce que ça vous explose au visage. Supposons par exemple que votre logiciel entier comporte 100 000 mots et que vous le traduisez dans 10 langues et que votre coût moyen par mot est de 0,15 $. Supposons que vous ayez traduit votre logiciel mais que vous itérez maintenant sur votre stratégie d'analyse syntaxique, ce qui entraînera une perte de 10 % de l'optimisation (ce qui peut être un résultat attendu d'un changement mineur dans l'analyse syntaxique), cela représente une perte de 15 000 $ dès le départ, sans parler du temps supplémentaire nécessaire et des autres conséquences. Développer une liste de terminologie clé (glossaire) Très peu peuvent en développer un excellent. Certaines personnes suivent une approche statistique et extraient les mots clés les plus récurrents d'une base de données de contenu. Et bien que cela accélère les choses et capture les termes importants en fonction de leur fréquence, plusieurs termes clés ne sont pas nécessairement utilisés aussi fréquemment. Certaines personnes adoptent une approche qualitative et font passer les traducteurs par des tonnes de contenu pour identifier manuellement les termes pertinents. D'autres utilisent l'IA pour rechercher des schémas linguistiques et identifier des entités et des termes non seulement en fonction de leur fréquence, mais aussi de leur pertinence sémantique globale. Quelle que soit l'approche choisie, en ce qui concerne un glossaire, moins c'est plus. Bien que vous souhaitiez vous assurer d'avoir capturé les termes essentiels, si vous signalez trop de termes comme termes de glossaire, il est presque impossible de garantir une gouvernance sur une application appropriée. Trop de faux positifs et d'alertes rendent difficile la gestion des suggestions de termes par les traducteurs et les relecteurs, ainsi que l'exécution de vérifications automatisées de contrôle qualité. Un autre conseil avec les glossaires est qu'il est aussi important de signaler les termes qui ne doivent pas être traduits que ceux qui nécessitent un type spécifique de traduction.
Création du projet de traduction du logiciel
Cette étape dépend fortement du cadre du système de gestion de la traduction que vous utilisez. Certains systèmes vous permettront de gérer l'ensemble du cycle de vie du projet dans le même environnement et projet, tandis que d'autres plateformes nécessiteront une approche différente, qui peut être basée sur des chaînes ou des fichiers. Bien que cela puisse sembler une formalité, la mise en place du projet de traduction réel comporte des points de contrôle clés tels que :
- S'assurer que les fichiers ont été intégralement ingérés
- S'assurer que les paires de langues sont correctes jusqu'au niveau local
- S'assurer que les dates sont correctes
- S'assurer que les étapes du flux de travail sont celles nécessaires
- Attribuer aux traducteurs
À cette étape, nous supposons que vous disposez déjà d'une équipe de traducteurs préalablement validée pour chaque paire de langues à votre disposition. Il est essentiel de travailler avec des traducteurs qui sont :
![Translators Qualities](https://cdn.prod.website-files.com/65afb520155e9a05028f6408/66bd55d72234476ba426e1f3_65e08ae6e1eab598559896f4_6394e369c3846f046130823b_Green-Aesthetic-Good-Leader-Qualities-Infographic-Instagram-Post.png)
De même qu'avec les traducteurs, en mettant l'accent sur le discernement critique. Vous avez besoin de relecteurs suffisamment critiques pour comprendre les différences entre le style et les erreurs. Les relecteurs qui modifient trop à cette étape compromettent l'intégrité du processus de traduction dans son ensemble. Voici où le cadre de gestion de la qualité exclusif de Bureau Works entre en jeu.
Gestion des requêtes
Une partie essentielle de la traduction de logiciels consiste à pouvoir répondre aux questions qui se posent pendant le processus de traduction. Par exemple, que signifie le bouton "X" ou à quoi cette variable fait-elle référence ? Il est important d'avoir un processus qui vous permet de poser des questions concernant la langue source et d'avoir les réponses disponibles pour tous les traducteurs du projet, quel que soit leur paire de langues, afin de minimiser le fait de devoir répondre à la même question encore et encore. Il est également essentiel d'avoir un moyen d'attribuer différents statuts à la requête, tels que nouveau, assigné, résolu, etc., afin que votre équipe de gestion de projet puisse s'assurer que les requêtes sont traitées en temps voulu.
Vérifications automatisées de l'assurance qualité
Essentielles à tout processus de localisation de logiciels, les vérifications automatisées de l'assurance qualité garantissent que certains éléments clés sont signalés, tels que :
- Espaces en fin de ligne
- Limites de caractères
- Ponctuation incohérente
- Non-respect du glossaire
- Orthographe
- Balises incohérentes (incompatibilités entre le code source et le code traduit)
- Réimportation des chaînes traduites
Si vous êtes arrivé jusqu'ici indemne, c'est que vous faites quelque chose de bien ! :) Cela peut être moins douloureux, mais vous êtes là. Il est maintenant temps de réimporter les chaînes dans votre référentiel et de reconstruire le logiciel. Si vous avez manqué ou mal géré l'une des meilleures pratiques décrites précédemment, vous pourriez rencontrer des problèmes à cette étape en raison de ruptures de code, de correspondances incorrectes de balises ou d'autres problèmes pouvant affecter la réussite de la réintégration du code.
![](https://cdn.prod.website-files.com/65afb520155e9a05028f6408/66bd55d62234476ba426e1df_65e08ae6e1eab598559896e8_6394e369c3846fbe8430823a_1634891758155.png)
Souce: Linkedin
Les vérifications QA, soit dans l'environnement de pré-production, soit des captures d'écran
Cette étape peut être ignorée si elle est fusionnée avec les tests, mais il est utile de fournir aux traducteurs un accès soit à un environnement de pré-production, soit à des captures d'écran des écrans principaux pour s'assurer que les chaînes s'affichent correctement et qu'il n'y a pas de problèmes flagrants qui empêchent le démarrage des tests.
Tests
Il s'agit d'une étape qui permet d'améliorer la qualité au-delà de la simple détection et correction des bugs. Les tests permettent de revoir les chaînes traduites dans leur contexte. Certaines traductions qui semblaient parfaites pendant le processus de traduction peuvent ne pas être les meilleures du point de vue de l'expérience utilisateur. Il est important de travailler avec des testeurs engagés dans l'amélioration de l'expérience utilisateur et non pas seulement à la recherche réactive de bugs.
Conclusion
La localisation de logiciels est un processus vaste, coûteux et complexe. Mais ce n'est pas tout. Il est itératif et continu, ce qui signifie que vous passerez d'innombrables fois par le même processus pour mettre à jour votre logiciel à mesure qu'il continue d'évoluer. Ceci est un aperçu général et superficiel d'un processus qui peut devenir infiniment plus nuancé et complexe à gérer. Mais la principale leçon à retenir est qu'il vaut chaque centime d'investir dans un cadre et les meilleures pratiques dès le début. Une fois que le navire a pris le large, il deviendra de plus en plus difficile et coûteux de le réparer.