Safe Framework Class Loading for Application Customization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current framework modification processes are difficult and time-consuming, often causing environment-wide modifications and dysfunction in applications, as application developers lack direct influence and permissions to modify the framework without affecting other applications.

Innovation Solution

A safe framework system that allows application developers to customize and modify the application framework without overwriting the standard framework, by creating a customized library and starter, which automatically loads the customized class, enabling selective class loading and maintaining the integrity of the original framework.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If application developers are allowed to modify the framework library directly, then the application can be customized to run as desired, but environment-wide modifications occur affecting all applications relying on the framework

Engineering Contradiction:
Improveapplication customization capabilityVSAvoidframework stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system segments the framework library into multiple versions (original framework version and customized framework version). Developers can create and use customized versions without affecting the original framework, allowing application-specific modifications while preserving framework stability for other applications.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary mechanism (class loader with path prioritization) that mediates between the original framework and customized classes. The class loader automatically loads customized classes from application-specific paths before falling back to the original framework, enabling safe customization without direct framework modification.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If the framework is modified to allow application-specific changes, then developers gain direct influence on the framework, but identifying and notifying appropriate developers for environment-wide alterations becomes difficult and time-consuming

Engineering Contradiction:
Improvedeveloper ability to modify frameworkVSAvoidtime for identifying and notifying developers
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system enables self-service framework customization through automatic class loading mechanisms. Developers can add customized classes to their application's classpath, and the system automatically handles loading prioritization without requiring manual identification or notification of other developers. The framework itself manages the customization propagation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary configuration by establishing class loading paths and priorities before runtime. Customized classes are pre-positioned in the classpath with appropriate priority flags, so the class loader automatically knows which versions to load first, eliminating the need for runtime identification and notification processes.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If framework modifications are made to get an application to run as desired, then the application functionality is improved, but dysfunction and regression to enhancements of other applications may occur

Engineering Contradiction:
Improveapplication functionalityVSAvoidframework dysfunction and regression
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The system applies local quality by allowing each application to have its own customized framework version tailored to its specific needs. Customized classes are loaded only for the application that requires them, while other applications continue to use the original framework without regression or dysfunction.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system creates copies of the framework library for each application that needs customization. Instead of modifying the single original framework, the system copies relevant classes and allows application-specific modifications on these copies, preventing harmful side effects on the original framework and other applications.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8024721B2System and method for implementing a safe framework
Publication Date: 2011.09.20 SAP SE
  • US8024721B2 patent drawing
  • US8024721B2 patent drawing
  • US8024721B2 patent drawing

AI summary

This disclosure provides various embodiments of software for implementing a safe framework for application development. In one aspect, the software initializes an application using a runtime framework, identifies a customized class residing in a library associated with and decoupled from the runtime framework, identifies a path to the customized class residing in the library, and automatically loads the class to run the application. In some implementations, the customized class may comprise a distinct version of a standard class from the standard library. In still other implementations, the software may selectively identify a customized class or a standard class, identify a path to the selectively identified class, and automatically load the selectively identified class.