Pattern Language Surrogate Context Look-up

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

General purpose computing languages are rigid and inflexible, making it difficult to model and adapt business applications to evolving processes, as they require explicit codification of interactions across dimensions, leading to a disconnect between analysis models and implementation.

Innovation Solution

A pattern language that uses key fields with surrogate and extends relationships, allowing entities to be defined by their ontological context, enabling context-sensitive design and implicit logic delegation, which adapts to environmental changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If general purpose computing languages are used to model business applications, then explicit codification of interactions across dimensions is achieved, but rigidity and inflexibility increase, making it difficult to adapt to evolving processes

Engineering Contradiction:
Improveexplicit codificationVSAvoidflexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the monolithic code structure into modular pattern language definitions organized by business process dimensions. Each pattern definition is a self-contained unit that can be independently modified, allowing explicit codification to be maintained while enabling localized adaptations without affecting the entire system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic pattern matching and context-sensitive code generation that allows the system to adapt to evolving business processes. The compiler dynamically resolves pattern references and generates appropriate code based on the current business context, maintaining reliability through structured patterns while enabling flexibility through dynamic resolution.

Inventive Principle:
Principle #15Dynamics

2Reliability

If explicit codification of all interactions is required, then completeness of modeling is achieved, but complexity of design and development increases

Engineering Contradiction:
ImprovecompletenessVSAvoidcomplexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates universal pattern language definitions that can be applied across multiple business process contexts. A single pattern definition can serve multiple purposes and be reused throughout the business application, ensuring complete modeling of interactions while reducing design complexity through reuse rather than repetition.

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

Solution Approach 2:

The patent introduces a pattern language compiler as an intermediary between the high-level pattern definitions and the underlying implementation code. The compiler automatically handles the complex task of resolving pattern references, validating relationships, and generating complete interaction code, ensuring completeness while shielding developers from complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If traditional programming paradigms are used, then implementation is achieved, but difficulty in identifying effects of updates on existing code increases

Engineering Contradiction:
ImproveimplementationVSAvoidimpact analysis
Core Design Contradiction:
Ease of manufactureVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements automatic impact analysis through the pattern language compiler, which provides feedback when pattern definitions are updated. The compiler validates that updates maintain consistency with existing patterns and automatically identifies which parts of the generated code are affected, making impact detection straightforward rather than requiring manual analysis.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent uses pattern templates as reusable blueprints that define the structure and behavior of business processes. When a pattern is updated, the changes are automatically propagated to all instances that use that pattern, ensuring consistent implementation while making impact analysis simple through template-based inheritance rather than scattered code modifications.

Inventive Principle:
Principle #26Copying

4Adaptability or versatility

If business applications are made flexible to adapt to evolving processes, then adaptability improves, but structural integrity and consistency may be compromised

Engineering Contradiction:
ImproveflexibilityVSAvoidstructural integrity
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The patent applies local quality by allowing different parts of the business application to have different levels of flexibility. Core pattern definitions maintain strict structural integrity through formal validation, while specific business process instances can adapt by instantiating patterns with context-specific parameters, achieving flexibility without compromising overall structural integrity.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs preliminary validation and consistency checking during the pattern definition and compilation phase. By validating the structural integrity of patterns before code generation and maintaining a formal grammar for pattern relationships, the system ensures that adaptations made to business processes do not compromise structural integrity, as all changes must conform to the validated pattern structure.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7926022B2Surrogate-based and extends-based context look-up
Publication Date: 2011.04.12 INFOR US LLC
  • US7926022B2 patent drawing
  • US7926022B2 patent drawing
  • US7926022B2 patent drawing

AI summary

Methods, apparatus and systems for processing of code that includes key fields having surrogate and extends relationships are described. In some embodiments, a method includes receiving a pattern language code having definitions of a number of classes, wherein a definition of a first class of the number of classes comprises a reference to a field. The method also includes compiling the pattern language code to generate an object code, wherein the compiling comprises validating that the field is defined with a context of the first class. The context includes a second class of the number of classes that has a surrogate relationship with the first class.