Application Server Aspect Weaving for Dynamic Service Management
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Adaptability or versatility
If aspects are automatically applied to all target applications, then the service functionality is enhanced, but duplicate or contradictory implementations occur
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.
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.
3Adaptability or versatility
If the service implementation is changed after development, then the service adapts to new requirements, but the code modification complexity increases
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.
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.
4Adaptability or versatility
If weaving generates a new application from the target application, then the service functionality is extended, but the execution time increases
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.
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.
Data Source
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.


