Customizable Code-Model Mapping Transformations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Fixed mappings between code and code-models are rigid, leading to arbitrary and complex transformations that disconnect mapped content, fail to utilize existing information, and result in a fixed perspective, making them unsuitable for situations where universal acceptance is not met.
Innovation Solution
A system and method to customize fixed mappings by identifying customization points, dividing the mapping into distinct portions, and providing mapping keys for bi-directional transformations, allowing users to derive code and code-model pieces from each other while tailoring the code-model to elide implementation details.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a fixed mapping is used between code and code-models, then the transformation is easily supported by software tools, but the mapping choices become arbitrary and complex, disconnecting mapped content
Solution Approach 1:
The patent segments the mapping into fixed portions (handled by tools) and customizable portions (handled by users). Mapping customization points are identified and separated from the core fixed mapping, allowing users to override only specific transformations without managing the entire mapping complexity.
Solution Approach 2:
The patent introduces mapping customization points as intermediaries between fixed mappings and user needs. These customization points act as a layer that allows user-specific adjustments while maintaining the underlying fixed mapping structure, reducing the disconnect between mapped content.
2Ease of manufacture
If a fixed mapping is used, then tool support is simplified, but existing model information is not utilized to derive content
Solution Approach 1:
The patent makes the mapping dynamic by allowing users to customize specific transformation points based on their model information needs. The mapping can adapt to utilize existing model properties when customization points are defined, while maintaining fixed behavior elsewhere for tool compatibility.
3Ease of operation
If a fixed mapping is used, then the transformation process is simplified, but the perspective becomes fixed and cannot be tailored
Solution Approach 1:
The patent segments the mapping perspective into fixed portions (maintaining simplicity) and customizable portions (enabling flexibility). Users can define customization points to tailor the perspective to their specific needs while the rest of the mapping remains simple and fixed.
Solution Approach 2:
The patent creates a universal mapping framework that can serve multiple purposes. The fixed mapping provides a universal baseline that works for all users, while customization points allow each user to adapt it to their specific perspective needs, making the system multi-functional.
4Adaptability or versatility
If customization is added to fixed mappings, then user-specific needs are met, but the mapping becomes more complex for users to understand
Solution Approach 1:
The patent extracts only the necessary customization points from the full mapping, separating them from the fixed portions. Users only need to understand and manage these extracted customization points, not the entire mapping, reducing the complexity burden while maintaining customizability.
Solution Approach 2:
The patent implements partial customization, allowing users to define only the specific portions of the mapping they need to customize. Users can opt for minimal customization (only essential points) rather than being forced to understand the entire mapping, reducing complexity while maintaining adaptability.
Data Source
AI summary
A method and system customize and thus extend a fixed mapping between a computer program code language and a code-model notation. Given a fixed mapping, the invention method and system define customization points in the mapping based on known/predefined relatively over rigid points. For each customization point, there is a respective mapping key that enables a piece of the computer program code to be derived from a corresponding piece of the code-model, and vice versa. The code-model reflects the customizable perspective, and contents of the code-model can be tailored to elide implementation details.


