Project Brief

The internationalization project was to modify our existing multi-tier product to provide multi-lingual support. This is a planning and scheduling product that was sold globally by i2 Technologies, USA . The languages to be supported included Chinese, Korean and other Far East languages hence double byte characters had to be used.

All the static text and error messages displayed in the application had to be translated into the supported languages.

Project details

The application to be converted was a complex n-tier application consisting of following components

  • Web interface for data entry and reporting
  • 4 Rich clients
  • Database
  • Over 300 Business objects
Internationalization

All static text, messages, graphics with text was kept external to the application code. Locale specific features such as date formats, currency and number formats had to be handled. This had to be done in all the components of the application.

Database layer :

Both Oracle and SQL Server - table structures had to be changed to support Unicode.

Business Objects :

Business objects in Visual Basic 6.0 bring data from the database to the presentation layer. The queries used to bring this data had to support i18n.Business objects also throw errors in case of invalid data entry or violations of business rules. These messages were kept external to the code base.

Rich Clients :

Clients in both Visual Basic and C++ had to keep all prompts, error messages and menus in external files. This included the scheduling algorithm based client, the security setting tool, tool for bringing data from external system as well as reporting tool.

Web Interface :

Menus and prompts were used from static files. ASP web pages had to specify the code page and the character set used.

Localization

The translation was handled by an external agency. The translations had to be done for

  • All menus and prompts
  • All error messages
  • On line help and manual

The prompts and menus were linked to an excel spreadsheet maintained between the translation team and the project team. This spreadsheet had one column for English (Standard) text of prompts, menus and messages. One column per language was used for translated text. A tool was developed in-house based on this spreadsheet to generate the various static files used by the different components of the application. These files were copied onto the deployment servers to be included in the language specific build of the application.

A team of 8 persons (excluding the translators) executed the project in 2 months. This includes the Quality Assurance done by internal QA team.

Technology:

Following technologies were used:

  • OS - Windows NT
  • Languages - Visual Basic 6.0, ASP 6.0, C++ 6.0
  • Database - Oracle 9i, SQL Server 2000
  • Special tools - InstallShield Professional, DemoShield 6.7
  • MSXML 3.0
  • IIS 5.0, IE 5.0