Agile localization has steadily come to the fore in the field of software development in recent times and is likely to see increased prominence going forward, especially with Chinese localization. But before we can speak about agile localization, it’s essential to take a look at agile software development and where it comes from.
Sources indicate that the form of development started coming to the fore as recently as 2001. Over the past decade and a bit, it’s developed and been refined even deeper to bring more value to software development projects. It comes as an extension or an alternative to the waterfall development model and is quickly gaining traction.
So, what is it and how does agile localization specifically fit into the field of Chinese localization? Let’s take a closer look.
What are the waterfall and agile models in software development?
Before we get started, it’s important to take a quick look at what software development is and what it consists of. As the name implies, it is the development of applications or software platforms that have primarily commercial aims. Such apps or software, once developed, can help automate and streamline business processes and lead to improved efficiencies and productivity.
But in order to develop any sort of software, certain processes are followed to reach the end result of the project. In essence, these can be broadly spilt up along the lines of the waterfall model and the agile model. Let’s explore each one in more detail below.
The Waterfall Model
The waterfall software development model is a representation of the more traditional approach in terms of the way things were done. The process would start with the relevant teams gathering all the documentation and requirements from their client. The next phase would be to design the software, followed by coding and performing unit tests.
After this, system testing would be undertaken and then user acceptance testing. After such testing, any issues that could potentially have arisen would be fixed and addressed, and the finished product would be delivered.
Although it has its place in software development, the waterfall model is quite linear and can result in issues such as limited cross-team interactions, waiting right until the end for the client to see the finished product without requiring their input (except at the outset of the process), and other limiting factors.
As such, tweaks to the performance of the software would be made right at the end and sometimes, larger changes would mean that the project may have to be initiated from the start.
As a result of this, and the time delays that such situations have the potential of causing, the agile model was developed.
The Agile Model
Agile development or agile software development arose out of the waterfall model and in very brief terms, it changed the process and model of structuring a project from start to finish. Because there are numerous interdisciplinary teams involved in any software development project, their time is optimized.
How? Because they’re able to focus on previously decided-upon tasks and outcomes and when done, focus their efforts on something else. In addition, clients are able to provide their input at various stages of the project instead of right at the end.
This, in essence, means that they have greater input into the final outcome and the finished product will be to their satisfaction without wasting time and resources in terms of starting the process again in the event that revisions are needed.
Another aspect of agile software development, as presented in the agile manifesto, is the concept of “sprints”. Here, outcome-based tasks are defined and teams are allocated certain periods of time (usually several weeks or months) to deliver these outcomes. If any refinement is necessary during this process of “sprints”, the outcomes would be reevaluated and changed and the various teams would all be on the same page and proceed to carry out their work.
How does agile localization work?
Now that the basic idea of agile software development has been outlined, it’s important to look at another important aspect of the process – namely, agile localization.
In the world of software where code is utilized by experienced specialists, this code needs to be translated and localized for the various target markets where the software will be released.
This means that a US company creating software for the Chinese market will need to address issues related to Chinese localization during its agile localization process.
In practice, what this refers to is the concept of “string freezing”. In the agile model, code is written and immediately sent to translators and localization experts. Once the translation and localization are approved and finalized, these will be sent back to the coders who will then “freeze” the relevant string.
This string of code and its translated and localized version will remain untouched while the specialists continue working on the rest of the coding for the project. In a sequential manner, code and its translated versions are ultimately brought back to the “database” of code, frozen so that it remains fixed, and the next piece of code goes through the same process.
This is a highly effective way of ensuring that code development is continuously built upon, rather than waiting for the final product to be ready for release and only then for the client to realize that changes are required and for the process to start from the beginning once again. This wastes considerable time and resources and that’s why agile localization is so important.
Why is agile localization needed?
Apart from saving considerable time and resources, agile localization also enables cross-functional teams to optimize their performance. But it goes beyond this as well.
The reason for this is that localization in terms of agile software development enables the client to penetrate new markets in a much more focused and streamlined manner.
For example, a Western client seeking to enter the Chinese market will need to localize their content, which will start out through the code that’s developed, prior to releasing it to their chosen market. We explore some of the important factors involved in Chinese localization in the context of agile below.
Factors to consider when doing Chinese localization
The Chinese market is one of the biggest middle-class consumer markets in the world. The massive Chinese population and the country’s fast economic growth mean that there is excellent potential for companies to take advantage of opportunities to penetrate a market with high levels of literacy, technological advancement, and purchasing power.
But Chinese localization is not as simple as taking a text from a target language and translating it into Chinese. Important factors should be considered regarding the country’s cultural and linguistic makeup, which can drive localization issues. Some of these factors include:
- The multiple dialects spoken within the country
- The different writing systems (Simplified Chinese vs Traditional Chinese)
- The prominence of certain consumer forums that are used by Chinese consumers to make purchasing decisions
- The target audience’s levels of technological literacy
- Different regions within China and their distinct preferences
- The ability of a foreign company to adjust its product offering to the Chinese market while ensuring it remains true to its overall brand identity
- And numerous others.
Which approach should you take?
The waterfall model in software development certainly has a number of benefits and it is unlikely to fall out of use anytime soon. However, with the agile model, more efficiencies can be introduced and processes for software development can be streamlined for greater market responsiveness, lower costs, and fast implementation.
Whichever model you choose to consider, when entering the Chinese market, it’s vital to apply Chinese localization practices during your software development processes. This practice will ensure that you enter the market much more strategically and effectively, with a much higher potential for success.