Dynamic Update Aggregation in Continuation-Based Runtime Modules
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for dynamic updates in continuation-based programs do not support automatic updating when the contract of a module changes, leading to potential conflicts and inconsistencies between inner and outer module updates.
Innovation Solution
A framework is provided for aggregating updates for individual modules into an update for a containing module, including changes to the contract, and detecting incompatibilities, with implementation maps and update maps used to apply changes while validating metadata to ensure consistency across the workflow.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If dynamic updates are applied to individual modules independently, then module flexibility and independent editing are improved, but consistency and compatibility between modules deteriorate
Solution Approach 1:
The system implements feedback mechanisms through implementation maps that track and record changes made to inner modules. When an inner module is updated, the implementation map captures the change information and feeds it back to the outer module, enabling automatic propagation of updates and consistency maintenance across the module hierarchy.
Solution Approach 2:
Implementation maps serve as intermediary structures between inner modules and outer modules. These maps store metadata about module implementations and act as a mediator that facilitates coordinated updates, ensuring that changes in inner modules are properly reflected in outer modules without direct coupling.
2Adaptability or versatility
If contract changes are made to modules, then program adaptability is improved, but detection of incompatibilities becomes more difficult
Solution Approach 1:
The system uses metadata tagging and marking mechanisms in implementation maps to highlight and distinguish different types of changes (such as contract modifications, implementation changes, and parameter updates). This visual and structural differentiation makes it easier to detect and categorize incompatibilities by examining the marked changes in the implementation maps.
Solution Approach 2:
The patent replaces manual compatibility checking with automated validation mechanisms that use implementation maps to systematically verify contract compatibility. The system automatically detects incompatibilities by comparing module interfaces and contracts against the stored implementation maps, eliminating the need for manual verification.
3Reliability
If update aggregation is implemented for containing modules, then update consistency is improved, but system complexity increases
Solution Approach 1:
The system segments the update management process into distinct components: individual module updates, implementation maps for tracking changes, and aggregation logic for containing modules. This segmentation allows each component to be managed independently while maintaining overall consistency through the structured combination of these segments in the module hierarchy.
4Reliability
If validation of metadata is performed to detect conflicts, then update reliability is improved, but processing time increases
Solution Approach 1:
The system performs preliminary validation of metadata and implementation changes before applying updates to the actual module instances. By validating contracts and detecting potential conflicts in advance using implementation maps, the system ensures update reliability while minimizing rework and rollback time, ultimately reducing total processing time.
Data Source
AI summary
A framework for aggregating updates for individual modules into an update for a containing module is disclosed. The containing module may be an entire program or workflow, for example. The updates may include changes to the contract of a module. Embodiments of the invention further provide a framework for detecting when changes to an inner module are incompatible with changes to the containing module.


