Run-time UML Model Reconstruction from Source Code

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software development tools struggle to integrate Unified Modeling Language (UML) design models with source code, making it difficult to move model information into a program's run-time environment, which limits the ability to maintain and evolve software applications effectively.

Innovation Solution

A development system that includes a methodology for creating source code representing UML models, compiling it into an executable application, and using a run-time framework to reconstruct and utilize the model information, allowing model-driven run-time services.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If UML design models are kept separate from source code, then design flexibility is maintained, but integration and synchronization between model and code become difficult

Engineering Contradiction:
Improvedesign flexibilityVSAvoidintegration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges UML design models with source code by embedding model information directly into the code structure. The development system integrates the UML model and source code into a unified representation, allowing them to be stored, compiled, and executed together rather than as separate artifacts that require manual synchronization.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal development system that handles both UML model manipulation and source code compilation through a single integrated framework. The system can switch between design-time model operations and run-time code execution, providing multi-functionality that eliminates the need for separate toolchains for design and implementation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Extent of automation

If model information is embedded in source code, then run-time access is enabled, but code complexity increases

Engineering Contradiction:
Improverun-time model accessVSAvoidcode structure
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent segments model information into distinct, organized components within the source code structure. By dividing the UML model into separable elements that can be individually accessed and manipulated, the system enables run-time model access without creating a monolithic code structure that would be difficult to manage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary development system that mediates between the UML model and the source code. This intermediary layer handles the embedding and extraction of model information, shielding developers from the complexity of direct model-code integration while enabling run-time access to model data.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If separate development tools are used for UML modeling and code writing, then tool specialization is achieved, but workflow integration becomes cumbersome

Engineering Contradiction:
Improvetool specializationVSAvoidworkflow integration
Core Design Contradiction:
Ease of manufactureVSEase of operation

Solution Approach 1:

The patent combines multiple specialized development tools into a single integrated development system. The system unifies UML modeling capabilities, source code editing, compilation, and execution into one cohesive environment, eliminating the need to switch between separate tools and manually synchronize artifacts.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal development platform that performs multiple functions previously requiring separate specialized tools. The system can create and manipulate UML models, generate source code, compile the code, and execute the application—all through a single integrated interface that adapts to different development tasks.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7533365B1Development system with methodology for run-time restoration of UML model from program code
Publication Date: 2009.05.12 MICRO FOCUS IP DEV
  • US7533365B1 patent drawing
  • US7533365B1 patent drawing
  • US7533365B1 patent drawing

AI summary

A development system with methodology for run-time restoration of UML model from program code is described. In one embodiment, for example, in a computer system, an improved method is described for developing and executing an application, the method comprises steps of: creating a model describing business objects and rules of the application; creating source code for the application, including representing the model within the source code itself; compiling the source code into an executable application; running the executable application on a target computer in conjunction with a run-time framework that provides services to the executable application; and while the executable application is running, reconstructing the model from the executable application and making it available to the run-time framework.