Phased Migration Strategy

Scope: phased migration steps from existing variable systems to Variable Design Standard (VDS).

Failure if ignored: migration stalls and outputs diverge from the contract.

If you migrate everything at once, you risk breaking production, losing references, and confusing the team.

Migration approaches

Big bang migration

Migrate everything at once.

Pros:

  • Clean break from old system
  • No dual-system maintenance
  • Faster completion

Cons:

  • High risk of breaking production
  • Difficult to test thoroughly
  • Team confusion during transition

Use when:

  • Small variable set (< 50 variables)
  • Low production usage
  • Team can handle changes

Phased migration

Migrate incrementally over time.

Pros:

  • Lower risk
  • Easier to test
  • Team can adapt gradually
  • Can rollback if issues

Cons:

  • Longer timeline
  • Dual-system maintenance
  • More coordination needed

Use when:

  • Large variable set (> 50 variables)
  • High production usage
  • Team needs gradual transition

Phased migration plan

Phase 1: Foundation (Week 1-2)

Goal: Set up Variable Design Standard (VDS) alongside existing system

  1. Set up Variable Design Standard (VDS) structure

    • Create tokens/ directory
    • Set up validation
    • Configure CI
  2. Create adapter for existing format

    • Write adapter to convert existing format
    • Test adapter output
    • Validate converted JSON
  3. Run adapter on existing variables

    • Convert all variables
    • Validate converted JSON
    • Commit to version control

Deliverables:

  • Variable Design Standard (VDS) structure set up
  • Adapter working
  • All variables converted (not yet consumed)

Phase 2: Parallel run (Week 3-6)

Goal: Run both systems in parallel

  1. Generate outputs from Variable Design Standard (VDS)

    • Configure Style Dictionary
    • Generate CSS/TypeScript
    • Verify outputs match existing
  2. Update components to use Variable Design Standard (VDS) outputs

    • Start with new components
    • Gradually migrate existing components
    • Test each migration
  3. Monitor both systems

    • Track usage of old vs new
    • Fix any issues
    • Document learnings

Deliverables:

  • Variable Design Standard (VDS) outputs generated
  • Some components using new variables
  • Both systems running in parallel

Phase 3: Gradual migration (Week 7-12)

Goal: Migrate components incrementally

  1. Migrate component by component

    • Start with low-risk components
    • Test each migration
    • Document changes
  2. Update design workflow

    • Train designers on Variable Design Standard (VDS)
    • Update Figma workflow
    • Export to Variable Design Standard (VDS) format
  3. Deprecate old system

    • Mark old variables as deprecated
    • Update documentation
    • Plan removal timeline

Deliverables:

  • Most components migrated
  • Design workflow updated
  • Old system deprecated

Phase 4: Cleanup (Week 13-14)

Goal: Remove old system

  1. Verify all components migrated

    • Audit component usage
    • Confirm no old variables used
    • Test production
  2. Remove old system

    • Delete old variable files
    • Remove old build configs
    • Update documentation
  3. Finalize Variable Design Standard (VDS)

    • Complete migration documentation
    • Train team on new system
    • Celebrate success

Deliverables:

  • Old system removed
  • Variable Design Standard (VDS) fully adopted
  • Team trained

Migration by format

From Style Dictionary format

Phase 1: Convert format

  • Rename value$value
  • Rename type$type
  • Update reference syntax

Phase 2: Apply governance

  • Normalize naming
  • Add validation
  • Set up versioning

Phase 3: Migrate consumption

  • Update build configs
  • Migrate components
  • Remove old format

From Material Design tokens

Phase 1: Extract variables

  • Extract Material-specific variables
  • Map to Variable Design Standard (VDS) structure
  • Normalize naming

Phase 2: Create adapters

  • Create adapter for Material format
  • Convert existing tokens
  • Validate output

Phase 3: Migrate consumption

  • Update components
  • Remove Material-specific code
  • Use Variable Design Standard (VDS) outputs

From custom formats

Phase 1: Audit existing system

  • Document current structure
  • Identify variable types
  • Map references

Phase 2: Create adapter

  • Write adapter for custom format
  • Convert all variables
  • Validate output

Phase 3: Migrate consumption

  • Update components
  • Remove old system
  • Use Variable Design Standard (VDS)

Migration checklist

Pre-migration

  • Audit existing variables
  • Document current format
  • Identify migration approach
  • Set up Variable Design Standard (VDS) structure
  • Create adapter (if needed)
  • Test adapter output

During migration

  • Convert variables to Variable Design Standard (VDS)
  • Validate converted JSON
  • Generate outputs
  • Test outputs match existing
  • Migrate components incrementally
  • Monitor for issues
  • Document changes

Post-migration

  • Verify all components migrated
  • Remove old system
  • Update documentation
  • Train team
  • Celebrate success

Risk mitigation

Risk: Breaking production

Mitigation:

  • Run parallel systems
  • Migrate incrementally
  • Test thoroughly
  • Have rollback plan

Risk: Lost references

Mitigation:

  • Validate references during conversion
  • Test reference resolution
  • Document reference mapping

Risk: Team confusion

Mitigation:

  • Train team early
  • Document migration process
  • Provide support
  • Communicate clearly

Success metrics

Migration is successful when:

  • All variables converted
  • All components migrated
  • Validation passing
  • Team trained
  • Old system removed
  • No production issues

Timeline

Typical phased migration:

  • Week 1-2: Foundation
  • Week 3-6: Parallel run
  • Week 7-12: Gradual migration
  • Week 13-14: Cleanup

Adjust based on:

  • Variable set size
  • Component count
  • Team size
  • Risk tolerance

Out of scope

  • Automated migration tools (build custom scripts)
  • Tool-specific migration (see adapter docs)
  • Design system migration (focus on variables)