Extensible Application Software Rules Database
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing application software lacks user-customization capabilities, particularly in producing dynamic Uniform Resource Identifiers (URIs) and Uniform Resource Locators (URLs), limiting users' ability to adapt the behavior of applications to their specific needs and environments.
Innovation Solution
Implementing a facility for extensibility in application software through a Rules Database, where administrative users can write rules to provide new features without modifying the source code, using gestures and screen-region classes to generate customized URIs and invoke user-programmed functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If application software uses fixed source code, then development and maintenance are straightforward, but user-customization capability is limited
Solution Approach 1:
The patent segments the application software into fixed core functionality and customizable extensible features. The extensibility facility divides the software architecture into base application components and user-defined rule components, allowing customization without modifying the core source code. This segmentation enables users to add custom functionality through separate rule definitions while maintaining the integrity of the original application.
Solution Approach 2:
The patent extracts customization functionality from the main application codebase and places it in a separate extensibility facility. User-defined rules are stored independently in the Rules Database, separated from the core application logic. This extraction allows custom features to be added without altering or complicating the original source code, resolving the contradiction between customization and architectural simplicity.
2Ease of operation
If administrative users can write rules without source code modification, then customization ease improves, but system complexity increases
Solution Approach 1:
The patent enables administrative users to perform self-service customization by writing and executing their own rules through the extensibility facility. Users can directly interact with the Rules Database to define custom functionality without requiring developer intervention or source code modification. This self-service capability simplifies the customization process while the underlying system manages the complexity of integrating user rules with core application functionality.
3Adaptability or versatility
If static URLs are used in email activation, then implementation is simple, but user adaptability to different environments is limited
Solution Approach 1:
The patent transforms static URL generation into a dynamic process through the extensibility facility. Instead of using fixed URLs embedded in emails, the system generates dynamic URIs at runtime based on user-defined rules and current application state. This dynamic URI generation allows the same email template to adapt to different environments and user needs, with the complexity of URI construction managed by the rule-based system rather than hard-coded logic.
Data Source
AI summary
An application's users are divided into two groups: administrative users and end-users. Each type of region, produced on an application's screen, is assigned a class. Each actual occurrence, of a region type, is called an instance. An end-user invokes a user-added feature by indicating a screen location and inputting a unique signal. The classes, of the screen-region instances present at the indicated location, determine whether one or more rules are activated. The rules are written by an administrative user. If activated, a rule produces a URL in accordance with an administrative-user-defined template. A value stored in the instances present, at the location indicated when the unique signal occurred, are accessed in a template by including the name of the value as a parameter. Each parameter is substituted by the text-equivalent of its current value. The URL produced can be used to provide the information desired by the end-user.


