Status Schema Model for Object State Constraint Enforcement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As software systems become larger and more complex, managing the state of objects to determine whether actions are allowed becomes increasingly burdensome for programmers, as they need to understand and account for multiple constraints based on object states, either by coding requirements directly into objects or relying on unrelated objects to enforce these constraints.

Innovation Solution

A status schema model is defined at design-time and stored in a computer-readable medium, allowing for the creation of a status schema instance for a data object node, which monitors the object's state to determine if actions are permitted, thereby reducing the programmer's burden and ensuring coherent state management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If programmers directly code state constraints into objects themselves, then the object can autonomously enforce its own state requirements, but the programming burden increases significantly as software systems become larger and more complex

Engineering Contradiction:
Improvestate constraint enforcementVSAvoidprogramming complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts state constraint enforcement from individual objects and places it in a separate status schema model. The object no longer needs to contain all constraint logic internally; instead, constraints are defined externally in a status schema that describes valid state transitions and preconditions, reducing the object's internal complexity while maintaining reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a status schema model as an intermediary between the object and its state constraints. This mediator contains the precondition logic and status definitions, allowing the object to enforce constraints without directly coding them, thus reducing programming burden while ensuring reliable state management.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If programmers rely on unrelated objects to enforce state constraints, then the original object's code remains simpler, but the determination of action permissions becomes independent of the actual object state

Engineering Contradiction:
Improveobject implementation easeVSAvoidstate constraint accuracy
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent merges the status schema model with the object instance by creating a status schema instance that is specifically tailored to each object. This ensures that the precondition checks are performed in the context of the actual object's state, maintaining reliability while keeping the object's implementation simple. The status schema instance links the general constraints to the specific object instance.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If multiple status schema models are defined for the same data object node, then flexibility and adaptability increase, but the complexity of selecting and managing the appropriate model increases

Engineering Contradiction:
Improvestatus model flexibilityVSAvoidmodel selection complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent performs preliminary action by pre-defining multiple status schema models at design time, each representing different valid state transition scenarios for the same object type. The system then selects the appropriate model based on the specific context or configuration, allowing flexibility without requiring complex runtime decisions. The selection criteria are established in advance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7966621B2Using multiple status models in a computer system
Publication Date: 2011.06.21 SAP SE
  • US7966621B2 patent drawing
  • US7966621B2 patent drawing
  • US7966621B2 patent drawing

AI summary

A design-time status schema model describes the progress of a data object through a computing process. The status schema model includes status variables, processing actions and constraints for performing actions. The status schema model also may describe permitted changes to a status variable in response to performing an action. At runtime, the status schema model is used to control processing performed by, or on, an instance of a data object corresponding to the status schema model.