User-Defined Content Extension Framework for Configurable Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Highly configurable applications often lack flexibility due to entrenched limitations, preventing users from writing custom logic or creating customized views without compromising security.

Innovation Solution

A system comprising a user-side framework for rendering views, a user-side authoring environment, a securely integrated JavaScript engine, a component library, and an event bus, allowing users to build and configure views by exposing server APIs to Canvas JavaScript scripts, enabling the creation of interactive applications that mix established resource concepts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a highly configurable application uses entrenched resource concepts, then the application structure is stable and secure, but flexibility and user customization capability are reduced

Engineering Contradiction:
Improveuser customization capabilityVSAvoidapplication structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The application is segmented into distinct layers: a core platform layer that maintains stable resource concepts, and a user extension layer that allows customization through separate component definitions and event handlers. This segmentation enables users to add custom logic and views without modifying or compromising the core application structure, thereby improving adaptability while maintaining structural integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary event bus is introduced that mediates between the core application resources and user-defined custom logic. The event bus allows custom components to subscribe to and react to application events without directly coupling to the core resource model, enabling flexibility while preserving the stability of the entrenched resource concepts.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If users are allowed to write custom logic and create customized views, then flexibility and adaptability improve, but security risks increase

Engineering Contradiction:
Improvecustom logic capabilityVSAvoidapplication security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

A sandboxed execution environment is implemented as a protective layer that allows user-defined JavaScript code to execute with limited privileges. This sandbox acts as a flexible shell that contains custom logic while preventing it from accessing or compromising core application resources, thereby enabling custom logic capability while maintaining application security.

Inventive Principle:
Principle #30Flexible shells and thin films

Solution Approach 2:

The event bus serves as an intermediary that controls and filters all interactions between custom components and application resources. It provides a secure interface that allows custom logic to respond to application events without direct access to internal state, enabling adaptability while preserving security through controlled communication channels.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If traditional resource concepts are used in supply chain planning applications, then the application maintains established stability, but the range of supported capabilities is limited

Engineering Contradiction:
Improvecapability rangeVSAvoidapplication conceptual stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system implements a universal component framework that can accommodate both traditional supply chain planning resources and user-defined custom components through a common definition schema. This multi-functionality allows the application to support a broader range of capabilities including dashboards, scorecards, and custom views while maintaining the stability of traditional resource concepts through unified management principles.

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

Data Source

PatentUS20240028313A1System and method for extending an application with user-defined content
Publication Date: 2024.01.25 KINAXIS INC
  • US20240028313A1 patent drawing
  • US20240028313A1 patent drawing
  • US20240028313A1 patent drawing

AI summary

Methods and systems that provide the tools and flexibility to build views that meet a user's needs by eliminating arbitrary limitations that are imposed by entrenched resource concepts that currently exist.