Declarative Control Actions for UI Complexity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing user interface and application development frameworks become overly complex due to the large number of properties in composite controls, making customization difficult for users unfamiliar with all associated properties, leading to a bloated object model and user overwhelm.

Innovation Solution

An extensible control design framework that allows declarative definition of controls and components, using an 'action' object to encapsulate well-defined functionality associated with events, enabling users to easily define logic and functionality without programming code, and packaging this functionality in independent application components.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If composite controls include many different properties to expand functionality, then the control becomes more versatile and adaptable, but the device complexity increases and users become overwhelmed

Engineering Contradiction:
Improvecontrol functionalityVSAvoidobject model complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments control functionality by introducing action objects that encapsulate specific behaviors (e.g., validate, save, delete) separate from the base control properties. This allows functionality to be divided into modular, independently manageable units that can be selectively applied to controls without overwhelming the object model.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The action object serves as an intermediary between the control and the event handling logic. Instead of directly embedding complex event handlers in controls, the action object mediates by providing a structured interface that links controls to their associated behaviors through events, simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If composite controls include many different properties to accommodate different user needs, then the control becomes more adaptable, but ease of operation decreases as users must familiarize themselves with numerous properties

Engineering Contradiction:
Improvecontrol customizationVSAvoiduser familiarity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

Functionality is segmented into discrete action objects with clear, named operations (validate, save, delete) that are easier for users to understand and select than a comprehensive list of control properties. Users can customize controls by selecting from these segmented actions without needing to understand the underlying complex property structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses templates and pre-defined action objects that can be copied and applied to multiple controls. This allows users to leverage existing validated patterns of behavior without having to recreate or understand complex property configurations from scratch, easing operation while maintaining adaptability.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If logic and non-user interface behavior are built into user interface components, then the control becomes more functional, but the device complexity increases making customization difficult

Engineering Contradiction:
Improvecontrol behaviorVSAvoidcontrol structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Non-user interface behavior is segmented into separate action objects that are associated with controls through events rather than being embedded within the control structure itself. This separation maintains functionality while reducing structural complexity and making customization more manageable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically associates action objects with controls based on events rather than having static, pre-configured behavior embedded in each control. This dynamic approach allows the control structure to remain simple while still providing rich functionality through runtime associations between controls and their behavior encapsulated in action objects.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7730495B2Declaratively defined control actions
Publication Date: 2010.06.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7730495B2 patent drawing
  • US7730495B2 patent drawing
  • US7730495B2 patent drawing

AI summary

An extensible control design framework is utilized to declaratively define a control (both visual and non-visual) and other components. The functionality of a control may be expanded by declaratively adding behaviors and semantics via an object called an action. The control does not become unduly complex by the addition of the behaviors and semantics. The action object encapsulates well-defined functionality and is associated with an existing control. The action object is also associated with an event or trigger such that the functionality is automatically executed when the event is raised. The functionality may be packaged in an independent application component such that a user who is not familiar with programming code may easily define logic and functionality for an application in a design environment.