Reusable Dynamic Object Runtime Configuration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The development of complex software applications is time-consuming and costly, with a significant portion of development time spent on designing, building, and testing model and controller layer objects, and the use of RESTFUL APIs adds complexity and requires additional coding and testing, leading to fragile and proprietary software.
Innovation Solution
The implementation of reusable dynamic objects in a runtime environment, which configures properties using an object dictionary, sets persistence and hierarchy states, and establishes data buffers for create, read, update, and delete operations, allowing for rapid transformation of business requirements into software code and reducing the need for persistence code writing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional object and relational mapping frameworks are used to streamline development, then development time is reduced, but software becomes highly proprietary and fragile
Solution Approach 1:
The patent creates a reusable dynamic object that copies essential functionality from traditional frameworks while eliminating their fragility. The dynamic object replicates model and controller layer behaviors through configuration rather than inheritance, allowing independent modification without breaking existing code.
Solution Approach 2:
The patent introduces dynamic configuration capabilities where object properties, relationships, and persistence mechanisms can be modified at runtime through the object dictionary. This dynamic approach replaces static framework inheritance with flexible configuration, reducing coupling and increasing reliability.
2Adaptability or versatility
If RESTFUL APIs are implemented for system interoperability, then interoperability is improved, but application architecture complexity increases
Solution Approach 1:
The reusable dynamic object serves multiple functions: it acts as a model object, controller object, and data persistence mechanism all in one. The single dynamic object type can be configured to represent different entities and perform various operations, eliminating the need for separate RESTful API layers and reducing architectural complexity.
Solution Approach 2:
The patent merges model, controller, and persistence functions into a single dynamic object type. By combining these previously separate layers into one configurable object, the architecture reduces complexity while maintaining interoperability through the object's configurable interfaces.
3Adaptability or versatility
If common software design patterns are used, then code reusability is improved, but applications become highly complex with fine grained structure
Solution Approach 1:
The patent segments functionality into a single reusable dynamic object type with configurable properties, rather than using multiple fine-grained design patterns. This segmentation approach maintains reusability through the single object template while reducing overall application complexity by eliminating the need for multiple pattern implementations.
Data Source
AI summary
An embodiment of the disclosure provides a method for using a reusable dynamic object in a runtime environment. The method includes: (a) configuring, using an object dictionary, properties of the dynamic object; (b) setting a persistence state for the dynamic object; (c) setting a hierarchy state for the dynamic object; (d) establishing a create data buffer, a read data buffer, an update data buffer, and a delete data buffer; and (e) instantiating the dynamic object at runtime, wherein the object dictionary includes an object structure, a logical to physical mapping, a persistence configuration, and object relationships for a plurality of dynamic objects, and the create data buffer, the read data buffer, the update data buffer, and the delete data buffer execute data persistence mechanisms based on the persistence configuration of the dynamic object.


