Internationalization (I18N) is the design and preparation of software, websites, and databases so that the underlying source code is locale-neutral and able to support numerous languages. The result is one generic code that can be used across locales.
Internationalization is a required step before actual product localization may begin. But even when you just plan to market the original language versions of your products, sound internationalization will ensure they can be used by local users in their local environments. In both cases, good internationalization practices enable you to effectively market your products overseas.
Moravia provides the following internationalization services:
Internationalization Analysis & Evaluation
I18N analysis and evaluation helps to identify and uncover internationalization issues and weak points in the source code, identify locale-sensitive specifications, determine non-compliant product issues, assess the product's readiness for global launch and suggest steps and strategies needed to internationalize the product.
I18N engineering helps to resolve the I18N issues found in the source code during the internationalization analysis and evaluation step. The core source code is re-engineered to handle specific language conventions in terms of data handled (data analysis, storage, retrieval, display, sorting, searching, and conversion), locale and culture (formatting of numbers, dates and times, as well as calendars, measurement units, currency, graphics, and audio) and user interface (includes issues such hard-coding, text fragmentation, ambiguity, space limitations, fonts, image layering and size information).
Internationalization testing of products aims to uncover international functionality issues prior to the products' global release through product testing.
This technique tests whether the product was correctly adapted to work under different languages and regional settings (ability to display accented characters, to run on non-English operating systems, to display correct numbering system thousands and decimal separators, etc.).
This type of testing equally includes pseudo-localization testing on the internationalized build to identify potential localization user interface concerns. It also helps uncover issues that may increase the costs of localization and future product support later on. Learn more.
What is Internationalization?
Regardless of the platform, internationalization has three main components. They are:
- Data Component: includes data analysis, storage, retrieval, display, sorting, searching, and conversion.
- Locale/Culture Component: includes formatting of numbers, dates and times, as well as calendars, measurement units, currency, graphics, and audio.
- User Interface Component: includes aspects of design and accessibility of localizable data for localizers. This category includes issues such hard-coding, text fragmentation, ambiguity, space limitations, fonts, image layering and size information.
While the first two components involve a purely technical implementation of internationalization best practices, the user interface component includes the cultural and linguistic aspects of a product design. An improperly designed user interface that includes, for example, concatenations of sentence fragments and does not allow for text expansion will render a product unacceptable to many users, and in some cases unusable at all.
When and Where to Start
The ideal time to start thinking about internationalization is at the conceptual stage of a product development life cycle. It is often much easier and less expensive to build in internationalization support before a product is designed or developed. Sometimes internationalization is necessary even if localization is not. Consider the example of the need to run an American English application on a French or Spanish operating system; proper internationalization is important regardless of whether the user interface is to be localized into these two languages.
Along with incorporating internationalization into the development cycle at a very early stage, it is equally important to educate development teams about internationalization best practices to minimize re-work. Finally, testing plans to address international support should be an integral part of the core product design and testing.
When internationalizing existing applications, the approach involves the following steps and recommendations:
- Involve a knowledgeable team to evaluate the requirements
- Educate your developers
- Since, in most cases, the core team in charge of product development will continue to enhance the core product while internationalization takes place, make sure that you develop a project plan that accommodates co-development of core functionality and internationalization support
- If planning includes more than one localized version, perform pseudo-localization testing on the internationalized build to identify potential localization user interface concerns
To find out how we can help you internationalize your product for international markets and enable its subsequent localization, please complete the Request for Information form and we will get back to you shortly, or see other options for contacting us.