In a world where product launches are no longer limited to a few geographic regions, the localization process has become an important component of product development for a successful global launch. Dealing with multiple localizations within an agile product release cycle under time and budget constraints presents challenges that must be addressed early on to avoid confusion and uncertainty. This article discusses these challenges and solutions to mitigate the difficulties in creating a product that can withstand global competition.
Due to the nature of the work, localization testing often begins later in the product development lifecycle, whether the team uses agile or waterfall methodology. At this late stage of the lifecycle, the localization testing team may not be aligned with the core product development team.
Challenges of Delayed Localization
There are several areas where the software localization testing company should work with the core product team, such as product understanding, known issues and existing deliverables (e.g., specifications, test cases, defects, test results), which can be difficult to achieve if the localization team’s involvement is delayed. This can also result in limited time for pre-release testing, forcing teams to compromise on test coverage and overall quality. While it is important that the product is stable before localization testing begins, these practical issues must be addressed in order for the localization process to proceed efficiently under time constraints.
Test matrix is often huge, with many variables. Multiple locales, operating systems, browsers, devices and other supporting application software, and test cases with different priorities often lead to a combinatorial explosion. This is also typical for modern standard web applications, but in the case of localization testing, the intensity is increased due to the large number of locales that need to be tested. This complexity of the test matrix also leads to problems related to regression testing and defect management.
Another interesting testing challenge lies in the cross group collaboration area. The localization functional testing team often interacts with the core product test team on the one hand and the translation / linguistic team on the other hand, requiring them to coordinate the overall test effort and sign off on the overall localization testing including the translation portion. What this means is that besides their core testing responsibilities, these testers may also be taking on some project management responsibilities, which might make the process more challenging.
Strategies for Effective Localization Testing
If you revisit the challenges mentioned above, they cover a range of areas including technical, project management, process and people related categories. In the next few paragraphs we will look at mitigating strategies and solutions that can be mapped to these challenges that we looked at.
Firstly, the localization functional testing team should have some overlap with the core functional testing team in terms of schedule and resources. Some testers from the core functional team should be part of the localization testing team, and the schedule overlap will help in kicking off the localization engineering efforts, while mainstream product development is still ongoing. Even prior to the start of localization testing, the testers will have to look for ways and means to engage with the core testing team, be it through periodic group discussions, signing up for product updates and notifications. It is important to keep a tab on the product team’s test cases, as most test cases are typically reusable and with minimal customizations. Being in sync with them on such tests, attending test case reviews, checking on test results and defects they file, will give the localization team a very good understanding of both the product architecture quality and various product components.
Test matrix prioritization and optimization are very important in localization functional testing. Involve key product stakeholders in deciding the overall prioritization and coverage subject to the given time and budget constraints at hand. While determining priorities, consider locale specific nuances, the character set of the locale under test (single byte, double byte, and multi-byte), bi-directional languages etc. to group tests together and achieve an ideal optimization solution. Such grouping of locales will also help in grouping defects which will make the overall regression and defect management process more efficient.
Besides the test and technical aspects, keep in mind the locale release dates, the usage patterns expected in each locale, to arrive at the right focus areas to test. Typically focusing more on overall product functionality, UI and usability provide maximum returns on investment, as these are the areas that are often touched and affected by the localization engineering efforts. Areas such as performance and security are not usually impacted, and thus can be prioritized lower compared to the main areas to focus on.
Collaboration and Process Optimization
Although It had been called out that some overlap between the core product test team and the localization functional testing team is desired, there could be cases where they are completely independent, given the organizational factors at play. In such cases, the localization team should work with the product and build teams to get a pseudo-localization build to test as soon as possible, even as the core functional testing is in progress. This will not only save time but also help the two teams collaborate on issues that they see along the way, helping promote team bonding, product understanding and improved test coverage.
When it comes to process, use collaboration tools such as application lifecycle management packages and document sharing solutions to keep everyone synchronized, especially if there are a large number of people involved. Use in-house or open source productivity tools such as translator tools, instant memory and translation memory to ensure that contextual translation checking is possible and fast. Given limited testing time, these small touches can often save a lot of time and effort.