Application Server Aspect Weaving for Dynamic Service Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing application management systems face challenges in dynamically updating service descriptions to add or remove functionality without modifying the target application code, particularly in communication networks where third-party services may lack essential features like activity logging or charging.

Innovation Solution

An application server with a composition entity and weaving entity that interfaces with a repository to load and update service descriptions dynamically, using unique identifiers for aspect concerns, ensuring aspects are only applied where needed, thereby avoiding duplication or contradiction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If aspect weaving is performed offline to generate a new application, then the service functionality is extended, but the deployment complexity and time increase

Engineering Contradiction:
Improveservice functionality extensionVSAvoiddeployment complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic aspect weaving that can occur both offline during deployment and online during runtime. The system allows aspects to be woven into target applications dynamically based on runtime conditions, eliminating the need for complex offline preprocessing while maintaining service extension capabilities.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary registration of aspects and pointcuts in a repository before runtime, allowing the weaving entity to efficiently match and apply aspects during execution without complex real-time analysis, thus reducing runtime overhead while maintaining versatility.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If aspects are automatically applied to all target applications, then the service functionality is enhanced, but duplicate or contradictory implementations occur

Engineering Contradiction:
Improveservice functionality enhancementVSAvoidimplementation consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The weaving entity continuously monitors the application execution state and dynamically determines whether to apply aspects based on runtime conditions. This feedback mechanism ensures aspects are only applied when appropriate, preventing duplicate or contradictory implementations while maintaining service enhancement.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system automatically analyzes the target application's existing functionality and self-determines which aspects should be applied based on pointcut matching and aspect priorities, eliminating the need for manual configuration and preventing implementation conflicts.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If the service implementation is changed after development, then the service adapts to new requirements, but the code modification complexity increases

Engineering Contradiction:
Improveservice adaptabilityVSAvoidcode modification ease
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent segments service functionality into independent aspects that can be separately developed, registered, and applied. This segmentation allows service implementation changes without modifying the original target application code, as aspects are woven in dynamically based on pointcut definitions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The weaving entity acts as an intermediary between aspect definitions and target applications, automatically applying aspects at appropriate join points without requiring direct code modification of the target application, thus simplifying service adaptation.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If weaving generates a new application from the target application, then the service functionality is extended, but the execution time increases

Engineering Contradiction:
Improveservice functionality extensionVSAvoidapplication execution speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The system implements dynamic weaving that can occur at runtime rather than requiring complete offline generation of new applications. This allows the base application to execute with minimal overhead, with aspects applied dynamically only when their pointcut conditions are met.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Instead of weaving all aspects into the application beforehand, the system applies only those aspects whose pointcut conditions are currently satisfied, reducing the immediate execution overhead while maintaining the capability to extend functionality when needed.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8972935B2Application server and method for managing a service
Publication Date: 2015.03.03 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US8972935B2 patent drawing
  • US8972935B2 patent drawing
  • US8972935B2 patent drawing

AI summary

An application server (102) along with various other devices and method are described herein for managing a service (e.g., communication service) which is provided to a user. As described herein, the application server with the help of aspect oriented programming is capable of automatically adding functionality to an original service without directly modifying the target application code of the original service. In particular, the application server when automatically adding functionality to a certain application can automatically detect which features are still missing within the certain application, and which are already supported.