Tecnologia

O que é localização de software?

A localização de software refere-se a todos os processos complexos necessários para disponibilizar um produto de software em mais do que seu idioma original.
Gabriel Fairman
2 minutos

A

localização de software inclui etapas como:

  • Preparação do código para tradução
  • Exportando as sequências de software
  • Ajuste fino de estratégias de análise e segmentação
  • Como desenvolver uma lista de terminologia chave (glossário)
  • Criando o projeto de tradução de software
  • Atribuição de tradutores
  • Atribuição a revisores
  • Gerenciamento de consultas
  • Verificações automatizadas de controle de qualidade
  • Reimportação de strings traduzidas
  • Verificações de controle de qualidade no ambiente de teste ou de capturas de tela
  • Teste

Neste artigo, exploraremos esses diferentes componentes e suas implicações no processo geral de localização.

Preparação do código para tradução

Embora alguns software seja codificado pensando na tradução, muitas vezes a tradução é um requisito que surge quando o software já está maduro. A fim de preparar o código para tradução, é necessário prestar atenção nas variáveis, datas e na arquitetura geral de conteúdo traduzível versus código. Datas, moeda e outros fatores mudam de formato de acordo com a região. Se forem codificados, eles precisarão ser recodificados como entidades dinâmicas para permitir a flexibilidade intercultural. Dependendo de como o código é escrito, pode ser muito fácil ou difícil isolar o código do texto traduzível. Isso afetará a próxima etapa na exportação de strings, mas talvez seja o aspecto mais negligenciado e subestimado da localização de software. Cada ondulação na simplicidade do código versus texto resultará em inúmeras ondas que afetarão o processo de localização como um todo. Isso pode resultar em cenários em que é difícil preservar a integridade do código ou torná-lo amigável para os tradutores. Claro, você pode superar alguns desses desafios por meio de estratégias de análise e segmentação, mas quanto mais limpo você puder exportar conteúdo traduzível sem interferência de código, melhor (mais sustentável e escalável) será seu processo de localização de software.

Exportação das strings de software

A exportação das strings deve ser um processo direto. Mas isso não. Certos formatos são obrigatórios, enquanto outros devem ser evitados. Exemplos de formatos go-to: XML, YAML, JSON. Eles são estruturados, previsíveis, facilmente analisáveis e relativamente fáceis de encontrar padrões no código, o que reduz os problemas resultantes da tradução para diferentes idiomas.  Exemplos de formatos a serem evitados: TXT, CSV, código misto. Uma exportação CSV, por exemplo, pode se tornar um pesadelo. Caracteres delimitadores, como ponto-e-vírgula, são necessários como ferramentas linguísticas. É virtualmente impossível distinguir algoritmicamente entre um ponto e vírgula que é uma quebra de código e um ponto e vírgula que é uma ferramenta linguística. Isso cria centenas de falsos positivos que precisam ser verificados durante o processo de garantia de qualidade, bem como problemas durante a reimportação de código, etc. Com código misto, por exemplo, estamos nos referindo a XML com JSON como um exemplo que adiciona complexidade ao processo de análise e segmentação. A codificação também é um ponto crítico importante:

  • Codificação HTML
  • Codificação de URL
  • Codificação Unicode
  • Codificação Base64
  • Codificação hexadecimal
  • Codificação ASCII

Cada uma dessas estruturas de codificação terá ramificações no processo de localização, incluindo incompatibilidade de caracteres dependendo dos idiomas abrangidos.

Ajuste fino de estratégias de análise e segmentação

Se você seguiu as práticas recomendadas descritas acima, suas estratégias de análise e segmentação serão otimizadores de processo. Caso contrário, a análise e a segmentação se tornarão facilitadores do processo. Como otimizadores de processo, uma estratégia de ajuste fino de pars fino garantirá que o conteúdo seja ingerido por seu sistema de gerenciamento de tradução de maneira amigável para tradutores e revisores. É aqui que você pode garantir que as variáveis sejam protegidas, qualquer código restante seja protegido e que o texto seja quebrado de maneira que faça sentido para o processo de tradução. Se você não fez sua lição de casa, esta é a etapa em que as coisas podem ficar loucas. Ou porque é simplesmente impossível criar análise suficiente para proteger o código e as variáveis ou porque será necessário um nível insano de esforço para escrever expressões regulares suficientes para tornar o conteúdo do software mais fácil de traduzir. De qualquer forma, este é um passo fundamental. Se você alterar a estratégia de análise e segmentação ao longo do tempo, experimentará uma perda no aproveitamento da memória de tradução, o que criará custos extras e complexidade do processo. Pode não parecer grande coisa até que exploda em seu rosto. Vamos supor, por exemplo, que todo o seu software tenha 100.000 palavras e que você esteja traduzindo para 10 idiomas e que seu custo médio por palavra seja de US$ 0,15. Vamos supor que você traduziu seu software, mas agora itere em sua estratégia de análise, mas isso causará uma perda de 10% na alavancagem (o que pode ser um resultado esperado de uma pequena alteração na análise), ou seja, US$ 15.000 perdidos logo de cara, sem falar no tempo extra necessário e outras ramificações.

Desenvolvendo uma lista de terminologia chave (glossário)

Qualquer pessoa pode desenvolver um glossário. Muito poucos podem desenvolver um grande. Algumas pessoas seguem a rota estatística e exploram um banco de dados de conteúdo para as palavras-chave mais recorrentes. E enquanto isso agiliza as coisas e captura os termos que são importantes com base na frequência, vários termos-chave não são necessariamente usados com frequência. Algumas pessoas adotam a abordagem qualitativa e fazem com que os tradutores analisem o conteúdo e identifiquem manualmente os termos relevantes. Outros usam IA para procurar padrões linguísticos e identificar entidades e termos não necessariamente com base apenas na frequência, mas em sua relevância semântica geral. Independentemente da abordagem, quando se trata de um glossário, menos é mais. Embora você queira ter certeza de que capturou os termos essenciais, se sinalizar muitos termos como termos do glossário, será quase impossível garantir a governança sobre a aplicação adequada. Muitos falsos positivos e alertas tornam difícil para tradutores e revisores gerenciar as sugestões de termos e executar verificadores de controle de qualidade automatizados. Outra dica com glossários é que é tão importante sinalizar os termos que não devem ser traduzidos quanto aqueles que requerem um tipo específico de tradução.

Criando o projeto de tradução de software

Esta etapa depende muito da estrutura do sistema de gerenciamento de tradução que você está usando. Alguns sistemas permitirão que você gerencie todo o ciclo de vida do projeto dentro do mesmo ambiente e projeto, enquanto outras plataformas exigirão um tempo de abordagem diferente, que pode ser baseado em string ou arquivo. Embora possa parecer uma formalidade, a configuração do projeto de tradução real tem pontos de verificação importantes, como:

  • Garantir que os arquivos foram ingeridos em sua totalidade
  • Garantir que os pares de idiomas estejam corretos até o nível da localidade
  • Garantir que as datas estejam corretas
  • Garantir que as etapas do fluxo de trabalho sejam as necessárias
  • Atribuição de tradutores

Nesta etapa, presumimos que você já tenha uma equipe de tradutores previamente avaliada à sua disponibilidade por par de idiomas. É fundamental trabalhar com tradutores que são:

Translators Qualities

O mesmo que acontece com os tradutores, com ênfase adicional no discernimento crítico. Você precisa de revisores que sejam críticos o suficiente para entender as diferenças entre estilo e erros. Os revisores que mudam muito nesta fase do processo comprometem a integridade do processo de tradução como um todo. Aqui é onde a estrutura de gerenciamento de qualidade proprietária do Bureau Works entra em ação.

Gerenciamento de consultas

Uma parte essencial da tradução de software é a capacidade de responder a perguntas que surgem durante o processo de tradução. Por exemplo, o que significa o botão “X” ou para o que essa variável aponta? É importante ter um processo que permita fazer perguntas sobre o idioma de origem e ter as respostas disponíveis para todos os tradutores do projeto, independentemente do par de idiomas, para minimizar a necessidade de responder à mesma pergunta repetidamente. Também é importante ter uma maneira de atribuir status diferentes à consulta, como nova, atribuída, resolvida e assim por diante, para que sua equipe de gerenciamento de projetos possa garantir que as consultas sejam respondidas em tempo hábil.

Verificações automatizadas de controle de qualidade

Críticas para qualquer processo de localização de software, as verificações automatizadas de controle de qualidade garantem que determinados itens importantes sejam sinalizados, como:

  • Espaços à direita
  • Limites de caracteres
  • Pontuação inconsistente
  • Não adesão ao glossário
  • Ortografia
  • Tags inconsistentes (incompatibilidades no código-fonte e no código traduzido)
  • Reimportando strings traduzidas

Se você chegou até aqui, está fazendo algo certo! :) Pode ser menos doloroso, mas você está aqui. Agora é hora de reimportar as strings de volta para seu repositório e reconstruir o software. Se você esqueceu ou administrou mal qualquer uma das práticas recomendadas descritas anteriormente, pode ter dificuldades nesta etapa com problemas no processo de reimportação devido a quebras no código, incompatibilidades de tags ou outros problemas que podem afetar a recaptação bem-sucedida do código.

Fonte: Linkedin

Verificações de controle de qualidade no ambiente de teste ou de capturas de tela

Esta etapa pode ser ignorada se for mesclada com o teste, mas é útil fornecer aos tradutores acesso a um ambiente de teste ou capturas de tela das telas principais para garantir que as strings sejam exibidas corretamente e que não haja problemas evidentes que impeçam o início do teste.

Teste

Este é um estágio que impulsiona a qualidade além da detecção e correções óbvias de bugs. O teste permite uma nova visão das strings traduzidas no contexto. Algumas traduções que pareciam perfeitas durante o processo de tradução podem não ser as melhores do ponto de vista da experiência do usuário. É importante trabalhar com testadores comprometidos em melhorar a experiência do usuário e não apenas procurar bugs de forma reativa.

Conclusão

Localização de software é um processo extenso, caro e complexo. Mas não é só isso. É iterativo e contínuo, o que significa que você passará inúmeras vezes pelo mesmo processo para atualizar seu software à medida que ele continua a evoluir. Esta é uma visão geral superficial e de alto nível de um processo que pode se tornar infinitamente mais matizado e complexo de lidar. Mas a principal conclusão é que vale cada centavo para investir em uma estrutura e melhores práticas desde o início. Uma vez que o navio tenha navegado, ele se tornará cada vez mais desafiador e caro para consertá-lo.

Try Bureau Works Free for 14 days

ChatGPT Integration
Get started now
The first 14 days are on us
Free basic support