What are the stages of internationalization?

In software development, internationalization (i18n) should always be seen as an inseparable part of the main activities of the development process, such as the specification of requirements, design, implementation, and testing.

Learn how internationalization affects the four stages of the software development cycle:

STAGE 1 - Software Specification: #️⃣

Software requirements play a primary role in the development process of a software product. It is based on the needs raised by customers at a very general level, where the services or components of what you want to produce are discovered, documented, analyzed, and defined, in addition to the restrictions that the software product will have. Its main goal is to define the process to follow in software development and to facilitate understanding of the client’s requirements.

In the context of a development process aligned with i18n, it is the fundamental pillar in fulfilling the strategic objectives of the globalization of a product.

Important things to consider with regards to internationalization in the software specification stage are:

  1. Current legislation.
  2. Locales.
  3. Complexity of the translated language, in which each introduces particular elements considered of less or greater difficulty for the i18n process.
  4. Representation of the contents (User Interface).
  5. Functional requirements of the business.
  6. Technology Restrictions.

When it comes to a new market, Managers must thoroughly study all the necessary aspects associated with the culture in the destination market.

STAGE 2 - Software Architecture: #️⃣

Software architecture consists of making decisions about the logical organization of the software product. It is the process where the architecture, components, interfaces, and other characteristics of a system or software component are defined.

It involves the set of principles, concepts, and practices that lead to developing a high-quality system or product. Design principles establish a primary philosophy that will guide you in the design work.

This stage is where the architecture that will support the desired software product is defined.

Therefore, a set of elements must be taken into account, emphasizing the base architecture of the software, such as:

  1. Achieve the decoupling of the different layers that make up the structure of the architecture.
  2. Consider using the Unicode coding standard in all architecture layers and components used.
  3. Maximize the architecture’s adaptability by incorporating business rules and workflow engines, as well as the adaptability of your object model.
  4. Externalize the texts used within the application.
  5. Create user interfaces capable of adapting to different languages.
  6. Take into account the i18n and localization capabilities provided by each of the Database Management Systems to be used.
  7. Consider a correct design of the database schemes attached to the different types of information related to the target market’s culture.
  8. Select the internationalized COTS (Commercial Off-The-Shelf) software to be integrated into architecture so that they can adapt to different markets.

STAGE 3 - Software Implementation: #️⃣

At this stage of software development, the most important artifacts of the software product are produced.

Things to consider during this stage are:

  1. Proper documentation associated with the product, such as the online help, the user manual, and the installation manual, among others.
  2. Careful implementation of the i18n best practices outlined in the architecture, implementation of i18n libraries, and standards.

STAGE 4 - Software Testing: #️⃣

The software testing process consists of the dynamic verification of the behavior of the developed product in a finite set of test cases against the expected behavior. In the case of the testing stage of internationalized software, it doesn’t differ from the conventional one. It only has a greater scope as there is a need to evaluate all those elements associated with i18n and those specified in previous stages.

At this stage, it is necessary to devote considerable effort because it is the stage where the result of an entire development process is evaluated, and its quality is guaranteed.

Conclusion #️⃣

The i18n of software is not an easy process to carry out. It takes time and funding to conduct in-depth research that helps create more competitive software products in the international market.

This fundamental process must be aligned with the conventional development cycle from the early stages to incorporate the characteristics associated with a software product appropriate to the needs of international markets.

Was this article helpful?

Please help us with improving our documentation.
We appreciate all your feedback.