Software Localization

Software localization is the process of adapting a program to a specific international market, which includes translating user interface, text in graphics, error messages, help topics, customizing features, user documentation, etc., and then testing results to ensure that the program works bug-free. Though seemingly a daunting task, working with experts simplifies this process. We know how critical it is to meet your deadlines and we’re happy to deliver according to your specifications so you can focus less on the localization of your software, and more on its application.

These are the steps we take when helping you localize your project:

Business Decisions
Many business decisions precede any localization work on the software itself and these are some of the questions that need to be considered:

• Which languages are needed?
• Will the entire application (User Interface, Online Help, Documentation, Support) be localized or only certain parts in specific languages?
• How often will the software be updated?
• Will all language versions be ready simultaneously or will the source product go on the market first with language versions following at a later date?

Replace all cultural and language-specific elements with neutral ones or substitute appropriate elements depending on the language.

• Design the user interface so that all fields are large enough to accommodate strings in any language without truncation.
• Substitute appropriate date, time, number, currency formats.
• Eliminate graphics with multiple meanings or containing hand gestures, body parts, religious or astrological symbols.
• Remove graphics with culture-specific shapes, such as stop signs, sports equipment, mailboxes.
• Provide input mechanisms that can handle various character sets.
• Create a mechanism for users to select their preferred language.

Once the application has been internationalized, the translatable text elements can be translated. The first step is to create a so-called localization kit. The localization kit is a set of files and instructions that contain all the translatable items in a format that can be accessed by the translators and their tools such as:

• Text strings from the user interface
• Text in graphics
• Error messages
• Help topics
• User documentation: operations manual, quick start guide, license agreement and so on

Build and Test Language Versions
Completed translatable text must then be placed back into the application or resource files. Software engineers will then generate a new version of the software that is language-specific or that contains all languages. Testing in this step means testing the build process that creates new versions of the software.

Linguistic Testing
The new software, all screens and displays, need to be checked by qualified linguists to ensure that no text elements have been truncated, incorrectly assigned and that no translations are missing.

Functionality Testing
After linguistic testing, the application is subjected to rigorous functionality testing to ensure that all functions of the software perform correctly in the localized versions. Experienced software testers using special testing tools reduce the time and cost required to ensure that the software produces the correct results in each usage scenario.

Bug Fixing
Errors or defects found during linguistic and functionality testing are resolved at this stage. Fixes are applied, and tested to ensure that problems have been resolved and that no new bugs have been introduced.

Manufacture and Go Live
When the application is stable it is prepared for manufacturing and distribution.