The process of translating software is not as simple as it might seem in the beginning. This is due to all the steps and responsibilities involved. Therefore, a proper translation workflow is needed – one that aligns with your software development process in order to make your software accessible and usable in different languages.
When talking about a typical translation workflow, we have more in mind than the steps a translator or Language Service Provider (LSP) takes. Those are a part of the general workflow, that is required for internationalization (i18n in short) and localization of software. Additional steps are required to manage the content during development.
From our own experience working with many customers, the following process can be distilled:
1. Preparing For Translation / Internationalization
Internationalization is the process of making sure a piece of software can be adapted to different languages and regions. This requires using mechanisms that allow for changing content dynamically based on the selected “locale” (the combined settings of language and country).
This includes text fragments, time and date formatting, currency selection and maybe even different images. This results in a generalization of the product so that it can handle multiple languages, scripts and cultural conventions.
With respect to translation it is important to not embed text directly into the code, but instead, extract it from the containing format. It is placed into resource files, that are used to determine the proper content to be displayed.
2. Extracting Copy For Translation / Locale File Creation
The result of fulfilling the requirements for the translation aspect of the internationalization process is resource files, as mentioned before. These must be extracted and converted into the file format the translation vendor requires before sending them for translation.
3. Briefing Of Translators / Styleguide
Translators are often given content in a context-free format. Therefore, providing reference material is key in order to ensure high-quality translations.
Aside from glossaries and style guides, there are different channels that could be used to provide context. Give translators access to the software. Developers can leave relevant context information as comments in the resource files. Another great help for translators is direct access to product managers and developers to get questions answered.
When the translation is finished, review the work for translation accuracy and overall correctness. Measuring text quality is difficult. However, systems that integrate review functionality can improve translation quality and accelerate localization in a timely manner.
Use a proof-reading service, to let someone else familiar with both languages review the translation.
5. Integration Of Translation Files
The translated resource files must be transferred back from the translator to the development team for integration with the code. If required, convert the received file to the required target format.
After the translation files are integrated, testing and quality assurance are of high importance. There are common errors that should be checked for:
- Are the imported resource files correct?
- Does the translation uncover problems with typography or layout in the user-interface?
- Are the texts linguistically accurate?
- Is the localized result appropriate, with regard to color, design, etc., for the targeted culture?
07 Publishing / Release
After the translations have been added to the software and tested, you can release the localized software.
As the volume of translations, the number of target languages and the frequency of updates increases, supporting tools that help to automate the translation and localization process get more and more important.
Phrase provides different ways to get translations: work with your own team of translators or order professional translations from LSPs. These systems also help with file format conversions, as different platforms and programming languages require different localization file formats.
Automated collection and submission of resource files is another valuable feature with regard to file handling.
To aid translators during the actual translation process, Phrase has support for style guides and glossaries to provide context. For testing it is essential to have an environment allowing the tester to run the software in the different contexts. For applications – both desktop and mobile – the respective development environments often have simulators for this.
Phrase provides dashboards giving statistics (like status per content or language, number of issues, or time spent). These allow for real-time monitoring and tracking performance to oversee resource allocation.
The better the tooling supporting the translation process, the easier it gets for all parties involved such as managers, developers and translators. Phrase helps to streamline and speed up the translation process and thereby reduce localization costs and improve overall translation quality.
Be sure to subscribe and receive all updates from the Phrase blog straight to your inbox. You’ll receive localization best practices, about cultural aspects of breaking into new markets, guides and tutorials for optimizing software translation and other industry insights and information. Don’t miss out!