P. 1
White Papers in Globalization

White Papers in Globalization

|Views: 49|Likes:
Published by pcharala57

More info:

Published by: pcharala57 on Feb 26, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

07/05/2010

pdf

text

original

LISA

White Papers in Globalization

Bringing Globalization to Every Solution

http://www.lisa.org

LISA White Papers in Globalization: Bringing Globalization to Every Solution was written by Xiao Hui Zhu (IBM China). The author wishes to thank Michael Anobile (LISA) for his advice and support, and Arle Lommel (LISA/SMP) for editorial contributions. Xiao Hui Zhu ( ) is an advisory software engineer at IBM Globalization Certification Lab in China. She has worked for IBM since November , starting her career as a project manager in the Globalization organization and performing various roles, including tester, architect, coordinator, and consultant. She may be reached at zhuxiaoh@cn.ibm.com.

©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization
Bringing Globalization to Every Solution Xiao Hui Zhu ( ) Advisory Software Engineer Globalization Certification Laboratory IBM China

©2003 The Localization Industry Standards Association. All rights reserved.

4

LISA White Papers in Globalization: Bringing Globalization to Every Solution

Contents
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Planning . . . . . . . . . Business Owners . . . Raising awareness Development . . . Deployment . . . . Maintenance . . . . Developers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 7 7 7 7 7 7 8 9 9 9 10 11 11 13 13 13 14 14

Development . . . . . . . . . . . . . . . . . . . . . . . . Requirements . . . . . . . . . . . . . . . . . . . . . . . . Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . Translation . . . . . . . . . . . . . . . . . . . . . . . . . . Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . Maintenance . . . . . . . . . . . . . . . . . . . . . . . . Adding new languages/countries/regions:. . . . Changing or adding globalization features: . . .

Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Endnotes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ❖ Figures Figure 1. Globalization requirements for a global travel application. . . . . . . . . . . . Figure 2. High-level structure of a global application built on a Web Services system. Figure 3. Typical translation work flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4. Localization testing checks to see if naming/address/date representations conform to the cultural conventions. . . . . . . . . . . . . . . . . . . Figure 5. It is not easy to figure out translation accuracy without the context. . . . . . . . . . . . . . . .

6 10 11 12 12

©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization: Bringing Globalization to Every Solution

5

Abstract
As the Internet increasingly drives the economy, today’s market is rapidly becoming more and more geared toward multinational participation and international transactions. One challenge in this is that globalization¹ is not something that can simply be added to existing applications. Globalization permeates so many areas in a solution’s development that it must be taken into consideration from the very beginning of the development cycle. This Globalization, Internationalization, Localization and Translation (GILT) industry is so wide in its scope that most people see it from only their own narrow and deep domain(s). People working in globalization must know how to merge globalization support into current development cycles, which may have been planned with no special consideration for globalization, without any risky impact on projects. This paper explores the author’s experience in enabling globalization support throughout the whole development cycle. It will discuss ways to collect globalization requirements from business owners, ways to help raise the profile of the globalization support plan for business owners, ways to “embed” globalization support into the development team from a project management perspective, and ways to help developers quickly understand globalization (without adding multiple difficult-to-learn programs).

©2003 The Localization Industry Standards Association. All rights reserved.

6

LISA White Papers in Globalization: Bringing Globalization to Every Solution

Requirements
The Internet’s fast growth has opened unprecedented opportunities for businesses beyond national boundaries and geographical barriers. Those living outside of the United States and other Englishspeaking countries like to be served in their own languages and are sensitive to their cultural and national conventions. This need is even more important for large businesses, because they typically have broader global coverage. People throughout the world generally prefer to use their native languages in their daily lives, and most cannot speak English. When companies want to promote their products in local markets, the first thing they need to do is develop culturally-acceptable translations for their brands, then localize everything (brochures, websites, products manuals…) accordingly. Globalization impacts every aspect of a solution. Basics such as date/time representation, number/currency representation, calendar representation, etc. are all very general considerations. By taking the meanings of the words into consideration, linguistic services encompass a variety of technologies, such as spell and grammar checking, morphological analysis, speech recognition, machine translation², etc. In addition to the above-mentioned business-independent needs, globalization also helps to generate ROI by providing crucial culturally-sensitive business operations. When a business is being expanded from one region to another, the company must plan to adjust business operations to fit local markets. This brings globalization challenges to software applications, especially those having direct interactive user interfaces. A large multinational bank, for example, will have different business policies in different countries—if its applications are not well designed with globalization in mind, as the bank expands the same tasks must be invested in repeatedly, and time to market has to be delayed. The globalization requirements for a global travel application may look something like the view shown in Figure . Globalization requirements for a global travel application.

Requirements

Global traveling experience

• • • • • • •

date/time representation number/currency representation calendar representation measure representation 12 language versions 4 machine translation versions …

• personalized tour recommendations • multilingual dynamic e-business • …

Figure 1. Globalization requirements for a global travel application.

©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization: Bringing Globalization to Every Solution

7

Planning
In developing a globalized solution, the first step is planning, both for business-owners and developers.

Business Owners
Raising awareness
In many (if not most) situations, business owners will have only very limited knowledge about the details of globalization, although they will know for certain that their businesses needs to be globalized. To help them quickly get a handle on the relevant issues, a couple of things can be presented: Ask them to visit several typical globalized solutions as references, so they know the basis of globalization and its behaviors and values in the solutions. A set of detailed explanations for individual globalization feature must be prepared. . Help them analyze the needs and potential of re-engineering to increase ROI through adding globalization support in their own businesses. . Settle on requirements through back-and-forth communication. A checklist for the feature sets (built on the list mentioned in step ) can be used to simplify the process. .

Development
Based on the needs determined in consultation with business owners, developers can work out plans (including cost, schedule and scope) for implementation and pass them to the business owners for review. Once all have agreed to the plan, the developers can begin development work, and the business owners don’t need to worry about the details of the development cycle, except for verifying that developers are meeting pre-defined checkpoints. Business owners maybe asked to help provide more information about business, such as typical test data for emulating the business reality, historical data for further analyzing load balance and performance issues, and customer profile information for refining globalization-relevant design, etc.

Deployment
Business owners should pay attention on deployment. While a detailed report is usually made available upon completion of development, the highlights must be regularly reported to the business owners for early awareness. Globalization does not add additional efforts for deployment, but helps for a more reasonable deployment solution; for example, it can help to minimize peaks in server loading by distributing data from different countries or regions on the server(s), so peaks and troughs in server loading that depend on times zone can be better balanced.

Maintenance
Maintenance is very important to business owners, and developers need to present a detailed proposal as one of the later deliverables in a project. It is, however, best to keep the business owners aware of some highlights in the planning stage. These highlights may contain the following: . There must be a documented process and its corresponding implementation for updating contents and/or programs. Ideally this is an automated mechanism, which extracts textual data from the con©2003 The Localization Industry Standards Association. All rights reserved.

8

LISA White Papers in Globalization: Bringing Globalization to Every Solution
tents of updates, distributes this text to translators, collects the translated files and builds them back into the application, and then gets the application up and running again; 2. There must be a documented process and its corresponding implementation for adding languages. It shall include how to make the application switch to a new language, how to arrange translation (see step 1) for the new language, how to incorporate any new language-specific features, and how to add a new languagewithout unnecessarily affecting other languages and business operations. . There must be a process documented for removing/updating/adding globalization features to allow for changes. Some potential changes are new currency formats (such as the Euro), new national policies (e.g., fractions are not allowable for currency), new date formats due to government transitions, etc. Based on the above, business owners can plan for and accommodate change by including globalization support in their plans and building it into their solutions.

Developers
Developers themselves have many things to plan in addition to assisting business owners in making and assessing plans. Though globalization does not bring much more efforts to development itself, it does bring something different to the team. Only a limited number of staff will typically focus on globalization, but the others need to have some understanding of globalization, so they can co-operate with those involved in globalization and not inadvertently undermine their efforts. Delivery of a single executable is the model assumed in this paper, and all staff should be familiar with the requirements for this. The developers who focus on globalization in the team will take up globalizationoriented jobs, such as: . . . Design and development of globalization-related modules (such as centralized tax calculation for all the countries); Setup and configuration of globalization-related products (such as machine translation, terminology management, or translation memory for all required language pairs); Coordination of translations (globalization usually needs translation, and it usually happens late in the project when content is relatively stable) and communication between translators (usually native speakers from various countries) and the development team; Determination as to whether runtime systems needs any globalization-related setup and configuration (if thay are not the same as the development system), as well as implementation of any such special requirements; Detection of any potential changes due to globalization and creation of a corresponding proposal for maintenance;

.

.

Others in the team may only need to know how to use progamming-language capabilities to solve basic cultural-specific needs, such as time, date, number format, etc., that belong to language-independent program code.

©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization: Bringing Globalization to Every Solution

9

Development
Globalization is not part of a feature list—it is a fundamental part of architecture. Globalization must be considered from the first release of an application, no matter whether the business needs globalization support or not at that time. A single executable is the key to ensuring that a globalized system can be designed, built, and maintained efficiently and correctly. A single executable means that one version of a program’s code supports all languages, countries or regions. Software programs must be developed that allow the single executable to handle the cultural needs of all supported countries/regions. In this model a culture- and languageindependent program code calls culture- and language-dependent information at run time, thus greatly reducing the cost and effort invested in design and deployment and simplifying the process as well. Building on these basic concepts, next comes the process of globalization development, starting with the following requirements.

Requirements
All globalization requirements should be treated as one group. A list containing application-independent cultural-specific representations, documents for introducing globalization technologies, and globalization-oriented business logic analysis can all help business owners understand globalization and plan accordingly.

Design
Globalization starts from architecture. Even businesses that do not presently need globalization should still take globalization into basic consideration for future upgrades. A single executable must be built at first and all the other components, no matter whether globalization-related or not, should be built on top of it. Some multinational companies were not aware of the need to consider globalization requirements from the beginning many years ago when they started to design their systems. The resulting shortcomings appeared dramatically as these businesses subsequently expanded throughout the world. When businesses with such systems go to change their existing systems to accommodate the needs of various local markets, they are often very disappointed the enormous investment required to correct for previous designs inadequate for globalization needs. For basic globalization features such as date/time/number representation format, no special considerations are necessary at the design stage if the programming language (such as Java) can handle them, provided that these features are accessed in standard ways. These aspects are “invisible” in the blueprint, but help to support globalization. In other cases globalization support is “visible” in the blueprint. It may be in the form of products (such as machine translation), programming modules (such as tax calculations) or even several additional programming commands (such as identify the language preferences from end-users). For example, a global travel application built on Web Services system might have an architecture such as that shown in Figure . High-level structure of a global application built on a Web Services system:
©2003 The Localization Industry Standards Association. All rights reserved.

10

LISA White Papers in Globalization: Bringing Globalization to Every Solution
Service Registration Center

bli WS sh DL ing ser vic e

en_US ja_JP …
machine translation personalization

up ok Lo

DI ice UD serv

Pu

Dynamic Invoking

SOAP Service Provider Service Requesters


en_US ja_JP de_DE en_US ja_JP de_DE

zh_CN

ar_EG

en_US ja_JP …

zh_CN

ar_EG

Figure 2. High-level structure of a global application built on a Web Services system.

In short, very careful attention must be paid in the early stage to ensure the addition of globalization features does not bring any inconsistencies to the whole system.

Coding
Following the design phase, globalization add-in coding can be either “invisible” or “visible”. Using the APIs³ of Java and other programming languages (if they provide adequate support for globalization), programmers can deal with many basic globalization features, such as the representations for date, time and number. If third-party software products are included in the globalization process or in globalized code, programmers can work out the coding by reading through the products’ documentation as usual, and then embed them into the whole solution. A typical example of a third-party product that might be embedded is a linguistic services, such as a machine translation. For commonly-used culture-specific business logic components, programmers can work out stand-alone modules to encapsulate the business functions for all supported countries/regions. These can even be shared and reused across the platform and between programs and solutions if they are appropriately application-independent. Typical examples are modules dealing with tax calculation, postal addresses, name sequences, etc.
©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization: Bringing Globalization to Every Solution

11

Translation
Content can be prepared at the same time as coding is going on. When content is ready, it is translated. There are many articles and books about translation, its process, tools and standards, practices and methodologies, so detailed discussions is not included here. The only specific item of mention is that a development team will typically need a translation coordinator (in some cases it is preferable that this be the same person who will take the role as translation testing coordinator) in the development team for globalization solutions. It is recommended that the person join the content preparation group, help to organize the source file structures, and then start translation and testing coordination. This typical work flow is illustrated in Figure . Typical translation work flow.

Extracting Creating

Development Team source file translated files

Coordinating Controlling

Translation Coordinator translated files (Simplified Chinese, German, Arabic)

Distributing Managing Packaging
source file

source file Translation Service Center
Simplified source Chinese file file German source file

file

Arabic file

Translating

Simplified Chinese Translator

German Translator

Arabic Translator

Figure 3. Typical translation work flow.

Testing
If an application is designed and developed for globalization by closely following the single executable model, function testing for all language versions⁴ will be greatly reduced because, for languageindependent functions, only one version (usually the source language version) must go through function testing in order to ensure basic functional soundness After conducting the functional testing, the testing goes to culture-sensitive contents and globalization features. There are several aspects to this testing: . Localization⁵ testing focuses on the following: • Whether the user language interface conforms to appropriate cultural conventions. • Whether character set(s) are invoked correctly and display properly.

©2003 The Localization Industry Standards Association. All rights reserved.

12

LISA White Papers in Globalization: Bringing Globalization to Every Solution
• • Whether language/country/region-sensitive information is displayed in a culturally expected representation format (Figure ). Whether the bi-directional⁶ data is displayed correctly.

Figure 4. Localization testing checks to see if naming/address/date representations conform to the cultural conventions.

. Translation testing is to check translation accuracy and contextual accuracy. Though there are lots of ways to control translation quality during translation cycle, but sometimes it is not easy to check the accuracy without the context. For example, the word “single” would mean a room for one person if it is used for hotel service (Figure ), but can also mean a person who is not married. Only knowledge of context will ensure proper translation.

<?xml version="1.0" encoding="UTF-8" ?> - <LocalizationPack> … <Single>Single</Single> <Double>Double</Double> <Triple>Triple</Triple> <Suite>Suite</Suite> … </LocalizationPack> Figure 5. It is not easy to figure out translation accuracy without the context.

©2003 The Localization Industry Standards Association. All rights reserved.

LISA White Papers in Globalization: Bringing Globalization to Every Solution

13

. Linguistics testing checks whether the linguistics services provided by the application conforms to conventions in the target country or region. Typical examples are machine translation, text-to-speech and speech-to-text technologies, transliteration, etc. . Usability testing establishes whether the application really fits the end-users’ cultural expectations. Usability testing is user-driven, not technology-driven, and quality is defined by user satisfaction rather than product/solution defects. Extensive and ongoing user evaluation, not just some user testing, must be undertaken to ensure that applications are culturally appropriate. Where possible, native speakers living in the target region should be used for formal review or extensive survey. For example, if an application uses the product of machine translation, only native speakers can provide the needed level of user validation before roll-out.

Maintenance
In addition to the routine maintenance tasks, it is also important to prepare well for possible changes due to globalization. Having a well-designed globalization solution, it is only needed to maintain one code base/executable. Typical maintenance issues may include:

Adding new languages/countries/regions:
This usually has little or no impacts on the existing language sets and overall architecture. It usually involves arranging translation of culture-dependent contents, and updating the business logic for language/ country/region-dependent computing (such as adding specific tax calculations).

Changing or adding globalization features:
This usually has no impact on other features and the overall architecture unless addition of a new feature may require modification/extension of an existing feature for its implementation. A typical example was the addition of the Euro into currency lists when it came into use in . This usually involves coding efforts, so the overall design should be well prepared for the potential changes.

©2003 The Localization Industry Standards Association. All rights reserved.

14

LISA White Papers in Globalization: Bringing Globalization to Every Solution

Conclusions
This paper outlines basic considerations that must be taken into account for globalization to be effectively included in applications. Only by considering globalization requirements from the start of product development can globalization be efficiently dealt with. Knowing what must be dealt with and when allows organziations to appropriately plan for globalization requirement. This paper has outlined many of the factors that must be considered in developing globalized applications.

Endnotes
¹ Globalization, in this context, is the proper design and execution of systems, software, services, and procedures so that one instance of software, executing on a single server or end-user machine, can process multilingual data and present culturally correct information (e.g., collation, date, and number formats). Automatic translation of human language by computers. API is a software interface that enables applications to communicate with each other. An API is the set of programming language constructs or statements that can be coded in an application program to obtain the specific functions and services provided by an underlying operating system or service program. A variant of an original product that implements national language support for a particular region of the world. In software engineering, the process of adapting an internationalized product for a specific language, script, culture, and coded character set. Bi-directional: Scripts such as Arabic and Hebrew has general text flow which proceeds horizontally from right to left. But when they mix in other languages and numbers that display from left to right, they require what is called bi-directional support.

² ³

©2003 The Localization Industry Standards Association. All rights reserved.

Writen by Xiao Hui Zhu (

), IBM China

The Localization Industry Standards Association
7 Route du Monastère • CH-1173 Féchy • Switzerland Tel: +41 (21) 821 32 10 • Fax: +41 (21) 821 32 19 • lisa@lisa.org

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->