Execution Environment for Independent Software Interoperation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large enterprises face significant costs and challenges in integrating business software applications from different vendors due to incompatible data models and APIs, requiring extensive software engineering efforts for integration.
Innovation Solution
A system and method that enables interoperation of independent software applications by using an execution environment with a data store and user interface request orchestrator, which translates requests between applications with different data models and combines user interfaces, allowing applications to operate independently without shared data models or APIs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If applications use common data models or APIs to share data, then data sharing capability is improved, but application independence and development flexibility deteriorate
Solution Approach 1:
The patent introduces an execution environment as an intermediary layer between independent applications. This environment provides translation services that convert data models and API calls between applications without requiring the applications themselves to be modified or to share common data models. The intermediary handles the complexity of data translation, allowing applications to remain independent while achieving data sharing.
Solution Approach 2:
The system segments the data sharing functionality into a separate execution environment component, distinct from the applications themselves. This segmentation allows each application to maintain its own data model and independence while the execution environment handles the integration and translation tasks, resolving the contradiction between data sharing and application independence.
2Reliability
If vendors agree upon APIs or data models before application development, then interoperation compatibility is improved, but development time and cost increase
Solution Approach 1:
The execution environment performs preliminary translation setup by maintaining translation information that maps between different application data models. This preliminary action allows applications to be developed independently without prior agreement on APIs or data models, while the translation infrastructure is already in place to ensure compatibility when applications need to interoperate.
Solution Approach 2:
The execution environment acts as a mediator that handles compatibility issues after applications are developed independently. Rather than requiring vendors to agree on standards before development, the intermediary translates between different standards, allowing parallel development while ensuring eventual interoperation compatibility.
3Loss of information
If software engineers provide integration services to enable application interoperation, then data sharing capability is improved, but integration cost increases
Solution Approach 1:
The execution environment provides self-service integration capabilities through automated translation of data models and API calls. Instead of requiring expensive software engineers to manually create integration services, the system automatically handles the translation and interoperation logic, significantly reducing integration costs while maintaining data sharing capability.
Solution Approach 2:
The execution environment intermediary automates the integration tasks that previously required manual software engineering. By providing automated translation services between different applications' data models and APIs, it eliminates the need for costly custom integration services while enabling comprehensive data sharing.
Data Source
AI summary
One example method includes executing, by one or more processors of a computer system, an execution environment, the computer system comprising the one or more processors and a processor-addressable memory in communication with the one or more processors; maintaining, by the computer system, a data store memory; receiving first translation information for a first application and second translation information for a second application, the first translation information defining a first mapping relationship between a first derived data item and a first fundamental data item, and the second translation information defining a second mapping relationship between a second derived data item and the first fundamental data item, the first and second derived data items formatted according to data models of the first and second application, respectively; receiving input request information about an input request targeting the first application for a first user interface, the input request associated with the first derived data item; generating a complementary request for a second user interface using at least the input request information and the first and second mapping relationship, the complementary request associated with the second derived data item; providing the complementary request to the second application; and outputting the first user interface and the second user interface.


