Decomposing UX Code into Reusable Subcomponents

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current UX design tools for software interface prototyping generate HTML code that does not decompose code into subcomponents, group related functionality together, or promote reusability and separation of responsibilities.

Innovation Solution

The described solution decomposes code output by UX design tools into subcomponents, groups them by related functionality, and promotes reusability and separation of responsibilities by analyzing code across weighted factors and generating a tree representation of design elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If current UX design tools generate HTML code for user interface prototypes, then code generation speed is improved, but code maintainability and reusability deteriorate

Engineering Contradiction:
Improvecode generation speedVSAvoidcode maintainability
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The patent applies segmentation by decomposing generated code into modular subcomponents with distinct responsibilities. Each subcomponent is independently identifiable and can be maintained separately, resolving the contradiction between rapid code generation and code maintainability.

Inventive Principle:
Principle #1Segmentation

2Productivity

If current UX design tools generate HTML code for user interface prototypes, then code generation speed is improved, but code reusability deteriorates

Engineering Contradiction:
Improvecode generation speedVSAvoidcode reusability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

By segmenting code into reusable subcomponents with well-defined interfaces and responsibilities, the system enables these components to be independently reused across different prototypes and projects, thereby improving code reusability without sacrificing generation speed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates universal subcomponents that can serve multiple functions and be applied across different user interface contexts. These standardized components enhance adaptability and versatility while maintaining rapid generation capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If code is not decomposed into subcomponents, then code generation simplicity is improved, but code reliability deteriorates

Engineering Contradiction:
Improvecode generation simplicityVSAvoidcode reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system automatically segments code into reliable subcomponents with clear separation of responsibilities, improving code reliability through modular architecture while maintaining simplicity through automated decomposition processes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary processing layer that automatically analyzes generated code, identifies subcomponents, and organizes them according to separation of responsibilities principles. This intermediary process enhances reliability without requiring manual intervention, preserving simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12327095B2Systems and methods of decomposing user experience components into functioning subcomponents
Publication Date: 2025.06.10 SALESFORCE INC
  • US12327095B2 patent drawing
  • US12327095B2 patent drawing
  • US12327095B2 patent drawing

AI summary

Systems and methods are provided for parsing, at a server, a design file including code for a user interface, where the code is readable by the server into a tree representation having nodes, the nodes represent design elements of the user interface and includes one or more design properties, a unique identifier, and references to child elements. The server traverses the tree representation and comparing the design elements of the tree representation to a set of factors to determine when the design elements and meet a criteria to be a subcomponent for one or more components of the code of the design file. The server adds the design elements to a list of subcomponent candidates that meet at least one of the set of factors to be a subcomponent. The server generates a tree structure for the one or more components using the list of subcomponent candidates.