Subscribe by Email


Showing posts with label Internationalization. Show all posts
Showing posts with label Internationalization. Show all posts

Saturday, December 24, 2011

What are different aspects of localization?

Localization is just the opposite of internationalization. The process of localization involves the acceptance of an internationalized software system to a particular locale or region with its specific standards and languages.

- Localization testing also forms a part of testing and typically focuses up on localization and internationalization aspects of the software products or applications.
- To localize a software system or application one needs to have the knowledge about the sets of characters which are employed in the development of today’s software product and applications.
- It also involves the basic understanding of the risks associated with the employed sets of characters.
- Localization is carried out to determine how well the build of the software product has been interpreted with a particular desired target language.
- More often and mainly localization testing helps to know that how well a particular target language has been analyzed by the build.
- For localization testing there should be a functional support within that particular locale which has already been validated because the test is founded only on the results of the globalized validation.
- The product must be globalised to a high extent and if it is not so then it will not support a given language, you will not try to give preference to that language first. But still the person has to check that the report or application which you are delivering is in a working condition or not.

Process of localizing a software product
- The process of localizing a software product or application involves the full translation of a particular application of graphical user interface and accommodate graphics for a locale.

- It also includes translation of that application program into that particular native language in the same way as the localization of business can result in a big task because the main intention for the localization of business is to implement correct business processes and practices for a locale.

- There are so many differences in how a locale conducts business. The user interface and content files are the two basic things which are mainly edited during the process of localization.

- A checklist is referred side by side during localization so as to keep a track of the process. The localization testing checklist includes the following:
1. Rules for sorting
2. Conversions in upper case
3. Conversions in lower case
4. Rules to check spelling mistakes
5. Printers
6. Operating systems
7. Size of papers
8. Text flters
9. Key boards
10. Mouse
11. Date formats
12. Hot keys
13. Available memory
14. Measurements
15. Rulers for measurement

Localization process can be initiated on a system which consists of only a few number of translators, desk top publishers or DTPs, engineers and linguists.

But the localization process is done only when certain defined conditions are there i.e., to say if there is a combination of the following aspects:

1. Independent contractors.
2. In house resources.
3. Full scope services of the localization firm.
4. Since the localization process mainly involves the translation of all the native languages in to a particular aimed string and customization of the GUI or graphical user interface, it is appropriate for the targeted market.

The software products which are offered to the international market often have to suffer a lot of domestic or in house competition which results in the blending of the localized product into a particular native language.

After the translation of the language and the updating of the graphical user interface, localization testing is needed to ensure that the software product is working well and without any problem and it also ensures that the software product is well migrated to the international market.


Wednesday, December 21, 2011

What are different aspects of Internationalization?

For the promotion of a software system or application, it should be available in all the different regions of the world. If it is not so, then the software artifact or the product remains confined to one region and is not exposed to the whole world.

Nowadays due to globalization, the software application developed in one region is used all over the world with the help of different regional standards and different regional standards. So there is a need felt for programming the software or application as such that it can be used easily and performs well when modified for use in different regions and languages.

In other words, we can say that there’s a need for internationalizing the product. Internationalization can be defined as a process of coding and designing a product in such a way that it can perform well and properly on any platform after modification for use in different regional standards and languages.

During the process of internationalization, the functionalities of the software product are kept safe and ensured. All the messages are kept externalized when they are being used in different languages, locales and standards.

Internationalization testing is well known as I18N testing. It is so called because there are 18 letters between I and N in the word internationalization.

Internationalization is implemented usually through pseudo-localization. This technique works on the principle of simulation of the local products. It involves many concepts that a localization center does when performing the localization of a software product.

Pseudo localization process involves 3 basic steps which have been discussed below:

- Messages files are translated by insertion of a suitable and specific suffix and prefix into every message file. Localizable non-message files are also modified but, they are not translated. Files in other formats are compulsorily modified in some way.
- The above pseudo- translated message files and other pseudo- translated files are installed in locale specified. Also the location is specified in the software product. For java resources, the files are named with a suffix relation to the required locale. Then the same procedure is followed for installation of the files.
- The software product is run or executed from the earlier specified locale. The GUI displays the prefixes and the suffixes that wre added to the file name instead of the default English names. All the files will run in their modified form including the localizable non message files.

The main advantage of this process is that one is allowed to use a software product including all its features without knowing the other languages. One can also translate the full files. Both internationalization and localization are a means for adapting a software product in different languages of the world.
- Internationalization seeks to make a software adaptable to any language but without modifying its internal structure.
- Internationalization and localization are together known as globalization.

An internationalized software product is fit for use in a defined range of locales. Several languages co exist in an internationalized system. A software system is considered fully internationalized only when the user has the choice to select the user interface language. The following are 4 pillars of the internationalization process:
- Computer encoded text
- Language
- Scripts
- Numeral systems.


Tuesday, September 21, 2010

Software Localization - some details in terms of how the process work - Part 3

In the previous post (Part of software localization), I was describing how the process of doing localization works, as well as the schedule in which this needs to be done. In this post, I will provide more details of what needs to be done.
In this post, I will go back to the beginning of a cycle, where the planning for a product development cycle needs to be done. Consider a product cycle for a product release that spans a period of 2 years. When the product cycle is planned, two of the key milestones in the schedule deal with the following 2 points:
1. The point in the schedule where the UI components in the application are frozen and all strings finalized
2. The release dates for the various language versions. There are 2 possible options, one where all the language versions of the product are released at the same time, and the other where the English and a couple of the more important languages are released earlier, and the other languages are released later.
The critical part of this planning is the time period required between these 2 milestones, since as said earlier, the actual work of generating the various locale translations, the testing, all this needs to happen in this time period. Make this too aggressive, and you will find the team stretching to meet the timeframes for the localization process.


Sunday, September 5, 2010

Software Localization - some details in terms of how the process work - Part 1

What is software localization ? Localization means releasing software that works in different countries the same way. For a person who is not experienced at this, they would wonder as to how the same software can work in different countries almost identically ? After all, if you look at the test that shows up in a software, the text is different in different languages, and it must be a lot of effort to get this done. Well, it is a lot of effort to get a software that works properly in different countries, but not as high as you might expect. Consider a website that showcases news or has articles (which means the site is almost entirely text based). Such sites would need re-writing the entire content into different languages, and the effort can be considerable, and for sites that depend on getting news out quickly, the amount of time involved can be considerable.
However, if you consider a software, there are 2 main elements. One element is the text that a user views (whether it be text on dialogs, or error messages) - this needs to be different in different languages. On the other hand, a huge amount of the internals of a software is the code, and this code does not need to be translated (which is a huge amount of effort savings), since this code is not visible to the users.
In this post, I will give a very high level summary of how the localization of software can be done, and then break this up in future posts. Inside the software, in any part of the code where there is an output of text that the user can see, there is a special section of code that identifies this is as a UI content. When this is done all over the software, all the text, error messages, information given to users, etc, all of this has a small identifier that marks that this section of code is different.
Next, a script is run that gathers all these sections of code that has an identifier, and presto, you get a large set of phrases. These are then sent off for translation into different languages, and when translated, are put back language by language into the software. So, when a user launches German version of the software, the code pulls out all the German translations, and shows those to the users instead of the English originals. Thus, you find that your software has become localized.
This is a simplified version of the entire process, and I will add more details in future posts.


Wednesday, March 31, 2010

WHOIS Protocol - Specifications and characteristics

- WHOIS is a TCP-based transaction-oriented query/response protocol that is widely used to provide information services to Internet users.
- Whois is a draft standard protocol. Its status is elective.
- The protocol delivers its content in a human-readable format.
- WHOIS lacks many of the protocol design attributes, for example internationalization and strong security, that would be expected from any recently-designed IETF protocol.
- The Whois program is commonly used in the UNIX environment to connect to a Whois server. The purpose of the server is to provide directory type services.
- The original Whois server was set up so that the Network Information Center could maintain a contact list for networks connected to the Internet. However, many sites now use Whois to provide local directory services.

The use of the data in the WHOIS system has evolved into a variety of uses, including:
- Supporting the security and stability of the Internet by providing contact points for network operators and administrators.
- Determining the registration status of domain names.
- Assisting law enforcement authorities in investigations for enforcing national and international laws.
- Assisting in the combating against abusive uses of Information communication technology.
- Facilitating inquiries and subsequent steps to conduct trademark clearances and to help counter intellectual property infringement, misuse and theft in accordance with applicable national laws and international treaties.
- Contributing to user confidence in the Internet as a reliable and efficient means of information and communication.
- Assisting businesses, other organizations and users in combating fraud.

Protocol Specification


A WHOIS server listens on TCP port 43 for requests from WHOIS clients. The WHOIS client makes a text request to the WHOIS server, then the WHOIS server replies with text content.

Internationalization


The WHOIS protocol has not been internationalised. The WHOIS protocol has no mechanism for indicating the character set in use.


Tuesday, January 26, 2010

Enabling a product to work across different locales - what is the need ?

Nowadays, in order to have a successful software product, there is a dire need to ensure that you release the product in different languages. You might argue that your main market is in the United States, and there are enough English speakers the world over to make your product successful. However, consider the following factors -
- Do a quick survey to determine potential users for your products in different countries
- Look at your competitors and see how many different countries they are sold in
- Consider the problem of negotiating deals with hardware sellers to include your software in their hardwares as part of OEM deals (they would want the ability to include the same software in their different country deals)
- The incremental benefit to having multiple language sales is more than the cost involved
- You can seriously cause harm to your image if you don't have a global presence. With an increasing percentage of people in countries being bilingual or from another country of origin (such as the increasing Hispanic population in the US, and the movement of people within the EU), it gets difficult for you to justify yourself as a serious software product if you don't have language versions.

Now, how do you actually go ahead with ensuring that your product can be localized easily and is properly available in different languages ?
Well, you do something called software internationalization; a process that ensures that your software application works in different languages and regions without having to make changes at the time of use. You enable the software during the design time to work with different languages, typically by adding something called language packs that allows the same software to pick up the relevant language packs, and in many cases, enabling the software to change languages easily during use. The engineering work needed to enable this to happen is a lot more complicated, and will be detailed over the next few posts.


Facebook activity