Please use this identifier to cite or link to this item: http://hdl.handle.net/10316/83541
Title: Source code analysis and transformation to aid internationalization support
Other Titles: Análise e Modificação Automática de Código Fonte para Assistência à Internacionalização
Authors: Batanete, Joao Pedro Santos 
Orientador: Costa, Ernesto Jorge Fernandes
Certo, João
Keywords: Transformação de código; Internacionalização; ANTLR; Android; iOS; Code transformation; Internationalization; ANTLR; Android; iOS
Issue Date: 10-Jul-2018
Serial title, monograph or event: Source code analysis and transformation to aid internationalization support
Place of publication or event: WIT Software
Abstract: Com a expansão dos mercados de software, a localização dos produtos está a tornar-se cada vez mais importante. Existe uma correlação pronunciada entre o sucesso das aplicações e a disponibilidade destas para o idioma local. Isto cria a necessidade de melhorar os processos de suporte à localização para possibilitar o desenvolvimento de aplicações de forma mais eficiente em termos de custos e tempo.Para gerir conteúdo textual, uma abordagem comum é a utilização de pares chave/valor para representar os fragmentos de texto da user interface}, com os valores correspondentes a cada chave e a cada idioma a serem armazenados numa plataforma de localização, que é utilizada pela equipa de tradução para criar as traduções.Os tradutores necessitam com frequência de informação "contextual" para durante o processo de tradução de uma chave, de forma a conseguirem disponibilizar uma tradução aceitável. Por forma a cumprir este requisito, é comum utilizar fotografias do contexto da aplicação (user interface) associadas com as chaves que aparecem no ecrã do dispositivo. O processo de obtenção das associações é, neste momento, realizado de forma manual, o que o torna moroso e por vezes impraticável para aplicações em contexto real com um número de chaves demasiado grande, ou com uma user interface demasiado complexa.O objetivo central deste estágio é criar uma ferramenta que automatiza certas componentes do processo, auxiliando o utilizador na obtenção das associações entre os pares chave/valor e as fotografias e exportando-as para uma plataforma de localização. Isto é feito através da modificação do código fonte de forma direta utilizando ferramentas de análise e transformação estática de código. As plataformas suportadas inicialmente irão ser Android e iOS, mas a extensibilidade a outras plataformas é um dos objetivos principais.
With the widespread expansion of software markets, localization is becoming increasingly important. There is a pronounced correlation between application usage and availability in the home language. This creates the need to improve localization support processes in order to deliver applications more quickly and cost-effectively. In order to manage textual content, one commonly used approach is the use of key/value pairs to represent user interface text fragments with the values for each key, and for each target idiom being stored in a localization platform, which is used by the translating team to create the translations.Translators often need "contextual" information when translating a given key in order to provide an acceptable translation for it. In order to achieve this, it is common to use screenshots of the application context (user interface) associated with each key that appears on-screen. The process of obtaining the associations is currently done manually, which is very time consuming and sometimes impractical for real-world applications where the number of keys is too large or the application’s user interface is too complex.The central objective of this internship is to create a tool that automatizes certain portions of the process by aiding the user in obtaining associations between the key/value pairs and the screenshots and uploading them to a localization platform. This is achieved by changing application source code directly using static code analysis and transformation tools. The platforms supported initially will be Android and iOS but extensibility to other platforms is a primary goal.
Description: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: http://hdl.handle.net/10316/83541
Rights: openAccess
Appears in Collections:UC - Dissertações de Mestrado

Files in This Item:
File Description SizeFormat
final_internship_report.pdf1.34 MBAdobe PDFView/Open
Show full item record

Page view(s) 50

383
checked on Nov 12, 2019

Download(s) 50

371
checked on Nov 12, 2019

Google ScholarTM

Check


This item is licensed under a Creative Commons License Creative Commons