User-Defined Content Extension Framework for Configurable Applications
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Adaptability or versatility
If users are allowed to write custom logic and create customized views, then flexibility and adaptability improve, but security risks increase
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.
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.
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
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.
Data Source
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.


