External Decision Engine Breakpoints for Dynamic Application Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software applications lack flexibility to adapt behavior dynamically without modifying code, which hinders service providers in rapidly responding to changing market demands, as existing solutions are limited to specific functionalities and require standardization or modification of underlying software.

Innovation Solution

A system and method that allows external execution-time adaptation of application behavior through configurable break points and decision engines, enabling dynamic mapping of decision points to external evaluation engines without altering the application code, allowing for rapid deployment of new service behaviors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If application code is modified to change behavior, then functionality can be updated, but cycle time increases and rapid service deployment is hindered

Engineering Contradiction:
Improveapplication behavior adaptabilityVSAvoidsoftware release cycle time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent segments the application into fixed code portions and configurable behavior portions. The behavior is separated into discrete, independently configurable units that can be modified without changing the underlying application code, enabling rapid adaptation through configuration rather than compilation and deployment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a configuration file as an intermediary between the application code and behavior definition. This configuration file serves as a mediator that allows behavior modification without direct code changes, enabling dynamic adaptation while maintaining code stability and avoiding lengthy software release cycles.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a common call model is defined for service control, then service logic can be separated from switching system, but the model requires substantial time to define and agree upon

Engineering Contradiction:
Improveservice logic separabilityVSAvoidmodel definition time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent creates a universal configuration mechanism that can accommodate multiple service types and behaviors through a single framework. The configuration file format and break point interface are designed to be universally applicable across different services, eliminating the need to define separate models for each service type.

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

Solution Approach 2:

The patent implements a dynamic configuration approach where service logic can be adjusted in real-time through configuration files without requiring formal model redefinition. The system allows dynamic modification of behavior through configuration changes rather than requiring static, pre-agreed models for each service scenario.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If service logic is distributed to client terminals, then personalization is enabled, but modification of overall service behavior requires propagation to all devices

Engineering Contradiction:
Improveservice personalizationVSAvoidbehavior modification propagation
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a server-side configuration file as an intermediary that centralizes service behavior control. Instead of distributing modification logic to all client terminals, the configuration file serves as a central mediator that can be updated on the server and automatically applied, simplifying the modification process while maintaining personalized service delivery.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If standardization is implemented for call processing, then interoperability is achieved, but flexibility to offer new varied services is reduced

Engineering Contradiction:
Improvecall processing interoperabilityVSAvoidservice variety flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the system into standardized interfaces (break points, configuration file format) and flexible configurable behaviors. The standardized segments ensure interoperability and reliable call processing, while the configurable behavior segments allow for diverse service implementations without compromising the standardized foundation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal configuration framework that can accommodate both standardized call processing and varied new services through the same mechanism. The configuration file approach provides a universal interface that maintains interoperability while enabling flexible service variety through configurable parameters and logic.

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

Data Source

PatentUS8448159B2Method and system for policy enabled programming
Publication Date: 2013.05.21 NYTELL SOFTWARE LLC
  • US8448159B2 patent drawing
  • US8448159B2 patent drawing
  • US8448159B2 patent drawing

AI summary

A system and method for allowing external execution-time adaptation of application behavior of an application in a telecommunication system without modification to the application code comprises an application having at least one break point and residing on an application server, at least one identifiable decision engine, and a listing of break points that has for each break point at least one identifier of the decision engine, such that at one of the break points, the application accesses the listing of break points, invokes the listed instances of the decision engine corresponding to the break point, and adapts application behavior based on the decision engine. In addition, each entry in the listing of break points can have a sequence number so that if two entries for the same break point have equal sequence numbers, the decision engines identified in these entries can be invoked in parallel.