Cumulative Localization Architecture for Versioned Branch Builds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software localization processes are inefficient and wasteful due to the lack of versioning and branching support in centralized localization databases, leading to disruptions and unnecessary duplication of resources across different development teams.

Innovation Solution

A cumulative localization database that stores immutable time-stamped records, allowing independent updates and translations for different product branches, supporting versioning and branching, and eliminating the need for database snapshots.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a centralized localization database is used to manage all localization resources, then all teams can access the same database, but updates to the database can disrupt the work of all teams and only one branch can be linked at a time

Engineering Contradiction:
ImproveAbility to support multiple branchesVSAvoidWork disruption to teams
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the localization database into branch-specific snapshots that are linked to different branches. Each team working on a different branch can have their own localized copy of the database that is independent from other branches, eliminating the disruption caused by centralized updates while maintaining the ability to support multiple branches simultaneously.

Inventive Principle:
Principle #1Segmentation

2Reliability

If database snapshots are created for each branch to avoid disruptions, then team independence is improved, but storage space is wasted due to duplication

Engineering Contradiction:
ImproveTeam independenceVSAvoidStorage space utilization
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

Instead of creating full physical copies of the entire localization database for each branch (which would waste storage space), the patent creates lightweight snapshots that contain only the necessary linkage information and metadata. These snapshots reference the shared localization resources, providing team independence while minimizing storage overhead through intelligent referencing rather than full duplication.

Inventive Principle:
Principle #26Copying

3Reliability

If manual intervention and database snapshots are used to manage localization, then team independence is achieved, but the process becomes complicated and inefficient

Engineering Contradiction:
ImproveTeam independenceVSAvoidLocalization management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic system that automatically detects which branch a team is working on and provides the appropriate localized database snapshot linkage. This automated dynamic allocation eliminates the need for manual intervention to create and manage snapshots, reducing complexity while maintaining team independence. The system adapts automatically to different branches and teams without requiring manual configuration or intervention.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12411832B2Cumulative localization architecture
Publication Date: 2025.09.09 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12411832B2 patent drawing
  • US12411832B2 patent drawing
  • US12411832B2 patent drawing

AI summary

A method for managing localized resources displayable during execution of a software product includes receiving a localization build request from a source control platform. The localization build request specifies a unique resource identifier and a resource value for each of multiple displayable resources associated with execution of the software product in a default geographic locale. For each displayable resource, the method further includes determining a relevant recency timestamp based on a build timestamp of the localization build request and retrieving, based on the relevant recency timestamp for the displayable resource, at least one translated resource indexed in association with the relevant recency timestamp. The method still further includes adding the at least one translated resource to a localization build for the software product and returning the localization build to the source control platform.