[Webinar] The global software market is valued at almost half a trillion dollars and growing across all sectors. To stand out in this thriving market, now is the time to increase your global reach by localizing your software. But there’s more to it than simply end-build text translation. Providing value to every user means considering all the smaller, but critical, details—some of which can be a challenge to navigate.
3. Defining Localization
Localization: the process of adapting a product or
content to a specific locale or market.
• Translation is one of several localization elements
• Give product the feeling it was created specifically
for a target market
4. Elements of Localization
Adapt graphics
to target markets
Modify content to suit consumption habits
of other markets
Adapt design and layout to properly display
translated text
Convert elements to local requirements (i.e.
currency, units of measure)
Use proper local formats for dates,
addresses and phone numbers
Address local regulations
and legal requirement
6. 6 Steps to Establishing Presence in Your
Organization
1. Consider your global culture
2. Bring localization to the forefront
3. Develop with localization in mind
4. Think outside the development group
5. Connect to existing projects
6. Source in-country reviewers
7. Budgeting for Localization
• Determine who pays for localization
– Corporate versus regions
• Determine cost, considering:
– Translation
– Testing
– Engineering
– Project Management
What can you do with what you have?
8. Defining Internationalization
Internationalization: makes localization possible by
ensuring your architecture and code are global-ready.
• Prerequisite vital to translation process
• Deliver a higher return on investment
• Define training and standard operating procedures
10. Use pseudo-
localization.
Plan for at least
30% text
expansion.
Keep text short.
Don’t use
acronyms.
Don’t reuse the
same text in
different context.
12 Best Practices Before Starting Software Localization
11. Build a library of
internationalized
objects.
Don’t hardcode
text or
punctuation.
Make sure to use
UTF-8 encoding.
If in doubt,
consult with a
Localization
Expert.
12 Best Practices Before Starting Software Localization
12. Why Design for Localization?
• Prevent errors, such as:
– Replication of source bugs
– Avoidable translation
mistakes
– Common localization issues
1 LOCALIZABILITY BUG
……N languages later
English
Japanese
French
Polish
German
13. Prepare for Text Expansion
Have a nice day!
English 16 characters
Ich wünsche Ihnen einen schönen Tag!
German
36 characters
(125% length increase)
14. Prepare for Text Expansion
Possible Solutions: Text Reuse
• Don’t use the same string in different
contexts
• Write every instance of the string
• Specify the content of each in the
string ID
– <string name=”CategoryAll”>ALL</string>
– <string name=”BuyingFormatAll”>ALL</string>
15. Mapping out the Workflows
• Content flows determined by
the team
• Identify content locations
• Where can automation be
inserted
– No cut and paste
– Full import export function at a
minimum
• Plan for testing
16. Test Readiness
• What and how much testing is
required
• Test Plans and Test Cases
• Pinpoint gaps in your team
• Identify your:
– Hardware
– Localized software
– Localized test beds
• What is the plan for updates
19. Becoming Part of the Agile Team
• Mature program localization is a
component of the team
• English is just another language
• When to translate?
– Is code complete?
– Sprints identified?
– UI complete?
20. Typical Software Localization Process
• Initially you need
– Glossary and Style Guides
– Translation Memories
– Financials
– Automation
• Schedule Builds
– Which go to translation?
– Which build gets tested
21. An Example Process Flow
Export
Function
Translation
Process
Review
Import
Implement
Changes
Testing Release Repeat
22. Technology and Tools
• Consider the following when
executing your localization
program:
– Translation memory systems,
portals, and or TMS
– Purchasing tools vs managed
services
• Asses current tools, and plans for
the foreseeable future
23. Creating Automation
• Identify all systems
– Connectors, APIs, CLI
– Determine UI needed
– Automate in-context review
Automation Goal: smallest amount of possible
human intervention
27. Internationalization Validation – Preparation
• Internationalization testing
– Install English onto localized environment
– Install pseudo translated files into build
• Test automation of connectors and API’s
• Compile a bug database
28. Pseudo Localization
Pseudo localization is a localizability testing technique where localizable text is
replaced with dummy, automatically generated “translations”.
Replace characters with
special characters
ŘéƤļäçê
Add special characters/
encodings required in
target locales
ŘéƤļäçêݜݤ
Expand strings according to
rules to approximate length
differences in translations
ŘéƤļäçê!!!!!!ݜݤ
Include character markers at
beginning and end of strings to
indicate string boundaries
[ŘéƤļäçê]!!!!!!ݜݤ
Example: Visual Studio
29. Testing Coverage and Language
A Coverage Matrix
25
Languages
3
Hardware
2
Third
Parties
4
Browsers
30. Possible number of configurations
What type of testing
is needed on these
configurations?
• Functional
• Localization
• Linguistic
• Compatibility
• Updates
Language types
• Latin
• Multibyte
• Bidirectional
• Cyrillic
31. Determine Test Threshold Points (ROI)
The point of diminishing returns
Cost vs Quality
First Pass Second Pass Third Pass Release
Cost Quality
32. Insource vs Outsource Testing
Recommended
Hybrid Approach
Current set in
house set up
Hardware Headcount