No processo de localizac¸˜ao, a traduc¸˜ao autom´atica ´e frequentemente usada para produzir uma traduc¸˜ao inicial, que depois ´e corrigida ou validada peloProduct Owner. O uso de TA no processo de localizac¸˜ao tem um grande impacto no tempo gasto e, consequente-mente, nos custos deste processo.
A qualidade da TA ´e tamb´em um fator importante nessa poupanc¸a de tempo e custos, pelo que ´e importante assegurar que a ferramenta de TA usada tem qualidade.
No Apˆendice A ´e dado um breve resumo da hist´oria da TA. Para um resumo mais alargado, sugiro a leitura de Hutchins [40].
2.2.1 Traduc¸˜ao autom´atica como pr´e-traduc¸˜ao
As ferramentas de traduc¸˜ao autom´atica tˆem vindo a evoluir, principalmente na utilizac¸˜ao de traduc¸˜ao autom´atica neuronal, oferecendo traduc¸˜oes com maior qualidade a cada ano que passa, e, por conseguinte, necessitando de menos correc¸˜oes.
A TA oferece aos tradutores humanos um rascunho da traduc¸˜ao. No limite, se a TA for de muito m´a qualidade, o rascunho tem de ser reescrito de raiz, mas no caso mais geral, o
1AInternationalization(internacionalizac¸˜ao) (i18n) tem um elevado benef´ıcio quando pretendemos ter umsoftware que seja multilingue , dado que, se considerarmos alguns pa´ıses asi´aticos, o sobrenome ´e fornecido primeiro e o nome pr´oprio s´o ´e fornecido em segundo lugar
Cap´ıtulo 2. Enquadramento tecnol´ogico 12
rascunho precisa apenas de pequenos ajustes, e assim poupa bastante tempo ao tradutor.
A TA n˜ao dispensa a revis˜ao por parte de um tradutor humano, que no caso espec´ıfico da TrustSystems ´e uma func¸˜ao desempenhada peloproduct owner, pois h´a situac¸˜oes onde
´e necess´ario ajustar vocabul´ario, gram´atica ou nuances da frase original que s˜ao perdidas nas traduc¸˜oes autom´aticas.
2.2.2 Utilizac¸˜ao da traduc¸˜ao autom´atica no EasyLang
A traduc¸˜ao autom´atica possibilita que o EasyLang possa fazer uma traduc¸˜ao inicial de todas asstringsencontradas. Com este avanc¸o, o tradutor tem o seu trabalho um pouco facilitado, pois j´a n˜ao precisa de realizar todas as traduc¸˜oes, mas sim, necessita apenas de corrigir as traduc¸˜oes que forem feitas pelosoftware, sendo assim os dois tipos de traduc¸˜ao, autom´atica e humana, usados em “colaborac¸˜ao”.
Com isto, ´e poss´ıvel acelerar bastante o processo de traduc¸˜ao de umsoftware. Usar a traduc¸˜ao autom´atica no EasyLang traz algumas vantagens, tal como puder retirar partido das mem´orias de traduc¸˜ao (por exemplo o l10n de outrossoftware j´a realizados no pas-sado) e tamb´em ter uma maior consistˆencia nas traduc¸˜oes que s˜ao realizadas.
Cap´ıtulo 3
Trabalho relacionado
Numa fase inicial do projeto, foi feita uma an´alise desoftwaresj´a existentes, semelhantes ao que se pretende desenvolver, com o objetivo de determinar qual o n´ıvel de sobreposic¸˜ao entre os requisitos definidos pela TrustSystems e as funcionalidades dispon´ıveis em cada uma destas ferramentas.
Por um lado, se o n´ıvel de sobreposic¸˜ao entre os requisitos e as funcionalidades ofere-cidas por algum destessoftwaresfosse suficientemente alta e admitindo que o seu c´odigo fonte fosse aberto (open source), havia a possibilidade de tomar esse c´odigo fonte como base para o desenvolvimento do projeto.
Por outro lado, se nenhuma das ferramentas analisadas satisfizessem o conjunto de requisitos definidos, ent˜ao a relevˆancia deste projeto sai reforc¸ada dessa an´alise.
Desta forma, nesta an´alise temos v´arios requisitos fundamentais, dos quais, posso salientar trˆes requisitos principais: (1) a capacidade de osoftwareter de conseguir analisar ficheiros do tipo HTML e TypeScript, extraindo todas asstringsque estes contiverem; (2) substituic¸˜ao dasstringsliterais por chamadas a func¸˜oes da biblioteca de i18n; (3) traduc¸˜ao autom´atica dasstringsencontradas;
Nas pr´oximas secc¸˜oes irei apresentar algumas ferramentas dispon´ıveis no mercado, e que implementam alguns destes requisitos. O cap´ıtulo termina com uma an´alise compa-rativa das ferramentas apresentadas.
3.1 Omegat
O Omegat [16] ´e um software de c´odigo aberto, onde o mesmo est´a dispon´ıvel sob a Licenc¸a GPL. Este comec¸ou a ser desenvolvido em 2000 por Keith Godfrey, na lingua-gem de programac¸˜aoC++. Esta ferramenta foi desenvolvida com o intuito de ser uma ferramenta de traduc¸˜ao. Em 2001, foi tornada p´ublica uma reimplementac¸˜ao na lingua-gem de programac¸˜aoJava, utilizando o Java 1.3. No in´ıcio, o Omegat apenas suportava ficheiros do tipoStarOffice; texto puro; textoUnicode e HTML.
13
Cap´ıtulo 3. Trabalho relacionado 14
As principais caracter´ısticas destesoftwares˜ao:
• Softwarede c´odigo aberto;
• Gratuito para utilizac¸˜ao de qualquer tipo de utilizador;
• Permite a an´alise de ficheiros do tipo XLIFF, XML, HTML, Texto Simples, Java Properties XML, LaTeX, Wordpress, Portable Object (objeto independente da ar-quitetura) (PO), OpenDocument,entre outros;
• Correspondˆencias aproximadas, ou seja, v´arias traduc¸˜oes para a mesmastring;
• Processamento em massa dos v´arios ficheiros de um projeto;
• Utilizac¸˜ao de v´arias mem´orias de traduc¸˜ao ao mesmo tempo;
• Gloss´ario do utilizador com func¸˜ao particular, sendo esta a de reconhecimento de formas flexionadas, ou seja, o utilizador pode criar o seu pr´oprio dicion´ario com as suas traduc¸˜oes.
Esta ferramenta apresenta algumas funcionalidades em comum com o que se pre-tende desenvolver no EasyLang, tais como a an´alise de diferentes tipos de ficheiros e a integrac¸˜ao de traduc¸˜ao autom´atica, neste caso fazendo uso da API doGoogle Tradutor.
No entanto, n˜ao cumpre alguns requisitos importantes, tais como o suporte da linguagem TypeScript, a capacidade de identificarstringsem c´odigo que n˜ao tenha sido escrito fa-zendo uso das bibliotecas de i18n e a sua substituic¸˜ao por chamadas `as func¸˜oes de i18n.