Automated Localization Detection and Correction for GUI Applications
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for translating and localizing GUI elements in APS-compliant applications are inefficient, leading to incomplete localization, high costs due to manual verification, and the inability to timely detect localization errors within the application lifecycle management.
Innovation Solution
An automated method for detecting, correcting, and translating un-localized code lines using a localization marker and the APS msgmake utility, which extracts translation strings into message files and utilizes translation engines like Google Translate for automated translation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manual translation and verification methods are used for GUI localization, then translation accuracy can be maintained, but time consumption and costs increase significantly
Solution Approach 1:
The system performs preliminary automated translation using translation engines before manual verification, preparing draft translations in advance. This allows manual reviewers to focus only on verifying and correcting rather than creating translations from scratch, significantly reducing time consumption while maintaining accuracy
Solution Approach 2:
Translation engines serve as intermediaries between the source text and final localized output. These automated systems generate initial translations that are then refined through validation rules and selective manual review, creating a multi-layered approach that balances automation efficiency with human quality control
2Reliability
If complete manual verification of localized lines is performed, then localization quality can be ensured, but costs increase due to high resource requirements
Solution Approach 1:
Instead of verifying every single localized line manually, the system applies validation rules selectively based on risk assessment and line characteristics. High-risk lines receive full verification while low-risk lines undergo automated validation only, reducing resource requirements while maintaining overall quality
Solution Approach 2:
The system implements automated validation rules that provide immediate feedback on localization quality issues. This continuous monitoring and feedback mechanism ensures quality maintenance through automated detection of common errors, reducing the need for extensive manual verification resources
3Ease of manufacture
If traditional translation processes are used without automated detection, then existing workflows can be maintained, but localization errors remain undetected until later stages
Solution Approach 1:
The validation rules are applied early in the localization workflow, performing preliminary detection of common errors before translations are finalized or deployed. This early intervention catches issues while they are still easy to correct, maintaining workflow simplicity while improving error detection timing
Solution Approach 2:
Automated validation rules act as intermediaries between the translation process and final output, inserting quality checks at strategic points in the workflow. These rules detect and flag errors without disrupting the overall simple workflow structure, enabling early error detection while maintaining ease of manufacture
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for periodic checking of localized lines in the application source code before the assembled application is propagated into message files (*.po). An automated internationalization of lines for all supported application languages is provided. The lines and their translations in locale files (JSON) are validated against the message files (PO). The un¬ realized lines are checked in the source code using a localization marker. According to the APS, a special trap (i.e., a hook) is used for APS msgmake utility in order to derive localization data from a set of aps_ command_line_tools for assembling a user interface. The lines are corrected and loaded back into "*.po" file.